Tvheadend

来自 ArchWiki

Tvheadend 是一个电视流媒体服务器和录制器。Tvheadend 支持 DVB-S/S2、DVB-C/C2、DVB-T、ATSC、ISDB-T、IPTV、SAT>IP 和 HDHomeRun 作为输入源。

安装

Tvheadend 可以通过 安装 tvheadendAURtvheadend-gitAUR(开发分支)来安装

HDHomeRun

HDHomeRun 支持应该在 tvheadendAURtvheadend-gitAUR 中开箱即用。

播放客户端

  • Smplayer 在您的 Web 浏览器中打开 https://127.0.0.1:9981,并从您想要观看的频道获取流,一种方法是在电子节目指南选项卡上,在详细信息下单击电视图标旁边的图标,然后单击播放节目,您的 Web 浏览器应该下载流信息,然后在 smplayer 中单击打开 URL 并粘贴流,要保存它,在电视选项下单击添加当前媒体。

使用

一旦 Tvheadend 安装完成,启动/启用 tvheadend.service

为了能够在首次运行时登录,需要 编辑 tvheadend.service添加 --firstrun (-C) 参数到 ExecStart=

/etc/systemd/system/tvheadend.service.d/override.conf
[Service]
ExecStart=
ExecStart=/usr/bin/tvheadend -f -p /var/run/tvheadend.pid -u hts -g video --firstrun
注意
  • 这将允许全局管理访问 Tvheadend 安装,直到您从 Tvheadend Web 界面中创建或编辑访问控制。当用户已存在时,此参数将被忽略。
  • tvheadendAURtvheadend-gitAUR 默认使用此标志,不应需要覆盖服务。

配置

一旦服务运行,Tvheadend 的配置将通过 localhost:9981 上的 Web 界面完成。

XMLTV

如果您想从外部来源(如 Schedules Direct)获取节目数据,那么您还应该安装 xmltvAUR

技巧与诀窍

创建 M3U 兼容的播放列表文件

要将所有频道导出为 M3U 播放列表文件,可能需要使用以下 URL [1]

http://<user>:<pass>@<ip>:9981/playlist/channels.m3u?profile=<profile>

使用硬件视频加速

当使用 tvheadend-gitAUR 时,可以启用硬件视频加速

支持取决于所选的编解码器和正在使用的视频设备的性能。

要启用硬件加速,请在编解码器配置文件页面上选中编解码器配置文件的硬件加速

启用 VA-API 支持转码

当使用 tvheadend-gitAUR 时,可以使用 VA-API 进行流的转码,支持取决于视频设备的性能和所选的编解码器。

要启用 VA-API,请创建一个新的编解码器配置文件,并在编解码器配置文件页面上选择带有 VAAPI 的编解码器。在下一个屏幕上,选中硬件加速,选择正确的设备名称,例如 i915 v1.6.0 (/dev/dri/renderD128),然后单击创建

最后,创建一个流配置文件,并将先前创建的编解码器配置文件选择为视频编解码器配置文件音频编解码器配置文件字幕编解码器配置文件取决于用户偏好,并且如前所述,取决于视频设备的支持。

要测试新创建的配置文件,您可能需要使用以下 URL

http://<user>:<pass>@<ip>:9981/stream/channelnumber/<channel>?profile=<stream-profile>

使用 journalctl 检查 Tvheadend 调试信息。错误 tvheadend[..]: transcode: no AVHWAccel 表示流配置文件未使用硬件加速,应调整编解码器配置。

将 CAPMT (Linux Network DVBAPI) 与 OSCam 一起使用

安装 oscam-gitAUR 以提供 Tvheadend 的软 CAM。有关配置详细信息,请参阅 Tvheadend 文档

重启 oscam.servicetvheadend.service 以应用更改。

故障排除

无法验证/播放流

当无法在 VLC 等视频播放器上开始播放时,请尝试使用 Matroska 作为流配置文件。

当使用 digest 作为验证类型时,可能会出现验证问题。

将此更改为纯文本和摘要以允许不支持摘要协议的浏览器/播放器。

德国的 DVB-T2 HD

德国广播的 DVB-T2 HD 是官方标准的偏差,因为它使用了更现代的 H.265 编解码器。Tvheadend 有时无法自动检测频道。您首先需要运行配置向导,选择无预定义复用器,仅选择--Generic--: auto-Default。搜索运行后,保存并转到配置DVB 输入复用器。选择所有列出的复用器(可能在两个页面上,可以通过 Shift 键批量选择),并将它们从 DVB-T 编辑为 DVB-T2 – 您需要在编辑对话框中选中传输系统复选框。然后转到网络,选择 DVB-T 条目并单击强制扫描。通过复用器选项卡观察重新扫描,因为以前的几个“失败”结果变为“确定”。如果这没有发生,请确保您拥有 DVB-T2 接收器所需的固件 blob,例如 来自 Hauppauge,首先手动安装,然后重新启动系统。这将使您在服务下获得频道,您可以使用这些频道创建未加密电视频道的实际频道列表。单击“映射选定项”“映射选定服务”。现在,频道应该出现在选项卡“频道/EPG”“频道”中。不久之后,EPG 视图应该在选项卡“电子节目指南”中填充。