Кодировать видео с помощью кодека ffmpeg и vp8 на Native Client

Я пытаюсь разработать видеокодер с использованием Native Client. Я хочу, чтобы выходной файл был.webm, и я использую ffmpeg пример "muxing.c".

Когда я запускаю пример, я получаю сообщение об ошибке: Не удалось найти кодировщик для "vp8"

Ошибка приходит отсюда:

*codec = avcodec_find_encoder(codec_id);
if (!(*codec)) {
    fprintf(stderr, "Could not find encoder for '%s'\n",
            avcodec_get_name(codec_id));
}

куда codec_id значение AV_CODEC_ID_VP8

Когда я помещаю выходной файл в формат.mp4, он работает.

Кто-нибудь может мне помочь. Нужно ли включать кодировщик vp8 для ffmpeg naclport? Что я должен делать?

Спасибо!!

ОБНОВИТЬ

@ Ли Джи Ушел:

Да. вам необходимо скомпилировать ffmpeg с библиотекой libvpx для кодирования vp8/vp9. Вы можете установить его через Yum, APT. или вы можете скомпилировать его вручную.

После установки libvpx установите ffmpeg с libvpx в следующей команде:

./configure --enable-libvpx 
make -j 4
make install

Я поместил зависимость для libvpx в build.sh и pkg_info в ffmpeg naclport и собрал ее снова. Теперь это работает!

1 ответ

Да. вам необходимо скомпилировать ffmpeg с библиотекой libvpx для кодирования vp8/vp9. Вы можете установить его через Yum, APT. или вы можете скомпилировать его вручную.

После установки libvpx установите ffmpeg с libvpx в следующей команде:

./configure --enable-libvpx
make -j 4
make install
Другие вопросы по тегам