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