標籤:des blog color io os ar for 資料 div
AVCaptureDevice的方法,之前查了網上和stackoverflow上,沒有,於是自己試著做了下,成功了,分享下。
//執行個體化AVCaptureDevice *captureDevice = [[AVCaptureDevice alloc] init];//先進行判斷是否支援控制對焦if (captureDevice.isFocusPointOfInterestSupported &&[captureDevice.isFocusModeSupported:AVCaptureFocusModeAutoFocus]) { NSError *error = nil;//對cameraDevice進行操作前,需要先鎖定,防止其他線程訪問, [self.recorder.cameraDevice lockForConfiguration:&error]; [self.recorder.cameraDevice setFocusMode:AVCaptureFocusModeAutoFocus]; [self.recorder.cameraDevice setFocusPointOfInterest:CGPointMake(pointX,pointY)];//操作完成後,記得進行unlock。 [self.recorder.cameraDevice unlockForConfiguration]; }
由於我做的的視頻拍攝時手動對焦,
用了TapGestureRecognizer 的執行個體,添加到self.view上,
獲得點擊的座標,然後用座標組螢幕的尺寸進行資料處理,應為focusPointOfInterest是從左上到右下(0~1,0~1)範圍內
比如點擊的點tap.x 和tap.y
豎屏時候對焦點應是(tap.x/self.view.frame.size.width, tap.y/self.view.frame.size.height)
另外,這樣或許對使用者來說不夠只管,看過系統相機都知道,點擊對焦點時,有個方塊縮小
我的實現方法是,用了uiview的執行個體,邊框黃色,2像素寛,背景色clearColor,先添加到self.view上,大小為0,tap手勢的方法裡,設定uiview大小為40,然後加個動畫設定uiview大小為20,這樣當你點擊螢幕某處的時候,有個黃色框縮小,同時,鏡頭進行對焦。
(如果有更好的方法,請指教下)
iOS 相機手動對焦