Sound Demo 1
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Javascript</language>
Piano spielen geht ganz leicht. Beim ersten Ausführen dieses Quelltextes kann es etwas dauern (da die Sounbank.gm mit 400kb heruntergeladen werden muss).
<code id="556dfab2e829c">
var piano = Synth.createInstrument('piano');
var currentTime = 0;
function playNote(note,dauer){
currentTime += 1000/dauer;
// 3. Oktave
setTimeout(function(){
piano.play(note,3,2);
},currentTime);
}
</code>
<run id="556dfab2e812">
var lied = [["C",4],["E",4],["G",4],["E",4],["C",4]];
for (var i = 0; i < lied.length; i++) {
playNote(lied[i][0],lied[i][1]);
}
</run>
Das nachfolgende Programm spielt JingleBells ab. Du kannst die Noten in '''Lied''' auch in etwas anderes abändern und abspielen lassen.
<run id="556dfab2e8375">
String Lied = "E-4 E-4 E-2 E-4 E-4 E-2 E-4 G-4 C-4 "+
"D-4 E-1 F-4 F-4 F-4 F-4 F-4 E-4 E-4 "+
"E-8 E-8 E-4 D-4 D-4 E-4 D-2 G-2";
orgel = new Sound(19); // 19. MIDI-Gerät
String[] Noten = Lied.split(" ");
for(int i=0; i < Noten.length; i++){
int key = 0;
if (Noten[i].charAt(0) == 'C') key = 60;
if (Noten[i].charAt(0) == 'D') key = 62;
if (Noten[i].charAt(0) == 'E') key = 64;
if (Noten[i].charAt(0) == 'F') key = 65;
if (Noten[i].charAt(0) == 'G') key = 67;
if (Noten[i].charAt(0) == 'A') key = 69;
if (Noten[i].charAt(0) == 'H') key = 71;
int dauer = 0;
if (Noten[i].charAt(2) == '1') dauer = 1000/1;
if (Noten[i].charAt(2) == '2') dauer = 1000/2;
if (Noten[i].charAt(2) == '4') dauer = 1000/4;
if (Noten[i].charAt(2) == '8') dauer = 1000/8;
orgel.play(key,dauer);
}
</run>