Struct ffmpeg_sys_the_third::AVInputFormat
source · #[repr(C)]pub struct AVInputFormat {Show 22 fields
pub name: *const c_char,
pub long_name: *const c_char,
pub flags: c_int,
pub extensions: *const c_char,
pub codec_tag: *const *const AVCodecTag,
pub priv_class: *const AVClass,
pub mime_type: *const c_char,
pub next: *mut AVInputFormat,
pub raw_codec_id: c_int,
pub priv_data_size: c_int,
pub read_probe: Option<unsafe extern "C" fn(arg1: *const AVProbeData) -> c_int>,
pub read_header: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>,
pub read_packet: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, pkt: *mut AVPacket) -> c_int>,
pub read_close: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>,
pub read_seek: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, stream_index: c_int, timestamp: i64, flags: c_int) -> c_int>,
pub read_timestamp: Option<unsafe extern "C" fn(s: *mut AVFormatContext, stream_index: c_int, pos: *mut i64, pos_limit: i64) -> i64>,
pub read_play: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>,
pub read_pause: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>,
pub read_seek2: Option<unsafe extern "C" fn(s: *mut AVFormatContext, stream_index: c_int, min_ts: i64, ts: i64, max_ts: i64, flags: c_int) -> 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>,
}
Expand description
@addtogroup lavf_decoding @{
Fields§
§name: *const c_char
A comma separated list of short names for the format. New names may be appended with a minor bump.
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.
flags: c_int
Can use flags: AVFMT_NOFILE, AVFMT_NEEDNUMBER, AVFMT_SHOW_IDS, AVFMT_NOTIMESTAMPS, AVFMT_GENERIC_INDEX, AVFMT_TS_DISCONT, AVFMT_NOBINSEARCH, AVFMT_NOGENSEARCH, AVFMT_NO_BYTE_SEEK, AVFMT_SEEK_TO_PTS.
extensions: *const c_char
If extensions are defined, then no probe is done. You should usually not use extension format guessing because it is not reliable enough
codec_tag: *const *const AVCodecTag
§priv_class: *const AVClass
< AVClass for the private context
mime_type: *const c_char
Comma-separated list of mime types. It is used check for matching mime types while probing. @see av_probe_input_format2
next: *mut AVInputFormat
§raw_codec_id: c_int
Raw demuxers store their codec ID here.
priv_data_size: c_int
Size of private data so that it can be allocated in the wrapper.
read_probe: Option<unsafe extern "C" fn(arg1: *const AVProbeData) -> c_int>
Tell if a given file has a chance of being parsed as this format. The buffer provided is guaranteed to be AVPROBE_PADDING_SIZE bytes big so you do not have to check for that unless you need more.
read_header: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>
Read the format header and initialize the AVFormatContext structure. Return 0 if OK. ‘avformat_new_stream’ should be called to create new streams.
read_packet: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, pkt: *mut AVPacket) -> c_int>
Read one packet and put it in ‘pkt’. pts and flags are also set. ‘avformat_new_stream’ can be called only if the flag AVFMTCTX_NOHEADER is used and only in the calling thread (not in a background thread). @return 0 on success, < 0 on error. Upon returning an error, pkt must be unreferenced by the caller.
read_close: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>
Close the stream. The AVFormatContext and AVStreams are not freed by this function
read_seek: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext, stream_index: c_int, timestamp: i64, flags: c_int) -> c_int>
Seek to a given timestamp relative to the frames in stream component stream_index. @param stream_index Must not be -1. @param flags Selects which direction should be preferred if no exact match is available. @return >= 0 on success (but not necessarily the new offset)
read_timestamp: Option<unsafe extern "C" fn(s: *mut AVFormatContext, stream_index: c_int, pos: *mut i64, pos_limit: i64) -> i64>
Get the next timestamp in stream[stream_index].time_base units. @return the timestamp or AV_NOPTS_VALUE if an error occurred
read_play: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>
Start/resume playing - only meaningful if using a network-based format (RTSP).
read_pause: Option<unsafe extern "C" fn(arg1: *mut AVFormatContext) -> c_int>
Pause playing - only meaningful if using a network-based format (RTSP).
read_seek2: Option<unsafe extern "C" fn(s: *mut AVFormatContext, stream_index: c_int, min_ts: i64, ts: i64, max_ts: i64, flags: c_int) -> c_int>
Seek to timestamp ts. Seeking will be done so that the point from which all active streams can be presented successfully will be closest to ts and within min/max_ts. Active streams are all streams that have AVStream.discard < AVDISCARD_ALL.
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.
Trait Implementations§
source§impl Clone for AVInputFormat
impl Clone for AVInputFormat
source§fn clone(&self) -> AVInputFormat
fn clone(&self) -> AVInputFormat
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for AVInputFormat
impl Debug for AVInputFormat
source§impl PartialEq for AVInputFormat
impl PartialEq for AVInputFormat
source§fn eq(&self, other: &AVInputFormat) -> bool
fn eq(&self, other: &AVInputFormat) -> bool
self
and other
values to be equal, and is used
by ==
.