Opened 4 years ago

Closed 4 years ago

#2561 closed defect (fixed)

avi demuxing regression

Reported by: cehoyos Owned by:
Priority: important Component: avformat
Version: git-master Keywords: avi h264 regression
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: yes

Description

A user uploaded a h264/avi sample that contains a strd chunk which is read as extradata and makes video decoding impossible, this is a regression since b26f0ee.

$ ffmpeg -i 00212743_source.avi
ffmpeg version N-52969-gefaa2e0 Copyright (c) 2000-2013 the FFmpeg developers
  built on May 11 2013 18:37:57 with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl --disable-indev=jack --enable-libx264
  libavutil      52. 30.100 / 52. 30.100
  libavcodec     55.  7.100 / 55.  7.100
  libavformat    55.  4.101 / 55.  4.101
  libavdevice    55.  0.100 / 55.  0.100
  libavfilter     3. 64.100 /  3. 64.100
  libswscale      2.  3.100 /  2.  3.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  3.100 / 52.  3.100
[avi @ 0x1dc9020] non-interleaved AVI
[h264 @ 0x1dc9ac0] AVC: nal size 0
[h264 @ 0x1dc9ac0] missing picture in access unit with size 221993
[h264 @ 0x1dc9ac0] AVC: nal size 0
[h264 @ 0x1dc9ac0] no frame!

...

[h264 @ 0x1dc9ac0] AVC: nal size 0
[h264 @ 0x1dc9ac0] missing picture in access unit with size 32318
[h264 @ 0x1dc9ac0] AVC: nal size 0
[h264 @ 0x1dc9ac0] no frame!
[avi @ 0x1dc9020] decoding for stream 0 failed
[avi @ 0x1dc9020] Could not find codec parameters for stream 0 (Video: h264 (H264 / 0x34363248), 1920x1080): unspecified pixel format
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Guessed Channel Layout for  Input Stream #0.1 : stereo
Input #0, avi, from '00212743_source.avi':
  Duration: 00:01:19.18, start: 0.000000, bitrate: 10954 kb/s
    Stream #0:0: Video: h264 (H264 / 0x34363248), 1920x1080, 14.99 fps, 29.97 tbr, 29.97 tbn, 59.94 tbc
    Stream #0:1: Audio: adpcm_ms ([2][0][0][0] / 0x0002), 22050 Hz, stereo, s16, 176 kb/s
At least one output file must be specified

This is the relevant chunk in the source file:

000000d0  00 00 00 00 73 74 72 64  6c 12 00 00 01 00 00 00  |....strdl.......|
000000e0  05 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
000000f0  00 00 00 00 01 00 00 00  02 00 00 00 17 00 00 00  |................|
00000100  e6 00 00 00 20 03 00 00  01 00 00 00 00 00 00 00  |.... ...........|
00000110  00 00 00 00 01 00 00 00  2e 5c 78 32 36 34 2e 73  |.........\x264.s|
00000120  74 61 74 73 00 00 00 00  00 00 00 00 00 00 00 00  |tats............|
00000130  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000320  00 00 00 00 00 00 00 00  00 00 00 00 01 00 00 00  |................|
00000330  01 00 00 00 02 00 00 00  01 00 00 00 01 00 00 00  |................|
00000340  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001340  00 00 00 00 00 00 00 00  69 6e 64 78 f8 3f 00 00  |........indx.?..|

Change History (1)

comment:1 Changed 4 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.