- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
android_camera介绍
Android Camera框架介绍 一 ,总体介绍 Android Camera框架从整体上看是一个 client/service的架构, 有两个进程:一个是 client 进程, 可以看成是AP端,主要包括 JAVA 代码与一些 native c/c++代码. 另一个是 service 进 程,属于服务端,是 native c/c++代码, 主要负责和 linux kernel中的 camera driver交互, 搜 集 linux kernel中 camera driver传上来的数据,并交给显示系统(surface)显示. client进程 与 service 进程通过Binder IPC机制通信, client端通过调用 service端的接口实现各个具 体的功能.需要注意的是真正的 preview 数据不会通过Binder IPC机制从 service端复制到 client端,但会通过回调函数与内存映射的机制将 preview 数据 buffer的地址传到 client端, 最终可在 JAVA AP中操作处理这个 preview数据. 二 ,client端的具体内容 1, 应用层的 JAVA AP,这个就是Camera Ap开发者主要实现的地方. 从AP的角度看就是调 用 FrameWork层的 android.hardware.camera类来实现具体的功能. JAVA Ap最终被打包 成APK. Android 自带的 camera Ap在 packages/apps/Camera目录下. 2, FrameWork层主要提供了 android.hardware.camera 类给应用层使用, 这个类也是 JAVA 代码实现. android.hardware.camera 类通过 JNI调用 native 代码实现具体的功能. android.hardware.camera 类中提供了如下的一个参数类给应用层使用: public class Parameters { // Parameter keys to communicate with the camera driver. private static final String KEY_PREVIEW_SIZE = preview-size; private static final String KEY_PREVIEW_FORMAT = preview-format; 省略 code } 参数会以字典(map)的方式组织存储起来, 关键字就是 Parameters类中的这些静态字符串. ”这些参数最终会以形如 preview-size=640X480;preview-format=yuv422sp;......”格式的 字符串传到 service端. 文件位置:framework/base/core/java/android/hardware/camera.java. 提供的接口示例: // 获得一个 android.hardware.camera 类的实例 public static Camera open() { return new Camera(); } //接口直接调用 native 代码(android_hardware_camera.cpp中的代码) public native final void startPreview(); public native final void stopPreview(); 3, android.hardware.camera 类的 JNI调用实现在 android_hardware_camera.cpp文件中, 文件位置:framework/base/core/jni/android_hardware_camera.cpp. framework/base/core/jni/ 文件夹下的文件都被编译进 libandroid_runtime.so 公共库中. android_hardware_camera.cpp文件中的 JNI调用实现函数都如下图: android_hardware_camera.cpp文件中的 register_android_hardware_Camera(JNIEnv *env)函数会将上面的 native函数注册到虚拟机中,以供 FrameWork层的 JAVA 代码调用. 这些 native函数通过调用 libcamera_client.so中的Camera类实现具体的功能. 4, 核心的 libcamera_client.so动态库 库文件位置:frameworks/base/libs/came
您可能关注的文档
- 8. Multimedia.pptx
- 7AUnit 4 comic strips and welcome(公开课).ppt
- 8-2006-Friction and wear behavior of dental feldspathic porcelain.pdf
- 74AUP1G57L6X,74AUP1G57FHX, 规格书,Datasheet 资料.pdf
- 831 Notice to Readers Human Ingestion of Bacillus Anthracis-Contaminated Meat —.pdf
- 829no1-22a-lcs.pdf
- 8-kidneys and regulations of water and inorganic iron.ppt
- 7BUnit1 reading PPT.ppt
- 9 688-692 转749 基础研究 5+20 超高压处理对添加变性淀粉鸡肉糜制品品质的影响.pdf
- 910Cold Induction of Arabidopsis CBF Genes Involves Multiple ICE (Inducer of CBF Expression).pdf
- Android_Codec_Release_Notes (android编码器笔记).pdf
- Android体感开发指导手册3-SDK开发实例.pdf
- Android技术之JNI和HAL.pdf
- Android系统的休眠.pdf
- Anonimo - ONU - Declaracion Universal de Derechos Humanos.pdf
- ANNOUNCEMENT OF RESULTS FOR THE YEAR ENDED 31ST MARCH, 2006.pdf
- anie_200900212_sm_miscellaneous_information.pdf
- Ansaldo安萨尔多电机.pdf
- Ansaldo安萨尔多高压变流器.pdf
- Answering regular path queries in expressive description logics An automata-theoretic appro.pdf
最近下载
- 中央空调净化系统标准规范操作规程.doc VIP
- 神志病中西医结合临床诊疗指南-精神分裂症.pdf VIP
- 混凝土重力坝施工课件.pptx VIP
- 辽宁省大连市2025届高三上学期双基测试数学试卷含答案.pdf VIP
- 2025-2026学年赣美版(2024)小学美术三年级上册《创意美术字》教学设计.docx
- 2.2 大气受热过程和大气运动(精品课件)-【居易课堂】2021-2022学年高一地理同步备课优质课件(人教2019必修第一册).pptx VIP
- 杜邦dupont芳纶凯夫拉kevlar应用领域.pdf VIP
- 细胞生物学(第五版)-第8章细胞骨架.ppt VIP
- InCAM Pro基础入门篇(中文).pdf VIP
- 2024届辽宁省大连市高三上学期期末双基测试化学试题及答案.pdf VIP
文档评论(0)