Language

CameraCaptureSession.AbortCaptures メソッド

定義

現在保留中および進行中のすべてのキャプチャをできるだけ早く破棄します。

[Android.Runtime.Register("abortCaptures", "()V", "GetAbortCapturesHandler")]
public abstract void AbortCaptures();
[<Android.Runtime.Register("abortCaptures", "()V", "GetAbortCapturesHandler")>]
abstract member AbortCaptures : unit -> unit
属性

例外

カメラ デバイスが接続されなくなった場合、または致命的なエラーが発生した場合

このセッションがアクティブでなくなった場合は、セッションが明示的に閉じられたか、新しいセッションが作成されたか、カメラ デバイスが閉じられています。

注釈

現在保留中および進行中のすべてのキャプチャをできるだけ早く破棄します。

カメラ デバイスは、現在のすべての作業をできるだけ速く破棄します。 処理中のキャプチャの中には、正常に完了して CaptureCallback#onCaptureCompletedを呼び出す場合もあれば、 CaptureCallback#onCaptureFailed コールバックをトリガーするキャプチャもあります。 繰り返し要求または繰り返しバーストが設定されている場合は、クリアされます。

この方法は、進行中の作業を破棄するコストで、 CameraDevice#createCaptureSession または CameraDevice#createReprocessableCaptureSessionを使用してカメラ デバイスを新しいセッションに切り替える最速の方法です。 新しいセッションを作成する前に呼び出す必要があります。 保留中のすべての要求が完了するか破棄されると、セッションが閉じていない場合は、 StateCallback#onReady コールバックが呼び出されます。 それ以外の場合、 StateCallback#onClosed コールバックは、カメラ デバイスによって新しいセッションが作成されたときに発生します。

カメラ デバイスが空になると、新しい出力バッファーが生成される前に、最初の新しい要求がカメラ パイプライン全体を介して行う必要があるため、取り消すと、カメラ デバイスからのデータ ストリームに少なくとも一時停止が発生します。

つまり、 abortCaptures() を使用して保留中の要求を削除することはお勧めしません。出力構成をすばやく切り替えたり、進行中の長い要求 (複数秒のキャプチャなど) を取り消したりする場合に最適です。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象

こちらもご覧ください

  • <xref:Android.Hardware.Camera2.CameraCaptureSession.SetRepeatingRequest(Android.Hardware.Camera2.CaptureRequest%2c+.CaptureCallback%2c+.CaptureCallback)>