Influencing playbin2/decodebin2 auto-plugging
Tvrtko Ursulin
tvrtko.ursulin at onelan.co.uk
Fri Aug 3 01:58:36 PDT 2012
On Thursday 02 August 2012 18:36:05 Tim-Philipp Müller wrote:
> On Thu, 2012-08-02 at 19:03 +0200, Stefan Sauer wrote:
> > On 08/02/2012 04:39 PM, Tvrtko Ursulin wrote:
> > > Is there a way to dynamically influence auto-plugging in
> > > playbin2/decodebin2, for example by upranking or deranking elements?
> >
> > No. https://bugzilla.gnome.org/show_bug.cgi?id=649542
>
> This is just convenience API, of course you can do such things
> dynamically.
>
> You can manually set element ranks at runtime in your application by
> looking up the GstElementFactory/GstPluginFeature in the registry after
> gst_init() and setting the plugin rank via
> gst_plugin_feature_set_rank().
>
> Then there are the "autoplug-{factories,sort,select}" signals on
> decodebin2/uridecodebin, which you can use to tweak the autoplugging.
>
> You can use those in playbin2 as well, but you need to "somehow" find
> the uridecodebin element inside playbin2.
This sounds promising, if application can reject an element in the autoplug-
select signal this is exactly what we need.
I'll try this approach and report back - hopefully it is possible from Python.
And I _think_ I already had a solution to find decodebin in playbin2.
> As for the vaapi stuff, I thought this should just work automagically
> these days (with latest releases) if the video-sink set supports it
> (like vaapi*sink or cluttersink). Perhaps it's only in git, don't
> remember. I'm sure someone will correct me if needed :)
>
> What problem are you trying to solve exactly?
Let some videos be played on the GPU and some on the CPU - because together
they can play more than only one on it's own.
Tvrtko
More information about the gstreamer-devel
mailing list