Struct medea_client_api_proto::stats::RtcIceCandidatePairStats[][src]

pub struct RtcIceCandidatePairStats {
    pub state: IceCandidatePairState,
    pub nominated: bool,
    pub bytes_sent: u64,
    pub bytes_received: u64,
    pub total_round_trip_time: Option<HighResTimeStamp>,
    pub current_round_trip_time: Option<HighResTimeStamp>,
    pub available_outgoing_bitrate: Option<u64>,
}

ICE candidate pair statistics related to the RTCIceTransport objects.

A candidate pair that is not the current pair for a transport is deleted when the RTCIceTransport does an ICE restart, at the time the state changes to new.

The candidate pair that is the current pair for a transport is deleted after an ICE restart when the RTCIceTransport switches to using a candidate pair generated from the new candidates; this time doesn’t correspond to any other externally observable event.

RtcStatsType::CandidatePair variant.

Full doc on W3C.

Fields

state: IceCandidatePairState

State of the checklist for the local and remote candidates in a pair.

nominated: bool

Related to updating the nominated flag described in Section 7.1.3.2.4 of RFC 5245.

bytes_sent: u64

Total number of payload bytes sent on this candidate pair, i.e. not including headers or padding.

bytes_received: u64

Total number of payload bytes received on this candidate pair, i.e. not including headers or padding.

total_round_trip_time: Option<HighResTimeStamp>

Sum of all round trip time measurements in seconds since the beginning of the session, based on STUN connectivity check STUN-PATH-CHAR responses (responsesReceived), including those that reply to requests that are sent in order to verify consent RFC 7675.

The average round trip time can be computed from totalRoundTripTime by dividing it by responsesReceived.

current_round_trip_time: Option<HighResTimeStamp>

Latest round trip time measured in seconds, computed from both STUN connectivity checks STUN-PATH-CHAR, including those that are sent for consent verification RFC 7675.

available_outgoing_bitrate: Option<u64>

Calculated by the underlying congestion control by combining the available bitrate for all the outgoing RTP streams using this candidate pair. The bitrate measurement does not count the size of the IP or other transport layers like TCP or UDP. It is similar to the TIAS defined in RFC 3890, i.e. it is measured in bits per second and the bitrate is calculated over a 1 second window.

Implementations that do not calculate a sender-side estimate MUST leave this undefined. Additionally, the value MUST be undefined for candidate pairs that were never used. For pairs in use, the estimate is normally no lower than the bitrate for the packets sent at lastPacketSentTimestamp, but might be higher. For candidate pairs that are not currently in use but were used before, implementations MUST return undefined.

Trait Implementations

impl Clone for RtcIceCandidatePairStats[src]

impl Debug for RtcIceCandidatePairStats[src]

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

impl Hash for RtcIceCandidatePairStats[src]

impl PartialEq<RtcIceCandidatePairStats> for RtcIceCandidatePairStats[src]

impl Serialize for RtcIceCandidatePairStats[src]

impl StructuralPartialEq for RtcIceCandidatePairStats[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.