Возможный дубликат:
Какой набор сценариев ffmpeg мне нужен для запуска «Видео для всех»?
Я нахожусь в процессе преобразования больших, высококачественных файлов-контейнеров mxf (используя видео mpeg-1, аудио PCM S16 LE) в формат webm и mp4 (для HTML 5). Я, вероятно, буду использовать ffmpeg для конвертации этих видеофайлов. Я тестировал несколько файлов, пытаясь найти лучшее соотношение между временем кодирования, качеством видео и размером файла. Я пытаюсь выяснить, какие настройки (размер, битрейт, аудио битрейт) лучше всего подходят для транскодирования в форматы webm и mp4 для потоковой передачи через Интернет.
Результаты:
Тест 1:
Размер входного файла: 253 МБ
Продолжительность входного файла: 40 секунд
1,1:
Настройки: 480x360, 400 Кбит / с видео, 96 Кбит / с аудио, 25 к / с - вывод webm
Строка FFMPEG: «ffmpeg -y -I test.mfx -vcodc libvpx -acodec libvorbis -b:v 400k pr 25 -s 480x360 -b:96k testoutput.webm»
Результаты:
Время кодирования: 26 секунд
Размер выходного файла: 1.84mb
Степень сжатия: 137,5%
1,2:
Настройки: 480x360, 400kbs видео, 96k аудио, 25fps - вывод mp4
Строка FFMPEG: "ffmpeg -y -I test.mxf -b 400k -r 25 -s 480x360 -ab 96k testoutput.mp4"
Результаты:
Время кодирования: 16 секунд
Размер выходного файла: 1.95 МБ
Степень сжатия: 129,7%
1,3:
Настройки: 480x360, 250 Кбит / с видео, 96 Кбит / с аудио, 25 к / с - вывод webm
Строка FFMPEG: "ffmpeg -y -I test.mfx -vcodc libvpx -acodec libvorbis -b:v 250k pr 25 -s 480x360 -b:96k testoutput.webm"
Результаты:
Время кодирования: 25 секунд
Размер выходного файла: 1.33mb
Степень сжатия: 190,5%
1,4:
Настройки: 480x360, 250kbs видео, 96k аудио, 25fps - вывод mp4
Строка FFMPEG: "ffmpeg -y -I test.mxf -b 250k -r 25 -s 480x360 -ab 96k testoutput.mp4"
Результаты:
Время кодирования: 13 секунд
Размер выходного файла: 1.41mb
Степень сжатия: 179,4%
Тест 2:
Размер входного файла: 592 МБ
Продолжительность входного файла: 116 секунд
2,1:
Настройки: 480x360, 400 Кбит / с видео, 96 Кбит / с аудио, 25 к / с - вывод webm
Строка FFMPEG: «ffmpeg -y -I test.mfx -vcodc libvpx -acodec libvorbis -b:v 400k pr 25 -s 480x360 -b:96k testoutput.webm»
Результаты:
Время кодирования: 109 секунд
Размер выходного файла: 7.08
Степень сжатия: 83%
2,2:
Настройки: 480x360, 400kbs видео, 96k аудио, 25fps - вывод mp4
Строка FFMPEG: "ffmpeg -y -I test.mxf -b 400k -r 25 -s 480x360 -ab 96k testoutput.mp4"
Результаты:
Время кодирования: 50 секунд
Размер выходного файла: 7.04mb
Степень сжатия: 84%
2,3:
Настройки: 480x360, 250 Кбит / с видео, 96 Кбит / с аудио, 25 к / с - вывод webm
Строка FFMPEG: "ffmpeg -y -I test.mfx -vcodc libvpx -acodec libvorbis -b:v 250k pr 25 -s 480x360 -b:96k testoutput.webm"
Результаты:
Время кодирования: 105 секунд
Размер выходного файла: 5.21mb
Степень сжатия: 113,5%
2,4:
Настройки: 480x360, 250kbs видео, 96k аудио, 25fps - вывод mp4
Строка FFMPEG: "ffmpeg -y -I test.mxf -b 250k -r 25 -s 480x360 -ab 96k testoutput.mp4"
Результаты:
Время кодирования: 45 секунд
Размер выходного файла: 4.95 МБ
Степень сжатия: 119%
Тест 3:
Размер входного файла: 1470 МБ
Продолжительность входного файла: 274 секунды
(Полные подробные результаты были опущены, см. Сводную таблицу ниже, такое же форматирование, как в тестах 1 и 2)
Таблица результатов
- 1,1 - вебм - размер: 1,84 - время: 26
- 1,2 - mp4 - размер: 1,95 - время: 16
- 1,3 - вебм - размер: 1,33 - время: 25
- 1,4 - mp4 - размер: 1,41 - время: 13
- 2.1 - webm - размер: 7.08 - время: 109
- 2.2 - mp4 - размер: 7.04 - время: 50
- 2.3 - webm - размер: 5.21 - время: 105
- 2,4 - mp4 - размер: 4,95 - время: 45
- 3.1 - webm - размер: 17.12 - время: 248
- 3,2 - mp3 - размер: 17.17 - время: 129
- 3.3 - webm - размер: 12.21 - время 237
- 3,4 - mp4 - размер: 12,10 - время: 113
Вывод: для меньшего размера файла (274 МБ) webm обеспечивает немного лучший коэффициент сжатия, btu занимает примерно 55% дольше. При больших размерах файлов размеры файлов примерно одинаковы, но кодирование по-прежнему занимает примерно 45-50% дольше.
Напоследок вопрос к вам, ребята:
Вопрос:
Какие настройки / профили вы можете предложить, чтобы обеспечить наиболее эффективное решение для моей проблемы.