Difference between revisions of "DVB-S"

From ArchWiki
Jump to: navigation, search
(Switching channels)
(drop Multimedia category (TV cards now is in Television which is in Multimedia))
 
(43 intermediate revisions by 18 users not shown)
Line 1: Line 1:
[[Category:Audio/Video (English)]]
+
[[Category:TV cards]]
[[Category:HOWTOs (English)]]
+
[[de:DVB-S]]
 +
[[ja:DVB-S]]
 +
{{Related articles start}}
 +
{{Related|DVB-T}}
 +
{{Related|MythTV Walkthrough}}
 +
{{Related articles end}}
  
{{Article summary start}}
+
[[wikipedia:DVB-S|DVB-S]] is a satellite television standard. This article describes the setup and use of DVB-S cards on Arch Linux.
{{Article summary text|Covers the setup and use of DVB-S (sat TV) cards on Arch Linux.}}
+
 
{{Article summary heading|Important}}
+
{{Warning|This was only tested with the Pinnacle PCTV Sat, and may not work or will not help you with different cards.}}
{{Article summary text|This was only tested with the Pinnacle PCTV Sat, and may not work or won't help you with different cards.}}
 
{{Article summary heading|Available in languages}}
 
[[de:DVB-S]]
 
{{i18n_entry|English|DVB-S}}
 
{{Article summary heading|Related articles}}
 
{{Article summary wiki|MythTV Walkthrough}}
 
{{Article summary end}}
 
  
==Load required Modules==
+
==Load required kernel modules==
You have to lookup the chipset of your specific card; tools like '''lshwd''' may help you.
+
You have to lookup the chipset of your specific card; tools like {{AUR|lshwd}} may help you.
  
 
===Pinnacle PCTV Sat===
 
===Pinnacle PCTV Sat===
This card uses bt878 and cx24110 as chipset.
+
This card uses bt878 and cx24110 as chipset. These require the {{ic|dvb-bt8xx}} and {{ic|cx24110}} [[kernel modules]].
  
Load them (under root) with:
+
Load them with modprobe:
 
  # modprobe dvb-bt8xx
 
  # modprobe dvb-bt8xx
 
  # modprobe cx24110
 
  # modprobe cx24110
If you want Arch to boot them on startup, add both modules to {{Codeline|MODULES}} in {{Filename|/etc/rc.conf}}.
 
  
==Setup Permissions==
+
And make them load at boot by creating the following file:
To use your DVB-S card as user add him to the {{Codeline|video}} group:
+
{{hc|/etc/modules-load.d/pinnacle.conf|
 +
dvb-bt8xx
 +
cx24110}}
 +
 
 +
===Additional modules: S2-liplianin===
 +
Some modules not included in the kernel are available from Igor M. Liplianin's [https://bitbucket.org/liplianin/szap-s2 mercurial repository]. 
 +
 
 +
====Setup====
 +
First of all, you have to download and prepare the source code.
 +
 
 +
$ hg clone https://bitbucket.org/liplianin/szap-s2
 +
 
 +
If you do not have installed mercurial, you will get an error message: {{ic|hg: command not found}}
 +
 
 +
You can either download the package {{Pkg|mercurial}} and try the above command again or download the source code from [https://bitbucket.org/liplianin/szap-s2/downloads/ here] and extract it manually.
 +
 
 +
After obtaining the code, change the working directory to the extracted folder:
 +
 
 +
$ cd s2-liplianin
 +
 
 +
Unfortunately not all modules of liplianin are compatible with recent kernels and cause some trouble if you want to compile them hence you have to exclude these modules from the build process (if you do not need them). You can choose which modules you want to build by executing:
 +
 
 +
$ make config
 +
 
 +
which will create a config file: {{ic|v4l/.config}}.
 +
{{Note|If you want to edit the config file with another interface, take a look at the 'Module selection rules' section within the file {{ic|Install}}.}}
 +
 
 +
After that, you have to build the chosen modules:
 +
 
 +
$ make
 +
 
 +
{{Note|It is very likely, that some modules will not compile. Try to exclude them (one step earlier) and run 'make' again.}}
 +
 
 +
If all configured modules were compiled successfully, you can install the modules at the kernel's default modules directory by executing:
 +
 
 +
# make install
 +
 
 +
After that, reboot your machine.
 +
 
 +
==Additional firmware: OpenELEC DVB-firmware==
 +
The [http://openelec.tv/ OpenELEC project] provides additional firmware files for various DVB devices, eg. TechniSat SkyStar S2.
 +
To use these firmware files you can install either {{AUR|openelec-dvb-firmware}} or {{AUR|openelec-dvb-firmware-git}}.
 +
 
 +
==Setup permissions==
 +
To use your DVB-S card as user add him to the {{Ic|video}} group:
 
  # gpasswd -a [username] video
 
  # gpasswd -a [username] video
  
Line 32: Line 73:
  
 
Most applications like szap or xine are needing a channel list created by '''scan''', which is part of '''dvb-utils'''.
 
Most applications like szap or xine are needing a channel list created by '''scan''', which is part of '''dvb-utils'''.
You'll find the dvb-utils package under the name {{Package Official|linuxtv-dvb-apps}} in the Community-Repo.
+
You will find the dvb-utils package under the name {{AUR|linuxtv-dvb-apps}}.
 
 
Install it with:
 
# pacman -S linuxtv-dvb-apps
 
  
 
===Using scan===
 
===Using scan===
'''scan''' needs an channel to initialize scanning. In <tt>/usr/share/dvb/dvb-s/</tt> are some files which contain these channels; you will need that one that fits the satellite you are watching from.
+
'''scan''' needs an channel to initialize scanning. In {{Ic|/usr/share/dvb/dvb-s/}} are some files which contain these channels; you will need that one that fits the satellite you are watching from.
  
The following command will scan all channels and save them to {{Filename|channels.conf}}:
+
The following command will scan all channels and save them to {{ic|channels.conf}}:
 
  $ scan -x0 -t1 -s1 /usr/share/dvb/dvb-s/[your satellite] | tee channels.conf
 
  $ scan -x0 -t1 -s1 /usr/share/dvb/dvb-s/[your satellite] | tee channels.conf
{{Note | The channel file doesn't have to be called {{Filename|channels.conf}} but it's more convenient as you will see later.}}
+
{{Note | The channel file does not have to be called {{ic|channels.conf}} but it is more convenient as you will see later.}}
 
{{Note | Depending on your satellite dish setup you may have to try other arguments.}}
 
{{Note | Depending on your satellite dish setup you may have to try other arguments.}}
  
 
===Using w_scan===
 
===Using w_scan===
[http://aur.archlinux.org/packages.php?ID=12028 w_scan] allows for automatic scanning of channels without configuration. Install it then issue:
+
{{AUR|w_scan}} allows for automatic scanning of channels without configuration. Install it then issue:
  
 
  # w_scan -c [your country] > ~/someChannels.conf
 
  # w_scan -c [your country] > ~/someChannels.conf
Line 67: Line 105:
 
  # w_scan -fs -s S23E5 -a 0 -D 1c -o 7 -e 2 > ~/someChannels.conf
 
  # w_scan -fs -s S23E5 -a 0 -D 1c -o 7 -e 2 > ~/someChannels.conf
  
{{Warning|I did found out that when using a LNB with a DiSEqC switch it's way more convenient to  use -X ouptut which you can use in for example mplayer. Just append "-X" before the ">" that you see above.}}
+
{{Warning|I did found out that when using a LNB with a DiSEqC switch it is way more convenient to  use -X ouptut which you can use in for example mplayer. Just append "-X" before the ">" that you see above.}}
  
 
==Switching channels==
 
==Switching channels==
 
{{Note | szap only works with satellite TV.}}
 
{{Note | szap only works with satellite TV.}}
  
By using '''zap''', which comes with '''dvb-utils''', you can switch channels, so you don't have to rely on the abilities of your player.
+
By using '''zap''', which comes with '''dvb-utils''', you can switch channels, so you do not have to rely on the abilities of your player.
  
'''szap''' needs the channel file we created earlier; it will try {{Filename|~/.szap/channels.conf}} by default. You can move the {{Filename|channels.conf}} there or you can use the {{Codeline|"-c"}} command-line option.
+
'''szap''' needs the channel file we created earlier; it will try {{ic|~/.szap/channels.conf}} by default. You can move the {{ic|channels.conf}} there or you can use the {{Ic|"-c"}} command-line option.
  
 
Switching channels works like this:
 
Switching channels works like this:
Line 96: Line 134:
 
Kaffeine is a really nice player; it supports EPG, time-shifting, and recording. Additionally Kaffeine has built-in channel-searching.
 
Kaffeine is a really nice player; it supports EPG, time-shifting, and recording. Additionally Kaffeine has built-in channel-searching.
  
Install it with:
+
[[Install]] it with the {{Pkg|kaffeine}} package.
# pacman -S kaffeine
 
  
*[http://archlinux.org/packages/search/?q=kaffeine More Information]
+
*[https://archlinux.org/packages/search/?q=kaffeine More Information]
 
*[http://kaffeine.sourceforge.net/ Project page]
 
*[http://kaffeine.sourceforge.net/ Project page]
  
Line 106: Line 143:
 
* [http://free.pages.at/cleditor/vdr2kaffeine.htm conv2conf] converts these files into kaffeine channel list format
 
* [http://free.pages.at/cleditor/vdr2kaffeine.htm conv2conf] converts these files into kaffeine channel list format
  
===Klear===
+
===Me-tv===
Klear is also a really nice player; it supports EPG, time-shifting, and recording, videotext. Channel-searching is still missing. Install it from AUR:
+
Me-tv is a simple but powerfull dvb-viewer, supporting EPG, recording and channel-searching with a light-weight gui.
*[http://aur.archlinux.org/packages.php?do_Details=1&ID=2415&O=0&L=0&C=0&K=klear&SB=&SO=&PP=25&do_MyPackages=0&do_Orphans=0&SeB=nd AUR package]
+
 
*[http://klear.org Project page]
+
[[Install]] Me-tv with the {{AUR|me-tv-bzr}} package.
  
 
===Xine===
 
===Xine===
Copy your channel file to {{Filename|~/.xine/channels.conf}}.
+
Copy your channel file to {{ic|~/.xine/channels.conf}}.
  
 
Watch a specific channel with following command:
 
Watch a specific channel with following command:
Line 121: Line 158:
 
==Additional Resources==
 
==Additional Resources==
  
===TV Cards in general===
+
*TV Cards in general: [http://wiki.ubuntuusers.de/TV-Karten Ubuntuusers.de-Wiki] (German)
*[http://wiki.ubuntuusers.de/TV-Karten Ubuntuusers.de-Wiki] (german)
+
*List of supported [https://www.linuxtv.org/wiki/index.php/DVB-S_Devices DVB-S]/[https://www.linuxtv.org/wiki/index.php/DVB-S2_Devices DVB-S2] devices
 
 
===Pinnacle Cards===
 
*[http://pinnaclefanboard.com/ PinnacleFanBoard] (german, but you can ask in english as well)
 

Latest revision as of 08:15, 18 June 2018

DVB-S is a satellite television standard. This article describes the setup and use of DVB-S cards on Arch Linux.

Warning: This was only tested with the Pinnacle PCTV Sat, and may not work or will not help you with different cards.

Load required kernel modules

You have to lookup the chipset of your specific card; tools like lshwdAUR may help you.

Pinnacle PCTV Sat

This card uses bt878 and cx24110 as chipset. These require the dvb-bt8xx and cx24110 kernel modules.

Load them with modprobe:

# modprobe dvb-bt8xx
# modprobe cx24110

And make them load at boot by creating the following file:

/etc/modules-load.d/pinnacle.conf
dvb-bt8xx
cx24110

Additional modules: S2-liplianin

Some modules not included in the kernel are available from Igor M. Liplianin's mercurial repository.

Setup

First of all, you have to download and prepare the source code.

$ hg clone https://bitbucket.org/liplianin/szap-s2

If you do not have installed mercurial, you will get an error message: hg: command not found

You can either download the package mercurial and try the above command again or download the source code from here and extract it manually.

After obtaining the code, change the working directory to the extracted folder:

$ cd s2-liplianin

Unfortunately not all modules of liplianin are compatible with recent kernels and cause some trouble if you want to compile them hence you have to exclude these modules from the build process (if you do not need them). You can choose which modules you want to build by executing:

$ make config

which will create a config file: v4l/.config.

Note: If you want to edit the config file with another interface, take a look at the 'Module selection rules' section within the file Install.

After that, you have to build the chosen modules:

$ make
Note: It is very likely, that some modules will not compile. Try to exclude them (one step earlier) and run 'make' again.

If all configured modules were compiled successfully, you can install the modules at the kernel's default modules directory by executing:

# make install

After that, reboot your machine.

Additional firmware: OpenELEC DVB-firmware

The OpenELEC project provides additional firmware files for various DVB devices, eg. TechniSat SkyStar S2. To use these firmware files you can install either openelec-dvb-firmwareAUR or openelec-dvb-firmware-gitAUR.

Setup permissions

To use your DVB-S card as user add him to the video group:

# gpasswd -a [username] video

Scanning channels

Note: You can skip this part if you use Kaffeine.

Most applications like szap or xine are needing a channel list created by scan, which is part of dvb-utils. You will find the dvb-utils package under the name linuxtv-dvb-appsAUR.

Using scan

scan needs an channel to initialize scanning. In /usr/share/dvb/dvb-s/ are some files which contain these channels; you will need that one that fits the satellite you are watching from.

The following command will scan all channels and save them to channels.conf:

$ scan -x0 -t1 -s1 /usr/share/dvb/dvb-s/[your satellite] | tee channels.conf
Note: The channel file does not have to be called channels.conf but it is more convenient as you will see later.
Note: Depending on your satellite dish setup you may have to try other arguments.

Using w_scan

w_scanAUR allows for automatic scanning of channels without configuration. Install it then issue:

# w_scan -c [your country] > ~/someChannels.conf

Alternatively you can also scan using the satellite position like 19.5E for Astra 1. Scans like that can be done as follows:

# w_scan -fs -s S19E5 > ~/someChannels.conf

You can also add the -X flag to generate tzap/czap/xine output instead of vdr output.

# w_scan -X -c AU > ~/AustraliaChannels.conf

DiSEqC switch scanning (AKA multiple satellite LNB)

If you have a LNB with a DiSEqC switch in it you can manually select that using the -D option like so:

# w_scan -fs -s S23E5 -D 1c > ~/someChannels.conf

The above line should work but not all found channels where actually saved. The line below worked perfectly for me:

# w_scan -fs -s S23E5 -a 0 -D 1c -o 7 -e 2 > ~/someChannels.conf
Warning: I did found out that when using a LNB with a DiSEqC switch it is way more convenient to use -X ouptut which you can use in for example mplayer. Just append "-X" before the ">" that you see above.

Switching channels

Note: szap only works with satellite TV.

By using zap, which comes with dvb-utils, you can switch channels, so you do not have to rely on the abilities of your player.

szap needs the channel file we created earlier; it will try ~/.szap/channels.conf by default. You can move the channels.conf there or you can use the "-c" command-line option.

Switching channels works like this:

$ szap -r [channel]
Note: szap needs to keep running.

You can list all available channels with:

$ szap -q

Now you can watch the stream for example with xine:

$ xine -g stdin://mpeg2 < /dev/dvb/adapter0/dvr0

or with mplayer:

$ mplayer /dev/dvb/adapter0/dvr0

or with mplayer, but using DVB directly:

$ mplayer "dvb://RTL Television"

You can find all the channel names by running szap -q (assuming the channel list is also in ~/.szap/channels.conf).

Software

Kaffeine

Kaffeine is a really nice player; it supports EPG, time-shifting, and recording. Additionally Kaffeine has built-in channel-searching.

Install it with the kaffeine package.

Importing channel list

Me-tv

Me-tv is a simple but powerfull dvb-viewer, supporting EPG, recording and channel-searching with a light-weight gui.

Install Me-tv with the me-tv-bzrAUR package.

Xine

Copy your channel file to ~/.xine/channels.conf.

Watch a specific channel with following command:

$ xine dvb://[channel]

or use the playlist editor in Xine

Additional Resources