如何将 .cap 隐藏式字幕编码为 MPEG 视频

How to encode .cap Closed Caption into MPEG video

我有一个 .cap 隐藏式字幕文件和一个 .mpg 视频,我想将其添加到其中。我已经看到了数百个示例,说明如何使用 ffmpeg 为 .srt(字幕)和任何视频格式完成此操作,但没有找到适用于 .cap 的解决方案。

最终目标是将带有隐藏式字幕的视频转换为 HLS 流。我认为有两种方法可以做到: 1.先将字幕编码成视频 > 然后转成HLS 或者 2. 先将视频转为HLS > 然后在.ts段上添加隐藏式字幕

虽然我找不到包含 .cap 文件的方法。 ffmpeg 抛出以下错误 - mycaptionsfile.cap: Invalid data found when processing input

这是我用于将视频转换为 hls 的 cmd - ffmpeg -hide_banner -y -i myvideo.mpg -vf scale=w=1280:h=720:force_original_aspect_ratio=decrease -c:a aac -ar 48000 -c:v h264 -profile:v main -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod -b:v 2800k -maxrate 2996k -bufsize 4200k -b:a 128k -hls_segment_filename 720p_%03d.ts 720p.m3u8

显然,您只能使用 Cheetah 自己的转换器将 .cap 转换为 .scc,然后从那里获取。可以使用 CaptionMakerAdobe Premiere Pro。也提供限时试用。

这里有一些参考 - http://www.theneitherworld.com/mcpoodle/SCC_TOOLS/DOCS/SCC_FORMAT.HTML

,这里 - https://ffmpeg.org/pipermail/ffmpeg-user/2015-August/027936.html