基于librtmp开发rtmp客户端的demo,主要是按照雷神的demo(见5.1)来修改,修改后的demo能将获取到的音视频数据写成h264文件及aac文件。
1、flv格式
介绍flv格式的博客有很多,个人觉得5.2及5.3结合起来看比较好,其中5.2的script tag应该得值是12才是对的。摘录些重要的。

flv的tag类型有三种,video(9), audio(8), script_data(12)。
tag的组成如下:

如果视频格式是AVC(h264)的话,VideoTagHeader会多出4个字节的信息分别是一字节的AVCPacketType 和3字节的CompositionTime。
来自参考5.3的video tag及audio tag的图。


2、注意
h264的sps及pps数据在发送视频帧之前会首先单独发送过来,需要做保存,因为有些rtmp sere

本文详细介绍基于librtmp开发的RTMP客户端如何处理音视频数据,包括将数据转换为H264和AAC文件的过程,特别关注了FLV格式的解析与构建,以及在处理AAC音频时ADTS头部的添加技巧。
最低0.47元/天 解锁文章
843

被折叠的 条评论
为什么被折叠?



