Correctly mark mov metadata as utf-8, using iso language code
authorBaptiste Coudurier <baptiste.coudurier@gmail.com>
Tue, 9 Mar 2010 01:21:09 +0000 (01:21 +0000)
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>
Tue, 9 Mar 2010 01:21:09 +0000 (01:21 +0000)
Originally committed as revision 22368 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/movenc.c

index ecabd8e..bccff37 100644 (file)
@@ -1390,11 +1390,13 @@ static int mov_write_string_metadata(AVFormatContext *s, ByteIOContext *pb,
     while ((t2 = av_metadata_get(s->metadata, tag2, t2, AV_METADATA_IGNORE_SUFFIX))) {
         len2 = strlen(t2->key);
         if (len2 == len+4 && !strcmp(t->value, t2->value)
-            && (l=ff_mov_iso639_to_lang(&t2->key[len2-3], 0)) >= 0) {
+            && (l=ff_mov_iso639_to_lang(&t2->key[len2-3], 1)) >= 0) {
             lang = l;
             break;
         }
     }
+    if (!lang)
+        lang = ff_mov_iso639_to_lang("und", 1);
     return mov_write_string_tag(pb, name, t->value, lang, long_style);
 }