Merge tag 'io_uring-5.11-2021-01-16' of git://git.kernel.dk/linux-block
[linux/fpc-iii.git] / Documentation / admin-guide / media / faq.rst
blobb63548b6f31376f8af54ec51ba99c5aa4b822473
1 .. SPDX-License-Identifier: GPL-2.0
3 FAQ
4 ===
6 .. note::
8      1. With Digital TV, a single physical channel may have different
9         contents inside it. The specs call each one as a *service*.
10         This is what a TV user would call "channel". So, in order to
11         avoid confusion, we're calling *transponders* as the physical
12         channel on this FAQ, and *services* for the logical channel.
13      2. The LinuxTV community maintains some Wiki pages with contain
14         a lot of information related to the media subsystem. If you
15         don't find an answer for your needs here, it is likely that
16         you'll be able to get something useful there. It is hosted
17         at:
19         https://www.linuxtv.org/wiki/
21 Some very frequently asked questions about Linux Digital TV support
23 1. The signal seems to die a few seconds after tuning.
25         It's not a bug, it's a feature. Because the frontends have
26         significant power requirements (and hence get very hot), they
27         are powered down if they are unused (i.e. if the frontend device
28         is closed). The ``dvb-core`` module parameter ``dvb_shutdown_timeout``
29         allow you to change the timeout (default 5 seconds). Setting the
30         timeout to 0 disables the timeout feature.
32 2. How can I watch TV?
34         Together with the Linux Kernel, the Digital TV developers support
35         some simple utilities which are mainly intended for testing
36         and to demonstrate how the DVB API works. This is called DVB v5
37         tools and are grouped together with the ``v4l-utils`` git repository:
39             https://git.linuxtv.org/v4l-utils.git/
41         You can find more information at the LinuxTV wiki:
43             https://www.linuxtv.org/wiki/index.php/DVBv5_Tools
45         The first step is to get a list of services that are transmitted.
47         This is done by using several existing tools. You can use
48         for example the ``dvbv5-scan`` tool. You can find more information
49         about it at:
51             https://www.linuxtv.org/wiki/index.php/Dvbv5-scan
53         There are some other applications like ``w_scan`` [#]_ that do a
54         blind scan, trying hard to find all possible channels, but
55         those consumes a large amount of time to run.
57         .. [#] https://www.linuxtv.org/wiki/index.php/W_scan
59         Also, some applications like ``kaffeine`` have their own code
60         to scan for services. So, you don't need to use an external
61         application to obtain such list.
63         Most of such tools need a file containing a list of channel
64         transponders available on your area. So, LinuxTV developers
65         maintain tables of Digital TV channel transponders, receiving
66         patches from the community to keep them updated.
68         This list is hosted at:
70             https://git.linuxtv.org/dtv-scan-tables.git
72         And packaged on several distributions.
74         Kaffeine has some blind scan support for some terrestrial standards.
75         It also relies on DTV scan tables, although it contains a copy
76         of it internally (and, if requested by the user, it will download
77         newer versions of it).
79         If you are lucky you can just use one of the supplied channel
80         transponders. If not, you may need to seek for such info at
81         the Internet and create a new file. There are several sites with
82         contains physical channel lists. For cable and satellite, usually
83         knowing how to tune into a single channel is enough for the
84         scanning tool to identify the other channels. On some places,
85         this could also work for terrestrial transmissions.
87         Once you have a transponders list, you need to generate a services
88         list with a tool like ``dvbv5-scan``.
90         Almost all modern Digital TV cards don't have built-in hardware
91         MPEG-decoders. So, it is up to the application to get a MPEG-TS
92         stream provided by the board, split it into audio, video and other
93         data and decode.
95 3. Which Digital TV applications exist?
97         Several media player applications are capable of tuning into
98         digital TV channels, including Kaffeine, Vlc, mplayer and MythTV.
100         Kaffeine aims to be very user-friendly, and it is maintained
101         by one of the Kernel driver developers.
103         A comprehensive list of those and other apps can be found at:
105             https://www.linuxtv.org/wiki/index.php/TV_Related_Software
107         Some of the most popular ones are linked below:
109         https://kde.org/applications/multimedia/org.kde.kaffeine
110                 KDE media player, focused on Digital TV support
112         https://www.linuxtv.org/vdrwiki/index.php/Main_Page
113                 Klaus Schmidinger's Video Disk Recorder
115         https://linuxtv.org/downloads and https://git.linuxtv.org/
116                 Digital TV and other media-related applications and
117                 Kernel drivers. The ``v4l-utils`` package there contains
118                 several swiss knife tools for using with Digital TV.
120         http://sourceforge.net/projects/dvbtools/
121                 Dave Chapman's dvbtools package, including
122                 dvbstream and dvbtune
124         http://www.dbox2.info/
125                 LinuxDVB on the dBox2
127         http://www.tuxbox.org/
128                 the TuxBox CVS many interesting DVB applications and the dBox2
129                 DVB source
131         http://www.nenie.org/misc/mpsys/
132                 MPSYS: a MPEG2 system library and tools
134         https://www.videolan.org/vlc/index.pt.html
135                 Vlc
137         http://mplayerhq.hu/
138                 MPlayer
140         http://xine.sourceforge.net/ and http://xinehq.de/
141                 Xine
143         http://www.mythtv.org/
144                 MythTV - analog TV and digital TV PVR
146         http://dvbsnoop.sourceforge.net/
147                 DVB sniffer program to monitor, analyze, debug, dump
148                 or view dvb/mpeg/dsm-cc/mhp stream information (TS,
149                 PES, SECTION)
151 4. Can't get a signal tuned correctly
153         That could be due to a lot of problems. On my personal experience,
154         usually TV cards need stronger signals than TV sets, and are more
155         sensitive to noise. So, perhaps you just need a better antenna or
156         cabling. Yet, it could also be some hardware or driver issue.
158         For example, if you are using a Technotrend/Hauppauge DVB-C card
159         *without* analog module, you might have to use module parameter
160         adac=-1 (dvb-ttpci.o).
162         Please see the FAQ page at linuxtv.org, as it could contain some
163         valuable information:
165             https://www.linuxtv.org/wiki/index.php/FAQ_%26_Troubleshooting
167         If that doesn't work, check at the linux-media ML archives, to
168         see if someone else had a similar problem with your hardware
169         and/or digital TV service provider:
171             https://lore.kernel.org/linux-media/
173         If none of this works, you can try sending an e-mail to the
174         linux-media ML and see if someone else could shed some light.
175         The e-mail is linux-media AT vger.kernel.org.
177 5. The dvb_net device doesn't give me any packets at all
179         Run ``tcpdump`` on the ``dvb0_0`` interface. This sets the interface
180         into promiscuous mode so it accepts any packets from the PID
181         you have configured with the ``dvbnet`` utility. Check if there
182         are any packets with the IP addr and MAC addr you have
183         configured with ``ifconfig`` or with ``ip addr``.
185         If ``tcpdump`` doesn't give you any output, check the statistics
186         which ``ifconfig`` or ``netstat -ni`` outputs. (Note: If the MAC
187         address is wrong, ``dvb_net`` won't get any input; thus you have to
188         run ``tcpdump`` before checking the statistics.) If there are no
189         packets at all then maybe the PID is wrong. If there are error packets,
190         then either the PID is wrong or the stream does not conform to
191         the MPE standard (EN 301 192, http://www.etsi.org/). You can
192         use e.g. ``dvbsnoop`` for debugging.
194 6. The ``dvb_net`` device doesn't give me any multicast packets
196         Check your routes if they include the multicast address range.
197         Additionally make sure that "source validation by reversed path
198         lookup" is disabled::
200           $ "echo 0 > /proc/sys/net/ipv4/conf/dvb0/rp_filter"
202 7. What are all those modules that need to be loaded?
204         In order to make it more flexible and support different hardware
205         combinations, the media subsystem is written on a modular way.
207         So, besides the Digital TV hardware module for the main chipset,
208         it also needs to load a frontend driver, plus the Digital TV
209         core. If the board also has remote controller, it will also
210         need the remote controller core and the remote controller tables.
211         The same happens if the board has support for analog TV: the
212         core support for video4linux need to be loaded.
214         The actual module names are Linux-kernel version specific, as,
215         from time to time, things change, in order to make the media
216         support more flexible.