python實現:
依賴:
glob,pydub
"Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work"解決辦法:
ffmpeg官網下載
下載 windows 對應的 static 版本。接下來我們把這個 bin 文件夾加入環境變量PATH就好了。
配置完后可以在 cdm 里輸入ffmpeg -version進行驗證。:

import os
import glob
from pydub import AudioSegment
AudioSegment.converter = r"D:\\ffmmg\\bin\\ffmpeg.exe" #ffmpeg位置
wenjianjia = []
path = r"C:\Users\chenquan\Desktop\p4batch" # 需要批量轉換的mp4目錄位置
for root, dirs, files in os.walk(path):
wenjianjia.append(root)
wjj = wenjianjia
for dir in wjj:
video_dir = dir
extension_list = ('*.mp4', '*.flv')
i = 1
os.chdir(video_dir)
for extension in extension_list:
for video in glob.glob(extension):
mp3_filename = os.path.splitext(os.path.basename(video))[0] + '.mp3'
AudioSegment.from_file(video).export(mp3_filename, format='mp3')
print('已轉碼', str(i), '個視頻!')
i += 1
for infile in glob.glob(os.path.join(video_dir, '*.mp4')):
os.remove(infile)
結果:
C:\Python37\python.exe D:/workspace/PandaChecker/src/mp4top3.py
已轉碼 1 個視頻!
.....
.....
已轉碼 1 6個視頻!
