我是iOS开发的新手。我正在尝试建立一个与火炬和最大变焦打开实时视频输入的应用程序。此应用程序将用于扫描来自物理部件的小型2D数据矩阵条形码。我使用的代码如下:
if ([input.device lockForConfiguration:nil]) {
CGFloat zoomFactor = input.device.activeFormat.videoMaxZoomFactor;
[input.device rampToVideoZoomFactor:zoomFactor withRate:4.0];
[input.device unlockForConfiguration];
}由于某些原因,这根本不起作用。当我尝试调试时,锁起作用了,所以它在缩放代码中运行,但在应用程序中实际上没有发生任何事情。
有什么建议吗?
发布于 2014-05-31 02:54:30
我发现下面这样的东西对我来说很有效:
dispatch_async(self.sessionQueue, ^{
NSError *error = nil;
if ([input.device lockForConfiguration:&error])
{
[input.device rampToVideoZoomFactor:2 withRate:1];
[input.device unlockForConfiguration];
}
else
{
NSLog(@"%@", error);
}
});但从上面的代码中,我无法分辨出“设备”到底是什么(它是从AVCaptureSession获取的活动设备吗?)我认为你需要提供更多的背景信息。
https://stackoverflow.com/questions/22085960
复制相似问题