From 8a0684f4c4a0d4375907807034ad2fc27953f5d6 Mon Sep 17 00:00:00 2001 From: Justin Ruggles Date: Thu, 1 May 2008 22:04:17 +0000 Subject: [PATCH] fix encoding of flac private data Originally committed as revision 13030 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/matroskaenc.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index f5729e4..380ed32 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -429,9 +429,12 @@ static int put_flac_codecpriv(AVFormatContext *s, ByteIOContext *pb, AVCodecCont return -1; } else if (codec->extradata_size == FLAC_STREAMINFO_SIZE) { // only the streaminfo packet - put_byte(pb, 0); - put_xiph_size(pb, codec->extradata_size); - av_log(s, AV_LOG_ERROR, "Only one packet\n"); + put_buffer(pb, "fLaC", 4); + put_byte(pb, 0x80); + put_be24(pb, FLAC_STREAMINFO_SIZE); + } else if(memcmp("fLaC", codec->extradata, 4)) { + av_log(s, AV_LOG_ERROR, "Invalid FLAC extradata\n"); + return -1; } put_buffer(pb, codec->extradata, codec->extradata_size); return 0; -- 2.7.4