首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS 7 AVCaptureTorchModeAuto似乎不能在暗光下激活torch

iOS 7 AVCaptureTorchModeAuto似乎不能在暗光下激活torch
EN

Stack Overflow用户
提问于 2014-01-11 03:47:06
回答 1查看 1.7K关注 0票数 11

我已经将AVCaptureDevice TorchMode设置为AVCaptureTorchModeAuto,手电筒模式是在AVCaptureSession开始运行后设置的。根据苹果公司的文档,我原本以为手电筒模式会在微光条件下点亮发光二极管:https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVCaptureDevice_Class/Reference/Reference.html#//apple_ref/doc/c_ref/AVCaptureTorchMode

然而,在我的测试设备: iPhone 4S、iPhone 5上,手电筒在任何灯光条件下都不亮起。有人遇到过这个问题吗?

下面是我的代码:

代码语言:javascript
复制
- (void)enableTorchMode
{
    if ((self.device.hasTorch) && ([self.device isTorchModeSupported:AVCaptureTorchModeAuto]))
    {
        [self.device lockForConfiguration:nil];
        self.device.torchMode = AVCaptureTorchModeAuto;
        [self.device unlockForConfiguration];
    }
}
EN

回答 1

Stack Overflow用户

发布于 2014-04-03 05:01:36

你没有提到你正在用相机做什么,但目前(从iOS 7.1开始),除非AVCaptureSession有视频输出,否则自动手电筒模式不起作用。当唯一的其他选项是照片或音频时,这是有意义的,但如果你只对人脸或条形码等元数据感兴趣,那么这就是一个问题。

您可以在设置会话时使用类似以下内容来强制它工作:

代码语言:javascript
复制
if ([captureDevice isTorchModeSupported:AVCaptureTorchModeAuto]) {
    AVCaptureOutput *videoOutput = [[AVCaptureVideoDataOutput alloc] init];
    [session addOutput:videoOutput];
}

如果这就是你遇到的问题,我推荐你使用filing a bug reportFeel free to dupe mine.

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21053152

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档