博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS 直播-闪光灯的使用
阅读量:4577 次
发布时间:2019-06-08

本文共 2124 字,大约阅读时间需要 7 分钟。

iOS 直播-闪光灯的使用


应用场景是这样的,最近公司决定做一款直播类的软件.

在开发中就遇到了不曾使用过的硬件功能-闪光灯.
这篇博客将简单介绍一下闪光灯的使用.

////  ViewController.m//  iOS torch-test////  Created by caoxu on 16/6/7.//  Copyright © 2016年 caoxu. All rights reserved.//#import "ViewController.h"#import 
@interface ViewController ()@property (nonatomic, strong) AVCaptureSession * session;@property (nonatomic, strong) AVCaptureDevice * device;@property (nonatomic, strong) NSTimer * timer;@end@implementation ViewController#pragma mark
-(AVCaptureSession *)session{ if(_session == nil) { _session = [[AVCaptureSession alloc] init]; } return _session;}-(AVCaptureDevice *)device{ if(_device == nil) { _device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo]; } return _device;}#pragma mark
- (void)viewDidLoad { [super viewDidLoad]; AVCaptureDeviceInput * input = [[AVCaptureDeviceInput alloc]initWithDevice:self.device error:nil]; if ([self.session canAddInput:input]) { [self.session addInput:input]; } }#pragma mark
- (IBAction)torchon:(id)sender { if([self.device hasTorch] && [self.device hasFlash]) { if(self.device.torchMode == AVCaptureTorchModeOff) { [self.session beginConfiguration]; [self.device lockForConfiguration:nil]; [self.device setTorchMode:AVCaptureTorchModeOn]; [self.device setFlashMode:AVCaptureFlashModeOn]; [self.device unlockForConfiguration]; [self.session commitConfiguration]; } } [self.session startRunning]; }- (IBAction)torchoff:(id)sender { [self.session beginConfiguration]; [self.device lockForConfiguration:nil]; if(self.device.torchMode == AVCaptureTorchModeOn) { [self.device setTorchMode:AVCaptureTorchModeOff]; [self.device setFlashMode:AVCaptureFlashModeOff]; } [self.device unlockForConfiguration]; [self.session commitConfiguration]; [self.session stopRunning]; }@end

转载于:https://www.cnblogs.com/xubaoaichiyu/p/5567333.html

你可能感兴趣的文章
$.ajax()方法详解
查看>>
jquery操作select(增加,删除,清空)
查看>>
Sublimetext3安装Emmet插件步骤
查看>>
MySQL配置参数
查看>>
全面理解Java内存模型
查看>>
存储过程
查看>>
生成器
查看>>
将一个数的每一位都取出来的方法!
查看>>
2) 十分钟学会android--建立第一个APP,执行Android程序
查看>>
面试题8:二叉树下的一个节点
查看>>
hash冲突的解决方法
查看>>
Asp.Net webconfig中使用configSections的用法
查看>>
mysql 二进制日志
查看>>
阻止putty变成inactive
查看>>
TP框架代码学习 学习记录 3.2.3
查看>>
doc文档生成带目录的pdf文件方法
查看>>
js数组,在遍历中删除元素(用 for (var i in arr)是无效的 )
查看>>
通过前端上传图片等文件的方法
查看>>
在 OC 中调用 Swift 代码
查看>>
安卓|五大逆向软件下载
查看>>