- 博客(34)
- 资源 (5)
- 收藏
- 关注
原创 Mutux type mtx_recursive mtx_plain mtx_timed
Mutux type mtx_recursive mtx_plainmtx_timed Enumerator mtx_plain passed to ::mtx_init to create a mutex object that supports neither timeout nor test and return mtx_recursive passed to ::mtx_init to create a mutex object th...
2020-10-28 09:04:24 178
转载 Failed to connect to socket /com/ubuntu/upstart: Connection refused: Errors were encountered while p
up vote2down votefavorite1I'm using Ubuntu 15.04. Whenever I tried to install any package, I got the error message in the title. How can I get rid of this annoying error message?
2016-08-17 11:02:36 7833
转载 使用Camera2 替代过时的Camera API
概要从5.0开始(API Level 21),可以完全控制安卓设备相机的新api Camera2(android.hardware.Camera2)被引入了进来。在以前的Camera api(android.hardware.Camera)中,对相机的手动控制需要更改系统才能实现,而且api也不友好。不过老的Camera API在5.0上已经过时,在未来的app开发中推荐的是Camer
2016-07-13 11:33:57 687 1
转载 Android Camera从Camera HAL1到Camera HAL3的过渡(已更新到Android6.0 HAL3.3)
1. Android系统中Camera模块版本号的历史演变进度[cpp] view plain copy /** * All module versions * as CAMERA_MODULE_API_VERSION_1_0 */ #define CAMERA_MODULE_API_VERSION_1_0 HARDWARE
2016-07-13 11:31:34 675
转载 Android Camera HAL3中预览preview模式下的控制流
Camera3研读前沿: 当初在研读Camera1.0相关的内容时,主要围绕着CameraClient、CameraHardwareInterface等方面进行工作的开展,无论是数据流还是控制流看起来都很简单、明了,一系列的流程化操作使得整个框架学起来特别的容易。因为没有Camera2.0相关的基础,所以这次直接看3.0相关的源码时,显得十分的吃紧,再加上底层高通HAL3.0实现的过
2016-07-13 11:30:42 795
转载 Android Camera HAL3中预览preview模式下的控制流
Camera3研读前沿: 当初在研读Camera1.0相关的内容时,主要围绕着CameraClient、CameraHardwareInterface等方面进行工作的开展,无论是数据流还是控制流看起来都很简单、明了,一系列的流程化操作使得整个框架学起来特别的容易。因为没有Camera2.0相关的基础,所以这次直接看3.0相关的源码时,显得十分的吃紧,再加上底层高通HAL3.0实现的过
2016-07-13 11:30:41 1921
转载 Android Camera API2中采用CameraMetadata用于从APP到HAL的参数交互
前沿:在全新的Camera API2架构下,常常会有人疑问再也看不到熟悉的SetParameter/Paramters等相关的身影,取而代之的是一种全新的CameraMetadata结构的出现,他不仅很早就出现在Camera API1/API2结构下的Camera2Device、Camera3Device中用于和HAL3的数据交互,而现在在API2的驱使下都取代了Parameter,实
2016-07-13 11:29:10 840
转载 Android Camera HAL3中拍照Capture模式下多模块间的交互与帧Result与帧数据回调
前沿: 之前的两篇博文算是比较详细的记录了整个Camera3 HAL3架构下完全不同于HAL1的preview预览处理过程,包括主要涉及到的控制流和视频流等。比较详细的阐述了Camera2Client下streamProcessor、CallbackProcessor、CaptureSequencer等模块在Camera3架构下的功能。分析得出每个模块下均会在Camera3Devic
2016-07-13 11:27:05 1901
转载 Android5.1中surface和CpuConsumer下生产者和消费者间的处理框架简述
前沿:如果对SurfaceFlinger架构的工作原理较为熟悉的话,本文阅读起来会相对容易些。之所以撰写本文是因为在阅读Camera HAL3的实现过程中大量的出现了类似与SurfaceFlinger的工作模式。本文将以CallbackProcessor模块的为入口,和大家进行分享。1 Preview模块Surface与SurfaceFlinger的基础知识
2016-07-13 11:26:11 827
转载 Android5.1中surface和CpuConsumer下生产者和消费者间的处理框架简述
前沿:如果对SurfaceFlinger架构的工作原理较为熟悉的话,本文阅读起来会相对容易些。之所以撰写本文是因为在阅读Camera HAL3的实现过程中大量的出现了类似与SurfaceFlinger的工作模式。本文将以CallbackProcessor模块的为入口,和大家进行分享。1 Preview模块Surface与SurfaceFlinger的基础知识
2016-07-13 11:25:44 488
转载 Android Camera API2.0下全新的Camera FW/HAL架构简述
前沿:前面博文大多少总结的是Camera HAL1到HAL3的系统架构,但这些架构对于Camera APP开发来说依旧还是处于Camera API1.0的标准。而随着Camera3、HAL3.0等的不断更新,Google先是在Framework中更改了整个架构从而去匹配Camera API1.0的处理逻辑,随着时间的推移,Google直接对Camera API进行了全新的升级,去除了原先的
2016-07-13 11:24:42 704
转载 Android Camera HAL V3 Vendor Tag及V1,V3参数转换
转眼一看,上一次发博文都快是三年之前了,惭愧 ! 主要是三年前找的这份工作,虽然是世界500强的技术大牛公司,但是工作可一点都不高大上,非常的忙,一天不但要处理各种camera的bug,还要开发camera的各种feature和sensor驱动,还要和内部、外部的人各种扯皮,你懂的。忙的三年了才有闲心来发表这片博文。 牢骚已完,言归正传。 在Android
2016-07-13 11:23:59 1250
转载 Android Camera API2中采用CameraMetadata用于从APP到HAL的参数交互
前沿:在全新的Camera API2架构下,常常会有人疑问再也看不到熟悉的SetParameter/Paramters等相关的身影,取而代之的是一种全新的CameraMetadata结构的出现,他不仅很早就出现在Camera API1/API2结构下的Camera2Device、Camera3Device中用于和HAL3的数据交互,而现在在API2的驱使下都取代了Parameter,实现了
2016-07-13 11:23:19 470
转载 Android Camera HAL3中预览preview模式下的数据流
前沿:为了更好的梳理preview下buffer数据流的操作过程,前一文中对surface下的buffer相关的操作架构进行了描述。本文主要以此为基础,重点分析再Camera2Client和Camera3Device下是如何维护并读写这些视频帧缓存的。 1. Camera3Device::convertMetadataListToRequestListLocked函数
2016-07-13 11:22:33 1178
转载 android camera接口介绍
1.CameraAndroid的camera硬件抽象层(HAL)将更高层次的android.hardware中的camera框架层API与底层的camera驱动和camera硬件模块连接了起来。Camera子系统包括camera流水线上各个组件的实现,而camera HAL提供了这些组件的使用接口。注:camera HAL起着承上启下的作用。在camera HAL层实现中,芯片
2016-07-13 11:20:55 427
转载 android camera HAL v3.0详细介绍(二)
3.Startup and expected operation sequence这段描述了使用camera API的详细步骤。其中涉及到的结构体和函数请参考文件:platform/hardware/libhardware/include/hardware/camera3.h1. Framework层调用函数camera_module_t->common.open(),
2016-07-13 11:20:15 576
转载 android camera HAL v3.0详细介绍(一)
1. RequestsApplication framework层向camera子系统发出一系列捕获数据的请求。一个请求对应于结果中的一个单元。请求封装了这些结果关于捕获数据和处理数据的所有配置信息。这些信息包括:分辨率,像素格式,sensor调整,镜头和闪光灯控制,3A操作模式,RAW转YUV处理,统计信息产生,等等。这里考虑了很多关于对结果数据的输出和处理的控制。多个请求可以
2016-07-13 11:19:36 476
转载 android camera系统3A模式及其状态转换(二)
5. AF state machines mode = AF_MODE_OFF or AF_MODE_EDOF StateTransformation causeNew stateNotesINACTIVE AF is disabledmode = AF_MODE_AUTO or AF_
2016-07-13 11:18:44 455
转载 android camera系统3A模式及其状态转换(一)
虽然HAL层负责实现3A算法,但HAL interface定义了一个高层次的状态机描述,允许HAL层设备和framework层交流3A当前状态和3A事件的触发情况。当设备被打开时,所有3A状态都应该是STATE_INACTIVE。码流配置不需重置3A。例如,需要通过调用configure()来修改固定焦点。要触发3A行为,需要为下一个请求简单地设置相关触发器实体,以引导触发器的
2016-07-13 11:18:03 1416
转载 android camera HAL v3.0中元数据及其控制
1. Metadata supportAndroid framework层为了支持保存raw图像文件,增加了大量关于sensor特性的元数据。这些元数据包括大量信息,例如颜色空间和lens shading。在camera子系统中,大多数元数据信息都是以静态属性的方式存在,因此在配置输出流水线或者提交请求之前获取这些元数据。在新的camera API中,通过ge
2016-07-13 11:17:21 347
转载 android camera接口介绍
1.CameraAndroid的camera硬件抽象层(HAL)将更高层次的android.hardware中的camera框架层API与底层的camera驱动和camera硬件模块连接了起来。Camera子系统包括camera流水线上各个组件的实现,而camera HAL提供了这些组件的使用接口。注:camera HAL起着承上启下的作用。在camera HAL层实现中,芯片
2016-07-13 11:16:51 304
转载 Android Camera系统
1. Overview1.1 物理架构1.2 Android架构2. CameraService3. HAL4. Overlay5. Video for Linux1. Overview 本文以Freescale IMX为例剖析camera摄像头的系统架构。 1.1 物理架构 硬件方面,camera系统分为
2016-07-13 11:13:32 253
转载 Android Camera Framework Stream(一)
现在我们尝试从最开始的启动流程来熟悉android camera的整体framework流程:首先从上图的各个步骤来逐一分析流程,后续会根据具体的一些点进行内容的添加和扩充: ? Camera.javapackages/apps/camera/src/com/android/最上层的应用就是从这个文件开始。该文件集中了整个android上层应用的所有相关内容,当然更多的则为
2016-07-13 11:12:17 1237 1
转载 Android Camera 架构
第一部分 Camera概述 Android的Camera包含取景器(viewfinder)和拍摄照片的功能。目前Android发布版的Camera程序虽然功能比较简单,但是其程序的架构分成客户端和服务器两个部分,它们建立在Android的进程间通讯Binder的结构上。 以开源的Android为例,Camera的代码主要在以下的目录中: Camera的JAVA程序的路
2016-07-13 11:11:15 229
转载 Android camera系统开发之IPC (五)
四 连接建立后的client和Service的通信过程:这里以CameraService::connect()为例进行说明。 @Camera.cppsp Camera::connect(){ LOGV("connect"); sp c = new Camera(); const sp& cs = getCameraServi
2016-07-13 11:10:35 289
转载 Android camera系统开发之IPC (四)
三 获取一个CameraService服务代理 获取服务接口的唯一方法就是通过IServiceManager::getService()函数。假设Camera preview需要获取一个ICameraService。 @camera.cppconst sp& Camera::getCameraService(){ Mutex::Autolock _
2016-07-13 11:10:03 265
转载 Android camera系统开发之IPC (三)
二,CameraSerivce服务的注册同样在init.rc中能看到如下语句 service media /system/bin/mediaserver user mediagroup system audio camera graphics inet net_bt net_bt_admin这个服务的入口是Main_mediaservice.c中的
2016-07-13 11:09:14 281
转载 Android camera系统开发之IPC (二)
一 系统服务管理器启动 参考Android init 详细过程分析 ,我们知道系统在INIT进程中会分析INIT.RC我们从init.rc中能看到如下代码@init.rc…service servicemanager /system/bin/servicemanager user system crit
2016-07-13 11:08:01 235
转载 Android camera系统开发之总括
最近在从事有关Android Camera开发相关的工作,发现这一块还是比较复杂,从网络上也得到很多相关资料,但是都比较分散,对于出现的问题很难有个全面地了解与定位。 根据我自己的习惯,我比较喜欢把整个框架先大概了解一下,再针对某个部件进行认真分析,这样在出现问题的时候就可以做到有的放矢。 发现系统无法上传我的图片,可能是我本地加密的原因 ,只
2016-07-13 11:07:20 286
转载 Android camera系统开发之IPC (一)
Android使用Binder机制来实现IPC, Binder通信是借助linux的binder driver来实现的,两个进程间IPC感觉就象是一个进程进入另一个进程执行代码一样,而且在本地能返回远端函数的返回结果。Binder的用户空间为每一个进程维护着一个可用的线程池,线程池用来处理到来的调用请求的消息,包括请求的消息,和远端响应的消息。Android中的Binder通信是基于S
2016-07-13 11:06:37 354
转载 从Camera来看Binder IPC机制
Camera App通过framework中Camera java类进入jni部分,在android_hardware_Camera.cpp中:android_hardware_Camera_native_setup(){ sp camera = Camera::connect();}这里调用Camera类的connect函数,返回一个Came
2016-07-13 11:05:29 699
转载 android camera HAL v3.0详细介绍(二)
3.Startup and expected operation sequence这段描述了使用camera API的详细步骤。其中涉及到的结构体和函数请参考文件:platform/hardware/libhardware/include/hardware/camera3.h1. Framework层调用函数camera_module_t->common.open(),
2016-07-13 11:03:06 1025
Embedded Linux Primer
2010-04-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人