Ubuntu: TV-Karte und Webcam

Eine gar nicht so unübliche Konfiguration eines PCs ist eine Webcam und eine TV-Karte. Leider gibt es dabei unter Ubuntu ein kleines Problem. In der Regel kann man, egal mit welcher Software, auf die Devices via /dev/video0 und /dev/video1 zugreifen. Eines davon ist die Webcam, das andere die TV-Karte. Aber wo liegt nun das Problem? Leider tauschen beide Geräte bei nahezu jedem Neustart des Systems genau diese Devices. Während bei dem einen Mal /dev/video0 die TV-Karte ist, so ist es beim nächsten Neustart plötzlich /dev/video1. Egal mit welcher Software oder Skripten man nun über seine TV-Karte bzw. Webcam sehen bzw. aufnehmen möchte, kommt es dadurch zu Problemen. Mir selbst ist es nun schon mehrfach passiert, dass ich statt eines Films im TV meine Webcam aufgenommen habe. Doch wie kann man dieses Problem lösen? Ich habe etwas gegoogelt und bin auf die Lösung gestoßen: Man muss eine eigene UDEV-Regel festlegen.

Zunächst brauch man ein paar Infos zu seiner Webcam und seiner TV-Karte. Diese Informationen ruft man im Terminal ab mittels

udevadm info –query=all –attribute-walk –name=/dev/video0 > ~/Desktop/video0.txt

und

udevadm info –query=all –attribute-walk –name=/dev/video1 > ~/Desktop/video1.txt

Beide Befehle legen eine Text-Datei auf dem Desktop ab, mit allen nötigen Informationen zu den Geräten. Diese Informationen können in etwa so aussehen:

looking at device ‚/devices/pci0000:00/0000:00:1e.0/0000:05:00.0/video4linux/video0‘:
KERNEL==“video0″
SUBSYSTEM==“video4linux“
DRIVER==““
ATTR{name}==“saa7134[0] video (Pinnacle PCTV“
ATTR{index}==“0″

Aus diesen Infos erstellt man nun seine UDEV-Regel. Dafür legt man im Verzeichnis /etc/udev/rules.d/ eine Datei an:

sudo nano /etc/udev/rules.d/91-video.rules

Dort schreibt man die folgenden Infos hinein: (Quelle/Idee)

# Webcam
KERNEL==“video[0-9]*“, ATTR{name}==“UVC Camera*“, SYMLINK+=“video-webcam“

# TV Card
KERNEL==“video[0-9]*“, ATTR{name}==“saa7134*“, SYMLINK+=“video-tv“

Wichtig ist, dass ATTR{name} mit dem aus euren Infos Dateien übereinstimmt.

In meinem Fall sieht ATTR{name} meiner Webcam so aus

ATTR{name}==“UVC Camera (046d:0824)“

und von meiner TV-Karte so

ATTR{name}==“saa7134[0] video (Pinnacle PCTV“

Dazu passend habe ich ATTR{name}==“UVC Camera*“ und ATTR{name}==“saa7134*“ gesetzt. (* ersetzt den Rest der Zeichenkette). Die Option Symlink wird dann im Verzeichnis /dev die Geräte /dev/video-webcam und /dev/video-tv setzen.

Nach einem Neustart existieren nun diese 2 neuen Symlinks in /dev. Nun kann man immer die Webcam über /dev/video-webcam und die TV-Karte über /dev/video-tv abrufen.

PG

Felix

 – Autor des Artikels

5 Reaktionen auf “Ubuntu: TV-Karte und Webcam

  1. Miki sagt:

    WebCam aufgenommen? Bärenparty? Oder Besucher erwischt?? :innocent: :alien:

    Die Funktion „letzten Blogartikel anzeigen“ hätte ich bitte auch gern eingebaut. Bei Miki. :geek: :alien: :angel:

    • Felix sagt:

      @Miki

      Durch meine Paranoia habe ich meine Webcam immer zugedeckt ;-) Daher nur schwarzes Bild :-P

      PS: Jaja, war ja klar, jetzt willste das auch haben mit dem letzten Blogartikel :cool:

  2. aga80 sagt:

    Oh nur gut das ich das Problem bisher nicht hatte bisher hat nur mein Netbook eine Kamera und die hat einen schönen Hardwareschieber, der auch die Kamera verschließt und abschaltet.
    Komisch dem Asus 1015T haben sie so was verpasst und den Nachfolgern leider nimmer.
    Dem AMD V105 ist zwar etwas lahm, aber mit Linux zb :ubuntu: Xubuntu oder Puppy läuft der ganz gut und ca 6 Stunden.
    Eine TV-Karte hatte ich seit 9 Jahren nimmer gehabt und das war damals Windoof only Hardware.
    Aber danke, jetzt habe ich wieder was gelernt.

    • Felix sagt:

      @aga80

      Tja, wieder etwas gelernt ;-)
      Und falls man es mal braucht, steht es hier schwarz auf weiß :-P

      Was meinst du mit dem Hardwareschieber? Kannst du damit die Webcam am Notebook zumachen?

  3. aga80 sagt:

    Ja hier schau mal.
    http://imageshack.us/photo/my-images/233/1015t.jpg/

    Irgendwie spart sich das Asus inzwischen wieder.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

:alien: :angel: :angry: :annoyed: :left: :right: :blush: :carefree: :cool: :cry: :devil: :laughdevil: :fools: :geek: :hay: :innocent: :laugh: :love: :shock: :offended: :sad: :sick: :unhappy: :silly: :smile: :speechless: :supershock: :-o :teasing: :wink: :zombie: :zzz: :-* xD :nomnomnom: :oh: :ghost: :teddy: :fussball: :ubuntu: :piratenpartei: