From ProventusNova DeveloperWiki
(Created page with "= GStreamer Interpipes = '''GStreamer Interpipes''' is a plugin that enables efficient communication between multiple GStreamer pipelines. It allows sharing buffers, reducing latency, and optimizing resource usage. == 📌 Features == * Low-latency pipeline communication. * Supports inter-source and inter-sink elements. * Dynamically link/unlink pipelines without restarting. == 🔗 Key Concepts == Interpipes introduce: * '''interpipesink''' – Acts as a producer of m...")  |
|||
Line 18: | Line 18: | ||
== 🚀 Example Pipeline == |
== 🚀 Example Pipeline == |
||
Start a producer pipeline: |
|||
=== Start a Producer Pipeline === |
|||
<syntaxhighlight lang="bash"> |
|||
<pre> |
|||
gst-launch-1.0 -e interpipesrc name=src1 is-live=true ! interpipesink name=sink1 |
gst-launch-1.0 -e interpipesrc name=src1 is-live=true ! interpipesink name=sink1 |
||
</pre> |
|||
</syntaxhighlight> |
|||
Connect a |
=== Connect a Consumer Pipeline === |
||
<pre> |
|||
<syntaxhighlight lang="bash"> |
|||
gst-launch-1.0 -e interpipesrc listen-to=sink1 ! autovideosink |
gst-launch-1.0 -e interpipesrc listen-to=sink1 ! autovideosink |
||
</pre> |
|||
</syntaxhighlight> |
|||
== 📖 References == |
== 📖 References == |
Revision as of 11:14, 24 February 2025
GStreamer Interpipes
GStreamer Interpipes is a plugin that enables efficient communication between multiple GStreamer pipelines. It allows sharing buffers, reducing latency, and optimizing resource usage.
📌 Features
- Low-latency pipeline communication.
- Supports inter-source and inter-sink elements.
- Dynamically link/unlink pipelines without restarting.
🔗 Key Concepts
Interpipes introduce:
- interpipesink – Acts as a producer of media buffers.
- interpipesrc – Acts as a consumer, receiving data from interpipesink.
💡 Use Cases
- Multi-camera setups – Combine multiple camera feeds efficiently.
- Live video processing – Apply real-time filters across multiple streams.
- Edge AI & Computer Vision – Process data from multiple sources dynamically.
🚀 Example Pipeline
Start a Producer Pipeline
gst-launch-1.0 -e interpipesrc name=src1 is-live=true ! interpipesink name=sink1
Connect a Consumer Pipeline
gst-launch-1.0 -e interpipesrc listen-to=sink1 ! autovideosink