Commit c675ef70 authored by Andreas Öman's avatar Andreas Öman

Compute AC3 frame CRC for stronger raw AC3 format probing.

Closes issue64.

Originally committed as revision 12920 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 66824f99
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
#include "avformat.h" #include "avformat.h"
#include "ac3_parser.h" #include "ac3_parser.h"
#include "raw.h" #include "raw.h"
#include "crc.h"
#ifdef CONFIG_MUXERS #ifdef CONFIG_MUXERS
/* simple formats */ /* simple formats */
...@@ -429,6 +430,9 @@ static int ac3_probe(AVProbeData *p) ...@@ -429,6 +430,9 @@ static int ac3_probe(AVProbeData *p)
for(frames = 0; buf2 < end; frames++) { for(frames = 0; buf2 < end; frames++) {
if(ff_ac3_parse_header(buf2, &hdr) < 0) if(ff_ac3_parse_header(buf2, &hdr) < 0)
break; break;
if(buf2 + hdr.frame_size > end ||
av_crc(av_crc_get_table(AV_CRC_16_ANSI), 0, buf2 + 2, hdr.frame_size - 2))
break;
buf2 += hdr.frame_size; buf2 += hdr.frame_size;
} }
max_frames = FFMAX(max_frames, frames); max_frames = FFMAX(max_frames, frames);
......
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