Trait gstreamer_audio::prelude::AudioDecoderExt[][src]

pub trait AudioDecoderExt: 'static {
Show methods fn allocate_output_buffer(&self, size: usize) -> Result<Buffer, BoolError>;
fn audio_info(&self) -> Option<AudioInfo>;
fn delay(&self) -> i32;
fn is_drainable(&self) -> bool;
fn estimate_rate(&self) -> i32;
fn latency(&self) -> (ClockTime, Option<ClockTime>);
fn max_errors(&self) -> i32;
fn min_latency(&self) -> ClockTime;
fn needs_format(&self) -> bool;
fn parse_state(&self) -> (bool, bool);
fn is_plc(&self) -> bool;
fn plc_aware(&self) -> i32;
fn tolerance(&self) -> ClockTime;
fn merge_tags(&self, tags: Option<&TagList>, mode: TagMergeMode);
fn proxy_getcaps(&self, caps: Option<&Caps>, filter: Option<&Caps>) -> Caps;
fn set_allocation_caps(&self, allocation_caps: Option<&Caps>);
fn set_drainable(&self, enabled: bool);
fn set_estimate_rate(&self, enabled: bool);
fn set_latency(&self, min: ClockTime, max: impl Into<Option<ClockTime>>);
fn set_max_errors(&self, num: i32);
fn set_min_latency(&self, num: ClockTime);
fn set_needs_format(&self, enabled: bool);
fn set_plc(&self, enabled: bool);
fn set_plc_aware(&self, plc: bool);
fn set_tolerance(&self, tolerance: ClockTime);
fn set_use_default_pad_acceptcaps(&self, use_: bool);
fn connect_max_errors_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_min_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_plc_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
}
Expand description

Trait containing all AudioDecoder methods.

Implementors

AudioDecoder

Required methods

Helper function that allocates a buffer to hold an audio frame for self’s current output format.

size

size of the buffer

Returns

allocated buffer

Returns

a AudioInfo describing the input audio format

Returns

currently configured decoder delay

Queries decoder drain handling.

Returns

TRUE if drainable handling is enabled.

MT safe.

Returns

currently configured byte to time conversion setting

Sets the variables pointed to by min and max to the currently configured latency.

Returns

min

a pointer to storage to hold minimum latency

max

a pointer to storage to hold maximum latency

Returns

currently configured decoder tolerated error count.

Queries decoder’s latency aggregation.

Returns

aggregation latency.

MT safe.

Queries decoder required format handling.

Returns

TRUE if required format handling is enabled.

MT safe.

Return current parsing (sync and eos) state.

Returns

sync

a pointer to a variable to hold the current sync state

eos

a pointer to a variable to hold the current eos state

Queries decoder packet loss concealment handling.

Returns

TRUE if packet loss concealment is enabled.

MT safe.

Returns

currently configured plc handling

Queries current audio jitter tolerance threshold.

Returns

decoder audio jitter tolerance threshold.

MT safe.

Sets the audio decoder tags and how they should be merged with any upstream stream tags. This will override any tags previously-set with merge_tags().

Note that this is provided for convenience, and the subclass is not required to use this and can still do tag handling on its own.

tags

a gst::TagList to merge, or NULL

mode

the gst::TagMergeMode to use, usually gst::TagMergeMode::Replace

Returns caps that express caps (or sink template caps if caps == NULL) restricted to rate/channels/… combinations supported by downstream elements.

caps

initial caps

filter

filter caps

Returns

a gst::Caps owned by caller

This is supported on crate feature v1_10 only.

Sets a caps in allocation query which are different from the set pad’s caps. Use this function before calling AudioDecoderExtManual::negotiate(). Setting to None the allocation query will use the caps from the pad.

allocation_caps

a gst::Caps or None

Configures decoder drain handling. If drainable, subclass might be handed a NULL buffer to have it return any leftover decoded data. Otherwise, it is not considered so capable and will only ever be passed real data.

MT safe.

enabled

new state

Allows baseclass to perform byte to time estimated conversion.

enabled

whether to enable byte to time conversion

Sets decoder latency.

min

minimum latency

max

maximum latency

This is supported on crate feature v1_18 only.

Implementors

This is supported on crate feature v1_10 only.
This is supported on crate feature v1_18 only.