CameraConstrainedHighSpeedCaptureSession 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 de alta velocidade restrita para um CameraDevice
, usada para capturar imagens de alta velocidade do CameraDevice
caso de uso de gravação de vídeo de alta velocidade.
[Android.Runtime.Register("android/hardware/camera2/CameraConstrainedHighSpeedCaptureSession", ApiSince=23, DoNotGenerateAcw=true)]
public abstract class CameraConstrainedHighSpeedCaptureSession : Android.Hardware.Camera2.CameraCaptureSession
[<Android.Runtime.Register("android/hardware/camera2/CameraConstrainedHighSpeedCaptureSession", ApiSince=23, DoNotGenerateAcw=true)>]
type CameraConstrainedHighSpeedCaptureSession = class
inherit CameraCaptureSession
- Herança
- Atributos
Comentários
Uma sessão de captura de alta velocidade restrita para um CameraDevice
, usada para capturar imagens de alta velocidade do CameraDevice
caso de uso de gravação de vídeo de alta velocidade.
Um CameraConstrainedHighSpeedCaptureSession é criado fornecendo uma configuração de sessão para CameraDevice#createCaptureSession(SessionConfiguration)
com um tipo de android.hardware.camera2.params.SessionConfiguration#SESSION_HIGH_SPEED
. O CameraCaptureSession retornado de CameraCaptureSession.StateCallback
pode então ser convertido em um CameraConstrainedHighSpeedCaptureSession. 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.
Uma sessão de captura ativa de alta velocidade é uma sessão de captura especializada que é direcionada apenas para o caso de uso de gravação de vídeo de alta velocidade (>=120fps) se o dispositivo da câmera suportar a capacidade de vídeo de alta velocidade (ou seja, CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES
contiver CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO
). Ele só aceita listas de solicitações criadas via #createHighSpeedRequestList
, e a lista de solicitações só pode ser enviada para esta sessão via CameraCaptureSession#captureBurst captureBurst
, ou CameraCaptureSession#setRepeatingBurst setRepeatingBurst
. Consulte CameraDevice#createCaptureSession(android.hardware.camera2.params.SessionConfiguration)
para obter mais detalhes das limitações.
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#createConstrainedHighSpeedCaptureSession
enviará o CameraCaptureSession pronto para uso para o retorno de chamada do CameraCaptureSession.StateCallback#onConfigured
ouvinte fornecido. Se a configuração não puder ser concluída, o CameraCaptureSession.StateCallback#onConfigureFailed
será chamado e a sessão não ficará ativa.
Se uma nova sessão for criada pelo dispositivo da câmera, a sessão anterior será fechada e seu retorno de chamada associado CameraCaptureSession.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.CameraConstrainedHighSpeedCaptureSession
.
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
CameraConstrainedHighSpeedCaptureSession() |
Uma sessão de captura de alta velocidade restrita para um |
CameraConstrainedHighSpeedCaptureSession(IntPtr, JniHandleOwnership) |
Uma sessão de captura de alta velocidade restrita para um |
Propriedades
Class |
Retorna a classe de tempo de execução deste |
Device |
Obtenha o dispositivo de câmera para o qual esta sessão foi criada. (Herdado de CameraCaptureSession) |
Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
InputSurface |
Uma sessão de captura de alta velocidade restrita para um |
IsReprocessable |
Uma sessão de captura de alta velocidade restrita para um |
JniIdentityHashCode |
Uma sessão de captura de alta velocidade restrita para um |
JniPeerMembers |
Uma sessão de captura de alta velocidade restrita para um |
PeerReference |
Uma sessão de captura de alta velocidade restrita para um |
ThresholdClass |
Uma sessão de captura de alta velocidade restrita para um |
ThresholdType |
Uma sessão de captura de alta velocidade restrita para um |
Métodos
AbortCaptures() |
Descarte todas as capturas atualmente pendentes e em andamento o mais rápido possível. (Herdado de CameraCaptureSession) |
Capture(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler) |
Envie uma solicitação para que uma imagem seja capturada pelo dispositivo da câmera. (Herdado de CameraCaptureSession) |
CaptureBurst(IList<CaptureRequest>, CameraCaptureSession+CaptureCallback, Handler) |
Envie uma lista de solicitações a serem capturadas em sequência como um burst. (Herdado de CameraCaptureSession) |
CaptureBurstRequests(IList<CaptureRequest>, IExecutor, CameraCaptureSession+CaptureCallback) |
Envie uma lista de solicitações a serem capturadas em sequência como um burst. (Herdado de CameraCaptureSession) |
CaptureSingleRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback) |
Envie uma solicitação para que uma imagem seja capturada pelo dispositivo da câmera. (Herdado de CameraCaptureSession) |
Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
Close() |
Feche esta sessão de captura de forma assíncrona. (Herdado de CameraCaptureSession) |
CreateHighSpeedRequestList(CaptureRequest) |
Crie uma lista não modificável de solicitações que seja adequada para streaming de sessão de captura de alta velocidade restrito. |
Dispose() |
Uma sessão de captura de alta velocidade restrita para um |
Dispose(Boolean) |
Uma sessão de captura de alta velocidade restrita 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 suas Superfícies adiadas e/ou extras incluídas. (Herdado de CameraCaptureSession) |
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. (Herdado de CameraCaptureSession) |
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. (Herdado de CameraCaptureSession) |
SetRepeatingBurstRequests(IList<CaptureRequest>, IExecutor, CameraCaptureSession+CaptureCallback) |
Solicite a captura repetida infinitamente de uma sequência de imagens por esta sessão de captura. (Herdado de CameraCaptureSession) |
SetRepeatingRequest(CaptureRequest, CameraCaptureSession+CaptureCallback, Handler) |
Solicite a repetição infinita da captura de imagens por esta sessão de captura. (Herdado de CameraCaptureSession) |
SetSingleRepeatingRequest(CaptureRequest, IExecutor, CameraCaptureSession+CaptureCallback) |
Solicite a repetição infinita da captura de imagens por esta sessão de captura. (Herdado de CameraCaptureSession) |
StopRepeating() |
Cancele qualquer captura de repetição contínua definida por um |
SupportsOfflineProcessing(Surface) |
Consultar se um determinado Surface é capaz de suportar o modo offline. (Herdado de CameraCaptureSession) |
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. (Herdado de CameraCaptureSession) |
ToArray<T>() |
Uma sessão de captura de alta velocidade restrita para um |
ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
UnregisterFromRuntime() |
Uma sessão de captura de alta velocidade restrita para um |
UpdateOutputConfiguration(OutputConfiguration) |
Atualização |
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, 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) |
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) |
Implantações explícitas de interface
IJavaPeerable.Disposed() |
Uma sessão de captura de alta velocidade restrita para um |
IJavaPeerable.DisposeUnlessReferenced() |
Uma sessão de captura de alta velocidade restrita para um |
IJavaPeerable.Finalized() |
Uma sessão de captura de alta velocidade restrita para um |
IJavaPeerable.JniManagedPeerState |
Uma sessão de captura de alta velocidade restrita para um |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Uma sessão de captura de alta velocidade restrita para um |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Uma sessão de captura de alta velocidade restrita para um |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Uma sessão de captura de alta velocidade restrita para um |
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 de alta velocidade restrita para um |
GetJniTypeName(IJavaPeerable) |
Uma sessão de captura de alta velocidade restrita para um |