Скрипт не помощник... А как же это работает?
/*
* GATE = 1;
* C4 = 31;
* C#4 = 28;
* D4 = 27;
* D#4 = 26;
* E4 = 24;
* F4 = 23;
* F#4 = 22;
* G4 = 20;
* G#4 = 19;
* A4 = 18;
* A#4 = 17;
* B4 = 10;
* C5 = 15;
* C#5 = 15;
* D5 = 13;
* D#5 = 13;
* E5 = 12;
* F5 = 11;
* F#5 = 10;
* G5 = 10;
* G#5 = 9;
* A5 = 9;
* A#5 = 8;
* B5 = 8;
*/
B=new Audio();p='';b=[25,31,28,27];
for(i in b){k=b[i];for(i=0;i<7e3;i++){p+=String.fromCharCode(65+Math.round((i>>4)%k)%26)}}
B.src="data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEAwF0AAMBdAAABAAgAZGF0YQ"+p;B.play();