Benutzer:Msl chdk/CHDK

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Die Abkürzung CHDK steht für Canon Hacker Development Kit. Dabei handelt es sich um einen unabhängigen Firmware-Aufsatz für digitale Kompaktkameras der Firma Canon mit DIGIC-II, III oder IV-Prozessor. CHDK wird als Open-Source-Projekt betrieben. Der Quellcode[1] und die fertig compilierte Software[2] sind unter GNU GPL-Bedingungen verfügbar. Diese Software erweitert den Funktionsumfang der digitalen Kamera erheblich. Die wichtigste Eigenschaft von CHDK ist, dass die Firmware der Kamera unangetastet bleibt. Die originale Firmware wird weder ersetzt noch verändert.

Entwicklungsgeschichte[Bearbeiten | Quelltext bearbeiten]

In der zweiten Hälfte 2006 begann die CHDK-Geschichte. Der Programmierer VitalyB konnte ein offizielles Ixus-Firmware-Update soweit analysieren, dass er die Update-Prozedur verstand. Mit diesem Wissen schrieb er ein Programm zum Auslesen der Firmware. Dazu wurden die Daten an eine der Kamera-LEDs geschickt und per optische Kopplung ausgelesen.

Mit den Erkenntnissen aus der Auswertung der Daten wurde ein Programm geschrieben, welches 10-Bit-RAW-Dateien der PowerShot A610 speichern konnte. Das Programm erhielt den Namen RAW-Enabler.

Im nächsten Entwicklungsschritt erfolgte die Integration eines Interpreters für den BASIC-Dialekt uBasic. Damit waren einfache Skripte zur Steuerung der Kamera möglich.

Die Kamera-Modelle PowerShot A620, A630 und A710 wurden in das Projekt einbezogen. Als neue Funktionen kamen eine Histogramm-Anzeige, erste Möglichkeiten für Belichtungsreihen, OSD-Anzeigen und ein Layout-Editor zur Positionierung der OSD-Elemente hinzu.

Ab Anfang 2007 fügte der Programmierer GrAnd[3] die Anzeige diverser Kamera-Werte, Über- und Unterbelichtung im Histogramm, einen DOF-Rechner, eine Batterie-Anzeige, einen Datei-Browser, einen Text-Anzeiger, die Organisation der RAW-Speicherung sowie eine Autostart-Funktion hinzu und nannte das Projekt CHDK.

Im September 2007 entwickelte der Programmierer MX3 eine Bewegungserkennung für den Firmware-Aufsatz. Ein weiterer Programmierer, Fingalo, erweiterte uBasic wesentlich durch eine Vielzahl von Kamera-spezifischen Befehlen. Die nächsten acht Kameramodelle konnten CHDK nutzen. Lange Belichtungszeiten und Belichtungsreihen im Serienmodus folgten als neue Funktionen.

Erstmalig gelang es, DIGIC-III-Kameras mit VxWorks- und DRYOS-Betriebssystem erfolgreich anzupassen. USB-Fernbedienmöglichkeiten entstanden.

Anfang 2008 gingen ein Vielzahl neuer Funktionen in der Version ALLBEST auf. Mitte 2008 entwickelte sich die Experimental-Version Juciphox mit einer ganzen Reihe an neuen Funktionen, u.a. die Skriptsprache LUA, zum Standard, so wie wir CHDK heute kennen. Die letzte wichtige Neuerung war der kamerainterne DNG-Support.

Im Laufe der Zeit bildete sich eine große Gemeinschaft heraus, die die Weiterentwicklung von CHDK gemeinsam betreibt. Gegenwärtig werden mehr als 60 Kamera-Modelle der Ixus- und PowerShot-Serien unterstützt.

Arbeitsweise[Bearbeiten | Quelltext bearbeiten]

Die notwendigen Binär-Daten werden auf die in der Kamera benutzen Speicherkarte kopiert. Zum Start von CHDK ruft man die Firmware-Update-Funktion im Kamera-Menü auf, um die Daten in den Arbeitsspeicher der Kamera zu laden. Per Kamera-Tastatur kann nun ein zusätzliches Konfigurationsmenü aufgerufen werden, in dem sämtliche Einstellungen des CHDK organisiert werden. Wird die Update-Funktion nicht ausgeführt, arbeitet die Kamera ganz normal ohne CHDK.

Bei Bedarf kann CHDK bei Einschalten der Kamera auch automatisch gestartet werden.

Funktionsüberblick[Bearbeiten | Quelltext bearbeiten]

