Compartir a través de


CameraCaptureSession Clase

Definición

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

[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
Herencia
CameraCaptureSession
Derivado
Atributos
Implementaciones

Comentarios

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

CameraCaptureSession se crea proporcionando un conjunto de superficies de salida de destino a CameraDevice#createCaptureSession createCaptureSession, o proporcionando un android.hardware.camera2.params.InputConfiguration conjunto de superficies de salida de destino a CameraDevice#createReprocessableCaptureSession createReprocessableCaptureSession para una sesión de captura reprocesable. Una vez creada, la sesión está activa hasta que el dispositivo de cámara crea una nueva sesión o se cierra el dispositivo de cámara.

Todas las sesiones de captura se pueden usar para capturar imágenes de la cámara, pero solo las sesiones de captura reprocesable pueden volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

La creación de una sesión es una operación costosa y puede tardar varios cientos de milisegundos, ya que requiere configurar las canalizaciones internas del dispositivo de cámara y asignar búferes de memoria para enviar imágenes a los destinos deseados. Por lo tanto, la configuración se realiza de forma asincrónica y CameraDevice#createCaptureSession createCaptureSessionCameraDevice#createReprocessableCaptureSession createReprocessableCaptureSession enviará la cameraCaptureSession lista para usar a la devolución de llamada del agente de CameraCaptureSession.StateCallback#onConfigured onConfigured escucha proporcionado. Si no se puede completar la CameraCaptureSession.StateCallback#onConfigureFailed onConfigureFailed configuración, se llama a y la sesión no estará activa.

<!--

Las solicitudes de captura (repetición o no repetición) enviadas antes de que la sesión esté lista se ponerán en cola y comenzarán a capturarse una vez que la sesión esté lista. En caso de que no se pueda configurar la sesión y StateCallback#onConfigureFailed onConfigureFailed se llame a , se descartan todas las solicitudes de captura en cola.

-->

Si el dispositivo de cámara crea una nueva sesión, se cierra la sesión anterior y se invocará su devolución de llamada asociada StateCallback#onClosed onClosed . Todos los métodos de sesión producirán una excepción IllegalStateException si se llama una vez cerrada la sesión.

Una sesión cerrada borra las solicitudes de repetición (como si #stopRepeating se hubieran llamado), pero seguirá completando todas sus solicitudes de captura en curso como normales, antes de que una sesión recién creada tome el control y vuelva a configurar el dispositivo de cámara.

Documentación de Java para android.hardware.camera2.CameraCaptureSession.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Constructores

CameraCaptureSession()
CameraCaptureSession(IntPtr, JniHandleOwnership)

Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución.

Propiedades

Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
Device

Obtenga el dispositivo de cámara para el que se crea esta sesión.

Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
InputSurface

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

IsReprocessable

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

JniIdentityHashCode

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
JniPeerMembers

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

PeerReference

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
ThresholdClass

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

ThresholdType

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

Métodos

AbortCaptures()

Descarte todas las capturas actualmente pendientes y en curso lo más rápido posible.

Capture(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler)

Envíe una solicitud para que el dispositivo de cámara capture una imagen.

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

Envíe una lista de solicitudes que se capturarán en secuencia como una ráfaga.

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

Envíe una lista de solicitudes que se capturarán en secuencia como una ráfaga.

CaptureSingleRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback)

Envíe una solicitud para que el dispositivo de cámara capture una imagen.

Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
Close()

Cierre esta sesión de captura de forma asincrónica.

Dispose()

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
Dispose(Boolean)

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
FinalizeOutputConfigurations(IList<OutputConfiguration>)

Finalice las configuraciones de salida que ahora tienen sus superficies aplazadas o adicionales incluidas.

GetHashCode()

Devuelve un valor de código hash del objeto.

(Heredado de Object)
JavaFinalize()

Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto .

(Heredado de Object)
Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
Prepare(Surface)

Asigne previamente todos los búferes para una Superficie de salida.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetRepeatingBurst(IList<CaptureRequest>, CameraCaptureSession+CaptureCallback, Handler)

Solicite sin fin la captura de repetición de una secuencia de imágenes mediante esta sesión de captura.

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

Solicite sin fin la captura de repetición de una secuencia de imágenes mediante esta sesión de captura.

SetRepeatingRequest(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler)

Solicite sin fin la repetición de la captura de imágenes mediante esta sesión de captura.

SetSingleRepeatingRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback)

Solicite sin fin la repetición de la captura de imágenes mediante esta sesión de captura.

StopRepeating()

Cancele cualquier captura de repetición en curso establecida por #setRepeatingRequest setRepeatingRequest o #setRepeatingBurst.

SupportsOfflineProcessing(Surface)

Consulta si una superficie determinada puede admitir el modo sin conexión.

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

Cambie la sesión de captura actual y un conjunto determinado de superficies de cámara registradas al modo de procesamiento sin conexión.

ToArray<T>()

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
UpdateOutputConfiguration(OutputConfiguration)

Actualización después de OutputConfiguration la finalización de la configuración, consulte #finalizeOutputConfigurations.

Wait()

Hace que el subproceso actual espere hasta que se despierta, normalmente por ser em notificado/em> o <em>interrumpido</em>.<><

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
IJavaPeerable.Finalized()

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

(Heredado de Object)

Métodos de extensión

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

GetJniTypeName(IJavaPeerable)

Una sesión de captura configurada para , CameraDeviceque se usa para capturar imágenes de la cámara o volver a procesar imágenes capturadas desde la cámara en la misma sesión anteriormente.

Se aplica a