Struct mlt_sys::mlt_consumer_s [−][src]
#[repr(C)]pub struct mlt_consumer_s { pub parent: mlt_service_s, pub start: Option<unsafe extern "C" fn(arg1: mlt_consumer) -> c_int>, pub stop: Option<unsafe extern "C" fn(arg1: mlt_consumer) -> c_int>, pub is_stopped: Option<unsafe extern "C" fn(arg1: mlt_consumer) -> c_int>, pub purge: Option<unsafe extern "C" fn(arg1: mlt_consumer)>, pub close: Option<unsafe extern "C" fn(arg1: mlt_consumer)>, pub local: *mut c_void, pub child: *mut c_void, }
\brief Consumer abstract service class
A consumer is a service that pulls audio and video from the connected producers, filters, and transitions. Typically a consumer is used to output audio and/or video to a device, file, or socket.
\extends mlt_service_s \properties \em rescale the scaling algorithm to pass on to all scaling filters, defaults to "bilinear" \properties \em buffer the number of frames to use in the asynchronous render thread, defaults to 25 \properties \em prefill the number of frames to render before commencing output when real_time <> 0, defaults to the size of buffer \properties \em drop_max the maximum number of consecutively dropped frames, defaults to 5 \properties \em frequency the audio sample rate to use in Hertz, defaults to 48000 \properties \em channels the number of audio channels to use, defaults to 2 \properties \em channel_layout the layout of the audio channels, defaults to auto. other options include: mono, stereo, 5.1, 7.1, etc. \properties \em real_time the asynchronous behavior: 1 (default) for asynchronous with frame dropping, -1 for asynchronous without frame dropping, 0 to disable (synchronous) \properties \em test_card the name of a resource to use as the test card, defaults to environment variable MLT_TEST_CARD. If undefined, the hard-coded default test card is white silence. A test card is what appears when nothing is produced. \event \em consumer-frame-show Subclass implementations fire this immediately after showing a frame or when a frame should be shown (if audio-only consumer). \event \em consumer-frame-render The base class fires this immediately before rendering a frame. \event \em consumer-thread-create Override the implementation of creating and starting a thread by listening and responding to this (real_time 1 or -1 only). \event \em consumer-thread-join Override the implementation of waiting and joining a terminated thread by listening and responding to this (real_time 1 or -1 only). \event \em consumer-thread-started The base class fires when beginning execution of a rendering thread. \event \em consumer-thread-stopped The base class fires when a rendering thread has ended. \event \em consumer-stopping This is fired when stop was requested, but before render threads are joined. \event \em consumer-stopped This is fired when the subclass implementation calls mlt_consumer_stopped(). \properties \em fps video frames per second as floating point (read only) \properties \em frame_rate_num the numerator of the video frame rate, overrides \p mlt_profile_s \properties \em frame_rate_den the denominator of the video frame rate, overrides \p mlt_profile_s \properties \em width the horizontal video resolution, overrides \p mlt_profile_s \properties \em height the vertical video resolution, overrides \p mlt_profile_s \properties \em progressive a flag that indicates if the video is interlaced or progressive, overrides \p mlt_profile_s \properties \em aspect_ratio the video sample (pixel) aspect ratio as floating point (read only) \properties \em sample_aspect_num the numerator of the sample aspect ratio, overrides \p mlt_profile_s \properties \em sample_aspect_den the denominator of the sample aspect ratio, overrides \p mlt_profile_s \properties \em display_ratio the video frame aspect ratio as floating point (read only) \properties \em display_aspect_num the numerator of the video frame aspect ratio, overrides \p mlt_profile_s \properties \em display_aspect_den the denominator of the video frame aspect ratio, overrides \p mlt_profile_s \properties \em priority the OS scheduling priority for the render threads when real_time is not 0. \properties \em top_field_first when not progressive, whether interlace field order is top-field-first, defaults to 0. Set this to -1 if the consumer does not care about the field order. \properties \em mlt_image_format the image format to request in rendering threads, defaults to yuv422 \properties \em mlt_audio_format the audio format to request in rendering threads, defaults to S16 \properties \em audio_off set non-zero to disable audio processing \properties \em video_off set non-zero to disable video processing \properties \em drop_count the number of video frames not rendered since starting consumer
Fields
parent: mlt_service_s
A consumer is a service.
start: Option<unsafe extern "C" fn(arg1: mlt_consumer) -> c_int>
Start the consumer to pull frames (virtual function).
\param mlt_consumer a consumer \return true if there was an error
stop: Option<unsafe extern "C" fn(arg1: mlt_consumer) -> c_int>
Stop the consumer (virtual function).
\param mlt_consumer a consumer \return true if there was an error
is_stopped: Option<unsafe extern "C" fn(arg1: mlt_consumer) -> c_int>
Get whether the consumer is running or stopped (virtual function).
\param mlt_consumer a consumer \return true if the consumer is stopped
purge: Option<unsafe extern "C" fn(arg1: mlt_consumer)>
Purge the consumer of buffered data (virtual function).
\param mlt_consumer a consumer
close: Option<unsafe extern "C" fn(arg1: mlt_consumer)>
The destructor virtual function
\param mlt_consumer a consumer
local: *mut c_void
< \private instance object
child: *mut c_void
< \private the object of a subclass
Trait Implementations
impl Debug for mlt_consumer_s
[src]
impl Debug for mlt_consumer_s
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl Copy for mlt_consumer_s
[src]
impl Copy for mlt_consumer_s
impl Clone for mlt_consumer_s
[src]
impl Clone for mlt_consumer_s
fn clone(&self) -> mlt_consumer_s
[src]
fn clone(&self) -> mlt_consumer_s
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
Auto Trait Implementations
impl !Send for mlt_consumer_s
impl !Send for mlt_consumer_s
impl !Sync for mlt_consumer_s
impl !Sync for mlt_consumer_s