[转Linuxsir]在Breezy下使用摄像头及美化aMSN

游戏讨论
回复
头像
oneleaf
论坛管理员
帖子: 10441
注册时间: 2005-03-27 0:06
系统: Ubuntu 12.04

[转Linuxsir]在Breezy下使用摄像头及美化aMSN

#1

帖子 oneleaf » 2005-11-05 21:53

来源: http://www.linuxsir.org/bbs/showthread. ... ost1312312
作者: andyevans


图片

一直对在Linux下怎样视频聊天比较困惑,装过一次aMSN,但一用摄像头就死,而且aMSN基于Tcl/Tk8.4,不支持字体的AA,于是十分难看今天看了UbuntuForums上的几篇HOWTO,终于弄好了我的Webcam,也让aMSN支持AA了。下面把主要步骤翻译一下。

主要参考资料:
[HOWTO] Using spca5xx webcam driver
HOW-TO: De-uglify aMSN
HOWTO: Install & run latest CVS amsn

使摄像头正常工作
  1. 先在http://mxhaard.free.fr/download.html下载最新的spac5xx的包,写这篇时我所用的是0.57.04: spca5xx-20051101.tar.gz,解压:

    代码: 全选

    ~$ tar xzvf spca5xx-20051101.tar.gz
  2. 检查系统配置

    代码: 全选

    $ cat /proc/version
    我得到如下输出:

    代码: 全选

    Linux version 2.6.12-9-686 (buildd@rothera) (gcc version 3.4.5 20050809 (prerelease) (Ubuntu 3.4.4-6ubuntu8)) #1 Mon Oct 10 13:25:32 BST 2005
    我是内核版本是2.6.12-9-686,并且是用gcc3.4编译的。于是

    代码: 全选

    $ sudo apt-get install linux-headers-2.6.12-9-686 build-essential gcc-3.4
  3. 删除旧的spca5xx模块

    代码: 全选

    $ cd /lib/modules/2.6.12-9-386/kernel/drivers/usb/media
    $ sudo mv spca5xx spca5xx.bak
    $ sudo lsmod | grep spca5xx
    如果输出中有“东西”,说明当前还加载了旧的模块,

    代码: 全选

    $ sudo modprobe -r spca5xx
  4. 编译安装spca5xx

    代码: 全选

    $ cd ~/spca5xx-20051101
    $ MAKEFLAGS="CC=gcc-3.4" make
    $ sudo make install
    重启,此时摄像头可以正常使用了,比如通过Gnomemeeting等软件。http://mxhaard.free.fr/download.html处也有两个相关的应用软件,spacgui和spcaview,有兴趣的朋友自己编译试试。
安装Tcl/Tk 8.5 CVS源码
  1. 准备

    代码: 全选

    $ sudo apt-get build-dep tcl8.4 tk8.4 cvs
    $ sudo apt-get install libxft-dev
  2. 下载Tcl/Tk的CVS文件

    代码: 全选

    $ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/tcl login 
    <在提示密码时直接回车>
    $ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/tcl co -P tcl
    
    cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/tktoolkit login 
    <在提示密码时直接回车>
    cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/tktoolkit co -P tk
    
    经过一段时间的等待(视网速而定,我这里等了大概有半个多小时),当前目录下会增加两个文件夹,tcl和tk
  3. 编译和安装Tcl/Tk

    代码: 全选

    $ cd tcl/unix
    $ ./configure --prefix=/usr/local --includedir=/usr/local/include/tcl8.5 --enable-shared --enable-threads --enable-64bit --mandir=/usr/local/share/man --enable-man-symlinks --enable-man-compression=gzip && make CFLAGS="-g -O2 -D_REENTRANT"
    $ sudo make install
    
    $ cd tk/unix
    $ ./configure --prefix=/usr/local --includedir=/usr/local/include/tcl8.5 --with-tcl=/usr/local/lib --enable-shared --enable-threads --enable-64bit --enable-man-symlinks --enable-man-compression=gzip --enable-xft && make CFLAGS="-g -O2 -D_REENTRANT"
    $ sudo make install
    
