AVCaptureVideoPreviewLayer rotación de orientación suave

Estoy tratando de deshabilitar cualquier rotación de orientación discernible a un AVCaptureVideoPreviewLayer mientras sigo manteniendo la rotación para cualquier subvista. AVCaptureVideoPreviewLayer tiene una propiedad de orientación, y cambiarla permite que la capa se muestre correctamente para cualquier orientación. Sin embargo, la rotación implica una rotación funky de AVCaptureVideoPreviewLayer, en lugar de mantenerse suave como lo hace en la aplicación Cámara.

Así es como obtuve la orientación para que funcione correctamente, menos el enganche en la rotación:

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

¿Cómo consigo que esta capa actúe como la aplicación de la cámara, mientras mantengo rotaciones para sus subvistas?

Además, como comentario, he visto que la propiedad de orientación se deprecia en AVCaptureVideoPreviewLayer, y la propiedad videoOrientation de AVCaptureConnection debería usarse en su lugar, pero no creo que tenga una AVCaptureConnection para acceder aquí (simplemente estoy mostrando la cámara en la pantalla). ¿Cómo debo configurar esto para acceder a videoOrientation?

Respuestas a la pregunta(9)

Su respuesta a la pregunta