グッドワークタイム!
例として Android テスト アプリを使用して、Sony Remote API に関する C# ワープを作成しています。
ライブビューに問題が発生しました。
APIメソッド「startLiveview」でライブビューストリーミングを開始します。ライブビュー データ コンシューマーは別のスレッドで動作し、すべてを描画する時間がない場合はフレームを通過するだけです (私が理解している限り、テスト アプリと同じように)。
ただし、startLiveview メソッドが処理され、ストリームのフェッチが開始された後、カメラは他のすべての API コマンドの処理に問題が発生します。
たとえば、ワープがカメラを検出して接続した後、startRecMode などを実行すると、非常に高速に写真を撮ることができます。ただし、ライブビューが開始されるため、カメラはすべての actTakePicture 呼び出しを時間内に処理できません。シャッターがきれるまで数秒、あるいは数十秒待たなければならないこともあります。
写真撮影を開始する前に、ライブビューを停止しようとしました。それは問題ではありません - stopLiveview コマンドでも同じ問題が発生し、処理に数分もかかります (System.Net.WebClient.UploadString から戻るのに数分かかります)。
startLiveview の代わりに startLiveviewWithSize を使用して、利用可能な最小サイズを渡そうとしました (私が使用している Sony A7R には「M」があります)。検索結果はありません。ライブビューを正常に停止するにはどうすればよいですか? または、ライブビューがオンになっているときにパフォーマンスのペナルティを取り除くにはどうすればよいですか?
前もって感謝します!
pS MS VS 2010、.NET Framework 3.5、Sony ILCE Alpha 7R カメラを使用すると、検出されたすべての前処理設定がオフになります。