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個視頻!