FFmpeg
|
Simple key:value store. More...
Data Structures | |
struct | AVDictionaryEntry |
Functions | |
AVDictionaryEntry * | av_dict_get (const AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags) |
Get a dictionary entry with matching key. More... | |
const AVDictionaryEntry * | av_dict_iterate (const AVDictionary *m, const AVDictionaryEntry *prev) |
Iterate over a dictionary. More... | |
int | av_dict_count (const AVDictionary *m) |
Get number of entries in dictionary. More... | |
int | av_dict_set (AVDictionary **pm, const char *key, const char *value, int flags) |
Set the given entry in *pm, overwriting an existing entry. More... | |
int | av_dict_set_int (AVDictionary **pm, const char *key, int64_t value, int flags) |
Convenience wrapper for av_dict_set() that converts the value to a string and stores it. More... | |
int | av_dict_parse_string (AVDictionary **pm, const char *str, const char *key_val_sep, const char *pairs_sep, int flags) |
Parse the key/value pairs list and add the parsed entries to a dictionary. More... | |
int | av_dict_copy (AVDictionary **dst, const AVDictionary *src, int flags) |
Copy entries from one AVDictionary struct into another. More... | |
void | av_dict_free (AVDictionary **m) |
Free all the memory allocated for an AVDictionary struct and all keys and values. More... | |
int | av_dict_get_string (const AVDictionary *m, char **buffer, const char key_val_sep, const char pairs_sep) |
Get dictionary entries as a string. More... | |
AVDictionary Flags | |
Flags that influence behavior of the matching of keys or insertion to the dictionary. | |
#define | AV_DICT_MATCH_CASE 1 |
Only get an entry with exact-case key match. More... | |
#define | AV_DICT_IGNORE_SUFFIX 2 |
Return first entry in a dictionary whose first part corresponds to the search key, ignoring the suffix of the found key string. More... | |
#define | AV_DICT_DONT_STRDUP_KEY 4 |
Take ownership of a key that's been allocated with av_malloc() or another memory allocation function. More... | |
#define | AV_DICT_DONT_STRDUP_VAL 8 |
Take ownership of a value that's been allocated with av_malloc() or another memory allocation function. More... | |
#define | AV_DICT_DONT_OVERWRITE 16 |
Don't overwrite existing entries. More... | |
#define | AV_DICT_APPEND 32 |
If the entry already exists, append to it. More... | |
#define | AV_DICT_MULTIKEY 64 |
Allow to store several equal keys in the dictionary. More... | |
Simple key:value store.
Dictionaries are used for storing key-value pairs.
#define AV_DICT_MATCH_CASE 1 |
Only get an entry with exact-case key match.
Only relevant in av_dict_get().
#define AV_DICT_IGNORE_SUFFIX 2 |
Return first entry in a dictionary whose first part corresponds to the search key, ignoring the suffix of the found key string.
Only relevant in av_dict_get().
#define AV_DICT_DONT_STRDUP_KEY 4 |
Take ownership of a key that's been allocated with av_malloc() or another memory allocation function.
#define AV_DICT_DONT_STRDUP_VAL 8 |
Take ownership of a value that's been allocated with av_malloc() or another memory allocation function.
#define AV_DICT_DONT_OVERWRITE 16 |
#define AV_DICT_APPEND 32 |
#define AV_DICT_MULTIKEY 64 |
AVDictionaryEntry* av_dict_get | ( | const AVDictionary * | m, |
const char * | key, | ||
const AVDictionaryEntry * | prev, | ||
int | flags | ||
) |
Get a dictionary entry with matching key.
The returned entry key or value must not be changed, or it will cause undefined behavior.
prev | Set to the previous matching element to find the next. If set to NULL the first matching element is returned. |
key | Matching key |
flags | A collection of AV_DICT_* flags controlling how the entry is retrieved |
Definition at line 62 of file dict.c.
Referenced by aea_write_header(), asf_write_header1(), asf_write_markers(), av_dict_set(), av_dump_format(), avcodec_open2(), avi_read_header(), avi_write_header(), bitstream_switching(), check_avoptions_used(), check_extensions(), check_layers(), check_opt_bitexact(), cuda_flags_from_opts(), d3d11va_device_create(), d3d12va_device_create(), dec_enc(), dec_open(), dict_copy_entry(), dict_iterate(), dump_attachment(), dump_metadata(), dump_stream_format(), dv_write_header(), dynamic_set_parameter(), export_orphan_timecode(), ff_decklink_read_packet(), ff_id3v2_write_apic(), ff_mjpeg_decode_frame_from_buf(), ff_parse_creation_time_metadata(), ff_qsv_enc_init(), ff_replaygain_export(), ff_riff_write_info(), ffurl_connect(), ffurl_open_whitelist(), filter_frame(), find_compressor(), flac_init(), flac_read_header(), flac_write_picture(), flv_read_packet(), func_frame_metadata(), get_concatdec_select(), get_cookies(), get_date_tag(), get_duration(), get_metadata_duration(), get_metadata_lang(), get_mimetype(), gxf_write_header(), id3_has_changed_values(), id3v1_create_tag(), id3v1_set_string(), ifile_open(), imf_read_header(), init_muxer(), main(), match_stream_specifier(), mkv_write_attachments(), mkv_write_chapters(), mkv_write_header(), mkv_write_info(), mkv_write_stereo_mode(), mkv_write_track(), mkv_write_track_video(), mov_create_chapter_track(), mov_init(), mov_parse_stsd_audio(), mov_read_header(), mov_write_3gp_udta_tag(), mov_write_chpl_tag(), mov_write_hdlr_tag(), mov_write_header(), mov_write_int8_metadata(), mov_write_isml_manifest(), mov_write_raw_metadata_tag(), mov_write_SA3D_tag(), mov_write_tmcd_tag(), mov_write_tmpo_tag(), mov_write_track_metadata(), mov_write_trkn_tag(), mov_write_uuidusmt_tag(), mp3_write_xing(), mpegts_add_service(), mpegts_init(), mpegts_write_pmt(), multiview_check_manual(), mxf_init(), mxf_init_timecode(), mxf_write_header_metadata_sets(), mxf_write_identification(), mxf_write_user_comments(), of_add_programs(), of_parse_group_token(), of_parse_iamf_submixes(), open_input_file(), open_slave(), opencl_filter_device(), opencl_filter_platform(), ost_add(), parse_cookie(), png_write_iccp(), print_frame_side_data(), put_meta(), qsv_device_create(), read_thread(), receiver_thread(), redirect_cache_get(), riff_has_valid_tags(), rv10_write_header(), sap_write_header(), segment_end(), set_skip_frame_encode_ctrl(), sox_write_header(), stream_component_open(), stream_specifier_match(), subsegment_alignment(), ttml_write_header(), update_settings(), vaapi_device_create(), vorbis_parse_single_comment(), vpx_encode(), vulkan_device_create_internal(), write_adaptation_set(), write_manifest(), write_representation(), write_table_entries_attrib(), write_table_redirector_legacy_attrib(), writer_print_integer(), and writer_print_string().
const AVDictionaryEntry* av_dict_iterate | ( | const AVDictionary * | m, |
const AVDictionaryEntry * | prev | ||
) |
Iterate over a dictionary.
Iterates through all entries in the dictionary.
Typical usage:
m | The dictionary to iterate over |
prev | Pointer to the previous AVDictionaryEntry, NULL initially |
AVDictionaryEntry* | The next element in the dictionary |
NULL | No more elements in the dictionary |
Definition at line 44 of file dict.c.
Referenced by aom_init(), asf_write_header1(), av_dict_copy(), av_dict_get(), av_dict_get_string(), av_opt_is_set_to_default(), av_opt_set_dict2(), av_packet_pack_dictionary(), avfilter_init_str(), caf_write_header(), check_avoptions(), check_avoptions_used(), config_enc_params(), configure_audio_filters(), configure_output_video_filter(), configure_video_filters(), cookie_string(), create_filter(), dict_iterate(), dump_dictionary(), ff_ape_write_tag(), ff_metadata_conv(), ff_vorbiscomment_length(), ff_vorbiscomment_write(), fifo_thread_write_header(), filter_codec_opts(), filter_frame(), get_cookies(), graph_opts_apply(), iamf_write_mixing_presentation(), id3_has_changed_values(), id3v2_3_metadata_split_date(), init(), libkvazaar_init(), librav1e_encode_init(), libx265_encode_init(), libxeve_init(), log_unknown_opt(), lrc_write_header(), main(), mc_device_create(), mkv_write_tag(), mov_write_mdta_ilst_tag(), mov_write_mdta_keys_tag(), of_add_programs(), of_parse_group_token(), of_parse_iamf_audio_element_layers(), of_parse_iamf_submixes(), open_input_file(), open_slave(), parse_cookie(), parse_features(), parse_models(), print_iamf_mix_presentation_params(), print_iamf_submix_params(), remove_avoptions(), show_tags(), smjpeg_write_header(), vpx_init(), vvenc_parse_vvenc_params(), write_chapter(), write_globalinfo(), write_metadata(), write_streaminfo(), write_table_entries_attrib(), write_table_redirector_legacy_attrib(), write_tags(), writer_open(), X264_init(), and xavs2_init().
int av_dict_count | ( | const AVDictionary * | m | ) |
Get number of entries in dictionary.
m | dictionary |
Definition at line 39 of file dict.c.
Referenced by adts_aac_read_header(), asf_write_header1(), av_dict_get_string(), avfilter_graph_segment_apply_opts(), caf_write_header(), config_enc_params(), configure_filtergraph(), dump_metadata(), ff_vorbiscomment_write(), hls_mux_init(), http_open_cnx(), iamf_write_mixing_presentation(), init(), main(), mp3_read_header(), mpc_read_header(), ogg_build_vp8_headers(), seg_init(), update_settings(), and wv_read_header().
int av_dict_set | ( | AVDictionary ** | pm, |
const char * | key, | ||
const char * | value, | ||
int | flags | ||
) |
Set the given entry in *pm, overwriting an existing entry.
Note: If AV_DICT_DONT_STRDUP_KEY or AV_DICT_DONT_STRDUP_VAL is set, these arguments will be freed on error.
pm | Pointer to a pointer to a dictionary struct. If *pm is NULL a dictionary struct is allocated and put in *pm. |
key | Entry key to add to *pm (will either be av_strduped or added as a new key depending on flags) |
value | Entry value to add to *pm (will be av_strduped or added as a new key depending on flags). Passing a NULL value will cause an existing entry to be deleted. |
Definition at line 88 of file dict.c.
Referenced by aa_read_header(), add_filename_as_pkt_side_data(), add_meta(), add_metadata(), add_metadata_from_renditions(), add_timecode_metadata(), aea_read_header(), amf_parse_object(), ape_tag_read_field(), asf_read_header(), asf_read_metadata(), asf_read_picture(), asf_read_properties(), asf_read_value(), asf_set_metadata(), asf_write_header1(), av_dict_copy(), av_dict_set_fxp(), av_dict_set_int(), av_opt_set_dict2(), av_packet_unpack_dictionary(), avformat_find_stream_info(), avi_metadata_creation_time(), avi_read_nikon(), avi_read_tag(), avpriv_dict_set_timestamp(), avpriv_new_chapter(), bprint_to_avdict(), chunk_end(), cine_read_header(), concat_parse_script(), config_input(), config_props(), copy_meta(), dash_init(), dash_read_header(), dashenc_delete_file(), dec_open(), decode_frame(), decode_frame_common(), decode_header(), decode_info_header(), decode_text_chunk(), dict_copy_entry(), dict_set_if_not_null(), dss_read_metadata_date(), dss_read_metadata_string(), dtshd_read_header(), dvdvideo_audio_stream_add(), dvdvideo_subp_stream_add(), export_orphan_timecode(), ff_filter_opt_parse(), ff_flac_parse_picture(), ff_id3v2_parse_apic(), ff_id3v2_parse_priv_dict(), ff_load_image(), ff_metadata_conv(), ff_parse_mpeg2_descriptor(), ff_read_riff_info(), ff_rm_read_mdpr_codecdata(), ff_rtp_chain_mux_open(), ff_sauce_read(), ff_tadd_string_metadata(), ff_tee_parse_slave_options(), ff_wms_parse_sdp_a_line(), ffio_copy_url_options(), ffurl_connect(), ffurl_open_whitelist(), filter(), filter_codec_opts(), filter_frame(), flac_init(), flac_read_header(), get_attachment(), get_meta(), get_metadata(), get_string(), get_tag(), gif_read_header(), h264_export_frame_props(), heif_add_stream(), hls_delete_file(), hls_mux_init(), hls_read_header(), hls_start(), hls_write_packet(), hls_write_trailer(), http_open_cnx_internal(), icecast_open(), id3v2_3_metadata_split_date(), iff_read_header(), ifile_open(), imf_read_header(), init_filter_graph(), init_muxer(), ism_seek(), ism_write_header(), ist_add(), ist_use(), lavfi_read_header(), LLVMFuzzerTestOneInput(), lrc_read_header(), lrc_write_header(), main(), map_to_opts(), merge_date(), mix_presentation_obu(), modplug_load_metadata(), mov_metadata_gnre(), mov_metadata_loci(), mov_metadata_track_or_disc_number(), mov_parse_stsd_audio(), mov_parse_stsd_data(), mov_parse_stsd_video(), mov_parse_tiles(), mov_read_custom(), mov_read_ftyp(), mov_read_hdlr(), mov_read_header(), mov_read_mdhd(), mov_read_rtmd_track(), mov_read_udta_string(), mov_read_uuid(), move_metadata(), mp3_parse_info_tag(), mpeg_decode_frame(), mxf_add_metadata_stream(), mxf_add_timecode_metadata(), mxf_add_umid_metadata(), mxf_parse_package_comments(), mxf_parse_physical_source_package(), mxf_parse_structural_metadata(), mxf_read_partition_pack(), nist_read_header(), nsp_read_header(), nsv_parse_NSVf_header(), of_add_attachments(), of_add_metadata(), of_add_programs(), of_parse_group_token(), of_parse_iamf_submixes(), offset_fn(), ofilter_bind_enc(), ogm_chapter(), open_codec_context(), open_input(), open_input_file(), open_slave(), open_url(), opencl_device_derive(), opt_bitrate(), opt_default(), opt_profile(), opt_show_entries(), opt_streamid(), opt_timecode(), ost_add(), output_frame(), parse_chunks(), parse_cookie(), parse_dsd_prop(), parse_icy(), parse_key_value_pair(), parse_playlist(), parse_programinformation(), parse_set_cookie(), parse_tag(), parse_timecode_in_framenum_format(), populate_avctx_color_fields(), qsv_device_create(), r3d_read_red1(), read_comment(), read_gab2_sub(), read_header(), read_info_chunk(), read_string(), read_tag(), read_thread(), read_ttag(), read_uslt(), redirect_cache_set(), remove_avoptions(), reopen_demux_for_component(), rm_read_metadata(), rpl_read_header(), rtmp_open(), run_test(), sap_write_header(), scan_file(), sdt_cb(), seg_init(), segment_end(), segment_start(), select_frame(), sender_thread(), set_colorquant_ratio_meta(), set_encoder_id(), set_http_options(), set_language(), set_meta(), set_metadata_float(), set_side_data(), smjpeg_read_header(), sox_read_header(), str_to_dict(), stream_component_open(), subviewer_read_header(), try_decode_frame(), update_metadata(), var_read_metadata(), decklink_input_callback::VideoInputFrameArrived(), vivo_read_header(), vorbis_parse_single_comment(), wc3_read_header(), webm_chunk_init(), and wsd_read_header().
int av_dict_set_int | ( | AVDictionary ** | pm, |
const char * | key, | ||
int64_t | value, | ||
int | flags | ||
) |
Convenience wrapper for av_dict_set() that converts the value to a string and stores it.
Note: If AV_DICT_DONT_STRDUP_KEY is set, key will be freed on error.
Definition at line 167 of file dict.c.
Referenced by add_stream_to_programs(), dash_init(), dash_read_header(), filter_frame(), ftp_connect_control_connection(), ftp_connect_data_connection(), hls_read_header(), http_listen(), ifile_open(), ism_write_header(), ist_add(), LLVMFuzzerTestOneInput(), main(), map_to_opts(), mov_metadata_int8_bypass_padding(), mov_metadata_int8_no_padding(), mov_read_ftyp(), mxf_parse_structural_metadata(), of_map_group(), of_open(), open_file(), open_input(), parse_tag(), prompeg_open(), read_header(), read_header_openmpt(), read_uint16(), read_uint32(), read_uint64(), read_uint8(), rtp_open(), rtsp_read_setup(), scd_read_track(), set_http_options(), set_metadata_int(), stream_component_open(), vqf_read_header(), and webm_chunk_init().
int av_dict_parse_string | ( | AVDictionary ** | pm, |
const char * | str, | ||
const char * | key_val_sep, | ||
const char * | pairs_sep, | ||
int | flags | ||
) |
Parse the key/value pairs list and add the parsed entries to a dictionary.
In case of failure, all the successfully set entries are stored in *pm. You may need to manually free the created dictionary.
key_val_sep | A 0-terminated list of characters used to separate key from value |
pairs_sep | A 0-terminated list of characters used to separate two pairs from each other |
flags | Flags to use when adding to the dictionary. AV_DICT_DONT_STRDUP_KEY and AV_DICT_DONT_STRDUP_VAL are ignored since the key/value tokens will always be duplicated. |
Definition at line 200 of file dict.c.
Referenced by av_opt_is_set_to_default(), concat_parse_script(), delimited_dict_parse(), hw_device_init_from_string(), init(), libkvazaar_init(), main(), of_add_programs(), of_map_group(), of_parse_group_token(), of_parse_iamf_audio_element_layers(), of_parse_iamf_submixes(), parse_slave_fifo_options(), rtp_open(), run_test(), set_string_dict(), test_separators(), and writer_open().
int av_dict_copy | ( | AVDictionary ** | dst, |
const AVDictionary * | src, | ||
int | flags | ||
) |
Copy entries from one AVDictionary struct into another.
dst | Pointer to a pointer to a AVDictionary struct to copy into. If *dst is NULL, this function will allocate a struct for you and put it in *dst |
src | Pointer to the source AVDictionary struct to copy items from. |
flags | Flags to use when setting entries in *dst |
Definition at line 237 of file dict.c.
Referenced by asf_read_header(), av_frame_side_data_clone(), av_opt_get_dict_val(), av_opt_set_dict_val(), avformat_open_input(), copy_chapters(), copy_meta(), copy_metadata(), copy_stream_props(), dash_init(), dec_create(), ff_id3v2_parse_chapters(), ff_mjpeg_decode_frame_from_buf(), ff_wms_parse_sdp_a_line(), fifo_mux_init(), fifo_thread_write_header(), frame_copy_props(), handle_id3(), hls_mux_init(), hls_read_header(), hls_read_packet(), http_open(), http_open_cnx(), init_muxer(), list_devices_for_context(), mark_section_show_entries(), of_open(), of_parse_group_token(), ofilter_bind_enc(), ogg_init(), open_audio(), open_file(), open_slave(), open_track_resource_context(), open_url(), open_video(), opt_copy_elem(), opt_default_new(), opt_target(), parse_assetmap(), parse_manifest(), parse_playlist(), read_frame_internal(), rtp_mpegts_write_header(), seg_init(), segment_mux_init(), segment_start(), set_http_options(), set_stream_info_from_input_stream(), stream_params_copy(), tee_write_header(), test_separators(), webm_chunk_init(), webp_decode_frame(), and write_packet().
void av_dict_free | ( | AVDictionary ** | m | ) |
Free all the memory allocated for an AVDictionary struct and all keys and values.
Definition at line 223 of file dict.c.
Referenced by add_filename_as_pkt_side_data(), asf_read_close(), av_frame_replace(), av_frame_side_data_clone(), av_frame_unref(), av_opt_is_set_to_default(), av_opt_set_dict2(), av_opt_set_dict_val(), avfilter_init_str(), avformat_find_stream_info(), avformat_free_context(), avformat_open_input(), chunk_end(), clear_frame_metadata(), close_slave(), concat_read_close(), config_input(), config_props(), create_master_playlist(), dash_close(), dash_free(), dash_init(), dash_write_packet(), dashenc_delete_file(), dec_enc(), dec_free(), decode_header(), delimited_dict_parse(), do_encrypt(), ds_free(), dynamic_set_parameter(), ff_free_stream(), ff_free_stream_group(), ff_http_do_new_request2(), ff_load_image(), ff_metadata_conv(), ff_mjpeg_decode_end(), ff_mjpeg_decode_frame_from_buf(), ff_rtp_chain_mux_open(), ff_tee_parse_slave_options(), ff_wms_parse_sdp_a_line(), fg_free(), fifo_thread_write_header(), filter_codec_opts(), filter_frame(), filter_params_free(), free_chapter(), free_playlist_list(), free_side_data(), ftp_connect_control_connection(), ftp_connect_data_connection(), get_cookies(), graph_opts_apply(), handle_id3(), hls_close(), hls_delete_file(), hls_encryption_start(), hls_init_file_resend(), hls_mux_init(), hls_read_header(), hls_start(), hls_window(), hls_write_packet(), hls_write_trailer(), http_close(), http_listen(), http_open(), http_read_header(), http_seek_internal(), hw_device_init_from_string(), icecast_open(), id3v2_3_metadata_split_date(), ifile_open(), imf_close(), init(), init_filter_graph(), init_fps(), init_muxer(), ism_seek(), ism_write_header(), ist_free(), lavfi_read_header(), libkvazaar_init(), list_devices_for_context(), LLVMFuzzerTestOneInput(), main(), of_add_programs(), of_free(), of_open(), of_parse_group_token(), of_parse_iamf_audio_element_layers(), of_parse_iamf_submixes(), open_audio(), open_codec_context(), open_file(), open_input(), open_input_file(), open_slave(), open_track_resource_context(), open_url(), open_video(), opencl_device_derive(), opt_copy_elem(), opt_default_new(), opt_free_elem(), opt_show_entries(), ost_add(), parse_assetmap(), parse_cookie(), parse_features(), parse_manifest(), parse_models(), parse_playlist(), png_dec_end(), prompeg_open(), qsv_device_create(), read_frame_internal(), read_thread(), reopen_demux_for_component(), replace_side_data_from_buf(), rtmp_open(), rtp_mpegts_write_header(), rtp_open(), rtsp_read_setup(), run_test(), seg_init(), segment_start(), set_string_dict(), setup_find_stream_info_opts(), show_packet(), stream_component_open(), stream_params_copy(), tee_open(), test_separators(), try_decode_frame(), uninit_options(), uninit_opts(), uninit_parse_context(), decklink_input_callback::VideoInputFrameArrived(), vorbis_update_metadata(), webm_chunk_init(), webp_decode_frame(), write_hls_media_playlist(), write_manifest(), write_packet(), and writer_open().
int av_dict_get_string | ( | const AVDictionary * | m, |
char ** | buffer, | ||
const char | key_val_sep, | ||
const char | pairs_sep | ||
) |
Get dictionary entries as a string.
Create a string containing dictionary's entries. Such string may be passed back to av_dict_parse_string().
[in] | m | The dictionary |
[out] | buffer | Pointer to buffer that will be allocated with string containg entries. Buffer must be freed by the caller when is no longer needed. |
[in] | key_val_sep | Character used to separate key from value |
[in] | pairs_sep | Character used to separate two pairs from each other |
Definition at line 250 of file dict.c.
Referenced by configure_filtergraph(), main(), open_slave(), opt_get_elem(), and test_separators().