编译
linux 编译 ffmpeg
下载源码 下载ffmpeg源码 或者通过git clone源码:
git clone [email protected]:FFmpeg/FFmpeg.git进入源码根目录,执行
./configure出现如下错误:nasm/yasm not found需要下载yasm汇编器
下载yasm汇编器
wget https://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz解压安装 :
tar -zxvf yasm-1.3.0.tar.gz进入解压后目录
cd yasm-1.3.0 ./configure # 接着 make sudo make install接着返回 ffmpeg目录,执行命令
small@small:~/FFmpeg$ ./configure --prefix="/usr/local/ffmpeg/" --enable-libx264 --enable-gpl --enable-nonfree --enable-libfdk-aac出现如下显示就代表成功了:
small@small:~/FFmpeg$ ./configure install prefix /usr/local source path . C compiler gcc C library glibc ARCH x86 (generic) big-endian no runtime cpu detection yes standalone assembly yes x86 assembler yasm MMX enabled yes MMXEXT enabled yes 3DNow! enabled yes 3DNow! extended enabled yes SSE enabled yes SSSE3 enabled yes AESNI enabled yes AVX enabled yes AVX2 enabled yes AVX-512 enabled yes XOP enabled yes ...
启用第三方模块支持:libfdk_aac和libx264,需要单独下载编译
出现如下错误
1. ERROR: libfdk_aac not found
下载libfdk_aac库: https://sourceforge.net/projects/opencore-amr/files/fdk-aac/
2. ERROR: libx264 not found
下载libx264 :https://www.videolan.org/developers/x264.html
代码库:git clone https://code.videolan.org/videolan/x264.git 下载完继续:
3. 还没完,又出现新的错误了:
下载nasm目前最新版 :https://www.nasm.us/pub/nasm/releasebuilds/2.15/ 继续编译安装:
4. 回到上一步,继续编译x264:
5. 最终回到ffmpeg继续编译:
6. make: Nothing to be done for 'all'.
有时候需要重新编译,会遇到这个错误,需要 clean
7. 最后还有个问题就是找不到.so 库的问题
.so 库的问题这个问题一看就是没找到动态库,libx264默认安装路径是 /usr/local/lib 目录,解决这个问题的方法就是建个软连接或者直接把库移动到 /usr/lib 目录:
大功告成,没有报错;
8. 接下来试试看是否正常:
9. 看一下转换结果,没有问题~
收工
最后更新于
这有帮助吗?