Struct DetailedCodecDescription
pub struct DetailedCodecDescription {
pub codec_type: Option<CodecType>,
pub mime_type: Option<String>,
pub is_hw: Option<bool>,
pub profile_descriptions: Option<ProfileDescriptions>,
/* private fields */
}
Expand description
Clients needing codec information prior to just requesting a codec with CodecFactory.CreateDecoder or CodecFactory.CreateEncoder should use GetDetailedCodecDescriptions to get this table, which has details re. the codec and the profile entries supported by the codec.
Clients with no real need for codec information prior to requesting a codec can simply use CodecFactory.CreateDecoder or CodecFactory.CreateEncoder with relevant requirements set in that request, and then call StreamProcessor.Sync (round trip) to see if a codec was created successfully.
Fields§
§codec_type: Option<CodecType>
Decoder or encoder.
mime_type: Option<String>
The mime type of the compressed format. For decoders this is the mime type of the input. For encoders, this is the mime type of the output.
is_hw: Option<bool>
If this decoder/encoder uses underlying hardware to perform its operations.
profile_descriptions: Option<ProfileDescriptions>
A list of profile descriptions that describe what codec profiles this encoder/decoder supports along with requirements for using each profile.
Trait Implementations§
§impl Clone for DetailedCodecDescription
impl Clone for DetailedCodecDescription
§fn clone(&self) -> DetailedCodecDescription
fn clone(&self) -> DetailedCodecDescription
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for DetailedCodecDescription
impl Debug for DetailedCodecDescription
§impl<D> Decode<DetailedCodecDescription, D> for DetailedCodecDescriptionwhere
D: ResourceDialect,
impl<D> Decode<DetailedCodecDescription, D> for DetailedCodecDescriptionwhere
D: ResourceDialect,
§fn new_empty() -> DetailedCodecDescription
fn new_empty() -> DetailedCodecDescription
Self
. The specific value does not matter,
since it will be overwritten by decode
.§impl Default for DetailedCodecDescription
impl Default for DetailedCodecDescription
§fn default() -> DetailedCodecDescription
fn default() -> DetailedCodecDescription
§impl<D> Encode<DetailedCodecDescription, D> for &DetailedCodecDescriptionwhere
D: ResourceDialect,
impl<D> Encode<DetailedCodecDescription, D> for &DetailedCodecDescriptionwhere
D: ResourceDialect,
§impl PartialEq for DetailedCodecDescription
impl PartialEq for DetailedCodecDescription
§impl TypeMarker for DetailedCodecDescription
impl TypeMarker for DetailedCodecDescription
§type Owned = DetailedCodecDescription
type Owned = DetailedCodecDescription
§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
inline_align
.§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 more§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.§impl ValueTypeMarker for DetailedCodecDescription
impl ValueTypeMarker for DetailedCodecDescription
§type Borrowed<'a> = &'a DetailedCodecDescription
type Borrowed<'a> = &'a DetailedCodecDescription
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read more§fn borrow(
value: &<DetailedCodecDescription as TypeMarker>::Owned,
) -> <DetailedCodecDescription as ValueTypeMarker>::Borrowed<'_>
fn borrow( value: &<DetailedCodecDescription as TypeMarker>::Owned, ) -> <DetailedCodecDescription as ValueTypeMarker>::Borrowed<'_>
&Self::Owned
to Self::Borrowed
.