[Bug 783049] v4l2src: buffer starvation prevent pipeline to run as expected fps

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed May 24 17:19:41 UTC 2017


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

Nicolas Dufresne (stormer) <nicolas at ndufresne.ca> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |nicolas at ndufresne.ca

--- Comment #3 from Nicolas Dufresne (stormer) <nicolas at ndufresne.ca> ---
(In reply to Guillaume Desmottes from comment #2)
> Review of attachment 352510 [details] [review]:
> 
> ::: sys/v4l2/gstv4l2object.c
> @@ +3941,1 @@
>    if (pushing_from_our_pool) {
> 
> I guess we want to increase the number of buffers also when not pushing from
> our pool?

I would believe not. When not pushing from our own pool, we'll have 2 buffers
allocated. The flow would be something like:

1. 2 buffer queued
2. 1 buffer queued, 1 being copied
3. 2 buffer queued, pushing

So we give back the buffer before we start pushing. That should reduce the risk
of starving the capture. In the end, we'll starve the driver only if the copy
takes longer then 1 frame duration, which is fine.

-- 
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