write#
- scipy.io.wavfile.write(filename, rate, data)[Quelle]#
Schreibt ein NumPy-Array als WAV-Datei.
- Parameter:
- filenameString oder offenes Dateihandle
Ausgabe-WAV-Datei.
- rateint
Die Abtastrate (in Samples/Sek.).
- datandarray
Ein 1-D oder 2-D NumPy-Array von Ganzzahl- oder Fließkomma-Datentyp.
Hinweise
Schreibt eine einfache unkomprimierte WAV-Datei.
Um Mehrkanal-Audio zu schreiben, verwenden Sie ein 2-D-Array der Form (Nsamples, Nchannels).
Die Bit-Tiefe und PCM/Float werden durch den Datentyp bestimmt.
Gängige Datentypen: [1]
WAV-Format
Min
Max
NumPy dtype
32-Bit Fließkomma
-1.0
+1.0
float32
32-Bit PCM
-2147483648
+2147483647
int32
16-Bit PCM
-32768
+32767
int16
8-Bit PCM
0
255
uint8
Beachten Sie, dass 8-Bit PCM vorzeichenlos ist.
Referenzen
[1]IBM Corporation und Microsoft Corporation, „Multimedia Programming Interface and Data Specifications 1.0“, Abschnitt „Data Format of the Samples“, August 1991 http://www.tactilemedia.com/info/MCI_Control_Info.html
Beispiele
Erstellen Sie eine 100Hz Sinuswelle, abgetastet mit 44100Hz. Schreiben in 16-Bit PCM, Mono.
>>> from scipy.io.wavfile import write >>> import numpy as np >>> samplerate = 44100; fs = 100 >>> t = np.linspace(0., 1., samplerate) >>> amplitude = np.iinfo(np.int16).max >>> data = amplitude * np.sin(2. * np.pi * fs * t) >>> write("example.wav", samplerate, data.astype(np.int16))