說明
聽mp3有聲讀物時,廣告太煩人,比如每一集前20秒的都是相同的廣告;
找過一些音頻處理軟件,有些軟件根本就不支持批量操作只能單個操作;
有些支持批量但是設置繁瑣,比如格式工廠需要對每一個文件進行單獨設置截切的開始時間和結束時間,然後批量轉碼,操作太麻煩(我有好幾百個文件呢);
有些一運行直接被殺毒軟件幹掉了,不敢用。。
最後找到了ffmpeg,一個很好用的mp3命令行處理工具。
命令參考
參考:
http://blog.sina.com.cn/s/blog_5d0f322c0102x6pz.html
http://ffmpeg.org/ffmpeg.html
# 一條命令音頻編輯-截取MP3音樂文件片段(MP3文件裁切)
$ ffmpeg -i source_mp3.mp3 -ss 00:00:25 -t 00:25:00 -acodec copy output_mp3.mp3
# 源文件:source_mp3
# 轉碼開始時間位置:-ss
# 轉碼結束時間位置:-t
# 原始編碼(表示不轉碼):-acodec
# 拷貝輸出到指定目錄:copy output_mp3.mp3
遍歷指定目錄對mp3文件進行裁剪
-
下載ffmpeg
windows下載地址如下:https://ffmpeg.zeranoe.com/builds/ -
安裝ffmpeg
zip包直接解壓即可使用 -
新建一個window批處理命令:cutter.bat,鍵入如下內容
@echo off
D:
rem 進入ffmpeg的bin目錄(當然如果你直接將ffmpeg配置到環境變量中了則可以省略這一步)
cd D:\ProgramFiles\ffmpeg-20190705-a514244-win64-static\bin
rem 遍歷指定目錄下的mp3
for %%s in (C:\Users\xxx\Downloads\dest\*.mp3) do (
rem 得到包含路徑的mp3文件名
echo %%s
rem 拼接輸出的目標文件名
echo %%s.dest.mp3
rem 從20秒開始剪切去掉前面20秒的廣告
ffmpeg -i %%s -ss 00:00:25 -acodec copy %%s.dest.mp3
)
pause
- 雙擊cutter.bat執行即可