若该文为原创文章,转载请注明原文出处
一、介绍
移植FFMPEG主要是为了实现RTMP推流功能、RTMP拉流功能和SRT推流功能,主要分为3个小项目:
1、单路/多路RTMP推流
2、单路/多路RTMP拉流
3、SRT推流
项目主要涉及多个知识点,x264,x265, srt等,RV1126可以直接采用硬件编码方式和解码方式采集H265和H265,我们只需要把数据和音频通过RTMP等协议推出去和拉取显示,操作为内网操作,在本地部署RTMP服务器来接收RTMP的流,外部需要公网等条件,不作介绍。
二、FFMPEG编译
参数说明:
prefix为编译后的库文件路径
cross-prefix:SDK的交叉工具链
其他参数自行了解。
1、编译x264
下载:
git clone git://git.videolan.org/x264
编译:
第一步:
./configure --prefix=/opt/arm_libx264 --host=arm-linux --cross-prefix=/home/yifeng/rv1126_rv1109_linux_sdk_v1.8.0_20210224/buildroot/output/rockchip_rv1126_rv1109_spi_nand/host/bin/arm-linux-gnueabihf- --enable-shared --enable-static
第二步:
make
make install