随笔分类 -  Android

HIDL学习笔记_1
摘要:一、HIDL概述 1. Google对于HIDL的详细说明,以及语法解析链接如下:https://source.android.com/devices/architecture/hidl/ (需要FQ才可以打开) 2. HIDL的定义HIDL 全称是 Hardware Interface Defin 阅读全文

posted @ 2020-02-03 23:58 Hello-World3 阅读(1648) 评论(0) 推荐(0) 编辑

Android功耗统计算法
摘要:基于Android 6.0的源码剖析。 Power_profile.xml文件demo: <?xml version="1.0" encoding="utf-8"?> <!-- ** ** Copyright 2009, The Android Open Source Project ** ** L 阅读全文

posted @ 2020-02-02 18:14 Hello-World3 阅读(1539) 评论(0) 推荐(0) 编辑

dumpsys学习笔记—1
摘要:一、dumpsys源码 dumpsys是Android自带的强大debug工具,命令源码来自dumpsys.cpp文件,位置为:frameworks/native/cmds/dumpsys/dumpsys.cpp int main(int argc, char* const argv[]) { si 阅读全文

posted @ 2020-02-02 11:58 Hello-World3 阅读(1102) 评论(0) 推荐(0) 编辑

Android属性系统学习笔记
摘要:一、property_get()/property_set() 每个属性都有一个名称和值,他们都是字符串格式。属性被大量使用在Android系统中,用来记录系统设置或进程之间的信息交换。属性是在整个系统中全局可见的。每个进程可以get/set属性。 在系统初始化时,Android将分配一个共享内存区 阅读全文

posted @ 2020-01-20 22:23 Hello-World3 阅读(439) 评论(0) 推荐(0) 编辑

Android显示学习笔记
摘要:1.显示步骤: 事件触发,比如说用户点击图标,或者滑动 List 系统把事件分发给对应的 App,比如在桌面点击图标启动应用–对应点击事件,或者微信朋友圈滑动 – 对应滑动事件 App 拿到事件之后,对事件进行处理,不过有的是应用本身来处理,有的是系统帮忙处理,比如滑动事件的话,则会触发列表上下滑动 阅读全文

posted @ 2020-01-12 19:29 Hello-World3 阅读(201) 评论(0) 推荐(0) 编辑

Android编译选项eng、user、userdebug的区别
摘要:一、简要说明 1. eng user userdebug 定义 eng:debug 版本,又称工程版本;user: release 版本,又称发行版本;userDebug:部分调试版本 2. Android.mk 中的编译选项 LOCAL_MODULE_TAGS Android源码编译选项eng、u 阅读全文

posted @ 2019-07-26 11:02 Hello-World3 阅读(2751) 评论(0) 推荐(1) 编辑

高通Sensor驱动学习笔记
摘要:高通ADSP Sensor框架: 高通sensor架构实例分析之一 linux驱动由浅入深系列:高通sensor架构实例分析之二(驱动代码结构) linux驱动由浅入深系列:高通sensor架构实例分析之三(adsp上报数据详解、校准流程详解) 高通SEE Sensor框架: 高通SDM845平台S 阅读全文

posted @ 2019-06-03 10:44 Hello-World3 阅读(14429) 评论(0) 推荐(1) 编辑

Android 中的 wakelock
摘要:1. 内核中相关文件kernel/power/wakelock.c //wakelock核心实现kernel/power/userwakelock.c //导出用户空间使用的sysfs wakelock接口 2. Framework中的相关文件PowerManagerService.java 3. 阅读全文

posted @ 2019-05-31 19:44 Hello-World3 阅读(1737) 评论(0) 推荐(0) 编辑

Android音频(10)——多App同时录音实现
摘要:一、使用c++编写录音程序 1. PCM音频数据是原始音频数据,无法使用播放器播放,需要给它加上一个头部,表明声音有几个通道,采样率是多少等等。将PCM音频数据转换为WAV格式,这样其它播放器才能播放出来。 2. 录音时要确定3个参数(1)采样率:一秒钟对声波采样的次数。常用的采样率有8000,11 阅读全文

posted @ 2019-05-30 01:35 Hello-World3 阅读(7822) 评论(1) 推荐(0) 编辑

Android音频(9)——音量调节
摘要:一、音量相关概念 1. 相关术语解释 track volume : 单个App设置音量时设置的是这个,它只影响本App的音量。stream volume :设置某一stream的音量,Android系统中支持10种stream。stream volume alias:设置的是同一组stream的音量 阅读全文

posted @ 2019-05-29 19:59 Hello-World3 阅读(12592) 评论(0) 推荐(2) 编辑

Android音频(8)——HAL分析
摘要:一、HAL之框架 1. tiny4412上HAL框架 audio.primary.tiny4412.so文件的Makefile:device/friendly-arm/common/libaudio/Android.mk libaudiohw_legacy依赖文件: 所以库文件audio.prima 阅读全文

posted @ 2019-05-29 12:58 Hello-World3 阅读(7034) 评论(0) 推荐(1) 编辑

Android音频(7)——项目实战——耳麦插拔
摘要:一、驱动程序上报耳麦拔插事件 1. 在有些Android版本中并不会在状态栏上显示耳麦图标。切换声道也不在系统中实现,而是在驱动中实现的。 2. headset headPhone lineOutheadset:既有听筒又有MicheadPhone:只有听筒,没有MiclineOut: 就是输出模拟 阅读全文

posted @ 2019-05-28 19:05 Hello-World3 阅读(3954) 评论(0) 推荐(0) 编辑

Android音频(6)——音频系统分析
摘要:一、AudioPolicyService启动过程分析 1. 播放声音,声音从哪个设备播放出来是由audio policy决定的。 2.在每一个声卡,对应一个output,一个output对应系统中都有一个线程与其对应。 3.对硬件的访问操作是由AudioFlinger来完成的 4.AudioPoli 阅读全文

posted @ 2019-05-27 18:27 Hello-World3 阅读(3091) 评论(0) 推荐(0) 编辑

Android音频(5)——框架中的概念和涉及的文件
摘要:一、涉及的概念 1. 概念output(1) 一个output对应一个或多个设备节点,比如/dev/snd/pcmC0D0p。为了避免麻烦,一个设备节点只由一个Thread(线程)操作。(2) 一个putput是多个device的组合(比如声卡上有喇叭(dev1)和耳机(dev2)),这些devic 阅读全文

posted @ 2019-05-26 22:39 Hello-World3 阅读(2369) 评论(1) 推荐(1) 编辑

Android音频(4)——音频驱动实战
摘要:一、应用测试工具的使用 1.在external/tinyalsa下有以C语言实现的alsa的测试程序,编译后生成tinypcminfo tinyplay tinycap tinymix 四个elf格式的测试工具 (1) tinypcminfo :获取PCM In和PCM # tinypcminfo 阅读全文

posted @ 2019-05-26 00:37 Hello-World3 阅读(4708) 评论(0) 推荐(0) 编辑

Android音频(3)——ALSA声卡驱动——DAPM
摘要:一、DAPM简介 DAPM是Dynamic Audio Power Management的缩写,直译过来就是动态音频电源管理的意思,DAPM是为了使基于linux的移动设备上的音频子系统,在任何时候都工作在最小功耗状态下。DAPM对用户空间的应用程序来说是透明的,所有与电源相关的开关都在ASoc c 阅读全文

posted @ 2019-05-25 22:44 Hello-World3 阅读(4132) 评论(0) 推荐(0) 编辑

Android音频(2)——ALSA声卡驱动——ASoC
摘要:一、ASoC简介 ASoC(Alsa System on Chaip),也称为移动设备中的ALSA。是建立在标准ALSA驱动层上,为了更好地支持嵌入式处理器和移动设备中的音频Codec的一套软件体系。ASoC不能单独存在,他只是建立在标准ALSA驱动上的一个它必须和标准的ALSA驱动框架相结合才能工 阅读全文

posted @ 2019-05-24 16:15 Hello-World3 阅读(2246) 评论(0) 推荐(0) 编辑

Android音频(1)——ALSA声卡驱动
摘要:一、ALSA基础知识 1. ALSA(Advanced Linux Sound Architecture)目前已经成为了linux的主流音频体系结构,ALSA开源项目网址:http://www.alsa-project.org/。另一个音频驱动框架是OSS(open sound system),收费 阅读全文

posted @ 2019-05-24 13:03 Hello-World3 阅读(4768) 评论(0) 推荐(1) 编辑

Mutex::AutoLock介绍
摘要:AutoLock类是定义在Mutex内部的一个类,用于解决lock和unlock必须必须一一对应的问题。unlock这句代码可能会忘记写,从而导致死锁。AutoLock充分利用了C++的构造和析构函数,来达到自动调用unlock函数的目的。 Mutex::Autolock声明和实现: 注意事项: A 阅读全文

posted @ 2019-05-20 16:18 Hello-World3 阅读(4771) 评论(0) 推荐(0) 编辑

Android显示系统(1)——显示框架
摘要:1.Android系统显示框架参考文档https://community.nxp.com/docs/DOC-93612 2. 涉及的概念:GPU DC HWC FB OverLay 3. FB表示的是帧缓冲,不但视频显示使用到,Camera视频输入也使用到,也就是说FB不是显示上特有的概念。 4. 阅读全文

posted @ 2019-05-18 11:45 Hello-World3 阅读(2529) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示