最近,需要大量地將wav轉(zhuǎn)mp3告嘲,于是用python寫了個(gè)小腳本直接一鍵轉(zhuǎn)換错维,這里做個(gè)記錄。
環(huán)境
- windows 10
- ffmpeg
- python3
- pydub
前期準(zhǔn)備
環(huán)境搭建
首先安裝ffmpeg橄唬,參考大佬的博客
然后在命令行運(yùn)行命令安裝pydub:
pip install pydub
然后準(zhǔn)備一個(gè)文件夾赋焕,里面是待轉(zhuǎn)換的wav文件:
程序編寫
程序想要實(shí)現(xiàn)的功能是遍歷文件夾內(nèi)的wav文件路徑,然后依次將wav文件轉(zhuǎn)為mp3文件輸出仰楚。
首先隆判,編寫轉(zhuǎn)換函數(shù):
from pydub import AudioSegment
def wav2mp3(filepath, savepath):
sourcefile = AudioSegment.from_wav(filepath)
filename = filepath.split('/')[-1].split('.wav')[0].replace(' ', '_') + '.mp3'
print(filename)
sourcefile.export(savepath + filename, format="mp3")
這里的filename
注意需要加上.mp3
后綴
然后書寫函數(shù)獲取wav文件路徑,保存為列表輸出:
def getFileName(filepath):
file_list = []
for root,dirs,files in os.walk(filepath):
for filespath in files:
if 'wav' in filespath.split('.')[-1]:
file_list.append(os.path.join(root,filespath))
return file_list
最后書寫main
函數(shù)遍歷路徑并轉(zhuǎn)換:
if __name__ == '__main__':
folder = 'D:/yuanshen/emmmm/'
savepath = 'D:/yuanshen/emmm1/'
wav_list = getFileName(folder)
for item in wav_list:
wav2mp3(item, savepath)
至此僧界,程序編寫完畢
程序運(yùn)行
在命令行輸入命令運(yùn)行腳本:
python wav2mp3.py
然后就能看到程序開始轉(zhuǎn)換:
程序運(yùn)行結(jié)果: