diff options
author | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-03-04 10:21:39 +0100 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-04-14 10:31:49 +0200 |
commit | 54f38fcae536ea202ce7d6a359521492fba30c1f (patch) | |
tree | dd1a2b36d8de0b13702f2716526ad3b91650e090 /Documentation/media/uapi/v4l/dev-mem2mem.rst | |
parent | media: docs: split uAPI info from imx.rst (diff) | |
download | linux-54f38fcae536ea202ce7d6a359521492fba30c1f.tar.xz linux-54f38fcae536ea202ce7d6a359521492fba30c1f.zip |
media: docs: move uAPI book to userspace-api/media
Since 2017, there is an space reserved for userspace API,
created by changeset 1d596dee3862 ("docs: Create a user-space API guide").
As the media subsystem was one of the first subsystems to use
Sphinx, until this patch, we were keeping things on a separate
place.
Let's just use the new location, as having all uAPI altogether
will likely make things easier for developers.
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'Documentation/media/uapi/v4l/dev-mem2mem.rst')
-rw-r--r-- | Documentation/media/uapi/v4l/dev-mem2mem.rst | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/Documentation/media/uapi/v4l/dev-mem2mem.rst b/Documentation/media/uapi/v4l/dev-mem2mem.rst deleted file mode 100644 index 70953958cee6..000000000000 --- a/Documentation/media/uapi/v4l/dev-mem2mem.rst +++ /dev/null @@ -1,49 +0,0 @@ -.. Permission is granted to copy, distribute and/or modify this -.. document under the terms of the GNU Free Documentation License, -.. Version 1.1 or any later version published by the Free Software -.. Foundation, with no Invariant Sections, no Front-Cover Texts -.. and no Back-Cover Texts. A copy of the license is included at -.. Documentation/media/uapi/fdl-appendix.rst. -.. -.. TODO: replace it to GFDL-1.1-or-later WITH no-invariant-sections - -.. _mem2mem: - -******************************** -Video Memory-To-Memory Interface -******************************** - -A V4L2 memory-to-memory device can compress, decompress, transform, or -otherwise convert video data from one format into another format, in memory. -Such memory-to-memory devices set the ``V4L2_CAP_VIDEO_M2M`` or -``V4L2_CAP_VIDEO_M2M_MPLANE`` capability. Examples of memory-to-memory -devices are codecs, scalers, deinterlacers or format converters (i.e. -converting from YUV to RGB). - -A memory-to-memory video node acts just like a normal video node, but it -supports both output (sending frames from memory to the hardware) -and capture (receiving the processed frames from the hardware into -memory) stream I/O. An application will have to setup the stream I/O for -both sides and finally call :ref:`VIDIOC_STREAMON <VIDIOC_STREAMON>` -for both capture and output to start the hardware. - -Memory-to-memory devices function as a shared resource: you can -open the video node multiple times, each application setting up their -own properties that are local to the file handle, and each can use -it independently from the others. The driver will arbitrate access to -the hardware and reprogram it whenever another file handler gets access. -This is different from the usual video node behavior where the video -properties are global to the device (i.e. changing something through one -file handle is visible through another file handle). - -One of the most common memory-to-memory device is the codec. Codecs -are more complicated than most and require additional setup for -their codec parameters. This is done through codec controls. -See :ref:`mpeg-controls`. More details on how to use codec memory-to-memory -devices are given in the following sections. - -.. toctree:: - :maxdepth: 1 - - dev-decoder - dev-stateless-decoder |