CameraCaptureSession Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Uma sessão de captura configurada para um CameraDevice, usado para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anteriormente.
[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
- Herança
- Derivado
- Atributos
- Implementações
Comentários
Uma sessão de captura configurada para um CameraDevice, usado para capturar imagens da câmera ou reprocessar imagens capturadas da câmera na mesma sessão anteriormente.
Uma CameraCaptureSession é criada fornecendo um conjunto de superfícies de saída de destino para CameraDevice#createCaptureSession createCaptureSession, 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 estará ativa até que uma nova sessão seja criada pelo dispositivo de câmera ou o dispositivo de 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 anteriormente.
A criação de uma sessão é uma operação cara e pode levar várias centenas de milissegundos, pois requer configurar os pipelines internos do dispositivo de câmera e alocar buffers de memória para enviar imagens para os destinos desejados. Portanto, a instalação é feita de forma assíncrona e CameraDevice#createCaptureSession createCaptureSessionCameraDevice#createReprocessableCaptureSession createReprocessableCaptureSession enviará a CameraCaptureSession pronta para uso para o retorno de chamada do CameraCaptureSession.StateCallback#onConfigured onConfigured ouvinte fornecido. Se a configuração não puder ser concluída, a CameraCaptureSession.StateCallback#onConfigureFailed onConfigureFailed sessão será chamada e a sessão não ficará ativa.
<!--
Todas as solicitações de captura (repetição ou não repetição) 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 na fila serão descartadas.
-->
Se uma nova sessão for criada pelo dispositivo de câmera, a sessão anterior será fechada e seu retorno de chamada associado StateCallback#onClosed onClosed será invocado. Todos os métodos de sessão lançarão uma IllegalStateException se forem chamados depois que a sessão for fechada.
Uma sessão fechada limpa todas as solicitações recorrentes (como se #stopRepeating tivessem sido chamadas), mas ainda concluirá todas as suas solicitações de captura em andamento normalmente, antes que uma sessão recém-criada assuma e reconfigure o dispositivo de câmera.
Java documentação para android.hardware.camera2.CameraCaptureSession.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Construtores
| Nome | Description |
|---|---|
| CameraCaptureSession() | |
| CameraCaptureSession(IntPtr, JniHandleOwnership) |
Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo runtime. |
Propriedades
| Nome | Description |
|---|---|
| Class |
Retorna a classe de runtime deste |
| 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 |
| IsReprocessable |
Uma sessão de captura configurada para um |
| JniIdentityHashCode |
Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade. (Herdado de Object) |
| JniManagedPeerState |
Uma sessão de captura configurada para um |
| JniPeerMembers |
Uma sessão de captura configurada para um |
| PeerReference |
Obtém a referência de objeto JNI para este par Java. (Herdado de Object) |
| ThresholdClass |
Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código. |
| ThresholdType |
Essa API dá suporte à infraestrutura do Mono para Android e não se destina a ser usada diretamente do seu código. |
Métodos
| Nome | Description |
|---|---|
| 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 de câmera. |
| CaptureBurst(IList<CaptureRequest>, CameraCaptureSession+CaptureCallback, Handler) |
Envie uma lista de solicitações a serem capturadas em sequência como uma intermitência. |
| CaptureBurstRequests(IList<CaptureRequest>, IExecutor, CameraCaptureSession+CaptureCallback) |
Envie uma lista de solicitações a serem capturadas em sequência como uma intermitência. |
| CaptureSingleRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback) |
Envie uma solicitação para que uma imagem seja capturada pelo dispositivo de câmera. |
| Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
| Close() |
Feche essa sessão de captura de forma assíncrona. |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Uma sessão de captura configurada para um |
| Dispose() |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| Dispose(Boolean) |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| DisposeUnlessReferenced() |
Uma sessão de captura configurada para um |
| Equals(Object) |
Uma sessão de captura configurada para um |
| 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 seus Surfaces adiados e/ou extras incluídos. |
| 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é-alocar todos os buffers para um Surface de saída. |
| SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle (Herdado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Uma sessão de captura configurada para um |
| SetRepeatingBurst(IList<CaptureRequest>, CameraCaptureSession+CaptureCallback, Handler) |
Solicite a captura repetida sem fim de uma sequência de imagens por esta sessão de captura. |
| SetRepeatingBurstRequests(IList<CaptureRequest>, IExecutor, CameraCaptureSession+CaptureCallback) |
Solicite a captura repetida sem fim de uma sequência de imagens por esta sessão de captura. |
| SetRepeatingRequest(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler) |
Solicite a captura repetida sem fim de imagens por esta sessão de captura. |
| SetSingleRepeatingRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback) |
Solicite a captura repetida sem fim de imagens por esta sessão de captura. |
| StopRepeating() |
Cancelar qualquer conjunto de captura recorrente contínuo por ou |
| SupportsOfflineProcessing(Surface) |
Consulte se um determinado Surface é capaz de dar suporte ao 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 offline. |
| ToArray<T>() |
Cria uma matriz gerenciada com base nesse wrapper de matriz Java. (Herdado de Object) |
| ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
| UnregisterFromRuntime() |
Cancela o registro desse par Java do runtime de interoperabilidade. (Herdado de Object) |
| UpdateOutputConfiguration(OutputConfiguration) |
Atualizar |
| Wait() |
Faz com que o thread atual aguarde até ser despertado, normalmente por ser <notificado/em> ou <em>interrompido</em>.<> (Herdado de Object) |
| Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
| Wait(Int64) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente por ser <>notificado</em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IJavaPeerable.Disposed() |
Uma sessão de captura configurada para um |
| IJavaPeerable.Finalized() |
Uma sessão de captura configurada para um |
| IJavaPeerable.JniObjectReferenceControlBlock |
Uma sessão de captura configurada para um |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Uma sessão de captura configurada para um |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Uma sessão de captura configurada para um |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Uma sessão de captura configurada para um |
| IJavaPeerable.UnregisterFromRuntime() |
Uma sessão de captura configurada para um |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtém o nome JNI do tipo da instância |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo marcada por runtime do Android. |
| JavaCast<TResult>(IJavaObject) |
Uma sessão de captura configurada para um |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |