私は EDSDK 2.14 を使用する C++ の新しいプログラマーです。Canon EOS 5D Mark II を使用していますが、いくつか質問があります (API、カメラ セッション、ハンドラー、容量の設定を開始し、プログラムで写真を撮り、カメラに正しいパラメーターを設定し、Windows を使用しています)。いくつかのイベントを処理するためのメッセージ):
1) 写真をホスト pc に保存する必要があります。これは正しく行っていますが、カメラは内部バッファーに 8 枚の写真しか許可しておらず、パラメーター (AV、TV、ISO 速度) の組み合わせをテストする必要があります。「s」を押すと(Windowsメッセージ、コールバックで)10枚の写真を撮るループを作成し、8枚の写真しか撮れず、他の写真にはビジーエラーがあるため、それが内部バッファであると推測します。1 つの Windows イベントでパラメーターを正しく変更して、8 枚以上の写真を撮るにはどうすればよいですか? ps: セッションを再開しようとしました (カメラでセッションを閉じて再度開く) が、転送 (画像のダウンロード) のイベント ハンドルがオブジェクトのリリースでのみ設定されたため、良い考えではありませんでした。
2) 1 枚の写真を取得してダウンロードしようとしましたが、できませんでした。's' を押すと、プログラムは 8 枚の写真を撮るのを待ち、その後、カメラはすべての画像をダウンロードするためにハンドルにイベント コールバックを送信します。「s」を押すと、プログラムが 1 枚の写真を撮り、ダウンロードして他の写真を撮ります。可能であれば、どうすればよいですか?
3) AV、TV、ISO 速度パラメーターを設定するメソッドを作成すると、写真を撮るのに間に合うようにカメラに送信されるか、カメラのコールバックのようなものを待つ必要があります。そのようなものが必要な場合、どのイベントを使用する必要がありますか? ps: 私のプログラムはすべて非同期です。スレッドを使用しておらず、コールバックとウィンドウ イベントのみを使用しています。
4) 正しい焦点を当てようとしてインターネットで検索しましたが、それはライブビューでのみ可能であると言う人もいました。私のアプリケーションではこれを使用できません。ライブビューなしでフォーカスを変更することはできますか? ps: 良い写真と私のプログラムでカメラのオートフォーカスが必要なので、EOS Utility のような同じ品質の画像を行っていません。撮影した画像に後処理があるかどうかを考えています。
さらに質問がある場合、または質問を解決した場合は、すべてのコミュニティに回答します. 私の英語について申し訳ありません。私はこの言語のネイティブではありませんが、最善を尽くしています。