FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions
Core functions

Functions for querying libavformat capabilities, allocating core structures, etc. More...

Functions

unsigned avformat_version (void)
 Return the LIBAVFORMAT_VERSION_INT constant. More...
 
const char * avformat_configuration (void)
 Return the libavformat build-time configuration. More...
 
const char * avformat_license (void)
 Return the libavformat license. More...
 
void av_register_all (void)
 Initialize libavformat and register all the muxers, demuxers and protocols. More...
 
void av_register_input_format (AVInputFormat *format)
 
void av_register_output_format (AVOutputFormat *format)
 
int avformat_network_init (void)
 Do global initialization of network components. More...
 
int avformat_network_deinit (void)
 Undo the initialization done by avformat_network_init. More...
 
AVInputFormatav_iformat_next (const AVInputFormat *f)
 If f is NULL, returns the first registered input format, if f is non-NULL, returns the next registered input format after f or NULL if f is the last one. More...
 
AVOutputFormatav_oformat_next (const AVOutputFormat *f)
 If f is NULL, returns the first registered output format, if f is non-NULL, returns the next registered output format after f or NULL if f is the last one. More...
 
AVFormatContextavformat_alloc_context (void)
 Allocate an AVFormatContext. More...
 
void avformat_free_context (AVFormatContext *s)
 Free an AVFormatContext and all its streams. More...
 
const AVClassavformat_get_class (void)
 Get the AVClass for AVFormatContext. More...
 
AVStreamavformat_new_stream (AVFormatContext *s, const AVCodec *c)
 Add a new stream to a media file. More...
 
int av_stream_add_side_data (AVStream *st, enum AVPacketSideDataType type, uint8_t *data, size_t size)
 Wrap an existing array as stream side data. More...
 
uint8_tav_stream_new_side_data (AVStream *stream, enum AVPacketSideDataType type, int size)
 Allocate new information from stream. More...
 
uint8_tav_stream_get_side_data (const AVStream *stream, enum AVPacketSideDataType type, int *size)
 Get side information from stream. More...
 
AVProgramav_new_program (AVFormatContext *s, int id)
 

Detailed Description

Functions for querying libavformat capabilities, allocating core structures, etc.

Function Documentation

unsigned avformat_version ( void  )

Return the LIBAVFORMAT_VERSION_INT constant.

Definition at line 63 of file utils.c.

const char* avformat_configuration ( void  )

Return the libavformat build-time configuration.

Definition at line 69 of file utils.c.

const char* avformat_license ( void  )

Return the libavformat license.

Definition at line 74 of file utils.c.

void av_register_all ( void  )

Initialize libavformat and register all the muxers, demuxers and protocols.

If you do not call this function, then you can select exactly which formats you want to support.

See Also
av_register_input_format()
av_register_output_format()

Definition at line 385 of file allformats.c.

Referenced by AVCodecInitialize(), ff_load_image(), main(), and movie_common_init().

void av_register_input_format ( AVInputFormat format)

Definition at line 61 of file format.c.

void av_register_output_format ( AVOutputFormat format)

Definition at line 73 of file format.c.

Referenced by main().

int avformat_network_init ( void  )

Do global initialization of network components.

This is optional, but recommended, since it avoids the overhead of implicitly doing the setup for each session.

Calling this function will become mandatory if using network protocols at some major version bump.

Examples:
http_multiclient.c.

Definition at line 4712 of file utils.c.

Referenced by main().

int avformat_network_deinit ( void  )

Undo the initialization done by avformat_network_init.

Definition at line 4725 of file utils.c.

Referenced by do_exit(), ffmpeg_cleanup(), and main().

AVInputFormat* av_iformat_next ( const AVInputFormat f)

If f is NULL, returns the first registered input format, if f is non-NULL, returns the next registered input format after f or NULL if f is the last one.

Definition at line 45 of file format.c.

Referenced by av_find_input_format(), av_probe_input_format3(), device_next(), ff_img_read_header(), format_child_class_next(), print_times(), probe(), show_format_opts(), and show_formats_devices().

AVOutputFormat* av_oformat_next ( const AVOutputFormat f)

If f is NULL, returns the first registered output format, if f is non-NULL, returns the next registered output format after f or NULL if f is the last one.

Definition at line 53 of file format.c.

Referenced by av_guess_format(), device_next(), format_child_class_next(), show_format_opts(), and show_formats_devices().

