[Bug 747722] New: winks: buffer is too late

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sat Apr 11 17:13:34 PDT 2015


https://bugzilla.gnome.org/show_bug.cgi?id=747722

            Bug ID: 747722
           Summary: winks: buffer is too late
    Classification: Platform
           Product: GStreamer
           Version: git master
                OS: Windows
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gst-plugins-bad
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: lrn1986 at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

When displaying video from a camera (ksvideosrc ! queue ! videoconvert !
d3dvideosink), i get warnings like this:

WARNING: from element /GstPipeline:pipeline0/GstD3DVideoSink:d3dvideosink0: A
lot of buffers are being dropped.
Additional debug info:
../../../../gstreamer-0ad06434daae08fea343741de1fa8fc386f52808/libs/gst/base/gstbasesink.c(2793):
gst_base_sink_is_too_late ():
/GstPipeline:pipeline0/GstD3DVideoSink:d3dvideosink0:
There may be a timestamping problem, or this computer is too slow.

With added identity element and extra debug levels i can see this:
/GstPipeline:pipeline0/GstIdentity:identity0: last-message = chain   *******
(identity0:sink) (614400 bytes, dts: 0:00:00.000000000, pts:0:00:01.255244356,
duration: 0:00:00.033333333, offset: 0, offset_end:  1, flags: 00000040 discont
) 02a34988
0:00:01.430347548  3904    29b8308 DEBUG        GST_PERFORMANCE
gstbufferpool.c:1251:default_release_buffer:<d3dsurfacebufferpool1> discarding
buffer 02a34ca8: size 1228800 != 614400
0:00:01.431033364  3904    29b8308 DEBUG        GST_PERFORMANCE
gstbufferpool.c:1251:default_release_buffer:<d3dsurfacebufferpool1> discarding
buffer 02a34d48: size 1228800 != 614400
0:00:01.432655536  3904    29b87b8 DEBUG             ksvideosrc
gstksvideosrc.c:770:gst_ks_video_src_query:<ksvideosrc0> reporting latency of
min 0:00:00.033333333 max 0:00:00.033333333
0:00:01.433146354  3904    29b8308 DEBUG        GST_PERFORMANCE
gstbasesink.c:2785:gst_base_sink_is_too_late:<d3dvideosink0> buffer is too late
0:00:01.259009705 > 0:00:00.053333333

and later on:
/GstPipeline:pipeline0/GstIdentity:identity0: last-message = chain   *******
(identity0:sink) (614400 bytes, dts: none, pts:0:00:02.852976978, duration:
0:00:00.033333333, offset: 0, offset_end:  1, flags: 00000000 ) 02d25208

Note that in one case dts is 0, and in all others it's none. dts != none set in
the src element causes the warning to be displayed later in the sink.

The function that sets dts to 0 from time to time is gst_base_src_do_sync().

This can be fixed by adding explicit GST_BUFFER_DTS (buf) =
GST_CLOCK_TIME_NONE; to the end of gst_ks_video_src_timestamp_buffer().

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list