[vlc] Re: DVB-T in Cologne/Germany
Guido Flohr
guido at imperia.net
Thu Jun 17 13:11:15 CEST 2004
Hi,
Jan Ekholm wrote:
> On Mon, 14 Jun 2004, Guido Flohr wrote:
>>Guido Flohr wrote:
>>
>>>vlc -vvv dvb-t:adapter=0:frequency=650000000:inversion=0:bandwidth=8:\
>>>code-rate-hp=2:code-rate-lp=0:modulation=16:transmission=8:guard=4:\
>>>hierarchy=-1
>>
>>vlc -vvv dvb-t:adapter=0:frequency=650000000:inversion=0:bandwidth=8:\
>>code-rate-hp=2:code-rate-lp=0:modulation=16:transmission=8:guard=4:\
>>hierarchy=-1:program=305 --dvb-budget-mode=1
>
> Now that is one ugly commandline... :) Did your tuning fixes btw end up in
> the official SVN/CVS repository?
The fixes are in SVN, yes.
The ugly command line is a good starting point for experiments in other
regions with DVB-T because it shows every parameter that is necessary to
tune the DVB-T card under Linux. Because the documentation on the whole
thing is still very scarce, a little summary of what I have learned
lately from the vlc and the Linux kernel sources:
The "dvb-t" input module takes these parameters in vlc 0.7.3, other
parameters are _not_ relevant for tuning the card:
adapter
-------
Usually 0 unless you have several cards.
frequency
---------
Must be specified in Hz (for DVB-T and DVB-C). For DVB-S it is kHz,
_not_ for terrestrial and cable!
inversion (default: 2 == auto)
------------------------------
0 for off, 1 for on, and 2 for auto, no idea what this is.
bandwidth (default: 0 == auto)
------------------------------
0 for automatic, 6 for 6MHz, 7 for 7MHz, 8 for 8MHz.
code-rate-hp (default: 0 == none)
---------------------------------
0 for none, 1 for 1/2, 2 for 2/3, 4 for 4/5, ... 8 for 8/9 or 9 for
auto. In my region (Cologne/Germany), the technical specs for this
parameter did not talk about _h_igh _p_riority code rate, but about
Forward Error Correction (FEC).
9 (auto) might be a better default value here than 0 (none).
code-rate-lp (default: 0 == none)
---------------------------------
See above for "code-rate-hp". The "lp" stands for low priority.
modulation (default: 0 == QAM_AUTO)
-----------------------------------
Ask your local TV dealer ... The possible values are -1 for QPSK, 0 for
QAM_AUTO, 16 for QAM-16, 32 for QAM-32, 64 for QAM-64, 128 for QAM-128,
and 256 for QAM-256. By the way, QAM stands for Quadrature Amplitude
Modulation, and QPSK for Quadrature Phase Shift Keying, nothing that a
sane human being wants to know about.
transmission (default: 0 == auto)
---------------------------------
0 for automatic, 2 for 2k, 8 for 8k. Your TV dealer will know that.
guard (default: 0 == auto)
--------------------------
The so-called "guard-interval": 0 for automatic, 4 for 1/4, 8 for 1/8,
16 for 1/16, and 32 for 1/32.
hierarchy (default: 0 == auto)
------------------------------
Possible values are -1 for none, 0 for auto, and 1, 2, and 4. No idea
what this is good for.
program
-------
In the above command line is wrong, simply omit it for now.
Okay, that are all parameters relevant for DVB-T. You may see others
like "fec", "srate", or the like; forget them, they are not relevant for
terrestrial DVB.
budget-mode
-----------
This was needed for my VisionPlus card from TwinHan. Without it, the
last few lines of debugging output looked like this:
[00000224] ts demuxer debug: new PAT ts_id=0x2201 version=27 current_next=1
[00000224] ts demuxer debug: * number=0 pid=0x10
[00000224] ts demuxer debug: * number=16403 pid=0x130
[00000224] ts demuxer debug: * number=16408 pid=0x180
[00000224] ts demuxer debug: * number=16405 pid=0x150
[00000224] ts demuxer debug: * number=16418 pid=0x220
and then vlc stopped. Instead of the ":budget-mode=1:" you can also
give a separate command line parameter "dvb-budget-mode" without an
argument.
If you cannot find some of the information above, try it with the
defaults. You may also find it on the web site of the DVB-T service
providers. Peeking at the parameters of a working DVB-T settop box may
also dig up some information. As a last resort you can try to run the
original software that came with your card, but this will usually
require installing Microsoft Windows or MacOS.
The command line so far is:
vlc -vvv dvb-t:adapter=0:frequency=650000000:inversion=0:\
bandwidth=8:code-rate-hp=2:code-rate-lp=0:modulation=16:\
transmission=8:guard=4:hierarchy=-1:budget-mode=1
This should actually play something already, but maybe not the channel
you want. Usually, multiple TV channels share one single frequency
(650000000 Hz in our example). In order to select them, you have to
pass another parameter "--program=NUMBER". To find out which are
available, look again at the ts demuxer debug output above. All non-zero
numbers are valid, here: 16403, 16408, 16405, and 16418. So the
complete command line would be for instance:
vlc -vvv dvb-t:adapter=0:frequency=650000000:inversion=0:\
bandwidth=8:code-rate-hp=2:code-rate-lp=0:modulation=16:\
transmission=8:guard=4:hierarchy=-1:budget-mode=1 \
--program=16403 --sout=udp://239.255.12.42 --ttl=12
This will multicast-stream the channel into the subnet, and clients can
join it with
vlc 'udp://@239.255.12.42'
Hope this helps, thanks for your help here, and ciao!
Guido
--
Imperia AG, Development
Leyboldstr. 10 - D-50354 Hürth - http://www.imperia.net/
--
This is the vlc mailing-list, see http://www.videolan.org/vlc/
To unsubscribe, please read http://www.videolan.org/support/lists.html
If you are in trouble, please contact <postmaster at videolan.org>
More information about the vlc
mailing list