Struct ffmpeg_sys_the_third::AVOutputFormat

source ·
#[repr(C)]
pub struct AVOutputFormat {
Show 27 fields pub name: *const c_char, pub long_name: *const c_char, pub mime_type: *const c_char, pub extensions: *const c_char, pub audio_codec: AVCodecID, pub video_codec: AVCodecID, pub subtitle_codec: AVCodecID, pub flags: c_int, pub codec_tag: *const *const AVCodecTag, pub priv_class: *const AVClass, pub next: *mut AVOutputFormat, pub priv_data_size: c_int, pub write_header: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>, pub write_packet: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, pkt: *mut AVPacket) -> c_int>, pub write_trailer: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>, pub interleave_packet: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, out: *mut AVPacket, in_: *mut AVPacket, flush: c_int) -> c_int>, pub query_codec: Option<unsafe extern "C" fn(id: AVCodecID, std_compliance: c_int) -> c_int>, pub get_output_timestamp: Option<unsafe extern "C" fn(s: *mut AVFormatContext, stream: c_int, dts: *mut i64, wall: *mut i64)>, pub control_message: Option<unsafe extern "C" fn(s: *mut AVFormatContext, type_: c_int, data: *mut c_void, data_size: usize) -> c_int>, pub write_uncoded_frame: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, stream_index: c_int, frame: *mut *mut AVFrame, flags: c_uint) -> c_int>, pub get_device_list: Option<unsafe extern "C" fn(s: *mut AVFormatContext, device_list: *mut AVDeviceInfoList) -> c_int>, pub create_device_capabilities: Option<unsafe extern "C" fn(s: *mut AVFormatContext, caps: *mut AVDeviceCapabilitiesQuery) -> c_int>, pub free_device_capabilities: Option<unsafe extern "C" fn(s: *mut AVFormatContext, caps: *mut AVDeviceCapabilitiesQuery) -> c_int>, pub data_codec: AVCodecID, pub init: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>, pub deinit: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext)>, pub check_bitstream: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, pkt: *const AVPacket) -> c_int>,
}
Expand description

@addtogroup lavf_encoding @{

Fields§

§name: *const c_char§long_name: *const c_char

Descriptive name for the format, meant to be more human-readable than name. You should use the NULL_IF_CONFIG_SMALL() macro to define it.

§mime_type: *const c_char§extensions: *const c_char

< comma-separated filename extensions

§audio_codec: AVCodecID

< default audio codec

§video_codec: AVCodecID

< default video codec

§subtitle_codec: AVCodecID

< default subtitle codec

§flags: c_int

can use flags: AVFMT_NOFILE, AVFMT_NEEDNUMBER, AVFMT_GLOBALHEADER, AVFMT_NOTIMESTAMPS, AVFMT_VARIABLE_FPS, AVFMT_NODIMENSIONS, AVFMT_NOSTREAMS, AVFMT_ALLOW_FLUSH, AVFMT_TS_NONSTRICT, AVFMT_TS_NEGATIVE

§codec_tag: *const *const AVCodecTag

List of supported codec_id-codec_tag pairs, ordered by “better choice first”. The arrays are all terminated by AV_CODEC_ID_NONE.

§priv_class: *const AVClass

< AVClass for the private context

§next: *mut AVOutputFormat§priv_data_size: c_int

size of private data so that it can be allocated in the wrapper

§write_header: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>§write_packet: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, pkt: *mut AVPacket) -> c_int>

Write a packet. If AVFMT_ALLOW_FLUSH is set in flags, pkt can be NULL in order to flush data buffered in the muxer. When flushing, return 0 if there still is more data to flush, or 1 if everything was flushed and there is no more buffered data.

§write_trailer: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>§interleave_packet: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, out: *mut AVPacket, in_: *mut AVPacket, flush: c_int) -> c_int>

A format-specific function for interleavement. If unset, packets will be interleaved by dts.

§query_codec: Option<unsafe extern "C" fn(id: AVCodecID, std_compliance: c_int) -> c_int>

Test if the given codec can be stored in this container.

@return 1 if the codec is supported, 0 if it is not. A negative number if unknown. MKTAG(‘A’, ‘P’, ‘I’, ‘C’) if the codec is only supported as AV_DISPOSITION_ATTACHED_PIC

§get_output_timestamp: Option<unsafe extern "C" fn(s: *mut AVFormatContext, stream: c_int, dts: *mut i64, wall: *mut i64)>§control_message: Option<unsafe extern "C" fn(s: *mut AVFormatContext, type_: c_int, data: *mut c_void, data_size: usize) -> c_int>

Allows sending messages from application to device.

§write_uncoded_frame: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, stream_index: c_int, frame: *mut *mut AVFrame, flags: c_uint) -> c_int>

Write an uncoded AVFrame.

See av_write_uncoded_frame() for details.

The library will free *frame afterwards, but the muxer can prevent it by setting the pointer to NULL.

§get_device_list: Option<unsafe extern "C" fn(s: *mut AVFormatContext, device_list: *mut AVDeviceInfoList) -> c_int>

Returns device list with it properties. @see avdevice_list_devices() for more details.

§create_device_capabilities: Option<unsafe extern "C" fn(s: *mut AVFormatContext, caps: *mut AVDeviceCapabilitiesQuery) -> c_int>

Initialize device capabilities submodule. @see avdevice_capabilities_create() for more details.

§free_device_capabilities: Option<unsafe extern "C" fn(s: *mut AVFormatContext, caps: *mut AVDeviceCapabilitiesQuery) -> c_int>

Free device capabilities submodule. @see avdevice_capabilities_free() for more details.

§data_codec: AVCodecID

< default data codec

§init: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>

Initialize format. May allocate data here, and set any AVFormatContext or AVStream parameters that need to be set before packets are sent. This method must not write output.

Return 0 if streams were fully configured, 1 if not, negative AVERROR on failure

Any allocations made here must be freed in deinit().

§deinit: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext)>

Deinitialize format. If present, this is called whenever the muxer is being destroyed, regardless of whether or not the header has been written.

If a trailer is being written, this is called after write_trailer().

This is called if init() fails as well.

§check_bitstream: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, pkt: *const AVPacket) -> c_int>

Set up any necessary bitstream filtering and extract any extra data needed for the global header. Return 0 if more packets from this stream must be checked; 1 if not.

Trait Implementations§

source§

impl Clone for AVOutputFormat

source§

fn clone(&self) -> AVOutputFormat

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for AVOutputFormat

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for AVOutputFormat

source§

fn eq(&self, other: &AVOutputFormat) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for AVOutputFormat

source§

impl Eq for AVOutputFormat

source§

impl StructuralPartialEq for AVOutputFormat

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.