franksunny的个人技术空间
获得人生中的成功需要的专注与坚持不懈多过天才与机会。 ——C.W. Wendte

 

关于监控摄像头拍照与摄像

 

由于工作中需要用到类似于像新浪微薄一样,监控拍照后弹出照片是否上传分享的要求,为此就小试了下监控拍照和摄像。

一开始没有头绪,都不知道搜索什么关键字,茫无目的下居然发现论坛有人推荐陈子腾写的wiki,具体wiki链接如下

检测内置相机应用程序新拍摄的照片和视频片段

其实参考陈子腾的方法很容易就做好一个监控功能了,在这里就不多说。

之所以想小写下博文,是因为这种方式实际上涉及到Symbian OS提供的Publish&Subscribe这一特殊的进程间通信机制,我之前使用的进程间通信除了C/SRMsgQue之外,就是使用AppUi框架通过TApaTask::SendMessage的方法来实现,至于RProcess::SetParameter不能在进程间实时的传输消息,只能是开启进程时传递一些信息(比如同步用的信号量等)。这次总算是接触了下PS进程间通信,就自己也尝试了这种方式。

SDK中的描述是

Publish & Subscribe is a new API provided by the real-time kernel (EKA2). It allows publisher processes to define and update a set of properties; other processes, called subscribers, can listen for changes to a property, and get property values. The process that defines a property can specify access rights for both reading and writing. Rights can be defined in terms of either requiring a particular security capability, by a process SID, or by a process VID. Publish & Subscribe replaces System Agent and the usage of temporary Shared Data keys.

也就是说发布者定义或更新一套属性,然后订阅者开启监听的情况下就能接受到更新,然后可以去获取属性值的更改。

定义属性

在这里最主要的是在发布者定义属性时,一定要用发布者程序的SID也就是UID3,否则会报-46的错误,也即下面代码

RProperty::Define(KPSUidCameraCfg, KCameraCfgModify, RProperty::EInt);

KPSUidCameraCfg必须是你发布程序的UID3或者你另外在mmp中定义的SID值,至于后面的KCameraCfgModify属性和类型值就根据要求来设置了。

监控属性

监控属性需要绑定到具体的属性然后开启一个Subscribe的异步方法

iProperty.Attach(KPSUidCameraCfg, KCameraCfgModify);

iProperty.Subscribe(iStatus);

SetActive(); // Tell scheduler a request is active

通常监控属性是一个异步过程,所以我们会为其专门写一个活动对象类,用以异步监控

修改属性

虽然属性定义是有安全性要求,但是更新属性,就没那么严格了,可以直接通过RProperty的静态方法来修改

RProperty::Set(KPSUidCameraCfg, KCameraCfgModify, 1 );

读取属性

订阅者当收到属性有更改时,也可以直接通过RProperty的静态方法来读取

RProperty::Get(KPSUidCameraCfg, KCameraCfgModify, val);

删除属性

由于属性值在手机重启前会一直存在,所以属性没有用时,我们要求将其删除,删除也可以通过RProperty的静态方法简单实现,具体如下

RProperty::Delete(KPSUidCameraCfg, KCameraCfgModify);

 

结合PS这一进程间通讯的方法和系统摄像头应用程序中的使用,我们可以显然知道,该方法适用于开发一些通用的底层控件,可以给第三方开发者需要时监控用,发布者类似于一个广播系统。

感觉不是很复杂,就简单小结如上吧,以后使用遇到问题再更新。

 

posted on 2010-12-10 19:58 frank.sunny 阅读(2937) 评论(1)  编辑 收藏 引用 所属分类: symbian 开发

FeedBack:
# re: 关于监控摄像头拍照与摄像
2014-07-08 17:17 | 安居猫安防商城QQ2711989211
安居猫,安防干货!致力于监控摄像头,智能家居,防盗报警器等安防行业,提供安防监控.智能家居系统方案.领跑国内安防商城,打造乐享购物AJuMall.com.安居猫,走起!
希望双方能够进行合作 ,先从友链开始
安居猫安防商城QQ2711989211  回复  更多评论
  

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理



常用链接

留言簿(13)

随笔分类

个人其它博客

基础知识链接

最新评论

阅读排行榜

评论排行榜