TEMPERAMENT TESTING APP
This app works by recording single notes.
Then each note is called by clicking a button.
Clicking the Chromatic Ladder buttons will play each note with another that makes up the interval, wait 3 seconds and then play the next interval in the ladder.
It is unique in that we are not hearing recordings of intervals, but rather recordings of two separate notes being played at the same time.
Piano: Yamaha GH1
Tuned by: Mark Cerisano
Notes: This temperament was tuned using Beat Speed Windows, in one pass!. (No refining)
TEMPERAMENT NOTES
(Click to play note. The first time you click, it may not play right away; the wave file needs to be loaded into your cache, then it will play much faster on subsequent clicks.)
CHROMATIC LADDERS
Below is a screenshot of my measurements of the M3’s.
The link to this spreadsheet is under the Surveys/Tests/Tools menu.
Notice that the M3’s increase in speed smoothly but the beat speed differences are more erratic, but still between 2.8 and 8.6%. (Beat speed differences are a more precise way of measuring beat speed progressions.)
Yamaha GH1 Major Thirds, not filtered
Yamaha GH1 Major Thirds, filtered. (These are the beats you are trying to hear in the above recording.)
This represents a powerful way of analyzing temperaments for the purpose of giving feedback.
A tuner can read the feedback and then choose different intervals, or even checks, to confirm the analysis.
I can make one for you but you would need to send me a recording of you playing each temperament note, one after the other. Currently, this is a free service.
//Define the wave form for a4 var n33 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh133.mp3"; var n34 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh134.mp3"; var n35 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh135.mp3"; var n36 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh136.mp3"; var n37 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh137.mp3"; var n38 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh138.mp3"; var n39 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh139.mp3"; var n40 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh140.mp3"; var n41 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh141.mp3"; var n42 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh142.mp3"; var n43 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh143.mp3"; var n44 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh144.mp3"; var n45 = "https://howtotunepianos.com/wp-content/uploads/2015/07/yamahagh145.mp3";
//The functions to play the notes function play33(){
//Define the two octave wave files to be played track1 = new Audio(n33);
//Play the two wave files simultaneously track1.play(); }
function play34(){
//Define the two octave wave files to be played track1 = new Audio(n34);
//Play the two wave files simultaneously track1.play(); }
function play35(){
//Define the two octave wave files to be played track1 = new Audio(n35);
//Play the two wave files simultaneously track1.play(); }
function play36(){
//Define the two octave wave files to be played track1 = new Audio(n36);
//Play the two wave files simultaneously track1.play(); }
function play37(){
//Define the two octave wave files to be played track1 = new Audio(n37);
//Play the two wave files simultaneously track1.play(); }
function play38(){
//Define the two octave wave files to be played track1 = new Audio(n38);
//Play the two wave files simultaneously track1.play(); }
function play39(){
//Define the two octave wave files to be played track1 = new Audio(n39);
//Play the two wave files simultaneously track1.play(); }
function play40(){
//Define the two octave wave files to be played track1 = new Audio(n40);
//Play the two wave files simultaneously track1.play(); }
function play41(){
//Define the two octave wave files to be played track1 = new Audio(n41);
//Play the two wave files simultaneously track1.play(); }
function play42(){
//Define the two octave wave files to be played track1 = new Audio(n42);
//Play the two wave files simultaneously track1.play(); }
function play43(){
//Define the two octave wave files to be played track1 = new Audio(n43);
//Play the two wave files simultaneously track1.play(); }
function play44(){
//Define the two octave wave files to be played track1 = new Audio(n44);
//Play the two wave files simultaneously track1.play(); }
function play45(){
//Define the two octave wave files to be played track1 = new Audio(n45);
//Play the two wave files simultaneously track1.play(); }
//PLAY CHROMATIC M3's
function playM3(){
track1 = new Audio(n33); track2 = new Audio(n37); track1.play(); track2.play(); window.setTimeout(playM32,3000); }
function playM32(){
track1 = new Audio(n34); track2 = new Audio(n38); track1.play(); track2.play(); window.setTimeout(playM33,3000); }
function playM33(){
track1 = new Audio(n35); track2 = new Audio(n39); track1.play(); track2.play(); window.setTimeout(playM34,3000); }
function playM34(){
track1 = new Audio(n36); track2 = new Audio(n40); track1.play(); track2.play(); window.setTimeout(playM35,3000); }
function playM35(){
track1 = new Audio(n37); track2 = new Audio(n41); track1.play(); track2.play(); window.setTimeout(playM36,3000); }
function playM36(){
track1 = new Audio(n38); track2 = new Audio(n42); track1.play(); track2.play(); window.setTimeout(playM37,3000); }
function playM37(){
track1 = new Audio(n39); track2 = new Audio(n43); track1.play(); track2.play(); window.setTimeout(playM38,3000); }
function playM38(){
track1 = new Audio(n40); track2 = new Audio(n44); track1.play(); track2.play(); window.setTimeout(playM39,3000); }
function playM39(){
track1 = new Audio(n41); track2 = new Audio(n45); track1.play(); track2.play(); }
//PLAY CHROMATIC M6's
function playM6(){
track1 = new Audio(n33); track2 = new Audio(n42); track1.play(); track2.play(); window.setTimeout(playM62,3000); }
function playM62(){
track1 = new Audio(n34); track2 = new Audio(n43); track1.play(); track2.play(); window.setTimeout(playM63,3000); }
function playM63(){
track1 = new Audio(n35); track2 = new Audio(n44); track1.play(); track2.play(); window.setTimeout(playM64,3000); }
function playM64(){
track1 = new Audio(n36); track2 = new Audio(n45); track1.play(); track2.play(); }
//PLAY CHROMATIC P4's
function playP4(){
track1 = new Audio(n33); track2 = new Audio(n38); track1.play(); track2.play(); window.setTimeout(playP42,3000); }
function playP42(){
track1 = new Audio(n34); track2 = new Audio(n39); track1.play(); track2.play(); window.setTimeout(playP43,3000); }
function playP43(){
track1 = new Audio(n35); track2 = new Audio(n40); track1.play(); track2.play(); window.setTimeout(playP44,3000); }
function playP44(){
track1 = new Audio(n36); track2 = new Audio(n41); track1.play(); track2.play(); window.setTimeout(playP45,3000); }
function playP45(){
track1 = new Audio(n37); track2 = new Audio(n42); track1.play(); track2.play(); window.setTimeout(playP46,3000); }
function playP46(){
track1 = new Audio(n38); track2 = new Audio(n43); track1.play(); track2.play(); window.setTimeout(playP47,3000); }
function playP47(){
track1 = new Audio(n39); track2 = new Audio(n44); track1.play(); track2.play(); window.setTimeout(playP48,3000); }
function playP48(){
track1 = new Audio(n40); track2 = new Audio(n45); track1.play(); track2.play(); }
//PLAY CHROMATIC P5's
function playP5(){
track1 = new Audio(n33); track2 = new Audio(n40); track1.play(); track2.play(); window.setTimeout(playP52,3000); }
function playP52(){
track1 = new Audio(n34); track2 = new Audio(n41); track1.play(); track2.play(); window.setTimeout(playP53,3000); }
function playP53(){
track1 = new Audio(n35); track2 = new Audio(n42); track1.play(); track2.play(); window.setTimeout(playP54,3000); }
function playP54(){
track1 = new Audio(n36); track2 = new Audio(n43); track1.play(); track2.play(); window.setTimeout(playP55,3000); }
function playP55(){
track1 = new Audio(n37); track2 = new Audio(n44); track1.play(); track2.play(); window.setTimeout(playP56,3000); }
function playP56(){
track1 = new Audio(n38); track2 = new Audio(n45); track1.play(); track2.play(); }
//PLAY CHROMATIC m3's
function playMin3(){
track1 = new Audio(n33); track2 = new Audio(n36); track1.play(); track2.play(); window.setTimeout(playMin32,3000); }
function playMin32(){
track1 = new Audio(n34); track2 = new Audio(n37); track1.play(); track2.play(); window.setTimeout(playMin33,3000); }
function playMin33(){
track1 = new Audio(n35); track2 = new Audio(n38); track1.play(); track2.play(); window.setTimeout(playMin34,3000); }
function playMin34(){
track1 = new Audio(n36); track2 = new Audio(n39); track1.play(); track2.play(); window.setTimeout(playMin35,3000); }
function playMin35(){
track1 = new Audio(n37); track2 = new Audio(n40); track1.play(); track2.play(); window.setTimeout(playMin36,3000); }
function playMin36(){
track1 = new Audio(n38); track2 = new Audio(n41); track1.play(); track2.play(); window.setTimeout(playMin37,3000); }
function playMin37(){
track1 = new Audio(n39); track2 = new Audio(n42); track1.play(); track2.play(); window.setTimeout(playMin38,3000); }
function playMin38(){
track1 = new Audio(n40); track2 = new Audio(n43); track1.play(); track2.play(); window.setTimeout(playMin39,3000); }
function playMin39(){
track1 = new Audio(n41); track2 = new Audio(n44); track1.play(); track2.play(); window.setTimeout(playMin310,3000); }
function playMin310(){
track1 = new Audio(n42); track2 = new Audio(n45); track1.play(); track2.play(); }
//PLAY CHROMATIC m6's
function playMin6(){
track1 = new Audio(n33); track2 = new Audio(n41); track1.play(); track2.play(); window.setTimeout(playMin62,3000); }
function playMin62(){
track1 = new Audio(n34); track2 = new Audio(n42); track1.play(); track2.play(); window.setTimeout(playMin63,3000); }
function playMin63(){
track1 = new Audio(n35); track2 = new Audio(n43); track1.play(); track2.play(); window.setTimeout(playMin64,3000); }
function playMin64(){
track1 = new Audio(n36); track2 = new Audio(n44); track1.play(); track2.play(); window.setTimeout(playMin65,3000); }
function playMin65(){
track1 = new Audio(n37); track2 = new Audio(n45); track1.play(); track2.play(); }