78

我在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

它说

未知编码器“libx264”

(注意:同样的错误可能发生在avconv

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

4

3 回答 3

105

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

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

于 2012-04-05T11:20:09.240 回答
44

首先安装这些库

sudo apt-get install libfdk-aac-dev libass-dev libopus-dev  \
libtheora-dev libvorbis-dev libvpx-dev libssl-dev

对于 Ubuntu 20.04 问题

sudo apt-get install nasm

并跳过此手动 nasm 安装 ...但从 Ubuntu 17.04 开始 sudo apt-get install nasm ,没有提供足够新的 nasm,因此请手动安装

在http://www.nasm.us/pub/nasm/releasebuilds/?C=M;O=D获取 nasm 的源代码 然后下载最新的

cd ~/src/nasm-2.13.02  #  update to release you just downloaded
./configure
make -j $(nproc)
sudo make install

然后对于 x264 :

git clone https://code.videolan.org/videolan/x264.git
cd x264
./configure --enable-static --enable-shared
make -j $(nproc)
sudo make install

对于 mp3 获取 LAME (libmp3lame)

sudo apt-get install libmp3lame-dev

或者从http://lame.sourceforge.net/版本 v3.100 手动安装,然后给它正常

cd lame-3.100/
./configure
make -j $(nproc)
sudo make install

最后下载 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 -j $(nproc)
sudo make install

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

于 2013-02-27T06:52:40.907 回答
15

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

conda install x264=='1!152.20180717' ffmpeg=4.0.2 -c conda-forge
于 2019-10-16T20:37:44.897 回答