Hauppauge WinTV-HVR1700电视卡调试报告
原创
©著作权归作者所有:来自51CTO博客作者mousimin的原创作品,请联系作者获取转载授权,否则将追究法律责任
Hauppauge WinTV-HVR1700电视卡调试报告
A 准备工作
1 确认linux内核支持Hauppauge WinTV-HVR1700电视卡。
下载DVB驱动文件:sudo apt-get install mercurial 回车
hg clone http://linuxtv.org/hg/v4l -dvb 回车
打开cardlist查看,发现cardlists.23885里面有对Hauppauge WinTV-HVR1700电视卡的支持,如下:
0 -> UNKNOWN/GENERIC [0070:3400]
1 -> Hauppauge WinTV-HVR1800lp [0070:7600]
2->HauppaugeWinTV-HVR1800 [0070:7800,0070:7801,0070:7809]
3 -> Hauppauge WinTV-HVR1250 [0070:7911]
4 -> DViCO FusionHDTV5 Express [18ac :d500]
5 -> Hauppauge WinTV-HVR1500Q [0070:7790,0070:7797]
6 -> Hauppauge WinTV-HVR1500 [0070:7710,0070:7717]
7 -> Hauppauge WinTV-HVR1200 [0070:71d1,0070:71d3]
8 -> Hauppauge WinTV-HVR1700 [0070:8101]
9 -> Hauppauge WinTV-HVR1400 [0070:8010]
10 -> DViCO FusionHDTV7 Dual Express [18ac :d618]
11 -> DViCO FusionHDTV DVB-T Dual Express [18ac :db78]
12 -> Leadtek Winfast PxDVR3200 H [107d:6681]
13 -> Compro VideoMate E650F [185b:e800]
14 -> TurboSight TBS 6920 [6920:8888]
15 -> TeVii S470 [d470:9022]
16 -> DVBWorld DVB-S2 2005 [0001:2005]
17 -> NetUP Dual DVB-S2 CI [1b55:2a 2c ]
18 -> Hauppauge WinTV-HVR1270 [0070:2211]
19 -> Hauppauge WinTV-HVR1275 [0070:2215]
20 -> Hauppauge WinTV-HVR1255 [0070:2251]
21 -> Hauppauge WinTV-HVR1210 [0070:2291,0070:2295]
22 -> Mygica X8506 DMB-TH [14f 1:8651]
23 -> Magic-Pro ProHDTV Extreme 2 [14f 1:8657]
24 -> Hauppauge WinTV-HVR1850 [0070:8541]
25 -> Compro VideoMate E800 [1858:e800]
26 -> Hauppauge WinTV-HVR1290 [0070:8551]
27 -> Mygica X8558 PRO DMB-TH [14f 1:8578]
28 -> LEADTEK WinFast PxTV1200 [107d:6f 22]
即确定Hauppauge WinTV-HVR1700×××芯片为cx23885,其card值为8。
另外,从网上资料可查得其tuner值为38,如下:
tuner=0 - Temic PAL (4002 FH5)
tuner=1 - Philips PAL_I (FI1246 and compatibles)
tuner=2 - Philips NTSC (FI1236,FM1236 and compatibles)
tuner=3 - Philips (SECAM+PAL_BG) (FI1216MF, FM1216MF, FR1216MF)
tuner=4 - NoTuner
tuner=5 - Philips PAL_BG (FI1216 and compatibles)
tuner=6 - Temic NTSC (4032 FY5)
tuner=7 - Temic PAL_I (4062 FY5)
tuner=8 - Temic NTSC (4036 FY5)
tuner=9 - Alps HSBH1
tuner=10 - Alps TSBE1
tuner=11 - Alps TSBB5
tuner=12 - Alps TSBE5
tuner=13 - Alps TSBC5
tuner=14 - Temic PAL_BG (4006FH5)
tuner=15 - Alps TSCH6
tuner=16 - Temic PAL_DK (4016 FY5)
tuner=17 - Philips NTSC_M (MK2)
tuner=18 - Temic PAL_I (4066 FY5)
tuner=19 - Temic PAL* auto (4006 FN5)
tuner=20 - Temic PAL_BG (4009 FR5) or PAL_I (4069 FR5)
tuner=21 - Temic NTSC (4039 FR5)
tuner=22 - Temic PAL/SECAM multi (4046 FM5)
tuner=23 - Philips PAL_DK (FI1256 and compatibles)
tuner=24 - Philips PAL/SECAM multi (FQ1216ME)
tuner=25 - LG PAL_I+FM (TAPC-I001D)
tuner=26 - LG PAL_I (TAPC-I701D)
tuner=27 - LG NTSC+FM (TPI8NSR01F )
tuner=28 - LG PAL_BG+FM (TPI8PSB01D)
tuner=29 - LG PAL_BG (TPI8PSB11D)
tuner=30 - Temic PAL* auto + FM (4009 FN5)
tuner=31 - SHARP NTSC_JP (2U5JF5540)
tuner=32 - Samsung PAL TCPM9091PD27
tuner=33 - MT20xx universal
tuner=34 - Temic PAL_BG (4106 FH5)
tuner=35 - Temic PAL_DK/SECAM_L (4012 FY5)
tuner=36 - Temic NTSC (4136 FY5)
tuner=37 - LG PAL (newer TAPC series)
tuner=38 - Philips PAL/SECAM multi (FM1216ME MK3)
tuner=39 - LG NTSC (newer TAPC series)
tuner=40 - HITACHI V7-J180AT
tuner=41 - Philips PAL_MK (FI1216 MK)
tuner=42 - Philips 1236D ATSC/NTSC daul in
tuner=43 - Philips NTSC MK3 (FM1236MK3 or FM1236/F)
tuner=44 - Philips 4 in 1 (ATI TV Wonder Pro/Conexant)
tuner=45 - Microtune 4049 FM5
tuner=46 - Panasonic VP27s/ENGE4324D
tuner=47 - LG NTSC (TAPE series)
tuner=48 - Tenna TNF 8831 BGFF)
tuner=49 - Microtune 4042 FI5 ATSC/NTSC dual in
tuner=50 - TCL 2002N
tuner=51 - Philips PAL/SECAM_D (FM 1256 I-H3)
tuner=52 - Thomson DDT 7610 (ATSC/NTSC)
tuner=53 - Philips FQ1286
tuner=54 - tda8290+75
tuner=55 - TCL 2002MB
tuner=56 - Philips PAL/SECAM multi (FQ1216AME MK4)
tuner=57 - Philips FQ1236A MK4
tuner=58 - Ymec TVision TVF-8531MF/8831MF/8731MF
tuner=59 - Ymec TVision TVF-5533MF
tuner=60 - Thomson DDT 7611 (ATSC/NTSC)
tuner=61 - Tena TNF9533-D/IF/TNF9533-B/DF
tuner=62 - Philips TEA5767HN FM Radio
tuner=63 - Philips FMD1216ME MK3 Hybrid Tuner
tuner=64 - LG TDVS-H062F /TUA6034
tuner=65 - Ymec TVF66T5-B/DFF
tuner=66 - LG NTSC (TALN mini series)
tuner=67 - Philips TD1316 Hybrid Tuner
tuner=68 - Philips TUV1236D ATSC/NTSC dual in
tuner=69 - Tena TNF 5335 MF
2 确认ubuntu能够识别电视卡
运行命令dmesg | grep "card"显示如下:
mousimin@ubuntu:~$ dmesg | grep "card"
[ 1.531310] isapnp: Scanning for PnP cards...
[ 1.939193] EISA: Detected 0 cards.
[ 15.801731] iTCO_wdt: No card detected
[ 16.103232] CORE cx23885[0]: subsystem: 0070:8101, board: Hauppauge WinTV-HVR1700 [card=8,autodetected]
[ 16.670124] cx23885[0]: cx23885 based dvb card
识别为cx23885,并且card值为8,正确。
运行命令dmesg | grep "tuner"显示如下:
mousimin@ubuntu:~$ dmesg | grep "tuner"
[ 16.555169] tveeprom 0-0050: tuner model is Philips 18271_8295 (idx 149, type 54)
idx type不知道为什么值,但这不影响后面的工作,因为后来的设置一般只用到card值。
运行lspci | grep CX23885,显示如下:
mousimin@ubuntu:~$ lspci | grep CX23885
03:00.0 Multimedia video controller: Conexant Systems, Inc. CX23885 PCI Video and Audio Decoder (rev 02)
信息正确,能够识别电视卡!
查看电视卡的设备文件,运行ls /dev/video0,显示如下:
mousimin@ubuntu:~$ ls /dev/video0
ls: 无法访问/dev/video0: 没有该文件或目录
不知道为什么原因。
B 安装TVTIME播放软件
运行命令sudo apt-get install tvtime安装,安装tvtime包会提示,第一项选PAL,第二项选China BoardCast。
安装完毕以后运行TVTIME,电机右键,显示只有五项,没有MANAGE CHANNEL,显示无法访问/dev/video0,说明系统还没有识别卡芯片。
C 修改电视卡启动参数
本芯片对应的card值应该为8,但是系统的指定不一定准确,我们通过手工配置。
方法一:终端修改:
终端输入sudo rmmod cx23885
然后输入sudo modprobe cx23885 card=8
打开tvtime,发现还是没有MANAGE CHANNEL,仍然显示无法访问/dev/video0。
方法二:直接修改电视卡启动参数即alsa-base文件。
打开alsa-base文件:sudo gedit /etc/modprobe.d/alsa-base,文件显示如下:
# autoloader aliases
install sound-slot-0 /sbin/modprobe snd-card-0
install sound-slot-1 /sbin/modprobe snd-card-1
install sound-slot-2 /sbin/modprobe snd-card-2
install sound-slot-3 /sbin/modprobe snd-card-3
install sound-slot-4 /sbin/modprobe snd-card-4
install sound-slot-5 /sbin/modprobe snd-card-5
install sound-slot-6 /sbin/modprobe snd-card-6
install sound-slot-7 /sbin/modprobe snd-card-7
# Cause optional modules to be loaded above generic modules
install snd /sbin/modprobe --ignore-install snd && { /sbin/modprobe --quiet snd-ioctl32 ; : ; }
install snd /sbin/modprobe --ignore-install snd && { /sbin/modprobe -Qb snd-seq ; }
install snd-pcm /sbin/modprobe --ignore-install snd-pcm && { /sbin/modprobe --quiet snd-pcm-oss ; : ; }
install snd-mixer /sbin/modprobe --ignore-install snd-mixer && { /sbin/modprobe --quiet snd-mixer-oss ; : ; }
install snd-seq /sbin/modprobe --ignore-install snd-seq && { /sbin/modprobe --quiet snd-seq-midi ; /sbin/modprobe --quiet snd-seq-oss ; : ; }
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi && { /sbin/modprobe --quiet snd-seq-midi ; : ; }
# Cause optional modules to be loaded above sound card driver modules
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 $CMDLINE_OPTS && { /sbin/modprobe -Qb snd-emu10k1-synth ; }
install snd-via82xx /sbin/modprobe --ignore-install snd-via82xx $CMDLINE_OPTS && { /sbin/modprobe -Qb snd-seq ; }
# Load saa7134-alsa instead of saa7134 (which gets dragged in by it anyway)
install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { /sbin/modprobe -Qb saa7134-alsa ; : ; }
# Load snd-seq for devices that don't have hardware midi;
# Ubuntu #26283, #43682, #56005; works around Ubuntu #34831 for
# non-Creative Labs PCI hardware
install snd /sbin/modprobe --ignore-install snd && { /sbin/modprobe -Qb snd-seq ; }
# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-audio index=-2
options snd-usb-usx2y index=-2
options snd-usb-caiaq index=-2
# Ubuntu #62691, enable MPU for snd-cmipci
options snd-cmipci mpu_port=0x330 fm_port=0x388
# Keep snd-pcsp from beeing loaded as first soundcard
options snd-pcsp index=-2
从网上搜过很多帖子,但大部分都是关于saa7130/7134的芯片的电视卡问题,此种电视卡只需修改install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { /sbin/modprobe -Qb saa7134-alsa ; : ; } 将card和tuner值写上即可,但是我发现这个文件没有对cx23885芯片电视卡的支持描述,从网上找了关于其他芯片的修改方法如下:即在此文件添加一句 options cx23885 card=8 但是修改后仍然不起作用。
D 总结
可以确定的是,linux内核是支持Hauppauge WinTV-HVR1700电视卡的,并且其card值为8,tuner值为38,系统能能够识别电视卡。
让我感到不解的是,网上有很多关于saa7134电视卡的问题(比如天敏大师系列),通过终端的修改方式是sudo rmmod saa7134
sudo modprobe saa7134 card=x,可是为什么对我们的cx23885不适合。另外对于电视卡启动参数的alsa-base文件为什么只有对saa7134的描述而没有对cx23885的描述。这些有待下一步再做试验。
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
HVR refresh的机制
HVR refresh的机制
hvr refresh hvr refresh 文件系统 数据 -
【翻译自HVR官方手册】HVR数据复制软件介绍与术语解释
HVR数据复制软件介绍与术语解释
hvr 数据库复制 数据 数据复制 复制 -
【Android TV 开发】安卓电视调试 ( 开启网络远程调试 )
一、硬件环境准备、二、开启开发者模式、二、查询 Android 电视局域网 IP 地址、四、开启远程连接、
TV Android TV 原力计划 android 电视盒子