queue2 problem when the queue is full

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

queue2 problem when the queue is full

BillyBob
Hello,

I have a case where I need to use TWO queue2 (one is for video and one is for audio), but I observed when one of the queue is FULL, that queue is stop but the other queue is also stopped....

I'm not sure why this is happening? shouldn't the second queue keep buffering?
is this the normal behavior?

to simulate I'm using this:

gst-launch-1.0 -v filesrc location=/var/www/html/timecode.mpeg ! tsdemux name=d \
d. ! h264parse ! capsfilter ! queue2 use-buffering=TRUE max-size-buffers=50 ! tcpserversink port=9999 \
d. ! aacparse ! capsfilter ! queue2 use-buffering=TRUE max-size-buffers=50 ! tcpserversink port=9998



Thanks :)
Reply | Threaded
Open this post in threaded view
|

Re: queue2 problem when the queue is full

Sebastian Dröge-3
On Wed, 2017-03-29 at 20:27 -0700, BillyBob wrote:
> Hello,
>
> I have a case where I need to use TWO queue2 (one is for video and one is
> for audio), but I observed when one of the queue is FULL, that queue is stop
> but the other queue is also stopped....
>
> I'm not sure why this is happening? shouldn't the second queue keep
> buffering?
> is this the normal behavior?

That depends on your pipeline, but in your specific one that is normal.
What will happen is that when one of the queues runs full, the demuxer
thread that pushes into that queue will block until there's space again
in the queue. And while the demuxer thread is blocked, it can't push
any new buffers into the other queue. So the other queue stays empty
and does not produce any further output either.

--
Sebastian Dröge, Centricular Ltd · http://www.centricular.com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (981 bytes) Download Attachment