хорошо, потратив часы на этот код, я понял, где я совершил ошибку.
let device = AVCaptureDevice.default(for: .video)
по умолчанию получится задняя камера и она будет отлично работать, но когда я переключаю ее на передний план, она рассматривается до тех пор, пока она не будет считаться задней камерой, поэтому я просто добавил условие
if currentcam == frontcam {
let device = frontcam
//did other stuff for zooimng
}
else
{
let device = AVCaptureDevice.default(for: .video)
//did other stuff for zooimng
}
у меня это нормально работало