AnyChat是一套开放的音视频即时通信解决方案,早期的版本已经开放了原始数据的输入、输出接口: 1、通过客户端回调函数可以输出用户原始的视频采样帧数据(YUV、RGB):视频数据回调函数 2、通过外部数据输入接口可以支持将外部的视频帧传给AnyChat进行编码:如何使用外部音视频数据输入功能? 对于某些特定的场合,上层应用希望获取AnyChat内核原始的H.264编码数据,或是希望将H.264编码之后的数据传输给AnyChat,自AnyChat r4268版本开始提供了支持,该特性将给AnyChat带来更大的灵活性、可扩展性,包括: 1、有助于AnyChat与其它平台互联互通时进行数据交换,实现与其它平台的对接,如SIP通信终端; 2、通过编写接入网页,可以实现监控摄像头、视频点播平台等数据的接入; 新版本增加常量定义:BRAC_PIX_FMT_H264,API接口没有改变。 1、当需要通过回调函数获取用户的H.264编码数据时,可以在设置回调函数时传入常量,如:
复制代码
复制代码 1、输入、输出的H.264编码帧数据均为NAL单元,包含帧起始标志:00 00 00 01 ,且每次输入、输出为一个NAL单元; 2、关键帧需要包含序列参数集(SPS:Sequence parameter set)和图像参数集(PPS:Picture parameter set); 3、时间戳为毫秒值,两个时间戳之差表示两个帧的时间间隔(单位:毫秒) |
原文地址:http://guoqinqin1.blog.51cto.com/9539167/1569220