Was ist der einfachste Weg, um eine Sounddatei (.wav) in Python abzuspielen? Mit einfachsten meine ich sowohl die meisten Plattform unabhängig und erfordern die wenigsten Abhängigkeiten. pygame ist sicherlich eine Option, aber es scheint Overkill für nur Sound.
Antworten
Zu viele Anzeigen?
orestis
Punkte
14909
Für Windows können Sie Winsound verwenden. Es ist eingebaut in
import winsound
winsound.PlaySound('sound.wav', winsound.SND_FILENAME)
Sie sollten in der Lage sein, ossaudiodev für Linux zu verwenden:
from wave import open as waveOpen
from ossaudiodev import open as ossOpen
s = waveOpen('tada.wav','rb')
(nc,sw,fr,nf,comptype, compname) = s.getparams( )
dsp = ossOpen('/dev/dsp','w')
try:
from ossaudiodev import AFMT_S16_NE
except ImportError:
from sys import byteorder
if byteorder == "little":
AFMT_S16_NE = ossaudiodev.AFMT_S16_LE
else:
AFMT_S16_NE = ossaudiodev.AFMT_S16_BE
dsp.setparameters(AFMT_S16_NE, nc, fr)
data = s.readframes(nf)
s.close()
dsp.write(data)
dsp.close()
(Kredit für ossaudiodev: Bill Dandreta http://mail.python.org/pipermail/python-list/2004-October/288905.html )
Das Snack Sound Toolkit kann wav-, au- und mp3-Dateien abspielen.
s = Sound()
s.read('sound.wav')
s.play()
Fillip
Punkte
389
Peter Shinners
Punkte
3586
Unbedingt verwenden Pyglet für diese. Es ist ein ziemlich großes Paket, aber es ist reines Python ohne Erweiterungsmodule. Das wird definitiv die einfachste für die Bereitstellung sein. Es hat auch große Format- und Codec-Unterstützung.
import pyglet
music = pyglet.resource.media('music.mp3')
music.play()
pyglet.app.run()
ramkumar
Punkte
89
- See previous answers
- Weitere Antworten anzeigen