Jump to content

GstInterpipe: Difference between revisions

Line 125: Line 125:
=== Buffer Forwarding ===
=== Buffer Forwarding ===


The main purpose of the GstInterpipe Project is to communicate buffers from one pipeline to another. This can be done in a safe way, without worrying about the states or events of any of the pipelines. To set an interpipesrc (listener) to listen to a specific interpipesink (node), all it is needed is to set the ''listen-to'' property. A NULL or empty ''listen-to'' will disconnect the listener from any node.  
The main purpose of the GstInterpipe Project is to communicate buffers from one pipeline to another. This can be done in a safe way, without worrying about the states or events of any of the pipelines. To set an interpipesrc (listener) to listen to a specific interpipesink (node), all it is needed is to set the ''listen-to'' property. A NULL or empty ''listen-to'' will disconnect the listener from any node. The following table summarises the properties involved in buffer transfer.


{| class="wikitable" style="margin:auto;"
{| class="wikitable" style="margin:auto;"
|-
|-
! colspan="3" | Property
! colspan="3" | Property
|-
| '''Element''' || colspan="2" | interpipesrc
|-
|-
| '''Name''' || colspan="2" | listen-to
| '''Name''' || colspan="2" | listen-to
Line 135: Line 137:
| '''Description''' || colspan="2" | The name of the node to listen to
| '''Description''' || colspan="2" | The name of the node to listen to
|-
|-
| rowspan="3" | '''Special Values''' || NULL || Stop listening
| rowspan="2" | '''Special Values''' || NULL || Stop listening
|-
|-
|  (empty) || Stop listening
|  (empty) || Stop listening
|}
|}
<br>
{| class="wikitable" style="margin:auto;"
|-
! colspan="3" | Property
|-
| '''Element''' || colspan="2" | interpipesink
|-
| '''Name''' || colspan="2" | name
|-
| '''Description''' || colspan="2" | The name of the node
|-
| '''Special Values''' || colspan="2"
|}


The following figures, and their respective gst-launch pipelines illustrate this concept:
The following figures, and their respective gst-launch pipelines illustrate this concept:
Line 145: Line 161:
[[File:Buffer_transfer_not_connected.png|600px|framed|center|Detached pipelines]]
[[File:Buffer_transfer_not_connected.png|600px|framed|center|Detached pipelines]]


  gst-launch-1.0 interpipesrc listen-to="" ! autovideosink
  gst-launch-1.0 interpipesrc listen-to="" ! fakesink
[[File:Buffer_transfer_connected.png|600px|framed|center|Attached pipelines]]
[[File:Buffer_transfer_connected.png|600px|framed|center|Attached pipelines]]


Cookies help us deliver our services. By using our services, you agree to our use of cookies.