Libav
Macros | Functions
Memory Management

Macros

#define DECLARE_ALIGNED(n, t, v)   t v
 
#define DECLARE_ASM_CONST(n, t, v)   static const t v
 
#define av_malloc_attrib
 
#define av_alloc_size(...)
 

Functions

voidav_malloc (size_t size) av_malloc_attrib 1(1)
 Allocate a block of size bytes with alignment suitable for all memory accesses (including vectors if available on the CPU). More...
 
static voidav_malloc_array (size_t nmemb, size_t size)
 
voidav_realloc (void *ptr, size_t size) 1(2)
 Allocate or reallocate a block of memory. More...
 
int av_reallocp (void *ptr, size_t size)
 Allocate or reallocate a block of memory. More...
 
voidav_realloc_array (void *ptr, size_t nmemb, size_t size)
 
int av_reallocp_array (void *ptr, size_t nmemb, size_t size)
 
void av_free (void *ptr)
 Free a memory block which has been allocated with av_malloc(z)() or av_realloc(). More...
 
voidav_mallocz (size_t size) av_malloc_attrib 1(1)
 Allocate a block of size bytes with alignment suitable for all memory accesses (including vectors if available on the CPU) and zero all the bytes of the block. More...
 
static voidav_mallocz_array (size_t nmemb, size_t size)
 
char * av_strdup (const char *s) av_malloc_attrib
 Duplicate the string s. More...
 
char * av_strndup (const char *s, size_t len) av_malloc_attrib
 Duplicate a substring of the string s. More...
 
void av_freep (void *ptr)
 Free a memory block which has been allocated with av_malloc(z)() or av_realloc() and set the pointer pointing to it to NULL. More...
 
void av_memcpy_backptr (uint8_t *dst, int back, int cnt)
 deliberately overlapping memcpy implementation More...
 
voidav_fast_realloc (void *ptr, unsigned int *size, size_t min_size)
 Reallocate the given block if it is not large enough, otherwise do nothing. More...
 
void av_fast_malloc (void *ptr, unsigned int *size, size_t min_size)
 Allocate a buffer, reusing the given one if large enough. More...
 

Detailed Description

Macro Definition Documentation

#define DECLARE_ALIGNED (   n,
  t,
 
)    t v
#define DECLARE_ASM_CONST (   n,
  t,
 
)    static const t v

Definition at line 59 of file mem.h.

#define av_malloc_attrib

Definition at line 65 of file mem.h.

#define av_alloc_size (   ...)

Definition at line 71 of file mem.h.

Function Documentation

void* av_malloc ( size_t  size)

Allocate a block of size bytes with alignment suitable for all memory accesses (including vectors if available on the CPU).

Parameters
sizeSize in bytes for the memory block to be allocated.
Returns
Pointer to the allocated block, NULL if the block cannot be allocated.
See also
av_mallocz()

Definition at line 62 of file mem.c.

