Modifying playbin pipeline

Nicolas Dufresne nicolas at ndufresne.ca
Thu Jun 1 17:56:04 UTC 2017


Le jeudi 01 juin 2017 à 06:57 -0700, psiva87 a écrit :
> Yes, we have dmabuf enabled only for this path. Otherwise there will 
> be more buffer copies as playbin involves many elements in video 
> pipeline like videoconvert, videoscale etc., 
> 
> On Wed, May 31, 2017 at 7:46 AM, Arun Raghavan-4 [via GStreamer-devel] 
> <[hidden email]> wrote:
> 
> > On Wed, 24 May 2017, at 08:25 PM, psiva87 wrote: 
> >> Hi, 
> >> I want to modify the video pipeline of playbin for my requirement say 
> >> optimize Video decoder -> Video sink path instead of having multiple 
> >> video 
> >> processing elements in between. In that case, is there any way I can do 
> >> it? 
> >> I know we can modify the playbin to use specific video/audio sinks, but 
> >> that 
> >> doesn't solve this? 
>> > Do you have a specific case where you see a suboptimal pipeline setup? 
>
To avoid the extra filters, you could tweak playbin flags,
"(0x00000040): native-video" is often use for that.

Now, if you need to enabled let's say dmabuf on your V4L2 decoder, as
is it right now, you'll need to watch some signals on playbin (e.g.
element-setup) and enable it. You could also setup a sink that bundle
everything (note this is not yet supported by playbin3). 

This is something I have used in the past for some players on Exynos.

  playbin video-sink="v4l2video0dec capture-io-mode=dmabuf ! v4l2video5convert output-io-mode=dmabuf-import capture-io-mode=dmabuf ! waylandsink"

In the longer term, dmabuf export/import should just work, but this is
not as trivial as it looks like. Also, playbin should be able to auto-
plug hardware scaler/converters (often combined). If you do have the
time, improving GStreamer toward this goal would be more then welcome.

Nicolas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20170601/c270ac1e/attachment.sig>


More information about the gstreamer-devel mailing list