GNOME Bugzilla – Bug 733720
videodecoder: output should not have DTS
Last modified: 2014-08-11 08:42:12 UTC
avdec_h264 outputs raw video buffers with both PTS and DTS set. Raw video streams should not have decode timestamps. gst-libav 1.4.0 with built-in libav
Any comment? Not sure how this should be patched. Maybe it should apply to all decoders?
The video decoder base class should probably make sure that no DTS is set on any buffers, but gst-libav also should not set them to begin with
GstVideoDecoder (gst-plugins-base) has these lines: /* set PTS and DTS to both the PTS for decoded frames */ GST_BUFFER_PTS (output_buffer) = frame->pts; GST_BUFFER_DTS (output_buffer) = frame->pts; GST_BUFFER_DURATION (output_buffer) = frame->duration;
Yes, I think it should set the DTS = GST_CLOCK_TIME_NONE there. I'd be careful before pushing that to 1.4, it might make other bugs appears. But in 1.5 we should definitely do that. Want to (know how) to provide a patch ?
Created attachment 282812 [details] [review] patch
commit 8a1f8623fa1ad5b65bd057216f7ab19fcab16874 Author: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> Date: Thu Aug 7 10:44:03 2014 +0200 videodecoder: Don't set decoding timestamps on raw video https://bugzilla.gnome.org/show_bug.cgi?id=733720