我正在寻找一种使用 ffmpeg 将字幕刻录到 mp4 视频的方法。
我使用以下命令来转换和刻录字幕但它不起作用!
ffmpeg -i subtitle.vtt subtitle.srt
ffmpeg -i video.mp4 -i subtitle.vtt -c copy -c:s mov_text out.mp4
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Stream #1:0 -> #0:2 (webvtt -> mov_text)
Press [q] to stop, [?] for help
[mp4 @ 0x80aee0] Encoder did not produce proper pts, making some up.
frame= 2692 fps=1139 q=-1.0 Lsize= 2416kB time=00:01:29.83 bitrate= 220.3kbits/s
video:1264kB audio:1053kB subtitle:2 global headers:0kB muxing overhead 4.178210%
Run Code Online (Sandbox Code Playgroud)
小智 7
您的命令是混合字幕(放入视频文件中,以便客户端可以打开和关闭它们);不将它们刻录到视频中。
既然你想把它们刻录成视频,你应该先把你的 .vtt 转换成 .ass (注意:你的 ffmpeg 必须是用 libass 构建的):
ffmpeg -i subtitle.vtt subtitle.ass
Run Code Online (Sandbox Code Playgroud)
然后将字幕刻录到视频中:
ffmpeg -i video.mp4 -vf ass=subtitle.ass out.mp4
Run Code Online (Sandbox Code Playgroud)
现在out.mp4 会烧掉字幕。
归档时间: |
|
查看次数: |
8631 次 |
最近记录: |