mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 10:04:04 +02:00
media: Documentation: vivid.rst: Remove documentation for Capture Overlay
Modifying documentation to remove 'Capture Overlay section' as
destructive capture overlay support was removed.
See commit ccaa9d50ca ("media: vivid: drop overlay support")
Signed-off-by: Dorcas Anono Litunya <anonolitunya@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
This commit is contained in:
parent
3883822e17
commit
0bc9574a7a
|
|
@ -1282,74 +1282,6 @@ data_offset to be non-zero, so this is a useful feature for testing applications
|
|||
Video output will also honor any data_offset that the application set.
|
||||
|
||||
|
||||
Capture Overlay
|
||||
---------------
|
||||
|
||||
Note: capture overlay support is implemented primarily to test the existing
|
||||
V4L2 capture overlay API. In practice few if any GPUs support such overlays
|
||||
anymore, and neither are they generally needed anymore since modern hardware
|
||||
is so much more capable. By setting flag 0x10000 in the node_types module
|
||||
option the vivid driver will create a simple framebuffer device that can be
|
||||
used for testing this API. Whether this API should be used for new drivers is
|
||||
questionable.
|
||||
|
||||
This driver has support for a destructive capture overlay with bitmap clipping
|
||||
and list clipping (up to 16 rectangles) capabilities. Overlays are not
|
||||
supported for multiplanar formats. It also honors the struct v4l2_window field
|
||||
setting: if it is set to FIELD_TOP or FIELD_BOTTOM and the capture setting is
|
||||
FIELD_ALTERNATE, then only the top or bottom fields will be copied to the overlay.
|
||||
|
||||
The overlay only works if you are also capturing at that same time. This is a
|
||||
vivid limitation since it copies from a buffer to the overlay instead of
|
||||
filling the overlay directly. And if you are not capturing, then no buffers
|
||||
are available to fill.
|
||||
|
||||
In addition, the pixelformat of the capture format and that of the framebuffer
|
||||
must be the same for the overlay to work. Otherwise VIDIOC_OVERLAY will return
|
||||
an error.
|
||||
|
||||
In order to really see what it going on you will need to create two vivid
|
||||
instances: the first with a framebuffer enabled. You configure the capture
|
||||
overlay of the second instance to use the framebuffer of the first, then
|
||||
you start capturing in the second instance. For the first instance you setup
|
||||
the output overlay for the video output, turn on video looping and capture
|
||||
to see the blended framebuffer overlay that's being written to by the second
|
||||
instance. This setup would require the following commands:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
$ sudo modprobe vivid n_devs=2 node_types=0x10101,0x1
|
||||
$ v4l2-ctl -d1 --find-fb
|
||||
/dev/fb1 is the framebuffer associated with base address 0x12800000
|
||||
$ sudo v4l2-ctl -d2 --set-fbuf fb=1
|
||||
$ v4l2-ctl -d1 --set-fbuf fb=1
|
||||
$ v4l2-ctl -d0 --set-fmt-video=pixelformat='AR15'
|
||||
$ v4l2-ctl -d1 --set-fmt-video-out=pixelformat='AR15'
|
||||
$ v4l2-ctl -d2 --set-fmt-video=pixelformat='AR15'
|
||||
$ v4l2-ctl -d0 -i2
|
||||
$ v4l2-ctl -d2 -i2
|
||||
$ v4l2-ctl -d2 -c horizontal_movement=4
|
||||
$ v4l2-ctl -d1 --overlay=1
|
||||
$ v4l2-ctl -d0 -c loop_video=1
|
||||
$ v4l2-ctl -d2 --stream-mmap --overlay=1
|
||||
|
||||
And from another console:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
$ v4l2-ctl -d1 --stream-out-mmap
|
||||
|
||||
And yet another console:
|
||||
|
||||
.. code-block:: none
|
||||
|
||||
$ qv4l2
|
||||
|
||||
and start streaming.
|
||||
|
||||
As you can see, this is not for the faint of heart...
|
||||
|
||||
|
||||
Output Overlay
|
||||
--------------
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user