Я хотел сделать изображение с фильтром субтитров. Мне нужно изображение, поддерживающее прозрачность, поэтому я планирую представить его как растровое изображение. Мне также нужно указать время субтитров. Как мне это сделать?

1 ответ1

2

Растровые изображения не поддерживают прозрачность; вместо этого вам нужен формат вывода, например PNG.

ffmpeg с 30 августа 2017 года имеет alpha опцию для фильтра subtitles которая позволяет рисовать субтитры на прозрачном фоне. Вы должны создать этот прозрачный фон, используя color фильтр.

ffmpeg -ss 00:03:12 -f lavfi -i "color=color=white@0.0:size=200x200,format=rgba,subtitles=subs.srt:alpha=1" -frames:v 1 out.png

Замечания:

  • Ваши субтитры должны быть в файле subs.srt
  • Вы можете указать время субтитров с опцией -ss (например, 03:12 здесь)
  • Размер видео устанавливается в качестве опции color фильтра - здесь 200х200

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .