Logitech QuickCam Express / Dexxa Webcams und baugleiche am Asus Eee PC einrichten und mit Skype nutzen
Beschreibung der Treiber-Einrichtung für Logitech QuickCamExpress und baugleiche
(ältere) Webcams mit USB IDs 0x046d:0x0840, 0x046d:0x0850 und 0x046d:0x0850 z.B.
LogitechQuickcam Express (alt) oder Dexxa Webcam.
Inhalt
Download und Installation des Treibers
Die Installation (und aus der Download) erfolgt auf der Konsole, deshalb öffnen wir zuerst mit:
[Strg] + [Alt] + [T] unser Terminal. Wenn alles klappt grüsst uns ein
grünes /home/usr> .
Als nächstes Laden wir uns das Debian-Paket herunter:
wget http://www.to-st.de/download/linux/eeepc/qc-usb-modules-2.6.21.4-eeepc_20080312-1_i386.deb
Die Installation müssen wir mit Superuser-Rechten (also als root ) durchführen:
sudo su
Wenn dieses klappt, ändert sich übrigens der Prompt (am Anfang steht jetzt asus-....) ;)
Danach installieren wir mit dpkg das Pakete:
dpkg -i qc-usb-modules-2.6.21.4-eeepc_20080312-1_i386.deb
Danach befindet sich das Kernel-Modul quickcam.ko im Verzeichnis
/lib/modules/2.6.21.4-eeepc/qc-usb/.
Testen der Webcam
Zuerst müssen wir die Webcam anstecken. Wird diese jetzt (hoffentlich) erkannt erscheint
in den Kernelmeldungen (Anzeige mittels dmesg, Ausgabe in diesem Beispiel ist vom
einem Eee PC mit eingebauter Webcam, deshalb erscheint die QuickCam als zweite Kamera an
/dev/video1):
asus-1234:/home/user>dmesg
...
quickcam: QuickCam USB camera found (driver version QuickCam
quickcam: USB 0.6.6 $Date: 2006/11/04 08:38:14 $)
quickcam: Kernel:2.6.21.4-eeepc bus:2 class:FF subclass:FF vendor:046D product:0870
quickcam: Sensor HDCS-1000/1100 detected
quickcam: Registered device: /dev/video1
usbcore: registered new interface driver quickcam
...
Man kann jetzt einen ersten kleinen Test mit mplayer durchführen, indem man
einfach das Webcambild anzeigt:
mplayer tv:// \
-tv driver=v4l:device=/dev/video1:width=352:height=288:outfmt=rgb24:noaudio -flip
Wer das ganze nicht abtippen will, findest diesen kleinen Test als Shellskript unter
http://www.to-st.de/download/linux/eeepc/qc-usb-test.sh.
Das kleine Skript wählt auch gleich aus, an welchem Device die Webcam angeschlossen ist,
d.h. /dev/video0 oder /dev/video1
Webcam mit Webcam-Programm des Eee PC nutzen
Auf dem Asus Eee PC ist bereits eine Webcam-Apllikation vorinstalliert, die
auf den Namen ucview hört und im Easy Mode im Reiter "Spielen"
unter "Webkamera" versteckt.
Sofern die QuickCam eingesteckt ist, wird sie auch von ucview erkannt,
wobei beim Vorhandensein mehrerer Kamera - also Eee PC mit eingebauter Webcam - zumeist erst
ein Dialog aufgeht, in dem man die Kamera auswählen kann und im Falle der QuickCam
auch Einstellungen vornimmt.
Also ggf. die richtige Webcam, hier also QuickCam, auswählen und noch Einstellen
welches Videoformat wir möchten. Sinnvoll sind dabei:
- Graustufen: Grey (mono 8pp)
- Echtfarben: BGR 24bpp
Mit den richtigen Einstellungen (Schärfe muss man noch von Hand einstellen)
sieht man das ein Graustufen- oder Farb-Bild der Kamera:
Mit Hilfe des Programms kann man auch Bilder speichern oder kleine Videos aufnehmen.
Problemfall: Skype
Leider macht Skype kleine Probleme mit diesen Webcams, da es darauf besteht, als
Videoformat YUV geliefert zu bekommen. Stellt man YUV als Videoformat ein,
so sieht das Bild in etwa so aus (verschwommen und verzerrt, falsche Farben):
Mit Hilfe eines kleinen Programm namens gstfakevideo (früher skype-video-hijacker)
können wir dies aber beheben ... auf gehts!
Weitere Software: qc-usb-tools, gstfakevideo und qcskype
Damit wir die QuickCam Express / Dexxas Webcam mit Skype zum Leben erwecken, benötigen
wir noch einige Software. Da ich diese eh kompilieren musste habe ich sie wieder als
Debian-Paket bereitsgestellt.
Im Detail sind dies:
- qc-usb-tools
- hier ist das Programm qcset enthalten, mit dem man den geladenen Treiber,
das Kernel-Modul quickcam.ko konfigurieren kann
- gstfakevideo
- gstfakevideo (früher skype-video-hijacker) ist ein Programm, welches
für Skype (und anderen Programme) einen passenden Videostream bereitstellt, in dem
der Videostream der Kamera entsprechend verändert wird (gstreamer-tools) und
virtuell auf /dev/video0 wieder ausgegeben wird (Pipe)
- scskype.sh
- dieses kleine Shellskript übernimmt den Aufruf von gstfakevideo und verschiebt
ggf. das Videodevice (da es nicht auf /dev/video0 liegen darf) und stellt es
nach Beendigung von Skype dann ggf. auch wieder her.
Als erstes Laden wir uns die Debian-Pakete herunter:
wget http://www.to-st.de/download/linux/eeepc/qc-usb-tools_0.6.6-1_i386.deb
wget http://www.to-st.de/download/linux/eeepc/qcskype_0.1-1_i386.deb
wget http://www.to-st.de/download/linux/eeepc/gstfakevideo_0.1_i386.deb
Danach installieren wir mit dpkg wieder die Pakete, wobei
für gstfakevideo noch einige andere Pakete installiert werden müssen.
Hierzu sollte folgendes Repository in der /etc/apt/sources.list vorhanden sein:
deb http://xnv4.xandros.com/xs2.0/upkg-srv2 etch main contrib non-free
Nun also die Paket-Installation, wir beginnen mit den qc-usb-tools:
dpkg -i qc-usb-tools_0.6.6-1_i386.deb
Danach installieren wir gstfakevideo:
apt-get install libxml2
apt-get install libgstreamer0.10-0 gstreamer0.10-tools gstreamer0.10-plugins-base
apt-get install libgstreamer0.10-0
dpkg -i gstfakevideo_0.1_i386.deb
Und zu guter letzt noch den kleinen Wrapper zum Aufruf von Skype:
dpkg -i qcskype_0.1-1_i386.deb
Skype mit der QuickCam Express / Dexxa mittels gstfakevideo und qcskype-Wrapper nutzen
Sofern die Installation geklappt hat, sollte es nun kein Problem sein, Skype
über den Wrapper zu starten. Hierzu in der Konsole (Terminal/Shell) einfach qcskype.sh
aufrufen:
qcskype.sh
Hinweise:
- Skype muss über den Wrapper gestartet werden, der dieser ja gstfakevideo startet, welches den passenden Stream bereitstellt
- natürlich nicht als root sondern als normaler Benutzer user, also
ggf. mit exit von root zu user wechseln oder neues Terminal aufmachen.
Wenn der Aufruf ds Wrapper klappt, sollte es im Terminal (Shell) ungefähr so ausschauen:
Schauen wir und das ganze nun in Skype an. Hierzu gehen wir erstmal in die "Optionen":
... dort dann unter Video ...
Wir sehen jetzt als Kamera zum Auswählen GStreamer fake video (/dev/video0).
Das Video-Device hat immer die Nummer 0, da es gstfakevideo "hijackt" . Ist dort bereits
eine Kamera belegt, kann diese in Skype nicht genutzt werden; die QuickCam wird deshalb auch vom
qcskyp-Wrapper ggf. verschoben.
Nun einfach mal auf "Test" im Vorschaufenster klicken:
Voila! There we go!
Links
Treiber (Debian-Pakete, Sourcen)
- http://www.to-st.de/download/linux/eeepc/qc-usb-modules-2.6.21.4-eeepc_20080312-1_i386.deb
- vorkompiliertes Kernelmodul quickcom.ko als Debian-Paket für Eee PC Kernel 2.6.21.4-eeepc
- http://qce-ga.sourceforge.net/
- Home des Treiberprojektes "Linux Driver for Quickcam USB cameras" mit Sourcen des Treibers
gstfakevideo / ksype-video-hijacker
- http://gstfakevideo.googlecode.com/svn/trunk/
- gstfakevideo SVN auf googlecode.com (zum auschecken
svn checkout http://gstfakevideo.googlecode.com/svn/trunk/ gstfakevideo
verwenden)
Quellen / Blogs
- http://forum.skype.com/index.php?showtopic=102838
- Thread aus dem Skype Forum zum Thema "Skype video hijacker, Skype video source from user-defined gstreamer pipeline"
- http://www.quickcamteam.net
- Offizielle Seite von Logitech (QuickCamTeam) mit Informationen für Open Source Plattformen wie Linux und Solaris,
(Howtos, Dokumentation und Refenrenzen auf USB Video Class Spezifikationen, Kompatibilitätslisten, usw.)
- http://forums.quickcamteam.net
- Foren auf Logitech QuickCamTeam
- http://gopaljuttu.blogspot.com/2007_11_01_archive.html
- Beitrag "Logitech Quickcam Express (device id 046d:0870; driver = quickcam?) working with Skype on Ubuntu Gutsy 7.10 (gstfakevideo"
- http://forum.skype.com/index.php?s=4a1f0c65388f258335c84bced2d73ac1&showtopic=108225
- Beitrag "HTTP stream on skype via gstfakevideo"
|