日期:2011-07-04  浏览次数:20819 次


.6.3+Radeon8500+BT878+XW4.3+MPlayer 视频捕捉

经过两天的摸索,终于让我的Linux屏幕上显示出了我的形象,与网友们一起分享我的快乐。
1)软硬件配置:PIII800/384M/I815/Radeon8500,视频卡为:通视二合一股票卡(BT878捕捉芯片),摄像头为模拟的,通过视频线进股票卡。系统软件:RedHat AS 3,她自带的XFree86-4.3.0。
2)准备内核:2.6.3 下载:http://www.kernel.org
RedHat AS 3自带的2.4.21-4.EL内核源码我还没有成功编译完成过 :cry: ,它没有给我编好视频支持,只好用新的。
a)先要编译安装module-init-tools-3.0-pre10.tar.gz,否则以下内容不能以横块方式编译,只能编入内核。
b)有效Video For Linux (我是编入内核)
c)有效BT848 Video For Linux(我是设为模块)
没错是848,878与848兼容。还有一个Conexant 2388x (bt878 successor) support 我没试过。


d)编译安装。别问我如何做,去看别人的文章。
3)安装ATI的Xwindow驱动fglrx-glc22-4.3.0-3.7.0.i386.rpm
见鬼不记得在那里下的了,应该在ATI网站上有。
安装前要先卸掉XFree86自带的GL驱动。安装它时注意看屏幕上的提示,如果安装后就fglrxconfig也可以用,但没用3D加速。一定要在安装后进入到/lib/modules/fglrx/build_mod目录中执行./make.sh,然后到/lib/modules/fglrx执行make_install.sh。最后在执行fglrxconfig配置X。

4)配置启动参数

a)在/etc/rc.d/rc.sysinit中最前面加入以下

# 加载Radeon驱动
/sbin/modprobe fglrx
# 加载bttv(848/878)驱动
/sbin/modprobe bttv pll=1
#如果Video For Linux未编入内核加下一句
#/sbin/modprobe videodev

注意那个pll=1,这该死的参数折腾了我半天,默认是pll=0,这样的话捕捉时要用PALNC制式(奇怪!!),而且还只是黑白的,否则就是花屏。

b)修改/etc/X11/XF86Config-4 在Section "Module"内加入一句
Load "v4l"

c)重启后
检查dmesg是否有bttv的设置提示,我的如下
bttv: driver version 0.9.12 loaded
bttv: using 8 buffers with 2080k (520 pages) each for capture
bttv: Bt8xx card found (0).
bttv0: Bt878 (rev 17) at 0000:02:04.0, irq: 10, latency: 32, mmio: 0xe0000000
bttv0: using: *** UNKNOWN/GENERIC *** [card=0,autodetected]
bttv0: gpio: en=00000000, out=00000000 in=00ffffff [init]
bttv: readee error
bttv0: using tuner=-1
bttv0: i2c: checking for MSP34xx @ 0x80... not found
bttv0: i2c: checking for TDA9875 @ 0xb0... not found
bttv0: i2c: checking for TDA7432 @ 0x8a... not found
bttv0: registered device video0
bttv0: registered device vbi0
bttv0: PLL: 28636363 => 35468950 .. ok

检查/var/log/XFree86.0.log是否成功加载v4l
(II) LoadModule: "v4l"