Audioservice、Audiomanager和Audiosystem
JAVA:
Audioservice、Audiomanager和Audiosystem
AudioService:
继承自IAudioService.Stub,IAudioService.Stub类很明显是通过IAudioService.aidl自动生成的。AudioService位于Bn端。
AudioManager:
AudioManager拥有AudioService的Bp端,是AudioService在客户端的一个代理。
几乎所有客户端对AudioManager进行的请求,最终都会交由AudioService实现。
AudioSystem:
AudioService的功能实现依赖AudioSystem类,AudioSystem无法实例化,它是java层到native层的代理。
AudioService将通过它与AudioPolicyService以及AudioFlinger进行交互
C++:
AudioFlinger,AudioPolicyServices和MediaPolicyService
AudioFlinger与AudioPolicyServices:
Android音频系统的两大服务,一个服务是AudioPolicyService,另一个服务是audioflinger。
这两大服务都在系统启动时有MediaSever加载,加载的代码位于:frameworks/base/media/mediaserver/main_mediaserver.cpp
AudioFinger是Audio系统的工作引擎,管理者系统中输入输出音频流,并承担音频数据混音,以及读写Audio硬件等工作以实现数据的输入输出功能。
AudioPolicyService是Audio系统策
Audioservice、Audiomanager和Audiosystem相关推荐
- 安卓声音管理器AudioManager的使用
AudioManager是安卓sdk提供的声音管理接口,可以通过此接口管理手机声音模式声音.震动.静音等模式切换,也可以调节音量大小. 首先要获取声音管理器: AudioManager audioSe ...
- android通话流程浅析RIL层
拨出电话流程: 1 在系统源码这个路径下/packages/apps/Phone/src/com/android/phone/DialtactsActivity.java contacts的andro ...
- 转:Andriod Phone模块相关
http://hi.baidu.com/anly%5Fjun/blog/index/0 Andriod Phone模块相关(总览) 2010-01-30 13:50 1.从java端发送at命令的处理 ...
- <一>Android Audio音频框架
目录 1.0 设备驱动 2.0 android hal层 3.0 选择设备的暗箱策略AudioPolicy 4.0 软件层面的混音,AudioFlinger 5.0 完整的对外接口 AudioS ...
- Android audio介绍
转自 https://www.cnblogs.com/hzl6255/p/12173595.html 阅读目录 1. 架构 2. Audio HAL 3. Native Audio 4. Java A ...
- Android IBinder的linkToDeath介绍及情景模拟
最近查看Framework源码的时候,读到了AudioService处理音量的流程,在这里碰到了IBinder的linkToDeath()这个知识点,比较感兴趣,所以记录下来,并自己写demo尝试了一 ...
- USB Audio accessory设备
这个手机做device, audio accessory是Host. 以高通msm8x26(USB2.0) Lolliop android 5.0/5.1为例 1 代码 • Kernel kernel ...
- 项目ITP(二) 二维码 拿起你的手机装一装,扫一扫 【每日一搏】
正文 上文,我们讲了 二维码生成 解码 这次我们就用 android 来扫一下,实现android 扫二维码. 下载扫一扫 包结构-介绍 #com.zxing.xx 这是 zxing 库提供的 #Ba ...
- Android的系统服务一览
System_Server进程 运行在system server进程中的服务比较多,这是整个android框架的基础 Native服务 SurfaceFlinger 这是framebuffer合成的服 ...
最新文章
- iOS端Socket连接、发送数据(一)
- 浅谈先验分布和后验分布
- python怎么读write_Python中怎么读写文件
- mysql 事务涉及锁吗_MySQL-锁机制和事务
- hive建表映射到hbase
- eclipse jsp没有提示_JSP+Struts2+JDBC+Mysql实现的校园宿舍管理系统
- SAP UI5 Input字段live change事件的一个例子
- 从平台架构到大屏可视化,一文读懂金融服务行业的数据分析
- Linux基本操作——Linux磁盘基本概念
- bi工具选型_数据分析工具:选合适了,分析也能事半功倍
- 红帽linux 竞争对手,为什么红帽不把CentOS当作竞争对手?
- 腰椎患者多运动好,还是多休息好?
- 430.扁平化多级双向链表
- 账号注册邮箱激活设计
- 非广延统计分布结构化分析的本征坐标法应用
- 苹果cmsv10模板全局响应式自适应模板电影网站模板源码
- python如何打开excel表格_python怎么读取excel表格
- 调查计算机对运算能力的影响,计算器对计算能力的影响
- 用exec()函数执行新程序
- 特征缩放(Feature Scaling)
热门文章
- time gmtime localtime strftime 时间函数
- 英语作文计算机国际会议开幕词,学术会议开幕词英文.doc
- android 颜色 数组,在Android中声明维数,颜色,资源ID或其他非标准数据类型的数组?...
- CCF 模拟题,公共钥匙盒
- js实现文件下载并重命名
- 网页转pdf乱码问题,楷体部分出乱码
- js关闭当前网页的代码
- Dweb3.0的核心基础设施?NA(Nirvana)Chain加速开凿链上域名流量通道
- 基于Matlab的BiLSTM实现
- 2023 华为 Datacom-HCIE 真题题库 08/12--含解析