Commit b527a058 authored by mru's avatar mru

AAC: escape_sequence is 21 bits max

The maximum length of escape_sequence is 21 bits, so adjust limit in
code to match this.  Also fix the comment.

git-svn-id: file:///var/local/repositories/ffmpeg/trunk@21151 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent 50983466
......@@ -942,9 +942,9 @@ static int decode_spectrum_and_dequant(AACContext *ac, float coef[1024],
if (vq_ptr[j] == 64.0f) {
int n = 4;
/* The total length of escape_sequence must be < 22 bits according
to the specification (i.e. max is 11111111110xxxxxxxxxx). */
while (get_bits1(gb) && n < 15) n++;
if (n == 15) {
to the specification (i.e. max is 111111110xxxxxxxxxxxx). */
while (get_bits1(gb) && n < 13) n++;
if (n == 13) {
av_log(ac->avccontext, AV_LOG_ERROR, "error in spectral data, ESC overflow\n");
return -1;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment