1 .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1. 1 .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later 2 2 3 ======== 3 ======== 4 Glossary 4 Glossary 5 ======== 5 ======== 6 6 7 .. note:: 7 .. note:: 8 8 9 The goal of this section is to standardize 9 The goal of this section is to standardize the terms used within the media 10 userspace API documentation. This is Work I 10 userspace API documentation. This is Work In Progress. 11 11 12 .. Please keep the glossary entries in alphabe 12 .. Please keep the glossary entries in alphabetical order 13 13 14 .. glossary:: 14 .. glossary:: 15 15 16 Bridge Driver 16 Bridge Driver 17 A :term:`Device Driver` that implement 17 A :term:`Device Driver` that implements the main logic to talk with 18 media hardware. 18 media hardware. 19 19 20 CEC API 20 CEC API 21 **Consumer Electronics Control API** 21 **Consumer Electronics Control API** 22 22 23 An API designed to receive and transmi 23 An API designed to receive and transmit data via an HDMI 24 CEC interface. 24 CEC interface. 25 25 26 See :ref:`cec`. 26 See :ref:`cec`. 27 27 28 Data Unit << 29 << 30 Unit of data transported by a bus. On << 31 consists of one or more related sample << 32 unit is logical. If the data unit is i << 33 pixel. << 34 << 35 Device Driver 28 Device Driver 36 Part of the Linux Kernel that implemen 29 Part of the Linux Kernel that implements support for a hardware 37 component. 30 component. 38 31 39 Device Node 32 Device Node 40 A character device node in the file sy 33 A character device node in the file system used to control and 41 transfer data in and out of a Kernel d 34 transfer data in and out of a Kernel driver. 42 35 43 Digital TV API 36 Digital TV API 44 **Previously known as DVB API** 37 **Previously known as DVB API** 45 38 46 An API designed to control a subset of 39 An API designed to control a subset of the :term:`Media Hardware` 47 that implements digital TV (e. g. DVB, 40 that implements digital TV (e. g. DVB, ATSC, ISDB, etc). 48 41 49 See :ref:`dvbapi`. 42 See :ref:`dvbapi`. 50 43 51 DSP 44 DSP 52 **Digital Signal Processor** 45 **Digital Signal Processor** 53 46 54 A specialized :term:`Microprocessor`, 47 A specialized :term:`Microprocessor`, with its architecture 55 optimized for the operational needs of 48 optimized for the operational needs of digital signal processing. 56 49 57 FPGA 50 FPGA 58 **Field-programmable Gate Array** 51 **Field-programmable Gate Array** 59 52 60 An :term:`IC` circuit designed to be c 53 An :term:`IC` circuit designed to be configured by a customer or 61 a designer after manufacturing. 54 a designer after manufacturing. 62 55 63 See https://en.wikipedia.org/wiki/Fiel 56 See https://en.wikipedia.org/wiki/Field-programmable_gate_array. 64 57 65 Hardware Component 58 Hardware Component 66 A subset of the :term:`Media Hardware` 59 A subset of the :term:`Media Hardware`. For example an :term:`I²C` or 67 :term:`SPI` device, or an :term:`IP Bl 60 :term:`SPI` device, or an :term:`IP Block` inside an 68 :term:`SoC` or :term:`FPGA`. 61 :term:`SoC` or :term:`FPGA`. 69 62 70 Hardware Peripheral 63 Hardware Peripheral 71 A group of :term:`hardware components 64 A group of :term:`hardware components <Hardware Component>` that 72 together make a larger user-facing fun 65 together make a larger user-facing functional peripheral. For 73 instance, the :term:`SoC` :term:`ISP` 66 instance, the :term:`SoC` :term:`ISP` :term:`IP Block` 74 and the external camera sensors togeth 67 and the external camera sensors together make a camera hardware 75 peripheral. 68 peripheral. 76 69 77 Also known as :term:`Peripheral`. 70 Also known as :term:`Peripheral`. 78 71 79 I²C 72 I²C 80 **Inter-Integrated Circuit** 73 **Inter-Integrated Circuit** 81 74 82 A multi-master, multi-slave, packet s 75 A multi-master, multi-slave, packet switched, single-ended, 83 serial computer bus used to control so 76 serial computer bus used to control some hardware components 84 like sub-device hardware components. 77 like sub-device hardware components. 85 78 86 See http://www.nxp.com/docs/en/user-gu 79 See http://www.nxp.com/docs/en/user-guide/UM10204.pdf. 87 80 88 IC 81 IC 89 **Integrated circuit** 82 **Integrated circuit** 90 83 91 A set of electronic circuits on one sm 84 A set of electronic circuits on one small flat piece of 92 semiconductor material, normally silic 85 semiconductor material, normally silicon. 93 86 94 Also known as chip. 87 Also known as chip. 95 88 96 IP Block 89 IP Block 97 **Intellectual property core** 90 **Intellectual property core** 98 91 99 In electronic design a semiconductor i 92 In electronic design a semiconductor intellectual property core, 100 is a reusable unit of logic, cell, or 93 is a reusable unit of logic, cell, or integrated circuit layout 101 design that is the intellectual proper 94 design that is the intellectual property of one party. 102 IP Blocks may be licensed to another p 95 IP Blocks may be licensed to another party or can be owned 103 and used by a single party alone. 96 and used by a single party alone. 104 97 105 See https://en.wikipedia.org/wiki/Semi 98 See https://en.wikipedia.org/wiki/Semiconductor_intellectual_property_core). 106 99 107 ISP 100 ISP 108 **Image Signal Processor** 101 **Image Signal Processor** 109 102 110 A specialized processor that implement 103 A specialized processor that implements a set of algorithms for 111 processing image data. ISPs may implem 104 processing image data. ISPs may implement algorithms for lens 112 shading correction, demosaicing, scali 105 shading correction, demosaicing, scaling and pixel format conversion 113 as well as produce statistics for the 106 as well as produce statistics for the use of the control 114 algorithms (e.g. automatic exposure, w 107 algorithms (e.g. automatic exposure, white balance and focus). 115 108 116 Media API 109 Media API 117 A set of userspace APIs used to contro 110 A set of userspace APIs used to control the media hardware. It is 118 composed by: 111 composed by: 119 112 120 - :term:`CEC API`; 113 - :term:`CEC API`; 121 - :term:`Digital TV API`; 114 - :term:`Digital TV API`; 122 - :term:`MC API`; 115 - :term:`MC API`; 123 - :term:`RC API`; and 116 - :term:`RC API`; and 124 - :term:`V4L2 API`. 117 - :term:`V4L2 API`. 125 118 126 See Documentation/userspace-api/media/ 119 See Documentation/userspace-api/media/index.rst. 127 120 128 MC API 121 MC API 129 **Media Controller API** 122 **Media Controller API** 130 123 131 An API designed to expose and control 124 An API designed to expose and control the relationships between 132 multimedia devices and sub-devices. 125 multimedia devices and sub-devices. 133 126 134 See :ref:`media_controller`. 127 See :ref:`media_controller`. 135 128 136 MC-centric 129 MC-centric 137 :term:`V4L2 Hardware` device driver th 130 :term:`V4L2 Hardware` device driver that requires :term:`MC API`. 138 131 139 Such drivers have ``V4L2_CAP_IO_MC`` d 132 Such drivers have ``V4L2_CAP_IO_MC`` device_caps field set 140 (see :ref:`VIDIOC_QUERYCAP`). 133 (see :ref:`VIDIOC_QUERYCAP`). 141 134 142 See :ref:`v4l2_hardware_control` for m 135 See :ref:`v4l2_hardware_control` for more details. 143 136 144 Media Hardware 137 Media Hardware 145 Subset of the hardware that is support 138 Subset of the hardware that is supported by the Linux Media API. 146 139 147 This includes audio and video capture 140 This includes audio and video capture and playback hardware, 148 digital and analog TV, camera sensors, 141 digital and analog TV, camera sensors, ISPs, remote controllers, 149 codecs, HDMI Consumer Electronics Cont 142 codecs, HDMI Consumer Electronics Control, HDMI capture, etc. 150 143 151 Microprocessor 144 Microprocessor 152 Electronic circuitry that carries out 145 Electronic circuitry that carries out the instructions of a 153 computer program by performing the bas 146 computer program by performing the basic arithmetic, logical, 154 control and input/output (I/O) operati 147 control and input/output (I/O) operations specified by the 155 instructions on a single integrated ci 148 instructions on a single integrated circuit. 156 149 157 Peripheral 150 Peripheral 158 The same as :term:`Hardware Peripheral 151 The same as :term:`Hardware Peripheral`. 159 152 160 RC API 153 RC API 161 **Remote Controller API** 154 **Remote Controller API** 162 155 163 An API designed to receive and transmi 156 An API designed to receive and transmit data from remote 164 controllers. 157 controllers. 165 158 166 See :ref:`remote_controllers`. 159 See :ref:`remote_controllers`. 167 160 168 SMBus 161 SMBus 169 A subset of I²C, which defines a stri 162 A subset of I²C, which defines a stricter usage of the bus. 170 163 171 SPI 164 SPI 172 **Serial Peripheral Interface Bus** 165 **Serial Peripheral Interface Bus** 173 166 174 Synchronous serial communication inter 167 Synchronous serial communication interface specification used for 175 short distance communication, primaril 168 short distance communication, primarily in embedded systems. 176 169 177 SoC 170 SoC 178 **System on a Chip** 171 **System on a Chip** 179 172 180 An integrated circuit that integrates 173 An integrated circuit that integrates all components of a computer 181 or other electronic systems. 174 or other electronic systems. 182 << 183 Stream << 184 A distinct flow of data (image data or << 185 to a final sink. The initial source ma << 186 final sink e.g. a memory buffer. << 187 175 188 V4L2 API 176 V4L2 API 189 **V4L2 userspace API** 177 **V4L2 userspace API** 190 178 191 The userspace API defined in :ref:`v4l 179 The userspace API defined in :ref:`v4l2spec`, which is used to 192 control a V4L2 hardware. 180 control a V4L2 hardware. 193 181 194 V4L2 Device Node 182 V4L2 Device Node 195 A :term:`Device Node` that is associat 183 A :term:`Device Node` that is associated to a V4L driver. 196 184 197 The V4L2 device node naming is specifi 185 The V4L2 device node naming is specified at :ref:`v4l2_device_naming`. 198 186 199 V4L2 Hardware 187 V4L2 Hardware 200 Part of the media hardware which is su 188 Part of the media hardware which is supported by the :term:`V4L2 API`. 201 189 202 V4L2 Sub-device 190 V4L2 Sub-device 203 V4L2 hardware components that aren't c 191 V4L2 hardware components that aren't controlled by a 204 :term:`Bridge Driver`. See :ref:`subde 192 :term:`Bridge Driver`. See :ref:`subdev`. 205 193 206 Video-node-centric 194 Video-node-centric 207 V4L2 device driver that doesn't requir 195 V4L2 device driver that doesn't require a media controller to be used. 208 196 209 Such drivers have the ``V4L2_CAP_IO_MC 197 Such drivers have the ``V4L2_CAP_IO_MC`` device_caps field unset 210 (see :ref:`VIDIOC_QUERYCAP`). 198 (see :ref:`VIDIOC_QUERYCAP`). 211 199 212 V4L2 Sub-device API 200 V4L2 Sub-device API 213 Part of the :term:`V4L2 API` which con 201 Part of the :term:`V4L2 API` which control 214 :term:`V4L2 sub-devices <V4L2 Sub-devi 202 :term:`V4L2 sub-devices <V4L2 Sub-device>`, like sensors, 215 HDMI receivers, scalers, deinterlacers 203 HDMI receivers, scalers, deinterlacers. 216 204 217 See :ref:`v4l2_hardware_control` for m 205 See :ref:`v4l2_hardware_control` for more details.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.