wtvdec: set correct codec ID for CC streams.
[ffmpeg.git] / libavformat / vorbiscomment.c
index 3434d82..9b38e6a 100644 (file)
@@ -23,6 +23,7 @@
 #include "metadata.h"
 #include "vorbiscomment.h"
 #include "libavcodec/bytestream.h"
+#include "libavutil/dict.h"
 
 /**
  * VorbisComment metadata conversion mapping.
 const AVMetadataConv ff_vorbiscomment_metadata_conv[] = {
     { "ALBUMARTIST", "album_artist"},
     { "TRACKNUMBER", "track"  },
+    { "DISCNUMBER",  "disc"   },
     { 0 }
 };
 
-int ff_vorbiscomment_length(AVMetadata *m, const char *vendor_string,
+int ff_vorbiscomment_length(AVDictionary *m, const char *vendor_string,
                             unsigned *count)
 {
     int len = 8;
     len += strlen(vendor_string);
     *count = 0;
     if (m) {
-        AVMetadataTag *tag = NULL;
-        while ((tag = av_metadata_get(m, "", tag, AV_METADATA_IGNORE_SUFFIX))) {
+        AVDictionaryEntry *tag = NULL;
+        while ((tag = av_dict_get(m, "", tag, AV_DICT_IGNORE_SUFFIX))) {
             len += 4 +strlen(tag->key) + 1 + strlen(tag->value);
             (*count)++;
         }
@@ -51,15 +53,15 @@ int ff_vorbiscomment_length(AVMetadata *m, const char *vendor_string,
     return len;
 }
 
-int ff_vorbiscomment_write(uint8_t **p, AVMetadata *m,
+int ff_vorbiscomment_write(uint8_t **p, AVDictionary **m,
                            const char *vendor_string, const unsigned count)
 {
     bytestream_put_le32(p, strlen(vendor_string));
     bytestream_put_buffer(p, vendor_string, strlen(vendor_string));
-    if (m) {
-        AVMetadataTag *tag = NULL;
+    if (*m) {
+        AVDictionaryEntry *tag = NULL;
         bytestream_put_le32(p, count);
-        while ((tag = av_metadata_get(m, "", tag, AV_METADATA_IGNORE_SUFFIX))) {
+        while ((tag = av_dict_get(*m, "", tag, AV_DICT_IGNORE_SUFFIX))) {
             unsigned int len1 = strlen(tag->key);
             unsigned int len2 = strlen(tag->value);
             bytestream_put_le32(p, len1+1+len2);