Back to home page

OSCL-LXR

 
 

    


0001 .. SPDX-License-Identifier: GPL-2.0
0002 
0003 ============
0004 Introduction
0005 ============
0006 
0007 This document covers the Linux Kernel to Userspace API's used by video
0008 and radio streaming devices, including video cameras, analog and digital
0009 TV receiver cards, AM/FM receiver cards, Software Defined Radio (SDR),
0010 streaming capture and output devices, codec devices and remote controllers.
0011 
0012 A typical media device hardware is shown at :ref:`typical_media_device`.
0013 
0014 .. _typical_media_device:
0015 
0016 .. kernel-figure:: typical_media_device.svg
0017     :alt:   typical_media_device.svg
0018     :align: center
0019 
0020     Typical Media Device
0021 
0022 The media infrastructure API was designed to control such devices. It is
0023 divided into five parts.
0024 
0025 1. The :ref:`first part <v4l2spec>` covers radio, video capture and output,
0026    cameras, analog TV devices and codecs.
0027 
0028 2. The :ref:`second part <dvbapi>` covers the API used for digital TV and
0029    Internet reception via one of the several digital tv standards. While it is
0030    called as DVB API, in fact it covers several different video standards
0031    including DVB-T/T2, DVB-S/S2, DVB-C, ATSC, ISDB-T, ISDB-S, DTMB, etc. The
0032    complete list of supported standards can be found at
0033    :c:type:`fe_delivery_system`.
0034 
0035 3. The :ref:`third part <remote_controllers>` covers the Remote Controller API.
0036 
0037 4. The :ref:`fourth part <media_controller>` covers the Media Controller API.
0038 
0039 5. The :ref:`fifth part <cec>` covers the CEC (Consumer Electronics Control) API.
0040 
0041 It should also be noted that a media device may also have audio components, like
0042 mixers, PCM capture, PCM playback, etc, which are controlled via ALSA API.  For
0043 additional information and for the latest development code, see:
0044 `https://linuxtv.org <https://linuxtv.org>`__.  For discussing improvements,
0045 reporting troubles, sending new drivers, etc, please mail to: `Linux Media
0046 Mailing List (LMML) <http://vger.kernel.org/vger-lists.html#linux-media>`__.