Commit 8456bd2c authored by Michael Niedermayer's avatar Michael Niedermayer

avformat/matroskaenc: wrap V_QUICKTIME codec private in something that looks...

avformat/matroskaenc: wrap V_QUICKTIME codec private in something that looks like its part of quicktime stsd

This is needed for matroska spec compliance
Fixes playback of SVQ3 in matroska with vlc
Fixes Ticket 3256
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent da25a657
......@@ -548,8 +548,18 @@ static int mkv_write_codecprivate(AVFormatContext *s, AVIOContext *pb, AVCodecCo
if (qt_id) {
if (!codec->codec_tag)
codec->codec_tag = ff_codec_get_tag(ff_codec_movvideo_tags, codec->codec_id);
if (codec->extradata_size)
if (codec->extradata_size) {
if ( ff_codec_get_id(ff_codec_movvideo_tags, codec->codec_tag) == codec->codec_id
&& ff_codec_get_id(ff_codec_movvideo_tags, AV_RL32(codec->extradata+4)) != codec->codec_id
) {
int i;
avio_wb32(dyn_cp, 0x5a + codec->extradata_size);
avio_wl32(dyn_cp, codec->codec_tag);
for(i=0; i<0x5a-8; i++)
avio_w8(dyn_cp, 0);
}
avio_write(dyn_cp, codec->extradata, codec->extradata_size);
}
} else {
if (!ff_codec_get_tag(ff_codec_bmp_tags, codec->codec_id))
av_log(s, AV_LOG_WARNING, "codec %s is not supported by this format\n",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment