这里写自定义目录标题
参考
简介
编译x264
下载源码
git clone http://git.videolan.org/git/x264.git
配置环境
./configure --prefix=/usr/local/ffmpeg/x264/release --enable-shared --enable-static --enable-yasm
编译
make
安装
make install
下载源码
官网地址:http://ffmpeg.org/download.html
历史版本:http://ffmpeg.org/olddownload.html
注意对应的opencv版本,一般下载3的版本ffmpeg-3.3.9
可以下载最新版本

wget https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
解压
$ cd /usr/local/ffmpeg
$ tar -xf ffmpeg-snapshot.tar.bz2
配置
# 查看
ls
ffmpeg ffmpeg-snapshot.tar.bz2
cd ffmpeg
执行如下配置
简化配置
./configure --prefix=/usr/local/ffmpeg/ffmpeg-3.3.9/release --enable-debug=3 --enable-shared --disable-static --enable-sdl2 --enable-libx264 --enable-gpl --extra-cflags=-I/usr/local/ffmpeg/x264/release/include --extra-ldflags=-L/usr/local/ffmpeg/x264/release/lib
./configure --prefix=/usr/local/ffmpeg/ffmpeg-4.0.6/release --enable-debug=3 --enable-shared --disable-static --enable-sdl2 --enable-libx264 --enable-gpl --extra-cflags=-I/usr/local/ffmpeg/x264/release/include --extra-ldflags=-L/usr/local/ffmpeg/x264/release/lib
报错 libx264 is gpl and --enable-gpl is not specified.
增加 --enable-gpl
$./configure --disable-debug --enable-static --enable-libx264 --enable-gpl
增加x264
./configure --prefix=/usr/local/ffmpeg/release --enable-debug=3 --enable-shared --disable-static --enable-sdl2
复杂配置
$ ./configure --prefix=/usr/local/ffmpeg/release --enable-gpl --enable-version3 --enable-shared --disable-w32threads
--disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2
--enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist
--enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca
--enable-sdl2 --enable-libaribb24 --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi
--enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2
--enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation
--enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-liblensfun --enable-libvidstab
--enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec
--enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libshaderc --enable-vulkan
--enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt
--enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame
--enable-libvo-amrwbenc --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus
--enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite
--enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
- prefix是指定安装路径
- shard是指定生成dyn库
- 如果要对源码进行操作还可以-enable-debug=3
编译
$ make -j4
安装
$ make install
查看编译完文件
$ ls
$ bin include lib share
配合nginx实现rtmp推流和播放
推流
ffmpeg -re -i test.mp4 -c copy -f flv rtmp://192.168.0.44:1935/live/home
播放
ffplay rtmp://192.168.0.44:1935/live/home
本文详细介绍了如何在Ubuntu 20.04系统中编译并安装FFmpeg,包括下载源码、配置环境、解决libx264 GPL报错、增加x264支持,以及编译和安装过程。此外,还讲解了如何结合nginx实现RTMP推流和播放功能。

1742

被折叠的 条评论
为什么被折叠?



