diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h index e9d2c94b7c..365937474f 100644 --- a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h +++ b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h @@ -60,6 +60,13 @@ class RTCPReceiver { void SetRemoteSSRC(uint32_t ssrc); uint32_t RemoteSSRC() const; + int32_t IncomingRTCPPacket( + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation, + RTCPUtility::RTCPParserV2* rtcpParser); + + void TriggerCallbacksFromRTCPPacket( + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation); + // get received cname int32_t CNAME(uint32_t remoteSSRC, char cName[RTCP_CNAME_SIZE]) const; @@ -108,21 +115,7 @@ class RTCPReceiver { void RegisterRtcpStatisticsCallback(RtcpStatisticsCallback* callback); RtcpStatisticsCallback* GetRtcpStatisticsCallback(); - private: - using ReceivedInfoMap = std::map; - // RTCP report block information mapped by remote SSRC. - using ReportBlockInfoMap = - std::map; - // RTCP report block information map mapped by source SSRC. - using ReportBlockMap = std::map; - - int32_t IncomingRTCPPacket( - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation, - RTCPUtility::RTCPParserV2* rtcpParser); - - void TriggerCallbacksFromRTCPPacket( - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation); - + protected: RTCPUtility::RTCPCnameInformation* CreateCnameInformation( uint32_t remoteSSRC); RTCPUtility::RTCPCnameInformation* GetCnameInformation( @@ -260,6 +253,14 @@ class RTCPReceiver { RTCPHelp::RTCPPacketInformation* rtcp_packet_information) EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); + private: + typedef std::map ReceivedInfoMap; + // RTCP report block information mapped by remote SSRC. + typedef std::map + ReportBlockInfoMap; + // RTCP report block information map mapped by source SSRC. + typedef std::map ReportBlockMap; + RTCPHelp::RTCPReportBlockInformation* CreateOrGetReportBlockInformation( uint32_t remote_ssrc, uint32_t source_ssrc)