pub trait AudioDecoderExtManual: Sealed + IsA<AudioDecoder> + 'static {
    // Provided methods
    fn negotiate(&self) -> Result<(), FlowError> { ... }
    fn set_output_caps(&self, caps: &Caps) -> Result<(), FlowError> { ... }
    fn set_output_format(&self, info: &AudioInfo) -> Result<(), FlowError> { ... }
    fn allocator(&self) -> (Option<Allocator>, AllocationParams) { ... }
    fn error<T: MessageErrorDomain>(
        &self,
        weight: i32,
        code: T,
        message: Option<&str>,
        debug: Option<&str>,
        file: &str,
        function: &str,
        line: u32
    ) -> Result<FlowSuccess, FlowError> { ... }
    fn sink_pad(&self) -> &Pad { ... }
    fn src_pad(&self) -> &Pad { ... }
    fn input_segment(&self) -> Segment { ... }
    fn output_segment(&self) -> Segment { ... }
}

Provided Methods§

source

fn negotiate(&self) -> Result<(), FlowError>

Negotiate with downstream elements to currently configured AudioInfo. Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if negotiate fails.

§Returns

true if the negotiation succeeded, else false.

source

fn set_output_caps(&self, caps: &Caps) -> Result<(), FlowError>

Configure output caps on the srcpad of self. Similar to set_output_format(), but allows subclasses to specify output caps that can’t be expressed via AudioInfo e.g. caps that have caps features.

§caps

(fixed) gst::Caps

§Returns

true on success.

source

fn set_output_format(&self, info: &AudioInfo) -> Result<(), FlowError>

Configure output info on the srcpad of self.

§info

AudioInfo

§Returns

true on success.

source

fn allocator(&self) -> (Option<Allocator>, AllocationParams)

Lets AudioDecoder sub-classes to know the memory allocator used by the base class and its params.

Unref the allocator after use it.

§Returns
§allocator

the gst::Allocator used

§params

the gst::AllocationParams of allocator

source

fn error<T: MessageErrorDomain>( &self, weight: i32, code: T, message: Option<&str>, debug: Option<&str>, file: &str, function: &str, line: u32 ) -> Result<FlowSuccess, FlowError>

source

fn sink_pad(&self) -> &Pad

source

fn src_pad(&self) -> &Pad

source

fn input_segment(&self) -> Segment

source

fn output_segment(&self) -> Segment

Object Safety§

This trait is not object safe.

Implementors§