diff mbox series

[v13,01/34] media: Documentation: mc: add definitions for stream and pipeline

Message ID 20220810121122.3149086-2-tomi.valkeinen@ideasonboard.com (mailing list archive)
State New, archived
Headers show
Series v4l: routing and streams support | expand

Commit Message

Tomi Valkeinen Aug. 10, 2022, 12:10 p.m. UTC
The doc talks about streams and pipelines, but doesn't really define
them. This is an attempt to define them according to my understanding.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
---
 Documentation/driver-api/media/mc-core.rst | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

Laurent Pinchart Aug. 29, 2022, 3:51 p.m. UTC | #1
Hi Tomi,

Thank you for the patch.

On Wed, Aug 10, 2022 at 03:10:49PM +0300, Tomi Valkeinen wrote:
> The doc talks about streams and pipelines, but doesn't really define
> them. This is an attempt to define them according to my understanding.
> 
> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>

This is a good start.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

> ---
>  Documentation/driver-api/media/mc-core.rst | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/Documentation/driver-api/media/mc-core.rst b/Documentation/driver-api/media/mc-core.rst
> index 02481a2513b9..2a0c0aeec5f2 100644
> --- a/Documentation/driver-api/media/mc-core.rst
> +++ b/Documentation/driver-api/media/mc-core.rst
> @@ -213,6 +213,18 @@ Link properties can be modified at runtime by calling
>  Pipelines and media streams
>  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
>  
> +A media stream is a stream of pixels or metadata originating from one or more
> +source devices (such as a sensors) and flowing through media entity pads
> +towards the final sinks. The stream can be modified on the route by the
> +devices (e.g. scaling or pixel format conversions), or it can be split into
> +multiple branches, or multiple branches can be merged.
> +
> +A media pipeline is a set of media streams which are interdependent. This
> +interdependency can be caused by the hardware (e.g. configuration of a second
> +stream cannot be changed if the first stream has been enabled) or by the driver
> +due to the software design. Most commonly a media pipeline consists of a single
> +stream which does not branch.
> +
>  When starting streaming, drivers must notify all entities in the pipeline to
>  prevent link states from being modified during streaming by calling
>  :c:func:`media_pipeline_start()`.
diff mbox series

Patch

diff --git a/Documentation/driver-api/media/mc-core.rst b/Documentation/driver-api/media/mc-core.rst
index 02481a2513b9..2a0c0aeec5f2 100644
--- a/Documentation/driver-api/media/mc-core.rst
+++ b/Documentation/driver-api/media/mc-core.rst
@@ -213,6 +213,18 @@  Link properties can be modified at runtime by calling
 Pipelines and media streams
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
+A media stream is a stream of pixels or metadata originating from one or more
+source devices (such as a sensors) and flowing through media entity pads
+towards the final sinks. The stream can be modified on the route by the
+devices (e.g. scaling or pixel format conversions), or it can be split into
+multiple branches, or multiple branches can be merged.
+
+A media pipeline is a set of media streams which are interdependent. This
+interdependency can be caused by the hardware (e.g. configuration of a second
+stream cannot be changed if the first stream has been enabled) or by the driver
+due to the software design. Most commonly a media pipeline consists of a single
+stream which does not branch.
+
 When starting streaming, drivers must notify all entities in the pipeline to
 prevent link states from being modified during streaming by calling
 :c:func:`media_pipeline_start()`.