diff --git a/doc/APIchanges b/doc/APIchanges index 436e994149e139a86b3abf3fe39a41d98522761f..b723e1062d18b5411daaaa5e15966da72e1a8a0f 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -13,6 +13,9 @@ libavutil: 2011-04-18 API changes, most recent first: +2012-08-08 - xxxxxxx - lavu 51.38 - dict.h + Add av_dict_count(). + 2012-08-xx - xxxxxxx - lavc 54.25 - avcodec.h Rename CodecID to AVCodecID and all CODEC_ID_* to AV_CODEC_ID_*. diff --git a/libavformat/asfenc.c b/libavformat/asfenc.c index 7c824a5db4657892403051a2964e7d408dae6333..bcb741e04d56bc776b3989811b9e965282fab8fc 100644 --- a/libavformat/asfenc.c +++ b/libavformat/asfenc.c @@ -316,7 +316,7 @@ static int asf_write_header1(AVFormatContext *s, int64_t file_size, int64_t data duration = asf->duration + PREROLL_TIME * 10000; has_title = tags[0] || tags[1] || tags[2] || tags[3] || tags[4]; - metadata_count = s->metadata ? s->metadata->count : 0; + metadata_count = av_dict_count(s->metadata); bit_rate = 0; for(n=0;n<s->nb_streams;n++) { diff --git a/libavformat/utils.c b/libavformat/utils.c index 435ffc1c68bc9ba8625bb67469cc1bbf9d98d8ac..b850abfe1dd6deb988d9e954b96242cded67de82 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -3306,7 +3306,7 @@ static void print_fps(double d, const char *postfix){ static void dump_metadata(void *ctx, AVDictionary *m, const char *indent) { - if(m && !(m->count == 1 && av_dict_get(m, "language", NULL, 0))){ + if(m && !(av_dict_count(m) == 1 && av_dict_get(m, "language", NULL, 0))){ AVDictionaryEntry *tag=NULL; av_log(ctx, AV_LOG_INFO, "%sMetadata:\n", indent); diff --git a/libavutil/dict.c b/libavutil/dict.c index cb5f7b160fe24c48df1b457d0195c05c8b0ed3ef..1344613fa965c1d628f0829111d22e4c561f9679 100644 --- a/libavutil/dict.c +++ b/libavutil/dict.c @@ -23,6 +23,11 @@ #include "internal.h" #include "mem.h" +int av_dict_count(const AVDictionary *m) +{ + return m ? m->count : 0; +} + AVDictionaryEntry * av_dict_get(AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags) { diff --git a/libavutil/dict.h b/libavutil/dict.h index aa076265353fdb7d1cb7e991a9b41349339c641e..72d1e9d25b56e4f43570dfc24b56b558fc647881 100644 --- a/libavutil/dict.h +++ b/libavutil/dict.h @@ -86,6 +86,14 @@ typedef struct AVDictionary AVDictionary; AVDictionaryEntry * av_dict_get(AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags); +/** + * Get number of entries in dictionary. + * + * @param m dictionary + * @return number of entries in dictionary + */ +int av_dict_count(const AVDictionary *m); + /** * Set the given entry in *pm, overwriting an existing entry. * diff --git a/libavutil/version.h b/libavutil/version.h index bd60d3f282c426b3e434dff9c1caf6a99f9ff20a..de5731a5a5744a273ff1a10c43c2713943d67e9b 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -37,8 +37,8 @@ */ #define LIBAVUTIL_VERSION_MAJOR 51 -#define LIBAVUTIL_VERSION_MINOR 37 -#define LIBAVUTIL_VERSION_MICRO 1 +#define LIBAVUTIL_VERSION_MINOR 38 +#define LIBAVUTIL_VERSION_MICRO 0 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ LIBAVUTIL_VERSION_MINOR, \