
寫這篇文章的主要原因是我已經下載了 movie.mp4 的 SRT。當我手動新增 SRT 時,VLC 使用其設定來更改 SRT 的字體/大小等。但如果我嵌入字幕文件,它就不再起作用了。我發現這是 mp4/mov_text 的問題!
有可能將字幕嵌入 MP4但我發現VLC 忽略 MP4 的字幕設置和看不到 MP4 的軟編碼字幕
我想轉換
movie.mp4
到
movie.mkv
無需重新編碼(LossLess)和添加字幕。
答案1
此命令不適用於嵌入字幕的 mp4,並且從 Mp4 中提取字幕將產生 MOV_TEXT 樣式的字幕文件,這不是您想要的。基本上,Google搜尋 SRT,對其進行測試,然後我們就可以開始了。
如果您嵌入了 SRT,您還需要一個僅包含視訊和音訊的單獨檔案。剝離 srt 串流,只留下您想要的視訊和音訊。
例子:
ffmpeg -i movie.mp4 -map 0:0 -vcodec copy -map 0:1 -acodec copy movienosubs.mp4
所以我們假設你現在有
subtitle.srt
movienosubs.mp4
FFMPEG 命令將是這樣的:(請注意,這只複製第一個音訊串流,如果您不想變得更複雜,您可能需要搞亂映射流,但您明白了)
ffmpeg -i movienosubs.mp4 -i subtitle.srt -c:v copy -c:a copy -c:s copy movieFINAL.mkv
答案2
MKV 檔案是一個可以放置視訊、音訊和文字(字幕)的容器。如果您在使用命令列 ffmpeg 工具時遇到困難(如已經建議的那樣),您可以嘗試 GUI 工具,例如 MKVToolnix。在此過程中沒有重新編碼,實際上只是複製。
答案3
你可以使用我的程式dmMediaConverter(這是一個 FFmpeg GUI,公開了它的一些功能),它就是這樣做的,您可以複製所有串流而無需轉碼。 http://dmsimpleapps.blogspot.ro/2014/04/dmmediaconverter.html