CHDK bietet sehr viele Funktionen an. Diese können hier nur als Überblick zusammengefasst werden.

  • CHDK ermöglicht die Aufnahme von RAW/DNG-Bildern.
  • Schnelle Belichtungsreihen mit frei einstellbaren Belichtungswerten.
  • Manuell einstellbare Belichtungszeit (von 1/100000 s bis 65 s (Bei einigen Kameras ist die max. Belichtungszeit unbegrenzt.) )
  • Manuell einstellbare Fokusdistanz
  • Manuell einstellbare Blendenwerte/ND-Filter-Stellung (in Abhängigkeit von der Kamera-Hardware)
  • Manuell bestimmbare ISO-Werte (Ober- und Untergrenze ist abhängig von der Hardware.)
  • Einstellbare Auto-ISO-Werte für unterschiedliche Aufgaben
  • Erweiterte einstellbare Belichtungskorrektur (Ev)
  • Viele weitere Zusatzinformationen und Einstellungen für den ambitionierten Fotografen (z.B. Schärfentiefe-Rechner, Einstellung der hyperfokale Entfernung)
  • Mehrfachbelichtung und Weiterverarbeitung zu einem Bild in der Kamera.
  • Erweiterte Video-Funktionen (Zoomen und Fokussieren während der Aufnahme)
  • Stufenlos einstellbare Videoqualität für die Videoaufnahme
  • Tonwertkurven können direkt in der Kamera eingerechnet werden.
  • Konturenüberlagerungen als Hilfsmittel für Trickaufnahmen
  • Fernauslösung mit Hilfe einer Fernbedienung (Selbstbau)
  • Erweiterte Funktionen durch Skripte (uBasic und Lua)
    • Belichtungsreihen für HDR
    • Zeitintervall-Aufnahmen für Zeitraffer
    • automatisches Fokus-Stacking
    • Kamera löst aus, wenn Bewegung im Bild erkannt wird.
    • Zeit-gesteuerte Abläufe
    • Virtuelle Kamera-Modi und Funktionen, die die Kamera nativ nicht unterstützt (z.B. Tv-Modus für Kameras ohne diesen Modus).
    • Fernbedienung-gesteuerte Abläufe (Selbstbau-Fernbedienung für USB-Anschluss der Kamera)
    • Datei-Management, Logdateien erstellen, zusätzliche Informationen in Exif-Daten schreiben
  • Autostart für Skripte, ermöglicht bestimmte persönliche Voreinstellungen beim Einschalten der Kamera.
  • Live-Histogramm mit gesonderten Einstellung für RGB und Luminanz.
  • Markiert Flächen ohne Bildinformationen (Zebra-Modus, Anzeige der Über- und Unterbelichtung).
  • Anzeige der aktuellen Kapazität von Akku und Speicherkarte.
  • Anzeige von Uhrzeit und Kamera-Temperatur.
  • Anzeige eigener Gitternetze zur besseren Orientierung auf dem LCD.
  • Kleine Zusatztools, wie zum Beispiel: Kalender, Textbetrachter, Datei-Browser und Spiele
  • Alle Funktionen sind über ein einheitliches Menü einstellbar.
  • Persönliches Benutzer-Menü zur Zusammenfassung der wichtigsten Funktionen.
  • Persönliche Einstellungen für CHDK-OSD-Elemente (Farbe, Position) und das CHDK-Menü (Farbe, Zeichensatz).
  • Tastatur-Kürzel zur schnellen Bedienbarkeit der wichtigsten CHDK-Funktionen über die Bedientasten der Kamera.

Grenzen[Bearbeiten | Quelltext bearbeiten]

CHDK überschreitet die physikalischen Grenzen der Kamera nicht. Es sind keine anderen als von der Kamera vorgegebenen Bild- und Video-Formate möglich. CHDK eignet sich nicht als Abspiel-Programm für diverse Multimedia-Formate wie z.B. MP3.

Varianten[Bearbeiten | Quelltext bearbeiten]

Neben der allgemeinen internationalen CHDK-Version gibt es weitere Varianten.

Speziell für den deutschen Sprachraum wurde eine Version entwickelt, die alle Voreinstellungen für eine deutsche Benutzerführung sowie einen erweiterten Umfang von Skript-Befehlen beinhaltet. Die deutsche CHDK-Nutzer-Gemeinschaft hat sich besonders auf die Anwendung von Skripten spezialisiert.

Eine weitere sehr beliebte Variante nennt sich SDM, Stereo Data Maker. Hier geht es vorrangig um die Erstellung von Stereo-Bildern. SDM unterstützt dabei die Synchronisation mehrerer Kameras, beinhaltet aber auch die wesentlichen CHDK-Funktionen.

Es gibt diverse Ansätze, digitale Spiegelreflexkameras der Canon EOS-Reihe mit zusätzlichen Funktionen auszustatten. Diese Entwicklungen unterscheiden sich deutlich vom CHDK für digitale Kompaktkameras.

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. CHDK-Quellcode
  2. compilierte Version
  3. Profil GrAnd