Referenced by a64multi_encode_init(), add_metadata(), adpcm_encode_init(), aic_decode_init(), alloc_scratch_buffers(), allocate_frame_buffers(), allocate_tables(), apc_read_header(), ape_read_header(), ape_tag_read_field(), append_entry(), apply_color_indexing_transform(), asf_read_picture(), asf_write_header(), ass_decode_init(), ass_encode_init(), audio_encode_example(), av_buffer_alloc(), av_d2str(), av_expr_parse(), av_fast_malloc(), av_fft_init(), av_fifo_alloc(), av_file_map(), av_frame_new_side_data(), av_frame_ref(), av_get_token(), av_image_alloc(), av_malloc_array(), av_mallocz(), av_opt_get(), av_opt_set_bin(), av_packet_new_side_data(), av_parser_change(), av_realloc(), av_samples_alloc(), avcodec_alloc_context3(), avfilter_ref_buffer(), avformat_alloc_context(), avi_read_header(), avi_read_tag(), avi_write_packet(), avresample_set_matrix(), bfi_read_header(), build_filter(), calc_rice_params(), celt_header(), check_dcbzl_effect(), cmdutils_read_file(), cng_encode_init(), config_input(), config_output(), config_props(), copy_parameter_set(), create_cel_evals(), create_map(), create_vorbis_context(), decode_dvd_subtitles(), decode_frame(), decode_header_trees(), decode_init(), decode_main_header(), decode_picture_header(), decode_rle(), deinterlace_bottom_field_inplace(), denoise_depth(), dnxhd_encode_init(), do_subtitle_out(), dump_extradata(), dvbsub_display_end_segment(), dvbsub_parse_clut_segment(), dvbsub_parse_init(), dvbsub_parse_region_segment(), dvdsub_init(), dvdsub_parse(), ebml_read_ascii(), eightsvx_decode_frame(), encode_frame(), encode_init(), encode_picture_ls(), escape130_decode_init(), Faac_encode_init(), fdk_aac_decode_frame(), ff_ac3_float_mdct_init(), ff_af_queue_add(), ff_alsa_open(), ff_ass_add_rect(), ff_audio_data_realloc(), ff_bgmc_init(), ff_ccitt_unpack(), ff_celt_imdct_init(), ff_dct_init(), ff_do_elbg(), ff_fft_init(), ff_fill_line_with_color(), ff_filter_alloc(), ff_flac_parse_picture(), ff_frame_thread_init(), ff_gen_syncpoint_search(), ff_get_buffer(), ff_http_auth_create_response(), ff_huffyuv_alloc_temp(), ff_init_elbg(), ff_init_rl(), ff_init_vlc_sparse(), ff_jpeg2000_dwt_init(), ff_make_format_list(), ff_mdct_init(), ff_mjpeg_decode_sof(), ff_mjpeg_encode_init(), ff_mov_write_packet(), ff_mpv_common_frame_size_change(), ff_mpv_common_init(), ff_mss12_decode_init(), ff_parse_fmtp(), ff_parse_mpeg2_descriptor(), ff_psy_init(), ff_read_riff_info(), ff_rtmp_packet_create(), ff_rv34_decode_frame(), ff_sauce_read(), ff_sndio_open(), ff_store_parser_state(), ff_tempfile(), ff_tls_init(), ff_urldecode(), ff_vc1_decode_init_alloc_tables(), ff_vda_create_decoder(), ff_vda_default_init(), ff_vorbis_comment(), ffio_fdopen(), ffio_set_buf_size(), fft_ref_init(), ffurl_get_multi_file_handle(), ffv1_allocate_initial_states(), ffv1_init_slice_contexts(), ffv1_init_slice_state(), film_read_header(), film_read_packet(), find_and_decode_index(), find_headers_search_validate(), find_next_parse_unit(), find_smallest_bounding_rectangle(), flac_encode_init(), flac_header(), flac_write_block_comment(), flac_write_packet(), flashsv_decode_frame(), flic_read_header(), flv_set_video_codec(), fourxm_read_header(), frame_list_add_frame(), generate_codebook(), generate_dither_noise(), generate_new_codebooks(), get_codec_data(), get_meta(), get_metadata(), get_stats(), get_tag(), getstr8(), gif_encode_init(), hls_read_header(), hls_write_header(), huff_reader_build_canonical(), idcin_read_header(), iff_read_header(), imx_dump_header(), init(), init_bundles(), init_coef_vlc(), init_cook_mlt(), init_er(), init_filter_param(), init_mv_table(), init_pass2(), initFilter(), ivi_init_tiles(), latm_decode_audio_specific_config(), latm_write_packet(), libopus_encode_init(), libschroedinger_decode_frame(), libvorbis_encode_init(), libwebp_encode_frame(), libx265_encode_init(), main(), make_digest_auth(), matroska_decode_buffer(), matroska_parse_tracks(), matroska_read_header(), mjpeg2jpeg_filter(), mjpeg_decode_com(), mjpega_dump_header(), mkv_strip_wavpack(), mmap_init(), mmap_read_frame(), mov2textsub(), mov_create_chapter_track(), mov_create_dvd_sub_decoder_specific_info(), mov_parse_stsd_data(), mov_read_cmov(), mov_read_ctts(), mov_read_dref(), mov_read_ftyp(), mov_read_replaygain(), mov_read_sbgp(), mov_read_stco(), mov_read_stps(), mov_read_stsc(), mov_read_stss(), mov_read_stsz(), mov_read_stts(), mov_read_tkhd(), mov_write_ctts_tag(), mov_write_header(), mov_write_stts_tag(), mp3lame_encode_init(), mpc8_parse_seektable(), mpc_read_header(), mpeg_decode_a53_cc(), mpegts_open_section_filter(), mpegts_set_stream_info(), mpegts_write_header(), mpegts_write_packet_internal(), mss3_decode_init(), mss4_decode_init(), mxf_read_content_storage(), mxf_read_generic_descriptor(), mxf_read_material_package(), mxf_read_primer_pack(), mxf_read_sequence(), mxf_read_source_package(), mxf_read_utf16_string(), mxpeg_decode_mxm(), nal_unit_extract_rbsp(), noise(), nsv_parse_NSVf_header(), ogg_new_buf(), ogg_new_stream(), ogg_read_page(), ogg_save(), open_null_ctx(), open_output_file(), opus_header(), packet_queue_put(), parse_forced_key_frames(), parse_header(), parse_MP4DecConfigDescrTag(), parse_packed_headers(), parse_playlist(), parse_setup_header(), pcm_dvd_decode_init(), pcx_decode_frame(), pic_arrays_init(), piz_uncompress(), precalc_coefs(), print_sdp(), put_flac_codecpriv(), queue_frames(), r3d_read_rdvo(), radix_sort(), read_frame(), read_geobtag(), read_header(), read_shape_from_file(), read_specific_config(), ready_codebook(), rl2_read_header(), rm_write_audio(), roq_dpcm_encode_init(), roq_encode_init(), rtmp_calc_swfhash(), rtmp_open(), rtp_get_multi_file_handle(), rtp_parse_mp4_au(), rtp_write_header(), rv34_decoder_alloc(), sample_queue_retain(), sdp_parse_fmtp_config_h264(), seq_init_frame_buffers(), set_string_binary(), shift_data(), smacker_read_header(), smjpeg_read_header(), smush_read_header(), sox_read_header(), spdif_write_header(), speex_header(), start_jack(), submit_stats(), svq1_decode_frame(), svq1_encode_frame(), svq3_decode_init(), svq3_parse_packet(), sws_allocVec(), sws_getDefaultFilter(), sws_init_context(), tak_read_header(), text2movsub(), tgv_decode_frame(), tiff_unpack_fax(), tm2_build_huff_table(), transcode_init(), tscc2_decode_init(), tta_decode_init(), unescape(), unpack_codebook(), unrefcount_frame(), update_size(), utvideo_encode_init(), var_read_string(), vble_decode_init(), vc1t_read_header(), vdpau_get_buffer(), vfw_read_header(), vid_read_packet(), video_audio_display(), vmd_read_header(), vmdvideo_decode_init(), vorbis_parse_id_hdr(), vorbis_parse_setup_hdr_codebooks(), vorbis_parse_setup_hdr_floors(), vorbis_parse_setup_hdr_residues(), vp56_size_changed(), vp8_encode(), vqa_decode_init(), vqf_read_header(), wc3_read_header(), write_extradata(), write_manifest(), wtvfile_open_sector(), X264_init(), xan_decode_init(), XAVS_init(), xiph_handle_packet(), xiph_parse_fmtp_pair(), xmv_process_packet_header(), xmv_read_header(), xvid_encode_init(), xvid_strip_vol_header(), and xwma_read_header().

static void* av_malloc_array ( size_t  nmemb,
size_t  size 
)
inlinestatic

Definition at line 92 of file mem.h.

Referenced by ff_hevc_decode_nal_pps(), ff_jpeg2000_init_component(), init(), and ljpeg_encode_init().

void* av_realloc ( void ptr,
size_t  size 
)

Allocate or reallocate a block of memory.

If ptr is NULL and size > 0, allocate a new block. If size is zero, free the memory block pointed to by ptr.

Parameters
ptrPointer to a memory block already allocated with av_realloc() or NULL.
sizeSize in bytes of the memory block to be allocated or reallocated.
Returns
Pointer to a newly-reallocated block or NULL if the block cannot be reallocated or the function is used to free the memory block.
Warning
Pointers originating from the av_malloc() family of functions must not be passed to av_realloc(). The former can be implemented using memalign() (or other functions), and there is no guarantee that pointers from such functions can be passed to realloc() at all. The situation is undefined according to POSIX and may crash with some libc implementations.
See also
av_fast_realloc()

