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, 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: 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;
Required methods
fn allocate_output_buffer(&self, size: usize) -> Result<Buffer, BoolError>
[src]
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
fn audio_info(&self) -> Option<AudioInfo>
[src]
Returns
a crate::AudioInfo
describing the input audio format
fn delay(&self) -> i32
[src]
Returns
currently configured decoder delay
fn is_drainable(&self) -> bool
[src]
fn estimate_rate(&self) -> i32
[src]
Returns
currently configured byte to time conversion setting
fn latency(&self) -> (ClockTime, ClockTime)
[src]
Sets the variables pointed to by min
and max
to the currently configured
latency.
min
a pointer to storage to hold minimum latency
max
a pointer to storage to hold maximum latency
fn max_errors(&self) -> i32
[src]
Returns
currently configured decoder tolerated error count.
fn min_latency(&self) -> ClockTime
[src]
fn needs_format(&self) -> bool
[src]
Queries decoder required format handling.
Returns
TRUE if required format handling is enabled.
MT safe.
fn parse_state(&self) -> (bool, bool)
[src]
Return current parsing (sync and eos) state.
sync
a pointer to a variable to hold the current sync state
eos
a pointer to a variable to hold the current eos state
fn is_plc(&self) -> bool
[src]
Queries decoder packet loss concealment handling.
Returns
TRUE if packet loss concealment is enabled.
MT safe.
fn plc_aware(&self) -> i32
[src]
Returns
currently configured plc handling
fn tolerance(&self) -> ClockTime
[src]
Queries current audio jitter tolerance threshold.
Returns
decoder audio jitter tolerance threshold.
MT safe.
fn merge_tags(&self, tags: Option<&TagList>, mode: TagMergeMode)
[src]
Sets the audio decoder tags and how they should be merged with any
upstream stream tags. This will override any tags previously-set
with Self::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 crate::gst::TagList
to merge, or NULL
mode
the crate::gst::TagMergeMode
to use, usually crate::gst::TagMergeMode::Replace
fn proxy_getcaps(&self, caps: Option<&Caps>, filter: Option<&Caps>) -> Caps
[src]
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 crate::gst::Caps
owned by caller
fn set_allocation_caps(&self, allocation_caps: Option<&Caps>)
[src]
v1_10
only.Sets a caps in allocation query which are different from the set
pad’s caps. Use this function before calling
[crate::AudioDecoder::negotiate()
]. Setting to None
the allocation
query will use the caps from the pad.
allocation_caps
a crate::gst::Caps
or None
fn set_drainable(&self, enabled: bool)
[src]
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
fn set_estimate_rate(&self, enabled: bool)
[src]
Allows baseclass to perform byte to time estimated conversion.
enabled
whether to enable byte to time conversion
fn set_latency(&self, min: ClockTime, max: ClockTime)
[src]
fn set_max_errors(&self, num: i32)
[src]
Sets numbers of tolerated decoder errors, where a tolerated one is then only warned about, but more than tolerated will lead to fatal error. You can set -1 for never returning fatal errors. Default is set to GST_AUDIO_DECODER_MAX_ERRORS.
num
max tolerated errors
fn set_min_latency(&self, num: ClockTime)
[src]
fn set_needs_format(&self, enabled: bool)
[src]
Configures decoder format needs. If enabled, subclass needs to be negotiated with format caps before it can process any data. It will then never be handed any data before it has been configured. Otherwise, it might be handed data without having been configured and is then expected being able to do so either by default or based on the input data.
MT safe.
enabled
new state
fn set_plc(&self, enabled: bool)
[src]
Enable or disable decoder packet loss concealment, provided subclass and codec are capable and allow handling plc.
MT safe.
enabled
new state
fn set_plc_aware(&self, plc: bool)
[src]
fn set_tolerance(&self, tolerance: ClockTime)
[src]
fn set_use_default_pad_acceptcaps(&self, use_: bool)
[src]
Lets crate::AudioDecoder
sub-classes decide if they want the sink pad
to use the default pad query handler to reply to accept-caps queries.
By setting this to true it is possible to further customize the default
handler with GST_PAD_SET_ACCEPT_INTERSECT
and
GST_PAD_SET_ACCEPT_TEMPLATE
use_
if the default pad accept-caps query handling should be used
fn connect_max_errors_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
v1_18
only.fn connect_min_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_plc_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
Implementors
impl<O: IsA<AudioDecoder>> AudioDecoderExt for O
[src]
impl<O: IsA<AudioDecoder>> AudioDecoderExt for O
[src]fn allocate_output_buffer(&self, size: usize) -> Result<Buffer, BoolError>
[src]
fn audio_info(&self) -> Option<AudioInfo>
[src]
fn delay(&self) -> i32
[src]
fn is_drainable(&self) -> bool
[src]
fn estimate_rate(&self) -> i32
[src]
fn latency(&self) -> (ClockTime, ClockTime)
[src]
fn max_errors(&self) -> i32
[src]
fn min_latency(&self) -> ClockTime
[src]
fn needs_format(&self) -> bool
[src]
fn parse_state(&self) -> (bool, bool)
[src]
fn is_plc(&self) -> bool
[src]
fn plc_aware(&self) -> i32
[src]
fn tolerance(&self) -> ClockTime
[src]
fn merge_tags(&self, tags: Option<&TagList>, mode: TagMergeMode)
[src]
fn proxy_getcaps(&self, caps: Option<&Caps>, filter: Option<&Caps>) -> Caps
[src]
fn set_allocation_caps(&self, allocation_caps: Option<&Caps>)
[src]
fn set_allocation_caps(&self, allocation_caps: Option<&Caps>)
[src]v1_10
only.fn set_drainable(&self, enabled: bool)
[src]
fn set_estimate_rate(&self, enabled: bool)
[src]
fn set_latency(&self, min: ClockTime, max: ClockTime)
[src]
fn set_max_errors(&self, num: i32)
[src]
fn set_min_latency(&self, num: ClockTime)
[src]
fn set_needs_format(&self, enabled: bool)
[src]
fn set_plc(&self, enabled: bool)
[src]
fn set_plc_aware(&self, plc: bool)
[src]
fn set_tolerance(&self, tolerance: ClockTime)
[src]
fn set_use_default_pad_acceptcaps(&self, use_: bool)
[src]
fn connect_max_errors_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
fn connect_max_errors_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]v1_18
only.fn connect_min_latency_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_plc_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId
fn connect_tolerance_notify<F: Fn(&Self) + Send + Sync + 'static>(
&self,
f: F
) -> SignalHandlerId
[src]
&self,
f: F
) -> SignalHandlerId