DVB-S
DVB-S 是一种卫星电视标准。本文介绍了在 Arch Linux 上设置和使用 DVB-S 卡。
加载所需的内核模块
您必须查找您的特定卡的芯片组;诸如 lshwdAUR 之类的工具可能会对您有所帮助。
Pinnacle PCTV Sat
此卡使用 bt878 和 cx24110 作为芯片组。这些需要 dvb-bt8xx
和 cx24110
内核模块。
使用 modprobe 加载它们
# modprobe dvb-bt8xx # modprobe cx24110
您可以在启动时加载模块以自动化此步骤。
附加模块:S2-liplianin
内核中未包含的一些模块可从 Igor M. Liplianin 的 git 存储库 中获得
设置
首先,您必须下载并准备源代码。
$ git clone https://github.com/crazycat69/szap-s2
要克隆存储库,将需要安装 git,或者您可以从 https://github.com/crazycat69/szap-s2/archive/refs/heads/master.zip 下载源代码并手动提取它。
获取代码后,将工作目录更改为提取的文件夹
$ cd s2-liplianin
不幸的是,并非 liplianin 的所有模块都与最新的内核兼容,如果您想编译它们,会导致一些问题,因此您必须从构建过程中排除这些模块(如果您不需要它们)。您可以通过执行以下命令来选择要构建的模块
$ make config
这将创建一个配置文件:v4l/.config
。
Install
中的“模块选择规则”部分。之后,您必须构建所选模块
$ make
如果所有配置的模块都成功编译,则可以通过执行以下命令将模块安装到内核的默认模块目录:
# make install
之后,重启您的计算机。
附加固件:LibreELEC DVB-firmware
LibreELEC 项目为各种 DVB 设备(例如 TechniSat SkyStar S2)提供附加的固件文件。要使用这些固件文件,您可以安装 libreelec-dvb-firmware-gitAUR。
设置权限
要以用户身份使用您的 DVB-S 卡,请将其添加到 video
组
# gpasswd -a [username] video
扫描频道
大多数应用程序(如 szap 或 xine)都需要由 scan 创建的频道列表,scan 是 dvb-utils 的一部分。您将在名称 linuxtv-dvb-appsAUR 下找到 dvb-utils 软件包。
使用 scan
scan 需要一个频道来初始化扫描。在 /usr/share/dvb/dvb-s/
中有一些包含这些频道的文件;您将需要适合您正在观看的卫星的文件。
以下命令将扫描所有频道并将它们保存到 channels.conf
$ scan -x0 -t1 -s1 /usr/share/dvb/dvb-s/[your satellite] | tee channels.conf
- 频道文件不必称为
channels.conf
,但这样做更方便,您稍后会看到。 - 根据您的卫星天线设置,您可能需要尝试其他参数。
使用 w_scan_cpp
w_scan_cppAUR 允许自动扫描频道,而无需配置。安装它,然后发出
# w_scan_cpp -c [your country] > ~/someChannels.conf
或者,您也可以使用卫星位置(如 Astra 1 的 19.5E)进行扫描。可以按如下方式进行此类扫描
# w_scan_cpp -fs -s S19E5 > ~/someChannels.conf
您还可以添加 -X 标志以生成 tzap/czap/xine 输出,而不是 vdr 输出。
# w_scan_cpp -X -c AU > ~/AustraliaChannels.conf
要获取可以与 VLC 加载的文件,请使用 -L 标志
# w_scan_cpp -L > ~/AustraliaChannels.conf
DiSEqC 开关扫描 (又名多卫星 LNB)
如果您的 LNB 中有 DiSEqC 开关,您可以手动选择它,方法是使用 -D 选项,如下所示
# w_scan -fs -s S23E5 -D 1c > ~/someChannels.conf
上面的行应该可以工作,但并非所有找到的频道都被实际保存。下面的行对我来说工作完美
# w_scan -fs -s S23E5 -a 0 -D 1c -o 7 -e 2 > ~/someChannels.conf
切换频道
通过使用 zap(随 dvb-utils 提供),您可以切换频道,因此您不必依赖播放器的功能。
szap 需要我们之前创建的频道文件;默认情况下,它将尝试 ~/.szap/channels.conf
。您可以将 channels.conf
移动到那里,也可以使用 "-c"
命令行选项。
切换频道的工作方式如下
$ szap -r [channel]
您可以使用以下命令列出所有可用频道
$ szap -q
现在您可以使用 xine 观看流
$ xine -g stdin://mpeg2 < /dev/dvb/adapter0/dvr0
或使用 mplayer
$ mplayer /dev/dvb/adapter0/dvr0
或使用 mplayer,但直接使用 DVB
$ mplayer "dvb://RTL Television"
您可以通过运行 szap -q
找到所有频道名称(假设频道列表也位于 ~/.szap/channels.conf
中)。
软件
Kaffeine
Kaffeine 是一款非常不错的播放器;它支持 EPG、时移和录制。此外,Kaffeine 还具有内置的频道搜索功能。
导入频道列表
- Linosaw.de 为 VDR 提供 channels.conf[死链接 2021-11-07 ⓘ] 文件
- conv2conf 将这些文件转换为 kaffeine 频道列表格式
Me-tv
Me-tv 是一款简单但功能强大的 dvb 查看器,支持 EPG、录制和频道搜索,并具有轻量级 gui。
Xine
将您的频道文件复制到 ~/.xine/channels.conf
。
使用以下命令观看特定频道
$ xine dvb://[channel]
或在 Xine 中使用播放列表编辑器
参见
- 通用电视卡:Ubuntuusers.de-Wiki (德语)
- 支持的 DVB-S/DVB-S2 设备列表