目前我这样做:ffmpeg -i video.mp4 -vf ass=subs.ass output.mp4
。但对于某些视频,这需要太长时间。有没有办法提高速度:可能是保存质量较低的输出文件或其他什么?
答案1
- 使用更快
-preset
(假设您正在使用编码器 libx264)。 - 流复制音频而不是重新编码它
-c:a copy
(假设输入音频是 AAC)。 - 使用软字幕代替硬字幕(假设您的播放器接受它们),并完全避免使用流复制重新编码。输出到 MKV 并复用 ASS 文件,或使用 MP4
-c:s mov_text
。 - 尝试看看硬件加速编码器是比较快的。
答案2
我发现这对我有用并且非常快。
ffmpeg -i "$input_file" -i "$subt_file" -c copy -c:s mov_text "$savefile"
另外,如果我需要延迟字幕,我会使用这个:
ffmpeg -itsoffset 3.68 -i "/Plex/work/GC.srt" -c copy xx.srt