diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-05-07 03:12:34 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-06-02 22:59:50 +0200 |
commit | e529ff52a05f7533059ff17b30b5a1474d2719e5 (patch) | |
tree | 5a401d3d979f501caaa3c843491037aeb4a169b6 | |
parent | fb7e76d1cfc516b6d6eff36ba0efb1c983acb86a (diff) | |
download | ffmpeg-e529ff52a05f7533059ff17b30b5a1474d2719e5.tar.gz |
avformat/h263dec: shift data in state to make more bits available to probe
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 04b15a6055fc230a655091ce21303f9d2a996ed9)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavformat/h263dec.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libavformat/h263dec.c b/libavformat/h263dec.c index 19ed6a94ca..486e4b0eb8 100644 --- a/libavformat/h263dec.c +++ b/libavformat/h263dec.c @@ -34,21 +34,21 @@ static int h263_probe(AVProbeData *p) for(i=0; i<p->buf_size; i++){ code = (code<<8) + p->buf[i]; - if ((code & 0xfffffc0000) == 0x800000) { - src_fmt= (code>>2)&7; + if ((code & 0xfffffc000000) == 0x80000000) { + src_fmt= (code>>10)&7; if( src_fmt != last_src_fmt && last_src_fmt>0 && last_src_fmt<6 && src_fmt<6) res_change++; - if((code&0x300)==0x200 && src_fmt){ + if((code&0x30000)==0x20000 && 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; + } else if((code & 0xffff80000000) == 0x80000000) { + int gn= (code>>(31-5)) & 0x1F; if(gn<last_gn){ invalid_psc++; }else |