
我有一个名为的视频测试视频.mp4从 YouTube 下载
这是运行后获得的视频信息ffmpeg -i test_video.mp4
:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test_video.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.19.102
Duration: 00:00:17.62, start: 0.000000, bitrate: 265 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 640x480 [SAR 1:1 DAR 4:3], 138 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
Metadata:
handler_name : ISO Media file produced by Google Inc.
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : ISO Media file produced by Google Inc.
我还有一个带字幕的文件,名为测试_子.srt:
1
00:00:01,000 --> 00:00:05,000
Hello
2
00:00:10,000 --> 00:00:15,000
World
当我运行 时ffmpeg -i test_video.mp4 -i test_sub.srt -map 0:0 -map 0:1 -map 1:0 -c:v copy -c:a copy -c:s mov_text -metadata:s:s:0 language=eng test_out.mp4
,会添加软字幕:
当我尝试对更大的视频执行相同操作时,问题就出现了测试2_视频.mp4,我运行,ffmpeg -i test2_video.mp4 -i test_sub.srt -map 0:0 -map 0:1 -map 1:0 -c:v copy -c:a copy -c:s mov_text -metadata:s:s:0 language=eng test2_out.mp4
但字幕没有添加到测试2_输出.mp4。这是我运行时的视频信息ffmpeg -i test2_video.mp4
:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test2_video.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf57.83.100
Duration: 00:59:11.08, start: 0.000000, bitrate: 2131 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1997 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
为什么会出现这种情况?FFmpeg我正在运行的是4.2.7-0ubuntu0.1
答案1
我找到了解决方案,问题不FFmpeg,问题出在我的默认媒体播放器上:图腾媒体播放器出于未知原因,如果字幕相对于视频长度来说时间太短,Totem 不会显示字幕,如果将另一个连续字幕添加到测试_子.srt,但至少直到 00:11:51,000(在此特定示例中),字幕才会显示
1
00:00:01,000 --> 00:00:05,000
Hello
2
00:00:10,000 --> 00:00:15,000
World
3
00:11:50,000 --> 00:11:51,000
.
我知道问题出在 Totem 上,因为我决定尝试其他媒体播放器,比如甚高频液晶而这个问题并不存在