ffmpeg数据结构之AVDictionary

一:AVDictionary的定义:

struct AVDictionary {
    int count;
    AVDictionaryEntry *elems;
};

AVDictionaryEntry的定义:

typedef struct AVDictionaryEntry {
    char *key;
    char *value;
} AVDictionaryEntry;

作用:简单的键值对存储。

AVDictionary *d = NULL;           // "create" an empty dictionary
AVDictionaryEntry *t = NULL;
av_dict_set(&d, "foo", "bar", 0); // add an entry
char *k = av_strdup("key");       // if your strings are already allocated,
char *v = av_strdup("value");     // you can avoid copying them like this
av_dict_set(&d, k, v, AV_DICT_DONT_STRDUP_KEY | AV_DICT_DONT_STRDUP_VAL);
while (t = av_dict_get(d, "", t, AV_DICT_IGNORE_SUFFIX)) {
    <....>                             // iterate over all entries in d
}
av_dict_free(&d);


你可能感兴趣的:(ffmpeg)