FFmpeg 7.1.1
|
Simple key:value store. More...
Data Structures | |
struct | AVDictionaryEntry |
Typedefs | |
typedef struct AVDictionary | AVDictionary |
Functions | |
AVDictionaryEntry * | av_dict_get (const AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags) |
Get a dictionary entry with matching key. | |
const AVDictionaryEntry * | av_dict_iterate (const AVDictionary *m, const AVDictionaryEntry *prev) |
Iterate over a dictionary. | |
int | av_dict_count (const AVDictionary *m) |
Get number of entries in dictionary. | |
int | av_dict_set (AVDictionary **pm, const char *key, const char *value, int flags) |
Set the given entry in *pm, overwriting an existing entry. | |
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. | |
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. | |
int | av_dict_copy (AVDictionary **dst, const AVDictionary *src, int flags) |
Copy entries from one AVDictionary struct into another. | |
void | av_dict_free (AVDictionary **m) |
Free all the memory allocated for an AVDictionary struct and all keys and values. | |
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. | |
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. | |
#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. | |
#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 |
Don't overwrite existing entries. | |
#define | AV_DICT_APPEND 32 |
If the entry already exists, append to it. | |
#define | AV_DICT_MULTIKEY 64 |
Allow to store several equal keys in the dictionary. | |
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 |
typedef struct AVDictionary AVDictionary |
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 |
Referenced by dec_enc(), and dynamic_set_parameter().
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 |
Referenced by main().
int av_dict_count | ( | const AVDictionary * | m | ) |
Get number of entries in dictionary.
m | dictionary |
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. |
Referenced by init_filter_graph(), main(), open_codec_context(), and str_to_dict().
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.
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. |
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 |
Referenced by open_audio(), and open_video().
void av_dict_free | ( | AVDictionary ** | m | ) |
Free all the memory allocated for an AVDictionary struct and all keys and values.
Referenced by dec_enc(), dynamic_set_parameter(), init_filter_graph(), open_audio(), open_codec_context(), and open_video().
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 |