CameraCaptureSession Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Eine konfigurierte Aufnahmesitzung für eine CameraDevice, die für die Aufnahme von Bildern aus der Kamera oder das Erneute Verarbeiten von Bildern aus der Kamera in derselben Sitzung verwendet wird.
[Android.Runtime.Register("android/hardware/camera2/CameraCaptureSession", DoNotGenerateAcw=true)]
public abstract class CameraCaptureSession : Java.Lang.Object, IDisposable, 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
- Vererbung
- Abgeleitet
- Attribute
- Implementiert
Hinweise
Eine konfigurierte Aufnahmesitzung für eine CameraDevice, die für die Aufnahme von Bildern aus der Kamera oder das Erneute Verarbeiten von Bildern aus der Kamera in derselben Sitzung verwendet wird.
Eine CameraCaptureSession wird erstellt, indem eine Reihe von Zielausgabeoberflächen bereitgestellt CameraDevice#createCaptureSession createCaptureSessionwird, oder indem sie eine und eine android.hardware.camera2.params.InputConfiguration Reihe von Zielausgabeoberflächen CameraDevice#createReprocessableCaptureSession createReprocessableCaptureSession für eine wiederverarbeitbare Aufnahmesitzung bereitstellen. Nach der Erstellung ist die Sitzung aktiv, bis eine neue Sitzung vom Kameragerät erstellt wird oder das Kameragerät geschlossen wird.
Alle Aufnahmesitzungen können für die Aufnahme von Bildern aus der Kamera verwendet werden, aber nur wiederverarbeitbare Aufnahmesitzungen können Bilder verarbeiten, die in derselben Sitzung zuvor von der Kamera erfasst wurden.
Das Erstellen einer Sitzung ist ein kostspieliger Vorgang und kann mehrere hundert Millisekunden dauern, da das Konfigurieren der internen Pipelines des Kamerageräts und das Zuordnen von Speicherpuffern zum Senden von Bildern an die gewünschten Ziele erforderlich ist. Daher erfolgt die Einrichtung asynchron und CameraDevice#createCaptureSession createCaptureSessionCameraDevice#createReprocessableCaptureSession createReprocessableCaptureSession sendet die einsatzbereite CameraCaptureSession an den Rückruf des CameraCaptureSession.StateCallback#onConfigured onConfigured bereitgestellten Listeners. Wenn die Konfiguration nicht abgeschlossen werden kann, wird dies CameraCaptureSession.StateCallback#onConfigureFailed onConfigureFailed aufgerufen, und die Sitzung wird nicht aktiv.
<!--
Alle Erfassungsanforderungen (wiederholte oder nicht wiederholte) Übermittlungen, bevor die Sitzung bereit ist, werden in die Warteschlange eingereiht und beginnen mit der Erfassung, sobald die Sitzung bereit ist. Falls die Sitzung nicht konfiguriert werden kann und StateCallback#onConfigureFailed onConfigureFailed aufgerufen wird, werden alle Anforderungen für die Aufnahme in die Warteschlange verworfen.
-->
Wenn eine neue Sitzung vom Kameragerät erstellt wird, wird die vorherige Sitzung geschlossen, und der zugehörige StateCallback#onClosed onClosed Rückruf wird aufgerufen. Alle Sitzungsmethoden lösen eine IllegalStateException aus, wenn die Sitzung geschlossen wurde.
Eine geschlossene Sitzung löscht alle wiederholten Anforderungen (wie wenn #stopRepeating sie aufgerufen wurden), schließt aber weiterhin alle laufenden Aufnahmeanforderungen wie gewohnt ab, bevor eine neu erstellte Sitzung das Kameragerät übernimmt und neu konfiguriert.
Java Dokumentation für android.hardware.camera2.CameraCaptureSession.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
| Name | Beschreibung |
|---|---|
| CameraCaptureSession() | |
| CameraCaptureSession(IntPtr, JniHandleOwnership) |
Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Class |
Gibt die Laufzeitklasse dieses Werts |
| Device |
Rufen Sie das Kameragerät ab, für das diese Sitzung erstellt wird. |
| Handle |
Das Handle für die zugrunde liegende Android-Instanz. (Geerbt von Object) |
| InputSurface |
Eine konfigurierte Aufnahmesitzung für eine |
| IsReprocessable |
Eine konfigurierte Aufnahmesitzung für eine |
| JniIdentityHashCode |
Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist. (Geerbt von Object) |
| JniManagedPeerState |
Eine konfigurierte Aufnahmesitzung für eine |
| JniPeerMembers |
Eine konfigurierte Aufnahmesitzung für eine |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| ThresholdClass |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
| ThresholdType |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
Methoden
| Name | Beschreibung |
|---|---|
| AbortCaptures() |
Verwerfen Sie alle derzeit ausstehenden und in Bearbeitung befindlichen Aufzeichnungen so schnell wie möglich. |
| Capture(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler) |
Senden Sie eine Anforderung für ein Bild, das vom Kameragerät erfasst werden soll. |
| CaptureBurst(IList<CaptureRequest>, CameraCaptureSession+CaptureCallback, Handler) |
Senden Sie eine Liste der Anforderungen, die in Sequenz als Platz erfasst werden sollen. |
| CaptureBurstRequests(IList<CaptureRequest>, IExecutor, CameraCaptureSession+CaptureCallback) |
Senden Sie eine Liste der Anforderungen, die in Sequenz als Platz erfasst werden sollen. |
| CaptureSingleRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback) |
Senden Sie eine Anforderung für ein Bild, das vom Kameragerät erfasst werden soll. |
| Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von Object) |
| Close() |
Schließen Sie diese Aufnahmesitzung asynchron. |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Eine konfigurierte Aufnahmesitzung für eine |
| Dispose() |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| Dispose(Boolean) |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| DisposeUnlessReferenced() |
Eine konfigurierte Aufnahmesitzung für eine |
| Equals(Object) |
Eine konfigurierte Aufnahmesitzung für eine |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| FinalizeOutputConfigurations(IList<OutputConfiguration>) |
Finalize the output configurations that now have their deferred and/or extra Surfaces included. |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| JavaFinalize() |
Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind. (Geerbt von Object) |
| Notify() |
Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet. (Geerbt von Object) |
| NotifyAll() |
Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten. (Geerbt von Object) |
| Prepare(Surface) |
Weisen Sie alle Puffer für eine Ausgabe Surface vorab zu. |
| SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Eine konfigurierte Aufnahmesitzung für eine |
| SetRepeatingBurst(IList<CaptureRequest>, CameraCaptureSession+CaptureCallback, Handler) |
Fordern Sie die endlos wiederholte Aufnahme einer Abfolge von Bildern durch diese Aufnahmesitzung an. |
| SetRepeatingBurstRequests(IList<CaptureRequest>, IExecutor, CameraCaptureSession+CaptureCallback) |
Fordern Sie die endlos wiederholte Aufnahme einer Abfolge von Bildern durch diese Aufnahmesitzung an. |
| SetRepeatingRequest(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler) |
Fordern Sie die endlos wiederholte Aufnahme von Bildern durch diese Aufnahmesitzung an. |
| SetSingleRepeatingRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback) |
Fordern Sie die endlos wiederholte Aufnahme von Bildern durch diese Aufnahmesitzung an. |
| StopRepeating() |
Abbrechen aller fortlaufenden wiederholten Aufzeichnungen, die entweder |
| SupportsOfflineProcessing(Surface) |
Fragen Sie ab, ob ein bestimmter Surface den Offlinemodus unterstützen kann. |
| SwitchToOffline(ICollection<Surface>, IExecutor, CameraOfflineSession+CameraOfflineSessionCallback) |
Schalten Sie die aktuelle Aufnahmesitzung und einen bestimmten Satz registrierter Kameraoberflächen in den Offlineverarbeitungsmodus um. |
| ToArray<T>() |
Erstellt ein verwaltetes Array aus diesem Java Arraywrapper. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
| UnregisterFromRuntime() |
Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf. (Geerbt von Object) |
| UpdateOutputConfiguration(OutputConfiguration) |
Update |
| Wait() |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><> (Geerbt von Object) |
| Wait(Int64, Int32) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
| Wait(Int64) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IJavaPeerable.Disposed() |
Eine konfigurierte Aufnahmesitzung für eine |
| IJavaPeerable.Finalized() |
Eine konfigurierte Aufnahmesitzung für eine |
| IJavaPeerable.JniObjectReferenceControlBlock |
Eine konfigurierte Aufnahmesitzung für eine |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Eine konfigurierte Aufnahmesitzung für eine |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Eine konfigurierte Aufnahmesitzung für eine |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Eine konfigurierte Aufnahmesitzung für eine |
| IJavaPeerable.UnregisterFromRuntime() |
Eine konfigurierte Aufnahmesitzung für eine |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| JavaCast<TResult>(IJavaObject) |
Führt eine android-laufzeitgecheckte Typkonvertierung aus. |
| JavaCast<TResult>(IJavaObject) |
Eine konfigurierte Aufnahmesitzung für eine |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |