在Ubuntu 14.04 LTS上安装FFmpeg失败,出现了libvpx问题。

3
这是我目前正在执行的过程:
安装依赖项
请按照以下步骤操作: 1. 安装依赖项
sudo apt-get remove ffmpeg x264 libx264-dev
sudo apt-get update
sudo apt-get install build-essential subversion git-core checkinstall texi2html \
libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev \
libvorbis-dev libx11-dev libxfixes-dev libxvidcore-dev zlib1g-dev libavcodec-dev

安装 x264

cd /opt
git clone git://git.videolan.org/x264.git
cd x264
./configure --enable-static --disable-opencl
make
sudo checkinstall --pkgname=x264 --default --pkgversion="3:$(./version.sh | \
awk -F'[" ]' '/POINT/{print $4"+git"$5}')" --backup=no --deldoc=yes

安装libvpx

cd /opt
git clone https://chromium.googlesource.com/webm/libvpx.git
cd libvpx
./configure
make
sudo checkinstall --pkgname=libvpx --pkgversion="`date +%Y%m%d%H%M`-git" --backup=no \
--default --deldoc=yes

安装LAME

sudo apt-get remove libmp3lame-dev
sudo apt-get install nasm
cd /opt
wget http://downloads.sourceforge.net/project/lame/lame/3.98.4/lame-3.98.4.tar.gz
tar xzvf lame-3.98.4.tar.gz
cd lame-3.98.4
./configure --enable-nasm --disable-shared
make
sudo checkinstall --pkgname=lame-ffmpeg --pkgversion="3.98.4" --backup=no --default --deldoc=yes

安装FFMpeg

cd /opt
git clone git://source.ffmpeg.org/ffmpeg.git
cd ffmpeg
git checkout release/2.8
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc \
--enable-libfaac --enable-libopencore-amrnb --enable-libopencore-amrwb \
--enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid \
--enable-x11grab --enable-libvpx --enable-libmp3lame
make

在这里,编译FFmpeg时,我遇到以下错误导致安装失败:
libavcodec/libvpxenc.c:107:6: error: ‘VP8E_UPD_ENTROPY’ undeclared here (not in a function)
     [VP8E_UPD_ENTROPY]           = "VP8E_UPD_ENTROPY",
      ^
libavcodec/libvpxenc.c:107:5: error: array index in initializer not of integer type
     [VP8E_UPD_ENTROPY]           = "VP8E_UPD_ENTROPY",
     ^
libavcodec/libvpxenc.c:107:5: error: (near initialization for ‘ctlidstr’)
libavcodec/libvpxenc.c:108:6: error: ‘VP8E_UPD_REFERENCE’ undeclared here (not in a function)
     [VP8E_UPD_REFERENCE]         = "VP8E_UPD_REFERENCE",
      ^
libavcodec/libvpxenc.c:108:5: error: array index in initializer not of integer type
     [VP8E_UPD_REFERENCE]         = "VP8E_UPD_REFERENCE",
     ^
libavcodec/libvpxenc.c:108:5: error: (near initialization for ‘ctlidstr’)
libavcodec/libvpxenc.c:109:6: error: ‘VP8E_USE_REFERENCE’ undeclared here (not in a function)
     [VP8E_USE_REFERENCE]         = "VP8E_USE_REFERENCE",
      ^
libavcodec/libvpxenc.c:109:5: error: array index in initializer not of integer type
     [VP8E_USE_REFERENCE]         = "VP8E_USE_REFERENCE",
     ^
libavcodec/libvpxenc.c:109:5: error: (near initialization for ‘ctlidstr’)
make: *** [libavcodec/libvpxenc.o] Error 1

我认为这与最近对libvpx存储库的更改有关。 那么,有没有人能给出如何解决这个问题的提示?

1个回答

5

哦,我之前看到了这个问题,但错过了它已经被解决的事实...谢谢您,亲切的先生! - lephleg
更新:我相信最新的版本已经合并了这个提交,所以这个错误应该不再存在了! - mprat
你也可以尝试我的安装程序,https://github.com/razzbee/ffmpeg_installer - Big Zak

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接