1. 物理安装卡

1. 物理安装卡

我有一张(现在有点旧了,但仍能用的)Hauppauge WinTV-HVR-1110 模拟/数字调谐卡。我已经好几年没用它了,但我记得在 Ubuntu 10.04 左右它在 Linux 上运行得很好。我最近把它挖了出来,想用它来通过我的旧 VCR 录制一些 VHS 磁带。

我发现了一个LinuxTV 网站上的 HVR-1110 指南。但是,它是为 14.04 编写的,并且要求运行(以及其他命令):

sudo apt-get install linux-firmware-nonfree

在 16.04 上,它对我来说不起作用。不再有包linux-firmware-nonfree。它似乎已从存储库中删除。

如何在 16.04 中安装并运行调谐卡?

答案1

我发现这一点,主要是基于上一个 LinuxTV 页面的链接但步骤有些许修改。

注意:这专门针对 HVR-1110 卡 - 但它可能适用于其他类似类型的调谐卡。

1. 物理安装卡

显然,该卡需要安装在机器的 PCI 插槽中。请确保在执行此操作之前将其关闭。

我还喜欢关闭电源开关,但将电缆本身插上。理论上,这意味着地线仍然连接,但电源无法接通。您需要连接地线,这样可以减少静电烧坏东西的机会。

2.测试saa7134驱动

saa7134 驱动程序应该会自动加载,您可以使用以下命令进行检查:

$ sudo modprobe -r saa7134

应该回馈:

modprobe: FATAL: Module saa7134 is in use.

这个错误信息表明该模块已经被加载(并且无法重新加载),表明该模块可用。

发出以下命令来验证 WinTV HVR-1110 卡已注册为设备:

$ sudo dmesg | grep "saa"

这应该给出类似的东西

[    4.061052] saa7134: saa7130/34: v4l2 driver version 0, 2, 17 loaded
...
[    4.061175] saa7134: saa7133[0]: subsystem: 0070:6700, board: Hauppauge WinTV-HVR1110 DVB-T/Hybrid [card=104,autodetected]
...
[    8.890761] saa7134 0000:06:01.0: DVB: registering adapter 0 frontend 0 (Philips TDA10046H DVB-T)...
[   14.099329] saa7134 0000:06:01.0: Direct firmware load for dvb-fe-tda10046.fw failed with error -2
[   14.099338] saa7134 0000:06:01.0: Direct firmware load for dvb-fe-tda10045.fw failed with error -2

这里我们可以看到系统正在寻找该dvb-fe-tda10046.fw文件,但是找不到它。

如果您使用的卡略有不同,上述输出可能会为您提供所需文件的线索。您可以修改以下步骤以提供所需的文件,而不是 HVR-1110 的文件。

3.下载 linux-firmware-nonfree 软件包

linux-firmware-nonfree软件包不再位于存储库中,我不太清楚为什么,但我读到一些内容表明它可能与较新的内核版本不兼容。因此,我们可能不想安装整个软件包本身。幸运的是,我们只需要一个固件文件 - 因此我们可以只安装它。

让我们从 Launchpad 存档中获取包,并提取文件dvb-fe-tda10046.fw

cd ~/Downloads
wget http://launchpadlibrarian.net/182181877/linux-firmware-nonfree_1.16_all.deb
ar p linux-firmware-nonfree_1.16_all.deb data.tar.xz | unxz | tar x ./lib/firmware/dvb-fe-tda10046.fw --strip-components=3 

现在让我们将固件文件复制到需要的位置:

sudo cp dvb-fe-tda10046.fw /lib/firmware

现在我们可以将其从下载文件夹中删除

rm dvb-fe-tda10046.fw

4. 重启

此时您需要重新启动。

备份后,您应该能够运行此程序并查看固件已加载:

$ sudo dmesg | grep "tda1004x"
[    9.134105] tda1004x: setting up plls for 48MHz sampling clock
[   11.534099] tda1004x: timeout waiting for DSP ready
[   11.594099] tda1004x: found firmware revision 0 -- invalid
[   11.594100] tda1004x: trying to boot from eeprom
[   13.982081] tda1004x: timeout waiting for DSP ready
[   14.082077] tda1004x: found firmware revision 0 -- invalid
[   14.082079] tda1004x: waiting for firmware upload...
[   33.314053] tda1004x: found firmware revision 29 -- ok

成功!现在安装卡所需的一切就完成了。现在,您可以使用任何您喜欢的 DVB 工具来扫描和调谐电视广播 - 我不会重复许多可用的指南,但您可以从这里开始

奖励:模拟录音

我特别想从模拟输入录制。我花了一点时间才最终弄明白,所以我将与大家分享使用 HVR-1110 时对我有用的命令。

首先,TVTime 对于查看调谐器的模拟输入非常有帮助,因此请使用以下命令安装它:

sudo apt install tvtime

然后您可以从 Dash 运行 TVTime,您应该能够选择“Composite1”作为输入。

为了记录,我尝试了一些方法,但发现这个效果很好:

sudo nice --10 mencoder tv:// -v -tv driver=v4l2:norm=PAL:width=720:height=576:outfmt=uyvy:device=/dev/video0:input=1:fps=25:buffersize=500:alsa:amode=1:forcechan=2:audiorate=48000:adevice=plughw.SAA7134:forceaudio:immediatemode=0 -ovc raw -vf format=uyvy -aspect 4:3 -noautoexpand -oac pcm -o /home/sean/Videos/VCR4.avi 

您需要mencoder安装。

这将转储原始的 uyvy 视频文件,该文件可在 VLC 中播放,但不会被压缩。它将占用大量磁盘空间(我每分钟使用约 1 GB)。然后您必须使用您选择的编解码器来压缩它,您可以使用 ffmpeg 来执行此操作。如果您愿意,也可以直接使用 mencoder 进行编码。

相关内容