用ffmpeg 实现拉取h265的flv视频转存成264的mp4 实现方案

参考文章

 支持 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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值