AVFormatContext* avformat_alloc_context ( void  )
void avformat_free_context ( AVFormatContext s)
const AVClass* avformat_get_class ( void  )

Get the AVClass for AVFormatContext.

It can be used in combination with AV_OPT_SEARCH_FAKE_OBJ for examining options.

See Also
av_opt_find().

Definition at line 168 of file options.c.

Referenced by open_input_file(), open_output_file(), opt_default(), show_format_opts(), and show_help_default().

AVStream* avformat_new_stream ( AVFormatContext s,
const AVCodec c 
)

Add a new stream to a media file.

When demuxing, it is called by the demuxer in read_header(). If the flag AVFMTCTX_NOHEADER is set in s.ctx_flags, then it may also be called in read_packet().

When muxing, should be called by the user before avformat_write_header().

User is required to call avcodec_close() and avformat_free_context() to clean up the allocation by avformat_new_stream().

Parameters
smedia file handle
cIf non-NULL, the AVCodecContext corresponding to the new stream will be initialized to use this codec. This is needed for e.g. codec-specific defaults to be set, so codec should be provided if it is known.
Returns
newly created stream or NULL on error.
Examples:
muxing.c, remuxing.c, transcode_aac.c, and transcoding.c.

Definition at line 4231 of file utils.c.

Referenced by aa_read_header(), acm_read_header(), add_dstream(), add_stream(), adp_read_header(), ads_read_header(), adts_aac_read_header(), adx_read_header(), aea_read_header(), afc_read_header(), aiff_read_header(), aix_read_header(), amr_read_header(), apc_read_header(), ape_read_header(), ape_tag_read_field(), apng_read_header(), aqt_read_header(), asf_read_picture(), asf_read_stream_properties(), ass_read_header(), ast_read_header(), audio_read_header(), avi_read_header(), avisynth_create_stream(), avpriv_dv_init_demux(), avr_read_header(), avs_read_packet(), bfi_read_header(), bmv_read_header(), build_feed_streams(), cdata_read_header(), cdxl_read_packet(), cin_read_header(), cine_read_header(), concat_read_header(), create_audio_stream(), create_new_audio_stream(), create_stream(), create_subcc_streams(), dash_init(), daud_header(), dc1394_read_common(), dcstr_read_header(), decode_main_header(), dfa_read_header(), dsf_read_header(), dshow_add_device(), dss_read_header(), dtshd_read_header(), dv_extract_audio_info(), dxa_read_header(), ea_read_header(), epaf_read_header(), fbdev_read_header(), ff_decklink_read_header(), ff_flac_parse_picture(), ff_id3v2_parse_apic(), ff_img_read_header(), ff_raw_audio_read_header(), ff_raw_data_read_header(), ff_raw_video_read_header(), ff_rtp_chain_mux_open(), ff_spdif_read_packet(), ffm2_read_header(), ffm_read_header(), fifo_mux_init(), film_read_header(), flac_read_header(), flic_read_header(), frm_read_header(), fsb_read_header(), g722_read_header(), g723_1_init(), g729_read_header(), gdigrab_read_header(), genh_read_header(), get_attachment(), get_audio_config(), get_sindex(), get_video_config(), gif_read_header(), grab_read_header(), gsm_read_header(), hds_write_header(), hls_mux_init(), hnm_read_header(), http_prepare_data(), idcin_read_header(), iec61883_read_header(), iff_read_header(), ilbc_read_header(), init_audio(), init_fps(), init_stream(), init_video_stream(), initialize_fifo_tst_muxer_chain(), ipmovie_read_header(), ircam_read_header(), ism_write_header(), iss_read_header(), ivr_read_header(), jacosub_read_header(), lavfi_read_header(), lmlm4_read_header(), loas_read_header(), lrc_read_header(), lvf_read_header(), lxf_read_header(), main(), match_streams_one_to_one(), matroska_parse_tracks(), matroska_read_header(), microdvd_read_header(), mmf_read_header(), modplug_read_header(), mov_read_covr(), mov_read_trak(), mp3_read_header(), mpc8_read_header(), mpc_read_header(), mpegps_read_packet(), mpegts_init(), mpegts_push_data(), mpegts_read_header(), mpegts_set_stream_info(), mpjpeg_read_header(), mpl2_read_header(), mpsub_read_header(), msf_read_header(), msnwc_tcp_read_header(), mtaf_read_header(), mtv_read_header(), musx_read_header(), mv_read_header(), mxf_add_metadata_stream(), mxf_parse_structural_metadata(), mxg_read_header(), nc_read_header(), new_output_stream(), new_stream(), nist_read_header(), nsv_parse_NSVs_header(), nut_read_header(), nuv_header(), ogg_new_stream(), oma_read_header(), open_output_file(), open_slave(), parse_strk(), parse_vtrk(), pcm_read_header(), pjs_read_header(), pmp_header(), pmt_cb(), prepare_sdp_description(), pulse_read_header(), pva_read_header(), pvf_read_header(), qcp_read_header(), qtkit_read_header(), r3d_read_red1(), r3d_read_reda(), rawvideo_read_header(), read_desc_chunk(), read_frame(), read_header(), read_header_gme(), read_header_openmpt(), read_packet(), realtext_read_header(), redspark_read_header(), rl2_read_header(), rm_read_header(), rm_read_header_old(), rm_read_multi(), roq_read_packet(), rpl_read_header(), rsd_read_header(), rso_read_header(), rtp_mpegts_write_header(), rtp_new_av_stream(), sami_read_header(), sap_fetch_packet(), sap_read_header(), sbg_read_header(), scc_read_header(), sdr2_read_header(), sds_read_header(), sdx_read_header(), segment_mux_init(), seq_read_header(), siff_parse_vbv1(), smacker_read_header(), smjpeg_read_header(), smush_read_header(), sol_read_header(), sox_read_header(), srt_read_header(), stl_read_header(), str_read_packet(), subviewer1_read_header(), subviewer_read_header(), sup_read_header(), svag_read_header(), swf_read_packet(), tak_read_header(), tedcaptions_read_header(), thp_read_header(), threedostr_read_header(), tmv_read_header(), tta_read_header(), txd_read_header(), update_streams_from_subdemuxer(), v210_read_header(), v4l2_read_header(), vag_read_header(), vc1t_read_header(), vfw_read_header(), vid_read_packet(), vivo_read_header(), vmd_read_header(), voc_read_packet(), vpk_read_header(), vplayer_read_header(), vqf_read_header(), wc3_read_header(), webvtt_read_header(), write_packet(), wsaud_read_header(), wsd_read_header(), wsvqa_read_header(), wsvqa_read_packet(), wv_read_header(), wve_read_header(), xa_read_header(), xmv_process_packet_header(), xvag_read_header(), xwma_read_header(), yop_read_header(), and yuv4_read_header().

