![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
安卓音频
飞翔到天边
受了伤,一笑而过…
展开
-
Android音频系统之AudioPolicyService
1.1 AudioPolicy Service 在AudioFlinger小节,我们反复强调它只是策略的执行者,而AudioPolicyService则是策略的制定者。这种分离方式有效地降低了整个系统的藕合性,而且为各个模块独立扩展功能提供了保障。 1.1.1 AudioPolicyService概述 汉语中有很多与策略有关联的俗语,比如“因地制宜”、“具体问题具体分析”转载 2015-06-01 15:30:04 · 1230 阅读 · 0 评论 -
Android Audio代码分析1 - AudioTrack使用示例
转自: http://blog.csdn.net/njuitjf/article/details/6834746 计划从接口的使用,开始分析Audio相关源码。 此处的代码为Android中自带的测试代码。 由于本人惰性,不打算将所有函数全部细说。主要函数,会拿来细细品味;本人认为非主要的函数,将一笔带过。 主要非主要,是从本人当前项目的需要来看的。 **************转载 2015-06-03 14:15:51 · 1474 阅读 · 0 评论 -
【译文】 Android媒体相关开发应用程序接口
翻译自:http://developer.android.com/guide/topics/media/index.html Media Android框架支持各种普通media类型的编解码,因此你可以很容易地把音频,视频和图片整合到你的应用程序中。通过使用MediaPlayer的接 口,你可以播放各种音视频文件,包括应用程序中的资源(原生资源),文件系统中的独立转载 2015-06-03 14:11:42 · 559 阅读 · 0 评论 -
AudioSystem类
转自:http://blog.csdn.net/njuitjf/article/details/6679799 1、白手起家,没有父类。 2、定义了一堆枚举,包括stream类型,音频格式,音频channel等。 3、函数get_audio_flinger中,会获取AudioFlinger,然后创建一个AudioFlingerClient对象,并调用AudioFlinger的转载 2015-06-03 14:13:30 · 1102 阅读 · 0 评论 -
Android深入浅出之Audio 第一部分 AudioTrack分析
Android深入浅出之Audio 第一部分 AudioTrack分析 一 目的 本文的目的是通过从Audio系统来分析Android的代码,包括Android自定义的那套机制和一些常见类的使用,比如Thread,MemoryBase等。 分析的流程是: l 先从API层对应的某个类开始,用户层先要有一个简单的使用流程。 l 根据这个流程,一步步进入到J转载 2015-06-01 15:52:09 · 1227 阅读 · 0 评论 -
Android深入浅出之Audio 第二部分 AudioFlinger分析
一 目的 本文承接Audio第一部分的AudioTrack,通过AudioTrack作为AF(AudioFlinger)的客户端,来看看AF是如何完成工作的。 在AT(AudioTrack)中,我们涉及到的都是流程方面的事务,而不是系统Audio策略上的内容。WHY?因为AT是AF的客户端,而AF是Android系统中Audio管理的中枢。AT我们分析的是按流程方法,那么以AT为切入点的话,A转载 2015-06-01 15:47:52 · 994 阅读 · 0 评论 -
Android Audio System 之二:AudioFlinger
引言 AudioFlinger是Android音频系统的两大服务之一,另一个服务是AudioPolicyService,这两大服务都在系统启动时有MediaSever加载,加载的代码位于:frameworks/base/media/mediaserver/main_mediaserver.cpp。AudioPolicyService的相关内容请参考另一编文章:《Android Aud转载 2015-06-01 15:43:02 · 921 阅读 · 0 评论 -
ndroid Audio System 之三: AudioPolicyService 和 AudioPolicyManager
引言 AudioPolicyService是Android音频系统的两大服务之一,另一个服务是AudioFlinger,这两大服务都在系统启动时有MediaSever加载,加载的代码位于:frameworks/base/media/mediaserver/main_mediaserver.cpp。AudioFlinger主要负责管理音频数据处理以及和硬件抽象层相关的工作。本文主要介绍转载 2015-06-01 15:39:39 · 927 阅读 · 0 评论 -
Android Audio System 之一:AudioTrack如何与AudioFlinger交换音频数据
引子 Android Framework的音频子系统中,每一个音频流对应着一个AudioTrack类的一个实例,每个AudioTrack会在创建时注册到AudioFlinger中,由AudioFlinger把所有的AudioTrack进行混合(Mixer),然后输送到AudioHardware中进行播放,目前Android的Froyo版本设定了同时最多可以创建32个音频流,也就是说,Mixe转载 2015-06-01 15:36:52 · 1170 阅读 · 0 评论 -
安卓音频简析
Android音频分析 1 安卓音频系统框架 Ø Multimedia framework: 多媒体框架负责封装了播放/录音类、连接安卓音频解码库进行音频软件解码以及连接高通OpenMaxIL接口。上层APP直接调用Multimedia framework的接口来进行音频的播放和录音。 Ø AudioService 注册安卓广播事件,获取广播事件,如蓝牙原创 2015-06-10 15:26:22 · 1514 阅读 · 0 评论