未知编码器'libx264'

why*_*why 70 ubuntu ffmpeg x264 avconv

我在ubuntu11上安装了ffmpeg 0.8.9

./configure --enable-gpl --enable-nonfree --enable-pthreads --enable-libfaac --enable-libmp3lame --enable-libx264

当我运行它

ffmpeg -y -i test.mp4 -f mpegts -acodec libmp3lame -ar 48000 -ab 64k -vcodec libx264 -b 250k -flags +loop -cmp +chroma -partitions +parti4x4+partp8x8+partb8x8 -subq 5 -trellis 1 -refs 1 -coder 0 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 250k -maxrate 250k -bufsize 250k -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 30 -aspect 320:240 -g 30 -async 2 a.ts
Run Code Online (Sandbox Code Playgroud)

它说

未知编码器'libx264'

(注意:同样的错误可能会出现avconv)

我怎样才能解决这个问题?谢谢!

Sat*_*ish 105

我正在使用Ubuntu 11.04,我也遇到了这个错误 - Unknown encoder 'libx264'.安装包libavcodec-extra-53解决了这个问题.

在Ubuntu 14.04 LTS中,所需的包称为libavcodec-extra-54(和libav-tools)

  • 注意:现在它似乎是libavcodec-extra-53 :) (10认同)
  • 也许我没有跟上更新,但在我的Ubuntu 11.04上我不得不安装libavcodec-extra-52,53不存在. (7认同)
  • 为什么安装此软件包会删除大量已安装的编码器?这是写ffmpeg和编写avconv的人之间那种恼人争执的一部分吗? (4认同)
  • 仍然需要(和工作)在Ubuntu 13.10(俏皮). (3认同)

Sco*_*and 42

首先安装这些库

sudo apt-get install libfdk-aac-dev libass-dev libopus-dev  \
libtheora-dev libvorbis-dev libvpx-dev libssl-dev
Run Code Online (Sandbox Code Playgroud)

从Ubuntu 17.04开始, sudo apt-get install nasm 它不提供足够新的nasm,因此需要手动安装

http://www.nasm.us/pub/nasm/releasebuilds/?C=M获取nasm的源代码;或者 下载最新的

cd ~/src/nasm-2.13.02
./configure
make -j8
sudo make install
Run Code Online (Sandbox Code Playgroud)

那么对于x264:

git clone git://git.videolan.org/x264.git
cd x264
./configure --enable-static --enable-shared
make -j8
sudo make install
Run Code Online (Sandbox Code Playgroud)

对于mp3从http://lame.sourceforge.net/版本v3.100 获取LAME(libmp3lame),然后给它正常

cd lame-3.100/
./configure
make -j8
sudo make install
Run Code Online (Sandbox Code Playgroud)

最后下载ffmpeg源并安装:

git clone git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg

./configure  --enable-gpl   --enable-libass   --enable-libfdk-aac   --enable-libfreetype   --enable-libmp3lame   --enable-libopus   --enable-libtheora   --enable-libvorbis   --enable-libvpx   --enable-libx264   --enable-nonfree --enable-shared --enable-openssl   

make -j8
sudo make install
Run Code Online (Sandbox Code Playgroud)

我感觉到你的痛苦,但这很有效 - 在Ubuntu 18.10上仍然有效

  • `--enable-libfaac`对我不起作用.不确定它是否相同,但我使用了这个参数`--enable-libfdk-aac`,之前安装了'apt install libfdk -aac-dev` (3认同)

Shi*_*hah 12

在使用 OpenAI Gym 时,我在 Ubuntu 18 上遇到了这个错误。您需要正确版本的 ffmpeg 和 x264 编码器。为了获得它们,我使用了以下方法并且有效:

conda install x264=='1!152.20180717' ffmpeg=4.0.2 -c conda-forge
Run Code Online (Sandbox Code Playgroud)