若该文为原创文章,转载请注明原文出处
一、介绍
使用ffmpeg把RV1126采集到的视频和音频以RTMP方式推流到服务器,并播放。
视频为h264格式,音频为AAC格式,利用的是RV1126硬件编码,缩短时间,在局域网内测试,实现200毫秒内实时播放预览。
二、流程图
说明:
RTMP推流主要是FFMPEG的参数设置,采集的数据格式需要和推流时的参数一样,还有就是音视同步问题,RV1126我使用的是易百纳板子,采集的视频不是30帧,实际是25帧,这个问题找了很多。音视同步问题还有很多,具体的可以具体分析。
三、代码解析
1、ffmpeg初始化
ffmpeg初始化主要是参数的设置,同步问题在ost->st->r_frame_rate.num = 25这个值上,默认是30,当不修改时,播放前几分钟看不出来,长时间就会造成音频正常,视频过慢现象。需要谨慎