У меня есть видео, которое FFmpeg идентифицирует как 720x480 [SAR 8:9 DAR 4:3] . При просмотре в проигрывателе правильно отображаемое видео занимает 720x540 пикселей, что имеет смысл, поскольку 480/8 * 9 = 540.

Однако при записи субтитров в видео субтитры растягиваются по вертикали, что может быть в 9/8 раз. Я предполагаю, что происходит то, что субтитры применяются к вертикально сжатым видеоданным 720x480, а затем проигрыватель видео растягивает видео до 720x540, что дает правильно отображаемое видео, но, к сожалению, растянутые субтитры.

Как записать субтитры в видео и сохранить правильные аспекты для видео и субтитров? Можно ли, например, "избавиться" от SAR в процессе преобразования?

Моя основная командная строка, использующая FFmpeg 4.1:

ffmpeg -i in.mp4 -vf in.srt out.mp4

1 ответ1

1

Как правило, игроки растягивают видео по горизонтали, но вы можете использовать mpv или аналогичный, который растягивается по вертикали. Самый безопасный вариант - сделать видео квадратичным.

ffmpeg -i in.mp4 -vf scale=iw*sar:ih,setsar=1,subtitles=in.srt -c:a copy out.mp4

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