Struct medea_client_api_proto::stats::RtpContributingSourceStats[][src]

pub struct RtpContributingSourceStats {
    pub contributor_ssrc: Option<u32>,
    pub inbound_rtp_stream_id: Option<String>,
    pub packets_contributed_to: Option<u64>,
    pub audio_level: Option<Float>,
}
This is supported on crate feature extended-stats only.

Statistics for a contributing source (CSRC) that contributed to an inbound RTP stream.

RtcStatsType::Csrc variant.

Full doc on W3C.

Fields

contributor_ssrc: Option<u32>

SSRC identifier of the contributing source represented by the stats object, as defined by RFC 3550. It is a 32-bit unsigned integer that appears in the CSRC list of any packets the relevant source contributed to.

inbound_rtp_stream_id: Option<String>

ID of the RTCInboundRtpStreamStats object representing the inbound RTP stream that this contributing source is contributing to.

packets_contributed_to: Option<u64>

Total number of RTP packets that this contributing source contributed to.

This value is incremented each time a packet is counted by RTCInboundRtpStreamStats.packetsReceived, and the packet's CSRC list (as defined by Section 5.1 in RFC 3550) contains the SSRC identifier of this contributing source, contributorSsrc.

audio_level: Option<Float>

Present if the last received RTP packet that this source contributed to contained an RFC 6465 mixer-to-client audio level header extension.

The value of audioLevel is between 0..1 (linear), where 1.0 represents 0 dBov, 0 represents silence, and 0.5 represents approximately 6 dBSPL change in the sound pressure level from 0 dBov. The RFC 6465 header extension contains values in the range 0..127, in units of -dBov, where 127 represents silence. To convert these values to the linear 0..1 range of audioLevel, a value of 127 is converted to 0, and all other values are converted using the equation:

f(rfc6465_level) = 10^(-rfc6465_level/20)

Trait Implementations

impl Clone for RtpContributingSourceStats[src]

impl Debug for RtpContributingSourceStats[src]

impl<'de> Deserialize<'de> for RtpContributingSourceStats[src]

impl Hash for RtpContributingSourceStats[src]

impl PartialEq<RtpContributingSourceStats> for RtpContributingSourceStats[src]

impl Serialize for RtpContributingSourceStats[src]

impl StructuralPartialEq for RtpContributingSourceStats[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.