以Fedora core 8的預設環境中,直接接上Logitech QuickCam
Messenger
(046d:08f0)是OK的。在Ekiga丶Cheese等一些軟體上是可以直接使用的,但是偏偏在skype下就是無法使用。在Skype的Linux版本官方論壇中
有提到“stv680/sqcam/quickcam_messenger/some other cameras are not
currently unsupported due to them using RGB/MJPEG image formats for
streaming.” QuickCam Messenger無法被支援的原因是因為他使用RGB/MJPEG的格式所導致。同時在這句話的後面有提到“可能”的解決方法。可以試看看,如果真的不行通的話,再往下
看。
但是我最先找到的方法卻是另一個,在Kuhrti
Brothers的Blog中提到另一個解決方法,但這兩個方法在解決這個問題的作法上是大同小異的,只是過程看起來比較複雜。不知道什麼原因
Kuhrti Brothers上的這篇文章已經不見了,僅能透過Google的快取頁面來讀取。
這裡提到的作法似乎是Ubuntu或是Debian系列的步驟,只要稍微改一下就可以應用在Fedora上了。以下是在Fedora下的步驟。(要有
root的權限才能完成)
先使用yum安裝上幾個套件。
xawtv
kdetv
kernel-headers
subversion
把QuickCam接上USB,系統會自動掛上quickcam_messenger模組,使用“lsmod | grep
quickcam”可以看到系統是否已將模組掛載完畢,系統掛上後,使用以下指令將quickcam_messenger模組移掉。
# rmmod quickcam_messenger
到http://home.mag.cx/messenger這
裡下載驅動程式,可以的話當然是下載最新的囉!
我下載到最新的版本是1.8(qc-usb-messenger-1.8.tar.gz)。
下載完成後解開壓縮檔。使用console視窗進到解開的原始碼目錄中,執行quickcam.sh
# ./quickcam.sh
接下來就根據一步步的說明來完成編譯驅動程式所需要的步驟。在最後完成的時候,他會呼叫xawtv來使用webcam,如果可以看得到影像的話,那就成功
一大半囉!
接下來就要幫/dev/video0搬家了。把video0改成video1,video0要用程式虛擬的,簡單的說就是把webcam的訊號先經過處理
後再透過虛擬的video0餵給skype,這樣就可以正常使用了。
# mv /dev/video0 /dev/video1
每次使用skype前都得做這個動作,如果不想每次重複的話,可以寫成script,或是改udev的規則,改udev的規則,方法就是到
/etc/udev/rules.d/目錄下找一個檔案名稱為99-perso.rules的檔案,如果沒有就自行新增,在這個檔案裡加入以下的內容。
KERNEL=="video0", ATTR{name}=="QuickCam USB", NAME="video1"
一旦完成這個內容,下次開機以後,只要你的quickcam接上USB,就會自動指定到video1去了。不過我不太喜歡這麼做,因為這麼一來,一些預設
使用/dev/video0的軟體像是cheese,就會找不到視訊來源,所以我是要用skype時再改的。
接下來再用yum安裝gstreamer-devel和pkgconfig兩樣套件,至於套件的相依性就交給yum去處理,這樣會比較容易,如果系統原本
就有gstreamer-devel和pkgconfig的話,就不用再安裝了。
下一步是取得gstfakevideo的原始碼,請使用以下指令
# svn checkout http://gstfakevideo.googlecode.com/svn/trunk/ gstfakevideo
# cd gstfakevideo
# make
# make install
如果你在make時就發現有很多的警告和錯誤的話,極有可能是因為該裝的套件沒有安裝,請仔細閱讀警告和錯誤的說明。
編譯完成後,就完成90%了。最後一步來了,就是做一個script檔。以後呼叫skype時就要透過這隻script檔案,檔案隨便取,為了方便起見,
我還是把他命名為skype.sh,免得弄混了。內容如下。
#!/bin/sh
qcset /dev/video1 compat=dblbuf
gstfakevideo v4lsrc device=/dev/video1 ! ffmpegcolorspace
記得要給這隻檔案執行的權限哦!
# chmod +x skype.sh
終於到了要看成果的時候了,執行skype.sh吧!
# ./skype.sh
接下來就是到skype中的設定去看看視訊是否正常運作。這樣就不會出現一按Test,CPU馬上就變100%,被咬住了。
總算可以用了,天呀!感謝各位先進不停的提供了這麼多的資料和文件,讓我們這些沒能力改寫系統的人能使用這些目前還沒被支援的東西。
話又說回來,還是希望日後能把這些東西都做進預設安裝的系統裡,就不用再這麼辛苦了。
自由軟體萬歲!!!!!!!!!
[1] “Skype 2.0 beta for Linux - Skype Community”; http://forum.skype.com/index.php?showtopic=101297.
[2] “Skype video hijacker - Skype Community”; http://forum.skype.com/index.php?showtopic=102838.
[3] “Kuhrti Brothers » Blog Archive » QuickCam, Linux and Skype - it
works!”; http://209.85.141.104/search?q=cache:krMDIqgU7kwJ:www.kuhrti.de/blog/index.php/2008/04/webcam-linux-and-skype-it-works/+linux+skype+046d:08f0&hl=zh-TW&ct=clnk&cd=3&gl=tw.