FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
AVOutputFormat Struct Reference

#include <avformat.h>

Data Fields

const char * name
 
const char * long_name
 Descriptive name for the format, meant to be more human-readable than name. More...
 
const char * mime_type
 
const char * extensions
 comma-separated filename extensions More...
 
enum AVCodecID audio_codec
 default audio codec More...
 
enum AVCodecID video_codec
 default video codec More...
 
enum AVCodecID subtitle_codec
 default subtitle codec More...
 
int flags
 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 More...
 
const struct AVCodecTag *const * codec_tag
 List of supported codec_id-codec_tag pairs, ordered by "better choice first". More...
 
const AVClasspriv_class
 AVClass for the private context. More...
 
struct AVOutputFormatnext
 
int priv_data_size
 size of private data so that it can be allocated in the wrapper More...
 
int(* write_header )(struct AVFormatContext *)
 
int(* write_packet )(struct AVFormatContext *, AVPacket *pkt)
 Write a packet. More...
 
int(* write_trailer )(struct AVFormatContext *)
 
int(* interleave_packet )(struct AVFormatContext *, AVPacket *out, AVPacket *in, int flush)
 Currently only used to set pixel format if not YUV420P. More...
 
int(* query_codec )(enum AVCodecID id, int std_compliance)
 Test if the given codec can be stored in this container. More...
 
void(* get_output_timestamp )(struct AVFormatContext *s, int stream, int64_t *dts, int64_t *wall)
 
int(* control_message )(struct AVFormatContext *s, int type, void *data, size_t data_size)
 Allows sending messages from application to device. More...
 
int(* write_uncoded_frame )(struct AVFormatContext *, int stream_index, AVFrame **frame, unsigned flags)
 Write an uncoded AVFrame. 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...
 
enum AVCodecID data_codec
 default data codec More...
 
int(* init )(struct AVFormatContext *)
 Initialize format. More...
 
void(* deinit )(struct AVFormatContext *)
 Deinitialize format. More...
 
int(* check_bitstream )(struct AVFormatContext *, const AVPacket *pkt)
 Set up any necessary bitstream filtering and extract any extra data needed for the global header. More...
 

Detailed Description

Examples:
muxing.c, and remuxing.c.

Definition at line 521 of file avformat.h.

Field Documentation

const char* AVOutputFormat::name
const char* AVOutputFormat::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.

Definition at line 528 of file avformat.h.

Referenced by show_formats_devices(), and show_help_muxer().

const char* AVOutputFormat::mime_type

Definition at line 529 of file avformat.h.

Referenced by av_guess_format(), http_parse_request(), and show_help_muxer().

const char* AVOutputFormat::extensions

comma-separated filename extensions

Definition at line 530 of file avformat.h.

Referenced by av_guess_format(), and show_help_muxer().

enum AVCodecID AVOutputFormat::audio_codec

default audio codec

Examples:
muxing.c.

Definition at line 532 of file avformat.h.

Referenced by av_guess_codec(), avformat_query_codec(), ffserver_parse_config_stream(), main(), and show_help_muxer().

enum AVCodecID AVOutputFormat::video_codec

default video codec

Examples:
muxing.c.

Definition at line 533 of file avformat.h.

Referenced by av_guess_codec(), avformat_query_codec(), ffserver_parse_config_stream(), main(), open_output_file(), and show_help_muxer().

enum AVCodecID AVOutputFormat::subtitle_codec

default subtitle codec

Definition at line 534 of file avformat.h.

Referenced by av_guess_codec(), avformat_query_codec(), open_output_file(), and show_help_muxer().

int AVOutputFormat::flags

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

Examples:
muxing.c, remuxing.c, and transcoding.c.

Definition at line 541 of file avformat.h.

