Jetson Xavier NX - RidgeRun Products - GstInterpipe

From RidgeRun Developer Connection
< Jetson Xavier NX‎ | RidgeRun Products
Revision as of 23:17, 19 August 2020 by Dgarbanzo (talk | contribs) (Created page with "<noinclude> {{JetsonXavierNX/Head|previous=RidgeRun Products/GstRtspSink|next=RidgeRun Products/GstInference|keywords=ridgerun products,gstreamer products,GstInterpipe,pipe in...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search



Previous: RidgeRun Products/GstRtspSink Index Next: RidgeRun Products/GstInference


Nvidia-preferred-partner-badge-rgb-for-screen.png




Overview

GstInterpipe is a RidgeRun open source Gstreamer plug-in that allows communication between two or more independent pipelines. It consists of two elements: interpipesink and interpipesrc. The interpipesrc gets connected with an interpipesink, from which it receives buffers and events.

GstInterpipe is intended to reduce a big complex pipeline system into smaller and simpler independent pipelines. So, you can view and handle those independent pipelines as different blocks that you can control independently (change it state or modify properties) and connect or disconnect them with other blocks in runtime. It allows to have multiple source and sink pipelines in an application with the possibility of dynamically change the source pipeline that a sink pipeline is listening. Is like if you have a set of different pipes that you can plug and unplug between them in runtime, so the system changes it behavior according to the pipe interconnection configuration.

Promo/Demo Video



Simplifying complex pipelines

The concept behind the GstInterpipes project is to simplify the construction of GStreamer applications, which often has the complexity of requiring dynamic pipelines. It transforms the construction process from low level pad probe manipulation to the higher level of setting an element's parameter value. Application developers don't get mired down in stalled pipelines due to one branch of a complex pipeline changing state.

For example, take a look in a complex pipeline:

Error creating thumbnail: Unable to save thumbnail to destination
Figure 2: Complex Single Pipeline


The complex pipeline of figure 2 can be constructed into smaller, independent pipelines using interpipe elements as it is illustrated in the figure 3:

Error creating thumbnail: Unable to save thumbnail to destination
Figure 3: Ten independent simple pipelines using Interpipes


This way the stream flow in a complex pipeline is reduced to simply set the correct listeners in the interpipe elements taking away the complexity of re-configuring pads or some other complex and error-prone logic.


Getting Started

To know more about the extension please refer to the GstInterpipe Overview wiki page.

How to Purchase

Jetson_Xavier_NX/Contact_Us page has the RidgeRun contact details for purchasing or requesting for the evaluation version.


Previous: RidgeRun Products/GstRtspSink Index Next: RidgeRun Products/GstInference