20.6 Webcams und Webcam-Software
Für Webcams gilt Ähnliches wie für die TV-Karten: Vor der Nutzung müssen die entsprechenden V4L-Treiber eingebunden werden. Nun benötigt man aber für unterschiedliche Modelle unterschiedliche Module, daher raten wir Ihnen, sich zuerst im Internet Hilfe zu suchen, bevor Sie sich ausgiebig mit der Thematik auseinandersetzen.
Wir werden hier nur ein Beispiel exemplarisch behandeln, damit Sie die Handlungsabläufe prinzipiell verstehen.
20.6.1 Beispiel: USB-IBM-Cam einrichten
Um den Support für diese Webcam einzubinden, benötigen Sie zunächst folgende Module:
- videodev
- Video-For-Linux-Modul
- usbcore
- USB-Core-Modul. Wird auf jeden Fall benötigt.
- input
- Input-Modul, wird im Allgemeinen auch benötigt.
- usb-uhci
- Dieses Modul braucht man, um USB auf dem Motherboard zu aktivieren. Wenn man beim Laden dieses Moduls Fehler angezeigt bekommt, sollte man usb-ohci oder die uhci-Treiber ausprobieren.
- ibmcam
- Das sebcam-spezifische Modul. Andere mögliche Webcam-Module (für andere Modelle) könnten sein:
- ov511 z. B. für Creative WebCam III
- dc2xx z. B. für verschiedene Kodak-Modelle
- cpia, cpia_usb z. B. für Creative WebCam II
Durch die Module werden die entsprechenden Einträge im Verzeichnis /dev in der Regel automatisch erzeugt. Nun fehlt nur noch die entsprechende Software, um die Devices nutzen zu können.
20.6.2 Webcam-Software
Nun sollten Sie mit entsprechenden Tools schon ein Bild sehen. Ein paar wichtige Programme wollen wir Ihnen dazu vorstellen.
xawtv
Noch mehr xawtv
Man kann xawtv nicht nur zum Fernsehen, sondern auch für den Zugriff auf alle möglichen Multimedia-Devices – wie eben auch Webcams – nutzen.
$ xawtv -hwscan This is xawtv-3.71, running on Linux/i686 (2.6.12) looking for available devices /dev/v4l/video0: OK [ -device /dev/v4l/video0 ] type : v4l name : BT878(Hauppauge (bt878)) flags: overlay capture tuner /dev/v4l/video1: OK [ -device /dev/v4l/video1 ] type : v4l name : IBM USB Camera flags: capture
Listing 20.8 Verfügbare Video-Devices suchen
Hier haben wir eine WinTV-Karte sowie eine IBM-USB-Webcam gefunden. Mit folgender Option kann man dann auf die Webcam zugreifen: xawtv -c /dev/video1.
streamer
Mit streamer hat man ein hübsches Programm, um von der Kommandozeile aus diverse Webcams anzusteuern. Man kann dabei einzelne Bilder oder auch Videostreams aufnehmen.
$ streamer -c /dev/video1 -b 16 -o bild.jpg
Listing 20.9 Bild aufnehmen
Videos in der Shell
Wie auch bei xawtv, gibt man hier mit der -c-Option das Video-Device an. Mit -b stellt man schließlich die Farbtiefe ein, und -o legt die Ausgabedatei fest. Ganz ähnlich funktioniert das auch mit einem Video-Stream:
$ streamer -c /dev/video1 -f rgb24 -r 4 -t 00:05:00 -o video.avi -q
Listing 20.10 Ein Video aufnehmen
Dieser Aufruf würde ein 5 Minuten langes (-t 00:05:00) TrueColor- AVI (-f rgb24) mit 4 Frames pro Sekunde (-r 4) aufnehmen.
Gqcam
Gqcam wurde ursprünglich für Connectix Quickcams entwickelt, kann mittlerweile aber so ziemlich alle Video4Linux-Devices ansprechen. Das Programm zeichnet sich durch seine intuitive Oberfläche und einfache Bedienung aus.
Motion
Bewegungserkennung
Motion ist ein nettes Programm, das Bewegungen auf dem Kamerabild erkennt und dann verschiedene Handlungen ausführen kann – beispielsweise das Versenden einer E-Mail, die Aufnahme eines Videostreams oder auch das Hochladen der Daten auf einen Webserver.
Weitere interessante Programme finden Sie bei den üblichen Verdächtigen: freshmeat.net und sourceforge.net.