Dieser Anleitung fehlen noch einige Informationen. Wenn Du etwas verbessern kannst, dann editiere den Beitrag, um die Qualität des Wikis noch weiter zu verbessern.
Anmerkung: Viele Hinweise zur manuellen Installation beziehen sich noch auf ältere Ubuntu-Versionen. Daher sollte zuerst geprüft werden, ob die Webcam inzwischen automatisch unterstützt wird. Bei Problemen mit Skype hilft beispielsweise u.U. der Tipp unter #V4L2-Kompatibilitaet
![]()
Für Linux gibt es eine ganze Reihe von Webcams, die gut unterstützt werden. Fast immmer handelt es sich jedoch nicht um eine offizielle Unterstützung durch den (Chipsatz-)Hersteller, sondern verschiedene Open Source-Projekte haben einen Treiber für einen bestimmten Chipsatz entwickelt. Leider wechseln manche Webcam-Hersteller ihre Chipsätze ab und zu, so dass nicht alle Webcams, die denselben Herstellernamen tragen, mit demselben Treiber funktionieren. Es gibt aber auch immer noch Chipsatz-Hersteller, die die Entwicklung eines Open Source-Treibers blockieren. Diese Webcams sind auf der Hardware blacklist zu finden.
Daneben gibt es auf Anwendungsseite zwei Frameworks: v4l (Video for Linux) und das neuere v4l2. Programme, die nur das ältere vl4 unterstützen (z.B. Skype) müssen dazu mit einem speziellen Parameter gestartet werden (siehe V4L2-Kompatibilität).
Diese Anleitung beschreibt verschiedene Wege, den passenden Treiber selbst zu installieren, falls die Webcam nicht automatisch gefunden und unterstützt wird.
Bis Ubuntu 6.10 Edgy Eft brauchte man für Webcams, die vom spca5xx-Treiber
unterstützt werden (siehe Liste
), gar keinen extra Treiber installieren, da dieser bereits im Kernel integriert war. Die unterstützten Webcams funktionierten also "Out-of-the-Box". Aufgrund einer Entscheidung der Kernelentwickler war dieser Treiber ab Ubuntu 7.04 Feisty Fawn aber nicht mehr Bestandteil des Kernels.
Insbesondere mit Ubuntu 8.10 Intrepid Ibex und 9.04 Jaunty Jackalope hat sich diese Situation aber wieder entscheidend geändert. Neben der Aufnahme des gspca-Treibers wurde auch der uvcvideo-Treiber
integriert. Damit werden wieder viele Webcams automatisch unterstützt.
Um den passenden Treiber zu ermitteln, ist es wichtig, die Webcam vorab genau zu identifizieren. Dazu steckt man die Webcam einfach in den USB-Port des Rechners (entfällt bei integrierten Webcams) und ruft in einem Terminal [7] den Befehl:
lsusb
auf. Dieser Befehl liefert Informationen über die angeschlossenen USB-Geräte, u.a. auch die Hersteller- (engl. Vendor) und die Produkt-ID, die eine eindeutige Identifizierung ermöglichen. Wer es ganz genau wissen möchte, hängt dem Befehl einfach noch den Parameter -v an.
Mit den so gefundenen Informationen durchsucht man anschließend die Listen der unterstützten Webcams (siehe z.B. Kompatibilitätslisten) und schaut, in welcher der Listen die Webcam aufgeführt ist. Manchmal stellen auch die Hersteller selber Informationen über den benötigten Treiber bereit, z.B. Creative
oder Logitech
. Eine sehr gute Anlaufstelle, um den passenden Treiber zu bestimmen, ist außerdem die Seite LINUX-USB device overview
.
Sofern die Webcam nicht bereits durch den Kernel unterstützt wird (siehe Abschnitt zuvor), kann in den meisten Fällen einfach die Treiber-Sammlung Easycam2 genommen werden. Der Vorteil ist, dass sie sich sehr einfach installieren lässt und dass eine Vielzahl von Webcams unterstützt werden. Eine Übersicht der unterstützten Webcams liefern die Links in der Kompatibilitätsliste.
Hat man den benötigten Treiber ermittelt, kann mit der Installation begonnen werden. Bei der manuellen Installation sollte aber bedacht werden, dass es sich bei diesen Treibern um Kernelmodule handelt. Praktisch heißt das, dass bei jedem Update des Kernels auch die Kernelmodule neu übersetzt werden müssen. Um diese Problematik zu lösen, wurde DKMS entwickelt.
In den Ubuntu-Paketquellen werden verschiedene Treiber bereitgestellt, allerdings nur im Quellcode. Die Installation des Treibers erfordert es also, den Quellcode zunächst in einen lauffähigen Binärcode zu übersetzen, was mit den von Ubuntu bereitgestellten Werkzeugen jedoch recht einfach zu machen ist. Folgende Treiber stehen in den Ubuntu-Quellen zur Verfügung [1]:
gspca-source (universe, [2])
ov511-source (universe, nur Ubuntu 8.04 Hardy Heron)
ov51x-jpeg-source (universe)
qc-usb-source (universe)
Zunächst muss das Paket mit dem Quellcode des passenden Treibers installiert werden. Aufgrund der Abhängigkeiten werden dabei automatisch der Modul-Assistent, sowie das Paket debhelper, mit deren Hilfe sich der Quellcode recht komfortabel übersetzen lässt, mit installiert.
Danach wird durch Ausführung der Befehle
sudo m-a prepare sudo m-a a-i gspca
der Binärcode erstellt [3] [4], in diesem Fall für den "gspca"-Treiber. Falls ein anderer Treiber installiert werden soll, muss die letzte Befehlszeile entsprechend abgeändert werden. Mit dem ersten Befehl wird zunächst geprüft, ob alle zum Übersetzen des Quellcodes erforderlichen Pakete installiert sind (nicht vorhandene Pakete werden ggf. nachinstalliert), und mit dem zweiten Befehl wird der Quellcode dann übersetzt. Danach sollte man die Modulabhängigkeiten mit dem Befehl:
sudo depmod -a
generieren lassen.
Danach muss der Treiber (hier "gspca", ist entsprechend anzupassen) nur noch mit dem Befehl:
sudo modprobe gspca
als Kernelmodul geladen werden (vgl. Kernelmodule).
Ob der Treiber korrekt installiert wurde, lässt sich anschließend mit dem Befehl:
modinfo gspca
prüfen. Damit werden u.a. auch nochmal alle durch den installierten Treiber unterstützten Webcams mit Hersteller- und Produkt-ID aufgelistet.
Die Installation eines Treibers aus dem Original-Quellcode, d.h. durch Bezug des Quellcodes direkt von der Entwicklerseite ist nur in Ausnahmefällen notwendig, d.h. wenn weder die Installation mittels Easycam2 noch die Installation aus den Ubuntu-Quellen erfolgreich waren oder wenn die Webcam durch diese Treiber (noch) nicht unterstützt wird. Entsprechend werden hier auch nur einige Treiber behandelt. Weitere Infos zur Installation aus dem Original-Quellcode finden sich im englischsprachigen Ubuntu-Wiki
(Abschnitt "Manual installation instructions"). Wer Bedarf sieht, kann dieses Kapitel gerne um weitere Treiber ergänzen.
Um die Treiber aus dem Originalcode übersetzen und installieren zu können, müssen vorab folgende Pakete aus den Ubuntu-Quellen installiert werden:
linux-headers-<version>
linux-restricted-modules-<version> (restricted, [2])
build-essential
Der Ausdruck <version> in den Paketnamen bezeichnet die Versionsnummer des aktuell installierten Kernels, die sich mit dem Befehl
uname -r
bestimmen lässt.
Der "gspca"-Treiber kann hier
herunterladen werden (Datei: gspcav1-<datum>.tar.gz). Er wird anschließend entpackt [5] und kann dann mit dem Terminalbefehl
sudo ./gspca_build
übersetzt (kompiliert) und installiert werden.
Fremdsoftware kann das System gefährden.
Der Quellcode des "ov51x-jpeg"-Treibers kann von dieser Seite
heruntergeladen werden. Nach dem Herunterladen und Entpacken [5] des Archivs wechselt man in das dabei angelegte Verzeichnis und installiert den Treiber dann wie folgt:
make sudo make install sudo depmod -a sudo modprobe ov51x-jpeg
Diese Installation funktioniert ab Version 1.0.0.
Fremdsoftware kann das System gefährden.
Unter Ubuntu 8.10 Intrepid Ibex wird beim Einstecken der Webcam das Modul "gspca_ov519" automatisch geladen, welches jedoch nicht mit Webcams funktioniert, die "ov51x-jpeg" benötigen. Verhindern kann man dies, indem man das Modul "gspca_ov519" deaktiviert [3]. Eine Anleitung dazu gibt es hier
.
Einige Low-Budget-Webcams benutzen Komponenten von Microdia. Darunter sind auch in Deutschland beliebte Modelle, die über Lidl und Aldi vertrieben wurden. Zur Zeit arbeitet eine Gruppe daran, einem Linux-kompatiblen Treiber zu entwickeln. Weitere Infos und eine Liste unterstützter Webcams gibt es hier
.
Zum Übersetzen des Treibers müssen vorab die folgenden Pakete installiert werden [1]:
git-core
gitk
git-gui
git-doc
curl
Paketliste zum Kopieren:
sudo apt-get install git-core gitk git-gui git-doc curl
sudo aptitude install git-core gitk git-gui git-doc curl
Dann wird der Quellcode heruntergeladen:
git clone http://repo.or.cz/r/microdia.git
Fremdsoftware kann das System gefährden.
Die Übersetzung wird mit:
cd microdia make
gestartet.
Beim Kompilieren taucht eventuell der Fehler
make: *** [driver] Error 127
auf. Dieser kann ohne Probleme ignoriert werden. Anschließend müssen noch einige Module geladen werden.
sudo modprobe videodev sudo modprobe compat-ioctl32 sudo insmod sn9c20x.ko
Wer das Modul nicht nach jedem Neustart neu laden möchte, sollte sich hiermit Abhilfe schaffen:
sudo cp sn9c20x.ko /lib/modules/`uname -r`/kernel/drivers/media/video/usbvideo/ sudo depmod -a
Die Original-Anleitung zum Installieren findet man hier
.
In diesem Abschnitt sind Spezialfälle aufgeführt, in denen die Installation mittels Easycam2 nicht erfolgreich war. Die Installation aus den Ubuntu-Quellen wurde allerdings noch nicht getestet.
Diese Kamera mit der USB-ID 093a:2468 lässt sich in bestimmten Fällen nur mit dem Modul "spca5xx" betreiben. Dieses Modul befindet sich aber nicht mehr in den offiziellen Paketquellen. Evtl. kann der Nachfolger "gspca" verwendet werden.
Für diese Kameras mit den USB-IDs 05e3:0503 und 05e3:f191 gibt es keinen Linux-Treiber. Auf der Seite gl860
wird allerdings ein Kernelmodul entwickelt, womit man die zwei Webcams zum Laufen bekommt. Dabei ist die Unterstützung für die Version 05e3:f191 komplett, für die Version 05e3:0503 bisher nur im Alphastadium. Wer es aber dennoch wissen will, lädt sich dort das Archiv runter und folgt den Installationsanweisungen.
Für den Betrieb der alten Revision der QuickCam mit der USB-ID 046d:08ce müssen die UVC-Treiber
installiert werden (ab Ubuntu 8.10 nicht mehr notwendig?). Dazu öffnet man ein Terminal und gibt folgende Befehle ein:
svn checkout svn://svn.berlios.de/linux-uvc/linux-uvc/trunk cd .. /trunk
Fremdsoftware kann das System gefährden.
Dann öffnet man mit einem geeigneten Texteditor [6] im angelegten Ordner das Makefile, sucht darin die Zeile
INSTALL_MOD_DIR := usb/media
und ändert diese um in
INSTALL_MOD_DIR := kernel/ubuntu/media/usbvideo
Anschließend wird der Code aus den Quellen gebaut und installiert:
make make install
Abschließend wird das alte Kernelmodul entfernt und das neuere geladen:
sudo rmmod uvcvideo sudo dmesg -c sudo modprobe uvcvideo trace=0xffff
Einige Webcams funktionieren nach dem Anschluss nicht, obwohl der Treiber verfügbar ist. Im Systemprotokoll finden sich beim Anschließen möglicherweise folgende Meldungen:
gspca: probing 04fc:504a gspca: probe ok gspca: probing 04fc:504a usbcore: registered new interface driver sunplus sunplus: registered gspca: disconnect complete
Durch Neuladen des "gspca_sunplus" Moduls lässt sich dieses Problem einmalig (d.h. nicht dauerhaft) beheben.
Folgende Befehle sollten ausgeführt werden, während die Webcam angeschlossen ist:
sudo modprobe -r gspca_sunplus sudo modprobe gspca_sunplus
Unter Umständen muss beim Starten der Webcam Programme auf V4L2-Kompatibilität (siehe nächster Abschnitt) geachtet werden.
Ab der Kernelversion 2.6.27 (ab Ubuntu 8.10) ist der "gspca"-Treiber im Kernel integriert. Manche Anwendungen (z.B. Skype) benutzen noch das ältere Framework v4l, das nicht von jedem Treiber unterstützt wird. Das führt dazu, dass einige Applikationen nicht mehr funktionieren und oftmals ein grünes Bild erzeugen.
Als Workaround kann die entsprechende Applikation dann wie folgt gestartet werden:
LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so PROGRAMMNAME
Auf 64-Bit-Systemen entsprechend:
LD_PRELOAD=/usr/lib64/libv4l/v4l1compat.so PROGRAMMNAME
Eventuell muss diese Biblothek zuvor installiert werden [1]:
libv4l-0
Es gibt unter Linux einige Programme, mit denen man seine Webcam benutzen kann. Jedoch haben nur ein paar eine grafische Oberfläche und eignen sich so gut für Einsteiger. Von Haus aus kann Ubuntu nur mit Ekiga die Webcam nutzen, aber es gibt viele weitere gute Programme in den Quellen, welche sich mit Webcams gut verstehen. Hiervon wird im Folgenden eine Auswahl vorgestellt.
![]()
Ekiga ist ein Voice over IP-Programm mit dem SIP-Protokoll, welches auch Webcams unterstützt. Meist wird die Webcam schon beim ersten Start angezeigt, sonst muss man auf das Webcam-Symbol in der linken Leiste klicken. Die Bildeigenschaften der Webcam kann man im Reiter "Video" einstellen, welcher sich in der unteren Hälfte des Programmfensters befindet. Zum Auswählen einer Webcam oder um eine Webcam suchen zu lassen, falls sie nicht automatisch gefunden wurde, geht man auf "Bearbeiten -> Einstellungen -> Geräte -> Videogeräte".
Kopete unterstützt Webcams für das Yahoo!- und MSN-Protokoll. In der Regel wird die Webcam automatisch erkannt. Weitere Einstellungen kann man unter "Einstellungen -> Geräte" vornehmen. Dort kann man auch zwischen verschiedenen Webcams auswählen oder sein Mikrofon konfigurieren. Für eine Webcam-Unterhaltung klickt man einfach auf das Kamera-Symbol im Gesprächsfenster.
qnext
ist ein proprietäres Instant Messaging-Programm, welches jedoch auch andere Funktionen wie Musik-Streaming, Bilder- oder einfachen Dateien-Upload enthält. Mit qnext kann man Webcams mit dem MSN- und dem eigentlichen qnext-Protokoll benutzen. Um seine Webcam einzurichten, geht man auf "Tools -> Options... -> Devices" und klickt dort auf "detect". Nun sollte qnext die Webcam eingebunden haben. Wenn man die Webcam benutzen will, klickt man einfach auf das kleine Webcam-Symbol im Chatfenster.
Skype unterstützt ab Version 2.0 Videokonferenzen. Weitere Informationen gibt es im Artikel Skype.
Mit Hilfe von TokBox
ist es möglich, unabhängig von einer bestimmten Software Videokonferenzen per Webcam abzuhalten. Die Kommunikation läuft dabei mittels Adobe Flash komplett über einen Webbrowser.
![]() |
| guvcview |
Mit luvcview
lässt sich eine Webcam unkompliziert auslesen. Vor allem für das erste Testen der Bildübertragung ist das Programm geeignet. Man kann allerdings auch bequem JPG-Bilder oder AVI-Video aufzeichnen. Der Quellcode kann unter der oben angegebenen Adresse heruntergeladen und anschließend kompiliert [4] werden. Zusätzlich benötigt wird nur das Paket [1]:
libsdl1.2-dev
Hinweise zur Bedienung kann man den Man-Pages entnehmen.
Camorama
kann Bilder von einer Webcam aufnehmen, sowohl einzeln als auch in zeitgesteuerten Intervallen. Auch ist es möglich, dass in einem gewissen zeitlichen Intervall immer wieder Bilder gemacht werden oder Bilder per Remote (ferngesteuert) aufzunehmen. Folgendes Paket muss installiert [1] werden:
camorama (universe, [2])
Camorama kann dann über das Menü mittels
"Anwendungen -> Grafik -> Camorama Webcam Betrachter"
gestartet werden. Um ein Bild aufzunehmen, muss man nur auf "Take Picture" klicken. Unter "Bearbeiten -> Einstellungen" kann man unter anderem Einzelheiten zur zeitgesteuerten Aufnahme oder auch zur Remoteaufnahme finden. Ein etwaiger Blaustich des Bildes lässt sich wie folgt beheben: "(Rechtsklick im Feld) Effects -> Add -> Color Correction".
Hinweis: Das Programm muß mit V4L2-Kompatibilität gestartet werden.
Cheese ist eine lustige kleine Webcam-Anwendung ähnlich zu Photo Booth
von Mac OS X. Bilder oder Videos der Webcam können mit verschiedenen Filtern versehen und gespeichert werden. Ein Countdown zählt bis zum Erstellen der Bildes herunter, so dass man rechtzeitig "Cheeeeese" sagen kann.
Mit MJPG-Streamer
lassen sich aus der Konsole Bilddaten von einer Kamera auslesen und in Webstreams umwandeln. Diverse Parameter erlauben es, Auflösung, Framerate und andere wichtige Einstellungen zu verändern. Nach dem Start kann über ein Webinterface der Stream auf verschiedene Arten abgerufen werden.
fswebcam
ist eine kleine aber feine Webcam Anwendung, mit deren Hilfe man Fotos schießen und bearbeiten kann.
Mit FFmpeg lassen sich Fotos oder Videos von der Webcam aufnehmen. Folgendes Kommando nimmt z.B. ein Foto auf und speichert es unter image.jpg. Voraussetzung ist, dass die Kamera über /dev/video0 angesprochen werden kann:
ffmpeg -f video4linux2 -s 640x480 -r 1 -i /dev/video0 -vframes 1 -f image2 image.jpg
MPlayer ist ein Media-Player für Linux, mit welchem man auch Webcams auslesen kann. Folgendes Kommando gibt Bilder von der Webcam in einem Fenster wieder (die Kamera wird über /dev/video0 angesprochen):
mplayer tv://
Falls eine externe Kamera angesteckt wird und bereits eine eingebaute existiert (z.B. in Notebooks) wird diese mit /dev/video1 angesprochen und kann wie folgt ausgelesen werden:
mplayer tv:// -tv device=/dev/video1
Die Webcam wird i.d.R. als Gerätedatei /dev/video0 in das System eingebunden. Wird auf dem Rechner zusätzlich eine TV-Karte betrieben, belegt diese /dev/video0 und die Webcam wird unter /dev/video1 eingebunden. Dies kann zu Abstürzen bzw. unerwünschtem Verhalten führen (das Fernsehbild wird statt dem Bild der Webcam gezeigt), da die Programme die Webcam unter /dev/video0 erwarten. Manche Programme begegnen dem dadurch, dass sie die Auswahl der Gerätedatei bzw. der Bildquelle für die Webcam ermöglichen:
Camorama über den Parameter -d: camorama -d /dev/video1
Ekiga über "Bearbeiten -> Einstellungen -> Videogeräte -> Aufnahmegerät"
Skype über "Optionen -> Video -> Webcam wählen"
Wenn die Bildrate zu langsam ist, oder erst nach einer geschätzten Sekunde auf einmal von 25-30fps auf 5-12fps sinkt, kann man versuchen ,die Belichtungs-Automatik auszuschalten. Das geht z.B. mit guvcview mit der Option -o. Der Schalter ist auf der Seite "Bildeinstellungen" und trägt die Bezeichnung "Belichtung, automatische Priorität". Siehe auch 361256
Skype and Web Cameras
- Liste von Modellen, die (nicht) funktionieren
gspca Patch bei Launchpad
- gegen unerwünschten Zoom bei gspca-Treibern
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/267522
Launchpad Eintrag zum 2.6.27 Kernel Problem
Bitte lächeln! - Linux-kompatible Webcams im Vergleich
Artikel LinuxUser 07/2007
Diese Revision wurde am 7. Februar 2010 um 17:12 Uhr
von Heinrich Schwietering erstellt.
Dieser Seite wurden folgende Begriffe zugeordnet:
Hardware, Kommunikation, Internet
2004 – 2010 ubuntuusers.de • Einige Rechte vorbehalten