Definition at line 117 of file mem.c.

Referenced by audio_decode_frame(), av_buffer_realloc(), av_dict_set(), av_fast_realloc(), av_frame_new_side_data(), av_packet_new_side_data(), av_realloc_array(), av_reallocp(), av_reallocp_array(), av_strdup(), av_strndup(), avfilter_graph_add_filter(), avfilter_graph_alloc_filter(), cat_header(), concat_open(), copy_chapters(), decode_frame(), decode_header(), dtext_prepare_text(), ff_alsa_extend_reorder_buf(), ff_ass_add_rect(), ff_dynarray_add(), ff_insert_pad(), ffio_rewind_with_probe_data(), grow_array(), handle_file(), huf_build_dec_table(), main(), matroska_decode_buffer(), matroska_deliver_packet(), matroska_parse_wavpack(), mov_read_trun(), new_video_stream(), ogg_new_stream(), probe_group_enter(), qt_rtp_parse_packet(), tgv_decode_inter(), tm2_read_stream(), update_context_from_user(), vc1_decode_frame(), vp56_size_changed(), and xan_decode_frame().

int av_reallocp ( void ptr,
size_t  size 
)

Allocate or reallocate a block of memory.

If *ptr is NULL and size > 0, allocate a new block. If size is zero, free the memory block pointed to by ptr.

Parameters
ptrPointer to a pointer to a memory block already allocated with av_realloc(), or pointer to a pointer to NULL. The pointer is updated on success, or freed on failure.
sizeSize in bytes for the memory block to be allocated or reallocated
Returns
Zero on success, an AVERROR error code on failure.
Warning
Pointers originating from the av_malloc() family of functions must not be passed to av_reallocp(). The former can be implemented using memalign() (or other functions), and there is no guarantee that pointers from such functions can be passed to realloc() at all. The situation is undefined according to POSIX and may crash with some libc implementations.

Definition at line 140 of file mem.c.

Referenced by add_fragment(), add_tracked_method(), alloc_and_copy(), alloc_table(), allocate_buffers(), append_flv_data(), asfrtp_parse_packet(), av_probe_input_buffer(), avi_read_header(), avi_write_packet(), bmv_read_packet(), concat_open(), concatenate_packet(), decode_frame(), dyn_buf_write(), fixup_vorbis_headers(), flashsv_decode_frame(), g2m_load_cursor(), get_tcp_server_response(), h264_extradata_to_annexb(), handle_metadata(), jpg_decode_data(), libschroedinger_encode_frame(), mov_read_extradata(), parse_icy(), probe_codec(), qt_rtp_parse_packet(), queue_frames(), rdt_parse_sdp_line(), realloc_buffer(), rtmp_http_write(), rtmp_open(), sample_queue_push(), smacker_read_packet(), tgv_decode_inter(), theora_header(), and vpx_init().

void* av_realloc_array ( void ptr,
size_t  nmemb,
size_t  size 
)
int av_reallocp_array ( void ptr,
size_t  nmemb,
size_t  size 
)
void av_free ( void ptr)

Free a memory block which has been allocated with av_malloc(z)() or av_realloc().

Parameters
ptrPointer to the memory block which should be freed.
Note
ptr = NULL is explicitly allowed.
It is recommended that you use av_freep() instead.
See also
av_freep()

Definition at line 186 of file mem.c.

