Autor Thema: alternative Software-Lösung für EOS-Kameras  (Gelesen 3846 mal)

MiR

  • Member
  • Beiträge: 139
alternative Software-Lösung für EOS-Kameras
« am: Oktober 03, 2022, 21:20:23 Nachmittag »
Hallo Freunde der Canon-Kameras,

neben der Möglichkeit mit EOS-Utility zu arbeiten, hält Canon auch noch das "Canon EOS Digital SDK" (Software-Development-Kit) parat.  Welche Kamera-Modelle unterstützt werden, siehe hier:
https://developers.canon-europe.com/developers/s/article/Latest-EOS-SDK-Version-13-x
 
Was kann man damit anstellen:
deutsche Version -> https://www.canon.de/pro/stories/eos-digital-sdk-explained/
Version in Englisch -> https://www.canon-europe.com/business/imaging-solutions/sdk/

Also wer mehr möchte, und vor allen Dingen sein eigenes Programm, ist mit dem SDK gut beraten.  (Nochmal) ein kurzer Auszug aus dem knapp 200-seitigen Begleitdokument zum SDK:

"1. Introduction
.... EDSDK provides the functions required to control cameras connected to a host PC, digital images created in digital cameras, and images downloaded to the PC. This document describes the collection of functions implemented in the EDSDK library.
EDSDK provides an interface for accessing image data shot using a Canon digital camera. Using EDSDK allows users to implement the following types of representative functions in software.
・ Allows transfer of images in a camera to storage media on a host PC.
・ Allows remotely connected cameras and the image being shot to be controlled from a host PC.
1.1 Basic Topics
EDSDK provides a C language interface for accessing Canon digital cameras and data created these cameras. EDSDK is designed to provide standard methods of accessing different camera models and their data. Using EDSDK allows users to implement Canon digital camera features in software.
There are two versions of EDSDK. One runs under a Windows environment, while the other runs under a Macintosh environment."
- Zitatende -  Quelle: EDSDK_API_EN.pdf, Seite 11

Allerdings steht ein wenig Arbeit an, um an das SDK zu gelangen. Man kann es nicht einfach herunterladen, sondern es ist eine Registrierung notwendig sowie einige Angaben, wie z.B., was man damit anfangen möchte ... Das wird dann geprüft (jedenfalls wird dies behauptet) und man erhält dann das Ergebnis der Prüfung. In meinem Fall nach 3 Tagen und mit positiver Bilanz  :D :)

Viele Grüße aus Berlin
Michael

Adalbert

  • Member
  • Beiträge: 2221
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #1 am: Oktober 03, 2022, 22:30:22 Nachmittag »
Hallo Michael,
das ist eine tolle Sache!
Es wäre super wenn man das Gleiche für die Firmware hätte :-)
Die Entwickler von ML bzw. CHDK hätten viel einfacher …
LG, ADi

MiR

  • Member
  • Beiträge: 139
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #2 am: Oktober 04, 2022, 09:45:19 Vormittag »
Hallo Adi,

freut mich, wenn mein Beitrag auf Interesse stößt.  Hinsichtlich der Firmware kannst du ja mal bei Canon anfragen ... ;)

Viele Grüße aus Berlin
Michael

Aljoscha

  • Member
  • Beiträge: 609
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #3 am: Oktober 04, 2022, 10:18:40 Vormittag »
Hallo,

Ein SDK als "alternative Software-Lösung" zu einer Anwendung wie den EOS-Utilities zu bezeichnen, setzt schon eine sehr spezielle Perspektive voraus. Das ist etwa so, als würde man Visual C++ eine alternative Software-Lösung zu Winword nennen. Schließlich kann man mit C++ ja selbst eine Textverarbeitung programmieren. Die Fräßmaschine wäre entsprechend eine alternative Lösung zum Mikroskop. Kann man sich ja selbst bauen.  8)

Ein Firmware-SDK gab es von Canon für die früheren Prozessoren bis zum Digic 5. Das sind die Kamera-Generationen bis zur 6D oder 60 D. Genau für diese Kameras gibt es auch Magic Latern, für modernere Kameras nicht. Wird es nie geben, auch wenn viele die Realität immer noch nicht sehen wollen. Ohne SDK reissen die ML-Leute nichts. Das Projekt ist tot.

Viele Grüße

Alexander

MiR

  • Member
  • Beiträge: 139
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #4 am: Oktober 09, 2022, 21:09:58 Nachmittag »
Hallo,

