oggenc: accept only STREAMINFO extradata

The reasoning is the same as for
0097cbea69.
This commit is contained in:
Anton Khirnov 2014-08-28 18:51:51 +00:00
parent c070a87515
commit e839de0f85

View File

@ -295,12 +295,10 @@ static int ogg_build_flac_headers(AVCodecContext *avctx,
OGGStreamContext *oggstream, int bitexact,
AVDictionary **m)
{
enum FLACExtradataFormat format;
uint8_t *streaminfo;
uint8_t *p;
if (!avpriv_flac_is_extradata_valid(avctx, &format, &streaminfo))
return -1;
if (avctx->extradata_size < FLAC_STREAMINFO_SIZE)
return AVERROR(EINVAL);
// first packet: STREAMINFO
oggstream->header_len[0] = 51;
@ -316,7 +314,7 @@ static int ogg_build_flac_headers(AVCodecContext *avctx,
bytestream_put_buffer(&p, "fLaC", 4);
bytestream_put_byte(&p, 0x00); // streaminfo
bytestream_put_be24(&p, 34);
bytestream_put_buffer(&p, streaminfo, FLAC_STREAMINFO_SIZE);
bytestream_put_buffer(&p, avctx->extradata, FLAC_STREAMINFO_SIZE);
// second packet: VorbisComment
p = ogg_write_vorbiscomment(4, bitexact, &oggstream->header_len[1], m, 0);