나는 (지금은 약간 낡았지만 여전히 작동하는) 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 슬롯에 설치되어야 합니다. 이 작업을 수행하기 전에 전원을 끄십시오.
또한 PSU의 스위치를 끄고 케이블 자체는 연결된 상태로 두는 것을 좋아합니다. 이는 이론적으로 접지가 여전히 연결되어 있지만 전원이 들어올 수 없음을 의미합니다. 접지를 연결하면 정전기로 인해 무언가를 튀길 가능성이 줄어듭니다.
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 도구를 사용하여 TV 방송을 스캔하고 조정할 수 있습니다. 이에 대해 사용할 수 있는 많은 가이드를 반복하지는 않겠지만 여러분은여기서 시작해도 돼.
보너스: 아날로그 녹음
특히 아날로그 입력으로 녹음하고 싶었습니다. 마침내 이것을 알아내는 데 약간의 시간이 걸렸으므로 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
.
이렇게 하면 VLC에서 재생할 수 있지만 압축되지는 않는 원시 uyvy 비디오 파일이 덤프됩니다. 많은 디스크 공간을 차지합니다(저는 분당 약 1GB를 사용했습니다). 그런 다음 원하는 코덱을 사용하여 압축해야 합니다. ffmpeg를 사용하면 됩니다. 원하는 경우 mencoder를 사용하여 직접 인코딩하는 것도 가능합니다.