[uvch264src in 1.1.1.1] "Got data flow before segment event" warnings until crash

Peter Rennert p.rennert at cs.ucl.ac.uk
Wed Aug 7 13:32:20 PDT 2013


Hi Rob,

On 08/07/2013 09:18 PM, Robert Krakora wrote:
> Not enough data to read marker content

This was the error we had at the very beginning. Is there again a buffer 
that is not unreffed?


I did not have time to make another long running test, but I will try to 
do it at the weekend with the patch I posted before:

diff --git a/sys/v4l2/gstv4l2bufferpool.c b/sys/v4l2/gstv4l2bufferpool.c
index 1e74fc7..3430b86 100644
--- a/sys/v4l2/gstv4l2bufferpool.c
+++ b/sys/v4l2/gstv4l2bufferpool.c
@@ -52,6 +52,9 @@
  #define V4L2_FIELD_INTERLACED_BT 9
  #endif

+#ifndef VIDIOC_CREATE_BUFS
+#define VIDIOC_CREATE_BUFS
+#endif

I initally defined VIDIOC_CREATE_BUFS (even though I have no idea what 
that actually should be), because of this part of the v4l2-bufferpool:

gstv4l2bufferpool.c
lines 855-868

           /* start copying buffers when we are running low on buffers */
           if (pool->num_queued < pool->copy_threshold) {
             GstBuffer *copy;
#ifdef VIDIOC_CREATE_BUFS
             if (pool->can_alloc) {
               if (GST_BUFFER_POOL_CLASS (parent_class)->acquire_buffer 
(bpool,
                       &copy, params) == GST_FLOW_OK) {
                 gst_v4l2_buffer_pool_release_buffer (bpool, copy);
                 break;
               } else {
                 pool->can_alloc = FALSE;
               }
             }
#endif




More information about the gstreamer-devel mailing list