共用方式為


CameraCaptureSession 類別

定義

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

[Android.Runtime.Register("android/hardware/camera2/CameraCaptureSession", DoNotGenerateAcw=true)]
public abstract class CameraCaptureSession : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.IAutoCloseable
[<Android.Runtime.Register("android/hardware/camera2/CameraCaptureSession", DoNotGenerateAcw=true)>]
type CameraCaptureSession = class
    inherit Object
    interface IAutoCloseable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
繼承
CameraCaptureSession
衍生
屬性
實作

備註

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

CameraCaptureSession 是藉由將一組目標輸出介面提供給 來建立,或藉由提供 android.hardware.camera2.params.InputConfiguration 和 一組目標輸出介面CameraDevice#createCaptureSession createCaptureSessionCameraDevice#createReprocessableCaptureSession createReprocessableCaptureSession以用於可重新處理的擷取會話。 建立之後,會話會處於作用中狀態,直到相機裝置建立新的會話,或相機裝置關閉為止。

所有擷取會話都可用於從相機擷取影像,但只有可重新處理的擷取會話可以重新處理先前相同會話中從相機擷取的影像。

建立會話是一項昂貴的作業,而且可能需要數百毫秒的時間,因為它需要設定相機裝置的內部管線,以及配置記憶體緩衝區,才能將影像傳送至所需的目標。 因此,安裝程式會以異步方式完成,並將CameraDevice#createCaptureSession createCaptureSessionCameraDevice#createReprocessableCaptureSession createReprocessableCaptureSession現成可用的 CameraCaptureSession 傳送至提供的接聽程式回CameraCaptureSession.StateCallback#onConfigured onConfigured呼。 如果無法完成設定,則會 CameraCaptureSession.StateCallback#onConfigureFailed onConfigureFailed 呼叫 ,且會話不會變成作用中。

<!--

在會話就緒之前提交的任何擷取要求(重複或非重複),都會排入佇列,一旦會話準備就緒,就會開始擷取。 如果無法設定會話並 StateCallback#onConfigureFailed onConfigureFailed 呼叫,則會捨棄所有已排入佇列的擷取要求。

-->

如果相機裝置建立新的會話,則會關閉上一個會話,並叫用其相關聯的 StateCallback#onClosed onClosed 回呼。 如果會話關閉之後呼叫,所有會話方法都會擲回 IllegalStateException。

關閉的會話會清除任何重複的要求(就像 #stopRepeating 已呼叫一樣),但在新建立的會話接管並重新設定相機裝置之前,仍會如常完成其進行中擷取要求。

android.hardware.camera2.CameraCaptureSessionJava 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

建構函式

CameraCaptureSession()
CameraCaptureSession(IntPtr, JniHandleOwnership)

建立 JNI 物件的 Managed 表示法時使用的建構函式;由運行時間呼叫。

屬性

Class

傳回這個 Object的運行時間類別。

(繼承來源 Object)
Device

取得此工作階段建立的相機裝置。

Handle

基礎Android實例的句柄。

(繼承來源 Object)
InputSurface

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

IsReprocessable

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

JniIdentityHashCode

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
JniPeerMembers

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

PeerReference

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
ThresholdClass

此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。

ThresholdType

此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。

方法

AbortCaptures()

儘快捨棄目前擱置和進行中的所有擷取。

Capture(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler)

提交相機裝置所擷取影像的要求。

CaptureBurst(IList<CaptureRequest>, CameraCaptureSession+CaptureCallback, Handler)

以高載的形式提交要依序擷取的要求清單。

CaptureBurstRequests(IList<CaptureRequest>, IExecutor, CameraCaptureSession+CaptureCallback)

以高載的形式提交要依序擷取的要求清單。

CaptureSingleRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback)

提交相機裝置所擷取影像的要求。

Clone()

建立並傳回這個 對象的複本。

(繼承來源 Object)
Close()

以異步方式關閉此擷取工作階段。

Dispose()

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
Dispose(Boolean)

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
FinalizeOutputConfigurations(IList<OutputConfiguration>)

完成現在已包含其延後和/或額外 Surface 的輸出組態。

GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
JavaFinalize()

當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。

(繼承來源 Object)
Notify()

喚醒正在等候此物件監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
Prepare(Surface)

預先配置輸出 Surface 的所有緩衝區。

SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
SetRepeatingBurst(IList<CaptureRequest>, CameraCaptureSession+CaptureCallback, Handler)

要求此擷取會話無休止地重複擷取一連串影像。

SetRepeatingBurstRequests(IList<CaptureRequest>, IExecutor, CameraCaptureSession+CaptureCallback)

要求此擷取會話無休止地重複擷取一連串影像。

SetRepeatingRequest(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler)

要求此擷取會話無休止地重複擷取影像。

SetSingleRepeatingRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback)

要求此擷取會話無休止地重複擷取影像。

StopRepeating()

取消 或 #setRepeatingBurst所設定的任何持續重複擷取。#setRepeatingRequest setRepeatingRequest

SupportsOfflineProcessing(Surface)

查詢指定的 Surface 是否能夠支援離線模式。

SwitchToOffline(ICollection<Surface>, IExecutor, CameraOfflineSession+CameraOfflineSessionCallback)

將目前的擷取會話和一組已註冊的相機表面切換至離線處理模式。

ToArray<T>()

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
UpdateOutputConfiguration(OutputConfiguration)

設定完成之後更新 OutputConfiguration ,請參閱 #finalizeOutputConfigurations

Wait()

讓目前線程等候直到喚醒為止,通常是藉由em <notified/em>或<em>interrupted</em> 來喚醒它。<>

(繼承來源 Object)
Wait(Int64)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。

(繼承來源 Object)

明確介面實作

IJavaPeerable.Disposed()

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
IJavaPeerable.DisposeUnlessReferenced()

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
IJavaPeerable.Finalized()

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
IJavaPeerable.JniManagedPeerState

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

(繼承來源 Object)

擴充方法

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

GetJniTypeName(IJavaPeerable)

CameraDevice已設定擷取會話,用於從相機擷取影像,或先前在相同會話中從相機擷取的影像。

適用於