我已經看過pymedia(已停用),pyglet(很棒但沒有轉換器)和audiotools(命令行cd翻錄),並且都不適合。Python將wav轉換爲mp3
在Python 2.7,你怎麼辦
convert(wavFileLocation, 'mp3')
如果沒有蟒蛇的方式,你會怎麼做它在Python可以調用的方式? (如呼叫一個跨平臺的命令行工具......如果存在回報(名稱,pythonCodeForInvocation))
我已經看過pymedia(已停用),pyglet(很棒但沒有轉換器)和audiotools(命令行cd翻錄),並且都不適合。Python將wav轉換爲mp3
在Python 2.7,你怎麼辦
convert(wavFileLocation, 'mp3')
如果沒有蟒蛇的方式,你會怎麼做它在Python可以調用的方式? (如呼叫一個跨平臺的命令行工具......如果存在回報(名稱,pythonCodeForInvocation))
使用lame(命令行),你可以編碼WAV到MP3這樣的:
$ lame --preset insane /path/to/file.wav
這將創建:
file.wav.mp3
在Python
,你可以使用subprocess叫它:
wav = 'myfile.wav'
cmd = 'lame --preset insane %s' % wav
subprocess.call(cmd, shell=True)
我寫了一個python library, pydub,這基本上做Corey的答案建議,雖然它使用ffmpeg進行轉換以支持更多格式。
from pydub import AudioSegment
AudioSegment.from_wav("/input/file.wav").export("/output/file.mp3", format="mp3")
你必須去pydub,它是一個偉大的音頻文件操作模塊。
注意。請記住在使用pydub之前安裝ffmpeg。
如需關於安裝ffmpeg的幫助,請使用此link。
然後安裝pydub只需打開命令提示符,然後鍵入
pip install pydub
然後到任何文件從WAV轉換成MP3只需使用pydub作爲
import pydub
sound = pydub.AudioSegment.from_wav("D:/example/apple.wav")
sound.export("D:/example/apple.mp3", format="mp3")
哪個OS? Linux有一些很棒的命令行工具,可以讓你在沒有太多問題的情況下做到這一點。 – g19fanatic 2012-04-23 20:25:02
Linux =)但它需要在Mac上運行 – xxjjnn 2012-04-23 20:28:09
for linux,這個解決方案給你一個答案http://stackoverflow.com/a/6578380/496405使用ffmpeg也應該在mac下工作:) – g19fanatic 2012-04-23 20:33:49