Partilhar via


CameraCaptureSession Classe

Definição

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

[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
Herança
CameraCaptureSession
Derivado
Atributos
Implementações

Comentários

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

Um CameraCaptureSession é criado fornecendo um conjunto de superfícies de saída de destino para CameraDevice#createCaptureSession createCaptureSessiono , ou fornecendo um android.hardware.camera2.params.InputConfiguration e um conjunto de superfícies de saída de destino para CameraDevice#createReprocessableCaptureSession createReprocessableCaptureSession uma sessão de captura reprocessável. Depois de criada, a sessão fica ativa até que uma nova sessão seja criada pelo dispositivo da câmera ou o dispositivo da câmera seja fechado.

Todas as sessões de captura podem ser usadas para capturar imagens da câmera, mas apenas sessões de captura reprocessáveis podem reprocessar imagens capturadas da câmera na mesma sessão anterior.

Criar uma sessão é uma operação cara e pode levar várias centenas de milissegundos, pois requer a configuração dos pipelines internos do dispositivo da câmera e a alocação de buffers de memória para enviar imagens para os alvos desejados. Portanto, a configuração é feita de forma assíncrona e CameraDevice#createCaptureSession createCaptureSessionCameraDevice#createReprocessableCaptureSession createReprocessableCaptureSession enviará o CameraCaptureSession pronto para uso para o retorno de chamada do CameraCaptureSession.StateCallback#onConfigured onConfigured ouvinte fornecido. Se a configuração não puder ser concluída, o CameraCaptureSession.StateCallback#onConfigureFailed onConfigureFailed será chamado e a sessão não ficará ativa.

<!--

Quaisquer solicitações de captura (repetidas ou não repetitivas) enviadas antes que a sessão esteja pronta serão enfileiradas e começarão a ser capturadas assim que a sessão ficar pronta. Caso a sessão não possa ser configurada e StateCallback#onConfigureFailed onConfigureFailed seja chamada, todas as solicitações de captura enfileiradas serão descartadas.

-->

Se uma nova sessão for criada pelo dispositivo da câmera, a sessão anterior será fechada e seu retorno de chamada associado StateCallback#onClosed onClosed será chamado. Todos os métodos de sessão lançarão um IllegalStateException se chamado assim que a sessão for fechada.

Uma sessão fechada limpa todas as solicitações repetidas (como se #stopRepeating tivesse sido chamada), mas ainda concluirá todas as solicitações de captura em andamento normalmente, antes que uma sessão recém-criada assuma o controle e reconfigure o dispositivo da câmera.

Documentação Java para android.hardware.camera2.CameraCaptureSession.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Construtores

CameraCaptureSession()
CameraCaptureSession(IntPtr, JniHandleOwnership)

Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo tempo de execução.

Propriedades

Class

Retorna a classe de tempo de execução deste Object.

(Herdado de Object)
Device

Obtenha o dispositivo de câmera para o qual esta sessão foi criada.

Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
InputSurface

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

IsReprocessable

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

JniIdentityHashCode

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
JniPeerMembers

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

PeerReference

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
ThresholdClass

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

ThresholdType

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

Métodos

AbortCaptures()

Descarte todas as capturas atualmente pendentes e em andamento o mais rápido possível.

Capture(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler)

Envie uma solicitação para que uma imagem seja capturada pelo dispositivo da câmera.

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

Envie uma lista de solicitações a serem capturadas em sequência como um burst.

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

Envie uma lista de solicitações a serem capturadas em sequência como um burst.

CaptureSingleRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback)

Envie uma solicitação para que uma imagem seja capturada pelo dispositivo da câmera.

Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
Close()

Feche esta sessão de captura de forma assíncrona.

Dispose()

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
Dispose(Boolean)

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
Equals(Object)

Indica se algum outro objeto é "igual" a este.

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

Finalize as configurações de saída que agora têm suas Superfícies adiadas e/ou extras incluídas.

GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
JavaFinalize()

Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto.

(Herdado de Object)
Notify()

Ativa um único thread que está aguardando no monitor deste objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
Prepare(Surface)

Pré-aloque todos os buffers para um Surface de saída.

SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle.

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

Solicite a captura repetida infinitamente de uma sequência de imagens por esta sessão de captura.

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

Solicite a captura repetida infinitamente de uma sequência de imagens por esta sessão de captura.

SetRepeatingRequest(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler)

Solicite a repetição infinita da captura de imagens por esta sessão de captura.

SetSingleRepeatingRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback)

Solicite a repetição infinita da captura de imagens por esta sessão de captura.

StopRepeating()

Cancele qualquer captura de repetição contínua definida por um #setRepeatingRequest setRepeatingRequest ou #setRepeatingBurst.

SupportsOfflineProcessing(Surface)

Consultar se um determinado Surface é capaz de suportar o modo offline.

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

Alterne a sessão de captura atual e um determinado conjunto de superfícies de câmera registradas para o modo de processamento off-line.

ToArray<T>()

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
UnregisterFromRuntime()

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
UpdateOutputConfiguration(OutputConfiguration)

Atualização OutputConfiguration após a finalização da configuração, consulte #finalizeOutputConfigurations.

Wait()

Faz com que o thread atual aguarde até que ele seja ativado, normalmente sendo <em notificado</em> ou <em>interrompido</em>>.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido.

(Herdado de Object)

Implantações explícitas de interface

IJavaPeerable.Disposed()

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
IJavaPeerable.Finalized()

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
IJavaPeerable.JniManagedPeerState

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

(Herdado de Object)

Métodos de Extensão

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo verificada em tempo de execução do Android.

JavaCast<TResult>(IJavaObject)

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

GetJniTypeName(IJavaPeerable)

Uma sessão de captura configurada para um CameraDevice, usada para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anterior.

Aplica-se a