commit 6e03b6db765edbb4f88f176c9074eb8560cd138f
parent a8d0e9b2f55afd76c2d270009cabf05bef3f525b
Author: gstraube <gstraube@mailbox.org>
Date: Sun, 15 Oct 2017 12:38:41 +0200
Use scientific pitch notation
Diffstat:
5 files changed, 41 insertions(+), 41 deletions(-)
diff --git a/app/src/androidTest/java/com/github/cythara/TunerViewTest.java b/app/src/androidTest/java/com/github/cythara/TunerViewTest.java
@@ -46,7 +46,7 @@ public class TunerViewTest {
@Test
public void exactly_matching_pitch_is_displayed() throws IOException {
- isDisplayedCorrectly(R.drawable.exact, "exact", new PitchDifference(E1, 0));
+ isDisplayedCorrectly(R.drawable.exact, "exact", new PitchDifference(E4, 0));
}
@Test
@@ -74,7 +74,7 @@ public class TunerViewTest {
for (Integer deviation : deviationToReferenceId.keySet()) {
DrawableResource drawableResource = deviationToReferenceId.get(deviation);
isDisplayedCorrectly(drawableResource.id, drawableResource.name,
- new PitchDifference(B2, deviation));
+ new PitchDifference(B3, deviation));
}
}
@@ -98,16 +98,16 @@ public class TunerViewTest {
for (Double deviation : deviationToReferenceId.keySet()) {
DrawableResource drawableResource = deviationToReferenceId.get(deviation);
isDisplayedCorrectly(drawableResource.id, drawableResource.name,
- new PitchDifference(B2, deviation));
+ new PitchDifference(B3, deviation));
}
}
@Test
public void values_outside_of_boundaries_are_not_displayed() throws IOException {
isDisplayedCorrectly(R.drawable.blank, "blank",
- new PitchDifference(D4, 60.5));
+ new PitchDifference(D3, 60.5));
isDisplayedCorrectly(R.drawable.blank, "blank",
- new PitchDifference(D4, -60.5));
+ new PitchDifference(D3, -60.5));
}
public void isDisplayedCorrectly(int referenceId, String fileName,
diff --git a/app/src/main/java/com/github/cythara/GuitarString.java b/app/src/main/java/com/github/cythara/GuitarString.java
@@ -2,12 +2,12 @@ package com.github.cythara;
enum GuitarString implements Note {
- E6(82.41f),
- A5(110f),
- D4(146.83f),
+ E2(82.41f),
+ A2(110f),
+ D3(146.83f),
G3(196f),
- B2(246.94f),
- E1(329.63f);
+ B3(246.94f),
+ E4(329.63f);
private final float frequency;
diff --git a/app/src/main/java/com/github/cythara/UkuleleString.java b/app/src/main/java/com/github/cythara/UkuleleString.java
@@ -2,10 +2,10 @@ package com.github.cythara;
enum UkuleleString implements Note {
- G(391.995f),
- C(261.626f),
- E(329.628f),
- A(440f);
+ G4(391.995f),
+ C4(261.626f),
+ E4(329.628f),
+ A4(440f);
private final float frequency;
diff --git a/app/src/test/java/com/github/cythara/PitchComparatorTest.java b/app/src/test/java/com/github/cythara/PitchComparatorTest.java
@@ -15,10 +15,10 @@ public class PitchComparatorTest {
@Test
public void retrieveNote() throws Exception {
Map<Float, PitchDifference> expectations = new HashMap<>();
- expectations.put(20f, new PitchDifference(E6, -2451.3832933619105));
- expectations.put(500f, new PitchDifference(E1, 721.296654095616));
+ expectations.put(20f, new PitchDifference(E2, -2451.3832933619105));
+ expectations.put(500f, new PitchDifference(E4, 721.296654095616));
expectations.put(197.67f, new PitchDifference(G3, 14.688333908767358));
- expectations.put(128.415f, new PitchDifference(D4, -231.99964198777823));
+ expectations.put(128.415f, new PitchDifference(D3, -231.99964198777823));
for (Float pitch : expectations.keySet()) {
PitchDifference actual = PitchComparator.retrieveNote(pitch);
diff --git a/app/src/test/java/com/github/cythara/SamplerTest.java b/app/src/test/java/com/github/cythara/SamplerTest.java
@@ -18,18 +18,18 @@ public class SamplerTest {
public void the_average_difference_is_calculated_correctly() {
List<PitchDifference> samples = new ArrayList<>();
- samples.add(new PitchDifference(E6, 2.46D));
- samples.add(new PitchDifference(E6, -10.3D));
- samples.add(new PitchDifference(E6, 5.71D));
- samples.add(new PitchDifference(E6, 12.532D));
- samples.add(new PitchDifference(E6, -0.414D));
+ samples.add(new PitchDifference(E2, 2.46D));
+ samples.add(new PitchDifference(E2, -10.3D));
+ samples.add(new PitchDifference(E2, 5.71D));
+ samples.add(new PitchDifference(E2, 12.532D));
+ samples.add(new PitchDifference(E2, -0.414D));
PitchDifference pitchDifference = calculateAverageDifference(samples);
double average = (2.46D - 10.3D + 5.71D + 12.532D - 0.414D) / 5D;
assertNotNull(pitchDifference);
- assertThat(pitchDifference.closest.getName(), is(E6.getName()));
+ assertThat(pitchDifference.closest.getName(), is(E2.getName()));
assertThat(pitchDifference.deviation, closeTo(average, 0.001));
}
@@ -37,17 +37,17 @@ public class SamplerTest {
public void samples_are_filtered_correctly() {
List<PitchDifference> samples = new ArrayList<>();
- samples.add(new PitchDifference(E6, 2D));
- samples.add(new PitchDifference(E6, 2D));
- samples.add(new PitchDifference(B2, 3D));
- samples.add(new PitchDifference(E6, 2D));
+ samples.add(new PitchDifference(E2, 2D));
+ samples.add(new PitchDifference(E2, 2D));
+ samples.add(new PitchDifference(B3, 3D));
+ samples.add(new PitchDifference(E2, 2D));
samples.add(new PitchDifference(G3, 4D));
- samples.add(new PitchDifference(B2, 3D));
+ samples.add(new PitchDifference(B3, 3D));
- List<PitchDifference> filteredSamples = filterByNote(samples, B2);
+ List<PitchDifference> filteredSamples = filterByNote(samples, B3);
for (PitchDifference sample : filteredSamples) {
- assertThat(sample.closest.getName(), is(B2.getName()));
+ assertThat(sample.closest.getName(), is(B3.getName()));
}
}
@@ -55,16 +55,16 @@ public class SamplerTest {
public void the_most_frequent_note_is_extracted_correctly() throws Exception {
List<PitchDifference> samples = new ArrayList<>();
- samples.add(new PitchDifference(E6, 2D));
- samples.add(new PitchDifference(E6, 2D));
- samples.add(new PitchDifference(B2, 3D));
- samples.add(new PitchDifference(E6, 2D));
+ samples.add(new PitchDifference(E2, 2D));
+ samples.add(new PitchDifference(E2, 2D));
+ samples.add(new PitchDifference(B3, 3D));
+ samples.add(new PitchDifference(E2, 2D));
samples.add(new PitchDifference(G3, 4D));
- samples.add(new PitchDifference(B2, 3D));
+ samples.add(new PitchDifference(B3, 3D));
Note note = extractMostFrequentNote(samples);
- assertThat(note.getName(), is(E6.getName()));
+ assertThat(note.getName(), is(E2.getName()));
}
@Test
@@ -72,13 +72,13 @@ public class SamplerTest {
List<PitchDifference> samples = new ArrayList<>();
samples.add(new PitchDifference(G3, 2D));
- samples.add(new PitchDifference(E6, 2D));
- samples.add(new PitchDifference(B2, 3D));
- samples.add(new PitchDifference(E6, 2D));
- samples.add(new PitchDifference(B2, 3D));
+ samples.add(new PitchDifference(E2, 2D));
+ samples.add(new PitchDifference(B3, 3D));
+ samples.add(new PitchDifference(E2, 2D));
+ samples.add(new PitchDifference(B3, 3D));
Note note = extractMostFrequentNote(samples);
- assertThat(note.getName(), either(is(E6.getName())).or(is(B2.getName())));
+ assertThat(note.getName(), either(is(E2.getName())).or(is(B3.getName())));
}
}
\ No newline at end of file