pub struct MediaCodecCapability {
media_kind: MediaKind,
codec: MediaCodec,
clock_rate: u32,
payload_type: Option<PayloadType>,
channels: Option<u16>,
settings: Vec<CodecSetting>,
rtcp_feedback: Vec<RtcpFeedback>,
}Expand description
Codec capability advertised by a router or endpoint.
Represents one possible way an endpoint can encode or decode media.
The payload_type is optional here because capabilities are often
just templates (e.g. “i support VP8”) before a concrete session pins
a specific PT number.
Fields§
§media_kind: MediaKind§codec: MediaCodec§clock_rate: u32§payload_type: Option<PayloadType>§channels: Option<u16>§settings: Vec<CodecSetting>§rtcp_feedback: Vec<RtcpFeedback>Implementations§
Source§impl MediaCodecCapability
impl MediaCodecCapability
pub fn new( media_kind: MediaKind, codec: impl Into<MediaCodec>, clock_rate: u32, ) -> Self
pub fn with_payload_type(self, payload_type: PayloadType) -> Self
pub fn with_channels(self, channels: u16) -> Self
pub fn with_setting(self, setting: CodecSetting) -> Self
Sourcepub fn with_parameter(
self,
name: impl Into<String>,
value: impl Into<String>,
) -> Self
pub fn with_parameter( self, name: impl Into<String>, value: impl Into<String>, ) -> Self
An invalid RTX apt remains in Self::parameters while
Self::rtx_associated_payload_type returns None.
pub fn with_rtcp_feedback(self, feedback: RtcpFeedback) -> Self
pub fn media_kind(&self) -> MediaKind
pub fn codec(&self) -> &MediaCodec
pub fn codec_name(&self) -> &str
pub fn clock_rate(&self) -> u32
pub fn payload_type_id(&self) -> Option<PayloadType>
pub fn payload_type(&self) -> Option<u8>
pub fn channels(&self) -> Option<u16>
pub fn settings(&self) -> impl Iterator<Item = &CodecSetting>
pub fn parameters(&self) -> impl Iterator<Item = (String, String)> + '_
pub fn rtcp_feedback(&self) -> impl Iterator<Item = &RtcpFeedback>
pub fn rtx_associated_payload_type_id(&self) -> Option<PayloadType>
pub fn rtx_associated_payload_type(&self) -> Option<u8>
Trait Implementations§
Source§impl Clone for MediaCodecCapability
impl Clone for MediaCodecCapability
Source§fn clone(&self) -> MediaCodecCapability
fn clone(&self) -> MediaCodecCapability
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MediaCodecCapability
impl Debug for MediaCodecCapability
Source§impl PartialEq for MediaCodecCapability
impl PartialEq for MediaCodecCapability
impl Eq for MediaCodecCapability
impl StructuralPartialEq for MediaCodecCapability
Auto Trait Implementations§
impl Freeze for MediaCodecCapability
impl RefUnwindSafe for MediaCodecCapability
impl Send for MediaCodecCapability
impl Sync for MediaCodecCapability
impl Unpin for MediaCodecCapability
impl UnsafeUnpin for MediaCodecCapability
impl UnwindSafe for MediaCodecCapability
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more