
Android Framework
文章平均质量分 93
lzqustc
这个作者很懒,什么都没留下…
展开
-
Android Framework源码解读 - Audio - SoundTrigger(3) - Callback
上一篇Android Framework源码解读 - Audio - SoundTrigger(2)已经完成了SoundTrigger的初始化流程,并在HAL层启动了callback_thread_loop线程来监听内核事件(也就是驱动检测到唤醒词后会上报uevent)。接下来就讲讲这个唤醒事件是如何通过callback方式一层层上报,最终被APK层收到的。既然是callback方式,肯定是会涉及函数或是对象指针,而且是要从源头 - APK层开始一层层把指针设置到HAL层,最终被HAL层的callbac原创 2021-06-27 17:46:56 · 2064 阅读 · 1 评论 -
Android Framework源码解读 - Audio - SoundTrigger(2)
在上一篇中Android Framework源码解读 - Audio - SoundTrigger(1) - AIDL,提到startRecognition如何到达HAL层(主要本例中使用的唤醒词检测驱动来自厂商,HAL层的代码实现也是厂商提供),请看下图:相关代码位于./frameworks/av/soundtrigger/ISoundTrigger.cpp 、./frameworks/av/services/soundtrigger/SoundTriggerHwService.cpp共4步:原创 2021-06-14 22:02:56 · 1887 阅读 · 7 评论 -
Android Framework源码解读 - Audio - SoundTrigger(1) - AIDL
SoundTrigger语音识别架构是Android5.0才引入,在Android7.0逐步完善。官方介绍:https://source.android.google.cn/devices/audio/sound-triggerThe Sound Trigger feature provides apps with the ability to listen for certain acoustic events, like hotwords, in a low-power and privacy-原创 2021-05-30 18:53:14 · 5032 阅读 · 2 评论 -
Android Framework源码解读 - Audio - AudioRecord
AudioRecord is a audio client for receiving data from an audio input device such as a microphone.应用层调用AudioRecord的主要APIs,主要有getMinBufferSize()、new AudioRecord()、startRecording()、getRecordingState()、read()、getState()、stop()、 release(),大致调用步骤如下:静态方法get原创 2021-05-23 18:27:35 · 890 阅读 · 0 评论 -
Android Framework源码解读 - Audio - audioserver启动流程(3)
在上一篇Android Framework源码解读 - Audio - audioserver启动流程(2) - HIDL中已经基本上理清了audioserver启动以及它和另外两个关键进程android.hardware.audio@2.0-service, hwservicemanager的交互关系。其中audioserver启动时创建了三个关键service,前两篇已经涉及到了AudioFlinger service和AudioPolicyService, 而SoundTriggerHwSer..原创 2021-05-23 10:36:49 · 1342 阅读 · 3 评论 -
Android Framework源码解读 - Audio - audioserver启动流程(2) - HIDL
图片来自http://gityuan.com/2019/03/20/android_future/Android 8.0系统(Android Oreo简称 Android O),Google开展了计划(Project Treble),为了解决Android 系统的碎片化问题和提高系统更新的效率,减少framework 和HAL 的耦合性,进而引出了HIDL 的概念。Treble引入后,新增了一个vendor.img,即原先的system分区,被拆分为了system分区和vendor分区,SOC及..原创 2021-05-22 17:53:43 · 3249 阅读 · 4 评论 -
Android Framework源码解读 - Audio - audioserver启动流程(1)
main_audioserver.cpp源码 ./frameworks/av/media/audioserver/main_audioserver.cpp 对应进程 audioserver, 对应的启动rc文件在 /etc/init/audioserver.rc# cat audioserver.rc service audioserver /system/bin/audioserver class main user audioserver group audio c.原创 2021-05-22 16:44:21 · 1460 阅读 · 1 评论 -
Android Framework源码解读 - Audio - 序
https://source.android.google.cn/devices/audioMedia Server: The media server contains audio services, which are the actual code that interacts with your HAL implementations. The media server is located in /frameworks/av/services/audioflinger. Client...原创 2021-05-22 16:15:39 · 651 阅读 · 1 评论