3

Я имею дело с некоторыми видео mp4, которые были закодированы на мобильных телефонах и довольно большие.

Я думаю, что ffmpeg может сделать лучше. Я пытаюсь выяснить, какие флаги использовать, чтобы сохранить fps, разрешение и сохранить внешний вид (без потерь или почти без потерь).

Какие флаги я должен использовать?

1 ответ1

8

Сохранить настройки

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

Некоторые настройки могут измениться, если существуют ограничения на формат или кодировщик.

Сохранить качество

Для видео H.264 с использованием кодера libx264 используйте:

  • -crf 18
  • самый медленный пресет у вас есть терпение для

Эти опции будут выводить видео с потерями, но его -crf 18 предоставляет достаточно битов, что, скорее всего, будет визуально без потерь или почти без потерь . Если выходные данные все еще слишком велики, общая рекомендация состоит в том, чтобы использовать самое высокое значение -crf которое все еще обеспечивает приемлемое качество.

Вы можете изменить его на -crf 0 для истинного без потерь, но в результате вы получите большой размер файла, возможно, даже больший, чем оригинал.

Пример:

ffmpeg -i input.mp4 -c:v libx264 -crf 18 -preset slow -c:a copy output.mp4

Этот пример потока копирует аудио, а не перекодирует его, так как большая часть размера файла происходит из видео.

Разработка очень активна, поэтому обязательно используйте последнюю сборку ffmpeg . Смотрите страницу загрузки FFmpeg для ссылок на двоичные файлы.

Также см:

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