AVCaptureDevice中通过调用VideoZoomFactor方法调整焦距实现拉近拉远镜头进行拍照录制视频(动画缩放画面,不闪屏)
做人臉識(shí)別的項(xiàng)目中用到,順便做了下筆記
//上鎖
-(void)changeDevicePropertySafety:(void (^)(AVCaptureDevice *captureDevice))propertyChange{
??? AVCaptureDevice *captureDevice= [_videoInput device];?
??? if ([captureDevice lockForConfiguration:nil]) {
??????? propertyChange(captureDevice);
??????? [captureDevice unlockForConfiguration];
??? }
}
//縮放的實(shí)現(xiàn)點(diǎn)擊
-(void)FocalLength{
??? NSLog(@"調(diào)整焦距");
??? [self changeDevicePropertySafety:^(AVCaptureDevice *captureDevice) {
????? if (captureDevice.videoZoomFactor == 1.0) {
????????????//縮放倍數(shù)
??????????? CGFloat current = 1.5;
??????????? if (current < captureDevice.activeFormat.videoMaxZoomFactor) {
??????????????? [captureDevice rampToVideoZoomFactor:current withRate:10];
??????????? }
??????? }else{
??????????? //1.0 表示縮放回到原來(lái)的大小(復(fù)原)
??????????? [captureDevice rampToVideoZoomFactor:1.0 withRate:10];
??????? }
??? }];
?? ?
}
總結(jié)
以上是生活随笔為你收集整理的AVCaptureDevice中通过调用VideoZoomFactor方法调整焦距实现拉近拉远镜头进行拍照录制视频(动画缩放画面,不闪屏)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 重装系统——Win10/win11
- 下一篇: 解决旧笔记本电脑的ME固件的驱动安装程序