参考文章
支持 flv+h265 的ffmpeg编译安装_demuxer flv+hevc异常-CSDN博客
windwos有别人编译好的
支持HEVC/H265 RTMP播放的FFMPEG/FFPLAY WINDOWS版本
但是linux没有所以得自己编译
1.需要对ffmpeg进行源码修改
这里使用 https://github.com/numberwolf/FFmpeg-QuQi-H265-FLV-RTMP
这位大神提供的源码
需要
配套资源下载
https://download.csdn.net/download/do_you_like_van_game/90660039
x265_3.2.1.tar.gz
last_x264.tar.bz2
fdk-aac-2.0.1.tar.gz
FFmpeg-QuQi-H265-FLV-RTMP-master.zip
这些包
升级ubuntu18.04
apt update
apt install zip
apt install git
apt install curl
apt install -y vim
编译x264
tar -xvjf last_x264.tar.bz2
cd x265_3.2.1/build/linux
./configure --enable-shared --enable-static --disable-asm --prefix=/home/linux-libx264
make
make install
编译x265
tar zxvf x265_3.2.1.tar.gz
cd x265_3.2.1/build/linux
apt install build-essential
apt install cmake
apt install cmake-curses-gui
./make-Makefiles.bash
按c
按e
按g
make && make install
编译 fdk-aac
tar zxvf fdk-aac-2.0.1.tar.gz
cd fdk-aac-2.0.1
./configure --prefix=/home/linux-libfdk_aac
make
make install
编译ffmpeg
./configure --enable-shared --enable-openssl --enable-shared --enable-static --disable-debug --prefix=/home/linux-ffmpeg --enable-gpl --enable-libx264 --extra-cflags=-I/home/linux-libx264/include --extra-ldflags=-L/home/linux-libx264/lib --enable-encoder=libx265 --enable-decoder=hevc --enable-libx265 --extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib --enable-libfdk-aac --extra-cflags=-I/home/linux-libfdk_aac/include --extra-ldflags=-L/home/linux-libfdk_aac/lib --extra-libs=-ldl --enable-nonfree --disable-x86asm --enable-ffmpeg
make -j4
make install
动态库设置
vim /etc/ld.so.conf
/usr/local/lib/
/home/linux-ffmpeg/lib/
/home/linux-libfdk_aac/lib/
/home/linux-libx264/lib/
执行命令
./ffmpeg -i "https://xx.com/flv" -vcodec h264 -t 10 "/home/file/cc.mp4"
./ffmpeg -i "https://xx.com/flv" -ss 2 -vframes 1 "/home/file/output.jpg"
google浏览器页面支持h265的前端播放器
https://github.com/EasyDarwin/EasyPlayer.js/tree/main/html-demo
可以将海康flv的直播流转存,用于报警视频抓取
将flv直播流输出成mp4