1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
2<HTML
3><HEAD
4><TITLE
5>Extended Controls</TITLE
6><META
7NAME="GENERATOR"
8CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
9REL="HOME"
10TITLE="Video for Linux Two API Specification"
11HREF="book1.htm"><LINK
12REL="UP"
13TITLE="Common API Elements"
14HREF="c174.htm"><LINK
15REL="PREVIOUS"
16TITLE="User Controls"
17HREF="x542.htm"><LINK
18REL="NEXT"
19TITLE="Data Formats"
20HREF="x1859.htm"></HEAD
21><BODY
22CLASS="SECTION"
23BGCOLOR="#FFFFFF"
24TEXT="#000000"
25LINK="#0000FF"
26VLINK="#840084"
27ALINK="#0000FF"
28><DIV
29CLASS="NAVHEADER"
30><TABLE
31SUMMARY="Header navigation table"
32WIDTH="100%"
33BORDER="0"
34CELLPADDING="0"
35CELLSPACING="0"
36><TR
37><TH
38COLSPAN="3"
39ALIGN="center"
40>Video for Linux Two API Specification: Revision 0.24</TH
41></TR
42><TR
43><TD
44WIDTH="10%"
45ALIGN="left"
46VALIGN="bottom"
47><A
48HREF="x542.htm"
49ACCESSKEY="P"
50>Prev</A
51></TD
52><TD
53WIDTH="80%"
54ALIGN="center"
55VALIGN="bottom"
56>Chapter 1. Common API Elements</TD
57><TD
58WIDTH="10%"
59ALIGN="right"
60VALIGN="bottom"
61><A
62HREF="x1859.htm"
63ACCESSKEY="N"
64>Next</A
65></TD
66></TR
67></TABLE
68><HR
69ALIGN="LEFT"
70WIDTH="100%"></DIV
71><DIV
72CLASS="SECTION"
73><H1
74CLASS="SECTION"
75><A
76NAME="EXTENDED-CONTROLS"
77>1.9. Extended Controls</A
78></H1
79><DIV
80CLASS="SECTION"
81><H2
82CLASS="SECTION"
83><A
84NAME="AEN804"
85>1.9.1. Introduction</A
86></H2
87><P
88>The control mechanism as originally designed was meant
89to be used for user settings (brightness, saturation, etc). However,
90it turned out to be a very useful model for implementing more
91complicated driver APIs where each driver implements only a subset of
92a larger API.</P
93><P
94>The MPEG encoding API was the driving force behind
95designing and implementing this extended control mechanism: the MPEG
96standard is quite large and the currently supported hardware MPEG
97encoders each only implement a subset of this standard. Further more,
98many parameters relating to how the video is encoded into an MPEG
99stream are specific to the MPEG encoding chip since the MPEG standard
100only defines the format of the resulting MPEG stream, not how the
101video is actually encoded into that format.</P
102><P
103>Unfortunately, the original control API lacked some
104features needed for these new uses and so it was extended into the
105(not terribly originally named) extended control API.</P
106></DIV
107><DIV
108CLASS="SECTION"
109><H2
110CLASS="SECTION"
111><A
112NAME="AEN809"
113>1.9.2. The Extended Control API</A
114></H2
115><P
116>Three new ioctls are available: <A
117HREF="r10386.htm"
118><CODE
119CLASS="CONSTANT"
120>VIDIOC_G_EXT_CTRLS</CODE
121></A
122>,
123<A
124HREF="r10386.htm"
125><CODE
126CLASS="CONSTANT"
127>VIDIOC_S_EXT_CTRLS</CODE
128></A
129> and <A
130HREF="r10386.htm"
131><CODE
132CLASS="CONSTANT"
133>VIDIOC_TRY_EXT_CTRLS</CODE
134></A
135>. These ioctls act on
136arrays of controls (as opposed to the <A
137HREF="r10104.htm"
138><CODE
139CLASS="CONSTANT"
140>VIDIOC_G_CTRL</CODE
141></A
142> and
143<A
144HREF="r10104.htm"
145><CODE
146CLASS="CONSTANT"
147>VIDIOC_S_CTRL</CODE
148></A
149> ioctls that act on a single control). This is needed
150since it is often required to atomically change several controls at
151once.</P
152><P
153>Each of the new ioctls expects a pointer to a
154struct&nbsp;<A
155HREF="r10386.htm#V4L2-EXT-CONTROLS"
156>v4l2_ext_controls</A
157>. This structure contains a pointer to the control
158array, a count of the number of controls in that array and a control
159class. Control classes are used to group similar controls into a
160single class. For example, control class
161<CODE
162CLASS="CONSTANT"
163>V4L2_CTRL_CLASS_USER</CODE
164> contains all user controls
165(i.&nbsp;e. all controls that can also be set using the old
166<CODE
167CLASS="CONSTANT"
168>VIDIOC_S_CTRL</CODE
169> ioctl). Control class
170<CODE
171CLASS="CONSTANT"
172>V4L2_CTRL_CLASS_MPEG</CODE
173> contains all controls
174relating to MPEG encoding, etc.</P
175><P
176>All controls in the control array must belong to the
177specified control class. An error is returned if this is not the
178case.</P
179><P
180>It is also possible to use an empty control array (count
181== 0) to check whether the specified control class is
182supported.</P
183><P
184>The control array is a struct&nbsp;<A
185HREF="r10386.htm#V4L2-EXT-CONTROL"
186>v4l2_ext_control</A
187> array. The
188<CODE
189CLASS="STRUCTNAME"
190>v4l2_ext_control</CODE
191> structure is very similar to
192struct&nbsp;<A
193HREF="r10104.htm#V4L2-CONTROL"
194>v4l2_control</A
195>, except for the fact that it also allows for 64-bit
196values and pointers to be passed (although the latter is not yet used
197anywhere).</P
198><P
199>It is important to realize that due to the flexibility of
200controls it is necessary to check whether the control you want to set
201actually is supported in the driver and what the valid range of values
202is. So use the <A
203HREF="r13317.htm"
204><CODE
205CLASS="CONSTANT"
206>VIDIOC_QUERYCTRL</CODE
207></A
208> and <A
209HREF="r13317.htm"
210><CODE
211CLASS="CONSTANT"
212>VIDIOC_QUERYMENU</CODE
213></A
214> ioctls to
215check this. Also note that it is possible that some of the menu
216indices in a control of type <CODE
217CLASS="CONSTANT"
218>V4L2_CTRL_TYPE_MENU</CODE
219>
220may not be supported (<CODE
221CLASS="CONSTANT"
222>VIDIOC_QUERYMENU</CODE
223> will
224return an error). A good example is the list of supported MPEG audio
225bitrates. Some drivers only support one or two bitrates, others
226support a wider range.</P
227></DIV
228><DIV
229CLASS="SECTION"
230><H2
231CLASS="SECTION"
232><A
233NAME="AEN840"
234>1.9.3. Enumerating Extended Controls</A
235></H2
236><P
237>The recommended way to enumerate over the extended
238controls is by using <A
239HREF="r13317.htm"
240><CODE
241CLASS="CONSTANT"
242>VIDIOC_QUERYCTRL</CODE
243></A
244> in combination with the
245<CODE
246CLASS="CONSTANT"
247>V4L2_CTRL_FLAG_NEXT_CTRL</CODE
248> flag:</P
249><DIV
250CLASS="INFORMALEXAMPLE"
251><P
252></P
253><A
254NAME="AEN846"
255></A
256><PRE
257CLASS="PROGRAMLISTING"
258>struct&nbsp;<A
259HREF="r13317.htm#V4L2-QUERYCTRL"
260>v4l2_queryctrl</A
261> qctrl;
262
263qctrl.id = V4L2_CTRL_FLAG_NEXT_CTRL;
264while (0 == ioctl (fd, <A
265HREF="r13317.htm"
266><CODE
267CLASS="CONSTANT"
268>VIDIOC_QUERYCTRL</CODE
269></A
270>, &amp;qctrl)) {
271        /* ... */
272        qctrl.id |= V4L2_CTRL_FLAG_NEXT_CTRL;
273}</PRE
274><P
275></P
276></DIV
277><P
278>The initial control ID is set to 0 ORed with the
279<CODE
280CLASS="CONSTANT"
281>V4L2_CTRL_FLAG_NEXT_CTRL</CODE
282> flag. The
283<CODE
284CLASS="CONSTANT"
285>VIDIOC_QUERYCTRL</CODE
286> ioctl will return the first
287control with a higher ID than the specified one. When no such controls
288are found an error is returned.</P
289><P
290>If you want to get all controls within a specific control
291class, then you can set the initial
292<CODE
293CLASS="STRUCTFIELD"
294>qctrl.id</CODE
295> value to the control class and add
296an extra check to break out of the loop when a control of another
297control class is found:</P
298><DIV
299CLASS="INFORMALEXAMPLE"
300><P
301></P
302><A
303NAME="AEN856"
304></A
305><PRE
306CLASS="PROGRAMLISTING"
307>qctrl.id = V4L2_CTRL_CLASS_MPEG | V4L2_CTRL_FLAG_NEXT_CTRL;
308while (0 == ioctl (fd, <A
309HREF="r13317.htm"
310><CODE
311CLASS="CONSTANT"
312>VIDIOC_QUERYCTRL</CODE
313></A
314>, &amp;qctrl)) {
315        if (V4L2_CTRL_ID2CLASS (qctrl.id) != V4L2_CTRL_CLASS_MPEG)
316                break;
317                /* ... */
318                qctrl.id |= V4L2_CTRL_FLAG_NEXT_CTRL;
319        }</PRE
320><P
321></P
322></DIV
323><P
324>The 32-bit <CODE
325CLASS="STRUCTFIELD"
326>qctrl.id</CODE
327> value is
328subdivided into three bit ranges: the top 4 bits are reserved for
329flags (e.&nbsp;g. <CODE
330CLASS="CONSTANT"
331>V4L2_CTRL_FLAG_NEXT_CTRL</CODE
332>) and are not
333actually part of the ID. The remaining 28 bits form the control ID, of
334which the most significant 12 bits define the control class and the
335least significant 16 bits identify the control within the control
336class. It is guaranteed that these last 16 bits are always non-zero
337for controls. The range of 0x1000 and up are reserved for
338driver-specific controls. The macro
339<CODE
340CLASS="CONSTANT"
341>V4L2_CTRL_ID2CLASS(id)</CODE
342> returns the control class
343ID based on a control ID.</P
344><P
345>If the driver does not support extended controls, then
346<CODE
347CLASS="CONSTANT"
348>VIDIOC_QUERYCTRL</CODE
349> will fail when used in
350combination with <CODE
351CLASS="CONSTANT"
352>V4L2_CTRL_FLAG_NEXT_CTRL</CODE
353>. In
354that case the old method of enumerating control should be used (see
3551.8). But if it is supported, then it is guaranteed to enumerate over
356all controls, including driver-private controls.</P
357></DIV
358><DIV
359CLASS="SECTION"
360><H2
361CLASS="SECTION"
362><A
363NAME="AEN867"
364>1.9.4. Creating Control Panels</A
365></H2
366><P
367>It is possible to create control panels for a graphical
368user interface where the user can select the various controls.
369Basically you will have to iterate over all controls using the method
370described above. Each control class starts with a control of type
371<CODE
372CLASS="CONSTANT"
373>V4L2_CTRL_TYPE_CTRL_CLASS</CODE
374>.
375<CODE
376CLASS="CONSTANT"
377>VIDIOC_QUERYCTRL</CODE
378> will return the name of this
379control class which can be used as the title of a tab page within a
380control panel.</P
381><P
382>The flags field of struct&nbsp;<A
383HREF="r13317.htm#V4L2-QUERYCTRL"
384>v4l2_queryctrl</A
385> also contains hints on
386the behavior of the control. See the <A
387HREF="r13317.htm"
388><CODE
389CLASS="CONSTANT"
390>VIDIOC_QUERYCTRL</CODE
391></A
392> documentation
393for more details.</P
394></DIV
395><DIV
396CLASS="SECTION"
397><H2
398CLASS="SECTION"
399><A
400NAME="MPEG-CONTROLS"
401>1.9.5. MPEG Control Reference</A
402></H2
403><P
404>Below all controls within the MPEG control class are
405described. First the generic controls, then controls specific for
406certain hardware.</P
407><DIV
408CLASS="SECTION"
409><H3
410CLASS="SECTION"
411><A
412NAME="AEN879"
413>1.9.5.1. Generic MPEG Controls</A
414></H3
415><DIV
416CLASS="TABLE"
417><A
418NAME="MPEG-CONTROL-ID"
419></A
420><P
421><B
422>Table 1-2. MPEG Control IDs</B
423></P
424><TABLE
425BORDER="0"
426FRAME="void"
427WIDTH="100%"
428CLASS="CALSTABLE"
429><COL
430WIDTH="7%"
431TITLE="C1"><COL
432WIDTH="40%"
433TITLE="C2"><COL
434WIDTH="13%"
435TITLE="C3"><COL
436WIDTH="40%"
437TITLE="C4"><THEAD
438><TR
439><TH
440COLSPAN="2"
441ALIGN="LEFT"
442>ID</TH
443><TH
444ALIGN="LEFT"
445>Type</TH
446><TD
447>&nbsp;</TD
448></TR
449><TR
450><TH
451>&nbsp;</TH
452><TH
453COLSPAN="3"
454ALIGN="LEFT"
455>Description</TH
456></TR
457></THEAD
458><TBODY
459VALIGN="TOP"
460><TR
461><TD
462>&nbsp;</TD
463><TD
464>&nbsp;</TD
465><TD
466>&nbsp;</TD
467><TD
468>&nbsp;</TD
469></TR
470><TR
471><TD
472COLSPAN="2"
473><CODE
474CLASS="CONSTANT"
475>V4L2_CID_MPEG_CLASS</CODE
476>&nbsp;</TD
477><TD
478>class</TD
479><TD
480>&nbsp;</TD
481></TR
482><TR
483><TD
484>&nbsp;</TD
485><TD
486COLSPAN="3"
487>The MPEG class
488descriptor. Calling <A
489HREF="r13317.htm"
490><CODE
491CLASS="CONSTANT"
492>VIDIOC_QUERYCTRL</CODE
493></A
494> for this control will return a
495description of this control class. This description can be used as the
496caption of a Tab page in a GUI, for example.</TD
497></TR
498><TR
499><TD
500>&nbsp;</TD
501><TD
502>&nbsp;</TD
503><TD
504>&nbsp;</TD
505><TD
506>&nbsp;</TD
507></TR
508><TR
509><TD
510COLSPAN="2"
511><CODE
512CLASS="CONSTANT"
513>V4L2_CID_MPEG_STREAM_TYPE</CODE
514>&nbsp;</TD
515><TD
516>enum</TD
517><TD
518>&nbsp;</TD
519></TR
520><TR
521><TD
522>&nbsp;</TD
523><TD
524COLSPAN="3"
525>The MPEG-1, -2 or -4
526output stream type. One cannot assume anything here. Each hardware
527MPEG encoder tends to support different subsets of the available MPEG
528stream types. The currently defined stream types are:</TD
529></TR
530><TR
531><TD
532>&nbsp;</TD
533><TD
534COLSPAN="3"
535><TABLE
536BORDER="0"
537CLASS="CALSTABLE"
538><COL><COL><TBODY
539VALIGN="TOP"
540><TR
541><TD
542><CODE
543CLASS="CONSTANT"
544>V4L2_MPEG_STREAM_TYPE_MPEG2_PS</CODE
545>&nbsp;</TD
546><TD
547>MPEG-2 program stream</TD
548></TR
549><TR
550><TD
551><CODE
552CLASS="CONSTANT"
553>V4L2_MPEG_STREAM_TYPE_MPEG2_TS</CODE
554>&nbsp;</TD
555><TD
556>MPEG-2 transport stream</TD
557></TR
558><TR
559><TD
560><CODE
561CLASS="CONSTANT"
562>V4L2_MPEG_STREAM_TYPE_MPEG1_SS</CODE
563>&nbsp;</TD
564><TD
565>MPEG-1 system stream</TD
566></TR
567><TR
568><TD
569><CODE
570CLASS="CONSTANT"
571>V4L2_MPEG_STREAM_TYPE_MPEG2_DVD</CODE
572>&nbsp;</TD
573><TD
574>MPEG-2 DVD-compatible stream</TD
575></TR
576><TR
577><TD
578><CODE
579CLASS="CONSTANT"
580>V4L2_MPEG_STREAM_TYPE_MPEG1_VCD</CODE
581>&nbsp;</TD
582><TD
583>MPEG-1 VCD-compatible stream</TD
584></TR
585><TR
586><TD
587><CODE
588CLASS="CONSTANT"
589>V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD</CODE
590>&nbsp;</TD
591><TD
592>MPEG-2 SVCD-compatible stream</TD
593></TR
594></TBODY
595></TABLE
596></TD
597></TR
598><TR
599><TD
600>&nbsp;</TD
601><TD
602>&nbsp;</TD
603><TD
604>&nbsp;</TD
605><TD
606>&nbsp;</TD
607></TR
608><TR
609><TD
610COLSPAN="2"
611><CODE
612CLASS="CONSTANT"
613>V4L2_CID_MPEG_STREAM_PID_PMT</CODE
614>&nbsp;</TD
615><TD
616>integer</TD
617><TD
618>&nbsp;</TD
619></TR
620><TR
621><TD
622>&nbsp;</TD
623><TD
624COLSPAN="3"
625>Program Map Table
626Packet ID for the MPEG transport stream (default 16)</TD
627></TR
628><TR
629><TD
630>&nbsp;</TD
631><TD
632>&nbsp;</TD
633><TD
634>&nbsp;</TD
635><TD
636>&nbsp;</TD
637></TR
638><TR
639><TD
640COLSPAN="2"
641><CODE
642CLASS="CONSTANT"
643>V4L2_CID_MPEG_STREAM_PID_AUDIO</CODE
644>&nbsp;</TD
645><TD
646>integer</TD
647><TD
648>&nbsp;</TD
649></TR
650><TR
651><TD
652>&nbsp;</TD
653><TD
654COLSPAN="3"
655>Audio Packet ID for
656the MPEG transport stream (default 256)</TD
657></TR
658><TR
659><TD
660>&nbsp;</TD
661><TD
662>&nbsp;</TD
663><TD
664>&nbsp;</TD
665><TD
666>&nbsp;</TD
667></TR
668><TR
669><TD
670COLSPAN="2"
671><CODE
672CLASS="CONSTANT"
673>V4L2_CID_MPEG_STREAM_PID_VIDEO</CODE
674>&nbsp;</TD
675><TD
676>integer</TD
677><TD
678>&nbsp;</TD
679></TR
680><TR
681><TD
682>&nbsp;</TD
683><TD
684COLSPAN="3"
685>Video Packet ID for
686the MPEG transport stream (default 260)</TD
687></TR
688><TR
689><TD
690>&nbsp;</TD
691><TD
692>&nbsp;</TD
693><TD
694>&nbsp;</TD
695><TD
696>&nbsp;</TD
697></TR
698><TR
699><TD
700COLSPAN="2"
701><CODE
702CLASS="CONSTANT"
703>V4L2_CID_MPEG_STREAM_PID_PCR</CODE
704>&nbsp;</TD
705><TD
706>integer</TD
707><TD
708>&nbsp;</TD
709></TR
710><TR
711><TD
712>&nbsp;</TD
713><TD
714COLSPAN="3"
715>Packet ID for the
716MPEG transport stream carrying PCR fields (default 259)</TD
717></TR
718><TR
719><TD
720>&nbsp;</TD
721><TD
722>&nbsp;</TD
723><TD
724>&nbsp;</TD
725><TD
726>&nbsp;</TD
727></TR
728><TR
729><TD
730COLSPAN="2"
731><CODE
732CLASS="CONSTANT"
733>V4L2_CID_MPEG_STREAM_PES_ID_AUDIO</CODE
734>&nbsp;</TD
735><TD
736>integer</TD
737><TD
738>&nbsp;</TD
739></TR
740><TR
741><TD
742>&nbsp;</TD
743><TD
744COLSPAN="3"
745>Audio ID for MPEG
746PES</TD
747></TR
748><TR
749><TD
750>&nbsp;</TD
751><TD
752>&nbsp;</TD
753><TD
754>&nbsp;</TD
755><TD
756>&nbsp;</TD
757></TR
758><TR
759><TD
760COLSPAN="2"
761><CODE
762CLASS="CONSTANT"
763>V4L2_CID_MPEG_STREAM_PES_ID_VIDEO</CODE
764>&nbsp;</TD
765><TD
766>integer</TD
767><TD
768>&nbsp;</TD
769></TR
770><TR
771><TD
772>&nbsp;</TD
773><TD
774COLSPAN="3"
775>Video ID for MPEG
776PES</TD
777></TR
778><TR
779><TD
780>&nbsp;</TD
781><TD
782>&nbsp;</TD
783><TD
784>&nbsp;</TD
785><TD
786>&nbsp;</TD
787></TR
788><TR
789><TD
790COLSPAN="2"
791><CODE
792CLASS="CONSTANT"
793>V4L2_CID_MPEG_STREAM_VBI_FMT</CODE
794>&nbsp;</TD
795><TD
796>enum</TD
797><TD
798>&nbsp;</TD
799></TR
800><TR
801><TD
802>&nbsp;</TD
803><TD
804COLSPAN="3"
805>Some cards can embed
806VBI data (e.&nbsp;g. Closed Caption, Teletext) into the MPEG stream. This
807control selects whether VBI data should be embedded, and if so, what
808embedding method should be used. The list of possible VBI formats
809depends on the driver. The currently defined VBI format types
810are:</TD
811></TR
812><TR
813><TD
814>&nbsp;</TD
815><TD
816COLSPAN="3"
817><TABLE
818BORDER="0"
819CLASS="CALSTABLE"
820><COL><COL><TBODY
821VALIGN="TOP"
822><TR
823><TD
824><CODE
825CLASS="CONSTANT"
826>V4L2_MPEG_STREAM_VBI_FMT_NONE</CODE
827>&nbsp;</TD
828><TD
829>No VBI in the MPEG stream</TD
830></TR
831><TR
832><TD
833><CODE
834CLASS="CONSTANT"
835>V4L2_MPEG_STREAM_VBI_FMT_IVTV</CODE
836>&nbsp;</TD
837><TD
838>VBI in private packets, IVTV format (documented
839in the kernel sources in the file <TT
840CLASS="FILENAME"
841>Documentation/video4linux/cx2341x/README.vbi</TT
842>)</TD
843></TR
844></TBODY
845></TABLE
846></TD
847></TR
848><TR
849><TD
850>&nbsp;</TD
851><TD
852>&nbsp;</TD
853><TD
854>&nbsp;</TD
855><TD
856>&nbsp;</TD
857></TR
858><TR
859><TD
860COLSPAN="2"
861><CODE
862CLASS="CONSTANT"
863>V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ</CODE
864>&nbsp;</TD
865><TD
866>enum</TD
867><TD
868>&nbsp;</TD
869></TR
870><TR
871><TD
872>&nbsp;</TD
873><TD
874COLSPAN="3"
875>MPEG Audio sampling
876frequency. Possible values are:</TD
877></TR
878><TR
879><TD
880>&nbsp;</TD
881><TD
882COLSPAN="3"
883><TABLE
884BORDER="0"
885CLASS="CALSTABLE"
886><COL><COL><TBODY
887VALIGN="TOP"
888><TR
889><TD
890><CODE
891CLASS="CONSTANT"
892>V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100</CODE
893>&nbsp;</TD
894><TD
895>44.1 kHz</TD
896></TR
897><TR
898><TD
899><CODE
900CLASS="CONSTANT"
901>V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000</CODE
902>&nbsp;</TD
903><TD
904>48 kHz</TD
905></TR
906><TR
907><TD
908><CODE
909CLASS="CONSTANT"
910>V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000</CODE
911>&nbsp;</TD
912><TD
913>32 kHz</TD
914></TR
915></TBODY
916></TABLE
917></TD
918></TR
919><TR
920><TD
921>&nbsp;</TD
922><TD
923>&nbsp;</TD
924><TD
925>&nbsp;</TD
926><TD
927>&nbsp;</TD
928></TR
929><TR
930><TD
931COLSPAN="2"
932><CODE
933CLASS="CONSTANT"
934>V4L2_CID_MPEG_AUDIO_ENCODING</CODE
935>&nbsp;</TD
936><TD
937>enum</TD
938><TD
939>&nbsp;</TD
940></TR
941><TR
942><TD
943>&nbsp;</TD
944><TD
945COLSPAN="3"
946>MPEG Audio encoding.
947Possible values are:</TD
948></TR
949><TR
950><TD
951>&nbsp;</TD
952><TD
953COLSPAN="3"
954><TABLE
955BORDER="0"
956CLASS="CALSTABLE"
957><COL><COL><TBODY
958VALIGN="TOP"
959><TR
960><TD
961><CODE
962CLASS="CONSTANT"
963>V4L2_MPEG_AUDIO_ENCODING_LAYER_1</CODE
964>&nbsp;</TD
965><TD
966>MPEG Layer I encoding</TD
967></TR
968><TR
969><TD
970><CODE
971CLASS="CONSTANT"
972>V4L2_MPEG_AUDIO_ENCODING_LAYER_2</CODE
973>&nbsp;</TD
974><TD
975>MPEG Layer II encoding</TD
976></TR
977><TR
978><TD
979><CODE
980CLASS="CONSTANT"
981>V4L2_MPEG_AUDIO_ENCODING_LAYER_3</CODE
982>&nbsp;</TD
983><TD
984>MPEG Layer III encoding</TD
985></TR
986></TBODY
987></TABLE
988></TD
989></TR
990><TR
991><TD
992>&nbsp;</TD
993><TD
994>&nbsp;</TD
995><TD
996>&nbsp;</TD
997><TD
998>&nbsp;</TD
999></TR
1000><TR
1001><TD
1002COLSPAN="2"
1003><CODE
1004CLASS="CONSTANT"
1005>V4L2_CID_MPEG_AUDIO_L1_BITRATE</CODE
1006>&nbsp;</TD
1007><TD
1008>enum</TD
1009><TD
1010>&nbsp;</TD
1011></TR
1012><TR
1013><TD
1014>&nbsp;</TD
1015><TD
1016COLSPAN="3"
1017>Layer I bitrate.
1018Possible values are:</TD
1019></TR
1020><TR
1021><TD
1022>&nbsp;</TD
1023><TD
1024COLSPAN="3"
1025><TABLE
1026BORDER="0"
1027CLASS="CALSTABLE"
1028><COL><COL><TBODY
1029VALIGN="TOP"
1030><TR
1031><TD
1032><CODE
1033CLASS="CONSTANT"
1034>V4L2_MPEG_AUDIO_L1_BITRATE_32K</CODE
1035>&nbsp;</TD
1036><TD
1037>32 kbit/s</TD
1038></TR
1039><TR
1040><TD
1041><CODE
1042CLASS="CONSTANT"
1043>V4L2_MPEG_AUDIO_L1_BITRATE_64K</CODE
1044>&nbsp;</TD
1045><TD
1046>64 kbit/s</TD
1047></TR
1048><TR
1049><TD
1050><CODE
1051CLASS="CONSTANT"
1052>V4L2_MPEG_AUDIO_L1_BITRATE_96K</CODE
1053>&nbsp;</TD
1054><TD
1055>96 kbit/s</TD
1056></TR
1057><TR
1058><TD
1059><CODE
1060CLASS="CONSTANT"
1061>V4L2_MPEG_AUDIO_L1_BITRATE_128K</CODE
1062>&nbsp;</TD
1063><TD
1064>128 kbit/s</TD
1065></TR
1066><TR
1067><TD
1068><CODE
1069CLASS="CONSTANT"
1070>V4L2_MPEG_AUDIO_L1_BITRATE_160K</CODE
1071>&nbsp;</TD
1072><TD
1073>160 kbit/s</TD
1074></TR
1075><TR
1076><TD
1077><CODE
1078CLASS="CONSTANT"
1079>V4L2_MPEG_AUDIO_L1_BITRATE_192K</CODE
1080>&nbsp;</TD
1081><TD
1082>192 kbit/s</TD
1083></TR
1084><TR
1085><TD
1086><CODE
1087CLASS="CONSTANT"
1088>V4L2_MPEG_AUDIO_L1_BITRATE_224K</CODE
1089>&nbsp;</TD
1090><TD
1091>224 kbit/s</TD
1092></TR
1093><TR
1094><TD
1095><CODE
1096CLASS="CONSTANT"
1097>V4L2_MPEG_AUDIO_L1_BITRATE_256K</CODE
1098>&nbsp;</TD
1099><TD
1100>256 kbit/s</TD
1101></TR
1102><TR
1103><TD
1104><CODE
1105CLASS="CONSTANT"
1106>V4L2_MPEG_AUDIO_L1_BITRATE_288K</CODE
1107>&nbsp;</TD
1108><TD
1109>288 kbit/s</TD
1110></TR
1111><TR
1112><TD
1113><CODE
1114CLASS="CONSTANT"
1115>V4L2_MPEG_AUDIO_L1_BITRATE_320K</CODE
1116>&nbsp;</TD
1117><TD
1118>320 kbit/s</TD
1119></TR
1120><TR
1121><TD
1122><CODE
1123CLASS="CONSTANT"
1124>V4L2_MPEG_AUDIO_L1_BITRATE_352K</CODE
1125>&nbsp;</TD
1126><TD
1127>352 kbit/s</TD
1128></TR
1129><TR
1130><TD
1131><CODE
1132CLASS="CONSTANT"
1133>V4L2_MPEG_AUDIO_L1_BITRATE_384K</CODE
1134>&nbsp;</TD
1135><TD
1136>384 kbit/s</TD
1137></TR
1138><TR
1139><TD
1140><CODE
1141CLASS="CONSTANT"
1142>V4L2_MPEG_AUDIO_L1_BITRATE_416K</CODE
1143>&nbsp;</TD
1144><TD
1145>416 kbit/s</TD
1146></TR
1147><TR
1148><TD
1149><CODE
1150CLASS="CONSTANT"
1151>V4L2_MPEG_AUDIO_L1_BITRATE_448K</CODE
1152>&nbsp;</TD
1153><TD
1154>448 kbit/s</TD
1155></TR
1156></TBODY
1157></TABLE
1158></TD
1159></TR
1160><TR
1161><TD
1162>&nbsp;</TD
1163><TD
1164>&nbsp;</TD
1165><TD
1166>&nbsp;</TD
1167><TD
1168>&nbsp;</TD
1169></TR
1170><TR
1171><TD
1172COLSPAN="2"
1173><CODE
1174CLASS="CONSTANT"
1175>V4L2_CID_MPEG_AUDIO_L2_BITRATE</CODE
1176>&nbsp;</TD
1177><TD
1178>enum</TD
1179><TD
1180>&nbsp;</TD
1181></TR
1182><TR
1183><TD
1184>&nbsp;</TD
1185><TD
1186COLSPAN="3"
1187>Layer II bitrate.
1188Possible values are:</TD
1189></TR
1190><TR
1191><TD
1192>&nbsp;</TD
1193><TD
1194COLSPAN="3"
1195><TABLE
1196BORDER="0"
1197CLASS="CALSTABLE"
1198><COL><COL><TBODY
1199VALIGN="TOP"
1200><TR
1201><TD
1202><CODE
1203CLASS="CONSTANT"
1204>V4L2_MPEG_AUDIO_L2_BITRATE_32K</CODE
1205>&nbsp;</TD
1206><TD
1207>32 kbit/s</TD
1208></TR
1209><TR
1210><TD
1211><CODE
1212CLASS="CONSTANT"
1213>V4L2_MPEG_AUDIO_L2_BITRATE_48K</CODE
1214>&nbsp;</TD
1215><TD
1216>48 kbit/s</TD
1217></TR
1218><TR
1219><TD
1220><CODE
1221CLASS="CONSTANT"
1222>V4L2_MPEG_AUDIO_L2_BITRATE_56K</CODE
1223>&nbsp;</TD
1224><TD
1225>56 kbit/s</TD
1226></TR
1227><TR
1228><TD
1229><CODE
1230CLASS="CONSTANT"
1231>V4L2_MPEG_AUDIO_L2_BITRATE_64K</CODE
1232>&nbsp;</TD
1233><TD
1234>64 kbit/s</TD
1235></TR
1236><TR
1237><TD
1238><CODE
1239CLASS="CONSTANT"
1240>V4L2_MPEG_AUDIO_L2_BITRATE_80K</CODE
1241>&nbsp;</TD
1242><TD
1243>80 kbit/s</TD
1244></TR
1245><TR
1246><TD
1247><CODE
1248CLASS="CONSTANT"
1249>V4L2_MPEG_AUDIO_L2_BITRATE_96K</CODE
1250>&nbsp;</TD
1251><TD
1252>96 kbit/s</TD
1253></TR
1254><TR
1255><TD
1256><CODE
1257CLASS="CONSTANT"
1258>V4L2_MPEG_AUDIO_L2_BITRATE_112K</CODE
1259>&nbsp;</TD
1260><TD
1261>112 kbit/s</TD
1262></TR
1263><TR
1264><TD
1265><CODE
1266CLASS="CONSTANT"
1267>V4L2_MPEG_AUDIO_L2_BITRATE_128K</CODE
1268>&nbsp;</TD
1269><TD
1270>128 kbit/s</TD
1271></TR
1272><TR
1273><TD
1274><CODE
1275CLASS="CONSTANT"
1276>V4L2_MPEG_AUDIO_L2_BITRATE_160K</CODE
1277>&nbsp;</TD
1278><TD
1279>160 kbit/s</TD
1280></TR
1281><TR
1282><TD
1283><CODE
1284CLASS="CONSTANT"
1285>V4L2_MPEG_AUDIO_L2_BITRATE_192K</CODE
1286>&nbsp;</TD
1287><TD
1288>192 kbit/s</TD
1289></TR
1290><TR
1291><TD
1292><CODE
1293CLASS="CONSTANT"
1294>V4L2_MPEG_AUDIO_L2_BITRATE_224K</CODE
1295>&nbsp;</TD
1296><TD
1297>224 kbit/s</TD
1298></TR
1299><TR
1300><TD
1301><CODE
1302CLASS="CONSTANT"
1303>V4L2_MPEG_AUDIO_L2_BITRATE_256K</CODE
1304>&nbsp;</TD
1305><TD
1306>256 kbit/s</TD
1307></TR
1308><TR
1309><TD
1310><CODE
1311CLASS="CONSTANT"
1312>V4L2_MPEG_AUDIO_L2_BITRATE_320K</CODE
1313>&nbsp;</TD
1314><TD
1315>320 kbit/s</TD
1316></TR
1317><TR
1318><TD
1319><CODE
1320CLASS="CONSTANT"
1321>V4L2_MPEG_AUDIO_L2_BITRATE_384K</CODE
1322>&nbsp;</TD
1323><TD
1324>384 kbit/s</TD
1325></TR
1326></TBODY
1327></TABLE
1328></TD
1329></TR
1330><TR
1331><TD
1332>&nbsp;</TD
1333><TD
1334>&nbsp;</TD
1335><TD
1336>&nbsp;</TD
1337><TD
1338>&nbsp;</TD
1339></TR
1340><TR
1341><TD
1342COLSPAN="2"
1343><CODE
1344CLASS="CONSTANT"
1345>V4L2_CID_MPEG_AUDIO_L3_BITRATE</CODE
1346>&nbsp;</TD
1347><TD
1348>enum</TD
1349><TD
1350>&nbsp;</TD
1351></TR
1352><TR
1353><TD
1354>&nbsp;</TD
1355><TD
1356COLSPAN="3"
1357>Layer III bitrate.
1358Possible values are:</TD
1359></TR
1360><TR
1361><TD
1362>&nbsp;</TD
1363><TD
1364COLSPAN="3"
1365><TABLE
1366BORDER="0"
1367CLASS="CALSTABLE"
1368><COL><COL><TBODY
1369VALIGN="TOP"
1370><TR
1371><TD
1372><CODE
1373CLASS="CONSTANT"
1374>V4L2_MPEG_AUDIO_L3_BITRATE_32K</CODE
1375>&nbsp;</TD
1376><TD
1377>32 kbit/s</TD
1378></TR
1379><TR
1380><TD
1381><CODE
1382CLASS="CONSTANT"
1383>V4L2_MPEG_AUDIO_L3_BITRATE_40K</CODE
1384>&nbsp;</TD
1385><TD
1386>40 kbit/s</TD
1387></TR
1388><TR
1389><TD
1390><CODE
1391CLASS="CONSTANT"
1392>V4L2_MPEG_AUDIO_L3_BITRATE_48K</CODE
1393>&nbsp;</TD
1394><TD
1395>48 kbit/s</TD
1396></TR
1397><TR
1398><TD
1399><CODE
1400CLASS="CONSTANT"
1401>V4L2_MPEG_AUDIO_L3_BITRATE_56K</CODE
1402>&nbsp;</TD
1403><TD
1404>56 kbit/s</TD
1405></TR
1406><TR
1407><TD
1408><CODE
1409CLASS="CONSTANT"
1410>V4L2_MPEG_AUDIO_L3_BITRATE_64K</CODE
1411>&nbsp;</TD
1412><TD
1413>64 kbit/s</TD
1414></TR
1415><TR
1416><TD
1417><CODE
1418CLASS="CONSTANT"
1419>V4L2_MPEG_AUDIO_L3_BITRATE_80K</CODE
1420>&nbsp;</TD
1421><TD
1422>80 kbit/s</TD
1423></TR
1424><TR
1425><TD
1426><CODE
1427CLASS="CONSTANT"
1428>V4L2_MPEG_AUDIO_L3_BITRATE_96K</CODE
1429>&nbsp;</TD
1430><TD
1431>96 kbit/s</TD
1432></TR
1433><TR
1434><TD
1435><CODE
1436CLASS="CONSTANT"
1437>V4L2_MPEG_AUDIO_L3_BITRATE_112K</CODE
1438>&nbsp;</TD
1439><TD
1440>112 kbit/s</TD
1441></TR
1442><TR
1443><TD
1444><CODE
1445CLASS="CONSTANT"
1446>V4L2_MPEG_AUDIO_L3_BITRATE_128K</CODE
1447>&nbsp;</TD
1448><TD
1449>128 kbit/s</TD
1450></TR
1451><TR
1452><TD
1453><CODE
1454CLASS="CONSTANT"
1455>V4L2_MPEG_AUDIO_L3_BITRATE_160K</CODE
1456>&nbsp;</TD
1457><TD
1458>160 kbit/s</TD
1459></TR
1460><TR
1461><TD
1462><CODE
1463CLASS="CONSTANT"
1464>V4L2_MPEG_AUDIO_L3_BITRATE_192K</CODE
1465>&nbsp;</TD
1466><TD
1467>192 kbit/s</TD
1468></TR
1469><TR
1470><TD
1471><CODE
1472CLASS="CONSTANT"
1473>V4L2_MPEG_AUDIO_L3_BITRATE_224K</CODE
1474>&nbsp;</TD
1475><TD
1476>224 kbit/s</TD
1477></TR
1478><TR
1479><TD
1480><CODE
1481CLASS="CONSTANT"
1482>V4L2_MPEG_AUDIO_L3_BITRATE_256K</CODE
1483>&nbsp;</TD
1484><TD
1485>256 kbit/s</TD
1486></TR
1487><TR
1488><TD
1489><CODE
1490CLASS="CONSTANT"
1491>V4L2_MPEG_AUDIO_L3_BITRATE_320K</CODE
1492>&nbsp;</TD
1493><TD
1494>320 kbit/s</TD
1495></TR
1496></TBODY
1497></TABLE
1498></TD
1499></TR
1500><TR
1501><TD
1502>&nbsp;</TD
1503><TD
1504>&nbsp;</TD
1505><TD
1506>&nbsp;</TD
1507><TD
1508>&nbsp;</TD
1509></TR
1510><TR
1511><TD
1512COLSPAN="2"
1513><CODE
1514CLASS="CONSTANT"
1515>V4L2_CID_MPEG_AUDIO_MODE</CODE
1516>&nbsp;</TD
1517><TD
1518>enum</TD
1519><TD
1520>&nbsp;</TD
1521></TR
1522><TR
1523><TD
1524>&nbsp;</TD
1525><TD
1526COLSPAN="3"
1527>MPEG Audio mode.
1528Possible values are:</TD
1529></TR
1530><TR
1531><TD
1532>&nbsp;</TD
1533><TD
1534COLSPAN="3"
1535><TABLE
1536BORDER="0"
1537CLASS="CALSTABLE"
1538><COL><COL><TBODY
1539VALIGN="TOP"
1540><TR
1541><TD
1542><CODE
1543CLASS="CONSTANT"
1544>V4L2_MPEG_AUDIO_MODE_STEREO</CODE
1545>&nbsp;</TD
1546><TD
1547>Stereo</TD
1548></TR
1549><TR
1550><TD
1551><CODE
1552CLASS="CONSTANT"
1553>V4L2_MPEG_AUDIO_MODE_JOINT_STEREO</CODE
1554>&nbsp;</TD
1555><TD
1556>Joint Stereo</TD
1557></TR
1558><TR
1559><TD
1560><CODE
1561CLASS="CONSTANT"
1562>V4L2_MPEG_AUDIO_MODE_DUAL</CODE
1563>&nbsp;</TD
1564><TD
1565>Bilingual</TD
1566></TR
1567><TR
1568><TD
1569><CODE
1570CLASS="CONSTANT"
1571>V4L2_MPEG_AUDIO_MODE_MONO</CODE
1572>&nbsp;</TD
1573><TD
1574>Mono</TD
1575></TR
1576></TBODY
1577></TABLE
1578></TD
1579></TR
1580><TR
1581><TD
1582>&nbsp;</TD
1583><TD
1584>&nbsp;</TD
1585><TD
1586>&nbsp;</TD
1587><TD
1588>&nbsp;</TD
1589></TR
1590><TR
1591><TD
1592COLSPAN="2"
1593><CODE
1594CLASS="CONSTANT"
1595>V4L2_CID_MPEG_AUDIO_MODE_EXTENSION</CODE
1596>&nbsp;</TD
1597><TD
1598>enum</TD
1599><TD
1600>&nbsp;</TD
1601></TR
1602><TR
1603><TD
1604>&nbsp;</TD
1605><TD
1606COLSPAN="3"
1607>Joint Stereo
1608audio mode extension. In Layer I and II they indicate which subbands
1609are in intensity stereo. All other subbands are coded in stereo. Layer
1610III is not (yet) supported. Possible values
1611are:</TD
1612></TR
1613><TR
1614><TD
1615>&nbsp;</TD
1616><TD
1617COLSPAN="3"
1618><TABLE
1619BORDER="0"
1620CLASS="CALSTABLE"
1621><COL><COL><TBODY
1622VALIGN="TOP"
1623><TR
1624><TD
1625><CODE
1626CLASS="CONSTANT"
1627>V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4</CODE
1628>&nbsp;</TD
1629><TD
1630>Subbands 4-31 in intensity stereo</TD
1631></TR
1632><TR
1633><TD
1634><CODE
1635CLASS="CONSTANT"
1636>V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8</CODE
1637>&nbsp;</TD
1638><TD
1639>Subbands 8-31 in intensity stereo</TD
1640></TR
1641><TR
1642><TD
1643><CODE
1644CLASS="CONSTANT"
1645>V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12</CODE
1646>&nbsp;</TD
1647><TD
1648>Subbands 12-31 in intensity stereo</TD
1649></TR
1650><TR
1651><TD
1652><CODE
1653CLASS="CONSTANT"
1654>V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16</CODE
1655>&nbsp;</TD
1656><TD
1657>Subbands 16-31 in intensity stereo</TD
1658></TR
1659></TBODY
1660></TABLE
1661></TD
1662></TR
1663><TR
1664><TD
1665>&nbsp;</TD
1666><TD
1667>&nbsp;</TD
1668><TD
1669>&nbsp;</TD
1670><TD
1671>&nbsp;</TD
1672></TR
1673><TR
1674><TD
1675COLSPAN="2"
1676><CODE
1677CLASS="CONSTANT"
1678>V4L2_CID_MPEG_AUDIO_EMPHASIS</CODE
1679>&nbsp;</TD
1680><TD
1681>enum</TD
1682><TD
1683>&nbsp;</TD
1684></TR
1685><TR
1686><TD
1687>&nbsp;</TD
1688><TD
1689COLSPAN="3"
1690>Audio Emphasis.
1691Possible values are:</TD
1692></TR
1693><TR
1694><TD
1695>&nbsp;</TD
1696><TD
1697COLSPAN="3"
1698><TABLE
1699BORDER="0"
1700CLASS="CALSTABLE"
1701><COL><COL><TBODY
1702VALIGN="TOP"
1703><TR
1704><TD
1705><CODE
1706CLASS="CONSTANT"
1707>V4L2_MPEG_AUDIO_EMPHASIS_NONE</CODE
1708>&nbsp;</TD
1709><TD
1710>None</TD
1711></TR
1712><TR
1713><TD
1714><CODE
1715CLASS="CONSTANT"
1716>V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS</CODE
1717>&nbsp;</TD
1718><TD
1719>50/15 microsecond emphasis</TD
1720></TR
1721><TR
1722><TD
1723><CODE
1724CLASS="CONSTANT"
1725>V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17</CODE
1726>&nbsp;</TD
1727><TD
1728>CCITT J.17</TD
1729></TR
1730></TBODY
1731></TABLE
1732></TD
1733></TR
1734><TR
1735><TD
1736>&nbsp;</TD
1737><TD
1738>&nbsp;</TD
1739><TD
1740>&nbsp;</TD
1741><TD
1742>&nbsp;</TD
1743></TR
1744><TR
1745><TD
1746COLSPAN="2"
1747><CODE
1748CLASS="CONSTANT"
1749>V4L2_CID_MPEG_AUDIO_CRC</CODE
1750>&nbsp;</TD
1751><TD
1752>enum</TD
1753><TD
1754>&nbsp;</TD
1755></TR
1756><TR
1757><TD
1758>&nbsp;</TD
1759><TD
1760COLSPAN="3"
1761>CRC method. Possible
1762values are:</TD
1763></TR
1764><TR
1765><TD
1766>&nbsp;</TD
1767><TD
1768COLSPAN="3"
1769><TABLE
1770BORDER="0"
1771CLASS="CALSTABLE"
1772><COL><COL><TBODY
1773VALIGN="TOP"
1774><TR
1775><TD
1776><CODE
1777CLASS="CONSTANT"
1778>V4L2_MPEG_AUDIO_CRC_NONE</CODE
1779>&nbsp;</TD
1780><TD
1781>None</TD
1782></TR
1783><TR
1784><TD
1785><CODE
1786CLASS="CONSTANT"
1787>V4L2_MPEG_AUDIO_CRC_CRC16</CODE
1788>&nbsp;</TD
1789><TD
1790>16 bit parity check</TD
1791></TR
1792></TBODY
1793></TABLE
1794></TD
1795></TR
1796><TR
1797><TD
1798>&nbsp;</TD
1799><TD
1800>&nbsp;</TD
1801><TD
1802>&nbsp;</TD
1803><TD
1804>&nbsp;</TD
1805></TR
1806><TR
1807><TD
1808COLSPAN="2"
1809><CODE
1810CLASS="CONSTANT"
1811>V4L2_CID_MPEG_AUDIO_MUTE</CODE
1812>&nbsp;</TD
1813><TD
1814>bool</TD
1815><TD
1816>&nbsp;</TD
1817></TR
1818><TR
1819><TD
1820>&nbsp;</TD
1821><TD
1822COLSPAN="3"
1823>Mutes the audio when
1824capturing. This is not done by muting audio hardware, which can still
1825produce a slight hiss, but in the encoder itself, guaranteeing a fixed
1826and reproducable audio bitstream. 0 = unmuted, 1 = muted.</TD
1827></TR
1828><TR
1829><TD
1830>&nbsp;</TD
1831><TD
1832>&nbsp;</TD
1833><TD
1834>&nbsp;</TD
1835><TD
1836>&nbsp;</TD
1837></TR
1838><TR
1839><TD
1840COLSPAN="2"
1841><CODE
1842CLASS="CONSTANT"
1843>V4L2_CID_MPEG_VIDEO_ENCODING</CODE
1844>&nbsp;</TD
1845><TD
1846>enum</TD
1847><TD
1848>&nbsp;</TD
1849></TR
1850><TR
1851><TD
1852>&nbsp;</TD
1853><TD
1854COLSPAN="3"
1855>MPEG Video encoding
1856method. Possible values are:</TD
1857></TR
1858><TR
1859><TD
1860>&nbsp;</TD
1861><TD
1862COLSPAN="3"
1863><TABLE
1864BORDER="0"
1865CLASS="CALSTABLE"
1866><COL><COL><TBODY
1867VALIGN="TOP"
1868><TR
1869><TD
1870><CODE
1871CLASS="CONSTANT"
1872>V4L2_MPEG_VIDEO_ENCODING_MPEG_1</CODE
1873>&nbsp;</TD
1874><TD
1875>MPEG-1 Video encoding</TD
1876></TR
1877><TR
1878><TD
1879><CODE
1880CLASS="CONSTANT"
1881>V4L2_MPEG_VIDEO_ENCODING_MPEG_2</CODE
1882>&nbsp;</TD
1883><TD
1884>MPEG-2 Video encoding</TD
1885></TR
1886></TBODY
1887></TABLE
1888></TD
1889></TR
1890><TR
1891><TD
1892>&nbsp;</TD
1893><TD
1894>&nbsp;</TD
1895><TD
1896>&nbsp;</TD
1897><TD
1898>&nbsp;</TD
1899></TR
1900><TR
1901><TD
1902COLSPAN="2"
1903><CODE
1904CLASS="CONSTANT"
1905>V4L2_CID_MPEG_VIDEO_ASPECT</CODE
1906>&nbsp;</TD
1907><TD
1908>enum</TD
1909><TD
1910>&nbsp;</TD
1911></TR
1912><TR
1913><TD
1914>&nbsp;</TD
1915><TD
1916COLSPAN="3"
1917>Video aspect.
1918Possible values are:</TD
1919></TR
1920><TR
1921><TD
1922>&nbsp;</TD
1923><TD
1924COLSPAN="3"
1925><TABLE
1926BORDER="0"
1927CLASS="CALSTABLE"
1928><COL><COL><TBODY
1929VALIGN="TOP"
1930><TR
1931><TD
1932><CODE
1933CLASS="CONSTANT"
1934>V4L2_MPEG_VIDEO_ASPECT_1x1</CODE
1935>&nbsp;</TD
1936><TD
1937>&nbsp;</TD
1938></TR
1939><TR
1940><TD
1941><CODE
1942CLASS="CONSTANT"
1943>V4L2_MPEG_VIDEO_ASPECT_4x3</CODE
1944>&nbsp;</TD
1945><TD
1946>&nbsp;</TD
1947></TR
1948><TR
1949><TD
1950><CODE
1951CLASS="CONSTANT"
1952>V4L2_MPEG_VIDEO_ASPECT_16x9</CODE
1953>&nbsp;</TD
1954><TD
1955>&nbsp;</TD
1956></TR
1957><TR
1958><TD
1959><CODE
1960CLASS="CONSTANT"
1961>V4L2_MPEG_VIDEO_ASPECT_221x100</CODE
1962>&nbsp;</TD
1963><TD
1964>&nbsp;</TD
1965></TR
1966></TBODY
1967></TABLE
1968></TD
1969></TR
1970><TR
1971><TD
1972>&nbsp;</TD
1973><TD
1974>&nbsp;</TD
1975><TD
1976>&nbsp;</TD
1977><TD
1978>&nbsp;</TD
1979></TR
1980><TR
1981><TD
1982COLSPAN="2"
1983><CODE
1984CLASS="CONSTANT"
1985>V4L2_CID_MPEG_VIDEO_B_FRAMES</CODE
1986>&nbsp;</TD
1987><TD
1988>integer</TD
1989><TD
1990>&nbsp;</TD
1991></TR
1992><TR
1993><TD
1994>&nbsp;</TD
1995><TD
1996COLSPAN="3"
1997>Number of B-Frames
1998(default 2)</TD
1999></TR
2000><TR
2001><TD
2002>&nbsp;</TD
2003><TD
2004>&nbsp;</TD
2005><TD
2006>&nbsp;</TD
2007><TD
2008>&nbsp;</TD
2009></TR
2010><TR
2011><TD
2012COLSPAN="2"
2013><CODE
2014CLASS="CONSTANT"
2015>V4L2_CID_MPEG_VIDEO_GOP_SIZE</CODE
2016>&nbsp;</TD
2017><TD
2018>integer</TD
2019><TD
2020>&nbsp;</TD
2021></TR
2022><TR
2023><TD
2024>&nbsp;</TD
2025><TD
2026COLSPAN="3"
2027>GOP size (default
202812)</TD
2029></TR
2030><TR
2031><TD
2032>&nbsp;</TD
2033><TD
2034>&nbsp;</TD
2035><TD
2036>&nbsp;</TD
2037><TD
2038>&nbsp;</TD
2039></TR
2040><TR
2041><TD
2042COLSPAN="2"
2043><CODE
2044CLASS="CONSTANT"
2045>V4L2_CID_MPEG_VIDEO_GOP_CLOSURE</CODE
2046>&nbsp;</TD
2047><TD
2048>bool</TD
2049><TD
2050>&nbsp;</TD
2051></TR
2052><TR
2053><TD
2054>&nbsp;</TD
2055><TD
2056COLSPAN="3"
2057>GOP closure (default
20581)</TD
2059></TR
2060><TR
2061><TD
2062>&nbsp;</TD
2063><TD
2064>&nbsp;</TD
2065><TD
2066>&nbsp;</TD
2067><TD
2068>&nbsp;</TD
2069></TR
2070><TR
2071><TD
2072COLSPAN="2"
2073><CODE
2074CLASS="CONSTANT"
2075>V4L2_CID_MPEG_VIDEO_PULLDOWN</CODE
2076>&nbsp;</TD
2077><TD
2078>bool</TD
2079><TD
2080>&nbsp;</TD
2081></TR
2082><TR
2083><TD
2084>&nbsp;</TD
2085><TD
2086COLSPAN="3"
2087>Enable 3:2 pulldown
2088(default 0)</TD
2089></TR
2090><TR
2091><TD
2092>&nbsp;</TD
2093><TD
2094>&nbsp;</TD
2095><TD
2096>&nbsp;</TD
2097><TD
2098>&nbsp;</TD
2099></TR
2100><TR
2101><TD
2102COLSPAN="2"
2103><CODE
2104CLASS="CONSTANT"
2105>V4L2_CID_MPEG_VIDEO_BITRATE_MODE</CODE
2106>&nbsp;</TD
2107><TD
2108>enum</TD
2109><TD
2110>&nbsp;</TD
2111></TR
2112><TR
2113><TD
2114>&nbsp;</TD
2115><TD
2116COLSPAN="3"
2117>Video bitrate mode.
2118Possible values are:</TD
2119></TR
2120><TR
2121><TD
2122>&nbsp;</TD
2123><TD
2124COLSPAN="3"
2125><TABLE
2126BORDER="0"
2127CLASS="CALSTABLE"
2128><COL><COL><TBODY
2129VALIGN="TOP"
2130><TR
2131><TD
2132><CODE
2133CLASS="CONSTANT"
2134>V4L2_MPEG_VIDEO_BITRATE_MODE_VBR</CODE
2135>&nbsp;</TD
2136><TD
2137>Variable bitrate</TD
2138></TR
2139><TR
2140><TD
2141><CODE
2142CLASS="CONSTANT"
2143>V4L2_MPEG_VIDEO_BITRATE_MODE_CBR</CODE
2144>&nbsp;</TD
2145><TD
2146>Constant bitrate</TD
2147></TR
2148></TBODY
2149></TABLE
2150></TD
2151></TR
2152><TR
2153><TD
2154>&nbsp;</TD
2155><TD
2156>&nbsp;</TD
2157><TD
2158>&nbsp;</TD
2159><TD
2160>&nbsp;</TD
2161></TR
2162><TR
2163><TD
2164COLSPAN="2"
2165><CODE
2166CLASS="CONSTANT"
2167>V4L2_CID_MPEG_VIDEO_BITRATE</CODE
2168>&nbsp;</TD
2169><TD
2170>integer</TD
2171><TD
2172>&nbsp;</TD
2173></TR
2174><TR
2175><TD
2176>&nbsp;</TD
2177><TD
2178COLSPAN="3"
2179>Video bitrate in bits
2180per second.</TD
2181></TR
2182><TR
2183><TD
2184>&nbsp;</TD
2185><TD
2186>&nbsp;</TD
2187><TD
2188>&nbsp;</TD
2189><TD
2190>&nbsp;</TD
2191></TR
2192><TR
2193><TD
2194COLSPAN="2"
2195><CODE
2196CLASS="CONSTANT"
2197>V4L2_CID_MPEG_VIDEO_BITRATE_PEAK</CODE
2198>&nbsp;</TD
2199><TD
2200>integer</TD
2201><TD
2202>&nbsp;</TD
2203></TR
2204><TR
2205><TD
2206>&nbsp;</TD
2207><TD
2208COLSPAN="3"
2209>Peak video bitrate in
2210bits per second. Must be larger or equal to the average video bitrate.
2211It is ignored if the video bitrate mode is set to constant
2212bitrate.</TD
2213></TR
2214><TR
2215><TD
2216>&nbsp;</TD
2217><TD
2218>&nbsp;</TD
2219><TD
2220>&nbsp;</TD
2221><TD
2222>&nbsp;</TD
2223></TR
2224><TR
2225><TD
2226COLSPAN="2"
2227><CODE
2228CLASS="CONSTANT"
2229>V4L2_CID_MPEG_VIDEO_TEMPORAL_DECIMATION</CODE
2230>&nbsp;</TD
2231><TD
2232>integer</TD
2233><TD
2234>&nbsp;</TD
2235></TR
2236><TR
2237><TD
2238>&nbsp;</TD
2239><TD
2240COLSPAN="3"
2241>For every captured
2242frame, skip this many subsequent frames (default 0).</TD
2243></TR
2244><TR
2245><TD
2246>&nbsp;</TD
2247><TD
2248>&nbsp;</TD
2249><TD
2250>&nbsp;</TD
2251><TD
2252>&nbsp;</TD
2253></TR
2254><TR
2255><TD
2256COLSPAN="2"
2257><CODE
2258CLASS="CONSTANT"
2259>V4L2_CID_MPEG_VIDEO_MUTE</CODE
2260>&nbsp;</TD
2261><TD
2262>bool</TD
2263><TD
2264>&nbsp;</TD
2265></TR
2266><TR
2267><TD
2268>&nbsp;</TD
2269><TD
2270COLSPAN="3"
2271>"Mutes" the video to a
2272fixed color when capturing. This is useful for testing, to produce a
2273fixed video bitstream. 0 = unmuted, 1 = muted.</TD
2274></TR
2275><TR
2276><TD
2277>&nbsp;</TD
2278><TD
2279>&nbsp;</TD
2280><TD
2281>&nbsp;</TD
2282><TD
2283>&nbsp;</TD
2284></TR
2285><TR
2286><TD
2287COLSPAN="2"
2288><CODE
2289CLASS="CONSTANT"
2290>V4L2_CID_MPEG_VIDEO_MUTE_YUV</CODE
2291>&nbsp;</TD
2292><TD
2293>integer</TD
2294><TD
2295>&nbsp;</TD
2296></TR
2297><TR
2298><TD
2299>&nbsp;</TD
2300><TD
2301COLSPAN="3"
2302>Sets the "mute" color
2303of the video. The supplied 32-bit integer is interpreted as follows (bit
23040 = least significant bit):</TD
2305></TR
2306><TR
2307><TD
2308>&nbsp;</TD
2309><TD
2310COLSPAN="3"
2311><TABLE
2312BORDER="0"
2313CLASS="CALSTABLE"
2314><COL><COL><TBODY
2315VALIGN="TOP"
2316><TR
2317><TD
2318>Bit 0:7</TD
2319><TD
2320>V chrominance information</TD
2321></TR
2322><TR
2323><TD
2324>Bit 8:15</TD
2325><TD
2326>U chrominance information</TD
2327></TR
2328><TR
2329><TD
2330>Bit 16:23</TD
2331><TD
2332>Y luminance information</TD
2333></TR
2334><TR
2335><TD
2336>Bit 24:31</TD
2337><TD
2338>Must be zero.</TD
2339></TR
2340></TBODY
2341></TABLE
2342></TD
2343></TR
2344></TBODY
2345></TABLE
2346></DIV
2347></DIV
2348><DIV
2349CLASS="SECTION"
2350><H3
2351CLASS="SECTION"
2352><A
2353NAME="AEN1509"
2354>1.9.5.2. CX2341x MPEG Controls</A
2355></H3
2356><P
2357>The following MPEG class controls deal with MPEG
2358encoding settings that are specific to the Conexant CX23415 and
2359CX23416 MPEG encoding chips.</P
2360><DIV
2361CLASS="TABLE"
2362><A
2363NAME="CX2341X-CONTROL-ID"
2364></A
2365><P
2366><B
2367>Table 1-3. CX2341x Control IDs</B
2368></P
2369><TABLE
2370BORDER="0"
2371FRAME="void"
2372WIDTH="100%"
2373CLASS="CALSTABLE"
2374><COL
2375WIDTH="7%"
2376TITLE="C1"><COL
2377WIDTH="40%"
2378TITLE="C2"><COL
2379WIDTH="13%"
2380TITLE="C3"><COL
2381WIDTH="40%"
2382TITLE="C4"><THEAD
2383><TR
2384><TH
2385COLSPAN="2"
2386ALIGN="LEFT"
2387>ID</TH
2388><TH
2389ALIGN="LEFT"
2390>Type</TH
2391><TD
2392>&nbsp;</TD
2393></TR
2394><TR
2395><TH
2396>&nbsp;</TH
2397><TH
2398COLSPAN="3"
2399ALIGN="LEFT"
2400>Description</TH
2401></TR
2402></THEAD
2403><TBODY
2404VALIGN="TOP"
2405><TR
2406><TD
2407>&nbsp;</TD
2408><TD
2409>&nbsp;</TD
2410><TD
2411>&nbsp;</TD
2412><TD
2413>&nbsp;</TD
2414></TR
2415><TR
2416><TD
2417COLSPAN="2"
2418><CODE
2419CLASS="CONSTANT"
2420>V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE</CODE
2421>&nbsp;</TD
2422><TD
2423>enum</TD
2424><TD
2425>&nbsp;</TD
2426></TR
2427><TR
2428><TD
2429>&nbsp;</TD
2430><TD
2431COLSPAN="3"
2432>Sets the Spatial
2433Filter mode (default <CODE
2434CLASS="CONSTANT"
2435>MANUAL</CODE
2436>). Possible values
2437are:</TD
2438></TR
2439><TR
2440><TD
2441>&nbsp;</TD
2442><TD
2443COLSPAN="3"
2444><TABLE
2445BORDER="0"
2446CLASS="CALSTABLE"
2447><COL><COL><TBODY
2448VALIGN="TOP"
2449><TR
2450><TD
2451><CODE
2452CLASS="CONSTANT"
2453>V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL</CODE
2454>&nbsp;</TD
2455><TD
2456>Choose the filter manually</TD
2457></TR
2458><TR
2459><TD
2460><CODE
2461CLASS="CONSTANT"
2462>V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO</CODE
2463>&nbsp;</TD
2464><TD
2465>Choose the filter automatically</TD
2466></TR
2467></TBODY
2468></TABLE
2469></TD
2470></TR
2471><TR
2472><TD
2473>&nbsp;</TD
2474><TD
2475>&nbsp;</TD
2476><TD
2477>&nbsp;</TD
2478><TD
2479>&nbsp;</TD
2480></TR
2481><TR
2482><TD
2483COLSPAN="2"
2484><CODE
2485CLASS="CONSTANT"
2486>V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER</CODE
2487>&nbsp;</TD
2488><TD
2489>integer&nbsp;(0-15)</TD
2490><TD
2491>&nbsp;</TD
2492></TR
2493><TR
2494><TD
2495>&nbsp;</TD
2496><TD
2497COLSPAN="3"
2498>The setting for the
2499Spatial Filter. 0 = off, 15 = maximum. (Default is 0.)</TD
2500></TR
2501><TR
2502><TD
2503>&nbsp;</TD
2504><TD
2505>&nbsp;</TD
2506><TD
2507>&nbsp;</TD
2508><TD
2509>&nbsp;</TD
2510></TR
2511><TR
2512><TD
2513COLSPAN="2"
2514><CODE
2515CLASS="CONSTANT"
2516>V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE</CODE
2517>&nbsp;</TD
2518><TD
2519>enum</TD
2520><TD
2521>&nbsp;</TD
2522></TR
2523><TR
2524><TD
2525>&nbsp;</TD
2526><TD
2527COLSPAN="3"
2528>Select the algorithm
2529to use for the Luma Spatial Filter (default
2530<CODE
2531CLASS="CONSTANT"
2532>1D_HOR</CODE
2533>). Possible values:</TD
2534></TR
2535><TR
2536><TD
2537>&nbsp;</TD
2538><TD
2539COLSPAN="3"
2540><TABLE
2541BORDER="0"
2542CLASS="CALSTABLE"
2543><COL><COL><TBODY
2544VALIGN="TOP"
2545><TR
2546><TD
2547><CODE
2548CLASS="CONSTANT"
2549>V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF</CODE
2550>&nbsp;</TD
2551><TD
2552>No filter</TD
2553></TR
2554><TR
2555><TD
2556><CODE
2557CLASS="CONSTANT"
2558>V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR</CODE
2559>&nbsp;</TD
2560><TD
2561>One-dimensional horizontal</TD
2562></TR
2563><TR
2564><TD
2565><CODE
2566CLASS="CONSTANT"
2567>V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT</CODE
2568>&nbsp;</TD
2569><TD
2570>One-dimensional vertical</TD
2571></TR
2572><TR
2573><TD
2574><CODE
2575CLASS="CONSTANT"
2576>V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE</CODE
2577>&nbsp;</TD
2578><TD
2579>Two-dimensional separable</TD
2580></TR
2581><TR
2582><TD
2583><CODE
2584CLASS="CONSTANT"
2585>V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE</CODE
2586>&nbsp;</TD
2587><TD
2588>Two-dimensional symmetrical
2589non-separable</TD
2590></TR
2591></TBODY
2592></TABLE
2593></TD
2594></TR
2595><TR
2596><TD
2597>&nbsp;</TD
2598><TD
2599>&nbsp;</TD
2600><TD
2601>&nbsp;</TD
2602><TD
2603>&nbsp;</TD
2604></TR
2605><TR
2606><TD
2607COLSPAN="2"
2608><CODE
2609CLASS="CONSTANT"
2610>V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE</CODE
2611>&nbsp;</TD
2612><TD
2613>enum</TD
2614><TD
2615>&nbsp;</TD
2616></TR
2617><TR
2618><TD
2619>&nbsp;</TD
2620><TD
2621COLSPAN="3"
2622>Select the algorithm
2623for the Chroma Spatial Filter (default <CODE
2624CLASS="CONSTANT"
2625>1D_HOR</CODE
2626>).
2627Possible values are:</TD
2628></TR
2629><TR
2630><TD
2631>&nbsp;</TD
2632><TD
2633COLSPAN="3"
2634><TABLE
2635BORDER="0"
2636CLASS="CALSTABLE"
2637><COL><COL><TBODY
2638VALIGN="TOP"
2639><TR
2640><TD
2641><CODE
2642CLASS="CONSTANT"
2643>V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF</CODE
2644>&nbsp;</TD
2645><TD
2646>No filter</TD
2647></TR
2648><TR
2649><TD
2650><CODE
2651CLASS="CONSTANT"
2652>V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR</CODE
2653>&nbsp;</TD
2654><TD
2655>One-dimensional horizontal</TD
2656></TR
2657></TBODY
2658></TABLE
2659></TD
2660></TR
2661><TR
2662><TD
2663>&nbsp;</TD
2664><TD
2665>&nbsp;</TD
2666><TD
2667>&nbsp;</TD
2668><TD
2669>&nbsp;</TD
2670></TR
2671><TR
2672><TD
2673COLSPAN="2"
2674><CODE
2675CLASS="CONSTANT"
2676>V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE</CODE
2677>&nbsp;</TD
2678><TD
2679>enum</TD
2680><TD
2681>&nbsp;</TD
2682></TR
2683><TR
2684><TD
2685>&nbsp;</TD
2686><TD
2687COLSPAN="3"
2688>Sets the Temporal
2689Filter mode (default <CODE
2690CLASS="CONSTANT"
2691>MANUAL</CODE
2692>). Possible values
2693are:</TD
2694></TR
2695><TR
2696><TD
2697>&nbsp;</TD
2698><TD
2699COLSPAN="3"
2700><TABLE
2701BORDER="0"
2702CLASS="CALSTABLE"
2703><COL><COL><TBODY
2704VALIGN="TOP"
2705><TR
2706><TD
2707><CODE
2708CLASS="CONSTANT"
2709>V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL</CODE
2710>&nbsp;</TD
2711><TD
2712>Choose the filter manually</TD
2713></TR
2714><TR
2715><TD
2716><CODE
2717CLASS="CONSTANT"
2718>V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO</CODE
2719>&nbsp;</TD
2720><TD
2721>Choose the filter automatically</TD
2722></TR
2723></TBODY
2724></TABLE
2725></TD
2726></TR
2727><TR
2728><TD
2729>&nbsp;</TD
2730><TD
2731>&nbsp;</TD
2732><TD
2733>&nbsp;</TD
2734><TD
2735>&nbsp;</TD
2736></TR
2737><TR
2738><TD
2739COLSPAN="2"
2740><CODE
2741CLASS="CONSTANT"
2742>V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER</CODE
2743>&nbsp;</TD
2744><TD
2745>integer&nbsp;(0-31)</TD
2746><TD
2747>&nbsp;</TD
2748></TR
2749><TR
2750><TD
2751>&nbsp;</TD
2752><TD
2753COLSPAN="3"
2754>The setting for the
2755Temporal Filter. 0 = off, 31 = maximum. (Default is 8 for full-scale
2756capturing and 0 for scaled capturing.)</TD
2757></TR
2758><TR
2759><TD
2760>&nbsp;</TD
2761><TD
2762>&nbsp;</TD
2763><TD
2764>&nbsp;</TD
2765><TD
2766>&nbsp;</TD
2767></TR
2768><TR
2769><TD
2770COLSPAN="2"
2771><CODE
2772CLASS="CONSTANT"
2773>V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE</CODE
2774>&nbsp;</TD
2775><TD
2776>enum</TD
2777><TD
2778>&nbsp;</TD
2779></TR
2780><TR
2781><TD
2782>&nbsp;</TD
2783><TD
2784COLSPAN="3"
2785>Median Filter Type
2786(default <CODE
2787CLASS="CONSTANT"
2788>OFF</CODE
2789>). Possible values are:</TD
2790></TR
2791><TR
2792><TD
2793>&nbsp;</TD
2794><TD
2795COLSPAN="3"
2796><TABLE
2797BORDER="0"
2798CLASS="CALSTABLE"
2799><COL><COL><TBODY
2800VALIGN="TOP"
2801><TR
2802><TD
2803><CODE
2804CLASS="CONSTANT"
2805>V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF</CODE
2806>&nbsp;</TD
2807><TD
2808>No filter</TD
2809></TR
2810><TR
2811><TD
2812><CODE
2813CLASS="CONSTANT"
2814>V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR</CODE
2815>&nbsp;</TD
2816><TD
2817>Horizontal filter</TD
2818></TR
2819><TR
2820><TD
2821><CODE
2822CLASS="CONSTANT"
2823>V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT</CODE
2824>&nbsp;</TD
2825><TD
2826>Vertical filter</TD
2827></TR
2828><TR
2829><TD
2830><CODE
2831CLASS="CONSTANT"
2832>V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT</CODE
2833>&nbsp;</TD
2834><TD
2835>Horizontal and vertical filter</TD
2836></TR
2837><TR
2838><TD
2839><CODE
2840CLASS="CONSTANT"
2841>V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG</CODE
2842>&nbsp;</TD
2843><TD
2844>Diagonal filter</TD
2845></TR
2846></TBODY
2847></TABLE
2848></TD
2849></TR
2850><TR
2851><TD
2852>&nbsp;</TD
2853><TD
2854>&nbsp;</TD
2855><TD
2856>&nbsp;</TD
2857><TD
2858>&nbsp;</TD
2859></TR
2860><TR
2861><TD
2862COLSPAN="2"
2863><CODE
2864CLASS="CONSTANT"
2865>V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM</CODE
2866>&nbsp;</TD
2867><TD
2868>integer&nbsp;(0-255)</TD
2869><TD
2870>&nbsp;</TD
2871></TR
2872><TR
2873><TD
2874>&nbsp;</TD
2875><TD
2876COLSPAN="3"
2877>Threshold above which
2878the luminance median filter is enabled (default 0)</TD
2879></TR
2880><TR
2881><TD
2882>&nbsp;</TD
2883><TD
2884>&nbsp;</TD
2885><TD
2886>&nbsp;</TD
2887><TD
2888>&nbsp;</TD
2889></TR
2890><TR
2891><TD
2892COLSPAN="2"
2893><CODE
2894CLASS="CONSTANT"
2895>V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP</CODE
2896>&nbsp;</TD
2897><TD
2898>integer&nbsp;(0-255)</TD
2899><TD
2900>&nbsp;</TD
2901></TR
2902><TR
2903><TD
2904>&nbsp;</TD
2905><TD
2906COLSPAN="3"
2907>Threshold below which
2908the luminance median filter is enabled (default 255)</TD
2909></TR
2910><TR
2911><TD
2912>&nbsp;</TD
2913><TD
2914>&nbsp;</TD
2915><TD
2916>&nbsp;</TD
2917><TD
2918>&nbsp;</TD
2919></TR
2920><TR
2921><TD
2922COLSPAN="2"
2923><CODE
2924CLASS="CONSTANT"
2925>V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_BOTTOM</CODE
2926>&nbsp;</TD
2927><TD
2928>integer&nbsp;(0-255)</TD
2929><TD
2930>&nbsp;</TD
2931></TR
2932><TR
2933><TD
2934>&nbsp;</TD
2935><TD
2936COLSPAN="3"
2937>Threshold above which
2938the chroma median filter is enabled (default 0)</TD
2939></TR
2940><TR
2941><TD
2942>&nbsp;</TD
2943><TD
2944>&nbsp;</TD
2945><TD
2946>&nbsp;</TD
2947><TD
2948>&nbsp;</TD
2949></TR
2950><TR
2951><TD
2952COLSPAN="2"
2953><CODE
2954CLASS="CONSTANT"
2955>V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_TOP</CODE
2956>&nbsp;</TD
2957><TD
2958>integer&nbsp;(0-255)</TD
2959><TD
2960>&nbsp;</TD
2961></TR
2962><TR
2963><TD
2964>&nbsp;</TD
2965><TD
2966COLSPAN="3"
2967>Threshold below which
2968the chroma median filter is enabled (default 255)</TD
2969></TR
2970><TR
2971><TD
2972>&nbsp;</TD
2973><TD
2974>&nbsp;</TD
2975><TD
2976>&nbsp;</TD
2977><TD
2978>&nbsp;</TD
2979></TR
2980><TR
2981><TD
2982COLSPAN="2"
2983><CODE
2984CLASS="CONSTANT"
2985>V4L2_CID_MPEG_CX2341X_STREAM_INSERT_NAV_PACKETS</CODE
2986>&nbsp;</TD
2987><TD
2988>bool</TD
2989><TD
2990>&nbsp;</TD
2991></TR
2992><TR
2993><TD
2994>&nbsp;</TD
2995><TD
2996COLSPAN="3"
2997>The CX2341X MPEG encoder
2998can insert one empty MPEG-2 PES packet into the stream between every
2999four video frames. The packet size is 2048 bytes, including the
3000packet_start_code_prefix and stream_id fields. The stream_id is 0xBF
3001(private stream 2). The payload consists of 0x00 bytes, to be filled
3002in by the application. 0 = do not insert, 1 = insert packets.</TD
3003></TR
3004></TBODY
3005></TABLE
3006></DIV
3007></DIV
3008></DIV
3009><DIV
3010CLASS="SECTION"
3011><H2
3012CLASS="SECTION"
3013><A
3014NAME="CAMERA-CONTROLS"
3015>1.9.6. Camera Control Reference</A
3016></H2
3017><P
3018>The Camera class includes controls for mechanical (or
3019equivalent digital) features of a device such as controllable lenses
3020or sensors.</P
3021><DIV
3022CLASS="TABLE"
3023><A
3024NAME="CAMERA-CONTROL-ID"
3025></A
3026><P
3027><B
3028>Table 1-4. Camera Control IDs</B
3029></P
3030><TABLE
3031BORDER="0"
3032FRAME="void"
3033WIDTH="100%"
3034CLASS="CALSTABLE"
3035><COL
3036WIDTH="7%"
3037TITLE="C1"><COL
3038WIDTH="40%"
3039TITLE="C2"><COL
3040WIDTH="13%"
3041TITLE="C3"><COL
3042WIDTH="40%"
3043TITLE="C4"><THEAD
3044><TR
3045><TH
3046COLSPAN="2"
3047ALIGN="LEFT"
3048>ID</TH
3049><TH
3050ALIGN="LEFT"
3051>Type</TH
3052><TD
3053>&nbsp;</TD
3054></TR
3055><TR
3056><TH
3057>&nbsp;</TH
3058><TH
3059COLSPAN="3"
3060ALIGN="LEFT"
3061>Description</TH
3062></TR
3063></THEAD
3064><TBODY
3065VALIGN="TOP"
3066><TR
3067><TD
3068>&nbsp;</TD
3069><TD
3070>&nbsp;</TD
3071><TD
3072>&nbsp;</TD
3073><TD
3074>&nbsp;</TD
3075></TR
3076><TR
3077><TD
3078COLSPAN="2"
3079><CODE
3080CLASS="CONSTANT"
3081>V4L2_CID_CAMERA_CLASS</CODE
3082>&nbsp;</TD
3083><TD
3084>class</TD
3085><TD
3086>&nbsp;</TD
3087></TR
3088><TR
3089><TD
3090>&nbsp;</TD
3091><TD
3092COLSPAN="3"
3093>The Camera class
3094descriptor. Calling <A
3095HREF="r13317.htm"
3096><CODE
3097CLASS="CONSTANT"
3098>VIDIOC_QUERYCTRL</CODE
3099></A
3100> for this control will return a
3101description of this control class.</TD
3102></TR
3103><TR
3104><TD
3105>&nbsp;</TD
3106><TD
3107>&nbsp;</TD
3108><TD
3109>&nbsp;</TD
3110><TD
3111>&nbsp;</TD
3112></TR
3113><TR
3114><TD
3115COLSPAN="2"
3116><CODE
3117CLASS="CONSTANT"
3118>V4L2_CID_EXPOSURE_AUTO</CODE
3119>&nbsp;</TD
3120><TD
3121>integer</TD
3122><TD
3123>&nbsp;</TD
3124></TR
3125><TR
3126><TD
3127>&nbsp;</TD
3128><TD
3129COLSPAN="3"
3130>Enables automatic
3131adjustments of the exposure time and/or iris aperture. The effect of
3132manual changes of the exposure time or iris aperture while these
3133features are enabled is undefined, drivers should ignore such
3134requests. Possible values are:</TD
3135></TR
3136><TR
3137><TD
3138>&nbsp;</TD
3139><TD
3140COLSPAN="3"
3141><TABLE
3142BORDER="0"
3143CLASS="CALSTABLE"
3144><COL><COL><TBODY
3145VALIGN="TOP"
3146><TR
3147><TD
3148><CODE
3149CLASS="CONSTANT"
3150>V4L2_EXPOSURE_AUTO</CODE
3151>&nbsp;</TD
3152><TD
3153>Automatic exposure time, automatic iris
3154aperture.</TD
3155></TR
3156><TR
3157><TD
3158><CODE
3159CLASS="CONSTANT"
3160>V4L2_EXPOSURE_MANUAL</CODE
3161>&nbsp;</TD
3162><TD
3163>Manual exposure time, manual iris.</TD
3164></TR
3165><TR
3166><TD
3167><CODE
3168CLASS="CONSTANT"
3169>V4L2_EXPOSURE_SHUTTER_PRIORITY</CODE
3170>&nbsp;</TD
3171><TD
3172>Manual exposure time, auto iris.</TD
3173></TR
3174><TR
3175><TD
3176><CODE
3177CLASS="CONSTANT"
3178>V4L2_EXPOSURE_APERTURE_PRIORITY</CODE
3179>&nbsp;</TD
3180><TD
3181>Auto exposure time, manual iris.</TD
3182></TR
3183></TBODY
3184></TABLE
3185></TD
3186></TR
3187><TR
3188><TD
3189>&nbsp;</TD
3190><TD
3191>&nbsp;</TD
3192><TD
3193>&nbsp;</TD
3194><TD
3195>&nbsp;</TD
3196></TR
3197><TR
3198><TD
3199COLSPAN="2"
3200><CODE
3201CLASS="CONSTANT"
3202>V4L2_CID_EXPOSURE_ABSOLUTE</CODE
3203>&nbsp;</TD
3204><TD
3205>integer</TD
3206><TD
3207>&nbsp;</TD
3208></TR
3209><TR
3210><TD
3211>&nbsp;</TD
3212><TD
3213COLSPAN="3"
3214>Determines the exposure
3215time of the camera sensor. The exposure time is limited by the frame
3216interval. Drivers should interpret the values as 100 &micro;s units,
3217where the value 1 stands for 1/10000th of a second, 10000 for 1 second
3218and 100000 for 10 seconds.</TD
3219></TR
3220><TR
3221><TD
3222>&nbsp;</TD
3223><TD
3224>&nbsp;</TD
3225><TD
3226>&nbsp;</TD
3227><TD
3228>&nbsp;</TD
3229></TR
3230><TR
3231><TD
3232COLSPAN="2"
3233><CODE
3234CLASS="CONSTANT"
3235>V4L2_CID_EXPOSURE_AUTO_PRIORITY</CODE
3236>&nbsp;</TD
3237><TD
3238>boolean</TD
3239><TD
3240>&nbsp;</TD
3241></TR
3242><TR
3243><TD
3244>&nbsp;</TD
3245><TD
3246COLSPAN="3"
3247>When
3248<CODE
3249CLASS="CONSTANT"
3250>V4L2_CID_EXPOSURE_AUTO</CODE
3251> is set to
3252<CODE
3253CLASS="CONSTANT"
3254>AUTO</CODE
3255> or <CODE
3256CLASS="CONSTANT"
3257>SHUTTER_PRIORITY</CODE
3258>,
3259this control determines if the device may dynamically vary the frame
3260rate. By default this feature is disabled (0) and the frame rate must
3261remain constant.</TD
3262></TR
3263><TR
3264><TD
3265>&nbsp;</TD
3266><TD
3267>&nbsp;</TD
3268><TD
3269>&nbsp;</TD
3270><TD
3271>&nbsp;</TD
3272></TR
3273><TR
3274><TD
3275COLSPAN="2"
3276><CODE
3277CLASS="CONSTANT"
3278>V4L2_CID_PAN_RELATIVE</CODE
3279>&nbsp;</TD
3280><TD
3281>integer</TD
3282><TD
3283>&nbsp;</TD
3284></TR
3285><TR
3286><TD
3287>&nbsp;</TD
3288><TD
3289COLSPAN="3"
3290>This control turns the
3291camera horizontally by the specified amount. The unit is undefined. A
3292positive value moves the camera to the right (clockwise when viewed
3293from above), a negative value to the left. A value of zero does not
3294cause motion.</TD
3295></TR
3296><TR
3297><TD
3298>&nbsp;</TD
3299><TD
3300>&nbsp;</TD
3301><TD
3302>&nbsp;</TD
3303><TD
3304>&nbsp;</TD
3305></TR
3306><TR
3307><TD
3308COLSPAN="2"
3309><CODE
3310CLASS="CONSTANT"
3311>V4L2_CID_TILT_RELATIVE</CODE
3312>&nbsp;</TD
3313><TD
3314>integer</TD
3315><TD
3316>&nbsp;</TD
3317></TR
3318><TR
3319><TD
3320>&nbsp;</TD
3321><TD
3322COLSPAN="3"
3323>This control turns the
3324camera vertically by the specified amount. The unit is undefined. A
3325positive value moves the camera up, a negative value down. A value of
3326zero does not cause motion.</TD
3327></TR
3328><TR
3329><TD
3330>&nbsp;</TD
3331><TD
3332>&nbsp;</TD
3333><TD
3334>&nbsp;</TD
3335><TD
3336>&nbsp;</TD
3337></TR
3338><TR
3339><TD
3340COLSPAN="2"
3341><CODE
3342CLASS="CONSTANT"
3343>V4L2_CID_PAN_RESET</CODE
3344>&nbsp;</TD
3345><TD
3346>boolean</TD
3347><TD
3348>&nbsp;</TD
3349></TR
3350><TR
3351><TD
3352>&nbsp;</TD
3353><TD
3354COLSPAN="3"
3355>When this control is set
3356to <CODE
3357CLASS="CONSTANT"
3358>TRUE</CODE
3359> (1), the camera moves horizontally to the
3360default position.</TD
3361></TR
3362><TR
3363><TD
3364>&nbsp;</TD
3365><TD
3366>&nbsp;</TD
3367><TD
3368>&nbsp;</TD
3369><TD
3370>&nbsp;</TD
3371></TR
3372><TR
3373><TD
3374COLSPAN="2"
3375><CODE
3376CLASS="CONSTANT"
3377>V4L2_CID_TILT_RESET</CODE
3378>&nbsp;</TD
3379><TD
3380>boolean</TD
3381><TD
3382>&nbsp;</TD
3383></TR
3384><TR
3385><TD
3386>&nbsp;</TD
3387><TD
3388COLSPAN="3"
3389>When this control is set
3390to <CODE
3391CLASS="CONSTANT"
3392>TRUE</CODE
3393> (1), the camera moves vertically to the
3394default position.</TD
3395></TR
3396><TR
3397><TD
3398>&nbsp;</TD
3399><TD
3400>&nbsp;</TD
3401><TD
3402>&nbsp;</TD
3403><TD
3404>&nbsp;</TD
3405></TR
3406><TR
3407><TD
3408COLSPAN="2"
3409><CODE
3410CLASS="CONSTANT"
3411>V4L2_CID_PAN_ABSOLUTE</CODE
3412>&nbsp;</TD
3413><TD
3414>integer</TD
3415><TD
3416>&nbsp;</TD
3417></TR
3418><TR
3419><TD
3420>&nbsp;</TD
3421><TD
3422COLSPAN="3"
3423>This control
3424turns the camera horizontally to the specified position. Positive
3425values move the camera to the right (clockwise when viewed from above),
3426negative values to the left. Drivers should interpret the values as arc
3427seconds, with valid values between -180 * 3600 and +180 * 3600
3428inclusive.</TD
3429></TR
3430><TR
3431><TD
3432>&nbsp;</TD
3433><TD
3434>&nbsp;</TD
3435><TD
3436>&nbsp;</TD
3437><TD
3438>&nbsp;</TD
3439></TR
3440><TR
3441><TD
3442COLSPAN="2"
3443><CODE
3444CLASS="CONSTANT"
3445>V4L2_CID_TILT_ABSOLUTE</CODE
3446>&nbsp;</TD
3447><TD
3448>integer</TD
3449><TD
3450>&nbsp;</TD
3451></TR
3452><TR
3453><TD
3454>&nbsp;</TD
3455><TD
3456COLSPAN="3"
3457>This control
3458turns the camera vertically to the specified position. Positive values
3459move the camera up, negative values down. Drivers should interpret the
3460values as arc seconds, with valid values between -180 * 3600 and +180
3461* 3600 inclusive.</TD
3462></TR
3463><TR
3464><TD
3465>&nbsp;</TD
3466><TD
3467>&nbsp;</TD
3468><TD
3469>&nbsp;</TD
3470><TD
3471>&nbsp;</TD
3472></TR
3473><TR
3474><TD
3475COLSPAN="2"
3476><CODE
3477CLASS="CONSTANT"
3478>V4L2_CID_FOCUS_ABSOLUTE</CODE
3479>&nbsp;</TD
3480><TD
3481>integer</TD
3482><TD
3483>&nbsp;</TD
3484></TR
3485><TR
3486><TD
3487>&nbsp;</TD
3488><TD
3489COLSPAN="3"
3490>This control sets the
3491focal point of the camera to the specified position. The unit is
3492undefined. Positive values set the focus closer to the camera,
3493negative values towards infinity.</TD
3494></TR
3495><TR
3496><TD
3497>&nbsp;</TD
3498><TD
3499>&nbsp;</TD
3500><TD
3501>&nbsp;</TD
3502><TD
3503>&nbsp;</TD
3504></TR
3505><TR
3506><TD
3507COLSPAN="2"
3508><CODE
3509CLASS="CONSTANT"
3510>V4L2_CID_FOCUS_RELATIVE</CODE
3511>&nbsp;</TD
3512><TD
3513>integer</TD
3514><TD
3515>&nbsp;</TD
3516></TR
3517><TR
3518><TD
3519>&nbsp;</TD
3520><TD
3521COLSPAN="3"
3522>This control moves the
3523focal point of the camera by the specified amount. The unit is
3524undefined. Positive values move the focus closer to the camera,
3525negative values towards infinity.</TD
3526></TR
3527><TR
3528><TD
3529>&nbsp;</TD
3530><TD
3531>&nbsp;</TD
3532><TD
3533>&nbsp;</TD
3534><TD
3535>&nbsp;</TD
3536></TR
3537><TR
3538><TD
3539COLSPAN="2"
3540><CODE
3541CLASS="CONSTANT"
3542>V4L2_CID_FOCUS_AUTO</CODE
3543>&nbsp;</TD
3544><TD
3545>boolean</TD
3546><TD
3547>&nbsp;</TD
3548></TR
3549><TR
3550><TD
3551>&nbsp;</TD
3552><TD
3553COLSPAN="3"
3554>Enables automatic focus
3555adjustments. The effect of manual focus adjustments while this feature
3556is enabled is undefined, drivers should ignore such requests.</TD
3557></TR
3558><TR
3559><TD
3560>&nbsp;</TD
3561><TD
3562>&nbsp;</TD
3563><TD
3564>&nbsp;</TD
3565><TD
3566>&nbsp;</TD
3567></TR
3568></TBODY
3569></TABLE
3570></DIV
3571></DIV
3572></DIV
3573><DIV
3574CLASS="NAVFOOTER"
3575><HR
3576ALIGN="LEFT"
3577WIDTH="100%"><TABLE
3578SUMMARY="Footer navigation table"
3579WIDTH="100%"
3580BORDER="0"
3581CELLPADDING="0"
3582CELLSPACING="0"
3583><TR
3584><TD
3585WIDTH="33%"
3586ALIGN="left"
3587VALIGN="top"
3588><A
3589HREF="x542.htm"
3590ACCESSKEY="P"
3591>Prev</A
3592></TD
3593><TD
3594WIDTH="34%"
3595ALIGN="center"
3596VALIGN="top"
3597><A
3598HREF="book1.htm"
3599ACCESSKEY="H"
3600>Home</A
3601></TD
3602><TD
3603WIDTH="33%"
3604ALIGN="right"
3605VALIGN="top"
3606><A
3607HREF="x1859.htm"
3608ACCESSKEY="N"
3609>Next</A
3610></TD
3611></TR
3612><TR
3613><TD
3614WIDTH="33%"
3615ALIGN="left"
3616VALIGN="top"
3617>User Controls</TD
3618><TD
3619WIDTH="34%"
3620ALIGN="center"
3621VALIGN="top"
3622><A
3623HREF="c174.htm"
3624ACCESSKEY="U"
3625>Up</A
3626></TD
3627><TD
3628WIDTH="33%"
3629ALIGN="right"
3630VALIGN="top"
3631>Data Formats</TD
3632></TR
3633></TABLE
3634></DIV
3635></BODY
3636></HTML
3637>
3638