(本文為原創(chuàng),轉(zhuǎn)載請(qǐng)注明來(lái)自:簡(jiǎn)書)
??本文將為大家講解使用ffmpeg和audipo將音頻分割為多個(gè)mp3的另一種方法。ffmpeg的介紹請(qǐng)點(diǎn)此查看,請(qǐng)先在官網(wǎng)[1]下載解壓,并添加環(huán)境變量,本文不贅述。
接上一篇文章[2]更新:
方法二:
第一步:
在cmd下,輸入類似如下的命令:
ffmpeg -ss 00:00:10 -t 00:01:00 -i input.mp3 -c copy output.mp3
這里的參數(shù)解釋如下:
-i輸入的音頻
-c copy用原來(lái)的編碼并復(fù)制到新文件中
-ss起始時(shí)間
-t截取音頻時(shí)間長(zhǎng)度
這里的“-t”需要說(shuō)明的是,后面跟的時(shí)間格式??梢允侨缦聝煞N情況:
-t xx??????????// 單位:秒
-t xx:xx:xx?// 時(shí):分:秒
比如時(shí)長(zhǎng)“1分鐘”,就是-t 00:01:00,它等價(jià)于-t 60。
ffmpeg -ss 00:00:10 -t 00:01:00 -i input.mp3 -c copy output.mp3
此條命令的意思是:input.mp3這個(gè)文件從10s開(kāi)始,截取時(shí)長(zhǎng)為1分鐘的這一部分,并另存為output.mp3。
順便提一下,對(duì)于視頻的切割也是差不多的方式,具體請(qǐng)使用參數(shù)--help進(jìn)行查看。
但是這樣一條命令只實(shí)現(xiàn)了掐頭去尾,截取了一部分,如何才能像方法一[2]中的那樣,一次可以截取多段音頻并導(dǎo)出來(lái)呢?也不用太復(fù)雜,其實(shí)可以寫個(gè)簡(jiǎn)單的批處理文件,下面為大家具體介紹。
第二步:
上一次的文章中介紹了audipo導(dǎo)出時(shí)間標(biāo)記的兩種格式,忘記的朋友請(qǐng)點(diǎn)此處閱讀。

因?yàn)?strong>audipo的標(biāo)記功能確實(shí)是非常的方便又直觀,所以這次還是要用到它。
BTW,標(biāo)記之后使用區(qū)間復(fù)讀的功能,還有配合變速功能,用來(lái)學(xué)英語(yǔ)極其順手,一般人我不告訴他。
但忍不住要再次強(qiáng)烈推薦一下該app,讓你瞬間新技能get√。
1. 導(dǎo)出時(shí)間點(diǎn)
這一次,我們選擇第二項(xiàng)Readable text format,導(dǎo)出的格式為txt。內(nèi)容如下:

2. 編輯時(shí)間點(diǎn)格式
再用正則稍微處理一下,這時(shí)使用到的工具是Sublime Text。有時(shí)會(huì)有復(fù)雜的情況可能會(huì)用到正則,但一般情況下只用到Sublime Text多行編輯的功能,就已經(jīng)能讓這一步的操作變得很快捷。
習(xí)慣用其他文本編輯器的朋友也可以自行嘗試這一步的編輯。
將時(shí)間標(biāo)記變成“起 - 止”點(diǎn),下一行時(shí)間為上一行時(shí)間的止點(diǎn),最后一行的止點(diǎn)為音頻結(jié)束時(shí)間。
如以下的格式:

如果不使用此軟件,也在可以在播放音頻時(shí)手動(dòng)記下需要分割的時(shí)間點(diǎn)。
但這里要說(shuō)明的是,ffmpeg中表示時(shí)間的默認(rèn)格式為hh:mm:ss,所以前面還要再加上“00:”。

其實(shí)可以一步到位,這里只是為了說(shuō)明,作了多步的操作,實(shí)際使用時(shí)請(qǐng)注意參數(shù)格式。
3. 批處理
最終完成如下:

這里我們刪除第一行,并另存為“.bat”格式。與這里的“input.mp3”文件放在同一目錄下并雙擊運(yùn)行,得到分割后的音頻文件。
至此完成音頻文件分割成多個(gè)mp3的操作。
與之前所講的不同的是,這里沒(méi)有用到“-t”的參數(shù)。這是為什么呢?
因?yàn)椤?t”的表示的作用其實(shí)是“duration”,也就是時(shí)長(zhǎng)。顯然后面的時(shí)間點(diǎn)所指的應(yīng)該是“起 - 止”點(diǎn)中的“止”點(diǎn)。
所以這里換成了參數(shù)“-to”,也就是“stop time”。
需要注意的地方是:
如果將“-ss”放在“-i”后面則“-to”的作用就沒(méi)了,跟“-t”一樣的效果了,變成了截取多長(zhǎng)時(shí)間。一定要注意“-ss”的位置。
PS: 有朋友問(wèn)到分割后的音頻可能總有聽(tīng)著比較生硬的地方,ffmpeg能否實(shí)現(xiàn)淡入淡出的效果?
答案當(dāng)然是肯定的了! 舉例如下:
從0s開(kāi)始淡入3s
ffmpeg -i input.mp3 -af "afade=t=in:ss=0:d=3" out.mp3從50秒開(kāi)始淡出5s
ffmpeg -i input.mp3 -af "afade=t=out:st=50:d=5" out.mp3
參數(shù)-af為音頻濾鏡,afade為音頻淡入淡出。相應(yīng)的如果是對(duì)視頻的操作,這里的參數(shù)afade處可以使用fade。
謝謝您的閱讀, 本文為原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處:簡(jiǎn)書 http://www.itdecent.cn/p/7647a55daa18
-
請(qǐng)參見(jiàn)此文 使用ffmpeg和audipo將音頻文件分割為多個(gè)mp3(一) ? ?