Referenced by add_stream(), av_interleaved_write_frame(), av_write_frame(), avformat_write_header(), do_video_out(), dump_stream_format(), ffmpeg_cleanup(), flush_encoders(), init_muxer(), main(), new_output_stream(), open_output_file(), open_slave(), prepare_input_packet(), seg_init(), transcode_init(), write_frame(), and write_header().

const struct AVCodecTag* const* AVOutputFormat::codec_tag

List of supported codec_id-codec_tag pairs, ordered by "better choice first".

The arrays are all terminated by AV_CODEC_ID_NONE.

Definition at line 547 of file avformat.h.

Referenced by avformat_query_codec(), init_muxer(), segment_mux_init(), transcode_init(), and validate_codec_tag().

const AVClass* AVOutputFormat::priv_class
struct AVOutputFormat* AVOutputFormat::next

Definition at line 559 of file avformat.h.

Referenced by av_oformat_next(), and av_register_output_format().

int AVOutputFormat::priv_data_size

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

Definition at line 563 of file avformat.h.

Referenced by avformat_alloc_output_context2(), and init_muxer().

int(* AVOutputFormat::write_header)(struct AVFormatContext *)
int(* AVOutputFormat::write_packet)(struct AVFormatContext *, AVPacket *pkt)

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.

Definition at line 573 of file avformat.h.

Referenced by av_write_frame(), chunk_end(), and write_packet().

int(* AVOutputFormat::write_trailer)(struct AVFormatContext *)

Definition at line 574 of file avformat.h.

Referenced by av_write_trailer(), and webm_chunk_write_trailer().

int(* AVOutputFormat::interleave_packet)(struct AVFormatContext *, AVPacket *out, AVPacket *in, int flush)

Currently only used to set pixel format if not YUV420P.

Definition at line 578 of file avformat.h.

Referenced by interleave_packet().

int(* AVOutputFormat::query_codec)(enum AVCodecID id, int std_compliance)

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

Returns
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

Definition at line 587 of file avformat.h.

Referenced by avformat_query_codec().

void(* AVOutputFormat::get_output_timestamp)(struct AVFormatContext *s, int stream, int64_t *dts, int64_t *wall)

Definition at line 589 of file avformat.h.

Referenced by av_get_output_timestamp().

int(* AVOutputFormat::control_message)(struct AVFormatContext *s, int type, void *data, size_t data_size)

Allows sending messages from application to device.

Definition at line 594 of file avformat.h.

Referenced by avdevice_app_to_dev_control_message().

int(* AVOutputFormat::write_uncoded_frame)(struct AVFormatContext *, int stream_index, AVFrame **frame, unsigned flags)

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.

Definition at line 605 of file avformat.h.

Referenced by av_write_uncoded_frame_internal(), av_write_uncoded_frame_query(), and write_packet().

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

Returns device list with it properties.

See Also
avdevice_list_devices() for more details.

Definition at line 611 of file avformat.h.

Referenced by avdevice_list_devices().

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

Initialize device capabilities submodule.

See Also
avdevice_capabilities_create() for more details.

Definition at line 616 of file avformat.h.

Referenced by avdevice_capabilities_create().

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

Free device capabilities submodule.

See Also
avdevice_capabilities_free() for more details.

Definition at line 621 of file avformat.h.

Referenced by avdevice_capabilities_free().

enum AVCodecID AVOutputFormat::data_codec

default data codec

Definition at line 622 of file avformat.h.

Referenced by av_guess_codec().

int(* AVOutputFormat::init)(struct AVFormatContext *)

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.

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

Definition at line 630 of file avformat.h.

Referenced by init_muxer().

void(* AVOutputFormat::deinit)(struct 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.

Definition at line 639 of file avformat.h.

Referenced by av_write_trailer(), and init_muxer().

int(* AVOutputFormat::check_bitstream)(struct AVFormatContext *, const AVPacket *pkt)

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.

Definition at line 645 of file avformat.h.

Referenced by av_interleaved_write_frame(), avformat_write_header(), and seg_check_bitstream().


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