int av_stream_add_side_data ( AVStream st,
enum AVPacketSideDataType  type,
uint8_t data,
size_t  size 
)

Wrap an existing array as stream side data.

Parameters
ststream
typeside information type
datathe side data array. It must be allocated with the av_malloc() family of functions. The ownership of the data is transferred to st.
sizeside information size
Returns
zero on success, a negative AVERROR code on failure. On failure, the stream is unchanged and the data remains owned by the caller.

Definition at line 5134 of file utils.c.

Referenced by av_stream_new_side_data(), ff_mkv_stereo3d_conv(), mkv_parse_video_projection(), and mov_read_header().

uint8_t* av_stream_new_side_data ( AVStream stream,
enum AVPacketSideDataType  type,
int  size 
)

Allocate new information from stream.

Parameters
streamstream
typedesired side information type
sizeside information size
Returns
pointer to fresh allocated data or NULL otherwise

Definition at line 5170 of file utils.c.

Referenced by ff_replaygain_export_raw(), init_output_stream(), mkv_parse_video_color(), mov_read_dac3(), and mov_read_dec3().

uint8_t* av_stream_get_side_data ( const AVStream stream,
enum AVPacketSideDataType  type,
int size 
)

Get side information from stream.

Parameters
streamstream
typedesired side information type
sizepointer for side information size to store (optional)
Returns
pointer to data if present or NULL otherwise

Definition at line 5118 of file utils.c.

Referenced by get_rotation(), mkv_write_video_color(), mkv_write_video_projection(), mov_write_esds_tag(), mov_write_isml_manifest(), mov_write_moov_tag(), mov_write_tkhd_tag(), mov_write_video_tag(), mp3_update_xing(), and mpeg_mux_init().

AVProgram* av_new_program ( AVFormatContext s,
int  id 
)

Definition at line 4330 of file utils.c.

Referenced by hls_read_header(), open_output_file(), pat_cb(), and sdt_cb().