1.安装依赖
sudo apt-get install cmake-curses-gui
sudo apt-get install -y autoconf automake build-essential git libass-dev libfreetype6-dev libsdl2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev
sudo apt-get install -y yasm cmake mercurial nasam
2.x264源码编译
git clone https://code.videolan.org/videolan/x264
cd x264
./configure –enable-shared
sudo make
sudo make install
3.x265+hdr10源码编译
// cite: https://bitbucket.org/multicoreware/x265_git/wiki/Home
// ubuntu packages:
sudo apt-get install mercurial cmake cmake-curses-gui build-essential yasm
// Note: if the packaged yasm is older than 1.2, you must download yasm-1.2 and build it
git clone --branch stable --depth 2 https://bitbucket.org/multicoreware/x265_git
// git clone https://bitbucket.org/multicoreware/x265_git.git
- 打开hdr10支持
cd x265_git/source
vim CMakeLists.txt
手动把option(HIGH_BIT_DEPTH "Store pixel samples as 16bit values (Main10/Main12)" OFF)修改为option(HIGH_BIT_DEPTH "Store pixel samples as 16bit values (Main10/Main12)" ON)
- 源码编译
cd x265_git/build/linux
// ./make-Makefiles.bash
sudo cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr/local/x265_10bit -DENABLE_SHARED=ON ../../source && ccmake ../../source
#这里将 LOG_CU_STATISTICS 设置为ON,然后,按下“c”,实现configure,按下“q”退出
sudo make
sudo make install
4.ffmpeg源码编译
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
tar -zxvf FFmpeg-n6.1.3.tar.gz
// 打开x264和x265支持
export PKG_CONFIG_PATH=/usr/local/x265_10bit/lib/pkgconfig:$PKG_CONFIG_PATH
./configure \
--enable-gpl \
--enable-libx264 \
--enable-libx265 \
--enable-libaom \
--enable-libfdk-aac \
--enable-nonfree \
--disable-x86asm \
--pkg-config-flags="--static" \
--extra-cflags="-I/usr/local/x265_10bit/include -I/usr/local/include" \
--extra-ldflags="-L/usr/local/x265_10bit/lib -L/usr/local/lib" \
--prefix=/usr/local/ffmpeg
sudo make
sudo make install