Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
[linux-2.6.git] / Documentation / DocBook / media / v4l / vidioc-enum-dv-presets.xml
1 <refentry id="vidioc-enum-dv-presets">
2   <refmeta>
3     <refentrytitle>ioctl VIDIOC_ENUM_DV_PRESETS</refentrytitle>
4     &manvol;
5   </refmeta>
6
7   <refnamediv>
8     <refname>VIDIOC_ENUM_DV_PRESETS</refname>
9     <refpurpose>Enumerate supported Digital Video presets</refpurpose>
10   </refnamediv>
11
12   <refsynopsisdiv>
13     <funcsynopsis>
14       <funcprototype>
15         <funcdef>int <function>ioctl</function></funcdef>
16         <paramdef>int <parameter>fd</parameter></paramdef>
17         <paramdef>int <parameter>request</parameter></paramdef>
18         <paramdef>struct v4l2_dv_enum_preset *<parameter>argp</parameter></paramdef>
19       </funcprototype>
20     </funcsynopsis>
21   </refsynopsisdiv>
22
23   <refsect1>
24     <title>Arguments</title>
25
26     <variablelist>
27       <varlistentry>
28         <term><parameter>fd</parameter></term>
29         <listitem>
30           <para>&fd;</para>
31         </listitem>
32       </varlistentry>
33       <varlistentry>
34         <term><parameter>request</parameter></term>
35         <listitem>
36           <para>VIDIOC_ENUM_DV_PRESETS</para>
37         </listitem>
38       </varlistentry>
39       <varlistentry>
40         <term><parameter>argp</parameter></term>
41         <listitem>
42           <para></para>
43         </listitem>
44       </varlistentry>
45     </variablelist>
46   </refsect1>
47
48   <refsect1>
49     <title>Description</title>
50
51     <para>To query the attributes of a DV preset, applications initialize the
52 <structfield>index</structfield> field and zero the reserved array of &v4l2-dv-enum-preset;
53 and call the <constant>VIDIOC_ENUM_DV_PRESETS</constant> ioctl with a pointer to this
54 structure. Drivers fill the rest of the structure or return an
55 &EINVAL; when the index is out of bounds. To enumerate all DV Presets supported,
56 applications shall begin at index zero, incrementing by one until the
57 driver returns <errorcode>EINVAL</errorcode>. Drivers may enumerate a
58 different set of DV presets after switching the video input or
59 output.</para>
60
61     <table pgwide="1" frame="none" id="v4l2-dv-enum-preset">
62       <title>struct <structname>v4l2_dv_enum_presets</structname></title>
63       <tgroup cols="3">
64         &cs-str;
65         <tbody valign="top">
66           <row>
67             <entry>__u32</entry>
68             <entry><structfield>index</structfield></entry>
69             <entry>Number of the DV preset, set by the
70 application.</entry>
71           </row>
72           <row>
73             <entry>__u32</entry>
74             <entry><structfield>preset</structfield></entry>
75             <entry>This field identifies one of the DV preset values listed in <xref linkend="v4l2-dv-presets-vals"/>.</entry>
76           </row>
77           <row>
78             <entry>__u8</entry>
79             <entry><structfield>name</structfield>[24]</entry>
80             <entry>Name of the preset, a NUL-terminated ASCII string, for example: "720P-60", "1080I-60". This information is
81 intended for the user.</entry>
82           </row>
83           <row>
84             <entry>__u32</entry>
85             <entry><structfield>width</structfield></entry>
86             <entry>Width of the active video in pixels for the DV preset.</entry>
87           </row>
88           <row>
89             <entry>__u32</entry>
90             <entry><structfield>height</structfield></entry>
91             <entry>Height of the active video in lines for the DV preset.</entry>
92           </row>
93           <row>
94             <entry>__u32</entry>
95             <entry><structfield>reserved</structfield>[4]</entry>
96             <entry>Reserved for future extensions. Drivers must set the array to zero.</entry>
97           </row>
98         </tbody>
99       </tgroup>
100     </table>
101
102     <table pgwide="1" frame="none" id="v4l2-dv-presets-vals">
103       <title>struct <structname>DV Presets</structname></title>
104       <tgroup cols="3">
105         &cs-str;
106         <tbody valign="top">
107           <row>
108             <entry>Preset</entry>
109             <entry>Preset value</entry>
110             <entry>Description</entry>
111           </row>
112           <row>
113             <entry></entry>
114             <entry></entry>
115             <entry></entry>
116           </row>
117           <row>
118             <entry>V4L2_DV_INVALID</entry>
119             <entry>0</entry>
120             <entry>Invalid preset value.</entry>
121           </row>
122           <row>
123             <entry>V4L2_DV_480P59_94</entry>
124             <entry>1</entry>
125             <entry>720x480 progressive video at 59.94 fps as per BT.1362.</entry>
126           </row>
127           <row>
128             <entry>V4L2_DV_576P50</entry>
129             <entry>2</entry>
130             <entry>720x576 progressive video at 50 fps as per BT.1362.</entry>
131           </row>
132           <row>
133             <entry>V4L2_DV_720P24</entry>
134             <entry>3</entry>
135             <entry>1280x720 progressive video at 24 fps as per SMPTE 296M.</entry>
136           </row>
137           <row>
138             <entry>V4L2_DV_720P25</entry>
139             <entry>4</entry>
140             <entry>1280x720 progressive video at 25 fps as per SMPTE 296M.</entry>
141           </row>
142           <row>
143             <entry>V4L2_DV_720P30</entry>
144             <entry>5</entry>
145             <entry>1280x720 progressive video at 30 fps as per SMPTE 296M.</entry>
146           </row>
147           <row>
148             <entry>V4L2_DV_720P50</entry>
149             <entry>6</entry>
150             <entry>1280x720 progressive video at 50 fps as per SMPTE 296M.</entry>
151           </row>
152           <row>
153             <entry>V4L2_DV_720P59_94</entry>
154             <entry>7</entry>
155             <entry>1280x720 progressive video at 59.94 fps as per SMPTE 274M.</entry>
156           </row>
157           <row>
158             <entry>V4L2_DV_720P60</entry>
159             <entry>8</entry>
160             <entry>1280x720 progressive video at 60 fps as per SMPTE 274M/296M.</entry>
161           </row>
162           <row>
163             <entry>V4L2_DV_1080I29_97</entry>
164             <entry>9</entry>
165             <entry>1920x1080 interlaced video at 29.97 fps as per BT.1120/SMPTE 274M.</entry>
166           </row>
167           <row>
168             <entry>V4L2_DV_1080I30</entry>
169             <entry>10</entry>
170             <entry>1920x1080 interlaced video at 30 fps as per BT.1120/SMPTE 274M.</entry>
171           </row>
172           <row>
173             <entry>V4L2_DV_1080I25</entry>
174             <entry>11</entry>
175             <entry>1920x1080 interlaced video at 25 fps as per BT.1120.</entry>
176           </row>
177           <row>
178             <entry>V4L2_DV_1080I50</entry>
179             <entry>12</entry>
180             <entry>1920x1080 interlaced video at 50 fps as per SMPTE 296M.</entry>
181           </row>
182           <row>
183             <entry>V4L2_DV_1080I60</entry>
184             <entry>13</entry>
185             <entry>1920x1080 interlaced video at 60 fps as per SMPTE 296M.</entry>
186           </row>
187           <row>
188             <entry>V4L2_DV_1080P24</entry>
189             <entry>14</entry>
190             <entry>1920x1080 progressive video at 24 fps as per SMPTE 296M.</entry>
191           </row>
192           <row>
193             <entry>V4L2_DV_1080P25</entry>
194             <entry>15</entry>
195             <entry>1920x1080 progressive video at 25 fps as per SMPTE 296M.</entry>
196           </row>
197           <row>
198             <entry>V4L2_DV_1080P30</entry>
199             <entry>16</entry>
200             <entry>1920x1080 progressive video at 30 fps as per SMPTE 296M.</entry>
201           </row>
202           <row>
203             <entry>V4L2_DV_1080P50</entry>
204             <entry>17</entry>
205             <entry>1920x1080 progressive video at 50 fps as per BT.1120.</entry>
206           </row>
207           <row>
208             <entry>V4L2_DV_1080P60</entry>
209             <entry>18</entry>
210             <entry>1920x1080 progressive video at 60 fps as per BT.1120.</entry>
211           </row>
212         </tbody>
213       </tgroup>
214     </table>
215   </refsect1>
216
217   <refsect1>
218     &return-value;
219
220     <variablelist>
221       <varlistentry>
222         <term><errorcode>EINVAL</errorcode></term>
223         <listitem>
224           <para>The &v4l2-dv-enum-preset; <structfield>index</structfield>
225 is out of bounds.</para>
226         </listitem>
227       </varlistentry>
228     </variablelist>
229   </refsect1>
230 </refentry>