<二:使用 ,接收端>live555 拉流 udp 重排序

使用live555 拉流,在基于udp的rtp流情况下, 面对udp不稳定不可靠的传输层,需要做rtp乱序重排的处理。 否则rtp组包得到的视频包内部错位,解码花屏。
live555 rtp接受端,在代码:
liveMedia/MultiFramedRTPSource.cpp  内部类ReorderingPacketBuffer

private:
      unsigned fThresholdTime; // uSeconds

重排序等待的缓冲时间,fThreadholdTime, 单位微秒, 默认值 100 ms
可以通过接口设置:
参考 testProgs/PlayCommon.cpp 在自己实现的 continueAfterDESCRIBE 函数里面设置

testProgs/PlayCommon.cpp
void continueAfterDESCRIBE(RTSPClient*, int resultCode, char* resultString){
......
if (subsession->rtpSource() != NULL) {
	  // Because we're saving the incoming data, rather than playing
	  // it in real time, allow an especially large time threshold
	  // (1 second) for reordering misordered incoming packets:
	  unsigned const thresh = 1000000; // 1 second
	  subsession->rtpSource()->setPacketReorderingThresholdTime(thresh);
......
}

这个值设置的越大,抗乱序效果越好,但是相应地延迟会增大。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值