Приклад коду відеокодера FFmpeg не працює


0

Я використовую ffmpeg в ubuntu. Його версія та інші речі показані нижче:

ffmpeg -h encoder=h264
ffmpeg version 4.0 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.9) 20160609
  configuration: 
  libavutil      56. 14.100 / 56. 14.100
  libavcodec     58. 18.100 / 58. 18.100
  libavformat    58. 12.100 / 58. 12.100
  libavdevice    58.  3.100 / 58.  3.100
  libavfilter     7. 16.100 /  7. 16.100
  libswscale      5.  1.100 /  5.  1.100
  libswresample   3.  1.100 /  3.  1.100
Encoder h264_v4l2m2m [V4L2 mem2mem H.264 encoder wrapper]:
    General capabilities: delay 
    Threading capabilities: none
h264_v4l2_m2m_encoder AVOptions:

Я запустив кодер, використовуючи вбудований код у наступному

~/ffmpeg-4.0/doc/examples$ ./encode_video out.h264 ff_h264_v4l2_m2m_encoder

І отримаєте таку помилку:

Codec 'ff_h264_v4l2_m2m_encoder' not found

чи може хтось із вас мені допомогти? яке ім'я кодека слід використовувати тут для запуску самого прикладу коду?

Відповіді:


1

Встановити x264:

  • git clone http://git.videolan.org/git/x264.git
  • cd x264
  • sudo ./configure --enable-shared --disable-asm
  • sudo make && sudo make install

Зробіть FFmpeg заново. Наприклад, для мене командою є:

  • sudo ./configure --disable-yasm --enable-libx264 --enable-swscale --enable-avresample --enable-gpl --enable-shared
  • sudo make && make install

Якщо ви використовуєте OpenCV, ви повинні створити його заново.


sudo make && make install працює  makeяк root ( sudo) і make installяк ваш звичайний користувач (не привілейований). Якщо щось потрібно запускати з привілеями root, це так make install. І навпаки, ./configureі (звичайний) makeзазвичай не потрібно запускати з правами root.
Скотт
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.