Нераспознанная опция -enable-libx264. Ошибка разделения списка аргументов: опция не найдена - PullRequest
0 голосов
/ 07 марта 2020

Я пытаюсь транслировать видео MP4 со своего сервера на YouTube, поэтому я установил версию FFMPEG. Затем, когда я смотрю на конфигурацию FFMPEG, мне представляется следующее:

ffmpeg version 3.3.6 Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 4.9.2 (Debian 4.9.2-10)
  configuration: --enable-cross-compile --arch=i686 --target-os=linux --disable-yasm --disable-static --enable-shared --enable-gpl --enable-libmp3lame --enable-libx264 --enable-libsoxr --enable-version3 --enable-nonfree --enable-openssl --disable-decoder=ac3 --disable-decoder=ac3_fixed --disable-decoder=eac3 --disable-decoder=dca --disable-decoder=truehd --disable-encoder=ac3 --disable-encoder=ac3_fixed --disable-encoder=eac3 --disable-encoder=dca --disable-decoder=hevc --disable-decoder=hevc_cuvid --disable-encoder=hevc_nvenc --disable-encoder=nvenc_hevc --extra-ldflags='-L/root/daily_build/64_05/4.4.1/LinkFS/usr/lib -L/root/daily_build/64_05/4.4.1/Model/TS-X72/build/RootFS/usr/local/medialibrary/lib -Wl,--rpath -Wl,/usr/local/medialibrary/lib' --extra-cflags='-I/root/daily_build/64_05/4.4.1/LinkFS/usr/include -I/root/daily_build/64_05/4.4.1/Model/TS-X72/build/RootFS/usr/local/medialibrary/include -D_GNU_SOURCE -DQNAP' --prefix=/root/daily_build/64_05/4.4.1/Model/TS-X72/build/RootFS/usr/local/medialibrary
  libavutil      55. 58.100 / 55. 58.100
  libavcodec     57. 89.100 / 57. 89.100
  libavformat    57. 71.100 / 57. 71.100
  libavdevice    57.  6.100 / 57.  6.100
  libavfilter     6. 82.100 /  6. 82.100
  libswscale      4.  6.100 /  4.  6.100
  libswresample   2.  7.100 /  2.  7.100
  libpostproc    54.  5.100 / 54.  5.100

Однако, когда я тогда пытаюсь

ffmpeg ---enable-libx264

I, тогда появляется сообщение об ошибке:

Unrecognized option '--enable-libx264'.
Error splitting the argument list: Option not found

Нужно ли как-то изменить конфигурацию FFMPEG или сначала запустить другой параметр конфигурации, или в вызове для включения libx264 просто что-то не так?

Ответы [ 2 ]

0 голосов
/ 09 марта 2020

В вашем ffmpeg уже включена библиотека libx264. Обратитесь к строке configuration, и вы увидите список --enable-libx264.

Чтобы использовать его:

ffmpeg -i input -c:v libx264 output.mp4

Для потоковой передачи файла MP4 на YouTube:

ffmpeg -re -i input.mp4 -c:v libx264 -preset veryfast -b:v 4000k -maxrate 4000k -bufsize 8000k -pix_fmt yuv420p -g 50 -c:a aac -b:a 160k -ac 2 -ar 44100 -f flv rtmp://youtube

С FFmpeg Wiki: Streaming .

0 голосов
/ 07 марта 2020

Вы используете версию, которая не поддерживает libx264 (как упоминал Никос) (которая также довольно старая)

Вы должны перекомпилировать ее с необходимым кодом c (s).

Вы можете попробовать использовать приведенный ниже скрипт или скомпилировать его самостоятельно.

Я бы порекомендовал, так как вам нужно будет создать свой собственный, что вы также добавите поддержку аппаратных кодеров / декодеров, если у вас есть последняя карта NVIDIA --enable-nven c и использование h264_nven c вместо libx264 для кодирования, чтобы уменьшить нагрузку на процессор.

Заключительная мысль - удовлетворит ли OBS ваши потребности?


Информация о потоковой передаче OBS

https://www.digitaltrends.com/computing/how-to-live-stream-on-youtube-with-obs/

Информация о компиляции ..

https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu

Сценарий

https://gist.github.com/silverkorn/db5451f836e2bf9dea2a8358475eb5f4

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...