Audio 是 Android 系统中比较重要的一个模块,在 Android 中负责音频方面的数据流传输和控制功能,也负责音频设备的管理。
一、系统架构
Android 音频架构定义了音频功能的实现方式,并指出实现中所涉及的相关源代码。

应用框架
应用框架包含应用代码,该代码使用 android.media API 与音频硬件进行交互。在内部,此代码会调用相应的 JNI 粘合类来访问与音频硬件互动的原生代码。
JNI
与 android.media 关联的 JNI 代码会调用较低级别的原生代码来访问音频硬件。JNI 位于 frameworks/base/core/jni/ 和 frameworks/base/media/jni 中。
原生框架
本文详细介绍了Android音频系统,从系统架构、属性定义到关键组件,包括AudioPolicy、AudioFlinger和AudioTrack。音频架构涉及应用框架、JNI、原生框架等层次,AudioFlinger作为核心,管理音频流并处理数据。AudioPolicy控制音频路由,AudioTrack则负责音频数据的发送。文章还讨论了播放模式和低延迟音频实现,如AAudio和OpenSL ES。
订阅专栏 解锁全文
3371

被折叠的 条评论
为什么被折叠?