Zitat
Ein SDK als "alternative Software-Lösung" zu einer Anwendung wie den EOS-Utilities zu bezeichnen, setzt schon eine sehr spezielle Perspektive voraus.
Das setzt in der Tat „schon eine sehr spezielle Perspektive voraus“, zu behaupten, ich würde das „SDK als "alternative Software-Lösung" zu einer Anwendung wie den EOS-Utilities …“ bezeichnen.
Die Überschrift lautet: „alternative Software-Lösung für EOS-Kameras“  und nicht -alternative Software für die EOS-Utilities-, oder Ähnliches.
Zitat
Das ist etwa so, als würde man Visual C++ eine alternative Software-Lösung zu Winword nennen. Schließlich kann man mit C++ ja selbst eine Textverarbeitung programmieren.
Die Fräßmaschine wäre entsprechend eine alternative Lösung zum Mikroskop. Kann man sich ja selbst bauen.  8)
Diese Vergleiche sollen cool sein? Wirklich ?? Insbesondere Ihr Fräßmaschine/Mikroskop-Beispiel scheint eher daneben ...
Zitat
Wird es nie geben, auch wenn viele die Realität immer noch nicht sehen wollen. Ohne SDK reissen die ML-Leute nichts. Das Projekt ist tot.
? ? ? ? ?

Viele Grüße
Michael
« Letzte Änderung: Oktober 09, 2022, 21:28:57 Nachmittag von MiR »

Aljoscha

  • Member
  • Beiträge: 609
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #5 am: Oktober 09, 2022, 23:30:14 Nachmittag »

Zitat
Wird es nie geben, auch wenn viele die Realität immer noch nicht sehen wollen. Ohne SDK reissen die ML-Leute nichts. Das Projekt ist tot.
? ? ? ? ?


Hallo,

Schon einmal darüber nachgedacht, warum es für keine einzige Kamera, die nach 2013 erschien, eine lauffähige Version von Magic Latern gibt? Die Version für die 70D kommt seit 9 Jahren nicht über das Ankündigungsstadium hinaus. Für alles danach gibt es nicht einmal Ankündigungen.

Das Projekt ist tot.

Viele Grüße

Alexander

MiR

  • Member
  • Beiträge: 139
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #6 am: Oktober 09, 2022, 23:40:59 Nachmittag »
Hallo,

Zitat
Schon einmal darüber nachgedacht, warum es für keine einzige Kamera, die nach 2013 erschien, eine lauffähige Version von Magic Latern gibt?
Nein, weil es im Beitrag um das EOS Digital SDK geht und nicht um die Firmware von Kameras (oder was auch immer) zu ändern.

Viele Grüße
Michael


Florian D.

  • Member
  • Beiträge: 1566
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #7 am: Oktober 10, 2022, 07:47:21 Vormittag »
Hallo,

Entangle hat ganz gut funktioniert,
https://entangle-photo.org/
zumindest zuletzt mit einer Canon 600D.

Viele Grüsse
Florian

MiR

  • Member
  • Beiträge: 139
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #8 am: Oktober 14, 2022, 13:47:52 Nachmittag »
Erste Erfahrungen mit dem  Canon EOS Digital SDK , Version 13.14.40

Für wen ist dieser Bericht gedacht ? 
Nutzer welche  a)   programmieren möchten oder zukünftig dies tun wollen   oder b)   einfach mal nur die Beispielprogramme des SDK testen möchten.

Grundlegende Bemerkungen zum SDK

Wie ein Blick in die Download-Liste von Canon zeigt, wird dieses Kit laufend erweitert. Grundlegend basiert das Kit auf zwei nativen DLL’s, - „EDSDK.dll“ und „EdsImage.dll“-,  für 32Bit und auch für 64Bit-Windows. Wie bereits in meinem Eingangsbeitrag erwähnt, gibt es auch eine Version für den Macintosh. Android-Geräte werden ebenfalls unterstützt.
Als Betriebssystemversionen werden Windows 8, 8.1 und 10 (32/64 Bit) vorausgesetzt. Bei mir läuft das SDK unter Windows 7, Prof., 32 Bit.
Obwohl die Dateinamen der SDK-DLLs und der EOS-Utils, als auch die Namen der Funktionen (überprüft mit dem Dependency Walker) identisch sind, lassen sich die SDK-Beispiele nur mit den SDK-DLL’s betreiben. Möglicherweise gibt es neuere „Utilities“-Versionen die kompatibel sind. 

Programmier-Umgebung

Die im Paket enthaltenen Beispiele wurden einmal in CSharp, Visual Basic und Visual C++ verfasst. Da das VB-Beispiel kürzer ist, als das VC-Beispiel, kann man sich daran schneller einen Überblick (Programmierung) verschaffen.
Zur Ausführung bzw. Kompilierung der Beispiele wird Microsoft’s Visual Studio benötigt, womit ich nicht sagen will, dass das SDK generell nur unter MVS zu betreiben ist. Für die nativen DLL’s  wäre auch eine Anpassung der Funktionsdefinitionen (Typen usw.) für andere Programmierumgebungen gut vorstellbar.
 
