1sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget0/translations/zh_CN/userspace-api/media/glossarymodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget0/translations/zh_TW/userspace-api/media/glossarymodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget0/translations/it_IT/userspace-api/media/glossarymodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget0/translations/ja_JP/userspace-api/media/glossarymodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget0/translations/ko_KR/userspace-api/media/glossarymodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget0/translations/sp_SP/userspace-api/media/glossarymodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhcomment)}(hCSPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-laterh]hCSPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhhJ/var/lib/git/docbuild/linux/Documentation/userspace-api/media/glossary.rsthKubhsection)}(hhh](htitle)}(hGlossaryh]hGlossary}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubhnote)}(hThe goal of this section is to standardize the terms used within the media userspace API documentation. This is Work In Progress.h]h paragraph)}(hThe goal of this section is to standardize the terms used within the media userspace API documentation. This is Work In Progress.h]hThe goal of this section is to standardize the terms used within the media userspace API documentation. This is Work In Progress.}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hhubah}(h]h ]h"]h$]h&]uh1hhhhhhhhNubh)}(h6Please keep the glossary entries in alphabetical orderh]h6Please keep the glossary entries in alphabetical order}hhsbah}(h]h ]h"]h$]h&]hhuh1hhhhhhhhK ubhglossary)}(hhh]hdefinition_list)}(hhh](hdefinition_list_item)}(hhh](hterm)}(h Bridge Driverh](h Bridge Driver}(hjhhhNhNubhindex)}(hhh]h}(h]h ]h"]h$]h&]entries](single Bridge Driverterm-Bridge-DrivermainNtauh1j hhhKhjubeh}(h]jah ]h"]h$]h&]uh1jhhhKhhubh definition)}(hhh]h)}(hSA :term:`Device Driver` that implements the main logic to talk with media hardware.h](hA }(hj)hhhNhNubh)}(h:term:`Device Driver`h]hinline)}(hj3h]h Device Driver}(hj7hhhNhNubah}(h]h ](xrefstdstd-termeh"]h$]h&]uh1j5hj1ubah}(h]h ]h"]h$]h&]refdocuserspace-api/media/glossary refdomainjBreftypeterm refexplicitrefwarn reftarget Device Driveruh1hhhhKhj)ubh< that implements the main logic to talk with media hardware.}(hj)hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj&ubah}(h]h ]h"]h$]h&]uh1j$hhubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hCEC APIh](hCEC API}(hjohhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jCEC API term-CEC-APIjNtauh1j hhhKhjoubeh}(h]jah ]h"]h$]h&]uh1jhhhKhjlubj%)}(hhh](h)}(h$**Consumer Electronics Control API**h]hstrong)}(hjh]h Consumer Electronics Control API}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjubh)}(hGAn API designed to receive and transmit data via an HDMI CEC interface.h]hGAn API designed to receive and transmit data via an HDMI CEC interface.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubh)}(hSee :ref:`cec`.h](hSee }(hjhhhNhNubh)}(h :ref:`cec`h]j6)}(hjh]hcec}(hjhhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftyperef refexplicitrefwarnjTcecuh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubeh}(h]h ]h"]h$]h&]uh1j$hjlubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(h Data Unith](h Data Unit}(hjhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](j Data Unitterm-Data-UnitjNtauh1j hhhKhjubeh}(h]jah ]h"]h$]h&]uh1jhhhKhjubj%)}(hhh]h)}(hUnit of data transported by a bus. On parallel buses, the data unit consists of one or more related samples while on serial buses the data unit is logical. If the data unit is image data, it may also be called a pixel.h]hUnit of data transported by a bus. On parallel buses, the data unit consists of one or more related samples while on serial buses the data unit is logical. If the data unit is image data, it may also be called a pixel.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1j$hjubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(h Device Driverh](h Device Driver}(hj0hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](j Device Driverterm-Device-DriverjNtauh1j hhhK"hj0ubeh}(h]jCah ]h"]h$]h&]uh1jhhhK"hj-ubj%)}(hhh]h)}(hJPart of the Linux Kernel that implements support for a hardware component.h]hJPart of the Linux Kernel that implements support for a hardware component.}(hjNhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK$hjKubah}(h]h ]h"]h$]h&]uh1j$hj-ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(h Device Nodeh](h Device Node}(hjkhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](j Device Nodeterm-Device-NodejNtauh1j hhhK&hjkubeh}(h]j~ah ]h"]h$]h&]uh1jhhhK&hjhubj%)}(hhh]h)}(hkA character device node in the file system used to control and transfer data in and out of a Kernel driver.h]hkA character device node in the file system used to control and transfer data in and out of a Kernel driver.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK(hjubah}(h]h ]h"]h$]h&]uh1j$hjhubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hDigital TV APIh](hDigital TV API}(hjhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jDigital TV APIterm-Digital-TV-APIjNtauh1j hhhK*hjubeh}(h]jah ]h"]h$]h&]uh1jhhhK*hjubj%)}(hhh](h)}(h**Previously known as DVB API**h]j)}(hjh]hPreviously known as DVB API}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhK,hjubh)}(hzAn API designed to control a subset of the :term:`Media Hardware` that implements digital TV (e. g. DVB, ATSC, ISDB, etc).h](h+An API designed to control a subset of the }(hjhhhNhNubh)}(h:term:`Media Hardware`h]j6)}(hjh]hMedia Hardware}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTMedia Hardwareuh1hhhhK.hjubh9 that implements digital TV (e. g. DVB, ATSC, ISDB, etc).}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK.hjubh)}(hSee :ref:`dvbapi`.h](hSee }(hj hhhNhNubh)}(h :ref:`dvbapi`h]j6)}(hjh]hdvbapi}(hjhhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainj#reftyperef refexplicitrefwarnjTdvbapiuh1hhhhK1hj ubh.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK1hjubeh}(h]h ]h"]h$]h&]uh1j$hjubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hDSPh](hDSP}(hjNhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jDSPterm-DSPjNtauh1j hhhK2hjNubeh}(h]jaah ]h"]h$]h&]uh1jhhhK2hjKubj%)}(hhh](h)}(h**Digital Signal Processor**h]j)}(hjnh]hDigital Signal Processor}(hjphhhNhNubah}(h]h ]h"]h$]h&]uh1jhjlubah}(h]h ]h"]h$]h&]uh1hhhhK4hjiubh)}(h}A specialized :term:`Microprocessor`, with its architecture optimized for the operational needs of digital signal processing.h](hA specialized }(hjhhhNhNubh)}(h:term:`Microprocessor`h]j6)}(hjh]hMicroprocessor}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTMicroprocessoruh1hhhhK6hjubhY, with its architecture optimized for the operational needs of digital signal processing.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK6hjiubeh}(h]h ]h"]h$]h&]uh1j$hjKubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hFPGAh](hFPGA}(hjhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jFPGA term-FPGAjNtauh1j hhhK8hjubeh}(h]jah ]h"]h$]h&]uh1jhhhK8hjubj%)}(hhh](h)}(h!**Field-programmable Gate Array**h]j)}(hjh]hField-programmable Gate Array}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhK:hjubh)}(h`An :term:`IC` circuit designed to be configured by a customer or a designer after manufacturing.h](hAn }(hjhhhNhNubh)}(h :term:`IC`h]j6)}(hjh]hIC}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTICuh1hhhhK` that together make a larger user-facing functional peripheral. For instance, the :term:`SoC` :term:`ISP` :term:`IP Block` and the external camera sensors together make a camera hardware peripheral.h](h A group of }(hjhhhNhNubh)}(h0:term:`hardware components `h]j6)}(hjh]hhardware components}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTHardware Componentuh1hhhhKGhjubhR that together make a larger user-facing functional peripheral. For instance, the }(hjhhhNhNubh)}(h :term:`SoC`h]j6)}(hjh]hSoC}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTSoCuh1hhhhKGhjubh }(hjhhhNhNubh)}(h :term:`ISP`h]j6)}(hjh]hISP}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTISPuh1hhhhKGhjubh }hjsbh)}(h:term:`IP Block`h]j6)}(hjh]hIP Block}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTIP Blockuh1hhhhKGhjubhL and the external camera sensors together make a camera hardware peripheral.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKGhjubh)}(h!Also known as :term:`Peripheral`.h](hAlso known as }(hj,hhhNhNubh)}(h:term:`Peripheral`h]j6)}(hj6h]h Peripheral}(hj8hhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hj4ubah}(h]h ]h"]h$]h&]refdocjN refdomainjBreftypeterm refexplicitrefwarnjT Peripheraluh1hhhhKMhj,ubh.}(hj,hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKMhjubeh}(h]h ]h"]h$]h&]uh1j$hjmubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hI²Ch](hI²C}(hjmhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jI²Cterm-I2CjNtauh1j hhhKNhjmubeh}(h]jah ]h"]h$]h&]uh1jhhhKNhjjubj%)}(hhh](h)}(h**Inter-Integrated Circuit**h]j)}(hjh]hInter-Integrated Circuit}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKPhjubh)}(hA multi-master, multi-slave, packet switched, single-ended, serial computer bus used to control some hardware components like sub-device hardware components.h]hA multi-master, multi-slave, packet switched, single-ended, serial computer bus used to control some hardware components like sub-device hardware components.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKRhjubh)}(h6See http://www.nxp.com/docs/en/user-guide/UM10204.pdf.h](hSee }(hjhhhNhNubj4)}(h1http://www.nxp.com/docs/en/user-guide/UM10204.pdfh]h1http://www.nxp.com/docs/en/user-guide/UM10204.pdf}(hjhhhNhNubah}(h]h ]h"]h$]h&]refurijuh1j3hjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKVhjubeh}(h]h ]h"]h$]h&]uh1j$hjjubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hICh](hIC}(hjhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jICterm-ICjNtauh1j hhhKWhjubeh}(h]jah ]h"]h$]h&]uh1jhhhKWhjubj%)}(hhh](h)}(h**Integrated circuit**h]j)}(hjh]hIntegrated circuit}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKYhjubh)}(haA set of electronic circuits on one small flat piece of semiconductor material, normally silicon.h]haA set of electronic circuits on one small flat piece of semiconductor material, normally silicon.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK[hjubh)}(hAlso known as chip.h]hAlso known as chip.}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK^hjubeh}(h]h ]h"]h$]h&]uh1j$hjubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hIP Blockh](hIP Block}(hj@hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jIP Block term-IP-BlockjNtauh1j hhhK_hj@ubeh}(h]jSah ]h"]h$]h&]uh1jhhhK_hj=ubj%)}(hhh](h)}(h**Intellectual property core**h]j)}(hj`h]hIntellectual property core}(hjbhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj^ubah}(h]h ]h"]h$]h&]uh1hhhhKahj[ubh)}(hXIn electronic design a semiconductor intellectual property core, is a reusable unit of logic, cell, or integrated circuit layout design that is the intellectual property of one party. IP Blocks may be licensed to another party or can be owned and used by a single party alone.h]hXIn electronic design a semiconductor intellectual property core, is a reusable unit of logic, cell, or integrated circuit layout design that is the intellectual property of one party. IP Blocks may be licensed to another party or can be owned and used by a single party alone.}(hjuhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKchj[ubh)}(hLSee https://en.wikipedia.org/wiki/Semiconductor_intellectual_property_core).h](hSee }(hjhhhNhNubj4)}(hFhttps://en.wikipedia.org/wiki/Semiconductor_intellectual_property_coreh]hFhttps://en.wikipedia.org/wiki/Semiconductor_intellectual_property_core}(hjhhhNhNubah}(h]h ]h"]h$]h&]refurijuh1j3hjubh).}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKihj[ubeh}(h]h ]h"]h$]h&]uh1j$hj=ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hISPh](hISP}(hjhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jISPterm-ISPjNtauh1j hhhKjhjubeh}(h]jah ]h"]h$]h&]uh1jhhhKjhjubj%)}(hhh](h)}(h**Image Signal Processor**h]j)}(hjh]hImage Signal Processor}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKlhjubh)}(hX:A specialized processor that implements a set of algorithms for processing image data. ISPs may implement algorithms for lens shading correction, demosaicing, scaling and pixel format conversion as well as produce statistics for the use of the control algorithms (e.g. automatic exposure, white balance and focus).h]hX:A specialized processor that implements a set of algorithms for processing image data. ISPs may implement algorithms for lens shading correction, demosaicing, scaling and pixel format conversion as well as produce statistics for the use of the control algorithms (e.g. automatic exposure, white balance and focus).}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKnhjubeh}(h]h ]h"]h$]h&]uh1j$hjubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(h Media APIh](h Media API}(hjhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](j Media APIterm-Media-APIjNtauh1j hhhKshjubeh}(h]jah ]h"]h$]h&]uh1jhhhKshjubj%)}(hhh](h)}(hNA set of userspace APIs used to control the media hardware. It is composed by:h]hNA set of userspace APIs used to control the media hardware. It is composed by:}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKuhj ubh block_quote)}(hi- :term:`CEC API`; - :term:`Digital TV API`; - :term:`MC API`; - :term:`RC API`; and - :term:`V4L2 API`. h]h bullet_list)}(hhh](h list_item)}(h:term:`CEC API`;h]h)}(hj@h](h)}(h:term:`CEC API`h]j6)}(hjGh]hCEC API}(hjIhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjEubah}(h]h ]h"]h$]h&]refdocjN refdomainjSreftypeterm refexplicitrefwarnjTCEC APIuh1hhhhKxhjBubh;}(hjBhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKxhj>ubah}(h]h ]h"]h$]h&]uh1j<hj9ubj=)}(h:term:`Digital TV API`;h]h)}(hjwh](h)}(h:term:`Digital TV API`h]j6)}(hj~h]hDigital TV API}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hj|ubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTDigital TV APIuh1hhhhKyhjyubh;}(hjyhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKyhjuubah}(h]h ]h"]h$]h&]uh1j<hj9ubj=)}(h:term:`MC API`;h]h)}(hjh](h)}(h:term:`MC API`h]j6)}(hjh]hMC API}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTMC APIuh1hhhhKzhjubh;}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKzhjubah}(h]h ]h"]h$]h&]uh1j<hj9ubj=)}(h:term:`RC API`; andh]h)}(hjh](h)}(h:term:`RC API`h]j6)}(hjh]hRC API}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTRC APIuh1hhhhK{hjubh; and}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK{hjubah}(h]h ]h"]h$]h&]uh1j<hj9ubj=)}(h:term:`V4L2 API`. h]h)}(h:term:`V4L2 API`.h](h)}(h:term:`V4L2 API`h]j6)}(hj$ h]hV4L2 API}(hj& hhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hj" ubah}(h]h ]h"]h$]h&]refdocjN refdomainj0 reftypeterm refexplicitrefwarnjTV4L2 APIuh1hhhhK|hj ubh.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK|hj ubah}(h]h ]h"]h$]h&]uh1j<hj9ubeh}(h]h ]h"]h$]h&]bullet-uh1j7hhhKxhj3ubah}(h]h ]h"]h$]h&]uh1j1hhhKxhj ubh)}(h0See Documentation/userspace-api/media/index.rst.h]h0See Documentation/userspace-api/media/index.rst.}(hj` hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK~hj ubeh}(h]h ]h"]h$]h&]uh1j$hjubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hMC APIh](hMC API}(hj} hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jMC API term-MC-APIjNtauh1j hhhKhj} ubeh}(h]j ah ]h"]h$]h&]uh1jhhhKhjz ubj%)}(hhh](h)}(h**Media Controller API**h]j)}(hj h]hMedia Controller API}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hcAn API designed to expose and control the relationships between multimedia devices and sub-devices.h]hcAn API designed to expose and control the relationships between multimedia devices and sub-devices.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hSee :ref:`media_controller`.h](hSee }(hj hhhNhNubh)}(h:ref:`media_controller`h]j6)}(hj h]hmedia_controller}(hj hhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hj ubah}(h]h ]h"]h$]h&]refdocjN refdomainj reftyperef refexplicitrefwarnjTmedia_controlleruh1hhhhKhj ubh.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubeh}(h]h ]h"]h$]h&]uh1j$hjz ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(h MC-centrich](h MC-centric}(hj hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](j MC-centricterm-MC-centricjNtauh1j hhhKhj ubeh}(h]j ah ]h"]h$]h&]uh1jhhhKhj ubj%)}(hhh](h)}(hA:term:`V4L2 Hardware` device driver that requires :term:`MC API`.h](h)}(h:term:`V4L2 Hardware`h]j6)}(hj% h]h V4L2 Hardware}(hj' hhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hj# ubah}(h]h ]h"]h$]h&]refdocjN refdomainj1 reftypeterm refexplicitrefwarnjT V4L2 Hardwareuh1hhhhKhj ubh device driver that requires }(hj hhhNhNubh)}(h:term:`MC API`h]j6)}(hjI h]hMC API}(hjK hhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjG ubah}(h]h ]h"]h$]h&]refdocjN refdomainjU reftypeterm refexplicitrefwarnjTMC APIuh1hhhhKhj ubh.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hXSuch drivers have ``V4L2_CAP_IO_MC`` device_caps field set (see :ref:`VIDIOC_QUERYCAP`).h](hSuch drivers have }(hjq hhhNhNubhliteral)}(h``V4L2_CAP_IO_MC``h]hV4L2_CAP_IO_MC}(hj{ hhhNhNubah}(h]h ]h"]h$]h&]uh1jy hjq ubh device_caps field set (see }(hjq hhhNhNubh)}(h:ref:`VIDIOC_QUERYCAP`h]j6)}(hj h]hVIDIOC_QUERYCAP}(hj hhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hj ubah}(h]h ]h"]h$]h&]refdocjN refdomainj reftyperef refexplicitrefwarnjTvidioc_querycapuh1hhhhKhjq ubh).}(hjq hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(h2See :ref:`v4l2_hardware_control` for more details.h](hSee }(hj hhhNhNubh)}(h:ref:`v4l2_hardware_control`h]j6)}(hj h]hv4l2_hardware_control}(hj hhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hj ubah}(h]h ]h"]h$]h&]refdocjN refdomainj reftyperef refexplicitrefwarnjTv4l2_hardware_controluh1hhhhKhj ubh for more details.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubeh}(h]h ]h"]h$]h&]uh1j$hj ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hMedia Hardwareh](hMedia Hardware}(hj hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jMedia Hardwareterm-Media-HardwarejNtauh1j hhhKhj ubeh}(h]j ah ]h"]h$]h&]uh1jhhhKhj ubj%)}(hhh](h)}(h@Subset of the hardware that is supported by the Linux Media API.h]h@Subset of the hardware that is supported by the Linux Media API.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hThis includes audio and video capture and playback hardware, digital and analog TV, camera sensors, ISPs, remote controllers, codecs, HDMI Consumer Electronics Control, HDMI capture, etc.h]hThis includes audio and video capture and playback hardware, digital and analog TV, camera sensors, ISPs, remote controllers, codecs, HDMI Consumer Electronics Control, HDMI capture, etc.}(hj$ hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubeh}(h]h ]h"]h$]h&]uh1j$hj ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hMicroprocessorh](hMicroprocessor}(hjA hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jMicroprocessorterm-MicroprocessorjNtauh1j hhhKhjA ubeh}(h]jT ah ]h"]h$]h&]uh1jhhhKhj> ubj%)}(hhh]h)}(hElectronic circuitry that carries out the instructions of a computer program by performing the basic arithmetic, logical, control and input/output (I/O) operations specified by the instructions on a single integrated circuit.h]hElectronic circuitry that carries out the instructions of a computer program by performing the basic arithmetic, logical, control and input/output (I/O) operations specified by the instructions on a single integrated circuit.}(hj_ hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj\ ubah}(h]h ]h"]h$]h&]uh1j$hj> ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(h Peripheralh](h Peripheral}(hj| hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](j Peripheralterm-PeripheraljNtauh1j hhhKhj| ubeh}(h]j ah ]h"]h$]h&]uh1jhhhKhjy ubj%)}(hhh]h)}(h(The same as :term:`Hardware Peripheral`.h](h The same as }(hj hhhNhNubh)}(h:term:`Hardware Peripheral`h]j6)}(hj h]hHardware Peripheral}(hj hhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hj ubah}(h]h ]h"]h$]h&]refdocjN refdomainj reftypeterm refexplicitrefwarnjTHardware Peripheraluh1hhhhKhj ubh.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubah}(h]h ]h"]h$]h&]uh1j$hjy ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hRC APIh](hRC API}(hj hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jRC API term-RC-APIjNtauh1j hhhKhj ubeh}(h]j ah ]h"]h$]h&]uh1jhhhKhj ubj%)}(hhh](h)}(h**Remote Controller API**h]j)}(hj h]hRemote Controller API}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hEAn API designed to receive and transmit data from remote controllers.h]hEAn API designed to receive and transmit data from remote controllers.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hSee :ref:`remote_controllers`.h](hSee }(hj hhhNhNubh)}(h:ref:`remote_controllers`h]j6)}(hj( h]hremote_controllers}(hj* hhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hj& ubah}(h]h ]h"]h$]h&]refdocjN refdomainj4 reftyperef refexplicitrefwarnjTremote_controllersuh1hhhhKhj ubh.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubeh}(h]h ]h"]h$]h&]uh1j$hj ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hSMBush](hSMBus}(hj_ hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jSMBus term-SMBusjNtauh1j hhhKhj_ ubeh}(h]jr ah ]h"]h$]h&]uh1jhhhKhj\ ubj%)}(hhh]h)}(h hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jStream term-StreamjNtauh1j hhhKhj> ubeh}(h]jQ ah ]h"]h$]h&]uh1jhhhKhj; ubj%)}(hhh]h)}(hA distinct flow of data (image data or metadata) from an initial source to a final sink. The initial source may be e.g. an image sensor and the final sink e.g. a memory buffer.h]hA distinct flow of data (image data or metadata) from an initial source to a final sink. The initial source may be e.g. an image sensor and the final sink e.g. a memory buffer.}(hj\ hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjY ubah}(h]h ]h"]h$]h&]uh1j$hj; ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hV4L2 APIh](hV4L2 API}(hjy hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jV4L2 API term-V4L2-APIjNtauh1j hhhKhjy ubeh}(h]j ah ]h"]h$]h&]uh1jhhhKhjv ubj%)}(hhh](h)}(h**V4L2 userspace API**h]j)}(hj h]hV4L2 userspace API}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hWThe userspace API defined in :ref:`v4l2spec`, which is used to control a V4L2 hardware.h](hThe userspace API defined in }(hj hhhNhNubh)}(h:ref:`v4l2spec`h]j6)}(hj h]hv4l2spec}(hj hhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hj ubah}(h]h ]h"]h$]h&]refdocjN refdomainj reftyperef refexplicitrefwarnjTv4l2specuh1hhhhKhj ubh+, which is used to control a V4L2 hardware.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubeh}(h]h ]h"]h$]h&]uh1j$hjv ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hV4L2 Device Nodeh](hV4L2 Device Node}(hj hhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jV4L2 Device Nodeterm-V4L2-Device-NodejNtauh1j hhhKhj ubeh}(h]jah ]h"]h$]h&]uh1jhhhKhj ubj%)}(hhh](h)}(h9A :term:`Device Node` that is associated to a V4L driver.h](hA }(hj hhhNhNubh)}(h:term:`Device Node`h]j6)}(hjh]h Device Node}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainj#reftypeterm refexplicitrefwarnjT Device Nodeuh1hhhhKhj ubh$ that is associated to a V4L driver.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubh)}(hFThe V4L2 device node naming is specified at :ref:`v4l2_device_naming`.h](h,The V4L2 device node naming is specified at }(hj?hhhNhNubh)}(h:ref:`v4l2_device_naming`h]j6)}(hjIh]hv4l2_device_naming}(hjKhhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hjGubah}(h]h ]h"]h$]h&]refdocjN refdomainjUreftyperef refexplicitrefwarnjTv4l2_device_naminguh1hhhhKhj?ubh.}(hj?hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj ubeh}(h]h ]h"]h$]h&]uh1j$hj ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(h V4L2 Hardwareh](h V4L2 Hardware}(hjhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](j V4L2 Hardwareterm-V4L2-HardwarejNtauh1j hhhKhjubeh}(h]jah ]h"]h$]h&]uh1jhhhKhj}ubj%)}(hhh]h)}(hFPart of the media hardware which is supported by the :term:`V4L2 API`.h](h5Part of the media hardware which is supported by the }(hjhhhNhNubh)}(h:term:`V4L2 API`h]j6)}(hjh]hV4L2 API}(hjhhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTV4L2 APIuh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1j$hj}ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hV4L2 Sub-deviceh](hV4L2 Sub-device}(hjhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jV4L2 Sub-deviceterm-V4L2-Sub-devicejNtauh1j hhhKhjubeh}(h]jah ]h"]h$]h&]uh1jhhhKhjubj%)}(hhh]h)}(h^V4L2 hardware components that aren't controlled by a :term:`Bridge Driver`. See :ref:`subdev`.h](h7V4L2 hardware components that aren’t controlled by a }(hjhhhNhNubh)}(h:term:`Bridge Driver`h]j6)}(hjh]h Bridge Driver}(hj hhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjT Bridge Driveruh1hhhhKhjubh. See }(hjhhhNhNubh)}(h :ref:`subdev`h]j6)}(hj+h]hsubdev}(hj-hhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hj)ubah}(h]h ]h"]h$]h&]refdocjN refdomainj7reftyperef refexplicitrefwarnjTsubdevuh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1j$hjubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hVideo-node-centrich](hVideo-node-centric}(hjbhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jVideo-node-centricterm-Video-node-centricjNtauh1j hhhKhjbubeh}(h]juah ]h"]h$]h&]uh1jhhhKhj_ubj%)}(hhh](h)}(hFV4L2 device driver that doesn't require a media controller to be used.h]hHV4L2 device driver that doesn’t require a media controller to be used.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj}ubh)}(h^Such drivers have the ``V4L2_CAP_IO_MC`` device_caps field unset (see :ref:`VIDIOC_QUERYCAP`).h](hSuch drivers have the }(hjhhhNhNubjz )}(h``V4L2_CAP_IO_MC``h]hV4L2_CAP_IO_MC}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jy hjubh device_caps field unset (see }(hjhhhNhNubh)}(h:ref:`VIDIOC_QUERYCAP`h]j6)}(hjh]hVIDIOC_QUERYCAP}(hjhhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftyperef refexplicitrefwarnjTvidioc_querycapuh1hhhhKhjubh).}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj}ubeh}(h]h ]h"]h$]h&]uh1j$hj_ubeh}(h]h ]h"]h$]h&]uh1hhhubh)}(hhh](j)}(hV4L2 Sub-device APIh](hV4L2 Sub-device API}(hjhhhNhNubj )}(hhh]h}(h]h ]h"]h$]h&]j](jV4L2 Sub-device APIterm-V4L2-Sub-device-APIjNtauh1j hhhKhjubeh}(h]jah ]h"]h$]h&]uh1jhhhKhjubj%)}(hhh](h)}(hPart of the :term:`V4L2 API` which control :term:`V4L2 sub-devices `, like sensors, HDMI receivers, scalers, deinterlacers.h](h Part of the }(hjhhhNhNubh)}(h:term:`V4L2 API`h]j6)}(hj h]hV4L2 API}(hj hhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hjubah}(h]h ]h"]h$]h&]refdocjN refdomainjreftypeterm refexplicitrefwarnjTV4L2 APIuh1hhhhKhjubh which control }(hjhhhNhNubh)}(h*:term:`V4L2 sub-devices `h]j6)}(hj-h]hV4L2 sub-devices}(hj/hhhNhNubah}(h]h ](jAstdstd-termeh"]h$]h&]uh1j5hj+ubah}(h]h ]h"]h$]h&]refdocjN refdomainj9reftypeterm refexplicitrefwarnjTV4L2 Sub-deviceuh1hhhhKhjubh7, like sensors, HDMI receivers, scalers, deinterlacers.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubh)}(h2See :ref:`v4l2_hardware_control` for more details.h](hSee }(hjUhhhNhNubh)}(h:ref:`v4l2_hardware_control`h]j6)}(hj_h]hv4l2_hardware_control}(hjahhhNhNubah}(h]h ](jAstdstd-refeh"]h$]h&]uh1j5hj]ubah}(h]h ]h"]h$]h&]refdocjN refdomainjkreftyperef refexplicitrefwarnjTv4l2_hardware_controluh1hhhhKhjUubh for more details.}(hjUhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubeh}(h]h ]h"]h$]h&]uh1j$hjubeh}(h]h ]h"]h$]h&]uh1hhhubeh}(h]h ]hah"]h$]h&]uh1hhhhhhhhNubah}(h]h ]h"]h$]h&]sorteduh1hhhhhhhhNubeh}(h]glossaryah ]h"]glossaryah$]h&]uh1hhhhhhhhKubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerjerror_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}nameids}jjs nametypes}jsh}(jhjjjjojjjCj0j~jkjjjajNjjjpj]jjpjjmjjjSj@jjjjj j} j j j j jT jA j j| j j jr j_ j j j j jQ j> j jy jj jjjjjujbjju footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN include_log] decorationNhhub.