Referenced by a64multi_close_encoder(), aac_decode_frame(), add_pes_stream(), adpcm_encode_frame(), amr_free_context(), ape_tag_read_field(), append_entry(), apply_color_indexing_transform(), asf_write_trailer(), asfrtp_free_context(), asfrtp_parse_packet(), atrac3_decode_close(), atrac3p_decode_close(), audio_decode_example(), audio_encode_example(), av_audio_fifo_free(), av_bitstream_filter_close(), av_buffer_default_free(), av_destruct_packet(), av_dict_free(), av_dict_set(), av_dump_format(), av_expr_parse(), av_fast_malloc(), av_fft_end(), av_fifo_free(), av_fifo_realloc2(), av_file_unmap(), av_freep(), av_hmac_alloc(), av_hmac_free(), av_image_alloc(), av_opt_set_bin(), av_packet_free_side_data(), av_parser_close(), av_parser_init(), av_probe_input_buffer(), av_samples_alloc(), av_tree_destroy(), avcodec_alloc_context3(), avcodec_fill_audio_frame(), avconv_cleanup(), avfilter_free(), avfilter_get_video_buffer_ref_from_arrays(), avfilter_ref_buffer(), avfilter_unref_buffer(), avformat_free_context(), avformat_new_stream(), avi_read_close(), avi_write_trailer(), avio_close(), avio_close_dyn_buf(), avpicture_free(), avpriv_dv_init_demux(), bfi_decode_close(), build_filter(), cdxl_decode_end(), celt_header(), channelmap_filter_frame(), check_dcbzl_effect(), check_stream_max_drift(), cinvideo_decode_end(), close(), close_null_ctx(), cmdutils_read_file(), cng_decode_close(), cng_encode_close(), compat_free_buffer(), concat_open(), cook_decode_close(), decode_end(), decode_frame(), deinterlace_bottom_field_inplace(), delete_region_display_list(), delete_state(), dilate_init(), dirac_parse_close(), dnxhd_encode_end(), do_adobe_auth(), do_llnw_auth(), doTest(), dv1394_close(), dv_read_close(), dvbsub_close_decoder(), dvbsub_parse_page_segment(), dvbsub_parse_region_segment(), dvdsub_init(), dxva2_get_buffer(), dxva2_release_buffer(), ebml_free(), ebml_read_ascii(), ebml_read_binary(), encode_close(), encode_end(), encode_frame(), encode_picture_ls(), enu_free(), escape124_decode_close(), escape124_decode_frame(), fdk_aac_decode_frame(), ff_audio_data_alloc(), ff_audio_data_free(), ff_audio_mix_alloc(), ff_audio_mix_free(), ff_audio_mix_set_matrix(), ff_audio_resample_free(), ff_audio_resample_init(), ff_avfilter_default_free_buffer(), ff_cavs_end(), ff_ccitt_unpack(), ff_dct_end(), ff_dct_init(), ff_dither_free(), ff_do_elbg(), ff_filter_alloc(), ff_free_parser_state(), ff_gen_syncpoint_search(), ff_get_wav_header(), ff_h264_decode_picture_parameter_set(), ff_h264_decode_seq_parameter_set(), ff_hevc_annexb2mp4(), ff_http_auth_create_response(), ff_http_do_new_request(), ff_http_match_no_proxy(), ff_iir_filter_free_coeffs(), ff_iir_filter_free_state(), ff_init_elbg(), ff_init_vlc_sparse(), ff_interleave_add_packet(), ff_isom_write_avcc(), ff_isom_write_hvcc(), ff_jpegls_decode_picture(), ff_mjpeg_decode_end(), ff_mjpeg_encode_close(), ff_mov_add_hinted_packet(), ff_mov_close_hinting(), ff_mov_write_packet(), ff_mp4_read_dec_config_descr(), ff_mpegts_parse_close(), ff_nut_add_sp(), ff_parse_fmtp(), ff_png_zfree(), ff_psy_preprocess_end(), ff_rdt_parse_close(), ff_read_packet(), ff_read_riff_info(), ff_restore_parser_state(), ff_rtmp_calc_digest(), ff_rtp_chain_mux_open(), ff_rtp_check_and_send_back_rr(), ff_rtp_parse_close(), ff_rtp_reset_packet_queue(), ff_rtp_send_punch_packets(), ff_rtp_send_rtcp_feedback(), ff_rtsp_close_streams(), ff_rtsp_setup_output_streams(), ff_rtsp_tcp_write_packet(), ff_rtsp_undo_setup(), ff_slice_thread_free(), ff_slice_thread_init(), ff_store_parser_state(), ff_tls_deinit(), ff_twinvq_decode_close(), ff_wma_end(), ff_wms_parse_sdp_a_line(), ff_yuv2rgb_c_init_tables(), ffio_close_null_buf(), ffio_fdopen(), ffio_rewind_with_probe_data(), ffio_set_buf_size(), ffurl_close(), film_read_packet(), find_and_decode_index(), flac_parse(), flac_parse_close(), flashsv_decode_end(), flashsv_encode_end(), flic_read_header(), flv_get_extradata(), flv_queue_extradata(), flv_write_packet(), fourxm_read_header(), frame_list_clear(), frame_list_remove_samples(), free_context(), free_entries(), free_filter_param(), free_fragment_if_needed(), free_frame_if_needed(), free_geobtag(), free_packet_list(), free_segment_list(), free_tracked_methods(), free_variant_list(), g2m_init_buffers(), generate_codebook(), generate_new_codebooks(), get_generic_seed(), get_metadata(), get_private_data(), get_tag(), gif_write_header(), glyph_enu_free(), h263_free_context(), h263_handle_packet(), h264_extradata_to_annexb(), h264_free_context(), handle_file(), handle_invoke_error(), handle_invoke_result(), hds_flush(), hds_free(), hls_write_header(), hls_write_trailer(), huf_uncompress(), huff_reader_build_canonical(), hvcc_add_nal_unit(), icecast_open(), id3v2_parse(), image_ctx_free(), init_coef_vlc(), init_cook_mlt(), init_pass2(), initFilter(), ism_flush(), ism_free(), jpeg_free_context(), latm_decode_audio_specific_config(), latm_free_context(), latm_parse_packet(), latm_write_packet(), libschroedinger_decode_frame(), libschroedinger_free_frame(), link_filter_inouts(), m4sl_cb(), main(), make_digest_auth(), matroska_clear_queue(), matroska_decode_buffer(), matroska_deliver_packet(), matroska_merge_packets(), matroska_parse_block(), matroska_parse_frame(), matroska_parse_tracks(), matroska_read_close(), mimic_decode_end(), mjpeg_decode_com(), mkv_flush_dynbuf(), mkv_write_block(), mkv_write_codecprivate(), mkv_write_seekhead(), mkv_write_trailer(), mmap_close(), mmap_init(), mmap_release_buffer(), mms_close(), mmsh_close(), mov_flush_fragment(), mov_free(), mov_read_cmov(), mov_read_dref(), mov_read_dvc1(), mov_read_glbl(), mov_read_packet(), mov_read_smi(), mov_read_strf(), mov_read_stsz(), mov_read_stts(), mov_read_wave(), mov_write_ctts_tag(), mov_write_dvc1_structs(), mov_write_isml_manifest(), mov_write_stts_tag(), mov_write_track_udta_tag(), mov_write_udta_tag(), mpc8_parse_seektable(), mpeg_mux_init(), mpegts_add_service(), mpegts_close_filter(), mpegts_free_context(), mpegts_open_section_filter(), mpegts_set_stream_info(), mpegts_write_end(), mpegts_write_header(), mpegts_write_packet_internal(), mxf_compute_index_tables(), mxf_get_sorted_table_segments(), mxf_read_generic_descriptor(), mxf_read_local_tags(), new_output_stream(), nsv_parse_NSVf_header(), ogg_new_buf(), ogg_read_close(), ogg_read_page(), ogg_restore(), ogg_write_page(), ogg_write_trailer(), ogm_chapter(), open_null_ctx(), opt_channel_layout(), opt_vstats_file(), packet_queue_get(), parse_filter(), parse_fmtp_config(), parse_inputs(), parse_key_value_pair(), parse_location(), parse_outputs(), parse_playlist(), parse_setup_header(), parse_video_var(), pcx_decode_frame(), piz_uncompress(), pmt_cb(), process_line(), put_packet(), qcelp_free_context(), qdm2_extradata_free(), qt_rtp_free(), qt_rtp_parse_packet(), qtrle_encode_end(), radix_sort(), rdt_free_context(), rdt_new_context(), read_close(), read_frame(), read_geobtag(), read_huffman_code_normal(), read_shape_from_file(), read_tag(), rl2_decode_end(), rl2_read_header(), rm_write_audio(), roq_encode_end(), roq_encode_video(), rtmp_open(), rtp_close(), rtp_parse_mp4_au(), rtp_parse_queued_packet(), sample_queue_free(), sample_queue_pop(), sap_write_header(), sdp_parse_fmtp_config_h264(), sdt_cb(), seq_read_close(), set_params(), set_string_binary(), shift_data(), smacker_decode_header_tree(), smacker_read_close(), smacker_read_header(), smka_decode_frame(), smush_read_header(), sp5x_decode_frame(), stream_close(), stream_open(), svq1_decode_frame(), svq3_decode_init(), svq3_extradata_free(), svq3_parse_packet(), sws_addVec(), sws_convVec(), sws_freeContext(), sws_freeFilter(), sws_freeVec(), sws_shiftVec(), sws_subVec(), tgv_decode_end(), tiff_unpack_fax(), tm2_build_huff_table(), tm2_free_codes(), tqi_decode_end(), transcode(), truemotion1_decode_end(), tta_decode_close(), uninit(), update_context_from_user(), update_size(), url_open_dyn_buf_internal(), var_read_float(), var_read_int(), vc1_decode_frame(), vc1_decode_init(), vfw_read_close(), vfw_read_header(), vfw_read_packet(), video_audio_display(), video_decode_example(), video_encode_example(), videostream_cb(), vmd_read_close(), vmd_read_header(), vmdvideo_decode_end(), vorbis_free(), vorbis_parse_setup_hdr_codebooks(), vp56_size_changed(), vp8_free_buffer(), vp8_free_context(), write_globalinfo(), write_headers(), write_manifest(), write_streaminfo(), wtvfile_close(), wtvfile_open_sector(), x11grab_read_header(), X264_close(), XAVS_close(), xiph_free_context(), xiph_parse_fmtp_pair(), xmv_process_packet_header(), xmv_read_close(), xvid_encode_close(), and xwma_read_header().

