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
impl Clone for AVOutputFormat
source§fn clone(&self) -> AVOutputFormat
fn clone(&self) -> AVOutputFormat
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for AVOutputFormat
impl Debug for AVOutputFormat
source§impl PartialEq for AVOutputFormat
impl PartialEq for AVOutputFormat
source§fn eq(&self, other: &AVOutputFormat) -> bool
fn eq(&self, other: &AVOutputFormat) -> bool
self
and other
values to be equal, and is used
by ==
.