AVCaptureVideoPreviewLayer rotação de orientação suave

Estou tentando desativar qualquer rotação de orientação discernível para um AVCaptureVideoPreviewLayer enquanto ainda mantenho a rotação para todas as sub-visualizações. O AVCaptureVideoPreviewLayer possui uma propriedade de orientação e a alteração permite que a camada seja exibida corretamente para qualquer orientação. No entanto, a rotação envolve alguma rotação descolada do AVCaptureVideoPreviewLayer, em vez de permanecer tranqüila como no aplicativo Câmera.

Foi assim que obtive orientação para funcionar corretamente, menos o engate na rotação:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
{
    _captureVideoPreviewLayer.frame = self.view.bounds;
    _captureVideoPreviewLayer.orientation = [[UIDevice currentDevice] orientation];
}

Como faço para que essa camada atue como o aplicativo Câmera, mantendo as rotações das subvisões?

Além disso, vi que a propriedade de orientação é depreciada no AVCaptureVideoPreviewLayer, e a propriedade videoOrientation do AVCaptureConnection deve ser usada, mas acho que não tenho um AVCaptureConnection para acessar aqui (estou simplesmente exibindo a câmera na tela). Como devo configurar isso para acessar videoOrientation?

questionAnswers(9)

yourAnswerToTheQuestion