![是否可以使用 MeGui 中的强制选项在 MP4 中嵌入字幕?](https://linux22.com/image/1405693/%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%20MeGui%20%E4%B8%AD%E7%9A%84%E5%BC%BA%E5%88%B6%E9%80%89%E9%A1%B9%E5%9C%A8%20MP4%20%E4%B8%AD%E5%B5%8C%E5%85%A5%E5%AD%97%E5%B9%95%EF%BC%9F.png)
我想用我的网络播放器显示字幕(它支持 Flash 和 HTML5)。我使用的是 MP4 格式,我可以使用外部 SRT 文件将字幕添加到播放器,但我想将字幕嵌入到我的 mp4 视频中。
我可以使用(Windows 命令行工具)或 YAMB 程序嵌入字幕mp4box
。我的桌面媒体播放器可以看到字幕,但不是全部。我尝试使用 MeGui,将我的 MP4 和视频放入其中,然后选择强制和默认字幕选项。然后我启动了程序而无需重新编码。花了几分钟。在此之后,MeGui 程序将我的 MP4 转换为 MKV 而无需重新编码,并将我的字幕设置为强制和默认。所有播放器现在都可以看到字幕,但这不是我想要的,我需要 MP4 格式。我尝试使用 MeGui 将字幕设置为强制和默认,并将输出设置为 MP4,这次程序将我的 mp4 编码为 MP4。
有没有办法在不重新编码的情况下将字幕嵌入 mp4?我的播放器可以显示嵌入 MP4 文件中的文本轨道。如何使用播放器显示字幕?
答案1
如果您希望将软字幕作为单独的音轨,可以。最简单的方法是使用 FFMPEG 和mov_text
:
c:\<PathToFFMPEG>\ffmpeg.exe" -i "c:\<PathToVideo>\video.mp4 -i "c:\<PathToSubs>\video.srt" -c:v copy -c:a copy -c:s mov_text -metadata:s:s:0 language=eng -map 0:0 -map 0:1 -map 1:0 "c:\<PathToVideo>\VideoNew.mp4
在 cmd 屏幕上更改c:\<PathTo...>\...
或拖放,它将为您添加。