€•hVŒsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)”}”(hhh]”(hŒ pending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…””}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”ŒB/translations/zh_CN/userspace-api/media/v4l/ext-ctrls-image-source”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”ŒB/translations/zh_TW/userspace-api/media/v4l/ext-ctrls-image-source”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”ŒB/translations/it_IT/userspace-api/media/v4l/ext-ctrls-image-source”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”ŒB/translations/ja_JP/userspace-api/media/v4l/ext-ctrls-image-source”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”ŒB/translations/ko_KR/userspace-api/media/v4l/ext-ctrls-image-source”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒPortuguese (Brazilian)”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”ŒB/translations/pt_BR/userspace-api/media/v4l/ext-ctrls-image-source”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒSpanish”…””}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”ŒB/translations/sp_SP/userspace-api/media/v4l/ext-ctrls-image-source”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)”}”(hŒ8SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later”h]”hŒ8SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later”…””}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³Œ\/var/lib/git/docbuild/linux/Documentation/userspace-api/media/v4l/ext-ctrls-image-source.rst”h´KubhŒtarget”“”)”}”(hŒ.. _image-source-controls:”h]”h}”(h]”h ]”h"]”h$]”h&]”Œrefid”Œimage-source-controls”uh1hÈh´Khhh²hh³hÇubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒImage Source Control Reference”h]”hŒImage Source Control Reference”…””}”(hhÝh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhhØh²hh³hÇh´KubhŒ paragraph”“”)”}”(hŒèThe Image Source control class is intended for low-level control of image source devices such as image sensors. The devices feature an analogue to digital converter and a bus transmitter to transmit the image data out of the device.”h]”hŒèThe Image Source control class is intended for low-level control of image source devices such as image sensors. The devices feature an analogue to digital converter and a bus transmitter to transmit the image data out of the device.”…””}”(hhíh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K hhØh²hubhÉ)”}”(hŒ.. _image-source-control-id:”h]”h}”(h]”h ]”h"]”h$]”h&]”hÔŒimage-source-control-id”uh1hÈh´KhhØh²hh³hÇubh×)”}”(hhh]”(hÜ)”}”(hŒImage Source Control IDs”h]”hŒImage Source Control IDs”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjh²hh³hÇh´KubhŒdefinition_list”“”)”}”(hhh]”(hŒdefinition_list_item”“”)”}”(hŒK``V4L2_CID_IMAGE_SOURCE_CLASS (class)`` The IMAGE_SOURCE class descriptor. ”h]”(hŒterm”“”)”}”(hŒ'``V4L2_CID_IMAGE_SOURCE_CLASS (class)``”h]”hŒliteral”“”)”}”(hj&h]”hŒ#V4L2_CID_IMAGE_SOURCE_CLASS (class)”…””}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj$ubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´KhjubhŒ definition”“”)”}”(hhh]”hì)”}”(hŒ"The IMAGE_SOURCE class descriptor.”h]”hŒ"The IMAGE_SOURCE class descriptor.”…””}”(hjBh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´Khj?ubah}”(h]”h ]”h"]”h$]”h&]”uh1j=hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´Khjubj)”}”(hX;``V4L2_CID_VBLANK (integer)`` Vertical blanking. The idle period after every frame during which no image data is produced. The unit of vertical blanking is a line. Every line has length of the image width plus horizontal blanking at the pixel rate defined by ``V4L2_CID_PIXEL_RATE`` control in the same sub-device. ”h]”(j#)”}”(hŒ``V4L2_CID_VBLANK (integer)``”h]”j))”}”(hjbh]”hŒV4L2_CID_VBLANK (integer)”…””}”(hjdh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj`ubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´Khj\ubj>)”}”(hhh]”hì)”}”(hXVertical blanking. The idle period after every frame during which no image data is produced. The unit of vertical blanking is a line. Every line has length of the image width plus horizontal blanking at the pixel rate defined by ``V4L2_CID_PIXEL_RATE`` control in the same sub-device.”h]”(hŒåVertical blanking. The idle period after every frame during which no image data is produced. The unit of vertical blanking is a line. Every line has length of the image width plus horizontal blanking at the pixel rate defined by ”…””}”(hjzh²hh³Nh´Nubj))”}”(hŒ``V4L2_CID_PIXEL_RATE``”h]”hŒV4L2_CID_PIXEL_RATE”…””}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjzubhŒ control in the same sub-device.”…””}”(hjzh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´Khjwubah}”(h]”h ]”h"]”h$]”h&]”uh1j=hj\ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´Khjh²hubj)”}”(hŒµ``V4L2_CID_HBLANK (integer)`` Horizontal blanking. The idle period after every line of image data during which no image data is produced. The unit of horizontal blanking is pixels. ”h]”(j#)”}”(hŒ``V4L2_CID_HBLANK (integer)``”h]”j))”}”(hj¬h]”hŒV4L2_CID_HBLANK (integer)”…””}”(hj®h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjªubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´K"hj¦ubj>)”}”(hhh]”hì)”}”(hŒ–Horizontal blanking. The idle period after every line of image data during which no image data is produced. The unit of horizontal blanking is pixels.”h]”hŒ–Horizontal blanking. The idle period after every line of image data during which no image data is produced. The unit of horizontal blanking is pixels.”…””}”(hjÄh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K hjÁubah}”(h]”h ]”h"]”h$]”h&]”uh1j=hj¦ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K"hjh²hubj)”}”(hŒ¾``V4L2_CID_ANALOGUE_GAIN (integer)`` Analogue gain is gain affecting all colour components in the pixel matrix. The gain operation is performed in the analogue domain before A/D conversion. ”h]”(j#)”}”(hŒ$``V4L2_CID_ANALOGUE_GAIN (integer)``”h]”j))”}”(hjäh]”hŒ V4L2_CID_ANALOGUE_GAIN (integer)”…””}”(hjæh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjâubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´K'hjÞubj>)”}”(hhh]”hì)”}”(hŒ˜Analogue gain is gain affecting all colour components in the pixel matrix. The gain operation is performed in the analogue domain before A/D conversion.”h]”hŒ˜Analogue gain is gain affecting all colour components in the pixel matrix. The gain operation is performed in the analogue domain before A/D conversion.”…””}”(hjüh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K%hjùubah}”(h]”h ]”h"]”h$]”h&]”uh1j=hjÞubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K'hjh²hubj)”}”(hŒK``V4L2_CID_TEST_PATTERN_RED (integer)`` Test pattern red colour component. ”h]”(j#)”}”(hŒ'``V4L2_CID_TEST_PATTERN_RED (integer)``”h]”j))”}”(hjh]”hŒ#V4L2_CID_TEST_PATTERN_RED (integer)”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´K*hjubj>)”}”(hhh]”hì)”}”(hŒ"Test pattern red colour component.”h]”hŒ"Test pattern red colour component.”…””}”(hj4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K*hj1ubah}”(h]”h ]”h"]”h$]”h&]”uh1j=hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K*hjh²hubj)”}”(hŒ^``V4L2_CID_TEST_PATTERN_GREENR (integer)`` Test pattern green (next to red) colour component. ”h]”(j#)”}”(hŒ*``V4L2_CID_TEST_PATTERN_GREENR (integer)``”h]”j))”}”(hjTh]”hŒ&V4L2_CID_TEST_PATTERN_GREENR (integer)”…””}”(hjVh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjRubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´K-hjNubj>)”}”(hhh]”hì)”}”(hŒ2Test pattern green (next to red) colour component.”h]”hŒ2Test pattern green (next to red) colour component.”…””}”(hjlh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K-hjiubah}”(h]”h ]”h"]”h$]”h&]”uh1j=hjNubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K-hjh²hubj)”}”(hŒM``V4L2_CID_TEST_PATTERN_BLUE (integer)`` Test pattern blue colour component. ”h]”(j#)”}”(hŒ(``V4L2_CID_TEST_PATTERN_BLUE (integer)``”h]”j))”}”(hjŒh]”hŒ$V4L2_CID_TEST_PATTERN_BLUE (integer)”…””}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjŠubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´K0hj†ubj>)”}”(hhh]”hì)”}”(hŒ#Test pattern blue colour component.”h]”hŒ#Test pattern blue colour component.”…””}”(hj¤h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K0hj¡ubah}”(h]”h ]”h"]”h$]”h&]”uh1j=hj†ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K0hjh²hubj)”}”(hŒ_``V4L2_CID_TEST_PATTERN_GREENB (integer)`` Test pattern green (next to blue) colour component. ”h]”(j#)”}”(hŒ*``V4L2_CID_TEST_PATTERN_GREENB (integer)``”h]”j))”}”(hjÄh]”hŒ&V4L2_CID_TEST_PATTERN_GREENB (integer)”…””}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjÂubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´K3hj¾ubj>)”}”(hhh]”hì)”}”(hŒ3Test pattern green (next to blue) colour component.”h]”hŒ3Test pattern green (next to blue) colour component.”…””}”(hjÜh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K3hjÙubah}”(h]”h ]”h"]”h$]”h&]”uh1j=hj¾ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K3hjh²hubj)”}”(hXÆ``V4L2_CID_UNIT_CELL_SIZE (struct)`` This control returns the unit cell size in nanometers. The struct :c:type:`v4l2_area` provides the width and the height in separate fields to take into consideration asymmetric pixels. This control does not take into consideration any possible hardware binning. The unit cell consists of the whole area of the pixel, sensitive and non-sensitive. This control is required for automatic calibration of sensors/cameras. ”h]”(j#)”}”(hŒ$``V4L2_CID_UNIT_CELL_SIZE (struct)``”h]”j))”}”(hjüh]”hŒ V4L2_CID_UNIT_CELL_SIZE (struct)”…””}”(hjþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjúubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´K=hjöubj>)”}”(hhh]”hì)”}”(hX This control returns the unit cell size in nanometers. The struct :c:type:`v4l2_area` provides the width and the height in separate fields to take into consideration asymmetric pixels. This control does not take into consideration any possible hardware binning. The unit cell consists of the whole area of the pixel, sensitive and non-sensitive. This control is required for automatic calibration of sensors/cameras.”h]”(hŒBThis control returns the unit cell size in nanometers. The struct ”…””}”(hjh²hh³Nh´Nubh)”}”(hŒ:c:type:`v4l2_area`”h]”j))”}”(hjh]”hŒ v4l2_area”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”(Œxref”Œc”Œc-type”eh"]”h$]”h&]”uh1j(hjubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”Œ.userspace-api/media/v4l/ext-ctrls-image-source”Œ refdomain”j+Œreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰Œ c:parent_key”Œsphinx.domains.c”Œ LookupKey”“”)”}”Œdata”]”j>Œ ASTIdentifier”“”)”}”Œ identifier”ŒV4L”sbN†”asbŒ reftarget”Œ v4l2_area”uh1hh³hÇh´K6hjubhXK provides the width and the height in separate fields to take into consideration asymmetric pixels. This control does not take into consideration any possible hardware binning. The unit cell consists of the whole area of the pixel, sensitive and non-sensitive. This control is required for automatic calibration of sensors/cameras.”…””}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K6hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j=hjöubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K=hjh²hubeh}”(h]”h ]”h"]”h$]”h&]”uh1jhjh²hh³hÇh´NubhŒindex”“”)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(Œsingle”ŒV4L.v4l2_area (C type)”Œc.V4L.v4l2_area”hNt”auh1jjhjh²hh³Nh´NubhŒdesc”“”)”}”(hhh]”(hŒdesc_signature”“”)”}”(hŒ v4l2_area”h]”hŒdesc_signature_line”“”)”}”(hŒtype v4l2_area”h]”(hŒdesc_sig_keyword”“”)”}”(hŒtype”h]”hŒtype”…””}”(hjŽh²hh³Nh´Nubah}”(h]”h ]”Œk”ah"]”h$]”h&]”uh1jŒhjˆh²hh³hÇh´K?ubhŒdesc_sig_space”“”)”}”(hŒ ”h]”hŒ ”…””}”(hjŸh²hh³Nh´Nubah}”(h]”h ]”Œw”ah"]”h$]”h&]”uh1jhjˆh²hh³hÇh´K?ubhŒ desc_name”“”)”}”(hŒ v4l2_area”h]”hŒ desc_sig_name”“”)”}”(hj„h]”hŒ v4l2_area”…””}”(hj¶h²hh³Nh´Nubah}”(h]”h ]”Œn”ah"]”h$]”h&]”uh1j´hj°ubah}”(h]”h ]”(Œsig-name”Œdescname”eh"]”h$]”h&]”hÅhÆuh1j®hjˆh²hh³hÇh´K?ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆŒ add_permalink”ˆuh1j†Œsphinx_line_type”Œ declarator”hj‚h²hh³hÇh´K?ubah}”(h]”jyah ]”(Œsig”Œ sig-object”eh"]”h$]”h&]”Œ is_multiline”ˆŒ _toc_parts”)Œ _toc_name”huh1j€h³hÇh´K?hj}h²hubhŒ desc_content”“”)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jàhj}h²hh³hÇh´K?ubeh}”(h]”h ]”(j+Œtype”eh"]”h$]”h&]”Œdomain”j+Œobjtype”jîŒdesctype”jîŒnoindex”‰Œ noindexentry”‰Œnocontentsentry”‰uh1j{h²hhjh³Nh´NubhŒtable”“”)”}”(hhh]”(hÜ)”}”(hŒstruct v4l2_area”h]”hŒstruct v4l2_area”…””}”(hjýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛh³hÇh´KAhjúubhŒtgroup”“”)”}”(hhh]”(hŒcolspec”“”)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jhj ubj)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jhj ubj)”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jhj ubhŒtbody”“”)”}”(hhh]”(hŒrow”“”)”}”(hhh]”(hŒentry”“”)”}”(hhh]”hì)”}”(hŒ__u32”h]”hŒ__u32”…””}”(hj?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KFhj<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hj7ubj;)”}”(hhh]”hì)”}”(hŒ ``width``”h]”j))”}”(hjXh]”hŒwidth”…””}”(hjZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjVubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KGhjSubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hj7ubj;)”}”(hhh]”hì)”}”(hŒWidth of the area.”h]”hŒWidth of the area.”…””}”(hjvh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KHhjsubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hj7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j5hj2ubj6)”}”(hhh]”(j;)”}”(hhh]”hì)”}”(hŒ__u32”h]”hŒ__u32”…””}”(hj–h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KIhj“ubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hjubj;)”}”(hhh]”hì)”}”(hŒ ``height``”h]”j))”}”(hj¯h]”hŒheight”…””}”(hj±h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hj­ubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KJhjªubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hjubj;)”}”(hhh]”hì)”}”(hŒHeight of the area.”h]”hŒHeight of the area.”…””}”(hjÍh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KKhjÊubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j5hj2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j0hj ubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1j hjúubeh}”(h]”Œid1”ah ]”h"]”h$]”h&]”uh1jøhjh²hh³Nh´Nubj)”}”(hhh]”j)”}”(hX¢``V4L2_CID_NOTIFY_GAINS (integer array)`` The sensor is notified what gains will be applied to the different colour channels by subsequent processing (such as by an ISP). The sensor is merely informed of these values in case it performs processing that requires them, but it does not apply them itself to the output pixels. Currently it is defined only for Bayer sensors, and is an array control taking 4 gain values, being the gains for each of the Bayer channels. The gains are always in the order B, Gb, Gr and R, irrespective of the exact Bayer order of the sensor itself. The use of an array allows this control to be extended to sensors with, for example, non-Bayer CFAs (colour filter arrays). The units for the gain values are linear, with the default value representing a gain of exactly 1.0. For example, if this default value is reported as being (say) 128, then a value of 192 would represent a gain of exactly 1.5.”h]”(j#)”}”(hŒ)``V4L2_CID_NOTIFY_GAINS (integer array)``”h]”j))”}”(hjh]”hŒ%V4L2_CID_NOTIFY_GAINS (integer array)”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j(hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j"h³hÇh´K^hjþubj>)”}”(hhh]”(hì)”}”(hXThe sensor is notified what gains will be applied to the different colour channels by subsequent processing (such as by an ISP). The sensor is merely informed of these values in case it performs processing that requires them, but it does not apply them itself to the output pixels.”h]”hXThe sensor is notified what gains will be applied to the different colour channels by subsequent processing (such as by an ISP). The sensor is merely informed of these values in case it performs processing that requires them, but it does not apply them itself to the output pixels.”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KNhjubhì)”}”(hŒüCurrently it is defined only for Bayer sensors, and is an array control taking 4 gain values, being the gains for each of the Bayer channels. The gains are always in the order B, Gb, Gr and R, irrespective of the exact Bayer order of the sensor itself.”h]”hŒüCurrently it is defined only for Bayer sensors, and is an array control taking 4 gain values, being the gains for each of the Bayer channels. The gains are always in the order B, Gb, Gr and R, irrespective of the exact Bayer order of the sensor itself.”…””}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KThjubhì)”}”(hŒ{The use of an array allows this control to be extended to sensors with, for example, non-Bayer CFAs (colour filter arrays).”h]”hŒ{The use of an array allows this control to be extended to sensors with, for example, non-Bayer CFAs (colour filter arrays).”…””}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´KYhjubhì)”}”(hŒâThe units for the gain values are linear, with the default value representing a gain of exactly 1.0. For example, if this default value is reported as being (say) 128, then a value of 192 would represent a gain of exactly 1.5.”h]”hŒâThe units for the gain values are linear, with the default value representing a gain of exactly 1.0. For example, if this default value is reported as being (say) 128, then a value of 192 would represent a gain of exactly 1.5.”…””}”(hjFh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hëh³hÇh´K\hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j=hjþubeh}”(h]”h ]”h"]”h$]”h&]”uh1jh³hÇh´K^hjûubah}”(h]”h ]”h"]”h$]”h&]”uh1jhjh²hh³hÇh´Nubeh}”(h]”(Œimage-source-control-ids”jeh ]”h"]”(Œimage source control ids”Œimage-source-control-id”eh$]”h&]”uh1hÖhhØh²hh³hÇh´KŒexpect_referenced_by_name”}”jlhûsŒexpect_referenced_by_id”}”jhûsubeh}”(h]”(Œimage-source-control-reference”hÕeh ]”h"]”(Œimage source control reference”Œimage-source-controls”eh$]”h&]”uh1hÖhhh²hh³hÇh´Kjo}”jyhÊsjq}”hÕhÊsubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÇuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)”}”(hÛNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”j:Œfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”j Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÇŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”(hÕ]”hÊaj]”hûauŒnameids”}”(jyhÕjxjujljjkjhuŒ nametypes”}”(jyˆjx‰jlˆjk‰uh}”(hÕhØjuhØjjjhjjyj‚jöjúuŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”j®Ks…”R”Œparse_messages”]”Œtransform_messages”]”(hŒsystem_message”“”)”}”(hhh]”hì)”}”(hhh]”hŒ;Hyperlink target "image-source-controls" is not referenced.”…””}”hj sbah}”(h]”h ]”h"]”h$]”h&]”uh1hëhjubah}”(h]”h ]”h"]”h$]”h&]”Œlevel”KŒtype”ŒINFO”Œsource”hÇŒline”Kuh1jubj)”}”(hhh]”hì)”}”(hhh]”hŒ=Hyperlink target "image-source-control-id" is not referenced.”…””}”hj&sbah}”(h]”h ]”h"]”h$]”h&]”uh1hëhj#ubah}”(h]”h ]”h"]”h$]”h&]”Œlevel”KŒtype”j Œsource”hÇŒline”Kuh1jubeŒ transformer”NŒ include_log”]”Œ decoration”Nh²hub.