无法识别的选项'-enable-libx264'。拆分参数列表时出错:找不到选项

时间:2020-03-07 15:56:05

标签: linux ffmpeg

我试图将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

然后我收到一条错误消息:

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

我是否需要以某种方式更改FFMPEG的配置或首先运行其他配置选项,或者启用libx264的调用是否有问题?

2 个答案:

答案 0 :(得分:0)

您使用的是不支持libx264的版本(就像提到的Nikos一样)(版本也相当旧)

您必须使用所需的编解码器重新编译它。

您可以尝试使用以下脚本,也可以自己编译。

我建议您这样做,因为您需要自己构建一个,如果最近使用了NVIDIA卡--enable-nvenc并使用h264_nvenc而不是libx264进行编码,还可以增加对硬件编码器/解码器的支持,以减少CPU开销。 / p>

最终思想-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

答案 1 :(得分:0)

您的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