Logitech C510 USB-Webkamera - Belichtungseinstellungen

  • Tach'schen,


    ich bin auf der Suche nach einem Programm, mit dem ich die Belichtungseinstellungen obiger Kamera steuern kann.


    Ich habe bereits ein funktionierendes Python-Skript. Ich verwende pyephem zur Berechnung
    der Zeiten von Sonnenauf- und Untergang, sowie der Dämmerung an meinem Standort.
    Entsprechend der errechneten Zeiten bzw. zu erwartenden Lichtverhältnisse stelle ich
    die Kamera ein. Zusätzlich wird aus Testfotos während der Dämmerung ein statistischer
    "Grauwert" errechnet und ggf. die Belichtung angepasst. Das Skript läuft bereits 24/7 und
    schickt mir die Bilder an eine "Fotogalerie" auf meiner Webseite. So weit, so gut ...


    Mit "v4l2-ctl -l" habe ich die zulässigen Einstellungs-Parameter der Kamara ermittelt:



    Mit os.system( "v4l2-ctl --set-ctrl=exposure_auto=%s,exposure_auto_priority=%s ... blah" % (auto, prio, ... noch mehr blub) )
    stelle ich die Parameter im Python-Skript ein, weil das wohl nicht mit Python-modulen zu machen ist :huh: (man möge mich eine Besseren belehren). Das funktioniert so auch ganz gut, doch leider tritt ein sporadischer Fehler auf: :huh:

    Code
    ioctl(VIDIOC_S_FMT) failure no supported formats


    Wenn man die Einstellungen aber mit:

    Code
    os.system('sudo uvcdynctrl --set="Exposure, Auto" %s' %exposure)
    os.system('sudo uvcdynctrl --set="Exposure, Auto Priority" %s' %priority)
    ...


    ändert, tritt der Fehler nicht mehr auf. (Das muss nach meinen Recherchen irgendwas mit v4l2 zu tun haben - uvcdynctrl verwendet eine andere library: libwebcam statt libv4l2).


    Was mich daran stört, obwohl es zuverlässig funktioniert, ist das mehrmalige Aufrufen von "uvcdynctrl" weil man "uvcdynctrl" immer nur einen Parameter übergeben kann.


    Kennt jemand von Euch evtl. eine "elegantere" Lösung für die Kameraeinstellungen? Bin leider nirgends auf andere Möglichkeiten gestoßen (fswebcam lief leider auch nicht zuverlässig genug).


    Und: ja ... vielleicht ist das nur zu perfektionistisch gedacht .... :denker: