Seite 1 von 1

Wie Wav aufzeichnen ?

Verfasst: Sonntag 20. Juni 2010, 22:38
von SwissMäc
Ich möchte ab Mikrofoneingang bis 2h Funk aufzeichnen, daher muss es direkt in die Datei schreiben ohne Puffer.
Gegoogelt habe ich schon aber die Zusätze wie pyAudio oder numpy findet der Linux-Installer (OpenSuSE 11.1) nicht.

Soweit habe ich:

Code: Alles auswählen

import wave,os,sys

try:
    Testdatei = wave.open("test.wav","r")
#    print("Datei gefunden")
    print "Channels: ",int(Testdatei.getnchannels() )
    print "Sampebreite in Bytes: ",int(Testdatei.getsampwidth() ),"=",int(Testdatei.getsampwidth()*8),"Bit"
    print "Framerate: ",int(Testdatei.getframerate() )
    print "Anzahl Frames: ",int(Testdatei.getnframes() )
except:
    print("Keine Datei gefunden.")
    sys.exit()

Aufnahme = wave.open("Aufnahme.wav","w")
Aufnahme.setnchannels(2)
Aufnahme.setframerate(44100)
Aufnahme.setsampwidth(2)
Aufnahme.setnframes(5*44100) # 5 sec

#Start ?

Testdatei.close()
Aufnahme.close()
Die Pegel würde ich zur Not extern im Mixer einstellen, aber wie starte ich die Aufnahme und wo wähle ich zwischen "Mic" und "Line-in" ?

Re: Wie Wav aufzeichnen ?

Verfasst: Montag 21. Juni 2010, 11:42
von philistion
Du musst ein Pythonpaket ja nicht über den Installer installieren, auch unter Suse kannst du manuell Software kompilieren/installieren.
Installier dir die "python-setuptools" und gib dann einfach als Root ein: easy_install pyAudio
libportaudio müsstest du natürlich auch vorher installieren.

Um mit numpy zu arbeiten wäre vielleicht audiolab interessant: http://www.ar.media.kyoto-u.ac.jp/membe ... index.html

Ich würde aber zum Aufnehmen eher direkt mit ALSA arbeiten: http://pyalsaaudio.sourceforge.net/index.html
Da gibt es auch nette Beispiele im Package, siehe Dokumentation bzw. der Quellcode direkt ist auch hier einsehbar: http://pyalsaaudio.sourcearchive.com/do ... ource.html

Re: Wie Wav aufzeichnen ?

Verfasst: Dienstag 22. Juni 2010, 13:05
von veers
Mit den Alsa Bindings habe ich schlechte Erfahrungen gemacht. Ich würde da eher gstreamer verwenden. Aber warum verwendest du nicht einfach arecord? :K

Re: Wie Wav aufzeichnen ?

Verfasst: Dienstag 22. Juni 2010, 13:08
von Dav1d
Du könntest auch den Mplayer verwenden

Code: Alles auswählen

-dumpstream -dumpfile

Re: Wie Wav aufzeichnen ?

Verfasst: Samstag 26. Juni 2010, 17:57
von schwedenmann
Hallo

Man kann auch per dd direkt vom device /dsp/xyz in eine Datei schreiben.
Ich weiß nur nicht, welches Format die Aufnahme hat (wav, raw ,?)
mit dd kannst du dann auch nur eine bestimmte dateiugröße vom device aufnehmen, also anch 1ooMb stoppt die Aufnahme.

Re: Wie Wav aufzeichnen ?

Verfasst: Samstag 26. Juni 2010, 18:21
von problembär
schwedenmann hat geschrieben:Man kann auch per dd direkt vom device /dsp/xyz in eine Datei schreiben.
Ich weiß nur nicht, welches Format die Aufnahme hat (wav, raw ,?)
mit dd kannst du dann auch nur eine bestimmte dateiugröße vom device aufnehmen, also anch 1ooMb stoppt die Aufnahme.
Damit habe ich leider keine so guten Erfahrungen, ich nehme dafür lieber arecord.

Gruß