aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/DocBook
diff options
context:
space:
mode:
authorSylwester Nawrocki <sylvester.nawrocki@gmail.com>2012-05-20 10:17:12 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-07-06 19:13:30 -0400
commitc133482300113b3b71fa4a1fd2118531e765b36a (patch)
tree795edef9f10d5016c64edf1e7959669b26d7bf51 /Documentation/DocBook
parent936148a71e5e55a301b274e98b0ad8b246a6f11b (diff)
[media] V4L: Remove "_ACTIVE" from the selection target name definitions
This patch drops the _ACTIVE part from the selection target names as a prerequisite to unify the selection target names across the subdev and regular video node API. The meaning of V4L2_SEL_TGT_*_ACTIVE and V4L2_SUBDEV_SEL_TGT_*_ACTUAL selection targets is logically the same. Different names add to confusion where both APIs are used in a single driver or an application. For some system configurations different names may lead to interoperability issues. For backwards compatibility V4L2_SEL_TGT_CROP_ACTIVE and V4L2_SEL_TGT_COMPOSE_ACTIVE are defined as aliases to V4L2_SEL_TGT_CROP and V4L2_SEL_TGT_COMPOSE. These aliases will be removed after deprecation period, according to Documentation/feature-removal-schedule.txt. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'Documentation/DocBook')
-rw-r--r--Documentation/DocBook/media/v4l/selection-api.xml24
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-g-selection.xml15
2 files changed, 20 insertions, 19 deletions
diff --git a/Documentation/DocBook/media/v4l/selection-api.xml b/Documentation/DocBook/media/v4l/selection-api.xml
index b299e4779354..ac013e50e0bd 100644
--- a/Documentation/DocBook/media/v4l/selection-api.xml
+++ b/Documentation/DocBook/media/v4l/selection-api.xml
@@ -91,7 +91,7 @@ top/left corner at position <constant> (0,0) </constant>. The rectangle's
91coordinates are expressed in pixels.</para> 91coordinates are expressed in pixels.</para>
92 92
93<para>The top left corner, width and height of the source rectangle, that is 93<para>The top left corner, width and height of the source rectangle, that is
94the area actually sampled, is given by the <constant> V4L2_SEL_TGT_CROP_ACTIVE 94the area actually sampled, is given by the <constant> V4L2_SEL_TGT_CROP
95</constant> target. It uses the same coordinate system as <constant> 95</constant> target. It uses the same coordinate system as <constant>
96V4L2_SEL_TGT_CROP_BOUNDS </constant>. The active cropping area must lie 96V4L2_SEL_TGT_CROP_BOUNDS </constant>. The active cropping area must lie
97completely inside the capture boundaries. The driver may further adjust the 97completely inside the capture boundaries. The driver may further adjust the
@@ -111,7 +111,7 @@ height are equal to the image size set by <constant> VIDIOC_S_FMT </constant>.
111</para> 111</para>
112 112
113<para>The part of a buffer into which the image is inserted by the hardware is 113<para>The part of a buffer into which the image is inserted by the hardware is
114controlled by the <constant> V4L2_SEL_TGT_COMPOSE_ACTIVE </constant> target. 114controlled by the <constant> V4L2_SEL_TGT_COMPOSE </constant> target.
115The rectangle's coordinates are also expressed in the same coordinate system as 115The rectangle's coordinates are also expressed in the same coordinate system as
116the bounds rectangle. The composing rectangle must lie completely inside bounds 116the bounds rectangle. The composing rectangle must lie completely inside bounds
117rectangle. The driver must adjust the composing rectangle to fit to the 117rectangle. The driver must adjust the composing rectangle to fit to the
@@ -125,7 +125,7 @@ bounding rectangle.</para>
125 125
126<para>The part of a buffer that is modified by the hardware is given by 126<para>The part of a buffer that is modified by the hardware is given by
127<constant> V4L2_SEL_TGT_COMPOSE_PADDED </constant>. It contains all pixels 127<constant> V4L2_SEL_TGT_COMPOSE_PADDED </constant>. It contains all pixels
128defined using <constant> V4L2_SEL_TGT_COMPOSE_ACTIVE </constant> plus all 128defined using <constant> V4L2_SEL_TGT_COMPOSE </constant> plus all
129padding data modified by hardware during insertion process. All pixels outside 129padding data modified by hardware during insertion process. All pixels outside
130this rectangle <emphasis>must not</emphasis> be changed by the hardware. The 130this rectangle <emphasis>must not</emphasis> be changed by the hardware. The
131content of pixels that lie inside the padded area but outside active area is 131content of pixels that lie inside the padded area but outside active area is
@@ -153,7 +153,7 @@ specified using <constant> VIDIOC_S_FMT </constant> ioctl.</para>
153 153
154<para>The top left corner, width and height of the source rectangle, that is 154<para>The top left corner, width and height of the source rectangle, that is
155the area from which image date are processed by the hardware, is given by the 155the area from which image date are processed by the hardware, is given by the
156<constant> V4L2_SEL_TGT_CROP_ACTIVE </constant>. Its coordinates are expressed 156<constant> V4L2_SEL_TGT_CROP </constant>. Its coordinates are expressed
157in in the same coordinate system as the bounds rectangle. The active cropping 157in in the same coordinate system as the bounds rectangle. The active cropping
158area must lie completely inside the crop boundaries and the driver may further 158area must lie completely inside the crop boundaries and the driver may further
159adjust the requested size and/or position according to hardware 159adjust the requested size and/or position according to hardware
@@ -165,7 +165,7 @@ bounding rectangle.</para>
165 165
166<para>The part of a video signal or graphics display where the image is 166<para>The part of a video signal or graphics display where the image is
167inserted by the hardware is controlled by <constant> 167inserted by the hardware is controlled by <constant>
168V4L2_SEL_TGT_COMPOSE_ACTIVE </constant> target. The rectangle's coordinates 168V4L2_SEL_TGT_COMPOSE </constant> target. The rectangle's coordinates
169are expressed in pixels. The composing rectangle must lie completely inside the 169are expressed in pixels. The composing rectangle must lie completely inside the
170bounds rectangle. The driver must adjust the area to fit to the bounding 170bounds rectangle. The driver must adjust the area to fit to the bounding
171limits. Moreover, the driver can perform other adjustments according to 171limits. Moreover, the driver can perform other adjustments according to
@@ -184,7 +184,7 @@ such a padded area is driver-dependent feature not covered by this document.
184Driver developers are encouraged to keep padded rectangle equal to active one. 184Driver developers are encouraged to keep padded rectangle equal to active one.
185The padded target is accessed by the <constant> V4L2_SEL_TGT_COMPOSE_PADDED 185The padded target is accessed by the <constant> V4L2_SEL_TGT_COMPOSE_PADDED
186</constant> identifier. It must contain all pixels from the <constant> 186</constant> identifier. It must contain all pixels from the <constant>
187V4L2_SEL_TGT_COMPOSE_ACTIVE </constant> target.</para> 187V4L2_SEL_TGT_COMPOSE </constant> target.</para>
188 188
189 </section> 189 </section>
190 190
@@ -193,8 +193,8 @@ V4L2_SEL_TGT_COMPOSE_ACTIVE </constant> target.</para>
193 <title>Scaling control</title> 193 <title>Scaling control</title>
194 194
195<para>An application can detect if scaling is performed by comparing the width 195<para>An application can detect if scaling is performed by comparing the width
196and the height of rectangles obtained using <constant> V4L2_SEL_TGT_CROP_ACTIVE 196and the height of rectangles obtained using <constant> V4L2_SEL_TGT_CROP
197</constant> and <constant> V4L2_SEL_TGT_COMPOSE_ACTIVE </constant> targets. If 197</constant> and <constant> V4L2_SEL_TGT_COMPOSE </constant> targets. If
198these are not equal then the scaling is applied. The application can compute 198these are not equal then the scaling is applied. The application can compute
199the scaling ratios using these values.</para> 199the scaling ratios using these values.</para>
200 200
@@ -252,7 +252,7 @@ area)</para>
252 ret = ioctl(fd, &VIDIOC-G-SELECTION;, &amp;sel); 252 ret = ioctl(fd, &VIDIOC-G-SELECTION;, &amp;sel);
253 if (ret) 253 if (ret)
254 exit(-1); 254 exit(-1);
255 sel.target = V4L2_SEL_TGT_CROP_ACTIVE; 255 sel.target = V4L2_SEL_TGT_CROP;
256 ret = ioctl(fd, &VIDIOC-S-SELECTION;, &amp;sel); 256 ret = ioctl(fd, &VIDIOC-S-SELECTION;, &amp;sel);
257 if (ret) 257 if (ret)
258 exit(-1); 258 exit(-1);
@@ -281,7 +281,7 @@ area)</para>
281 r.left = sel.r.width / 4; 281 r.left = sel.r.width / 4;
282 r.top = sel.r.height / 4; 282 r.top = sel.r.height / 4;
283 sel.r = r; 283 sel.r = r;
284 sel.target = V4L2_SEL_TGT_COMPOSE_ACTIVE; 284 sel.target = V4L2_SEL_TGT_COMPOSE;
285 sel.flags = V4L2_SEL_FLAG_LE; 285 sel.flags = V4L2_SEL_FLAG_LE;
286 ret = ioctl(fd, &VIDIOC-S-SELECTION;, &amp;sel); 286 ret = ioctl(fd, &VIDIOC-S-SELECTION;, &amp;sel);
287 if (ret) 287 if (ret)
@@ -298,11 +298,11 @@ V4L2_BUF_TYPE_VIDEO_OUTPUT </constant> for other devices</para>
298 298
299 &v4l2-selection; compose = { 299 &v4l2-selection; compose = {
300 .type = V4L2_BUF_TYPE_VIDEO_OUTPUT, 300 .type = V4L2_BUF_TYPE_VIDEO_OUTPUT,
301 .target = V4L2_SEL_TGT_COMPOSE_ACTIVE, 301 .target = V4L2_SEL_TGT_COMPOSE,
302 }; 302 };
303 &v4l2-selection; crop = { 303 &v4l2-selection; crop = {
304 .type = V4L2_BUF_TYPE_VIDEO_OUTPUT, 304 .type = V4L2_BUF_TYPE_VIDEO_OUTPUT,
305 .target = V4L2_SEL_TGT_CROP_ACTIVE, 305 .target = V4L2_SEL_TGT_CROP,
306 }; 306 };
307 double hscale, vscale; 307 double hscale, vscale;
308 308
diff --git a/Documentation/DocBook/media/v4l/vidioc-g-selection.xml b/Documentation/DocBook/media/v4l/vidioc-g-selection.xml
index bb04eff75f45..6376e57ff576 100644
--- a/Documentation/DocBook/media/v4l/vidioc-g-selection.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-g-selection.xml
@@ -65,8 +65,8 @@ Do not use multiplanar buffers. Use <constant> V4L2_BUF_TYPE_VIDEO_CAPTURE
65</constant>. Use <constant> V4L2_BUF_TYPE_VIDEO_OUTPUT </constant> instead of 65</constant>. Use <constant> V4L2_BUF_TYPE_VIDEO_OUTPUT </constant> instead of
66<constant> V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE </constant>. The next step is 66<constant> V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE </constant>. The next step is
67setting the value of &v4l2-selection; <structfield>target</structfield> field 67setting the value of &v4l2-selection; <structfield>target</structfield> field
68to <constant> V4L2_SEL_TGT_CROP_ACTIVE </constant> (<constant> 68to <constant> V4L2_SEL_TGT_CROP </constant> (<constant>
69V4L2_SEL_TGT_COMPOSE_ACTIVE </constant>). Please refer to table <xref 69V4L2_SEL_TGT_COMPOSE </constant>). Please refer to table <xref
70linkend="v4l2-sel-target" /> or <xref linkend="selection-api" /> for additional 70linkend="v4l2-sel-target" /> or <xref linkend="selection-api" /> for additional
71targets. The <structfield>flags</structfield> and <structfield>reserved 71targets. The <structfield>flags</structfield> and <structfield>reserved
72</structfield> fields of &v4l2-selection; are ignored and they must be filled 72</structfield> fields of &v4l2-selection; are ignored and they must be filled
@@ -86,8 +86,8 @@ use multiplanar buffers. Use <constant> V4L2_BUF_TYPE_VIDEO_CAPTURE
86</constant>. Use <constant> V4L2_BUF_TYPE_VIDEO_OUTPUT </constant> instead of 86</constant>. Use <constant> V4L2_BUF_TYPE_VIDEO_OUTPUT </constant> instead of
87<constant> V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE </constant>. The next step is 87<constant> V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE </constant>. The next step is
88setting the value of &v4l2-selection; <structfield>target</structfield> to 88setting the value of &v4l2-selection; <structfield>target</structfield> to
89<constant>V4L2_SEL_TGT_CROP_ACTIVE</constant> (<constant> 89<constant>V4L2_SEL_TGT_CROP</constant> (<constant>
90V4L2_SEL_TGT_COMPOSE_ACTIVE </constant>). Please refer to table <xref 90V4L2_SEL_TGT_COMPOSE </constant>). Please refer to table <xref
91linkend="v4l2-sel-target" /> or <xref linkend="selection-api" /> for additional 91linkend="v4l2-sel-target" /> or <xref linkend="selection-api" /> for additional
92targets. The &v4l2-rect; <structfield>r</structfield> rectangle need to be 92targets. The &v4l2-rect; <structfield>r</structfield> rectangle need to be
93set to the desired active area. Field &v4l2-selection; <structfield> reserved 93set to the desired active area. Field &v4l2-selection; <structfield> reserved
@@ -161,7 +161,7 @@ exist no rectangle </emphasis> that satisfies the constraints.</para>
161 &cs-def; 161 &cs-def;
162 <tbody valign="top"> 162 <tbody valign="top">
163 <row> 163 <row>
164 <entry><constant>V4L2_SEL_TGT_CROP_ACTIVE</constant></entry> 164 <entry><constant>V4L2_SEL_TGT_CROP</constant></entry>
165 <entry>0x0000</entry> 165 <entry>0x0000</entry>
166 <entry>The area that is currently cropped by hardware.</entry> 166 <entry>The area that is currently cropped by hardware.</entry>
167 </row> 167 </row>
@@ -176,7 +176,7 @@ exist no rectangle </emphasis> that satisfies the constraints.</para>
176 <entry>Limits for the cropping rectangle.</entry> 176 <entry>Limits for the cropping rectangle.</entry>
177 </row> 177 </row>
178 <row> 178 <row>
179 <entry><constant>V4L2_SEL_TGT_COMPOSE_ACTIVE</constant></entry> 179 <entry><constant>V4L2_SEL_TGT_COMPOSE</constant></entry>
180 <entry>0x0100</entry> 180 <entry>0x0100</entry>
181 <entry>The area to which data is composed by hardware.</entry> 181 <entry>The area to which data is composed by hardware.</entry>
182 </row> 182 </row>
@@ -193,7 +193,8 @@ exist no rectangle </emphasis> that satisfies the constraints.</para>
193 <row> 193 <row>
194 <entry><constant>V4L2_SEL_TGT_COMPOSE_PADDED</constant></entry> 194 <entry><constant>V4L2_SEL_TGT_COMPOSE_PADDED</constant></entry>
195 <entry>0x0103</entry> 195 <entry>0x0103</entry>
196 <entry>The active area and all padding pixels that are inserted or modified by hardware.</entry> 196 <entry>The active area and all padding pixels that are inserted or
197 modified by hardware.</entry>
197 </row> 198 </row>
198 </tbody> 199 </tbody>
199 </tgroup> 200 </tgroup>