Compartir a través de


OutputConfiguration Clase

Definición

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

[Android.Runtime.Register("android/hardware/camera2/params/OutputConfiguration", ApiSince=24, DoNotGenerateAcw=true)]
public sealed class OutputConfiguration : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/hardware/camera2/params/OutputConfiguration", ApiSince=24, DoNotGenerateAcw=true)>]
type OutputConfiguration = class
    inherit Object
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Herencia
OutputConfiguration
Atributos
Implementaciones

Comentarios

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

Hay varias maneras de crear instancias, modificar y usar OutputConfigurations. Los patrones de uso más comunes y recomendados se resumen en la lista siguiente:

<ul><li>Pasando un Surface elemento al constructor y usando la instancia outputConfiguration como argumento a CameraDevice#createCaptureSessionByOutputConfigurations. Este es el uso más frecuente y los clientes deben considerarlo primero antes de otras alternativas más complicadas. </Li>

<li>Pasando solo una clase de origen de superficie como argumento al constructor. Esto suele ir seguido de una llamada para crear una sesión de captura (vea CameraDevice#createCaptureSessionByOutputConfigurations y agregue una Surface llamada #addSurface con un valor válido Surface. La secuencia se completa con CameraCaptureSession#finalizeOutputConfigurations. Este es el caso de uso diferido que pretende mejorar el rendimiento al permitir que la sesión de captura intensiva de recursos cree una llamada para ejecutarse en paralelo con cualquier Surface inicialización, como esperar android.view.SurfaceView a que esté listo como parte de la inicialización de la interfaz de usuario.</Li>

<li>El tercer y el patrón de uso más complejo implica el uso compartido de superficies. Una vez creada una instancia de OutputConfiguration, se puede habilitar para el uso compartido de superficies a través de #enableSurfaceSharing. Esto debe hacerse antes de crear una nueva sesión de captura y habilitar las llamadas a CameraCaptureSession#updateOutputConfiguration. OutputConfiguration con uso compartido de superficie habilitado se puede modificar a través #addSurface de o #removeSurface. Las actualizaciones de esta outputConfiguration solo entrarán en vigor después de CameraCaptureSession#updateOutputConfiguration las devoluciones sin producir excepciones. Estas actualizaciones se pueden realizar siempre que la sesión esté activa. Los clientes siempre deben tener en cuenta los requisitos y limitaciones adicionales que se colocan en las superficies de salida (para obtener más detalles, vea #enableSurfaceSharing, #addSurface#removeSurface, , CameraCaptureSession#updateOutputConfiguration). Existe un equilibrio entre la complejidad y la flexibilidad adicionales. Si se ha ejecutado correctamente el uso compartido de superficies puede cambiar entre diferentes superficies de salida sin interrumpir las solicitudes de captura repetidas en curso. Esto ahorra tiempo y puede mejorar significativamente la experiencia del usuario.</Li>

<Li>Surface sharing se puede usar en combinación con superficies diferidas. Las reglas de ambos casos se combinan y los clientes deben llamar #enableSurfaceSharing a antes de crear una sesión de captura. Adjunte o quite superficies de salida a través #addSurface/#removeSurface de y finalice la configuración mediante .CameraCaptureSession#finalizeOutputConfigurations CameraCaptureSession#updateOutputConfiguration se puede llamar después de que el método configuration finalize devuelva sin excepciones.</Li>

<li>Si el dispositivo de cámara admite secuencias de salida de resolución múltiple, CameraCharacteristics#SCALER_MULTI_RESOLUTION_STREAM_CONFIGURATION_MAP contendrá los formatos y su información de secuencia correspondiente. La aplicación puede usar una outputConfiguration creada con la información de flujo de resolución múltiple consultada desde MultiResolutionStreamConfigurationMap#getOutputInfo y android.hardware.camera2.MultiResolutionImageReader para capturar imágenes de tamaño variable.

</ul>

A partir de android.os.Build.VERSION_CODES#P Android P, todos los formatos excepto ImageFormat#JPEG y ImageFormat#RAW_PRIVATE se pueden usar para compartir, sujeto a compatibilidad con dispositivos. En los niveles anteriores de la API, solo ImageFormat#PRIVATE se puede usar el formato.

Documentación de Java para android.hardware.camera2.params.OutputConfiguration.

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

OutputConfiguration(Int32, Surface)

Cree una nueva OutputConfiguration instancia con un Surface, con un identificador de grupo de superficies.

OutputConfiguration(Size, Class)

Cree una nueva OutputConfiguration instancia, con el tamaño de Surface deseado y la clase de origen de Surface.

OutputConfiguration(Surface)

Cree una nueva OutputConfiguration instancia con .Surface

Campos

MirrorModeAuto
Obsoletos.

Creación de reflejo automática basada en la cámara orientada a la cámara

MirrorModeH
Obsoletos.

La salida de la cámara se refleja horizontalmente

MirrorModeNone
Obsoletos.

No se aplica ninguna transformación de reflejo

MirrorModeV
Obsoletos.

La salida de la cámara se refleja verticalmente

SurfaceGroupIdNone

Identificador de grupo de superficie no válido.

TimestampBaseChoreographerSynced
Obsoletos.

La marca de tiempo se sincroniza con el coreógrafo.

TimestampBaseDefault
Obsoletos.

Base de marca de tiempo predeterminada.

TimestampBaseMonotonic
Obsoletos.

Base de marca de tiempo aproximadamente igual que android.os.SystemClock#uptimeMillis.

TimestampBaseRealtime
Obsoletos.

Base de marca de tiempo aproximadamente igual que android.os.SystemClock#elapsedRealtime.

TimestampBaseSensor
Obsoletos.

Base de marca de tiempo de CameraCharacteristics#SENSOR_INFO_TIMESTAMP_SOURCE.

Propiedades

Class

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

(Heredado de Object)
Creator

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

DynamicRangeProfile

Devuelve el perfil de intervalo dinámico actual. -o bien- Establecer un perfil de intervalo dinámico compatible con un dispositivo específico.

Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
JniIdentityHashCode

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
JniPeerMembers

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

MaxSharedSurfaceCount

Obtenga el número máximo de recursos compartidos Surface admitidos.

MirrorMode

Obtener el modo de creación de reflejo actual o establecer el modo de creación de reflejo para este destino de salida

PeerReference

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
ReadoutTimestampEnabled

Indica si se usa la marca de tiempo de lectura para esta outputConfiguration. -o bien- Use el tiempo de lectura del sensor de cámara para la marca de tiempo de la imagen.

StreamUseCase

Obtenga el caso de uso de la secuencia actual o establezca el caso de uso de la secuencia para esta outputConfiguration.

Surface

Obtenga el Surface objeto asociado a este OutputConfigurationobjeto .

SurfaceGroupId

Obtenga el identificador de grupo de superficie asociado a este OutputConfiguration.

Surfaces

Obtiene la lista inmutable de superficies asociadas a este OutputConfiguration.

ThresholdClass

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

(Heredado de Object)
ThresholdType

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

(Heredado de Object)
TimestampBase

Obtener la base de marca de tiempo actual (o bien) Establecer la base de marca de tiempo para este destino de salida

Métodos

AddSensorPixelModeUsed(Int32)

Agregue un modo de píxeles de sensor en el que se usará esta clase OutputConfiguration.

AddSurface(Surface)

Agregue una superficie a esta outputConfiguration.

Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
CreateInstancesForMultiResolutionOutput(MultiResolutionImageReader)

Cree una lista de OutputConfiguration instancias para las salidas usadas por .android.hardware.camera2.MultiResolutionImageReader

DescribeContents()

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

Dispose()

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
Dispose(Boolean)

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
EnableSurfaceSharing()

Habilitación de varias superficies que comparten la misma outputConfiguration

Equals(Object)

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

(Heredado de Object)
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)
RemoveSensorPixelModeUsed(Int32)

Quite un modo de píxeles del sensor, agregado previamente a través de addSensorPixelModeUsed, de esta outputConfiguration.

RemoveSurface(Surface)

Quite una superficie de esta outputConfiguration.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetPhysicalCameraId(String)

Establecer el identificador de la cámara física para esta outputConfiguration

ToArray<T>()

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
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, 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)
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)
WriteToParcel(Parcel, ParcelableWriteFlags)

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
IJavaPeerable.Finalized()

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

(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)

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

GetJniTypeName(IJavaPeerable)

Clase para describir la salida de la cámara, que contiene una Surface y su configuración específica para crear una sesión de captura.

Se aplica a