void* av_mallocz ( size_t  size)

Allocate a block of size bytes with alignment suitable for all memory accesses (including vectors if available on the CPU) and zero all the bytes of the block.

Parameters
sizeSize in bytes for the memory block to be allocated.
Returns
Pointer to the allocated block, NULL if it cannot be allocated.
See also
av_malloc()

Definition at line 205 of file mem.c.

Referenced by a64multi_encode_init(), aac_adtstoasc_filter(), aac_decode_frame(), aac_encode_init(), add_fragment(), add_input_streams(), add_pes_stream(), add_to_pktbuf(), add_to_queue(), adx_read_header(), aiff_read_header(), alac_encode_init(), alloc_scratch_buffers(), amr_new_context(), asf_read_stream_properties(), asfrtp_new_context(), atrac3_decode_init(), atrac3p_decode_init(), audio_get_buffer(), av_aes_alloc(), av_audio_fifo_alloc(), av_bitstream_filter_init(), av_buffer_create(), av_buffer_pool_init(), av_buffer_ref(), av_buffersrc_buffer(), av_dict_set(), av_dump_format(), av_fifo_alloc(), av_frame_alloc(), av_frame_new_side_data(), av_frame_ref(), av_hmac_alloc(), av_mallocz_array(), av_md5_alloc(), av_new_program(), av_parser_init(), av_sha_alloc(), av_stereo3d_alloc(), av_tree_node_alloc(), av_vdpau_alloc_context(), avcodec_fill_audio_frame(), avcodec_get_context_defaults3(), avcodec_open2(), avfilter_copy_buf_props(), avfilter_get_audio_buffer_ref_from_arrays(), avfilter_get_video_buffer_ref_from_arrays(), avfilter_graph_alloc(), avfilter_inout_alloc(), avfilter_link(), avformat_alloc_context(), avformat_find_stream_info(), avformat_new_stream(), avformat_open_input(), avi_read_header(), avi_write_header(), avio_alloc_context(), avpriv_dv_init_demux(), avpriv_new_chapter(), avresample_alloc_context(), bfi_decode_init(), channelmap_filter_frame(), che_configure(), cinvideo_decode_init(), cng_decode_init(), config_input(), config_output(), configure_filtergraph(), cook_decode_init(), copy_chapters(), decode_dvd_subtitles(), decode_frame(), decode_init(), decode_main_header(), decode_pic(), decode_stream_header(), DEF_CHOOSE_FORMAT(), dfa_decode_init(), display_end_segment(), doTest(), dvbsub_display_end_segment(), dvbsub_parse_display_definition_segment(), dvbsub_parse_page_segment(), dvbsub_parse_region_segment(), dxva2_alloc(), dxva2_create_decoder(), dxva2_get_buffer(), ebml_read_binary(), encode_frame(), encode_init(), encode_picture_ls(), enqueue_packet(), ff_all_channel_layouts(), ff_all_samplerates(), ff_ass_add_rect(), ff_audio_data_alloc(), ff_audio_mix_alloc(), ff_audio_resample_init(), ff_avc_write_annexb_extradata(), ff_cavs_init_top_lines(), ff_celt_imdct_init(), ff_celt_init(), ff_create_schro_frame(), ff_dither_alloc(), ff_filter_alloc(), ff_frame_thread_init(), ff_generate_avci_extradata(), ff_get_buffer(), ff_get_format(), ff_get_wav_header(), ff_graph_thread_init(), ff_h264_decode_picture_parameter_set(), ff_h264_decode_seq_parameter_set(), ff_hevc_decode_nal_pps(), ff_huffyuv_alloc_temp(), ff_iir_filter_init_state(), ff_interleave_add_packet(), ff_intrax8_common_init(), ff_ivi_init_planes(), ff_ivi_init_tiles(), ff_jpegls_decode_picture(), ff_lpc_init(), ff_lzw_decode_open(), ff_make_format_list(), ff_mjpeg_decode_sof(), ff_mp4_read_dec_config_descr(), ff_mpegts_parse_open(), ff_nut_add_sp(), ff_psy_init(), ff_psy_preprocess_init(), ff_rate_control_init(), ff_rdt_parse_open(), ff_replaygain_export_raw(), ff_rm_alloc_rmstream(), ff_rtp_parse_open(), ff_rtsp_setup_output_streams(), ff_schro_queue_push_back(), ff_silk_init(), ff_slice_thread_init(), ff_timefilter_new(), ff_vc1_decode_init_alloc_tables(), ff_wms_parse_sdp_a_line(), ffv1_encode_init(), ffv1_init_slice_contexts(), find_headers_search_validate(), fixup_vorbis_headers(), flac_read_header(), flashsv_encode_frame(), flashsv_encode_init(), flv_get_extradata(), flv_queue_extradata(), flv_write_header(), g2m_init_buffers(), g722_encode_init(), get_attachment(), get_audio_buffer(), get_buffer(), get_http_header_data(), get_private_data(), get_siz(), gif_encode_init(), gxf_write_header(), h263_new_context(), h264_new_context(), h264_slice_header_init(), handle_file(), hds_write_header(), hnm_decode_init(), hnm_read_header(), init(), init_er(), init_input_filter(), init_muxer(), init_parse_context(), ism_write_header(), join_config_output(), join_init(), join_request_frame(), jpeg_new_context(), latm_new_context(), libopenjpeg_create_image(), libopus_encode_init(), libschroedinger_encode_frame(), link_filter_inouts(), load_glyph(), main(), matroska_parse_frame(), matroska_parse_laces(), matroska_parse_rm_audio(), matroska_parse_tracks(), mkv_start_cues(), mkv_start_seekhead(), mkv_write_header(), mmsh_open(), mov_read_chapters(), mov_read_covr(), mov_read_dref(), mov_read_dvc1(), mov_read_glbl(), mov_read_smi(), mov_read_strf(), mov_read_trak(), mov_read_wave(), mov_rewrite_dvd_sub_extradata(), mov_write_dvc1_structs(), mov_write_header(), mp_decode_init(), mpc8_read_header(), mpc_read_header(), mpeg_mux_init(), mpeg_mux_write_packet(), mpegts_add_service(), mpegts_new_context(), mpegts_open_pes_filter(), mpegts_open_section_filter(), mpegts_write_header(), mss2_decode_init(), mxf_compute_ptses_fake_index(), mxf_get_sorted_table_segments(), mxf_parse_structural_metadata(), mxf_read_index_entry_array(), mxf_read_local_tags(), mxf_timestamp_to_str(), mxf_uid_to_str(), mxf_write_header(), mxpeg_decode_mxm(), new_context(), new_eval_expr(), new_output_stream(), new_stream(), new_variant(), new_video_stream(), nsv_parse_NSVf_header(), nsv_parse_NSVs_header(), nut_write_header(), ogg_buffer_page(), ogg_build_flac_headers(), ogg_build_opus_headers(), ogg_build_speex_headers(), ogg_save(), ogg_write_header(), ogg_write_vorbiscomment(), oma_read_header(), open_input_file(), open_output_file(), opt_channel_layout(), opt_filter_complex(), opt_filter_complex_script(), opus_header(), paf_video_init(), parse_fmtp_config(), parse_inputs(), parse_keyframes_index(), parse_primary(), parse_sws_flags(), parse_vtrk(), pic_arrays_init(), pool_alloc_buffer(), psy_3gpp_init(), pthread_cond_init(), put_main_header(), qcelp_new_context(), qdm2_extradata_new(), qdm2_parse_config(), qt_rtp_new(), qt_rtp_parse_packet(), qtrle_encode_init(), rdt_new_context(), rdt_parse_b64buf(), read_apic(), read_geobtag(), read_header(), read_kuki_chunk(), read_shape_from_file(), read_tfra(), ready_codebook(), ready_residue(), rl2_decode_init(), rl2_read_header(), rm_read_extradata(), roq_encode_init(), rtp_parse_addr_list(), rtsp_read_header(), rv34_decoder_alloc(), sap_write_header(), set_encoder_id(), setup_find_stream_info_opts(), smacker_decode_header_tree(), smacker_read_header(), smka_decode_frame(), sp5x_decode_frame(), speex_header(), stream_open(), svq1_encode_init(), svq1_encode_plane(), svq3_decode_init(), svq3_extradata_new(), sws_alloc_context(), theora_header(), thread_init_internal(), tm2_build_huff_table(), transcode_init(), tta_decode_init(), tta_read_header(), update_dimensions(), url_alloc_for_protocol(), url_open_dyn_buf_internal(), utvideo_encode_init(), vc1_decode_frame(), vc1_decode_init(), vda_init(), vdpau_alloc(), videostream_cb(), vmd_read_header(), vorbis_header(), vorbis_parse_id_hdr(), vorbis_parse_setup_hdr_codebooks(), vorbis_parse_setup_hdr_floors(), vorbis_parse_setup_hdr_mappings(), vorbis_parse_setup_hdr_modes(), vorbis_parse_setup_hdr_residues(), vp8_new_context(), wmv2_encode_init(), wsvqa_read_header(), wsvqa_read_packet(), wtvfile_open_sector(), wv_alloc_frame_context(), XAVS_init(), xiph_new_context(), xwma_read_header(), and yop_read_header().

