ffmpeg编译支持h265的rtmp ubuntu版本

2 篇文章 0 订阅

一、编译x264库
解压last_x264.tar.bz2
执行以下命令
./configure --enable-shared --enable-static --disable-asm --prefix=/home/libx264
make
make install
全部成功后会在/home/libx264目录下生成libx264头文件和库文件
二、编译fdk-aac库
解压fdk-aac-2.0.1.tar.gz
执行以下命令
./configure --prefix=/home/libfdk_aac
make
make install
全部成功后会在/home/libfdk_aac目录下生成libfdk_aac头文件和库文件
三、编译x265库
安装cmake和ccmake:
sudo apt install cmake
sudo apt-get install cmake-curses-gui
解压x265-master.zip
执行以下命令
cd x265-master/build/linux
sh make-Makefiles.bash
make
make install
编译好的执行文件、头文件和库文件默认放在/usr/local/bin、/usr/local/include和/usr/local/lib下
把执行文件、头文件、库文件拷贝到/home/libx265目录下

四、编译FFmpeg源码
解压ffmpeg-4.1.3.tar.bz2
注意:为了编译出支持H265的rtmp,需要在执行编译前先进入libavformat更改flv.h、flvenc.c、flvdec.c
源码修改对比
flv.h:
在这里插入图片描述

flvdec.c:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

flvenc.c:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

注意:ff_hevc_annexb2mp4,而应该用ff_hevc_annexb2mp4_buf
在这里插入图片描述
在这里插入图片描述

执行以下命令
./configure --enable-shared --enable-static --disable-debug --prefix=/home/ffmpeg --enable-gpl --enable-libx264 --extra-cflags=-I/home/libx264/include --extra-ldflags=-L/home/libx264/lib --enable-libx265 --extra-cflags=-I/home/libx265/include --extra-ldflags=-L/home/libx265/lib --enable-libfdk-aac --extra-cflags=-I/home/libfdk_aac/include --extra-ldflags=-L/home/libfdk_aac/lib --extra-libs=-ldl --enable-nonfree --disable-x86asm --enable-ffmpeg

注意:
当执行./configure时遇到ERROR: x265 not found using pkg-config这个错误时,先执行下:
sudo apt install pkg-config
然后继续编译ffmpeg
make
make install
全部成功后会在/home/linux-ffmpeg目录下生成ffmpeg头文件和库文件
五、设置环境变量
全部编译成功后,设置环境变量,如下
vi /etc/ld.so.conf.d/*.conf
/home/linux-ffmpeg/lib/
/home/linux-libx264/lib/
/home/linux-libx265/lib/
/home/linux-libfdk_aac/lib/
把以上添加到/etc/ld.so.conf里面后保存退出,执行ldconfig
六、测试ffmpeg命令行推流rtsp(H265、H264)成rtmp
进入,执行命令
1、H265推流成RTMP
./ffmpeg -rtsp_transport tcp -i rtsp://admin:admin@192.168.1.100:554/video -vcodec hevc-acodec aac -f flv rtmp://127.0.0.1/live/stream
![在这里插入图片描述](https://img-blog.csdnimg.cn/72e90461a984419d957226da8e6d5cc1.png

2、H264推流成RTMP
./ffmpeg -rtsp_transport tcp -i rtsp://admin:admin@192.168.1.100:554/video2 -vcodec libx265-acodec aac -f flv rtmp://127.0.0.1/live/stream

参考博客:
https://blog.csdn.net/qq_22633333/article/details/112964827

源码下载:
https://download.csdn.net/download/admin_dyg/86025274

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值