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