static void* av_mallocz_array ( size_t  nmemb,
size_t  size 
)
inlinestatic
char* av_strdup ( const char *  s)
char* av_strndup ( const char *  s,
size_t  len 
)

Duplicate a substring of the string s.

Parameters
sstring to be duplicated
lenthe maximum length of the resulting string (not counting the terminating byte).
Returns
Pointer to a newly-allocated string containing a copy of s or NULL if the string cannot be allocated.

Definition at line 225 of file mem.c.

Referenced by check_stream_specifier().

void av_freep ( void ptr)

Free a memory block which has been allocated with av_malloc(z)() or av_realloc() and set the pointer pointing to it to NULL.

Parameters
ptrPointer to the pointer to the memory block which should be freed.
See also
av_free()

Definition at line 198 of file mem.c.

Referenced by aac_decode_close(), aac_encode_close(), aac_encode_end(), adpcm_encode_close(), adpcm_encode_init(), adx_read_header(), aic_decode_close(), alac_decode_close(), alac_encode_close(), alloc_scratch_buffers(), ape_decode_close(), ape_read_close(), ape_tag_read_field(), asf_read_picture(), asf_read_stream_properties(), asf_write_header1(), asf_write_markers(), asfrtp_free_context(), asfrtp_parse_packet(), atrac3_decode_init(), audio_encode_example(), audio_get_buffer(), av_bitstream_filter_close(), av_buffer_alloc(), av_buffer_create(), av_buffer_realloc(), av_buffer_unref(), av_dict_free(), av_dict_set(), av_expr_free(), av_fast_padded_malloc(), av_fft_init(), av_fifo_alloc(), av_frame_copy_props(), av_frame_free(), av_frame_new_side_data(), av_frame_unref(), av_opt_free(), av_packet_free_side_data(), av_reallocp(), av_reallocp_array(), av_write_trailer(), avcodec_close(), avcodec_copy_context(), avcodec_free_context(), avcodec_open2(), avconv_cleanup(), avfilter_free(), avfilter_get_audio_buffer_ref_from_arrays(), avfilter_graph_alloc(), avfilter_graph_free(), avfilter_graph_parse(), avfilter_graph_parse2(), avfilter_init_str(), avfilter_inout_free(), avfilter_ref_buffer(), avfilter_unref_buffer(), avformat_find_stream_info(), avformat_free_context(), avi_read_close(), avi_read_header(), avi_write_trailer(), avio_close(), avresample_close(), avresample_free(), avresample_set_matrix(), avsubtitle_free(), bmv_read_close(), buffer_pool_free(), calc_rice_params(), cat_header(), che_configure(), check_stream_specifier(), clean_tracks(), clear_programs(), cllc_decode_close(), color_uninit(), compat_free_buffer(), concat_close(), concat_open(), config_input(), config_output(), config_props(), configure_input_filter(), configure_output_audio_filter(), configure_output_filter(), configure_output_video_filter(), copy_parameter_set(), crypto_close(), dca_decode_end(), decode_close(), decode_dvd_subtitles(), decode_end(), decode_flush(), decode_frame(), decode_init(), decode_picture_header(), decode_slice_header(), decode_str(), decode_thread(), delete_next_frame(), delete_state(), destroy_buffers(), dfa_decode_end(), dnxhd_encode_end(), doTest(), dtext_prepare_text(), dvbsub_parse_close(), dvdsub_parse(), dvdsub_parse_close(), dxva2_destroy_decoder(), dxva2_uninit(), ebml_free(), ebml_read_binary(), eightsvx_decode_close(), eightsvx_decode_frame(), encode_close(), encode_end(), escape130_decode_close(), escape130_decode_init(), estimate_best_b_count(), Faac_encode_close(), ff_ac3_encode_close(), ff_ac3_float_mdct_end(), ff_alsa_close(), ff_audio_data_free(), ff_audio_data_realloc(), ff_audio_mix_alloc(), ff_audio_mix_free(), ff_audio_resample_free(), ff_avc_parse_nal_units_buf(), ff_avfilter_default_free_buffer(), ff_bgmc_end(), ff_cavs_end(), ff_celt_free(), ff_celt_imdct_uninit(), ff_dither_free(), ff_dwt_destroy(), ff_fft_end(), ff_fft_init(), ff_filter_alloc(), ff_flac_parse_picture(), ff_frame_thread_free(), ff_free_vlc(), ff_generate_avci_extradata(), ff_get_buffer(), ff_get_format(), ff_graph_thread_free(), ff_graph_thread_init(), ff_h264_free_context(), ff_h264_free_tables(), ff_h264_update_thread_context(), ff_hevc_decode_nal_pps(), ff_huffyuv_common_end(), ff_id3v2_free_extra_meta(), ff_id3v2_write_apic(), ff_init_vlc_sparse(), ff_interleave_packet_per_dts(), ff_intrax8_common_end(), ff_ivi_init_tiles(), ff_jpeg2000_cleanup(), ff_lpc_end(), ff_lzw_decode_close(), ff_mdct_end(), ff_merge_channel_layouts(), ff_merge_formats(), ff_merge_samplerates(), ff_mjpeg_decode_end(), ff_mjpeg_decode_sof(), ff_mkv_stereo3d_conv(), ff_mms_read_header(), ff_mov_add_hinted_packet(), ff_mov_close_hinting(), ff_mov_init_hinting(), ff_mpv_common_end(), ff_mpv_common_frame_size_change(), ff_mpv_encode_end(), ff_mss12_decode_end(), ff_nut_add_sp(), ff_parse_close(), ff_psy_end(), ff_psy_preprocess_end(), ff_rate_control_uninit(), ff_read_packet(), ff_replaygain_export_raw(), ff_rtmp_packet_destroy(), ff_rtp_finalize_packet(), ff_rtsp_close_streams(), ff_rtsp_setup_input_streams(), ff_schro_queue_pop(), ff_silk_free(), ff_slice_thread_free(), ff_sndio_close(), ff_sndio_open(), ff_srtp_free(), ff_timefilter_destroy(), ff_vaapi_common_end_frame(), ff_vc1_decode_end(), ff_vc1_decode_init_alloc_tables(), ff_vda_create_decoder(), ff_vda_default_init(), ff_vorbis_comment(), ff_vp56_free(), ffv1_close(), fic_decode_close(), film_read_close(), find_smallest_bounding_rectangle(), fixup_vorbis_headers(), flac_decode_close(), flac_encode_close(), flac_parse(), flac_parse_close(), flac_read_header(), flac_write_block_comment(), flac_write_packet(), flac_write_trailer(), flush_cache(), flv_read_close(), flv_read_packet(), fourxm_read_close(), fourxm_read_header(), frame_size_alloc(), free_apic(), free_buffers(), free_bundles(), free_coded_frame(), free_context_frame(), free_duplicate_context(), free_frame_buffers(), free_link(), free_packet_buffer(), free_schro_frame(), free_segment_list(), free_side_data(), free_variant_list(), frei0r_init(), g2m_decode_end(), g722_encode_close(), generate_dither_noise(), get_audio_buffer(), get_codec_data(), get_frame_defaults(), get_http_header_data(), get_tag(), gif_encode_close(), gxf_write_trailer(), h264_mp4toannexb_filter(), handle_file(), hds_free(), hevc_decode_free(), hevc_pps_free(), hnm_decode_end(), hnm_decode_init(), http_close(), http_connect(), huf_uncompress(), hvcc_close(), icecast_open(), id3v2_put_ttag(), init(), init_converted_samples(), init_er(), initFilter(), ism_free(), ivi_free_buffers(), ivi_init_tiles(), join_config_output(), join_uninit(), jpeg2000_dec_cleanup(), jpg_free_context(), lag_decode_end(), latm_parse_packet(), libopenjpeg_create_image(), libopenjpeg_encode_close(), libopenjpeg_encode_init(), libopus_encode_close(), libopus_encode_init(), libschroedinger_decode_buffer_free(), libschroedinger_decode_close(), libschroedinger_encode_close(), libschroedinger_encode_frame(), libschroedinger_free_frame(), libvorbis_encode_close(), libwebp_encode_frame(), ljpeg_encode_close(), load_glyph(), main(), matroska_clear_queue(), matroska_deliver_packet(), matroska_parse_frame(), matroska_parse_wavpack(), md5_close(), mjpega_dump_header(), mkv_strip_wavpack(), mkv_write_simpletag(), mkv_write_trailer(), mmap_read_frame(), mmsh_open(), mov_create_chapter_track(), mov_free(), mov_read_chapters(), mov_read_close(), mov_read_ftyp(), mov_read_replaygain(), mov_read_stss(), mov_read_stsz(), mov_read_tkhd(), mov_read_trak(), mov_rewrite_dvd_sub_extradata(), mp3_queue_flush(), mp3lame_encode_close(), mp_decode_end(), mpc7_decode_close(), mpc_read_close(), mpeg_decode_a53_cc(), mpeg_decode_end(), mpeg_field_start(), mpegts_close_filter(), mpegts_write_end(), mpegts_write_header(), mss2_decode_end(), mss3_decode_end(), mss3_decode_init(), mss4_decode_end(), mxf_compute_ptses_fake_index(), mxf_free(), mxf_get_sorted_table_segments(), mxf_interleave_get_packet(), mxf_read_close(), mxf_read_index_entry_array(), mxf_read_utf16_string(), mxf_write_footer(), mxg_close(), mxpeg_decode_end(), mxpeg_decode_mxm(), new_stream(), nsv_read_close(), nut_read_close(), nut_write_header(), nut_write_trailer(), ogg_read_page(), ogg_write_header(), ogg_write_pages(), ogg_write_trailer(), old_print_object_footer(), old_print_object_header(), open_input_file(), opt_map(), opus_decode_close(), opus_parse(), packet_queue_flush(), paf_video_close(), parse_fmtp_config(), parse_iplconvkernel(), parse_key_value_pair(), parse_keyframes_index(), parse_link_name(), parse_primary(), parse_sws_flags(), pcm_dvd_decode_uninit(), pcm_encode_close(), pic_arrays_free(), pmp_close(), print_sdp(), probe_codec(), process_unnamed_options(), psy_3gpp_end(), pthread_cond_destroy(), put_flac_codecpriv(), put_str16(), qdm2_parse_config(), qt_rtp_free(), qt_rtp_parse_packet(), queue_pop(), r3d_close(), rdt_free_context(), rdt_parse_packet(), read_apic(), read_close(), read_decode_convert_and_store(), read_frame(), read_from_packet_buffer(), read_gab2_sub(), read_header(), read_kuki_chunk(), read_ttag(), remove_decoded_packets(), reset_buffers(), roq_dpcm_encode_close(), rtmp_calc_swfhash(), rtmp_close(), rtmp_http_close(), rtmp_open(), rtp_close(), rtp_write_header(), rtp_write_trailer(), rtsp_read_close(), rv34_decoder_free(), sample_queue_free(), sap_read_close(), sap_write_close(), sap_write_header(), sdp_parse_fmtp_config_h264(), set_string(), set_string_binary(), shorten_decode_close(), show_help(), slice_thread_uninit(), smjpeg_read_header(), sox_read_header(), spdif_write_trailer(), split_uninit(), stop_jack(), stream_component_close(), svq1_decode_end(), svq1_encode_end(), svq3_decode_end(), svq3_decode_init(), svq3_parse_packet(), sws_allocVec(), sws_freeContext(), sws_freeVec(), tak_decode_close(), tak_read_header(), tgv_decode_end(), tgv_decode_frame(), transcode(), tscc2_decode_end(), tta_decode_close(), tta_decode_init(), udp_open(), uninit(), uninit_options(), uninit_parse_context(), url_alloc_for_protocol(), utvideo_encode_close(), v410_encode_close(), vble_decode_close(), vda_h264_uninit(), vda_uninit(), vdpau_get_buffer(), vdpau_h264_end_frame(), vdpau_release_buffer(), vdpau_uninit(), vid_read_close(), vid_read_packet(), video_encode_example(), video_thread(), vorbis_cleanup(), vorbis_encode_close(), vorbis_free(), vorbis_header(), vp3_decode_end(), vp8_free(), vp9_decode_free(), vqa_decode_end(), vqa_decode_init(), wavpack_decode_end(), write_chapter(), write_headers(), write_option(), X264_close(), xan_decode_end(), xan_decode_init(), XAVS_close(), xiph_handle_packet(), xvid_encode_close(), and xwd_encode_close().

