lavf/matroskaenc: Do not write two CodecID elements for rawvideo.
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Sat, 14 Jan 2017 05:06:05 +0000 (06:06 +0100)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Sat, 14 Jan 2017 05:06:05 +0000 (06:06 +0100)
Fixes ticket #6068.

libavformat/matroskaenc.c
tests/ref/fate/rgb24-mkv

index 78a621e..4760fb0 100644 (file)
@@ -1119,6 +1119,7 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
     } else {
         // look for a codec ID string specific to mkv to use,
         // if none are found, use AVI codes
+        if (par->codec_id != AV_CODEC_ID_RAWVIDEO || par->codec_tag) {
         for (j = 0; ff_mkv_codec_tags[j].id != AV_CODEC_ID_NONE; j++) {
             if (ff_mkv_codec_tags[j].id == par->codec_id) {
                 put_ebml_string(pb, MATROSKA_ID_CODECID, ff_mkv_codec_tags[j].str);
@@ -1126,7 +1127,7 @@ static int mkv_write_track(AVFormatContext *s, MatroskaMuxContext *mkv,
                 break;
             }
         }
-        if (par->codec_id == AV_CODEC_ID_RAWVIDEO && !par->codec_tag) {
+        } else {
             if (mkv->allow_raw_vfw) {
                 native_id = 0;
             } else {
index 88d22c1..4c357ac 100644 (file)
@@ -1,5 +1,5 @@
-94cce0d7d5b14b4c86e74a1ca454c5aa *tests/data/fate/rgb24-mkv.matroska
-58361 tests/data/fate/rgb24-mkv.matroska
+55270be3b5d393d770a1dfcb19b68271 *tests/data/fate/rgb24-mkv.matroska
+58345 tests/data/fate/rgb24-mkv.matroska
 #tb 0: 1/10
 #media_type 0: video
 #codec_id 0: rawvideo