一、AudioPolicyService启动过程分析 1. 播放声音,声音从哪个设备播放出来是由audio policy决定的。 2.在每一个声卡,对应一个output,一个output对应系统中都有一个线程与其对应。 3.对硬件的访问操作是由AudioFlinger来完成的 4.AudioPoli ...
分类:
移动开发 时间:
2019-05-27 19:31:39
阅读次数:
403
1 分析思路 1. Thread如何创建? AudioPolicyService是策略的制定者,AudioFlinger是策略的执行者, 所以: AudioPolicyService根据配置文件使唤AudioFlinger来创建Thread 2. Thread对应output, output对应哪些 ...
分类:
移动开发 时间:
2018-09-24 17:48:34
阅读次数:
406
AudioFlinger为上层提供访问和管理音频的接口,同时通过hal来管理音频设备。
AudioFlinger服务的启动:
audiopolicyservice是策略的制定者,如什么时候打开音频接口...
分类:
移动开发 时间:
2017-11-16 14:29:48
阅读次数:
247
让Android融入我的生活! 写Android一段时间了,每次看到网上一些大牛的博客。分析Android底层Zygote启动、Activity启动、View的绘制过程、SurfaceFlinger、AudioFlinger、Binder IPC、内存管理、Dalvik等等各种深入的东西,都很敬仰, ...
分类:
移动开发 时间:
2017-07-24 19:41:01
阅读次数:
190
由于《深入理解Android 卷一》和《深入理解Android卷二》不再出版,而知识的传播不应该由于纸质媒介的问题而中断,所以我将在CSDN博客中全文转发这两本书的全部内容。第7章 深入理解Audio系统本章主要内容· 具体分析AudioTrack。· 具体分析AudioFlinger。· 具体分析 ...
分类:
移动开发 时间:
2017-05-20 15:29:21
阅读次数:
391
http://blog.csdn.net/u014310046/article/details/54133688 本文将从主mic录音到播放流程来进行学习mtk audio系统架构。 在AudioFlinger::RecordThread::threadLoop中会调用mInput->stream- ...
分类:
移动开发 时间:
2017-05-19 18:36:32
阅读次数:
506
SoundPool的用法就不再提了,网上资料多,就说说在实际应用中可能会遇到的一些奇葩的问题,这些问题应该是和底层实现上有关系。 1、AudioFlinger could not create track, status: -12 SoundPool即音效池,在创建的时候 maxStream这个参数 ...
分类:
其他好文 时间:
2017-03-28 00:30:56
阅读次数:
992
http://blog.csdn.net/xuesen_lin/article/details/8805068 1.1 AudioFlinger 在上面的框架图中,我们可以看到AudioFlinger(下面简称AF)是整个音频系统的核心与难点。作为Android系统中的音频中枢,它同时也是一个系统服 ...
分类:
移动开发 时间:
2016-11-18 11:37:55
阅读次数:
218
http://blog.csdn.net/xuesen_lin/article/details/8805108 1.1 AudioPolicy Service 在AudioFlinger小节,我们反复强调它只是策略的执行者,而AudioPolicyService则是策略的制定者。这种分离方式有效地降 ...
分类:
移动开发 时间:
2016-11-18 11:37:21
阅读次数:
304
M之前版本在一个进程中创建media相关所有服务av/media/mediaserver/main_mediaserver.cppsp<IServiceManager>sm=defaultServiceManager();
ALOGI("ServiceManager:%p",sm.get());
AudioFlinger::instantiate();
MediaPlayerService::instantiate();
ResourceManagerServi..
分类:
其他好文 时间:
2016-10-25 19:48:44
阅读次数:
186