The AAC frame header uses 13 bits for the frame size, so the buffer should

have room for such a frame.  A frame that large seems unlikely in a valid
file, but leaving room for it spares us the need to check it elsewhere.
Moving the buffer to the end of the struct made debugging this easier.

Originally committed as revision 5487 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Måns Rullgård 2006-06-16 20:41:33 +00:00
parent 57bd82d4e7
commit 4f8ff17e75

View File

@ -729,12 +729,12 @@ static int mpegaudio_parse(AVCodecParserContext *s1,
/* also used for ADTS AAC */
typedef struct AC3ParseContext {
uint8_t inbuf[4096]; /* input buffer */
uint8_t *inbuf_ptr;
int frame_size;
int header_size;
int (*sync)(const uint8_t *buf, int *channels, int *sample_rate,
int *bit_rate, int *samples);
uint8_t inbuf[8192]; /* input buffer */
} AC3ParseContext;
#define AC3_HEADER_SIZE 7