自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小石不识月,呼作白玉盘。

这个人很懒,什么也没写。

  • 博客(56)
  • 收藏
  • 关注

原创 [Android P] CameraAPI1 转 HAL3 预览流程(四) — Preview Data

总览预览打开完毕后,就进入了持续预览阶段。Camera API2 架构下,采用一个 Request 对应一个 Result 的规范,所以在预览期间是需要持续下 Request 来获取预览数据的,而仍然采用 API1 相机应用在 Framework 中也会被转换成这样的形式。其中,与 Request 密切相关的一个线程是 Camera3Device::RequestThread,它负责持续下预...

2019-09-28 16:06:29 3498

原创 [Android P] CameraAPI1 转 HAL3 预览流程(三) — setPreviewCallbackFlag

总览注意一下,虽然题目主要写的是 setPreviewCallbackFlag,但实际上这对于 Camera 应用,它的动作是调用 API1 的 setPreviewCallbackWithBuffer 和 addCallbackBuffer,这样会把 Preview Callback 的 Buffer 模式设置为手动模式(由 APP 主动带 Callback Buffer 下来,底层数据回来后...

2019-09-28 16:00:04 2449

原创 [Android P] CameraAPI1 转 HAL3 预览流程(二) — startPreview

[Android P] CameraAPI1 转 HAL3 预览流程(二) — startPreview文章目录[Android P] CameraAPI1 转 HAL3 预览流程(二) — startPreview总览代码分析startPreview 相关内容Camera2Client::startPreviewCamera2Client::startPreviewLupdatePreview...

2019-09-28 15:51:40 3646 5

原创 [Android P] CameraAPI1 转 HAL3 预览流程(一) — 背景概述

HAL3 强制升级已经有一年左右了,和 HAL3 搭配的 Camera API2 目前已经改用的三方相机应用还并不算多,所以为了更好地 debug 三方相机相关的卡顿问题,我近期花时间专门研究了 Android Framework 层提供的 API1 转 API2 连接 HAL3 的逻辑(以启动预览、预览数据流为例),以便对转换过程有一个总体认识,并且对经常遇到的两个由于 API 逻辑转换导致的卡...

2019-09-28 15:41:15 2993

原创 [Android O] HAL3 之 Open Camera2 流程(三,完结)—— 从 HAL Service 到 Camera HAL

打开相机流程中,从 APP 到 CameraService 再到 HAL Service 的连路创建流程都已经简略分析了一遍。现在需要分析最后的阶段,即从 HAL Service 连接到 Camera HAL 的部分。 其实 HAL 层真正的运作流程我也还没真正弄清楚,好在现在只需要分析它的构造与初始化部分,这相对来说还是比较简单的。在 HAL3 中,Camera HAL 的接口转化层(以及...

2018-08-16 10:15:46 14363 14

原创 [Android O] HAL3 之 Open Camera2 流程(二)—— 从 CameraService 到 HAL Service

之前已经分析了从 App 到 CameraService 的连路创建流程,接下来要分析的是从 CameraService 到 HAL Service 的连接过程。由于 Android O 中加入了 Treble 机制,它带来的一个巨大变化就是将原本的 CameraServer 进程分隔成 CameraServer 与 Provider service 两个进程,它们之间通过 HIDL(一个类似...

2018-08-14 09:36:12 12584 12

翻译 [网络安全技术文章之其三] 量子跃迁:量子计算对加密技术来说意味着什么?

相关文章给数据科学家的十条数据安全建议SSH 尝试攻击是什么样子的量子跃迁:量子计算对加密技术来说意味着什么?版权相关翻译人:StoneDemo,该成员来自云+社区翻译社 原文链接:Quantum leap: What will quantum computing mean for encryption? 原文作者:John-Paul PowerQua...

2018-08-13 00:28:26 622

翻译 [网络安全技术文章之其二] SSH 尝试攻击是什么样子的

相关文章给数据科学家的十条数据安全建议SSH 尝试攻击是什么样子的量子跃迁:量子计算对加密技术来说意味着什么?版权相关翻译人:StoneDemo,该成员来自云+社区翻译社 原文链接:What SSH Hacking Attempts Look Like 原文作者:Doug RickertWhat SSH Hacking Attempts Look Li...

2018-08-13 00:16:50 1537

翻译 [网络安全技术文章之其一] 给数据科学家的十条数据安全建议

相关文章给数据科学家的十条数据安全建议SSH 尝试攻击是什么样子的量子跃迁:量子计算对加密技术来说意味着什么?版权相关翻译人:StoneDemo,该成员来自云+社区翻译社 原文链接:Data Security for Data Scientists 原文作者:Andrew TherriaultData Security for Data Scientist...

2018-08-13 00:04:13 745

原创 [Android O] HAL3 之 Open Camera2 流程(一)—— 从 App 到 CameraService

从 Application 连接到 CameraService,这涉及到 Android 架构中的三个层次:App 层,Framework 层,Runtime 层。 其中,App 层直接调用 Framework 层所封装的方法,而 Framework 层需要通过 Binder 远程调用 Runtime 中 CameraService 的函数。这一部分主要的函数调用逻辑如下图所示。 下面...

2018-08-09 15:33:57 14065 9

原创 [Android O] HAL3 之 Open Camera2 流程(零)—— 概览

近期工作上的业务将要从 HAL1 迁移到 HAL3 了,为了早日进入正常业务状态,我得提前把 Camera HAL3 的几个重要流程追踪一遍。按照 HAL1 时候的思路,我打算从 Open Camera,即打开相机的流程开始分析。打开相机的流程就是打通 APP 到相机设备之间的连路的过程,按照 Android 的五层架构从上到下依次打通下行控制路线,并通过部署回调来构建上行的状态、数据路线。 ...

2018-08-09 14:48:51 9825 12

原创 [Android O] Camera 服务启动流程简析

前言去年正式进入框架组的时候,啥也不会,瞎jb分析了一通 Android N 上面的 Camera 相关流程。其实基本上都是跟着别人的分析日志看代码,然后按照自己的理解记了些笔记而已。不过当时感觉受益匪浅,并且后来在项目开发、维护的时候,很多相关的内容都派上了用场。从正式进入项目到现在大概有 10 个月了吧,其中大概有一半时间在 Android N 上填坑,另一半就是填 Android...

2018-07-27 17:05:39 23202 16

原创 Android Utils 之 Vector 学习笔记(四,完结)—— KeyedVector 与 DefaultKeyedVector 代码分析

KeyedVector终于来到我关注的 KeyedVector 类了。但实际上具体的逻辑实现部分都已经在前几章看到的 VectorImpl、SortedVectorImpl 以及 SortedVector 中搞定了,这里只是调用了它们提供的接口来实现相应的操作。类定义文件路径:system\core\libutils\include\utils\KeyedVector.h这里也...

2018-07-17 11:33:44 4933

原创 Android Utils 之 Vector 学习笔记(三)—— Vector 与 SortedVector 代码分析

实际上在 Vector 与 SortedVector 这两个类中,没有太多内容,主要提供了一些给外部调用的接口而已。不过也有一些需要注意的内容,比如抽象类中的纯虚函数的实现,以及自定义的比较函数等等。VectorVectoc 类继承自 VectorImpl,它的大部分功能都是通过直接内部调用父类的函数来实现的。因此这个类的结构与实现都非常简单,以至于只需要一个头文件就能全部包含。根据代...

2018-07-17 11:29:17 5721 2

原创 Android Utils 之 Vector 学习笔记(二)—— SortedVectorImpl 代码分析

上一篇笔记中,分析了最底层的抽象类 VectorImpl 中的几个重点函数实现方法。可以看到在那个类中,基本上所有 Vector 应有的操作都已经实现好了。 而 SortedVectorImpl 则基于此,又针对 Sorted 这一特性而增加了一些底层操作,接下来就分析分析相关的代码实现。SortedVectorImpl类定义文件路径:system\core\libutils\i...

2018-07-17 10:13:19 1629

翻译 [微服务技术文章之其二] 微服务原则:去中心化数据管理

日常前言翻译任务终了,最近的项目也已经交付出去,现在剩下的就是一些历史遗留问题要慢慢和第三方沟通处理……开始进入真正的项目空闲期了。不过大概再有两个星期,就又要开始搞新的机型了,这次还是用的高通 SDM450 芯片,嗯…应该不会太忙。近期的主要任务是要学习 Android Camera HAL3 的流程,重点关注 Framework 以及 HAL 的部分,至少要搞懂 openCamera ...

2018-07-12 00:02:47 2025

翻译 [微服务技术文章之其一] 服务集成时需避免的两个错误

日常前言翻译任务终了,最近的项目也已经交付出去,现在剩下的就是一些历史遗留问题要慢慢和第三方沟通处理……开始进入真正的项目空闲期了。不过大概再有两个星期,就又要开始搞新的机型了,这次还是用的高通 SDM450 芯片,嗯…应该不会太忙。近期的主要任务是要学习 Android Camera HAL3 的流程,重点关注 Framework 以及 HAL 的部分,至少要搞懂 openCamera ...

2018-07-11 23:50:23 1160

原创 Android Utils 之 Vector 学习笔记(一)—— VectorImpl 代码分析

前言在维护 Android Framework 层时,常常能看到对 KeyedVector 与 DefaultKeyedVector 的使用。并且我们内部的服务框架也有用到 KeyedVector 这个结构。但在维护项目的过程中,我们发现它可能会导致数据处理顺序出现混乱的情况,我认为这一定是因为我们对这个结构不够了解导致的。关于这个结构内部的具体实现,我觉得我有必要去了解清楚,以便在后续的使用...

2018-07-11 14:28:52 2637

翻译 [大数据文章之其四] 概率数据结构简介

日常前言五月六月,又陷入反反复复的项目 Bug 中了。讲道理,分析日志是越来越熟练了,代码水平其实没有很大提高,毕竟改 Bug 嘛,大多只是在原有代码的基础上,添加或者修改一些业务逻辑。虽然改原生代码的时候能学到很多东西,但是那些部分很少出现问题,绝大部分还是我们自己人加入、修改的逻辑挖出来的坑。填坑的过程真是漫长又令人心烦。时间有限,这次的翻译也只选了五个短篇,尽量提高内容质量同时也节省...

2018-06-10 20:49:35 1638

翻译 [大数据文章之其三] 快速数据管道设计:通过交换表更新各个事件决策

日常前言五月六月,又陷入反反复复的项目 Bug 中了。讲道理,分析日志是越来越熟练了,代码水平其实没有很大提高,毕竟改 Bug 嘛,大多只是在原有代码的基础上,添加或者修改一些业务逻辑。虽然改原生代码的时候能学到很多东西,但是那些部分很少出现问题,绝大部分还是我们自己人加入、修改的逻辑挖出来的坑。填坑的过程真是漫长又令人心烦。时间有限,这次的翻译也只选了五个短篇,尽量提高内容质量同时也节省...

2018-06-10 20:32:20 978

翻译 [大数据文章之其二] 数据可视化的艺术

日常前言五月六月,又陷入反反复复的项目 Bug 中了。讲道理,分析日志是越来越熟练了,代码水平其实没有很大提高,毕竟改 Bug 嘛,大多只是在原有代码的基础上,添加或者修改一些业务逻辑。虽然改原生代码的时候能学到很多东西,但是那些部分很少出现问题,绝大部分还是我们自己人加入、修改的逻辑挖出来的坑。填坑的过程真是漫长又令人心烦。时间有限,这次的翻译也只选了五个短篇,尽量提高内容质量同时也节省...

2018-06-10 20:19:42 798

翻译 [大数据文章之其一] 大数据对你来说意味着什么?

日常前言五月六月,又陷入反反复复的项目 Bug 中了。讲道理,分析日志是越来越熟练了,代码水平其实没有很大提高,毕竟改 Bug 嘛,大多只是在原有代码的基础上,添加或者修改一些业务逻辑。虽然改原生代码的时候能学到很多东西,但是那些部分很少出现问题,绝大部分还是我们自己人加入、修改的逻辑挖出来的坑。填坑的过程真是漫长又令人心烦。时间有限,这次的翻译也只选了五个短篇,尽量提高内容质量同时也节省...

2018-06-10 20:03:19 1158

翻译 [物联网文章之其四] 在物联网中应用机器学习:使用 Android Things 与 TensorFlow

日常前言四月份花了一大部分时间去深入代码,把我们的双摄虚化流程解析了一遍。然后为了给组内分享,又花了相当一部分时间去做总结,画思维导图、作流程图等等,这其中学到了挺多东西的,尤其是对高通 Camera HAL 层的数据流部分,Camera Post Process 的前后节点都有了一个比较大概的了解,在跟踪数据流的时候没那么头晕了。还有,总结、分享知识的时候,作图真的非常重要,一份填满大量...

2018-05-14 00:03:45 1245

翻译 [物联网文章之其三] 剖析物联网解决方案

日常前言四月份花了一大部分时间去深入代码,把我们的双摄虚化流程解析了一遍。然后为了给组内分享,又花了相当一部分时间去做总结,画思维导图、作流程图等等,这其中学到了挺多东西的,尤其是对高通 Camera HAL 层的数据流部分,Camera Post Process 的前后节点都有了一个比较大概的了解,在跟踪数据流的时候没那么头晕了。还有,总结、分享知识的时候,作图真的非常重要,一份填满大量...

2018-05-13 23:39:39 866

翻译 [物联网文章之其二] 物联网中的认知科学与网络监督

日常前言四月份花了一大部分时间去深入代码,把我们的双摄虚化流程解析了一遍。然后为了给组内分享,又花了相当一部分时间去做总结,画思维导图、作流程图等等,这其中学到了挺多东西的,尤其是对高通 Camera HAL 层的数据流部分,Camera Post Process 的前后节点都有了一个比较大概的了解,在跟踪数据流的时候没那么头晕了。还有,总结、分享知识的时候,作图真的非常重要,一份填满大量...

2018-05-13 23:25:51 338

翻译 [物联网文章之其一] 十大业务步骤——确保物联网生态系统的安全

日常前言四月份花了一大部分时间去深入代码,把我们的双摄虚化流程解析了一遍。然后为了给组内分享,又花了相当一部分时间去做总结,画思维导图、作流程图等等,这其中学到了挺多东西的,尤其是对高通 Camera HAL 层的数据流部分,Camera Post Process 的前后节点都有了一个比较大概的了解,在跟踪数据流的时候没那么头晕了。还有,总结、分享知识的时候,作图真的非常重要,一份填满大量...

2018-05-12 00:02:25 576

翻译 [区块链文章之其二] 首次币发行(ICO)简介

日常前言工作后第一个金三银四,算是见识到了。今年开年的时候上头就一直在说现在是行业寒冬了,大家也都明白,估计奖金什么的都要大缩水了。本来平时待遇也只是行业中偏下水平,每年就靠奖金平衡收入……emmmmmm于是好多同事走人了,我的导师都跳槽了……本来我们组就人少,现在又走了一个,不知道之后项目压力会不会变大。希望项目上的 Bug 不要太多,感觉一直陷在解 Bug 的无限循环里对自身能力提升没...

2018-03-29 21:59:11 4185

翻译 [区块链文章之其一] 成为加密货币矿工容易吗?我该如何入门?

日常前言工作后第一个金三银四,算是见识到了。今年开年的时候上头就一直在说现在是行业寒冬了,大家也都明白,估计奖金什么的都要大缩水了。本来平时待遇也只是行业中偏下水平,每年就靠奖金平衡收入……emmmmmm于是好多同事走人了,我的导师都跳槽了……本来我们组就人少,现在又走了一个,不知道之后项目压力会不会变大。希望项目上的 Bug 不要太多,感觉一直陷在解 Bug 的无限循环里对自身能力提升没...

2018-03-29 21:35:06 1917

翻译 [AI 技术文章之其三] 基于神经网络的图像压缩技术

前言这两个月真是突如其来的清闲……偶尔分配来个 Bug,但经常就很快搞定了。跟组长讨论了一下代码结构优化方面的问题,把之前加入的一套业务逻辑做了整体优化,然后又陷入 “闲” 者模式。剩下的大多时间都是在学习学习,熟悉熟悉项目源码。现在主要在搞 MTK Camera Hal 层的东西, 真是想吐槽一下,Mtk 的代码有很多冗余的部分,比如各种 CamAdapter,明明代码一样一样的,非要复...

2018-02-14 23:17:08 3546

翻译 [AI 技术文章之其二] 自然语言处理的神经网络模型初探

前言这两个月真是突如其来的清闲……偶尔分配来个 Bug,但经常就很快搞定了。跟组长讨论了一下代码结构优化方面的问题,把之前加入的一套业务逻辑做了整体优化,然后又陷入 “闲” 者模式。剩下的大多时间都是在学习学习,熟悉熟悉项目源码。现在主要在搞 MTK Camera Hal 层的东西, 真是想吐槽一下,Mtk 的代码有很多冗余的部分,比如各种 CamAdapter,明明代码一样一样的,非要复...

2018-02-14 17:16:03 954

翻译 [AI 技术文章之其一] 多层感知器神经网络速成课

前言这两个月真是突如其来的清闲……偶尔分配来个 Bug,但经常就很快搞定了。跟组长讨论了一下代码结构优化方面的问题,把之前加入的一套业务逻辑做了整体优化,然后又陷入 “闲” 者模式。剩下的大多时间都是在学习学习,熟悉熟悉项目源码。现在主要在搞 MTK Camera Hal 层的东西, 真是想吐槽一下,Mtk 的代码有很多冗余的部分,比如各种 CamAdapter,明明代码一样一样的,非要复...

2018-02-14 11:09:25 599

翻译 [云计算技术文章之其三] 在Docker平台和Moby项目中加入对Kubernetes的支持

前言最近一两个星期,手头上的项目陆续交付出去了,个人的空闲时间就多了些,于是业余活动就增多了起来,终于也有时间开始整理文档,写写博客了。近期的业余活动,除了继续学习吴恩达老师的深度学习课程,看一看 Stephen Boyd 的著作《Convex Optimization》学习一些数学知识,还加入了腾讯云的“云+翻译社”,闲下来时翻译一些比较新的技术文章张张姿势,身为技术人,可不能跟不上时代...

2018-01-17 15:29:34 369

翻译 [云计算技术文章之其二] 用于增强数据治理能力与法规遵从性的容器

前言最近一两个星期,手头上的项目陆续交付出去了,个人的空闲时间就多了些,于是业余活动就增多了起来,终于也有时间开始整理文档,写写博客了。近期的业余活动,除了继续学习吴恩达老师的深度学习课程,看一看 Stephen Boyd 的著作《Convex Optimization》学习一些数学知识,还加入了腾讯云的“云+翻译社”,闲下来时翻译一些比较新的技术文章张张姿势,身为技术人,可不能跟不上时代...

2018-01-17 15:07:28 315

翻译 [云计算技术文章之其一] 利用 IBM 云功能构建无服务器应用程序

前言最近一两个星期,手头上的项目陆续交付出去了,个人的空闲时间就多了些,于是业余活动就增多了起来,终于也有时间开始整理文档,写写博客了。近期的业余活动,除了继续学习吴恩达老师的深度学习课程,看一看 Stephen Boyd 的著作《Convex Optimization》学习一些数学知识,还加入了腾讯云的“云+翻译社”,闲下来时翻译一些比较新的技术文章张张姿势,身为技术人,可不能跟不上时代...

2018-01-17 14:01:14 380

翻译 Android HIDL 官方文档(七,END)—— 网络堆栈配置工具(Network Stack Configuration Tools)

官方目前已经出了中文文档,后面翻译的就不用传啦,所以把这篇改成完结了,有需要的朋友就继续到官方地址去看吧。最近项目多,忙啊~~~~

2017-11-06 22:08:01 8030

翻译 Android HIDL 官方文档(六)—— 使用 Binder 进程间通信机制(Using Binder IPC)

1. Binder 驱动的改变1.1 多个 Binder 域(上下文)1.2 散集列表1.3 更细化地加锁1.4 实时优先级继承1.5 用户空间更改1.6 公共内核中的一些 SHA2. 使用 Binder IPC2.1 vndbinder2.2 vndservicemanager3. SELinux 策略3.1 服务名称3.2 服务标签3.3 服务管理者规则...

2017-10-31 20:30:54 13025 2

翻译 Android HIDL 官方文档(五)—— 快速消息队列(Fast Message Queue ,FMQ)

最近因为业务上的需求,老大让我先看着 HIDL 的官方文档学习学习。然而直接看英文文档还是很不习惯,就打算一边翻译一边学习。 翻译相关的内容都是以中英文对照的形式贴出来。.........

2017-10-28 23:45:29 5753

翻译 Android HIDL 官方文档(四)—— 服务与数据转换(Services & Data Transfer)

最近因为业务上的需求,老大让我先看着 HIDL 的官方文档学习学习。然而直接看英文文档还是很不习惯,就打算一边翻译一边学习。 翻译相关的内容都是以中英文对照的形式贴出来。......

2017-10-25 19:35:37 7247 1

翻译 Android HIDL 官方文档(三)—— 接口哈希(Interfaces Hashing)

最近因为业务上的需求,老大让我先看着 HIDL 的官方文档学习学习。然而直接看英文文档还是很不习惯,就打算一边翻译一边学习。 翻译相关的内容都是以中英文对照的形式贴出来。......

2017-10-25 19:08:13 6813

翻译 Android HIDL 官方文档(二)—— 接口与包(Interfaces & Packages)

最近因为业务上的需求,老大让我先看着 HIDL 的官方文档学习学习。然而直接看英文文档还是很不习惯,就打算一边翻译一边学习。 翻译相关的内容都是以中英文对照的形式贴出来。...

2017-10-22 22:50:49 5616

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除