在線平臺常用m3u8文件形式加載TS片段來播放柜思,這樣的好處是可以根據(jù)視頻的播放進度實現(xiàn)加載當(dāng)前播放的切片,而不用等待整個視頻的完全加載,極大地減小了服務(wù)器的壓力,降低了播放的延遲册赛。
倘若我們有一部mp4電影,應(yīng)當(dāng)怎樣切片呢±霾眩現(xiàn)在我用Mac平臺演示一下击奶。
下載ffmpeg
下載ffmpeg需要先安裝Homebrew,若你已安裝brew環(huán)境,可跳過下面的步驟责掏。
// 安裝brew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安裝完成brew可以在終端試一試是否成功安裝,如下圖:
1564798154691.jpg
輸入brew湃望,顯示如圖信息表示安裝成功
然后我們就可以安裝ffmpeg了换衬,終端輸入:
brew install ffmpeg
稍等片刻,brew會拉取git上的ffmpeg证芭,然后會自動部署ffmpeg,安裝速度以來網(wǎng)絡(luò)狀況瞳浦。安裝ffmpeg完成可以終端輸入:
ffmpeg -version
終端會顯示當(dāng)前ffmpeg版本即表示安裝成功。
轉(zhuǎn)換MP4視頻 -> TS格式
這個時候可以進行視頻編輯了废士。示例如下:
注:文件路徑盡量使用英文名
ffmpeg -y -i <mp4源文件路徑> -vcodec copy -acodec copy -vbsf h264_mp4toannexb <打算生成的TS文件路徑>
示例:
ffmpeg -y -i /Users/$(whoami)/input/sourcevideo.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb /Users/$(whoami)/output/outputvideo.ts
可能有的mp4視頻在轉(zhuǎn)換ts文件時叫潦,終端會報異常,這個時候可以嘗試更換視頻來實現(xiàn)轉(zhuǎn)碼官硝。當(dāng)然矗蕊,你也可以采用其他的方式轉(zhuǎn)碼,比如借助三方工具氢架。
切片TS視頻
接下來對視頻進行切片操作傻咖,即生成若干連續(xù)TS文件和m3u8播放列表文件。
示例:
ffmpeg -i /Users/$(whoami)/output/outputvideo.ts -c copy -map 0 -f segment -segment_list /Users/$(whoami)/play/playlist.m3u8 -segment_time 10 /Users/$(whoami)/play/video_%03d.ts
然后岖研,我們在play文件夾可以看到‘playlist.m3u8’文件和‘video_000.ts’卿操,‘video_001.ts’...等連續(xù)ts文件,切片成功孙援。
去嗨皮吧害淤,視頻切片成功啦,so easy拓售!