Точное и текущее FieldOfView AVCaptureDevice
От AVFoundation
такие объекты, как AVCaptureDevice
Я могу прочитать значение fieldOfView
с помощью
captureDevice.activeFormat.videoFieldOfView
И это дает мне значение около 58 градусов на iPhone 6s. Но мне нужно получить текущее значение фактического fieldOfView
отображается в текущем кадре, в то время как AVCaptureSession
бежит. Я имею в виду, что значение читается из activeFormat
не отражает реальное fieldOfView
когда объектив перемещается, чтобы получить изображение в фокусе. Например, когда я указываю камеру на удаленный объект, объектив перемещается, чтобы удерживать фокус, и fieldOfView
немного увеличивается, примерно до 61 градуса. Вы можете наблюдать это поведение в ARKit
камера - даже когда камера ловит фокус, отображаемые объекты фокусируются все больше и меньше вместе с предварительным просмотром с камеры. Я хотел бы знать, как я могу добиться такого поведения и настроить fieldOfView
в текущую позицию объектива. Мне нужно применить это к SceneKit
камера.
В кратчайший путь: Как найти текущий точный FieldOfView
камеры с учетом текущего положения фокуса (или положения объектива)
Чтобы понять, что я имею в виду, посмотрите на этот рисунок:
В начале вы можете видеть его фокусировку, и видео вроде как немного увеличивает / уменьшает изображение, чтобы поймать правильное положение объектива. Поэтому, когда этот объектив движется фактическим видимым fieldOfView
становится немного по-другому.