How to connect intervideosink and intervideosrc for IPC pipelines

Yasushi SHOJI yasushi.shoji at gmail.com
Mon Sep 11 09:21:50 UTC 2017


Hi,

On Mon, Sep 11, 2017 at 1:30 PM, avinashgst <aviec07 at gmail.com> wrote:
> I want to use the gstreamer pipeline for 2 different process.
> 1st process : it should able to decode video and give data to sink
> 2nd process : Take the decoded data and give to renderer (native window or
> framebuffer)

Do you have to run two different "processes", for each CPU?
GStreamer is highly threaded framework and your OS scheduler
might be good enough to select a thread for your available CPUs.

> I came across intervideosink/intervideosrc for this purpose "Virtual video
> sink/src for internal process communication"
>
> In 1st process pipeline seems to be like this:
> gst-launch-1.0 playbin uri=file:///home/user/testdata/testVideo.mp4
> video-sink=intervideosink
>
> In 2nd process its
> gst-launch-1.0 intervideosrc ! autovideosink
>
> Need a suggestion how i can make a connection between intervideosink --->
> intervideosrc

there is a good test code for it.

https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/gst/inter/gstintertest.c

And there is a comment, in gstintervideosink, saying:

> The intervideosink element cannot be used effectively with
> gst-launch-1.0, as it requires a second pipeline in the application to
> send video to.  See the gstintertest.c example in the gst-plugins-bad
> source code for more details.
-- 
              yashi


More information about the gstreamer-devel mailing list