mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Verify FSIZE96 when encountering X96 sync code.
Patch by Anssi Hannula, anssi d hannula a iki d fi Originally committed as revision 26249 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
d381249bb8
commit
df1c694c58
@ -1352,12 +1352,18 @@ static int dca_decode_frame(AVCodecContext * avctx,
|
||||
s->xch_present = 1;
|
||||
break;
|
||||
}
|
||||
case 0x1d95f262:
|
||||
av_log(avctx, AV_LOG_DEBUG, "Possible X96 extension found at %d bits\n", get_bits_count(&s->gb));
|
||||
av_log(avctx, AV_LOG_DEBUG, "FSIZE96 = %d bytes\n", get_bits(&s->gb, 12)+1);
|
||||
case 0x1d95f262: {
|
||||
int fsize96 = show_bits(&s->gb, 12) + 1;
|
||||
if (s->frame_size != (get_bits_count(&s->gb) >> 3) - 4 + fsize96)
|
||||
continue;
|
||||
|
||||
av_log(avctx, AV_LOG_DEBUG, "X96 extension found at %d bits\n", get_bits_count(&s->gb));
|
||||
skip_bits(&s->gb, 12);
|
||||
av_log(avctx, AV_LOG_DEBUG, "FSIZE96 = %d bytes\n", fsize96);
|
||||
av_log(avctx, AV_LOG_DEBUG, "REVNO = %d\n", get_bits(&s->gb, 4));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
skip_bits_long(&s->gb, (-get_bits_count(&s->gb)) & 31);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user