# HG changeset patch # User bcoudurier # Date 1212971787 0 # Node ID 2d52ccde8f86a6844fc59078c901d943e57a0b0b # Parent f9cf53254a61cb3a61fcec450650ff0783685fcd pass extradata through ffm diff -r f9cf53254a61 -r 2d52ccde8f86 ffmdec.c --- a/ffmdec.c Mon Jun 09 00:24:29 2008 +0000 +++ b/ffmdec.c Mon Jun 09 00:36:27 2008 +0000 @@ -320,7 +320,13 @@ default: goto fail; } - + if (codec->flags & CODEC_FLAG_GLOBAL_HEADER) { + codec->extradata_size = get_be32(pb); + codec->extradata = av_malloc(codec->extradata_size); + if (!codec->extradata) + return AVERROR(ENOMEM); + get_buffer(pb, codec->extradata, codec->extradata_size); + } } /* get until end of block reached */ diff -r f9cf53254a61 -r 2d52ccde8f86 ffmenc.c --- a/ffmenc.c Mon Jun 09 00:24:29 2008 +0000 +++ b/ffmenc.c Mon Jun 09 00:36:27 2008 +0000 @@ -168,6 +168,10 @@ default: return -1; } + if (codec->flags & CODEC_FLAG_GLOBAL_HEADER) { + put_be32(pb, codec->extradata_size); + put_buffer(pb, codec->extradata, codec->extradata_size); + } } /* flush until end of block reached */