xref: /linux/Documentation/userspace-api/media/dvb/legacy_dvb_decoder_api.rst (revision 36f353a1ebf88280f58d1ebfe2731251d9159456)
1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later OR GPL-2.0
2
3.. _legacy_dvb_decoder_api:
4
5============================
6Legacy DVB MPEG Decoder APIs
7============================
8
9.. _legacy_dvb_decoder_notes:
10
11General Notes
12=============
13
14This API has originally been designed for DVB only and is therefore limited to
15the :ref:`legacy_dvb_decoder_formats` used in such digital TV-broadcastsystems.
16
17To circumvent this limitations the more versatile :ref:`V4L2 <v4l2spec>` API has
18been designed. Which replaces this part of the DVB API.
19
20Nevertheless there have been projects build around this API.
21To ensure compatibility this API is kept as it is.
22
23.. attention:: Do **not** use this API in new drivers!
24
25    For audio and video use the :ref:`V4L2 <v4l2spec>` and ALSA APIs.
26
27    Pipelines should be set up using the :ref:`Media Controller  API<media_controller>`.
28
29Practically the decoders seem to be treated differently. The application typically
30knows which decoder is in use or it is specially written for one decoder type.
31Querying capabilities are rarely used because they are already known.
32
33
34.. _legacy_dvb_decoder_formats:
35
36Data Formats
37============
38
39The API has been designed for DVB and compatible broadcastsystems.
40Because of that fact the only supported data formats are ISO/IEC 13818-1
41compatible MPEG streams. The supported payloads may vary depending on the
42used decoder.
43
44Timestamps are always MPEG PTS as defined in ITU T-REC-H.222.0 /
45ISO/IEC 13818-1, if not otherwise noted.
46
47For storing recordings typically TS streams are used, in lesser extent PES.
48Both variants are commonly accepted for playback, but it may be driver dependent.
49
50
51
52
53Table of Contents
54=================
55
56.. toctree::
57    :maxdepth: 2
58
59    legacy_dvb_video
60    legacy_dvb_audio
61    legacy_dvb_osd
62