void av_memcpy_backptr ( uint8_t dst,
int  back,
int  cnt 
)

deliberately overlapping memcpy implementation

Parameters
dstdestination buffer
backhow many bytes back we start (the initial size of the overlapping window)
cntnumber of bytes to copy, must be >= 0

cnt > back is valid, this will copy the bytes we just copied, thus creating a repeating pattern with a period length of back.

Definition at line 319 of file mem.c.

Referenced by copy_backptr(), decode_dsw1(), decode_tsw1(), mszh_decomp(), residual_interp(), synth_block_fcb_acb(), unpack(), and xan_unpack().

void* av_fast_realloc ( void ptr,
unsigned int *  size,
size_t  min_size 
)
void av_fast_malloc ( void ptr,
unsigned int *  size,
size_t  min_size 
)

Allocate a buffer, reusing the given one if large enough.

Contrary to av_fast_realloc the current buffer contents might not be preserved and on error the old buffer is freed, thus no special handling to avoid memleaks is necessary.

Parameters
ptrpointer to pointer to already allocated buffer, overwritten with pointer to new buffer
sizesize of the buffer *ptr points to
min_sizeminimum size of *ptr buffer after returning, *ptr will be NULL and *size 0 if an error occurred.

Definition at line 388 of file mem.c.

Referenced by allocate_buffers(), ape_decode_frame(), av_fast_padded_malloc(), dca_decode_frame(), decode_8(), decode_frame(), decode_i_frame(), decode_p_frame(), decode_subframe(), decorrelate(), extract_rbsp(), ff_h264_decode_nal(), ff_mpeg4_frame_end(), ff_mpeg_update_thread_context(), fic_decode_frame(), id3v2_parse(), lag_decode_frame(), ljpeg_decode_rgb_scan(), mp_decode_frame(), opus_decode_subpacket(), parse_object_segment(), pmp_packet(), spdif_header_dts4(), spdif_write_packet(), tak_decode_frame(), truemotion1_decode_header(), truemotion1_decode_init(), update_md5_sum(), utvideo_encode_frame(), and verify_md5().