[gst-devel] Problem with setting queue to drop data

Tim Müller t.i.m at zen.co.uk
Wed Aug 29 21:33:33 CEST 2007


On Wed, 2007-08-29 at 20:44 +0200, Thomas Holzmann wrote:

> I want to set a queue element to drop data after some time. I try to 
> make it with this:
> 
> g_object_set (G_OBJECT(queue), "max-size-time", 100, NULL); 

There are two problems with this line:

  - the "max-size-time" property takes a guint64 and g_object_set()
    is a vararg function that doesn't know about the types of the
    arguments passed to it, so in this case it will default to
    passing an integer, which might cause problems on certain systems.

    Use  g_object_set (queue, "max-size-time", (guint64) 100, NULL)
    instead.

 - the "max-size-time" property takes a time value in nanosecond
   units. 100 nanoseconds is not a lot - maybe you meant milliseconds
   (100 * GST_MSECOND) instead?


> With GST_DEBUG I also get these warnings:
> 
> 0:00:01.780929000  7135 0x852a040 WARN              basesink 
> gstbasesink.c:2123:gst_base_sink_chain_unlocked:<asink_> warning: 
> Internes Datenflussproblem. Bitte schicken Sie einen Fehlerbericht.
> In english: Internal dataflow problem. Please send a bug report.
> 0:00:01.781214000  7135 0x852a040 WARN              basesink 
> gstbasesink.c:2123:gst_base_sink_chain_unlocked:<asink_> warning: 
> Received buffer without a new-segment. Assuming timestamps start from 0.
> 
> So is that a bug from gstreamer or have I set the properties wrong?

This means the audiosink didn't receive a newsegment event in TIME
format from the upstream element (or rather: no newsegment event at all
before the first buffer).  Probably a bug in an upstream element, unless
you're interfering with events yourself in your program (pad probes,
etc.).

Cheers
 -Tim
 





More information about the gstreamer-devel mailing list