Da ich „nur“ die Express-Version 2010 installiert hatte, habe ich die ersten Versuche damit durchgeführt. Das VB-Beispiel konnte, nach automatischer Anpassung, ohne Probleme kompiliert werden. Debugging, nach Verweis auf die DLL’s, war ebenfalls möglich.
Das VC-Beispiel bemängelte das „falsche“ Tool(frame)set. Es gibt zwar die Möglichkeit dieses zusätzlich zu installieren, aber keine Garantie dass damit das Problem gelöst ist.
Da ich überhaupt kein Experte bin, was das MSVS anbelangt, wurde deshalb „Microsoft Visual Studio Community 2017“ installiert (Beispiele sind mit dieser Hauptversion erstellt), was natürlich ziemlich viel Geduld erfordert.
Nach Laden des VC-Projekts, wurden fehlende Systemdateien durch den Installer automatisch nachgeladen. So stand einer erfolgreichen Kompilierung bzw. ein Start im Debug-Modus nichts mehr im Weg.

Das VB und VC-Beispiel

Zum Test wurde die Kamera EOS 1200D benutzt. Während sich das VB-Beispiel auf den „linken Teil des VC-Beispiels“ also von „AEMode – ImageQuality“ + „Take Picture“ beschränkt, erlaubt das VC-Beispiel (rechte Seite im Foto) einige Versuche mit dem elektronischen Sucher „EVF“, sowie bei Objektivbetrieb, die Fokussteuerung per PC. 

Folgend, sollten eigentlich die kompilierten Dateien der Beispiele zu finden sein. Da das System nur Dateiendungen für Bilder akzeptiert, könnte ich die "Sample.exe" in "Sample.jpg" umbenennen, was eben vom System akzeptiert wurde ... Ich habe diese Datei trotzdem vorläufig wieder gelöscht ... Es gibt jetzt eine Sample.pdf !!

Grüße aus Berlin
Michael

PS: Es gibt einige Seiten welche sich mit dem SDK beschäftigen (Beispiel für Android: https://dev.epicgames.com/docs/game-services/platforms/android).
« Letzte Änderung: November 21, 2022, 13:08:16 Nachmittag von MiR »

Adalbert

  • Member
  • Beiträge: 2221
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #9 am: Oktober 14, 2022, 14:09:25 Nachmittag »
Hallo Michael,
vielen Dank für den Bericht!
Klappt es auch mit Visual Studio Code ?
LG, ADi

MiR

  • Member
  • Beiträge: 139
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #10 am: Oktober 14, 2022, 14:48:07 Nachmittag »
Hallo Adi,

ja, funktioniert, siehe Bericht  ;)
Die kompilierten Dateien könnte ich hochladen, so wie beschrieben, getrau mich aber nicht ...

Viele Grüße aus Berlin
Michael

Adalbert

  • Member
  • Beiträge: 2221
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #11 am: Oktober 14, 2022, 14:51:47 Nachmittag »
Hallo Michael,
in welchem Bericht genau steht etwas von Visual Studio Code ?
LG, ADi

MiR

  • Member
  • Beiträge: 139
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #12 am: Oktober 14, 2022, 15:08:03 Nachmittag »
Hallo Adi,

möglicherweise schreiben wir aneinander vorbei, was genau meinst du mit  "Klappt es auch mit Visual Studio Code ?". Ich dachte, du meinst die mitgelieferten Beispiele ...

VG Michael

Adalbert

  • Member
  • Beiträge: 2221
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #13 am: Oktober 14, 2022, 15:09:32 Nachmittag »
Hallo Michael,
mir ging es um das kostenlose: „Visual Studio Code
nicht um das Visual Studio“.
LG, ADi
« Letzte Änderung: Oktober 14, 2022, 15:47:15 Nachmittag von Adalbert »

MiR

  • Member
  • Beiträge: 139
Re: alternative Software-Lösung für EOS-Kameras
« Antwort #14 am: Oktober 14, 2022, 16:18:13 Nachmittag »
Hallo Adi,

aaah, langsam kommen wir auf einen grünen Zweig. Ganz schöne Falle mit der "Visual Studio Code"- Programmierumgebung und einem "Visual Studio"- Code ... :)  Auch wenn deine Formulierung (eigentlich) eindeutig war, aber leicht zu überlesen resp. schwer zu deuten.
Danke für den Hinweis, kannte ich bisher überhaupt nicht, läuft aber bei mir (Win7, Prof. , 32Bit) nicht. Laut MS, sollen wohl nur die Namen eine gewisse Übereinstimmung haben, das war es dann aber auch schon. Da ich es nicht testen kann, bleibt mir nur die Frage zu stellen, ob native DLL's in "Visual Studio Code" eingebunden werden können ...
Um kostenfrei zu bleiben, benutzt ich halt nur die Express- bzw. die Community-Versionen. Und solange man mit der Community-Version keine kommerziellen Anwendungen stricken möchte ...
Ich selber bin auch nicht der "Visual Studio"-Anwender, sodass ich abwägen muß, ob sich eine Portierung in "meine" Programmiersprache (GFA-Basic32) lohnt oder doch mich ein wenig in die VS-Oberfläche einarbeiten sollte. Auch wenn es sich überwiegend "nur" um Hobby-Anwendungen handelt.

Viele Grüße aus Berlin
Michael