selections-common.xml 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <section id="v4l2-selections-common">
  2. <title>Selection targets</title>
  3. <para>While the <link linkend="selection-api">V4L2 selection
  4. API</link> and <link linkend="v4l2-subdev-selections">V4L2 subdev
  5. selection APIs</link> are very similar, there's one fundamental
  6. difference between the two. On sub-device API, the selection
  7. rectangle refers to the media bus format, and is bound to a
  8. sub-device's pad. On the V4L2 interface the selection rectangles
  9. refer to the in-memory pixel format.</para>
  10. <para>The precise meaning of the selection targets may thus be
  11. affected on which of the two interfaces they are used.</para>
  12. <table pgwide="1" frame="none" id="v4l2-selection-targets-table">
  13. <title>Selection target definitions</title>
  14. <tgroup cols="5">
  15. <colspec colname="c1" />
  16. <colspec colname="c2" />
  17. <colspec colname="c3" />
  18. <colspec colname="c4" />
  19. <colspec colname="c5" />
  20. &cs-def;
  21. <thead>
  22. <row rowsep="1">
  23. <entry align="left">Target name</entry>
  24. <entry align="left">id</entry>
  25. <entry align="left">Definition</entry>
  26. <entry align="left">Valid for V4L2</entry>
  27. <entry align="left">Valid for V4L2 subdev</entry>
  28. </row>
  29. </thead>
  30. <tbody valign="top">
  31. <row>
  32. <entry><constant>V4L2_SEL_TGT_CROP</constant></entry>
  33. <entry>0x0000</entry>
  34. <entry>Crop rectangle. Defines the cropped area.</entry>
  35. <entry>Yes</entry>
  36. <entry>Yes</entry>
  37. </row>
  38. <row>
  39. <entry><constant>V4L2_SEL_TGT_CROP_DEFAULT</constant></entry>
  40. <entry>0x0001</entry>
  41. <entry>Suggested cropping rectangle that covers the "whole picture".</entry>
  42. <entry>Yes</entry>
  43. <entry>No</entry>
  44. </row>
  45. <row>
  46. <entry><constant>V4L2_SEL_TGT_CROP_BOUNDS</constant></entry>
  47. <entry>0x0002</entry>
  48. <entry>Bounds of the crop rectangle. All valid crop
  49. rectangles fit inside the crop bounds rectangle.
  50. </entry>
  51. <entry>Yes</entry>
  52. <entry>Yes</entry>
  53. </row>
  54. <row>
  55. <entry><constant>V4L2_SEL_TGT_COMPOSE</constant></entry>
  56. <entry>0x0100</entry>
  57. <entry>Compose rectangle. Used to configure scaling
  58. and composition.</entry>
  59. <entry>Yes</entry>
  60. <entry>Yes</entry>
  61. </row>
  62. <row>
  63. <entry><constant>V4L2_SEL_TGT_COMPOSE_DEFAULT</constant></entry>
  64. <entry>0x0101</entry>
  65. <entry>Suggested composition rectangle that covers the "whole picture".</entry>
  66. <entry>Yes</entry>
  67. <entry>No</entry>
  68. </row>
  69. <row>
  70. <entry><constant>V4L2_SEL_TGT_COMPOSE_BOUNDS</constant></entry>
  71. <entry>0x0102</entry>
  72. <entry>Bounds of the compose rectangle. All valid compose
  73. rectangles fit inside the compose bounds rectangle.</entry>
  74. <entry>Yes</entry>
  75. <entry>Yes</entry>
  76. </row>
  77. <row>
  78. <entry><constant>V4L2_SEL_TGT_COMPOSE_PADDED</constant></entry>
  79. <entry>0x0103</entry>
  80. <entry>The active area and all padding pixels that are inserted or
  81. modified by hardware.</entry>
  82. <entry>Yes</entry>
  83. <entry>No</entry>
  84. </row>
  85. </tbody>
  86. </tgroup>
  87. </table>
  88. </section>