[Libav-user] coded_picture_number sequence has gaps => grey artifacts during playback

Marvin Killing marvin at playtestcloud.com
Tue Nov 24 15:15:18 CET 2015


Hi, we encode videos captured in realtime into h264 using ffmpeg’s libav. However, we sometimes see weird grey artifacts covering the whole frame. These artifacts cover up the video until the arrival of the next I-frame. Attached below is a frame printout of one the affected videos. Please note the gap in “coded_picture_number”. It jumps from 0 to 2. There seems to be a correlation between the grey artifacts appearing and gaps in the sequence of “coded_picture_number”, as videos that don’t have gaps play back fine.

The artifacts do not appear when using Quicktime to play back the video. However they do appear when I play back the video using VLC or when transcoding it using ffmpeg cli.

Can a gap in coded_picture_number be indicative to a mistake we’re making during the encoding?

Screenshot of the artifacts: https://www.dropbox.com/s/fk0wa9fa3cj8ef7/Screen%20Shot%202015-11-24%20at%2015.13.17.png?dl=0

ffprobe -show_frames -print_format json -select_streams v file.mp4

"frames": [
        {
            "media_type": "video",
            "stream_index": 1,
            "key_frame": 1,
            "pkt_pts": 768,
            "pkt_pts_time": "0.040000",
            "pkt_dts": 768,
            "pkt_dts_time": "0.040000",
            "best_effort_timestamp": 768,
            "best_effort_timestamp_time": "0.040000",
            "pkt_duration": 960,
            "pkt_duration_time": "0.050000",
            "pkt_pos": "380",
            "pkt_size": "238171",
            "width": 1024,
            "height": 768,
            "pix_fmt": "yuv420p",
            "pict_type": "I",
            "coded_picture_number": 0,
            "display_picture_number": 0,
            "interlaced_frame": 0,
            "top_field_first": 0,
            "repeat_pict": 0
        },
        {
            "media_type": "video",
            "stream_index": 1,
            "key_frame": 0,
            "pkt_pts": 1728,
            "pkt_pts_time": "0.090000",
            "pkt_dts": 1728,
            "pkt_dts_time": "0.090000",
            "best_effort_timestamp": 1728,
            "best_effort_timestamp_time": "0.090000",
            "pkt_duration": 768,
            "pkt_duration_time": "0.040000",
            "pkt_pos": "238943",
            "pkt_size": "231",
            "width": 1024,
            "height": 768,
            "pix_fmt": "yuv420p",
            "pict_type": "P",
            "coded_picture_number": 2,
            "display_picture_number": 0,
            "interlaced_frame": 0,
            "top_field_first": 0,
            "repeat_pict": 0
        },
        {
            "media_type": "video",
            "stream_index": 1,
            "key_frame": 0,
            "pkt_pts": 2496,
            "pkt_pts_time": "0.130000",
            "pkt_dts": 2496,
            "pkt_dts_time": "0.130000",
            "best_effort_timestamp": 2496,
            "best_effort_timestamp_time": "0.130000",
            "pkt_duration": 384,
            "pkt_duration_time": "0.020000",
            "pkt_pos": "239580",
            "pkt_size": "214",
            "width": 1024,
            "height": 768,
            "pix_fmt": "yuv420p",
            "pict_type": "P",
            "coded_picture_number": 3,
            "display_picture_number": 0,
            "interlaced_frame": 0,
            "top_field_first": 0,
            "repeat_pict": 0
        },

[…]




Marvin Killing
Co-Founder
 
PlaytestCloud
Rudolf-Breitscheid-Str. 209
14482 Potsdam
Germany

T: +49 151 23068772

www.playtestcloud.com <http://www.playtestcloud.com/>

PlaytestCloud GmbH
Managing Directors: Christian Ress, Marvin Killing

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://ffmpeg.org/pipermail/libav-user/attachments/20151124/90b45ad2/attachment.html>


More information about the Libav-user mailing list