[Bug 743905] multiqueue: handle the BUFFERING query

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Dec 22 04:17:24 PST 2015


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

--- Comment #11 from Thiago Sousa Santos <thiagossantos at gmail.com> ---
(In reply to Duncan Palmer from comment #10)
> (In reply to Thiago Sousa Santos from comment #7)
> 
> > You're returning the overall buffering percent and not the specific pad
> > buffering level. Is this intentional?
> 
> It is, but I'm not sure whether it's the right thing to do or not, and I'm
> happy to change. I set the overall buffering percent, as this is the number
> used to decide whether the multiqueue is in the buffering state.
> 
> > If you query on the video sink you can get the video level, if you query on
> > the audio sink you could want the audio level.
> 
> A potential problem with this approach is that if someone sends a buffering
> query to the pipeline, they aren't going to know what the returned
> percentage figure means (I believe the pipeline will fire the query into the
> first sink on it's list?); they would have to specifically send the query to
> the sink they're interested in if they want to make use of the percentage
> figure.
> 
> > playbin could be responsible for aggregating the results from multiple sinks
> > if the query was sent to the pipeline. It would be tricky to aggregate
> > input/output rates and buffering ranges, though.
> 
> Not all of us can use playbin tho..

I think the queries arriving on pads should only account for the buffering on
that pad/queue. Imagine instead of multiqueue you were using separate queues.
We end up with the same aggregation problem again. Besides if you return an
aggregated value there is no way to get the individual ones.

I'd propose returning the individual queues buffering if the query arrives on
the pad, multiqueue could aggregate if the query is sent directly to it as an
element query. GstBin could also aggregate returns if it gets a query, it
already does some of that for other queries.

The only remaining question is how to properly aggregate the returns from
multiple queues?

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