Hallo,
ich habe ein Problem mit der Reihenfolge der Einbindung von Video-Devices während des Bootvorgangs. Eine Hauppauge bttv 878 und eine Logitech Webcam sind im Rechner verbaut bzw. per USB angeschlossen. Beide funktionieren an sich (wenn man die Webcam erst nach dem Bootvorgang anschließt). Die TV-Karte wird dann /dev/video0 und die Webcam /dev/video1.
Wenn auch die Webcam während des Bootvorganges angeschlossen ist, wird die Reihenfolge leider gedreht. Das führt dazu, dass kdetv hängt und auch v4l-conf eine Fehlermeldung (X Error of failed request: XF86DGANoDirectVideoMode) zurückgibt.
Nun habe ich versucht, dieses Problem mittels udev-rules zu lösen, wie hier (http://www.linux-club.de/viewtopic.php?f=46&t=102730&start=0) vorgeschlagen. Hier die Datei mit den Regeln:
Das funktioniert bezogen auf die devices unter /dev auch. Trotzdem funktionieren kdetv und v4l-conf nicht (dieselben Probleme).
Nun habe ich mal mit
und
geschaut, wie TV-Karte und Webcam eingebunden sind. Und siehe da, die device-Nummern sind nun irgendwie vermischt (Beispiel für /dev/video0):
Für /dev/video1 gibt es folgende Ausgabe:
Einige Programme wie luvcview und skype kommen trotzdem damit zurecht, kdetv aber leider nicht. Das hängt einfach nach dem Start, wahrscheinlich, weil v4l-conf nicht funktioniert.
Nun meine Frage: Gibt es eine Lösung für dieses Problem? Offensichtlich reicht es ja nicht, per udev-rules die device-Zuordnung zu ändern, da die ja noch an anderen Stellen (im Kernel?, im video4linux-Subsystem?, im HAL?) anders zu sein scheint...
ich habe ein Problem mit der Reihenfolge der Einbindung von Video-Devices während des Bootvorgangs. Eine Hauppauge bttv 878 und eine Logitech Webcam sind im Rechner verbaut bzw. per USB angeschlossen. Beide funktionieren an sich (wenn man die Webcam erst nach dem Bootvorgang anschließt). Die TV-Karte wird dann /dev/video0 und die Webcam /dev/video1.
Wenn auch die Webcam während des Bootvorganges angeschlossen ist, wird die Reihenfolge leider gedreht. Das führt dazu, dass kdetv hängt und auch v4l-conf eine Fehlermeldung (X Error of failed request: XF86DGANoDirectVideoMode) zurückgibt.
Nun habe ich versucht, dieses Problem mittels udev-rules zu lösen, wie hier (http://www.linux-club.de/viewtopic.php?f=46&t=102730&start=0) vorgeschlagen. Hier die Datei mit den Regeln:
Code:
# Hauppage TV card
SUBSYSTEM=="video4linux", ATTR{name}=="BT878 video (Hauppauge (bt878))", NAME="video0", SYMLINK="tvcard"
# Logitech Cam
SUBSYSTEM=="video4linux", ATTR{name}=="UVC Camera (046d:0991)", NAME="video1", SYMLINK="webcam"
Das funktioniert bezogen auf die devices unter /dev auch. Trotzdem funktionieren kdetv und v4l-conf nicht (dieselben Probleme).
Nun habe ich mal mit
Code:
udevinfo -a -p $(udevinfo -q path -n /dev/video0)
Code:
udevinfo -a -p $(udevinfo -q path -n /dev/video1)
- looking at device '/devices/pci0000:00/0000:00:0a.0/video4linux/video1':
KERNEL=="video1"
SUBSYSTEM=="video4linux"
DRIVER==""
ATTR{name}=="BT878 video (Hauppauge (bt878))"
ATTR{index}=="0"
ATTR{card}=="10"
Für /dev/video1 gibt es folgende Ausgabe:
- looking at device '/devices/pci0000:00/0000:00:02.3/usb2/2-3/2-3:1.0/video4linux/video0':
KERNEL=="video0"
SUBSYSTEM=="video4linux"
DRIVER==""
ATTR{name}=="UVC Camera (046d:0991)"
ATTR{index}=="0"
Einige Programme wie luvcview und skype kommen trotzdem damit zurecht, kdetv aber leider nicht. Das hängt einfach nach dem Start, wahrscheinlich, weil v4l-conf nicht funktioniert.
Nun meine Frage: Gibt es eine Lösung für dieses Problem? Offensichtlich reicht es ja nicht, per udev-rules die device-Zuordnung zu ändern, da die ja noch an anderen Stellen (im Kernel?, im video4linux-Subsystem?, im HAL?) anders zu sein scheint...