avcapturedevicessubjjectareadidchange当此通知在swift中发布时



我正在制作一个相机应用程序,我正在尝试使用此通知AVCaptureDeviceSubjectAreaDidChange将相机的焦点集中到中心。

NotificationCenter.default.addObserver(self, selector: #selector(didChangeSubjectArea(_:)), name: .AVCaptureDeviceSubjectAreaDidChange, object: nil)
@objc func didChangeSubjectArea(_ notification: Notification) {
setFocusToCenter()
}

它现在正在工作,就像didchangessubjectarea在我移动设备时被触发。但我仍然不确定什么时候,或者在什么样的情况下avcapturedevicessubjtareadidchange被触发,因为,在文档上,它说

当捕捉设备检测到视频主题区域发生重大变化时,系统发布的通知。

现在我很困惑a substantial change to the video subject area可以是什么,除了移动相机或倾斜相机。如果有人知道视频主题领域的其他实质性变化,你能告诉我,你在哪里找到的来源?

这个页面提供了更多关于它正在寻找什么的信息。也就是说,灯光的变化,相机的移动,物体在焦距内/外移动等。此方法旨在为您提供一个调整相机设备设置相对于硬件检测到的场景变化的机会,例如调整对焦/白平衡/曝光配置。

最新更新