ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
前面,关于AudioTrack和AudioFlinger的分析,主要是针对Audio系统中数据传输方面的,它们是Audio系统中不可或缺的部分。但Audio系统仅限于此吗?如果是这样,那么AudioPolicyService又是怎么一回事?另外,还要问几个实际问题:插入耳机后,声音是怎么从最开始的听筒输出变成从耳机输出的呢?音量又是怎么控制的?MixerThread的来历和AudioPolicy有怎样的关系?这些都与后面要分析的AudioPolicyService有关。 顾名思义,AudioPolicyService,是和Audio策略有关的,依本人对AudioPolicy的理解,策略比流程更要复杂和难懂,对APS与对AT及AF的分析不同,因此对其不宜采用固定流程分析法,而应从下面三个步骤入手: - 在分析AudioPolicyService的创建过程中,会讲解一些重要的概念和定义。 - 重新回到AudioTrack的分析流程,介绍其中和AudioPolicy有关的内容。 - 以一个耳机插入事件为实例,讲解AudioPolicy的处理。