Sem bibliotecas adicionais como libmpg123 ou gstreamer ou qualquer outra. Puro Python. Bem, quase, já que o PyMedia é escrito em sua maioria em C, mas depois de instalado você pode usar o import para trazê-lo.
import pymedia.audio.sound as sound
import pymedia.audio.acodec as acodec
def playFile(file_name):
file_extension = file_name.split('.' )[ -1 ].lower()
parms = {'id': acodec.getCodecID(file_extension), 'ext': file_extension}
decoder = acodec.Decoder(parms)
f = open(file_name, 'rb')
s = f.read(8192)
r = decoder.decode(s)
snd = sound.Output(r.sample_rate, r.channels, sound.AFMT_S16_LE)
while len(s) > 0:
if r:
snd.play(r.data)
s = f.read(512)
r = decoder.decode(s)
import time
while snd.isPlaying():
time.sleep(.05)
Para tocar um arquivo:
playFile(“arquivo.mp3”)
O PyMedia entende outros formatos de aúdio, como WAV e OGG. Ele também mostra vÃdeos com o Pygame mas isso eu ainda não testei não 🙂
Leave a Reply
You must be logged in to post a comment.