AVCaptureDevice LED闪光灯控制
转载自:http://blog.csdn.net/cloudhsu/article/details/7202368
- #import <AVFoundation/AVFoundation.h>
- void CBLediOS::turnOnLed()
- {
- AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
- if ([device hasTorch]) {
- [device lockForConfiguration:nil];
- [device setTorchMode: AVCaptureTorchModeOn];
- [device unlockForConfiguration];
- }
- }
- void CBLediOS::turnOffLed()
- {
- AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
- if ([device hasTorch]) {
- [device lockForConfiguration:nil];
- [device setTorchMode: AVCaptureTorchModeOff];
- [device unlockForConfiguration];
- }
- }
这段代码是我昨天刚上传的iphone手电筒中的一部分代码
代码示范了如何开启iphone上的闪光灯
AVCaptureDevice必须要引入AVFoundation.framework
defaultDeviceWithMediaType需传入一个字串,在这个例子传入了AVMediaTypeVideo
以取得摄像头
AVMediaTypeVideo
是ios4.0以上提供的一个const NSString,声明在AVMediaFormat.h
.
其他Media Type的声明
- NSString *const AVMediaTypeVideo;
- NSString *const AVMediaTypeAudio;
- NSString *const AVMediaTypeText;
- NSString *const AVMediaTypeClosedCaption;
- NSString *const AVMediaTypeSubtitle;
- NSString *const AVMediaTypeTimecode;
- NSString *const AVMediaTypeTimedMetadata;
- NSString *const AVMediaTypeMuxed;
若是要检测装置是否提供该功能,可以透过
- (BOOL)hasMediaType:(NSString *)mediaType
来取得
取得摄像头后,我们可以透过
@property(nonatomic, readonly) BOOL hasTorch
@property(nonatomic, readonly) BOOL hasFlash
来判断该摄像头是否有提供闪光灯
我是要持续开启所以使用Torch Mode
lockForConfiguration跟unlockForConfiguration是配对的API
呼叫lockForConfiguration就可以控制硬件了
控制完毕后要呼叫unlockForConfiguration
[device setTorchMode: AVCaptureTorchModeOn];
[device setTorchMode: AVCaptureTorchModeOff];
这两行代码,就是开关闪光灯的代码
注意此代码要在真机下作用
AVCaptureDevice LED闪光灯控制的更多相关文章
- 基于TINY4412的Andorid开发-------简单的LED灯控制【转】
本文转载自:http://www.cnblogs.com/pengdonglin137/p/3857724.html 基于TINY4412的Andorid开发-------简单的LED灯控制 阅读 ...
- iOS设备闪光灯控制
很多时候都需要在APP中控制闪光灯的开关状态,譬如扫描二维码.控制iOS设备的闪光灯代码非常简单,短短几行代码就可以搞定: AVCaptureDevice *device = [AVCaptureDe ...
- android驱动例子(LED灯控制)
本例子,讲述在android2.1上完全自已开发一个驱动去控制硬件口并写应用测试该驱动,通过这样一个例子,解析android下的驱动开发流程的应用调用流程,可以说是很好的入门引导 要达到的效果:通过a ...
- [转] 基于TINY4412的Andorid开发-------简单的LED灯控制
阅读目录 一.编写驱动程序 二.编写代码测试驱动程序 三.编写HAL代码 四.编写Framework代码 五.编写JNI代码 六.编写App 参考资料: <Andriod系统源代码情景分析> ...
- 基于TINY4412的Andorid开发-------简单的LED灯控制
参考资料: <Andriod系统源代码情景分析> <嵌入式Linux系统开发完全手册_基于4412_上册> 作者:彭东林 邮箱:pengdonglin137@163.com 平 ...
- CC2530 LED灯控制
有三个寄存器 分别是功能寄存器.方向寄存器.配置寄存器 功能寄存器 通用 I/O口 说的就是一般的I/O口,可以输出高低电平 为外设IO 例如摄像头或者打印机他们具体实现某些功能(拍照或打印文档) ...
- 【转载】基于TINY4412的Andorid开发-------简单的LED灯控制
阅读目录(Content) 一.编写驱动程序 二.编写代码测试驱动程序 三.编写HAL代码 四.编写Framework代码 五.编写JNI代码 六.编写App 参考资料: <Andriod系统源 ...
- 6个LED的控制
控制任务和要求 让6个LED按要求工作 电路设计 程序设计 1 int Led1 = 1; //各LED与实验板的联接引脚 2 int Led2 = 2; 3 int Led3 = 3; 4 int ...
- 第七章 LED将为我闪烁:控制发光二极管
该Linux驱动用来控制开发板上的4个LED灯,即通过向Linux驱动发送数据可以控制LED灯的开关.LED驱动提供两种交互方式:命令和读写设备文件. 测试LED驱动之前需用USB线连接开发板,然后打 ...
随机推荐
- 1137. Bus Routes(dfs)
1137 做过一样的 怎么又忘了 再一次搜超时 不用回溯 #include <iostream> #include<cstdio> #include<cstring> ...
- Android 获取屏幕尺寸与密度
android中获取屏幕的长于宽,参考了网上有很多代码,但结果与实际不符,如我的手机是i9000,屏幕大小是480*800px,得到的结果却为320*533 结果很不靠谱,于是自己写了几行代码,亲 ...
- UITableViewCell上的按钮点击事件处理
转自: http://www.aichengxu.com/view/42871 UITableViewCell上的按钮点击事件处理,有需要的朋友可以参考下. 今天突然做项目的时候,又遇到处理自定义的 ...
- Hadoop configration类分析
configration这个类是分析hadoop源代码一个很好地入口. 先从需求说起.对于一个大型的文件系统,基于配置文件可以增强灵活性.congfigration类就是为了管理配置文件的. 配置文件 ...
- bq24075 锂电池 充电电路分析
bq24075 锂电池 充电电路分析 本文主要是分析bq24075锂电池充电芯片电路,知道其大致是怎么工作的,其中的一些电阻该如何配置. -- 深圳 南山平山村 曾剑锋 一.参考文章: . NTC热 ...
- UVA 658 It's not a Bug, it's a Feature! (最短路,经典)
题意:有n个bug,有m个补丁,每个补丁有一定的要求(比如某个bug必须存在,某个必须不存在,某些无所谓等等),打完出来后bug还可能变多了呢.但是打补丁是需要时间的,每个补丁耗时不同,那么问题来了: ...
- Java [Leetcode 219]Contains Duplicate II
题目描述: Given an array of integers and an integer k, find out whether there are two distinct indices i ...
- 用NSData和NSFileManager保存内存中的对象
曾经接触过iOS开发,并且开发过两个应用,纵然青涩,也算是一断美好的回忆.转眼就已经一年多了!现在回过头来决定再次拿起iOS开发. 下面讲NSData: NSdata的概念 1.使用文件时需要频繁地将 ...
- javaScript的函数(Function)对象的声明(@包括函数声明和函数表达式)
写作缘由: 平时再用js写函数的时候,一般都是以惯例 function fn () {} 的方式来声明一个函数,在阅读一些优秀插件的时候又不免见到 var fn = function () {} 这种 ...
- 【转】This version of the rendering library is more recent than your version of ADT plug-in. Please update ADT plug-in
原文网址:http://1982106a.blog.163.com/blog/static/8436495620149239361692/ 预览layout.xml文件时提示: This versio ...