24

Я пытаюсь использовать ffmpeg для конвертации моих файлов FLV в MP4 для воспроизведения их на устройствах iOS, но конвертированное видео имеет гораздо худшее качество, чем оригинальное.

Вот команда, которую я использую:

ffmpeg -i input.flv -ar 22050 output.mp4

Я был бы очень признателен, если бы кто-нибудь смог предоставить мне лучшие настройки для конвертации flv в mp4.

1 ответ1

40

В зависимости от кодеков, используемых в вашем FLV, вы можете просто обернуть его в контейнер mp4. Вам понадобится простое видео профиля H.264 или MPEG4 simple profile и аудио AAC . Вы можете узнать некоторую информацию о вашем исходном файле с помощью ffmpeg -i input.flv

Я не уверен, достаточно ли просто иметь H.264/MPEG4 Simple + AAC или есть определенные опции для поддерживаемых кодеков. Это достаточно легко проверить:

Попробуйте использовать

ffmpeg -i input.flv -c copy -copyts output.mp4

-copyts - copy timestamps это поможет синхронизировать аудио.

Если это не сработает, попробуйте форсировать аудио и видео кодеки. Это перекодирует файл:

ffmpeg -i input.flv -c:v libx264 -crf 23 -c:a libfaac -q:a 100 output.mp4

Чтобы улучшить качество видео, вы можете использовать более низкое значение CRF, например, до 18. Чтобы получить файл меньшего размера, используйте более высокий CRF, но учтите, что это ухудшит качество.

Чтобы улучшить качество звука, используйте более высокое значение качества. Для FAAC 100 по умолчанию.


Вот пара соображений по поводу команды ffmpeg, предложенной в этом вопросе.

-ar относится к частоте дискретизации аудио. Я бы порекомендовал не возиться с этим, пока вы не разберетесь лучше. Если вы хотите играть с аудиокодированием, отрегулируйте битрейт (например, -b:a 128k) и позвольте кодировщику выбрать, что делать на основе этого.

Если вы в конечном итоге идти по этой дороге ...

Качество CD составляет 44100 Гц; типичное видео использует 48000 Гц.

Вы можете заметить, что 22050 в исходном примере вопроса составляет 1/2 частоты выборки качества CD. если вы конвертируете материал CD, это хороший выбор. Если вы начинаете с источника 48 кГц (которым вы, вероятно, являетесь; опять же, это гораздо чаще, чем 44100 в видеофайлах), я бы вместо этого использовал 24 кГц. Это, вероятно, не будет иметь большого значения, но может звучать немного лучше и использовать немного меньше ресурсов процессора для преобразования.

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