| Befehl | Aktion |
| playTone(freq) | spielt Ton mit geg. Frequenz (in Hz) und Dauer 1000 ms (blockierende Funktion) |
| playTone(freq, block = False) | dasselbe, aber nicht-blockierende Funktion (um mehrere Töne fast gleichzeitig abzuspielen) |
| playTone(freq, duration) | spielt Ton mit geg. Frequenz und geg. Dauer (in ms) |
| playTone([f1, f2, ...]) | spielt hintereinander mehrere Töne mit geg. Frequenzen und Dauer 1000 ms |
playTone([(f1, d1), (f2, d2), ...]) |
spielt hintereinander mehrere Töne mit geg. Frequenzen und geg. Dauer |
playTone([("c", 700), ("e", 1500), ...]) |
spielt hintereinander mehrere Töne mit geg. Tonbezeichnungen und geg. Dauer. Erlaubt sind: Grosse Oktave, ein-, zwei- und dreigetrichene Oktave, also der Bereich von C, C#,..., h''' |
playTone([("c", 700), ("e", 1500), ...], instrument = "piano") |
wie vorher, aber mit gewähltem Instrument (piano, guitar, harp, trumpet, xylophone, organ, violin, panflute, bird, seashore, ... (gemäss MIDI-Spezifikation) |
playTone([("c", 700), ("e", 1500), ...], instrument = "piano", volume = 10) |
wie vorher, aber mit gewählter Lautstärke (0..100) |
Module import: from soundsystem import *
Wiedergabe| Befehl | Aktion |
| getWavMono(filename) |
liefert Liste der Abtastwerte der angegeben monauralen Sounddatei. Angabe "wav/xxx.wav" lädt auch vom _wav-Verzeichnis in tigerjython2.jar |
| getWavStereo(filename) | liefert Liste der Abtastwerte der angegeben binauralen Sounddatei. Angabe "wav/xxx.wav" lädt auch vom _wav-Verzeichnis in tigerjython2.jar |
| getWavInfo(file) | liefert String mit Information über Abtastrate, usw. |
| openSoundPlayer(filename) | öffnet einen Soundplayer mit der angegebenen Sounddatei. Nachher kann sie mit den folgenden Player-Funktionen abgespielt werden |
| openSoundPlayer(buffer) | wie oben, aber lädt die Soundsamples in WAV-Format von einem Bytearray (Typ array.array) |
| openMonoPlayer(filename) | öffnet einen monauralen Soundplayer mit der angegeben Datei. Es kann sich auch um eine binaurale Datei handeln (Mittelwert aus beiden Kanälen) |
| openStereoPlayer(filename) | öffnet einen binauralen Soundplayer mit der angegeben Datei. Es kann sich auch um eine monaurale Datei handeln (beide Kanäle identisch) |
| openSoundPlayerMP3(filename) | wie openSoundPlayer(), aber für MP3-Datei |
| openMonoPlayerMP3(filename) | wie openMonotPlayer(), aber für MP3-Datei |
| openStereoPlayerMP3(filename) | wie openStereoPlayer(), aber für MP3-Datei |
| play() | spielt Sound von der aktuellen Position an und kehrt sofort zurück |
| blockingPlay() |
spielt Sound von der aktuellen Position an und wartet, bis er fertig gespielt ist |
| advanceFrames(n) |
schiebt die aktuelle Position um die Anzahl Abtastwerte nach vorne |
| advanceTime(t) |
schiebt die aktuelle Position um die angegebene Zeit nach vorne |
| getCurrentPos() |
gibt die aktuelle Position zurück |
| getCurrentTime() |
gibt die aktuelle Spielzeit zurück |
| rewindFrames(n) |
schiebt die aktuelle Position um die angegebene Anzahl Abtastwerte zurück |
| rewindTime(t) | schiebt die aktuelle Position um die angegebene Zeit zurück |
| stop() | hält das Abspielen an und setzt die aktuelle Abspielposition an den Anfang |
| setVolume(v) | setzt die Lautstärke (v = 0..100) |
| isPlaying() | gibt True zurück, falls noch nicht zu Ende gespielt ist |
| mute(bool) | schaltet mit True auf stumm, mit False wieder auf hörbar |
| playLoop() | wiederholt das Abspielen endlos |
| replay() | wiederholt das Abspielen einmal |
| delay(time) | hält Programm um time (Millisekunden) an (zum Einfügen von Pausen) |
Aufnahme und speichern
| openMonoRecorder() | öffnet einen monauralen Soundrecorder |
| openStereoRecorder() | öffnet einen binauralen Soundrecorder |
| capture() | beginnt mit der Aufnahme |
| stopCapture() | beendet die Aufnahme |
| getCapturedBytes() | liefert die aufgenommenen Samples byteweise zurück als Liste |
| getCapturedSound() | liefert die aufgenommenen Samples als integer Listenwerte zurück (binaural: Kanäle abwechselnd) |
| writeWavFile(samples, filename) | schreibt die Samples in eine WAV-Datei |
Fast Fourier Transform (FFT)
| fft(samples, n) |
transformiert die ersten n Werte der übergebenen Liste mit Abtastwerten (floats). Rückgabe einer Liste mit n // 2 äquidistanten Spektralwerten (floats). Bei einer Abtastrate von fs reichen diese von 0 bis fs/2 im Abstand fs / n (Auflösung) |
| sine(A, f, t) | Sinusschwingung mit Amplitude A und Frequenz f (Phase 0) für jeden Float-Wert t |
| square(A, f, t) | Rechteckschwingung mit Amplitude A und Frequenz f (Phase 0) für jeden Float-Wert t |
| sawtooth(A, f, t) | Sägezahnschwingung mit Amplitude A und Frequenz f (Phase 0) für jeden Float-Wert t |
| triangle(A, f, t) | Dreieckschwingung mit Amplitude A und Frequenz f (Phase 0) für jeden Float-Wert t |
| chirp(A, f, t) | Sinusschwingung mit Amplitude A und zeitlinear ansteigender Frequenz (Startwert f) für jeden Float-Wert t |