Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
Loading...
Searching...
No Matches
roc::rtcp::header::XrQueueMetricsBlock Class Reference

XR Queue Metrics Block. More...

#include <roc_rtcp/headers.h>

Public Member Functions

void reset ()
 Reset to initial state (all zeros).
 
const XrBlockHeaderheader () const
 Get common block header.
 
XrBlockHeaderheader ()
 Get common block header.
 
MetricFlag metric_flag () const
 Get Interval Metrics flag.
 
void set_metric_flag (const MetricFlag f)
 Set Interval Metrics flag.
 
packet::stream_source_t ssrc () const
 Get SSRC of source being reported.
 
void set_ssrc (const packet::stream_source_t ssrc)
 Set SSRC of source being reported.
 
bool has_niq_latency () const
 Check if Network Incoming Queue Delay is set.
 
packet::ntp_timestamp_t niq_latency () const
 Get Network Incoming Queue Delay.
 
void set_niq_latency (const packet::ntp_timestamp_t t)
 Set Network Incoming Queue Delay.
 
bool has_niq_stalling () const
 Check if Network Incoming Queue Stalling is set.
 
packet::ntp_timestamp_t niq_stalling () const
 Get Network Incoming Queue Stalling.
 
void set_niq_stalling (const packet::ntp_timestamp_t t)
 Set Network Incoming Queue Stalling.
 

Detailed Description

XR Queue Metrics Block.

Non-standard.

Reports two metrics from receiver to sender:

  • niq_latency: current length of network incoming queue, measured via timestamp difference between last received packet and last decoded packet (expressed in units of 1/65536 seconds)
  • niq_stalling: current elapsed time since last received packet (expressed in units of 1/65536 seconds)
0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| BT=220 | I | resv. | block length = 3 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SSRC of Source |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Network Incoming Queue Latency |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Network Incoming Queue Stalling |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Definition at line 1668 of file headers.h.

Constructor & Destructor Documentation

◆ XrQueueMetricsBlock()

roc::rtcp::header::XrQueueMetricsBlock::XrQueueMetricsBlock ( )
inline

Definition at line 1682 of file headers.h.

Member Function Documentation

◆ has_niq_latency()

bool roc::rtcp::header::XrQueueMetricsBlock::has_niq_latency ( ) const
inline

Check if Network Incoming Queue Delay is set.

Definition at line 1728 of file headers.h.

◆ has_niq_stalling()

bool roc::rtcp::header::XrQueueMetricsBlock::has_niq_stalling ( ) const
inline

Check if Network Incoming Queue Stalling is set.

Definition at line 1743 of file headers.h.

◆ header() [1/2]

XrBlockHeader & roc::rtcp::header::XrQueueMetricsBlock::header ( )
inline

Get common block header.

Definition at line 1700 of file headers.h.

◆ header() [2/2]

const XrBlockHeader & roc::rtcp::header::XrQueueMetricsBlock::header ( ) const
inline

Get common block header.

Definition at line 1695 of file headers.h.

◆ metric_flag()

MetricFlag roc::rtcp::header::XrQueueMetricsBlock::metric_flag ( ) const
inline

Get Interval Metrics flag.

Definition at line 1705 of file headers.h.

◆ niq_latency()

packet::ntp_timestamp_t roc::rtcp::header::XrQueueMetricsBlock::niq_latency ( ) const
inline

Get Network Incoming Queue Delay.

Definition at line 1733 of file headers.h.

◆ niq_stalling()

packet::ntp_timestamp_t roc::rtcp::header::XrQueueMetricsBlock::niq_stalling ( ) const
inline

Get Network Incoming Queue Stalling.

Definition at line 1748 of file headers.h.

◆ reset()

void roc::rtcp::header::XrQueueMetricsBlock::reset ( )
inline

Reset to initial state (all zeros).

Definition at line 1687 of file headers.h.

◆ set_metric_flag()

void roc::rtcp::header::XrQueueMetricsBlock::set_metric_flag ( const MetricFlag  f)
inline

Set Interval Metrics flag.

Definition at line 1711 of file headers.h.

◆ set_niq_latency()

void roc::rtcp::header::XrQueueMetricsBlock::set_niq_latency ( const packet::ntp_timestamp_t  t)
inline

Set Network Incoming Queue Delay.

Definition at line 1738 of file headers.h.

◆ set_niq_stalling()

void roc::rtcp::header::XrQueueMetricsBlock::set_niq_stalling ( const packet::ntp_timestamp_t  t)
inline

Set Network Incoming Queue Stalling.

Definition at line 1753 of file headers.h.

◆ set_ssrc()

void roc::rtcp::header::XrQueueMetricsBlock::set_ssrc ( const packet::stream_source_t  ssrc)
inline

Set SSRC of source being reported.

Definition at line 1723 of file headers.h.

◆ ssrc()

packet::stream_source_t roc::rtcp::header::XrQueueMetricsBlock::ssrc ( ) const
inline

Get SSRC of source being reported.

Definition at line 1718 of file headers.h.


The documentation for this class was generated from the following file: