CameraCaptureSession.FinalizeOutputConfigurations Método

Definição

Finalize as configurações de saída que agora têm seus Surfaces adiados e/ou extras incluídos.

[Android.Runtime.Register("finalizeOutputConfigurations", "(Ljava/util/List;)V", "GetFinalizeOutputConfigurations_Ljava_util_List_Handler", ApiSince=26)]
public abstract void FinalizeOutputConfigurations(System.Collections.Generic.IList<Android.Hardware.Camera2.Params.OutputConfiguration>? outputConfigs);
[<Android.Runtime.Register("finalizeOutputConfigurations", "(Ljava/util/List;)V", "GetFinalizeOutputConfigurations_Ljava_util_List_Handler", ApiSince=26)>]
abstract member FinalizeOutputConfigurations : System.Collections.Generic.IList<Android.Hardware.Camera2.Params.OutputConfiguration> -> unit

Parâmetros

outputConfigs
IList<OutputConfiguration>

uma lista de OutputConfiguration OutputConfigurations que foram OutputConfiguration#addSurface addSurface invocadas com uma saída válida Surface após CameraDevice#createCaptureSessionByOutputConfigurations.

Atributos

Comentários

Finalize as configurações de saída que agora têm seus Surfaces adiados e/ou extras incluídos.

Para casos de uso da câmera em que uma visualização e outras configurações de saída precisam ser configuradas, pode levar algum tempo para que a visualização Surface esteja pronta. Por exemplo, se o Surface de visualização for obtido, o SurfaceView só estará pronto depois que o layout da interface do usuário for concluído, potencialmente atrasando a inicialização da android.view.SurfaceViewcâmera.

Para acelerar o tempo de inicialização da câmera, o aplicativo pode configurar com o CameraCaptureSession tamanho de visualização eventual (via OutputConfiguration#OutputConfiguration(Size,Class) a deferred OutputConfiguration) e adiar a configuração de saída de visualização até que o Surface esteja pronto. Depois de CameraCaptureSession ser criado com êxito com essa saída adiada e outras saídas normais, o aplicativo pode começar a enviar solicitações desde que elas não incluam Superfícies de saída adiadas. Depois que um Surface adiado estiver pronto, o aplicativo poderá adicionar o Surface à configuração de saída adiada com o OutputConfiguration#addSurface método e atualizar a configuração de saída adiada por meio desse método, antes de enviar solicitações de captura com esse destino de saída.

Essa função também pode ser chamada no caso de várias superfícies compartilharem a mesma OutputConfiguration e uma das superfícies ficar disponível após a CameraCaptureSession criação. Nesse caso, o aplicativo deve primeiro criar o OutputConfiguration com o Surface disponível e, em seguida, habilitar mais surface compartilhamento por meio OutputConfiguration#enableSurfaceSharingde , antes de criar a CameraCaptureSession. Depois que o CameraCaptureSession for criado e depois que o Surface extra ficar disponível, o aplicativo deverá chamar OutputConfiguration#addSurface antes de finalizar a configuração com esse método.

Se as OutputConfigurations fornecidas não forem alteradas em relação à criação da sessão, essa chamada de função não terá efeito. Essa função só deve ser chamada uma vez para uma configuração de saída específica.

Os Surfaces de saída incluídos nessa lista podem OutputConfiguration OutputConfigurations ser usados como CaptureRequest destinos assim que essa chamada é retornada.

Esse método não tem suporte por CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY LEGACYdispositivos de nível superior.

Java documentação para android.hardware.camera2.CameraCaptureSession.finalizeOutputConfigurations(java.util.List<android.hardware.camera2.params.OutputConfiguration>).

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.

Aplica-se a