我有一个用于AVFoundation设置相机的启动项目,它工作得很好.现在我需要将Camera机制转换为GPUImage.我在两个项目中都使用了相同的焦点和曝光方法(在项目中工作得很好AVFoundation),但在GPUImage项目中它没有正确聚焦而且总是错误的.
不介意应用过滤器,它们在所有过滤器上都是相同的
示例: 在屏幕的右上角,您可以看到羊羔.这就是它如何聚焦+曝光.
设置GPU:
stillCamera = GPUImageStillCamera(sessionPreset: AVCaptureSessionPreset640x480, cameraPosition: .Front)
CorrectPosition = AVCaptureDevicePosition.Front
stillCamera!.outputImageOrientation = .Portrait;
stillCamera?.horizontallyMirrorFrontFacingCamera = true
filter = GPUImageFilter()
stillCamera?.addTarget(filter)
filter?.addTarget(self.view as! GPUImageView)
(self.view as! GPUImageView).fillMode = GPUImageFillModeType.init(2)
Run Code Online (Sandbox Code Playgroud)
TouchBegan方法:
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
var tap : CGPoint!
if let touch = touches.first as UITouch! {
tap = touch.locationInView(self.view)
}
let device: AVCaptureDevice! = self.stillCamera?.inputCamera!
var error: NSError? = nil
do {
try device.lockForConfiguration()
if …Run Code Online (Sandbox Code Playgroud)