Nik*_*unj 5 iphone xcode camera ios-camera camera-flash
我想在进行视频录制时在我的应用程序中打开手电筒模式AVCaptureTorchModeOn.
我使用下面的代码.
-(void)set_TorchMode:(BOOL)turnOn
{
AVCaptureDevice *theDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if ([theDevice hasTorch]) {
[theDevice lockForConfiguration: nil];
AVCaptureTorchMode currentMode = [theDevice torchMode];
BOOL isAlreadyTurnedOn = (AVCaptureTorchModeOn == currentMode);
if (isAlreadyTurnedOn != turnOn) {
[theDevice setTorchMode: turnOn? AVCaptureTorchModeOn: AVCaptureTorchModeOff];
}
[theDevice unlockForConfiguration];
}
}
Run Code Online (Sandbox Code Playgroud)
我在开始录音时打开这个方法打开,在停止录音时将其关闭.
我第一次录制它时工作正常,但是当第二次开始录制时,它开启但立即关闭.录制运行时它不会保持打开状态.
谢谢你的帮助.
以下代码用于打开和关闭背光。
愿这对你有帮助,
- (void) setTorchOn:(BOOL)isOn
{
AVCaptureDevice* device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
[device lockForConfiguration:nil]; //you must lock before setting torch mode
[device setTorchMode:isOn ? AVCaptureTorchModeOn : AVCaptureTorchModeOff];
[device unlockForConfiguration];
}
- (IBAction)changedState:(id)sender {
UISwitch *switchValue = (UISwitch*)sender;
[self setTorchOn:[switchValue isOn]];
}
Run Code Online (Sandbox Code Playgroud)
请将此代码测试到设备中。
| 归档时间: |
|
| 查看次数: |
1843 次 |
| 最近记录: |