[FFmpeg-trac] #528(avcodec:open): Image corruption in H264 from DVB

FFmpeg trac at avcodec.org
Mon Oct 3 14:29:47 CEST 2011


#528: Image corruption in H264 from DVB
-------------------------------------+-------------------------------------
             Reporter:  heleppkes    |                    Owner:
                 Type:  defect       |                   Status:  open
             Priority:  normal       |                Component:  avcodec
              Version:  git-master   |               Resolution:
             Keywords:  h264         |               Blocked By:
  artifact corruption                |  Reproduced by developer:  1
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Changes (by cehoyos):

 * status:  new => open
 * reproduced:  0 => 1


Comment:

 The original sample shows 11 wrong frames after the scene change.

 This is reproducible with ticket528.264, which decodes ~33 frames
 correctly, then 11 wrong (framecrc: 0xcae18c42 - 0x9f3d95e7, bit-identical
 with the original sample), then 9 correct frames, all compared with the
 reference decoder.
 {{{
 $ ffmpeg -i ticket528.264 -qscale 2 out.avi
 ffmpeg version N-33240-ga5dfeb6, Copyright (c) 2000-2011 the FFmpeg
 developers
   built on Oct  3 2011 10:53:02 with gcc 4.5.3
   configuration: --cc='/usr/local/gcc-4.5.3/bin/gcc -m32'
   libavutil    51. 19. 0 / 51. 19. 0
   libavcodec   53. 19. 0 / 53. 19. 0
   libavformat  53. 13. 0 / 53. 13. 0
   libavdevice  53.  4. 0 / 53.  4. 0
   libavfilter   2. 43. 6 /  2. 43. 6
   libswscale    2.  1. 0 /  2.  1. 0
 [h264 @ 0x8cc7aa0] Estimating duration from bitrate, this may be
 inaccurate

 Seems stream 0 codec frame rate differs from container frame rate: 50.00
 (50/1) -> 25.00 (50/2)
 Input #0, h264, from 'ticket528.264':
   Duration: N/A, bitrate: N/A
     Stream #0:0: Video: h264 (High), yuv420p, 1440x1080 [SAR 4:3 DAR
 16:9], 28.07 fps, 25 tbr, 1200k tbn, 50 tbc
 [buffer @ 0x8ccfe20] w:1440 h:1080 pixfmt:yuv420p tb:1/1000000 sar:4/3
 sws_param:
 [mpeg4 @ 0x8ccccc0] removing common factors from framerate
 Output #0, avi, to 'out.avi':
   Metadata:
     ISFT            : Lavf53.13.0
     Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 1440x1080 [SAR
 4:3 DAR 16:9], q=2-31, 200 kb/s, 25 tbn, 25 tbc
 Stream mapping:
   Stream #0.0 -> #0.0 (h264 -> mpeg4)
 Press [q] to stop, [?] for help
 frame=   52 fps= 34 q=2.0 Lsize=    1952kB time=00:00:02.08
 bitrate=7687.5kbits/s dup=0 drop=2
 video:1945kB audio:0kB global headers:0kB muxing overhead 0.352859%
 }}}
 ticket528short.264 contains all the corrupt frames from above (plus many
 frames before), but starts to decode in the middle of the originally
 corrupt block and outputs all frames correctly.

-- 
Ticket URL: <https://avcodec.org/trac/ffmpeg/ticket/528#comment:1>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list