pub struct SupportedEncodings {
pub channel_sets: Option<Vec<ChannelSet>>,
pub frame_rates: Option<Vec<u32>>,
pub encoding_types: Option<Vec<EncodingType>>,
/* private fields */
}Expand description
Supported formats for encoded audio.
This table defines a valid set of configurations. All fields are independent, which
implies a cross-product: any listed channel_set is supported at any listed
frame_rate for any listed encoded_type.
If a device supports multiple encoders with different rate/channel constraints
(e.g. AAC supports 48kHz but SBC only supports 44.1kHz), the device must
report them as separate entries in the SupportedFormats vector.
Fields§
§channel_sets: Option<Vec<ChannelSet>>Vector of possible ChannelSets supported.
A ChannelSet specifies a channel configuration (including a channel-count), plus a number
of optional attributes.
Each entry in this vector must describe a unique channel count. For example, this
vector cannot contain two different ChannelSet entries that both apply to a
2-channel configuration.
Required.
frame_rates: Option<Vec<u32>>Vector of possible frame rates supported. Values must be listed in ascending order.
Required.
encoding_types: Option<Vec<EncodingType>>The encoder types that support the configurations listed above.
Required.
Trait Implementations§
Source§impl Clone for SupportedEncodings
impl Clone for SupportedEncodings
Source§fn clone(&self) -> SupportedEncodings
fn clone(&self) -> SupportedEncodings
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SupportedEncodings
impl Debug for SupportedEncodings
Source§impl<D> Decode<SupportedEncodings, D> for SupportedEncodingswhere
D: ResourceDialect,
impl<D> Decode<SupportedEncodings, D> for SupportedEncodingswhere
D: ResourceDialect,
Source§fn new_empty() -> SupportedEncodings
fn new_empty() -> SupportedEncodings
Self. The specific value does not matter,
since it will be overwritten by decode.Source§impl Default for SupportedEncodings
impl Default for SupportedEncodings
Source§fn default() -> SupportedEncodings
fn default() -> SupportedEncodings
Source§impl<D> Encode<SupportedEncodings, D> for &SupportedEncodingswhere
D: ResourceDialect,
impl<D> Encode<SupportedEncodings, D> for &SupportedEncodingswhere
D: ResourceDialect,
Source§impl PartialEq for SupportedEncodings
impl PartialEq for SupportedEncodings
Source§impl TypeMarker for SupportedEncodings
impl TypeMarker for SupportedEncodings
Source§type Owned = SupportedEncodings
type Owned = SupportedEncodings
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
inline_align.Source§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Self::Owned matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned to a single memcpy. Read moreSource§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Self::Owned matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned to a single memcpy.Source§impl ValueTypeMarker for SupportedEncodings
impl ValueTypeMarker for SupportedEncodings
Source§type Borrowed<'a> = &'a SupportedEncodings
type Borrowed<'a> = &'a SupportedEncodings
Encode<Self>
type cheaply obtainable from &Self::Owned. There are three cases: Read moreSource§fn borrow(
value: &<SupportedEncodings as TypeMarker>::Owned,
) -> <SupportedEncodings as ValueTypeMarker>::Borrowed<'_>
fn borrow( value: &<SupportedEncodings as TypeMarker>::Owned, ) -> <SupportedEncodings as ValueTypeMarker>::Borrowed<'_>
&Self::Owned to Self::Borrowed.