#BROCK.arts

Windows App für die PhotoBooth

Beim Bau der PhotoBooth bin ich immer von einer Wireless Lösung ausgegangen. Da diese aber irgendwie langsam ist bzw. meine Canon 7D kein Wireless kann wollte ich es mal über Kabel probieren.

Was aus der Idee wurde

Ich hatte natürlich erst einmal überlegt das ganze über Lightroom zu machen, warum auch nicht ist super bequem. Man kann Presets drüber legen wunderbar. Einziges Manko: Keine Touchsteuerung!

Ich habe den Gedanken also gleich verworfen und mich eher damit angefreundet eine Windows App zu schreiben. Gesagt getan, alles installiert (der Rechner hat Zwischendurch auch einen Abflug gemacht) und los ging es.

Ich muss gestehen, der Anfang war eigentlich einfach, Steuerelement reingezogen und schon war ein Slider vorhanden. Also noch Funktionen für die Verzeichnisauswahl, dass wurde dann schon etwas kniffliger aber nach Stunden von Arbeit und Tests hat es dann doch irgendwie funktioniert. Der echt nervige Teil kam erst, also ich den Ordner auf der Speicherkarte als Quelle auswählen wollte, es geht, allerdings lässt sich die Kamera nicht mehr steuern. Zwischendurch habe ich mal das EOS Utility benutzt um zu schauen wie es den so aussieht.

Da ich natürlich nicht Kampflos aufgeben wollte und die App eigentlich im Kiosk-Modus, also im geführten Zugriff, laufen sollte habe ich noch etwas rumgestöbert. Man glaubt es kaum, aber es gibt ein SDK von Canon mit der man die Kamera steuern kann. Traumhaft dachte ich mir! Bei der Suche habe ich auch ein Codebeispiel für die Sprache meiner Wahl, also C# gefunden. Der Autor, Johannes Bildstein (http://www.fotostein.at/Software/EDSDKAPI) hat mir auch noch etwas geholfen. Bevor es losgehen konnte musste ich mich aber noch bei Canon anmelden um das SDK zu bekommen.

Leider hat es aber alles nix geholfen. Das Beispiel von Johannes funktioniert wunderbar, die Integration in eine Windows App scheitert aber daran, dass erstens einige Klassen im .NET-Core nicht vorhanden sind, zum anderen aber blockiert Microsoft den Zugriff auf einige USB-Geräte, vor allem die mit der ClassId 6, welche dann die Kamera wäre. Zweiter Gedanke danach war die Erstellung eines Dienstes der die Steuerung vornimmt, geht auch nicht, der kann keine Events.

So nach all der mühe es zum Laufen zu bekommen bin ich jetzt erstmal wieder da, EOS Utility und Fernaufnahme + Windows App, leider ohne geführten Zugriff.

Und die App sieht jetzt übrigens so aus, wie findet ihr sie? Ich werde natürlich noch immer etwas weiter entwickeln, vor allem möchte ich ein paar Filter einbauen und vielleicht finde ich doch noch eine Lösung zur Ansteuerung!