安装CVS aMSN
  1. 准备

    代码: 全选

    $ sudo apt-get install imlib11-dev esound-clients
  2. 下载CVS源码
    用你喜欢的编辑器(gedit/kate/vi ...)编辑一个自动脚本:

    代码: 全选

    $ vi ~/amsn-installer
    其内容如下:

    代码: 全选

    #!/bin/sh
    ###########################################
    # Install aMSN CVS version & themes       #
    #					  #
    # Require : tar, wget, unzip		  #
    #					  #
    # Description : Easy install aMSN CVS &   #
    #		new themes		  #
    #					  #
    # Infos : routes-linux.scooba.org	  #
    # Author : mazzaru[AT]wanadoo[dot]fr	  #
    ###########################################
    
    VERSION="1.3"
    #--------COLOR-------------------
    COLOROFF="\033[1;0m"
    GREENCOLOR="\033[1;32m"
    REDCOLOR="\033[1;31m" 
    LILACCOLOR="\033[1;35m" 
    #--------PATH--------------------
    WGET=`which wget`
    UNZIP=`which unzip`
    SKINS_PATH=~/.amsn/skins/
    BIN_PATH=~/msn/amsn
    QUIT_MESS=`echo ""
    echo -e "Binary amsn locate at : ${GREENCOLOR}${BIN_PATH}${COLOROFF}"`
    #-------Themes url---------------
    URL_TUX=http://aleron.dl.sourceforge.net/sourceforge/amsn/Tux.zip
    URL_MSN=http://heanet.dl.sourceforge.net/sourceforge/amsn/MSN.zip
    URL_FLUOX=http://heanet.dl.sourceforge.net/sourceforge/amsn/Fluox.zip
    URL_AMAC=http://heanet.dl.sourceforge.net/sourceforge/amsn/aMac.zip
    URL_CRYSTOLA=http://heanet.dl.sourceforge.net/sourceforge/amsn/crystola.zip
    #---------------------------
    URL_PING=google.com
    URL_AMSN_CVS=http://amsn.sourceforge.net/amsn_cvs.tar.gz
    HEADER=`clear 
    echo -e "\t ${LILACCOLOR}+------------------------------+"
    echo -e "\t |   ${GREENCOLOR}aMSN Install script ${VERSION} ${LILACCOLOR}   |" 
    echo -e "\t ${LILACCOLOR}+------------------------------+"
    echo -e "${COLOROFF}"`
    #--------END----------------
    
    #Display a warning message for newbies, usually login always as root.
    if [ $UID -eq 0 ]
    then
    	echo""
    	echo -e "${REDCOLOR}Don't run this script as root !! ;)${COLOROFF}"
    	echo -e "\a"
    	exit 1 
    fi
    
    ping -c 2 ${URL_PING} > /dev/null
    if [ "$?" -ne "0" ]
    then
    	ALERT=`echo -e "${REDCOLOR}Bad Internet Connection${COLOROFF}"`
    fi
    
    FUNC_INSTALL_THEMES(){
    
    while [ ! -z $1 ]
    do
    	ARCHIVE=`echo $1 | awk -F/ '{print $6}'`
    	DIR=`echo $ARCHIVE | awk -F. '{print $1}'`
    	if [ -e ${SKINS_PATH}${DIR} ]
    	then
    		echo -e "${DIR}........${LILACCOLOR}already install${COLOROFF}"
    		shift
    	else
    		${WGET} -q $1
    		${UNZIP} ${ARCHIVE} > /dev/null
    		rm -f ${ARCHIVE}*
    		mv ${DIR} ${SKINS_PATH}
    		echo -e "${DIR}........${GREENCOLOR}install${COLOROFF}"
    		shift
    	fi
    done
    }
    
    FUNC_DEPENDS(){
    
    TCL=`locate libtcl8`
    TK=`locate libtk8`
    
    if [ ! -e ${TCL} ]
    then
    	ALERT=`echo -e "${REDCOLOR}Error depedencies : you must install tcl >= 8.3 first. ${COLOROFF}"
    	echo "With Mandrake (root) : urpmi tcl"
    	echo "With Debian (root) : apt-get install tcl"
    	echo ""`
    	FUNC_MAIN
    fi
    if [ ! -e ${TK} ]
    then
    	ALERT=`echo -e "${ALERT}"
    	echo ""
    	echo -e "${REDCOLOR}Error depedencies : you must install tk >= 8.3 first. ${COLOROFF}"
    	echo "With Mandrake (root) : urpmi tk"
    	echo "With Debian (root) : apt-get install tk"
    	echo ""`
    	FUNC_MAIN
    fi
    FUNC_INSTALL_AMSN
    
    }
    
    
    
    FUNC_TEST_AMSN(){
    
    if [ ! -e ~/msn ]
    then
    		ALERT=`echo -e "$HOME/msn ${REDCOLOR}not exist, install aMSN first${COLOROFF}"`
    		FUNC_MAIN
    else
    	echo "Waiting..."
    	echo ""
    	FUNC_INSTALL_THEMES $URL_TUX $URL_MSN $URL_FLUOX $URL_AMAC $URL_CRYSTOLA
    	echo ""
    	echo ""
    	echo -en "Run amsn just for testing ? (y/n) [ ${GREENCOLOR}default : n${COLOROFF} ] : "
    	read ON 
    		case $ON in
    			[yY]*)FUNC_RUN_AMSN;;
    			    *)echo "${QUIT_MESS}" ; exit 0;;
    		esac
    fi
    }
    
    FUNC_RUN_AMSN(){
    
    if [ ! -e ${BIN_PATH} ]
    then
    	ALERT=`echo -e "${HOME}/msn ${REDCOLOR}not exist, install aMSN first${COLOROFF}"`
    	FUNC_MAIN
    else
    	${BIN_PATH}
    	FUNC_MAIN
    fi
    
    }
    
    FUNC_INSTALL_AMSN(){
    
    cd ~/
    echo ""
    echo "aMSN CVS downloading please wait..."
    # -q = mode quiet (cf. man wget)
    ${WGET} -q ${URL_AMSN_CVS} 
    echo ""
    echo "Installing aMSN CVS version"
    tar zxf amsn_cvs.tar.gz	-C ~/		#Extract without verbose mode (-v)
    rm -f ~/amsn_cvs.tar.gz*		#Archive can be removed
    mkdir -p ${SKINS_PATH}
    echo ""
    echo -ne "Install correct, would you like install themes ? (y/n) [ ${GREENCOLOR}default : n${COLOROFF} ] : "
    read ON
    
    case $ON in
    	[yY]*)FUNC_TEST_AMSN;;
    	    *)echo "${QUIT_MESS}" ; exit 0;;
    esac
    }
    
    FUNC_MAIN(){
    
    echo -e "${HEADER}"
    echo "This script installing aMSN and/or themes : "
    echo ""
    echo "${ALERT}"
    echo ""
    select CHOIX in "Install themes only" "Install the last aMSN version" "Run aMSN" "Quit"
    do
    	case $REPLY in
    		1)FUNC_TEST_AMSN;;
    		2)FUNC_DEPENDS;;
    		3)FUNC_RUN_AMSN;;
    		*)exit 0;;
    	esac
    done
    }
    
    #script start here (call FUNC_MAIN function)
    FUNC_MAIN
    
    #######
    # EOF #
    #######
    
    为该脚本增加可执行属性并运行:

    代码: 全选

    $ chmod +x ~/amsn-installer
    $ ./amsn-installer
    
    出现提示后选择“2”,之后除了在提示是否下载额外的皮肤时选Y外(当然你不喜欢下载可以不下),其它选项都按默认的来,完成后当前文件夹下会出来名为msn的新文件夹。

    另外这里有一个按照Gaim修改的新皮肤。下载后解压到~/.amsn/skins/下就行了。
  3. 编译安装

    代码: 全选

    $ cd ~/msn
    $ ./configure ./configure --with-tcl=/usr/local/lib --with-tk=/usr/local/lib --prefix=/usr/local
    $ make
    $ sudo make install
    
  4. 启动
    aMSN应该这栏启动:

    代码: 全选

    /usr/local/bin/wish8.5 /usr/local/share/amsn/amsn
    为了方便,可以编辑一个小脚本,比如叫myamsn

    代码: 全选

    $ vi ~/myamsn
    内容为:

    代码: 全选

    #!/bin/sh
    /usr/local/bin/wish8.5 /usr/local/share/amsn/amsn
    
    $ chmod 755 ~/myamsn
    $ sudo mv ~/myamsn /usr/bin/
    
    当然,你应该考虑在应用程序菜单中建立一个启动项。
  5. aMSN的一些设置
    1. 字体:菜单Tools>Preferences, 选项卡Appearance里点Change font按钮修改全局字体,比如用Bitstream Vera Sans; 在Pesonal选项卡中My message text中的Change font按钮修改聊天窗口字体。
    2. 设置外部调用程序:菜单Tools>Preferences Other选项卡处设置:
      - Browser = "firefox $url"
      - File Manager = "nautilus $location"
      - Open file command: "gnome-open $file"
    3. 其它的设置就看个人喜好了(比如换个皮肤什么的……)
