Merge branch 'next-smack' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
[sfrench/cifs-2.6.git] / Documentation / media / uapi / v4l / selection-api-intro.rst
1 .. Permission is granted to copy, distribute and/or modify this
2 .. document under the terms of the GNU Free Documentation License,
3 .. Version 1.1 or any later version published by the Free Software
4 .. Foundation, with no Invariant Sections, no Front-Cover Texts
5 .. and no Back-Cover Texts. A copy of the license is included at
6 .. Documentation/media/uapi/fdl-appendix.rst.
7 ..
8 .. TODO: replace it to GFDL-1.1-or-later WITH no-invariant-sections
9
10 ************
11 Introduction
12 ************
13
14 Some video capture devices can sample a subsection of a picture and
15 shrink or enlarge it to an image of arbitrary size. Next, the devices
16 can insert the image into larger one. Some video output devices can crop
17 part of an input image, scale it up or down and insert it at an
18 arbitrary scan line and horizontal offset into a video signal. We call
19 these abilities cropping, scaling and composing.
20
21 On a video *capture* device the source is a video signal, and the
22 cropping target determine the area actually sampled. The sink is an
23 image stored in a memory buffer. The composing area specifies which part
24 of the buffer is actually written to by the hardware.
25
26 On a video *output* device the source is an image in a memory buffer,
27 and the cropping target is a part of an image to be shown on a display.
28 The sink is the display or the graphics screen. The application may
29 select the part of display where the image should be displayed. The size
30 and position of such a window is controlled by the compose target.
31
32 Rectangles for all cropping and composing targets are defined even if
33 the device does supports neither cropping nor composing. Their size and
34 position will be fixed in such a case. If the device does not support
35 scaling then the cropping and composing rectangles have the same size.