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 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 522 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 529 of file avformat.h.

Referenced by show_formats_devices(), and show_help_muxer().

const char* AVOutputFormat::mime_type

Definition at line 530 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 531 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 533 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 534 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 535 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

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

Definition at line 542 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_write_header(), tee_write_trailer(), 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 548 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 560 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 564 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 574 of file avformat.h.

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

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

Definition at line 575 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 579 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 588 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 590 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 595 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 606 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 612 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 617 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 622 of file avformat.h.

Referenced by avdevice_capabilities_free().

enum AVCodecID AVOutputFormat::data_codec

default data codec

Definition at line 623 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 631 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 640 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 646 of file avformat.h.

Referenced by av_interleaved_write_frame(), and avformat_write_header().


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