# HG changeset patch # User aurel # Date 1200093682 0 # Node ID a6730b458d6cd9d2fd8520ad1759193b4f1295f6 # Parent 3e44e9eb92ec8a439db5500778cd1a509d997c7f Matroska muxer needs to format all NAL units, not only extradata. diff -r 3e44e9eb92ec -r a6730b458d6c matroskaenc.c --- a/matroskaenc.c Fri Jan 11 12:24:46 2008 +0000 +++ b/matroskaenc.c Fri Jan 11 23:21:22 2008 +0000 @@ -745,6 +745,16 @@ av_md5_update(mkv->md5_ctx, pkt->data, FFMIN(200, pkt->size)); } + if (codec->codec_id == CODEC_ID_H264 && + codec->extradata_size > 0 && AV_RB32(codec->extradata) == 0x00000001) { + /* from x264 or from bytestream h264 */ + /* nal reformating needed */ + int ret = avc_parse_nal_units(pkt->data, &pkt->data, &pkt->size); + if (ret < 0) + return ret; + assert(pkt->size); + } + if (codec->codec_type != CODEC_TYPE_SUBTITLE) { mkv_write_block(s, MATROSKA_ID_SIMPLEBLOCK, pkt, keyframe << 7); } else {