>> Memutar wav file <<
Pada dasarnya file WAV dapat terdiri dari banyak format audio data yang berbeda, tapi 99% terdiri dari raw data audio.
Artinya bahwa WAV tidak dikompres dan tidak membutuhkan banyak pemrosesan ketika dijalankan.
yang kita perlukan hanya mengetahui tentang WAV header yang berisi informasi tentang audio data, sbb:
- sampling frequency (8Khz, 11Khz, 22Khz, 44Khz dsb)
- sample size (2 bytes atau 1 byte)
- sample format (signed, unsigned)
- channels (1 atau 2)
untuk memainkan file WAV dgn tepat 4 parameter diatas perlu dibaca
Parsing WAV header
Parsing wave header sangat sederhana kita hanya perlu menggunakan modul wave:
- import time, wave, pymedia.audio.sound as sound
- f = wave.open ('YOUR FILE WAV NAME', 'rb')
- sampleRate = f.getframerate()
- channels = f.getnchannels()
pada umumnya wave modul tidak memberikan informasi format audio data. tapi dapat kita asumsikan sebagai pymedia.audio.sound.AFMT_S16_LE
- format = sound.AFMT_S16_LE
Memainkan suara
Setelah paremeter yang diperlukan sudah didapat, untuk memainkan file WAV cukup simpel, sbb:
- snd = sound.Output (sampleRate, channels, format)
- s = f.readframes (300000)
- snd.play (s)
snd.play() akan mengembalikan informasi sebelum pemutaran file selesai ini sering juga disebut mode asinkron dalam memainkan audio.
jika ingin menunggu sampai semuanya selesai, tambahkan baris berikut:
- while snd.isPlaying() : time.sleep (0.05)
begitulah kira2 cara memutar file WAV menggunakan pymedia.
untuk mengetahui lebih lanjut mengenai tutorial pymedia silahkan kunjungi link berikut :
http://pymedia.org/tut/
No comments:
Post a Comment