Commit 0cb2774a authored by Josh Coalson's avatar Josh Coalson Committed by Justin Ruggles

Add decoding support for variable block size FLAC files using the latest FLAC

specification. Patch by Josh Coalson.

Originally committed as revision 10916 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent e471443a
...@@ -628,9 +628,9 @@ static int flac_decode_frame(AVCodecContext *avctx, ...@@ -628,9 +628,9 @@ static int flac_decode_frame(AVCodecContext *avctx,
if (!metadata_parse(s)) if (!metadata_parse(s))
{ {
tmp = show_bits(&s->gb, 16); tmp = show_bits(&s->gb, 16);
if(tmp != 0xFFF8){ if((tmp & 0xFFFE) != 0xFFF8){
av_log(s->avctx, AV_LOG_ERROR, "FRAME HEADER not here\n"); av_log(s->avctx, AV_LOG_ERROR, "FRAME HEADER not here\n");
while(get_bits_count(&s->gb)/8+2 < buf_size && show_bits(&s->gb, 16) != 0xFFF8) while(get_bits_count(&s->gb)/8+2 < buf_size && (show_bits(&s->gb, 16) & 0xFFFE) != 0xFFF8)
skip_bits(&s->gb, 8); skip_bits(&s->gb, 8);
goto end; // we may not have enough bits left to decode a frame, so try next time goto end; // we may not have enough bits left to decode a frame, so try next time
} }
......
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