mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-13 21:28:01 +02:00
Make dnxhd probe more strict, fail if we detect values in header that would
make our decoder fail anyway. dnxhd probe now passes probetest. Originally committed as revision 19847 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
9ecc414195
commit
98487a5b69
@ -580,10 +580,19 @@ static int dirac_probe(AVProbeData *p)
|
||||
static int dnxhd_probe(AVProbeData *p)
|
||||
{
|
||||
static const uint8_t header[] = {0x00,0x00,0x02,0x80,0x01};
|
||||
if (!memcmp(p->buf, header, 5))
|
||||
return AVPROBE_SCORE_MAX;
|
||||
else
|
||||
int w, h, compression_id;
|
||||
if (p->buf_size < 0x2c)
|
||||
return 0;
|
||||
if (memcmp(p->buf, header, 5))
|
||||
return 0;
|
||||
h = AV_RB16(p->buf + 0x18);
|
||||
w = AV_RB16(p->buf + 0x1a);
|
||||
if (!w || !h)
|
||||
return 0;
|
||||
compression_id = AV_RB32(p->buf + 0x28);
|
||||
if (compression_id < 1237 || compression_id > 1253)
|
||||
return 0;
|
||||
return AVPROBE_SCORE_MAX;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user