| .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later | |
| ======== | |
| Glossary | |
| ======== | |
| .. note:: | |
| The goal of this section is to standardize the terms used within the media | |
| userspace API documentation. This is Work In Progress. | |
| .. Please keep the glossary entries in alphabetical order | |
| .. glossary:: | |
| Bridge Driver | |
| A :term:`Device Driver` that implements the main logic to talk with | |
| media hardware. | |
| CEC API | |
| **Consumer Electronics Control API** | |
| An API designed to receive and transmit data via an HDMI | |
| CEC interface. | |
| See :ref:`cec`. | |
| Data Unit | |
| Unit 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. | |
| Device Driver | |
| Part of the Linux Kernel that implements support for a hardware | |
| component. | |
| Device Node | |
| A character device node in the file system used to control and | |
| transfer data in and out of a Kernel driver. | |
| Digital TV API | |
| **Previously known as DVB API** | |
| An API designed to control a subset of the :term:`Media Hardware` | |
| that implements digital TV (e. g. DVB, ATSC, ISDB, etc). | |
| See :ref:`dvbapi`. | |
| DSP | |
| **Digital Signal Processor** | |
| A specialized :term:`Microprocessor`, with its architecture | |
| optimized for the operational needs of digital signal processing. | |
| FPGA | |
| **Field-programmable Gate Array** | |
| An :term:`IC` circuit designed to be configured by a customer or | |
| a designer after manufacturing. | |
| See https://en.wikipedia.org/wiki/Field-programmable_gate_array. | |
| Hardware Component | |
| A subset of the :term:`Media Hardware`. For example an :term:`I²C` or | |
| :term:`SPI` device, or an :term:`IP Block` inside an | |
| :term:`SoC` or :term:`FPGA`. | |
| Hardware Peripheral | |
| A group of :term:`hardware components <Hardware Component>` 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. | |
| Also known as :term:`Peripheral`. | |
| I²C | |
| **Inter-Integrated Circuit** | |
| A multi-master, multi-slave, packet switched, single-ended, | |
| serial computer bus used to control some hardware components | |
| like sub-device hardware components. | |
| See http://www.nxp.com/docs/en/user-guide/UM10204.pdf. | |
| IC | |
| **Integrated circuit** | |
| A set of electronic circuits on one small flat piece of | |
| semiconductor material, normally silicon. | |
| Also known as chip. | |
| IP Block | |
| **Intellectual property core** | |
| In 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. | |
| See https://en.wikipedia.org/wiki/Semiconductor_intellectual_property_core). | |
| ISP | |
| **Image Signal Processor** | |
| 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). | |
| Media API | |
| A set of userspace APIs used to control the media hardware. It is | |
| composed by: | |
| - :term:`CEC API`; | |
| - :term:`Digital TV API`; | |
| - :term:`MC API`; | |
| - :term:`RC API`; and | |
| - :term:`V4L2 API`. | |
| See Documentation/userspace-api/media/index.rst. | |
| MC API | |
| **Media Controller API** | |
| An API designed to expose and control the relationships between | |
| multimedia devices and sub-devices. | |
| See :ref:`media_controller`. | |
| MC-centric | |
| :term:`V4L2 Hardware` device driver that requires :term:`MC API`. | |
| Such drivers have ``V4L2_CAP_IO_MC`` device_caps field set | |
| (see :ref:`VIDIOC_QUERYCAP`). | |
| See :ref:`v4l2_hardware_control` for more details. | |
| Media Hardware | |
| Subset of the hardware that is supported by the Linux Media API. | |
| This 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. | |
| Microprocessor | |
| Electronic 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. | |
| Peripheral | |
| The same as :term:`Hardware Peripheral`. | |
| RC API | |
| **Remote Controller API** | |
| An API designed to receive and transmit data from remote | |
| controllers. | |
| See :ref:`remote_controllers`. | |
| SMBus | |
| A subset of I²C, which defines a stricter usage of the bus. | |
| SPI | |
| **Serial Peripheral Interface Bus** | |
| Synchronous serial communication interface specification used for | |
| short distance communication, primarily in embedded systems. | |
| SoC | |
| **System on a Chip** | |
| An integrated circuit that integrates all components of a computer | |
| or other electronic systems. | |
| Stream | |
| A 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. | |
| V4L2 API | |
| **V4L2 userspace API** | |
| The userspace API defined in :ref:`v4l2spec`, which is used to | |
| control a V4L2 hardware. | |
| V4L2 Device Node | |
| A :term:`Device Node` that is associated to a V4L driver. | |
| The V4L2 device node naming is specified at :ref:`v4l2_device_naming`. | |
| V4L2 Hardware | |
| Part of the media hardware which is supported by the :term:`V4L2 API`. | |
| V4L2 Sub-device | |
| V4L2 hardware components that aren't controlled by a | |
| :term:`Bridge Driver`. See :ref:`subdev`. | |
| Video-node-centric | |
| V4L2 device driver that doesn't require a media controller to be used. | |
| Such drivers have the ``V4L2_CAP_IO_MC`` device_caps field unset | |
| (see :ref:`VIDIOC_QUERYCAP`). | |
| V4L2 Sub-device API | |
| Part of the :term:`V4L2 API` which control | |
| :term:`V4L2 sub-devices <V4L2 Sub-device>`, like sensors, | |
| HDMI receivers, scalers, deinterlacers. | |
| See :ref:`v4l2_hardware_control` for more details. |