Class RTCPReports


  • public class RTCPReports
    extends Object
    Collects the (last) RTCP (SR, RR, and XR) reports sent and received by a local peer (for the purposes of MediaStreamStats).
    Author:
    Lyubomir Marinov
    • Constructor Detail

      • RTCPReports

        public RTCPReports()
    • Method Detail

      • addRTCPReportListener

        public void addRTCPReportListener​(RTCPReportListener listener)
        Adds a new RTCPReportListener to be notified by this instance about the receiving and sending of RTCP RR, SR and XR.
        Parameters:
        listener - the RTCPReportListener to add
        Throws:
        NullPointerException - if the specified listener is null
      • getReceivedRTCPExtendedReport

        public RTCPExtendedReport getReceivedRTCPExtendedReport​(int ssrc)
        Gets the latest RTCP XR received from a specific SSRC (of remote originator).
        Parameters:
        ssrc - the SSRC of the RTCP XR (remote) originator
        Returns:
        the latest RTCP XR received from the specified ssrc
      • getReceivedRTCPExtendedReports

        public RTCPExtendedReport[] getReceivedRTCPExtendedReports()
        Gets the RTCP extended reports (XR) received by the local endpoint.
        Returns:
        the RTCP extended reports (XR) received by the local endpoint
      • getReceivedRTCPFeedback

        public net.sf.fmj.media.rtp.RTCPFeedback getReceivedRTCPFeedback​(int sourceSSRC)
        Gets the latest RTCP SR or RR report block received from a remote sender/originator for a local source.
        Parameters:
        sourceSSRC - the SSRC of the local source
        Returns:
        the latest RTCP SR or RR report block received from a remote sender/originator for the specified sourceSSRC
      • getReceivedRTCPFeedbacks

        public net.sf.fmj.media.rtp.RTCPFeedback[] getReceivedRTCPFeedbacks()
        Gets the RTCP sender report (SR) and/or receiver report (RR) blocks received by the local endpoint.
        Returns:
        the RTCP sender report (SR) and/or receiver report (RR) blocks received by the local endpoint
      • getReceivedRTCPReport

        public net.sf.fmj.media.rtp.RTCPReport getReceivedRTCPReport​(int senderSSRC)
        Gets the latest RTCP SR or RR received from a specific SSRC (of remote sender/originator).
        Parameters:
        senderSSRC - the SSRC of the RTCP SR or RR (remote) sender/originator
        Returns:
        the latest RTCP SR or RR received from the specified senderSSRC
      • getReceivedRTCPReports

        public net.sf.fmj.media.rtp.RTCPReport[] getReceivedRTCPReports()
        Gets the RTCP sender reports (SR) and/or receiver reports (RR) received by the local endpoint.
        Returns:
        the RTCP sender reports (SR) and/or receiver reports (RR) received by the local endpoint
      • getReceivedRTCPVoIPMetrics

        public RTCPExtendedReport.VoIPMetricsReportBlock[] getReceivedRTCPVoIPMetrics()
        Gets the RTCP extended report (XR) VoIP Metrics blocks received by the local endpoint.
        Returns:
        the RTCP extended report (XR) VoIP Metrics blocks received by the local endpoint
      • getReceivedRTCPVoIPMetrics

        public RTCPExtendedReport.VoIPMetricsReportBlock getReceivedRTCPVoIPMetrics​(int sourceSSRC)
        Gets the latest RTCP extended report (XR) VoIP Metrics block received from a remote originator for a local source.
        Parameters:
        sourceSSRC - the SSRC of the local source
        Returns:
        the RTCP extended report (XR) VoIP Metrics block received from a remote originator for the specified sourceSSRC
      • getRTCPReportListeners

        public List<RTCPReportListener> getRTCPReportListeners()
        Gets a list of the RTCPReportListeners to be notified by this instance about the receiving and sending of RTCP RR, SR, and XR.
        Returns:
        a list of the RTCPReportListeners to be notified by this instance about the receiving and sending of RTCP RR, SR, and XR
      • getSentRTCPExtendedReport

        public RTCPExtendedReport getSentRTCPExtendedReport​(int ssrc)
        Gets the latest RTCP XR sent from a specific SSRC (of local originator).
        Parameters:
        ssrc - the SSRC of the RTCP XR (local) originator
        Returns:
        the latest RTCP XR sent from the specified ssrc
      • getSentRTCPExtendedReports

        public RTCPExtendedReport[] getSentRTCPExtendedReports()
        Gets the RTCP extended reports (XR) sent by the local endpoint.
        Returns:
        the RTCP extended reports (XR) sent by the local endpoint
      • getSentRTCPFeedback

        public net.sf.fmj.media.rtp.RTCPFeedback getSentRTCPFeedback​(int sourceSSRC)
        Gets the latest RTCP SR or RR report block sent from a local sender/originator for a remote source.
        Parameters:
        sourceSSRC - the SSRC of the remote source
        Returns:
        the latest RTCP SR or RR report block received from a local sender/originator for the specified sourceSSRC
      • getSentRTCPFeedbacks

        public net.sf.fmj.media.rtp.RTCPFeedback[] getSentRTCPFeedbacks()
        Gets the RTCP sender report (SR) and/or receiver report (RR) blocks sent by the local endpoint.
        Returns:
        the RTCP sender report (SR) and/or receiver report (RR) blocks sent by the local endpoint
      • getSentRTCPReport

        public net.sf.fmj.media.rtp.RTCPReport getSentRTCPReport​(int senderSSRC)
        Gets the latest RTCP SR or RR sent from a specific SSRC (of local sender/originator).
        Parameters:
        senderSSRC - the SSRC of the RTCP SR or RR (local) sender/originator
        Returns:
        the latest RTCP SR or RR sent from the specified senderSSRC
      • getSentRTCPReports

        public net.sf.fmj.media.rtp.RTCPReport[] getSentRTCPReports()
        Gets the RTCP sender reports (SR) and/or receiver reports (RR) sent by the local endpoint.
        Returns:
        the RTCP sender reports (SR) and/or receiver reports (RR) sent by the local endpoint
      • getSentRTCPVoIPMetrics

        public RTCPExtendedReport.VoIPMetricsReportBlock[] getSentRTCPVoIPMetrics()
        Gets the RTCP extended report (XR) VoIP Metrics blocks sent by the local endpoint.
        Returns:
        the RTCP extended report (XR) VoIP Metrics blocks sent by the local endpoint
      • getSentRTCPVoIPMetrics

        public RTCPExtendedReport.VoIPMetricsReportBlock getSentRTCPVoIPMetrics​(int sourceSSRC)
        Gets the latest RTCP extended report (XR) VoIP Metrics block sent from a local originator for a remote source.
        Parameters:
        sourceSSRC - the SSRC of the remote source
        Returns:
        the RTCP extended report (XR) VoIP Metrics block sent from a local originator for the specified sourceSSRC
      • removeRTCPReportListener

        public void removeRTCPReportListener​(RTCPReportListener listener)
        Removes an existing RTCPReportListener to no longer be notified by this instance about the receiving and sending of RTCP RR, SR and XR.
        Parameters:
        listener - the RTCPReportListener to remove
      • rtcpExtendedReportReceived

        public void rtcpExtendedReportReceived​(RTCPExtendedReport extendedReport)
        Notifies this instance that a specific RTCPExtendedReport was received by the local endpoint. Remembers the received extendedReport and notifies the RTCPReportListeners added to this instance.
        Parameters:
        extendedReport - the received RTCPExtendedReport
        Throws:
        NullPointerException - if the specified extendedReport is null
      • rtcpExtendedReportSent

        public void rtcpExtendedReportSent​(RTCPExtendedReport extendedReport)
        Notifies this instance that a specific RTCPExtendedReport was sent by the local endpoint. Remembers the sent extendedReport and notifies the RTCPReportListeners added to this instance.
        Parameters:
        extendedReport - the sent RTCPExtendedReport
        Throws:
        NullPointerException - if the specified extendedReport is null
      • rtcpReportReceived

        public void rtcpReportReceived​(net.sf.fmj.media.rtp.RTCPReport report)
        Notifies this instance that a specific RTCPReport was received by the local endpoint. Remembers the received report and notifies the RTCPReportListeners added to this instance.
        Parameters:
        report - the received RTCPReport
        Throws:
        NullPointerException - if the specified report is null
      • rtcpReportSent

        public void rtcpReportSent​(net.sf.fmj.media.rtp.RTCPReport report)
        Notifies this instance that a specific RTCPReport was sent by the local endpoint. Remembers the sent report and notifies the RTCPReportListeners added to this instance.
        Parameters:
        report - the sent RTCPReport
        Throws:
        NullPointerException - if the specified report is null