hc
2023-08-08 f92d6635abca482ea1018fed138d654cb14b2138
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
FAQ
===
 
.. note::
 
   This documentation is outdated. Please check at the DVB wiki
   at https://linuxtv.org/wiki for more updated info.
 
Some very frequently asked questions about linuxtv-dvb
 
1. The signal seems to die a few seconds after tuning.
 
   It's not a bug, it's a feature. Because the frontends have
   significant power requirements (and hence get very hot), they
   are powered down if they are unused (i.e. if the frontend device
   is closed). The dvb-core.o module parameter "dvb_shutdown_timeout"
   allow you to change the timeout (default 5 seconds). Setting the
   timeout to 0 disables the timeout feature.
 
2. How can I watch TV?
 
   The driver distribution includes some simple utilities which
   are mainly intended for testing and to demonstrate how the
   DVB API works.
 
   Depending on whether you have a DVB-S, DVB-C or DVB-T card, use
   apps/szap/szap, czap or tzap. You must supply a channel list
   in ~/.[sct]zap/channels.conf. If you are lucky you can just copy
   one of the supplied channel lists, or you can create a new one
   by running apps/scan/scan. If you run scan on an unknown network
   you might have to supply some start data in apps/scan/initial.h.
 
   If you have a card with a built-in hardware MPEG-decoder the
   drivers create a video4linux device (/dev/v4l/video0) which
   you can use to watch TV with any v4l application. xawtv is known
   to work. Note that you cannot change channels with xawtv, you
   have to zap using [sct]zap. If you want a nice application for
   TV watching and record/playback, have a look at VDR.
 
   If your card does not have a hardware MPEG decoder you need
   a software MPEG decoder. Mplayer or xine are known to work.
   Newsflash: MythTV also has DVB support now.
   Note: Only very recent versions of Mplayer and xine can decode.
   MPEG2 transport streams (TS) directly. Then, run
   '[sct]zap channelname -r' in one xterm, and keep it running,
   and start 'mplayer - < /dev/dvb/adapter0/dvr0' or
   'xine stdin://mpeg2 < /dev/dvb/adapter0/dvr0' in a second xterm.
   That's all far from perfect, but it seems no one has written
   a nice DVB application which includes a builtin software MPEG
   decoder yet.
 
   Newsflash: Newest xine directly supports DVB. Just copy your
   channels.conf to ~/.xine and start 'xine dvb://', or select
   the DVB button in the xine GUI. Channel switching works using the
   numpad pgup/pgdown (NP9 / NP3) keys to scroll through the channel osd
   menu and pressing numpad-enter to switch to the selected channel.
 
   Note: Older versions of xine and mplayer understand MPEG program
   streams (PS) only, and can be used in conjunction with the
   ts2ps tool from the Metzler Brother's dvb-mpegtools package.
 
3. Which other DVB applications exist?
 
   http://www.cadsoft.de/people/kls/vdr/
       Klaus Schmidinger's Video Disk Recorder
 
   http://www.metzlerbros.org/dvb/
       Metzler Bros. DVB development; alternate drivers and
       DVB utilities, include dvb-mpegtools and tuxzap.
 
   http://sourceforge.net/projects/dvbtools/
       Dave Chapman's dvbtools package, including
       dvbstream and dvbtune
 
   http://www.linuxdvb.tv/
       Henning Holtschneider's site with many interesting
       links and docs
 
   http://www.dbox2.info/
       LinuxDVB on the dBox2
 
   http://www.tuxbox.org/ and http://cvs.tuxbox.org/
       the TuxBox CVS many interesting DVB applications and the dBox2
       DVB source
 
   https://linuxtv.org/downloads
       DVB Swiss Army Knife library and utilities
 
   http://www.nenie.org/misc/mpsys/
       MPSYS: a MPEG2 system library and tools
 
   http://mplayerhq.hu/
       mplayer
 
   http://xine.sourceforge.net/ and http://xinehq.de/
       xine
 
   http://www.mythtv.org/
       MythTV - analog TV PVR, but now with DVB support, too
       (with software MPEG decode)
 
   http://dvbsnoop.sourceforge.net/
       DVB sniffer program to monitor, analyze, debug, dump
       or view dvb/mpeg/dsm-cc/mhp stream information (TS,
       PES, SECTION)
 
4. Can't get a signal tuned correctly
 
   If you are using a Technotrend/Hauppauge DVB-C card *without* analog
   module, you might have to use module parameter adac=-1 (dvb-ttpci.o).
 
5. The dvb_net device doesn't give me any packets at all
 
   Run tcpdump on the dvb0_0 interface. This sets the interface
   into promiscuous mode so it accepts any packets from the PID
   you have configured with the dvbnet utility. Check if there
   are any packets with the IP addr and MAC addr you have
   configured with ifconfig.
 
   If tcpdump doesn't give you any output, check the statistics
   which ifconfig outputs. (Note: If the MAC address is wrong,
   dvb_net won't get any input; thus you have to run tcpdump
   before checking the statistics.) If there are no packets at
   all then maybe the PID is wrong. If there are error packets,
   then either the PID is wrong or the stream does not conform to
   the MPE standard (EN 301 192, http://www.etsi.org/). You can
   use e.g. dvbsnoop for debugging.
 
6. The dvb_net device doesn't give me any multicast packets
 
   Check your routes if they include the multicast address range.
   Additionally make sure that "source validation by reversed path
   lookup" is disabled:
 
.. code-block:: none
 
     $ "echo 0 > /proc/sys/net/ipv4/conf/dvb0/rp_filter"
 
7. What the hell are all those modules that need to be loaded?
 
   For a dvb-ttpci av7110 based full-featured card the following
   modules are loaded:
 
   - videodev: Video4Linux core module. This is the base module that
     gives you access to the "analog" tv picture of the av7110 mpeg2
     decoder.
 
   - v4l2-common: common functions for Video4Linux-2 drivers
 
   - v4l1-compat: backward compatibility layer for Video4Linux-1 legacy
     applications
 
   - dvb-core: DVB core module. This provides you with the
     /dev/dvb/adapter entries
 
   - saa7146: SAA7146 core driver. This is need to access any SAA7146
     based card in your system.
 
   - saa7146_vv: SAA7146 video and vbi functions. These are only needed
     for full-featured cards.
 
   - videobuf-dma-sg: capture helper module for the saa7146_vv driver. This
     one is responsible to handle capture buffers.
 
   - dvb-ttpci: The main driver for AV7110 based, full-featured
     DVB-S/C/T cards