diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 78a621ec22..4760fb0df8 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -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 { diff --git a/tests/ref/fate/rgb24-mkv b/tests/ref/fate/rgb24-mkv index 88d22c14e6..4c357accaf 100644 --- a/tests/ref/fate/rgb24-mkv +++ b/tests/ref/fate/rgb24-mkv @@ -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