FFmpeg
Public Attributes | List of all members
AVInputFormat Struct Reference

Public Attributes

const char * name
 A comma separated list of short names for the format. More...
 
const char * long_name
 Descriptive name for the format, meant to be more human-readable than name. More...
 
int flags
 Can use flags: AVFMT_NOFILE, AVFMT_NEEDNUMBER, AVFMT_SHOW_IDS, AVFMT_GENERIC_INDEX, AVFMT_TS_DISCONT, AVFMT_NOBINSEARCH, AVFMT_NOGENSEARCH, AVFMT_NO_BYTE_SEEK, AVFMT_SEEK_TO_PTS.
 
const char * extensions
 If extensions are defined, then no probe is done. More...
 
const struct AVCodecTag *const * codec_tag
 
const AVClasspriv_class
 AVClass for the private context.
 
const char * mime_type
 Comma-separated list of mime types. More...
 
struct AVInputFormatnext
 
int raw_codec_id
 Raw demuxers store their codec ID here.
 
int priv_data_size
 Size of private data so that it can be allocated in the wrapper.
 
int(* read_probe )(AVProbeData *)
 Tell if a given file has a chance of being parsed as this format. More...
 
int(* read_header )(struct AVFormatContext *)
 Read the format header and initialize the AVFormatContext structure. More...
 
int(* read_packet )(struct AVFormatContext *, AVPacket *pkt)
 Read one packet and put it in 'pkt'. More...
 
int(* read_close )(struct AVFormatContext *)
 Close the stream. More...
 
int(* read_seek )(struct AVFormatContext *, int stream_index, int64_t timestamp, int flags)
 Seek to a given timestamp relative to the frames in stream component stream_index. More...
 
int64_t(* read_timestamp )(struct AVFormatContext *s, int stream_index, int64_t *pos, int64_t pos_limit)
 Get the next timestamp in stream[stream_index].time_base units. More...
 
int(* read_play )(struct AVFormatContext *)
 Start/resume playing - only meaningful if using a network-based format (RTSP).
 
int(* read_pause )(struct AVFormatContext *)
 Pause playing - only meaningful if using a network-based format (RTSP).
 
int(* read_seek2 )(struct AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags)
 Seek to timestamp ts. More...
 
int(* get_device_list )(struct AVFormatContext *s, struct AVDeviceInfoList *device_list)
 Returns device list with it properties. More...
 
int(* create_device_capabilities )(struct AVFormatContext *s, struct AVDeviceCapabilitiesQuery *caps)
 Initialize device capabilities submodule. More...
 
int(* free_device_capabilities )(struct AVFormatContext *s, struct AVDeviceCapabilitiesQuery *caps)
 Free device capabilities submodule. More...
 

Member Data Documentation

§ create_device_capabilities

int(* AVInputFormat::create_device_capabilities) (struct AVFormatContext *s, struct AVDeviceCapabilitiesQuery *caps)

Initialize device capabilities submodule.

See also
avdevice_capabilities_create() for more details.

§ extensions

const char* AVInputFormat::extensions

If extensions are defined, then no probe is done.

You should usually not use extension format guessing because it is not reliable enough

§ free_device_capabilities

int(* AVInputFormat::free_device_capabilities) (struct AVFormatContext *s, struct AVDeviceCapabilitiesQuery *caps)

Free device capabilities submodule.

See also
avdevice_capabilities_free() for more details.

§ get_device_list

int(* AVInputFormat::get_device_list) (struct AVFormatContext *s, struct AVDeviceInfoList *device_list)

Returns device list with it properties.

See also
avdevice_list_devices() for more details.

§ long_name

const char* AVInputFormat::long_name

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 char* AVInputFormat::mime_type

Comma-separated list of mime types.

It is used check for matching mime types while probing.

See also
av_probe_input_format2

§ name

const char* AVInputFormat::name

A comma separated list of short names for the format.

New names may be appended with a minor bump.

§ read_close

int(* AVInputFormat::read_close) (struct AVFormatContext *)

Close the stream.

The AVFormatContext and AVStreams are not freed by this function

§ read_header

int(* AVInputFormat::read_header) (struct AVFormatContext *)

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

int(* AVInputFormat::read_packet) (struct AVFormatContext *, AVPacket *pkt)

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).

Returns
0 on success, < 0 on error. When returning an error, pkt must not have been allocated or must be freed before returning

§ read_probe

int(* AVInputFormat::read_probe) (AVProbeData *)

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_seek

int(* AVInputFormat::read_seek) (struct AVFormatContext *, int stream_index, int64_t timestamp, int flags)

Seek to a given timestamp relative to the frames in stream component stream_index.

Parameters
stream_indexMust not be -1.
flagsSelects which direction should be preferred if no exact match is available.
Returns
>= 0 on success (but not necessarily the new offset)

§ read_seek2

int(* AVInputFormat::read_seek2) (struct AVFormatContext *s, int stream_index, int64_t min_ts, int64_t ts, int64_t max_ts, int flags)

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.

§ read_timestamp

int64_t(* AVInputFormat::read_timestamp) (struct AVFormatContext *s, int stream_index, int64_t *pos, int64_t pos_limit)

Get the next timestamp in stream[stream_index].time_base units.

Returns
the timestamp or AV_NOPTS_VALUE if an error occurred

The documentation for this struct was generated from the following file: