一.情況介紹
當你有一個m3u8文件和一個目錄,目錄中有連續的視頻片段,這些片段可以連成一段完整的視頻。
m3u8文件打開後像這樣:
樣例.m3u8
m3u8文件,可以理解為播放列表,裡面是播放視頻片段的順序。
視頻片段像這樣:
為了将片段連接在一起,我選擇使用是ffmpeg,一個強大的處理音頻,視頻的工具,是開源的。許多windows處理音頻,視頻的工具,背後都是使用了ffmpeg。
二.合并過程
1)安裝ffmpeg
sudo apt install ffmpeg
2)生成配置文件
用文本編輯器打開m3u8文件,我就選擇了vscode。選擇編輯菜單的替換,
選擇“正則表達式”查找
首先是要把#EXT開頭的行,變成空行,
在查找框輸入^#EXT.*,
替換前
替換框不輸入内容,點擊全部替換
替換後
上一步,留下了很多空行,現在要去掉這些空行。
在查找框輸入^\s*(?=\r?$)\n,
替換前
替換框不輸入内容,點擊全部替換,
替換後
剩下來的每一行就是視頻片段的絕對路徑,接下來,把視頻片段的路徑改成自己電腦中的路徑,
在查找框中輸入自己文件的路徑,我這裡是/storage/emulated/0/Quark/Download,
替換前
在替換框中輸入本機中視頻片段的絕對路徑。
替換後
最後,在每一行的絕對路徑前面加入file ' ,後面加入單引号 '
在查找框輸入^,替換框輸入file '
替換前
替換後
在查找框輸入$,替換框輸入英文單引号 '
替換前
替換後
這樣配置文件就修改好了。
3)生成最後的文件
在終端中使用命令合并成一個視頻,其中filelist.txt就是m3u8,output.mp4就是最後生成的文件名
ffmpeg -f concat -safe 0 -i filelist.txt -c copy output.mp4
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!