一、疑问
1.Android系统从读取音频文件到声音从扬声器输出,经历了什么过程?
2.通话过程中,调节音量,经历了什么过程?
2.通过什么控制音频是通过Speaker输出,还是耳塞输出?
3.音量是由什么控制的?
4.若扩增音频设备需要处理哪些工作?
二、问题讨论
(1)Android系统从读取音频文件到声音从扬声器输出,经历了什么过程?
Audio系统主要提供两个方面的功能:放音(Play)和录音(Recorder)。
以放音为例,从读取音频文件到声音从设备输出会经历以下阶段:
应用程序Media Player App 启动;调用Java层的android.media.AudioTrack类,AudioTrack通过JNI调用libmdia库提供的接口实现;AndioFinger实现了libmdia库的接口 ;往下就是一个硬件抽象层,它可以基于ALSA和SSO音频驱动实现声音播放。
AudioSystem负责Audio系统综合管理功能,AudioTrack负责播放功能,而AudioRecorder负责录音功能;