| Index: webrtc/modules/rtp_rtcp/source/rtcp_receiver.h
|
| diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h
|
| index 28c28cb69bb24d49d8fd6467e9bc724a164523a1..afca2b60680884c592d5eabc25517bad82cf00e1 100644
|
| --- a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h
|
| +++ b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h
|
| @@ -27,225 +27,221 @@
|
| namespace webrtc {
|
| class ModuleRtpRtcpImpl;
|
|
|
| -class RTCPReceiver : public TMMBRHelp
|
| -{
|
| -public:
|
| - RTCPReceiver(Clock* clock,
|
| - bool receiver_only,
|
| - RtcpPacketTypeCounterObserver* packet_type_counter_observer,
|
| - RtcpBandwidthObserver* rtcp_bandwidth_observer,
|
| - RtcpIntraFrameObserver* rtcp_intra_frame_observer,
|
| - TransportFeedbackObserver* transport_feedback_observer,
|
| - ModuleRtpRtcpImpl* owner);
|
| - virtual ~RTCPReceiver();
|
| -
|
| - int64_t LastReceived();
|
| - int64_t LastReceivedReceiverReport() const;
|
| -
|
| - void SetSsrcs(uint32_t main_ssrc,
|
| - const std::set<uint32_t>& registered_ssrcs);
|
| - 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;
|
| -
|
| - // get received NTP
|
| - bool NTP(uint32_t* ReceivedNTPsecs,
|
| - uint32_t* ReceivedNTPfrac,
|
| - uint32_t* RTCPArrivalTimeSecs,
|
| - uint32_t* RTCPArrivalTimeFrac,
|
| - uint32_t* rtcp_timestamp) const;
|
| -
|
| - bool LastReceivedXrReferenceTimeInfo(RtcpReceiveTimeInfo* info) const;
|
| -
|
| - // get rtt
|
| - int32_t RTT(uint32_t remoteSSRC,
|
| - int64_t* RTT,
|
| - int64_t* avgRTT,
|
| - int64_t* minRTT,
|
| - int64_t* maxRTT) const;
|
| -
|
| - int32_t SenderInfoReceived(RTCPSenderInfo* senderInfo) const;
|
| -
|
| - void SetRtcpXrRrtrStatus(bool enable);
|
| - bool GetAndResetXrRrRtt(int64_t* rtt_ms);
|
| -
|
| - // get statistics
|
| - int32_t StatisticsReceived(
|
| - std::vector<RTCPReportBlock>* receiveBlocks) const;
|
| -
|
| - // Returns true if we haven't received an RTCP RR for several RTCP
|
| - // intervals, but only triggers true once.
|
| - bool RtcpRrTimeout(int64_t rtcp_interval_ms);
|
| -
|
| - // Returns true if we haven't received an RTCP RR telling the receive side
|
| - // has not received RTP packets for too long, i.e. extended highest sequence
|
| - // number hasn't increased for several RTCP intervals. The function only
|
| - // returns true once until a new RR is received.
|
| - bool RtcpRrSequenceNumberTimeout(int64_t rtcp_interval_ms);
|
| -
|
| - // Get TMMBR
|
| - int32_t TMMBRReceived(uint32_t size,
|
| - uint32_t accNumCandidates,
|
| - TMMBRSet* candidateSet) const;
|
| -
|
| - bool UpdateRTCPReceiveInformationTimers();
|
| -
|
| - int32_t BoundingSet(bool* tmmbrOwner, TMMBRSet* boundingSetRec);
|
| -
|
| - int32_t UpdateTMMBR();
|
| -
|
| - void RegisterRtcpStatisticsCallback(RtcpStatisticsCallback* callback);
|
| - RtcpStatisticsCallback* GetRtcpStatisticsCallback();
|
| -
|
| -protected:
|
| - RTCPUtility::RTCPCnameInformation* CreateCnameInformation(uint32_t remoteSSRC);
|
| - RTCPUtility::RTCPCnameInformation* GetCnameInformation(
|
| - uint32_t remoteSSRC) const;
|
| -
|
| - RTCPHelp::RTCPReceiveInformation* CreateReceiveInformation(
|
| - uint32_t remoteSSRC);
|
| - RTCPHelp::RTCPReceiveInformation* GetReceiveInformation(uint32_t remoteSSRC);
|
| -
|
| - void UpdateReceiveInformation(
|
| - RTCPHelp::RTCPReceiveInformation& receiveInformation);
|
| -
|
| - void HandleSenderReceiverReport(
|
| - RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| -
|
| - void HandleReportBlock(
|
| - const RTCPUtility::RTCPPacket& rtcpPacket,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation,
|
| - uint32_t remoteSSRC)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| -
|
| - void HandleSDES(RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +class RTCPReceiver {
|
| + public:
|
| + RTCPReceiver(Clock* clock,
|
| + bool receiver_only,
|
| + RtcpPacketTypeCounterObserver* packet_type_counter_observer,
|
| + RtcpBandwidthObserver* rtcp_bandwidth_observer,
|
| + RtcpIntraFrameObserver* rtcp_intra_frame_observer,
|
| + TransportFeedbackObserver* transport_feedback_observer,
|
| + ModuleRtpRtcpImpl* owner);
|
| + virtual ~RTCPReceiver();
|
|
|
| - void HandleSDESChunk(RTCPUtility::RTCPParserV2& rtcpParser)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + int64_t LastReceived();
|
| + int64_t LastReceivedReceiverReport() const;
|
|
|
| - void HandleXrHeader(RTCPUtility::RTCPParserV2& parser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + void SetSsrcs(uint32_t main_ssrc, const std::set<uint32_t>& registered_ssrcs);
|
| + void SetRemoteSSRC(uint32_t ssrc);
|
| + uint32_t RemoteSSRC() const;
|
|
|
| - void HandleXrReceiveReferenceTime(
|
| - RTCPUtility::RTCPParserV2& parser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + int32_t IncomingRTCPPacket(
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation,
|
| + RTCPUtility::RTCPParserV2* rtcpParser);
|
|
|
| - void HandleXrDlrrReportBlock(
|
| - RTCPUtility::RTCPParserV2& parser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + void TriggerCallbacksFromRTCPPacket(
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation);
|
|
|
| - void HandleXrDlrrReportBlockItem(
|
| - const RTCPUtility::RTCPPacket& packet,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + // get received cname
|
| + int32_t CNAME(uint32_t remoteSSRC, char cName[RTCP_CNAME_SIZE]) const;
|
|
|
| - void HandleXRVOIPMetric(
|
| - RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + // get received NTP
|
| + bool NTP(uint32_t* ReceivedNTPsecs,
|
| + uint32_t* ReceivedNTPfrac,
|
| + uint32_t* RTCPArrivalTimeSecs,
|
| + uint32_t* RTCPArrivalTimeFrac,
|
| + uint32_t* rtcp_timestamp) const;
|
|
|
| - void HandleNACK(RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + bool LastReceivedXrReferenceTimeInfo(RtcpReceiveTimeInfo* info) const;
|
|
|
| - void HandleNACKItem(const RTCPUtility::RTCPPacket& rtcpPacket,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + // get rtt
|
| + int32_t RTT(uint32_t remoteSSRC,
|
| + int64_t* RTT,
|
| + int64_t* avgRTT,
|
| + int64_t* minRTT,
|
| + int64_t* maxRTT) const;
|
|
|
| - void HandleBYE(RTCPUtility::RTCPParserV2& rtcpParser)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + int32_t SenderInfoReceived(RTCPSenderInfo* senderInfo) const;
|
|
|
| - void HandlePLI(RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + void SetRtcpXrRrtrStatus(bool enable);
|
| + bool GetAndResetXrRrRtt(int64_t* rtt_ms);
|
|
|
| - void HandleSLI(RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + // get statistics
|
| + int32_t StatisticsReceived(std::vector<RTCPReportBlock>* receiveBlocks) const;
|
|
|
| - void HandleSLIItem(const RTCPUtility::RTCPPacket& rtcpPacket,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + // Returns true if we haven't received an RTCP RR for several RTCP
|
| + // intervals, but only triggers true once.
|
| + bool RtcpRrTimeout(int64_t rtcp_interval_ms);
|
|
|
| - void HandleRPSI(RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + // Returns true if we haven't received an RTCP RR telling the receive side
|
| + // has not received RTP packets for too long, i.e. extended highest sequence
|
| + // number hasn't increased for several RTCP intervals. The function only
|
| + // returns true once until a new RR is received.
|
| + bool RtcpRrSequenceNumberTimeout(int64_t rtcp_interval_ms);
|
| +
|
| + // Get TMMBR
|
| + std::vector<rtcp::TmmbItem> TMMBRReceived() const;
|
| +
|
| + bool UpdateRTCPReceiveInformationTimers();
|
| +
|
| + int32_t BoundingSet(bool* tmmbrOwner,
|
| + std::vector<rtcp::TmmbItem>* boundingSetRec);
|
| +
|
| + int32_t UpdateTMMBR();
|
| +
|
| + void RegisterRtcpStatisticsCallback(RtcpStatisticsCallback* callback);
|
| + RtcpStatisticsCallback* GetRtcpStatisticsCallback();
|
| +
|
| + protected:
|
| + RTCPUtility::RTCPCnameInformation* CreateCnameInformation(
|
| + uint32_t remoteSSRC);
|
| + RTCPUtility::RTCPCnameInformation* GetCnameInformation(
|
| + uint32_t remoteSSRC) const;
|
| +
|
| + RTCPHelp::RTCPReceiveInformation* CreateReceiveInformation(
|
| + uint32_t remoteSSRC);
|
| + RTCPHelp::RTCPReceiveInformation* GetReceiveInformation(uint32_t remoteSSRC);
|
| +
|
| + void UpdateReceiveInformation(
|
| + RTCPHelp::RTCPReceiveInformation& receiveInformation);
|
| +
|
| + void HandleSenderReceiverReport(
|
| + RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleReportBlock(const RTCPUtility::RTCPPacket& rtcpPacket,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation,
|
| + uint32_t remoteSSRC)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleSDES(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleSDESChunk(RTCPUtility::RTCPParserV2& rtcpParser)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandlePsfbApp(RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + void HandleXrHeader(RTCPUtility::RTCPParserV2& parser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleXrReceiveReferenceTime(
|
| + RTCPUtility::RTCPParserV2& parser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleXrDlrrReportBlock(
|
| + RTCPUtility::RTCPParserV2& parser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleREMBItem(RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + void HandleXrDlrrReportBlockItem(
|
| + const RTCPUtility::RTCPPacket& packet,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleIJ(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + void HandleXRVOIPMetric(
|
| + RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleNACK(RTCPUtility::RTCPParserV2& rtcpParser,
|
| RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleIJItem(const RTCPUtility::RTCPPacket& rtcpPacket,
|
| + void HandleNACKItem(const RTCPUtility::RTCPPacket& rtcpPacket,
|
| RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleBYE(RTCPUtility::RTCPParserV2& rtcpParser)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleTMMBR(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + void HandlePLI(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleSLI(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleSLIItem(const RTCPUtility::RTCPPacket& rtcpPacket,
|
| RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleTMMBRItem(RTCPHelp::RTCPReceiveInformation& receiveInfo,
|
| - const RTCPUtility::RTCPPacket& rtcpPacket,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation,
|
| - uint32_t senderSSRC)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + void HandleRPSI(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleTMMBN(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + void HandlePsfbApp(RTCPUtility::RTCPParserV2& rtcpParser,
|
| RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleSR_REQ(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + void HandleREMBItem(RTCPUtility::RTCPParserV2& rtcpParser,
|
| RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleTMMBNItem(RTCPHelp::RTCPReceiveInformation& receiveInfo,
|
| - const RTCPUtility::RTCPPacket& rtcpPacket)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + void HandleIJ(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleFIR(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + void HandleIJItem(const RTCPUtility::RTCPPacket& rtcpPacket,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleTMMBR(RTCPUtility::RTCPParserV2& rtcpParser,
|
| RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleFIRItem(RTCPHelp::RTCPReceiveInformation* receiveInfo,
|
| + void HandleTMMBRItem(RTCPHelp::RTCPReceiveInformation& receiveInfo,
|
| const RTCPUtility::RTCPPacket& rtcpPacket,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation,
|
| + uint32_t senderSSRC)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleAPP(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + void HandleTMMBN(RTCPUtility::RTCPParserV2& rtcpParser,
|
| RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleSR_REQ(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleTMMBNItem(RTCPHelp::RTCPReceiveInformation& receiveInfo,
|
| + const RTCPUtility::RTCPPacket& rtcpPacket)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleFIR(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleAPPItem(RTCPUtility::RTCPParserV2& rtcpParser,
|
| - RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + void HandleFIRItem(RTCPHelp::RTCPReceiveInformation* receiveInfo,
|
| + const RTCPUtility::RTCPPacket& rtcpPacket,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleAPP(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| +
|
| + void HandleAPPItem(RTCPUtility::RTCPParserV2& rtcpParser,
|
| + RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| - void HandleTransportFeedback(
|
| - RTCPUtility::RTCPParserV2* rtcp_parser,
|
| - RTCPHelp::RTCPPacketInformation* rtcp_packet_information)
|
| - EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
| + void HandleTransportFeedback(
|
| + RTCPUtility::RTCPParserV2* rtcp_parser,
|
| + RTCPHelp::RTCPPacketInformation* rtcp_packet_information)
|
| + EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
|
|
|
| private:
|
| typedef std::map<uint32_t, RTCPHelp::RTCPReceiveInformation*>
|
|
|