专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 网络通信

jrtplib中怎么实现rtcp传输,怎么提取rtcp信息

发布时间:2011-07-03 07:15:45 文章来源:www.iduyao.cn 采编人员:星星草
jrtplib中如何实现rtcp传输,如何提取rtcp信息
基于jrtplib3.7做rtp传输,现在想通过rtcp反馈信息获得丢包率和可用带宽,请问该如何提取RR报告中的信息,再请问一下jrtplib是如何实现rtcp包的发送接收的,是定期发送吗,如何控制发送的间隔时间,网上介绍jrtplib下rtcp的文章太少了,基本上都是说这个可以由jrtplib自动完成,但却不知道是如何完成的,特别是如何提取rtcp包的信息。对于rtp包都可以通过GetPayLoadData()和GetPayLoadLength()函数来获取数据和长度,不知rtcp是不是也有类似函数可以实现呢。哪位大哥知道的麻烦指点一下啦。


------解决方案--------------------
基于jrtplib3.7做rtp传输,现在想通过rtcp反馈信息获得丢包率和可用带宽,请问该如何提取RR报告中的信息,再请问一下jrtplib是如何实现rtcp包的发送接收的,是定期发送吗,如何控制发送的间隔时间,网上介绍jrtplib下rtcp的文章太少了,

[千里]jrtplib对RTCP包发送时间间隔的计算,是按照RFC3550 6.3.1上面的算法实现的,可以看RTCPScheduler的代码:
RTCPScheduler::CalculateDeterministicInterval()
RTCPScheduler::CalculateTransmissionInterval()

基本上都是说这个可以由jrtplib自动完成,但却不知道是如何完成的,特别是如何提取rtcp包的信息。对于rtp包都可以通过GetPayLoadData()和GetPayLoadLength()函数来获取数据和长度,不知rtcp是不是也有类似函数可以实现呢。

[千里]RTCP包有类似函数GetPacketData()和GetPacketLength().
不过想获取RR包的信息,不需要用这个自己解码,RTCPRRPacket已经解好并提供接口给你:
RTCPRRPacket::GetSenderSSRC()
RTCPRRPacket::GetReceptionReportCount()
RTCPRRPacket::GetSSRC()
RTCPRRPacket::GetFractionLost()
...

哪位大哥知道的麻烦指点一下啦。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: