comparison aea.c @ 5173:948db02fab55 libavformat

Add condition to aea demuxer probe.
author banan
date Sun, 13 Sep 2009 18:27:53 +0000
parents 80a367a3742c
children 536e5527c1e0
comparison
equal deleted inserted replaced
5172:06b0c8fd923f 5173:948db02fab55
35 if (p->buf_size <= 2048+212) 35 if (p->buf_size <= 2048+212)
36 return 0; 36 return 0;
37 37
38 /* Magic is '00 08 00 00' in Little Endian*/ 38 /* Magic is '00 08 00 00' in Little Endian*/
39 if (AV_RL32(p->buf)==0x800) { 39 if (AV_RL32(p->buf)==0x800) {
40 int bsm_s, bsm_e, inb_s, inb_e; 40 int bsm_s, bsm_e, inb_s, inb_e, ch;
41 ch = p->buf[264];
41 bsm_s = p->buf[2048]; 42 bsm_s = p->buf[2048];
42 inb_s = p->buf[2048+1]; 43 inb_s = p->buf[2048+1];
43 inb_e = p->buf[2048+210]; 44 inb_e = p->buf[2048+210];
44 bsm_e = p->buf[2048+211]; 45 bsm_e = p->buf[2048+211];
45 46
47 if (ch != 1 && ch != 2)
48 return 0;
46 49
47 /* Check so that the redundant bsm bytes and info bytes are valid 50 /* Check so that the redundant bsm bytes and info bytes are valid
48 * the block size mode bytes have to be the same 51 * the block size mode bytes have to be the same
49 * the info bytes have to be the same 52 * the info bytes have to be the same
50 * the block size mode and info byte can't be the same 53 * the block size mode and info byte can't be the same