头像
snonow
帖子: 251
注册时间: 2005-09-08 9:01

#2

帖子 snonow » 2005-11-06 2:00

软件中文乱码怎么办?改编码,字体都无效
用户名中文倒可以正常显示,WHY?
BenQ P41-C30
\找不到64位软件已经是历史了
头像
catinsnow
帖子: 773
注册时间: 2005-08-02 7:23
来自: 上海

#3

帖子 catinsnow » 2005-11-07 18:25

按上面的做的?我的没有问题,只选了一下语言,看不好看,又调了一下字体.会不会你安装了源里的tk/tcl?
只是不能输入中文.用来视频还是不错的.
Ubuntu Intrepid
#P4 2.4
P4 2.4C
#1024MB
2048MB
#120G
500G+120G
Nvidia FX5700
#ATI9100 --拆了,受不了ATI的驱动.
yongyi
帖子: 3025
注册时间: 2005-05-07 23:57
联系:

#4

帖子 yongyi » 2005-11-07 18:31

好东东啊!
独自看一看大海
总想起身边走在路上的朋友
Lenovo E290-420[Celeron-M420/256M/60G/Intel GMA950]
头像
alex_3515
帖子: 94
注册时间: 2005-09-01 9:45
联系:

#5

帖子 alex_3515 » 2005-11-08 8:50

