FLV帧全面分析。研究心得。

做视频会议,用RTMP协议,就要把视频流封装成flv包。

最近几星期一直在纠结怎么封装,终于让我找到规律了。

首先下载一个flvparse软件。来分析flv的帧数据。打开软件,点浏览选择路径打开flv文件可以得到下图:



上图打开的是一个好的flv文件,就是封包格式是正确的,我们可以来分析和观察一下。

File Header和 MedadataTag是rtmp协议自动添加上的数据,所以不用我们来分析。(当然如果你又需求要自己编写rtmpclient的话这些数据也需要你自己添加,目前我使用的是java版的rtmpclient。个人感觉太臃肿了,尤其是跑在android平台上,所以后期我可能会修改一下这个rtmpclient。)

下面回归正题,我们从第一帧开始分析。上图青绿色部分就是第一帧的数据了。前面10个数据也是在rtmpclient中添加的。09 00 00 2C就是视频数据相关。00 00 00 00是时间戳。在后面2个00 00我目前还没有研究。17 00 00 00 00就是帧类型。这个类型是第一帧的代表,也就是在这帧里面插入sps pps等信息。

紧接着在帧类型到最后一位中的数据就是avc中的数据了,就是视频的一些参数。具体内容可以参考这个帖子http://blog.csdn.net/peijiangping1989/article/details/6934312

只有第一帧才是17 00 00 00 00哦。在数据后面跟着4位数据为数据的长度。00

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值