Mencoder 在“刻录” srt 字幕文件时会混合 2 种不同的字幕

Mencoder 在“刻录” srt 字幕文件时会混合 2 种不同的字幕

我正在使用 mencoder(Ubuntu 14.04 上的版本 1.1-4.8)将各种 avi、mp4 和 mkv 文件编码为较小的 .avi 文件,其中“嵌入”了 srt 字幕(以便在格式支持非常有限的便携式 DVD 播放器中观看)。它通常效果很好,但有些 mkv 文件已经包含一个或多个字幕轨道。在这些情况下,输出文件会显示原始字幕行约半秒钟,然后切换到我提供的 srt 文件中的文本,对每个对话重复此行为。我使用西班牙语 .srt 文件,而 mkv 文件通常具有由隐藏字幕生成的英文字幕,因此快速切换(屏幕上没有任何内容 -> 英文对话 -> 西班牙语对话)可能会非常令人困惑。

我找不到方法告诉 mencoder 忽略 mkv 文件附带的任何字幕并仅使用我提供的 srt 文件,所以我想知道这里是否有人遇到过类似的问题并能找到解决方案。

作为参考,我正在进行 2 次转换,这些是我用于第二遍的参数:

原始文件.mkv -oac mp3lame -ovc xvid -vf scale -zoom -xy 720 -xvidencopts bitrate=2500:me_quality=6:threads=2:pass=2 -noautosub -forcedsubsonly -sub 字幕.srt -subfont-text-scale 2.5 -subcp latin1 -subpos 85 -passlogfile /tmp/logfile -o 输出.avi -quiet

谢谢你!

答案1

好吧,找不到阻止 mencoder 覆盖 2 个字幕的方法,但我找到了一个简单的解决方法。

我在转换脚本的开头添加了一个新步骤,检查原始文件的扩展名是否为 mkv,如果是,则使用以下命令从中删除所有字幕:

mkvmerge -S -o original.mkv /tmp/no_subtitles.mkv

然后我使用此命令的输出而不是我的“原始”文件,并且没有嵌入的字幕来抑制

相关内容