Android多媒体-音频-框架流程图
一个应用涉及到的API层面包括APP层,FrameWork层,Native层,HAL层,Driver层。AudioService进程,使用Native层的API:AudioFlinger,AudioPolicyService。AudioHAL进程,使用HAL层的API:Device,StreamOut,StreamIn。AudioFlinger:音频策略的执行者,负责输入输出流设备的管理及音频流数
audio框架流程图


Audio 是整个 Android 平台非常重要的一个组成部分,负责音频数据的采集和输出、音频流的控制、音频设备的管理、音量调节等,主要包括如下部分:
Audio Application Framework:音频应用框架
AudioTrack:负责回放数据的输出,属 Android 应用框架 API 类
AudioRecord:负责录音数据的采集,属 Android 应用框架 API 类
AudioSystem: 负责音频事务的综合管理,属 Android 应用框架 API 类
Audio Native Framework:音频本地框架
AudioTrack:负责回放数据的输出,属 Android 本地框架 API 类
AudioRecord:负责录音数据的采集,属 Android 本地框架 API 类
AudioSystem: 负责音频事务的综合管理,属 Android 本地框架 API 类
Audio Services:音频服务
AudioPolicyService:音频策略的制定者,负责音频设备切换的策略抉择、音量调节策略等
AudioFlinger:音频策略的执行者,负责输入输出流设备的管理及音频流数据的处理传输
Audio HAL:音频硬件抽象层,负责与音频硬件设备的交互,由 AudioFlinger 直接调用
与 Audio 强相关的有 MultiMedia,MultiMedia 负责音视频的编解码,
MultiMedia 将解码后的数据通过 AudioTrack 输出,而 AudioRecord 采集的录音数据交由 MultiMedia 进行编码。
音频框架是一个较为复杂的系统,涉及到较多的模块
一个应用涉及到的API层面包括APP层,FrameWork层,Native层,HAL层,Driver层。一个应用运行在系统的4个进程中:
APP应用本身进程,使用应用层API:AudioManager,AudioTrack,AudioRecord;
SystemServer进程,使用框架层的API:AudioService
AudioService进程,使用Native层的API:AudioFlinger,AudioPolicyService
AudioHAL进程,使用HAL层的API:Device,StreamOut,StreamIn

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)