From eea71b659dbd4e29ca59e981df3fa9e980e741e3 Mon Sep 17 00:00:00 2001 From: xiongziliang <771730766@qq.com> Date: Thu, 11 Apr 2019 22:35:37 +0800 Subject: [PATCH] =?UTF-8?q?ssrc=E5=88=87=E6=8D=A2=E5=90=8E=E6=B8=85?= =?UTF-8?q?=E7=A9=BArtp=E6=8E=92=E5=BA=8F=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Rtsp/RtpReceiver.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Rtsp/RtpReceiver.cpp b/src/Rtsp/RtpReceiver.cpp index febc28f4..e36c89e7 100644 --- a/src/Rtsp/RtpReceiver.cpp +++ b/src/Rtsp/RtpReceiver.cpp @@ -70,10 +70,12 @@ bool RtpReceiver::handleOneRtp(int iTrackidx,SdpTrack::Ptr &track, unsigned char //保存SSRC } else if (track->_ssrc != rtppt.ssrc) { //ssrc错误 - WarnL << "ssrc错误"; + WarnL << "ssrc错误:" << rtppt.ssrc << " != " << track->_ssrc; if (_aui32SsrcErrorCnt[iTrackidx]++ > 10) { + //ssrc切换后清除老数据 + WarnL << "ssrc更换:" << track->_ssrc << " -> " << rtppt.ssrc; + _amapRtpSort[iTrackidx].clear(); track->_ssrc = rtppt.ssrc; - WarnL << "ssrc更换!"; } return false; } @@ -104,7 +106,7 @@ bool RtpReceiver::handleOneRtp(int iTrackidx,SdpTrack::Ptr &track, unsigned char //包乱序或丢包 _aui32SeqOkCnt[iTrackidx] = 0; _abSortStarted[iTrackidx] = true; - +// WarnL << "包乱序或丢包:" << iTrackidx <<" " << rtppt.sequence << " " << _aui16LastSeq[iTrackidx]; if(_aui16LastSeq[iTrackidx] > rtppt.sequence && _aui16LastSeq[iTrackidx] - rtppt.sequence > 0x7FFF){ //sequence回环,清空所有排序缓存 while (_amapRtpSort[iTrackidx].size()) {