辛苦了,解决了一个大问题
*** 物量无穷寸无止 ***
头像
kopera
帖子: 52
注册时间: 2005-06-14 1:25
来自: 南华大学

#6

帖子 kopera » 2005-11-08 14:24

好东西呀!正在为Linux下视频发愁呢
RedHat玩的久了,突然Ubuntu的魅力……
我就选它了!
我Down、Dwon……
不去网上订,为Ubuntu尽一份力!
头像
RGVR250
帖子: 49
注册时间: 2005-10-27 19:41

#7

帖子 RGVR250 » 2005-11-30 19:30

sudo apt-get install linux-headers-2.6.12-10-686 build-essential gcc-3.4之后

W: 无法获取源软件包列表 http://ubuntu.cn99.com breezy/main Packages (/var/lib/apt/lists/ubuntu.cn99.com_ubuntu-cn_dists_breezy_main_binary-i386_Packages) 的状态 - stat (2 没有那个文件或目录)
W: 无法获取源软件包列表 http://ubuntu.cn99.com breezy/restricted Packages (/var/lib/apt/lists/ubuntu.cn99.com_ubuntu-cn_dists_breezy_restricted_binary-i386_Packages) 的状态 - stat (2 没有那个文件或目录)
W: 无法获取源软件包列表 http://ubuntu.cn99.com breezy/universe Packages (/var/lib/apt/lists/ubuntu.cn99.com_ubuntu-cn_dists_breezy_universe_binary-i386_Packages) 的状态 - stat (2 没有那个文件或目录)
W: 无法获取源软件包列表 http://ubuntu.cn99.com breezy/multiverse Packages (/var/lib/apt/lists/ubuntu.cn99.com_ubuntu-cn_dists_breezy_multiverse_binary-i386_Packages) 的状态 - stat (2 没有那个文件或目录)
W: 无法获取源软件包列表 http://ubuntu.cn99.com breezy-extras/main Packages (/var/lib/apt/lists/ubuntu.cn99.com_backports_dists_breezy-extras_main_binary-i386_Packages) 的状态 - stat (2 没有那个文件或目录)
W: 无法获取源软件包列表 http://ubuntu.cn99.com breezy-extras/restricted Packages (/var/lib/apt/lists/ubuntu.cn99.com_backports_dists_breezy-extras_restricted_binary-i386_Packages) 的状态 - stat (2 没有那个文件或目录)
W: 无法获取源软件包列表 http://ubuntu.cn99.com breezy-extras/universe Packages (/var/lib/apt/lists/ubuntu.cn99.com_backports_dists_breezy-extras_universe_binary-i386_Packages) 的状态 - stat (2 没有那个文件或目录)
W: 无法获取源软件包列表 http://ubuntu.cn99.com breezy-extras/multiverse Packages (/var/lib/apt/lists/ubuntu.cn99.com_backports_dists_breezy-extras_multiverse_binary-i386_Packages) 的状态 - stat (2 没有那个文件或目录)
W: 您可能需要运行 apt-get update 来解决这些问题

这是哪儿出了什么问题???
如果用的“sudo apt-get install linux-headers-2.6.12-9-686 build-essential gcc-3.4”会有什么影响吗?我的是linux-headers-2.6.12-10-686 !
confucius
帖子: 2
注册时间: 2006-05-18 15:57

#8

帖子 confucius » 2006-05-21 12:33

安装驱动,之前一切步骤正常,
到了sudo make install的时候
就出现bash: make: command not found
无法继续,楼主指点一下.
头像
mikel
帖子: 56
注册时间: 2007-02-12 21:46

#9

帖子 mikel » 2007-02-24 1:37

牛比阿,照楼主的,立马驱动起来了!其他的慢慢来把! :lol:

可是颜色不对阿!分辨率,采样率等没法调!
Ubuntu! 享受折腾的快感:)

电脑配置:
Dell Inspiron E1705
Core Duo 1.6G
4096 MB DDR2 Memory
120GB SATA HDD
Intel 945GM Video Card
Atheros AR242x Wireless card.
回复