Потеря качества при добавлении субтитров через FFmpeg

После решения проблемы я прихожу к следующей. После добавления субтитров, обсуждаемых здесь , командой:

ffmpeg -i grdedFinal.mov -vf subtitles=portSbs.srt gradedFinalwithSubs.mov

качество генерируемого файла значительно снизилось. Исходный файл имел размер 1,5 ГБ, тогда как результирующий файл имел размер ~ 300 МБ . Субтитры добавлены правильно, но сжатие не нужно. Одним словом, я бы хотел, чтобы FFmpeg добавлял субтитры и делал только это, оставляя звук и качество изображения нетронутыми.

Ответы (1)

Поскольку вы жестко кодируете субтитры, видео (с добавленными субтитрами) будет перекодировано .

Вы можете использовать метод управления скоростью CRF для модуляции качества вывода.

Итак, начните с

ffmpeg -i grdedFinal.mov -vf subtitles=portSbs.srt -crf 18 -c:a copy gradedFinalwithSubs.mov

Если качество неприемлемо, уменьшите это значение до приемлемого — в обмен на файл большего размера. Конечно, принимайте решение не по размеру файла, а по визуальному качеству. x264 очень хорошо сжимает видео, сохраняя субъективно воспринимаемое качество.

Большое спасибо, я посмотрел здесь и поставил crf 0.
Необязательно, но это ваш выбор. Используйте отредактированную команду для передачи звука.
Так что crfже было бы оптимальным при отсутствии потери качества? Дополнительный вопрос, созданный файл не открывается в QuickTime, но запускается в VLC, поэтому я предполагаю, что файл уже не тот, movа aviнапример?
За то, что математически без потерь? Никто. Для визуального без потерь, 18как правило, прозрачный, но YMMV. Попробуйте -crf 1- я думаю, что ffmpeg выбрал формат пикселей для CRF 0, с которым QT не работает.