[FFmpeg-cvslog] r23645 - trunk/libavformat/raw.c
michael
subversion
Sat Jun 19 01:17:21 CEST 2010
Author: michael
Date: Sat Jun 19 01:17:20 2010
New Revision: 23645
Log:
Improve h263_probe()
Fixes issue2015
Modified:
trunk/libavformat/raw.c
Modified: trunk/libavformat/raw.c
==============================================================================
--- trunk/libavformat/raw.c Fri Jun 18 22:07:43 2010 (r23644)
+++ trunk/libavformat/raw.c Sat Jun 19 01:17:20 2010 (r23645)
@@ -457,6 +457,7 @@ static int h263_probe(AVProbeData *p)
int invalid_psc=0;
int res_change=0;
int src_fmt, last_src_fmt=-1;
+ int last_gn=0;
for(i=0; i<p->buf_size; i++){
code = (code<<8) + p->buf[i];
@@ -469,9 +470,16 @@ static int h263_probe(AVProbeData *p)
if((code&0x300)==0x200 && src_fmt){
valid_psc++;
+ last_gn=0;
}else
invalid_psc++;
last_src_fmt= src_fmt;
+ } else if((code & 0xffff800000) == 0x800000) {
+ int gn= (code>>(23-5)) & 0x1F;
+ if(gn<last_gn){
+ invalid_psc++;
+ }else
+ last_gn= gn;
}
}
//av_log(NULL, AV_LOG_ERROR, "h263_probe: psc:%d invalid:%d res_change:%d\n", valid_psc, invalid_psc, res_change);
More information about the ffmpeg-cvslog
mailing list