ทดลอง pymedia

Topic: 
 

เอกสาร Tutorial ในเพจของ pymedia เอง ค่อนข้างหยาบและมีที่ผิดเยอะ
จะลองรวบรวมเฉพาะโค๊ดมาใช้ดู

ลองเล่นไฟล์ wav

import time, wave, pymedia.audio.sound as sound
sFile= "YOUR FILE NAME"
f= wave.open( sFile, 'rb' )
sampleRate= f.getframerate()
channels= f.getnchannels() 
format= sound.AFMT_S16_LE
snd= sound.Output( sampleRate, channels, format )
s= f.readframes( 300000 )
snd.play( s )

แปลง codec
ตัวอย่างนี้ รันไม่ผ่าน เกิด seg-fault

import pymedia.audio.acodec as acodec
import pymedia.muxer as muxer
sName='01A.mp3'
f= open( sName, 'rb' )
s= f.read( 8192 )
file_ext = str.split( sName, '.' )[ -1 ].lower()
dm = muxer.Demuxer( file_ext )
frames= dm.parse( s )
print dm.hasHeader(), dm.getInfo()

dec= acodec.Decoder( dm.streams[ 0 ] )
frame= frames[ 0 ]
r= dec.decode( frame[ 1 ] )
print r.sample_rate, r.channels, r.bitrate, r.sample_length

params= {
 'id': acodec.getCodecID('wma'),
 'bitrate': 16,
 'sample_rate': 16000,
 'ext': 'wma',
 'channels': 1 } 
enc= acodec.Encoder( params )