Как раскрасить текст с помощью записи жесткого кода.vtt и ffmpeg
У меня есть субтитры.vtt, которые я хочу записать в видео, но я хотел бы показать некоторые из них другим цветом.
Например:
This is IMPORTANT !
Я хотел бы, чтобы слово ВАЖНО было красным.
мой ffmpeg код:
fmpeg -i input.mp4 -vf "subtitles=sub.vtt" output.mp4
Используя синтаксис.vtt, я могу изменить только курсив <i>,<c>, <c.red>, <ruby>и т.д.. ничего не делают...
This is <i>IMPORTANT</i> !
Внутри ffmpeg -vf, я могу использовать force_style изменить цвет субтитров, но я могу изменить только всю строку, а не ее часть.
Благодарю.
1 ответ
FFmpeg делегаты libass работа растеризации текстовых субтитров, и эта библиотека, как следует из ее названия, работает только с субтитрами ASS. Когда предоставляются субтитры в другом формате, ffmpeg преобразует их в ASS. FFmpeg поддерживает разбор только ограниченного количества разметки в VTT - <i><b>, <u>,
Итак, конвертируйте сабвуферы в формат ASS и используйте редактор, такой как Aegisub, для добавления разметки.