2

Как я могу использовать FFmpeg для преобразования флэш-видео (.flv) в видео OGG Theora для отображения в HTML 5?


Когда я пытался использовать

ffmpeg -i dayinthelife.wmv -vcodec libtheora -acodec libvorbis -b 750k dayinthelife.ogv

это произвело следующий вывод.

Seems stream 1 codec frame rate differs from container frame rate: 1000.00 (1000/1) -> 29.97 (30000/1001)
Input #0, asf, from 'dayinthelife.wmv':
  Duration:output 00:01:14.19, start: 5.000000, bitrate: 3754 kb/s
    Stream #0.0: Audio: wmav2, 48000 Hz, stereo, s16, 192 kb/s
    Stream #0.1: Video: wmv3, yuv420p, 1440x1080, 24000 kb/s, 29.97 tbr, 1k tbn, 1k tbc
Output #0, ogg, to 'dayinthelife.ogv':
    Stream #0.0: Video: libtheora, yuv420p, 1440x1080, q=2-31, 500 kb/s, 90k tbn, 29.97 tbc
    Stream #0.1: Audio: vorbis, 48000 Hz, stereo, s16, 64 kb/s
Stream mapping:
  Stream #0.1 -> #0.0
  Stream #0.0 -> #0.1
[libtheora @ 0x2551920]theora_encode_init failed
Error while opening codec for output stream #0.0 - maybe incorrect parameters such as bit_rate, rate, width or height

2 ответа2

1

Это относительно просто:

ffmpeg -i input.flv -vcodec theora -acodec vorbis output.ogv

Укажите желаемый целевой битрейт с помощью опции -b , например -b 1M или -b 512K .


Обратите внимание, что вам нужно скомпилировать ffmpeg с поддержкой Theora и Vorbis. Если у вас нет этих опций, следуйте приведенному здесь руководству, чтобы скомпилировать его с соответствующими библиотеками.

Более конкретно, эти флаги: --enable-libtheora --enable-libvorbis .

1

Это своего рода тангант, но это сделает работу.

Handbrake - это бесплатный кодировщик, построенный на FFmpeg, который преобразует ряд видеоформатов в MP4. Если вы укажете, что хотите, чтобы ваш вывод был "Оптимизирован для Интернета", он предоставит вам HTML5-совместимое видео в MP4.

Вот шаги, чтобы получить ваше видео в Ogg/Theora.

  • Открытый ручник
  • Укажите "Оптимизированный веб"
  • Получите вывод командной строки, который будет запускать Handbrake, но не запускайте его.
  • В текстовом редакторе измените библиотеки с MP4 на библиотеки Ogg/Theora.
  • Запустите измененный вывод через FFmpeg.

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