如何使用 ffmpeg 在 MKV 文件中指定字幕调色板?

如何使用 ffmpeg 在 MKV 文件中指定字幕调色板?

我该如何在 MKV 文件中定义字幕调色板?(已在http://ffmpeg.org/pipermail/ffmpeg-user/2020-May/048826.html但没有任何答案。

我想将电视录制的带 DVB 字幕的视频(例如http://pmrb.free.fr/tmp/ffmpeg-test/sample.mkv) 转换为带 DVD 字幕的压缩视频,在我的三星电视上呈现效果很好。

不幸的是,结果不太可读:http://pmrb.free.fr/tmp/ffmpeg-test/samsung.jpg

但 VLC 使用了漂亮的颜色:http://pmrb.free.fr/tmp/ffmpeg-test/vlc.jpg

我猜测,当在视频文件中定义了调色板时,三星电视将显示更好的效果。

我尝试过这个命令:

~/tmp/FFmpeg/ffmpeg -i orig-dvbsub.ts -map 0:0 -map 0:1 -map 0:2 -c:v libx264 -c:a copy -c:s dvdsub -palette "0d00ee,ee450d,101010,eaeaea,0ce60b,ec14ed,ebff0b,0d617a,7b7b7b,d1d1d1,7b2a0e,0d950c,0f007b,cf0dec,cfa80c,7c127b" test-output.mkv

但它不起作用,视频播放器上的渲染没有改变。

TIA 有任何提示吗,Peter

答案1

以下语法对我有用:

 ffmpeg -probesize 100M -analyzeduration 120M -palette "ffffff,000000,ffffff,00ff00,ffffff,ffffff,ffffff,ffffff,ffffff,ffffff,ffffff,ffffff,ffffff,ffffff,ffffff,ffffff" -i input.mkv -filter_complex "[0:v][1:s]overlay" -acodec copy -vcodec libx264 output.mp4

来源:https://en.m.wikibooks.org/wiki/FFMPEG_An_Intermediate_Guide/subtitle_options

相关内容