在Android2.3中增加了对音频混响的支持,这些API包含在android.media.audiofx包中。 

  一、概述

  AudioEffect是android audio framework(android 音频框架)提供的音频效果控制的基类。开发者不能直接使用此类,应该使用它的派生类。 下面列出它的派生类。 

    Equalizer
    Virtualizer
    BassBoost
    PresetReverb
    EnvironmentalReverb

  当创建AudioEffect时,如果音频效果应用到一个具体的AudioTrack和MediaPlayer的实例,应用程序必须指定该实例的音频session ID,如果要应用Global音频输出混响的效果必须制定Session 0。

  要创建音频输出混响(音频 Session 0)要求要有 MODIFY_AUDIO_SETTINGS权限。

  如果要创建的效果在audio framework不存在,那么直接创建该效果,如果已经存在那么直接使用此效果。如果优先级高的对象要在低级别的对象使用该效果时,那么控制将转移到优先级高的对象上,否则继续停留在此对象上。在这种情况下,新的申请将被监听器通知。

  二、嵌套类

  1.AudioEffect.Descriptor:效果描述符包含在音频框架内实现某种特定的效果的信息。
  2.AudioEffect.OnControlStatusChangeListener:此接口定义了当应用程序的音频效果的控制状态改变时由AudioEffect调用的方法。

  3.AudioEffect.OnEnableStatusChangeListener:此接口定义了当应用程序的音频效果的启用状态改变时由AudioEffect调用的方法。

  三、常量

String ACTION_CLOSE_AUDIO_EFFECT_CONTROL_SESSION 关闭音频效果
String ACTION_DISPLAY_AUDIO_EFFECT_CONTROL_PANEL 启动一个音频效果控制面板UI。
String ACTION_OPEN_AUDIO_EFFECT_CONTROL_SESSION 打开音频效果。
int ALREADY_EXISTS 内部操作状态。
int CONTENT_TYPE_GAME 当播放内容的类型是游戏音频时EXTRA_CONTENT_TYPE的值。
int CONTENT_TYPE_MOVIE 当播放内容的类型是电影时EXTRA_CONTENT_TYPE的值。
int CONTENT_TYPE_MUSIC 当播放内容的类型是音乐时EXTRA_CONTENT_TYPE的值。
int CONTENT_TYPE_VOICE 当播放内容的类型是话音时EXTRA_CONTENT_TYPE的值。                  
String EFFECT_AUXILIARY Effect connection mode 是auxiliary
String EFFECT_INSERT Effect connection mode 是insert.
int ERROR 指示操作错误。
int ERROR_BAD_VALUE 指示由于错误的参数导致的操作失败。
int ERROR_DEAD_OBJECT 指示由于已关闭的远程对象导致的操作失败。
int ERROR_INVALID_OPERATION 指示由于错误的请求状态导致的操作失败。
int ERROR_NO_INIT 指示由于错误的对象初始化导致的操作失败。
int ERROR_NO_MEMORY 指示由于内存不足导致的操作失败。
String EXTRA_AUDIO_SESSION 包含使用效果的音频会话ID。
String EXTRA_CONTENT_TYPE 指示应用程序播放内容的类型。
String EXTRA_PACKAGE_NAME 包含调用应用程序的包名。
int SUCCESS 操作成功。

  四、公有方法

 

AudioEffect.Descriptor getDescriptor()

获取效果描述符。
boolean getEnabled()

返回效果的启用状态。
int getId()

返回效果的标识符
boolean hasControl()

检查该AudioEffect 对象是否拥有效果引擎的控制。如果有,则返回true。
static Descriptor[] queryEffects()

查询平台上的所有有效的音频效果。
void release()

释放本地AudioEffect资源。
void setControlStatusListener(AudioEffect.OnControlStatusChangeListener listener)

注册音频效果的控制状态监听器.当控制状态改变时AudioEffect发出通知。
void setEnableStatusListener(AudioEffect.OnEnableStatusChangeListener listener)

设置音频效果的启用状态监听器。当启用状态改变时AudioEffect发出通知。
int setEnabled(boolean enabled)

Enable or disable the effect.

AudioEffect中文API的更多相关文章

  1. Android新增API之AudioEffect中文API与应用实例

    在Android2.3中增加了对音频混响的支持,这些API包含在android.media.audiofx包中. 一.概述 AudioEffect是android audio framework(an ...

  2. [转载]fullPage.js中文api 配置参数~

    fullPage.js中文api 配置参数 选项 类型 默认值 说明 verticalCentered 字符串 true 内容是否垂直居中 resize 布尔值 false 字体是否随着窗口缩放而缩放 ...

  3. android SDK下载及中文API地址

    中文API:http://wiki.eoeandroid.com/Android_API_Guides Android Dev Tools官网地址:www.androiddevtools.cn 收集整 ...

  4. JQUERY MOBILE 中文API站 和 官方论坛

    中文API站:http://www.jqmapi.com/api1.2/preview/quickstartquide.html 官方论坛:http://bbs.phonegapcn.com/foru ...

  5. 设置Eclipse中文API提示信息

    准备工作:下载中文API到本机:http://download.java.net/jdk/jdk-api-localizations/jdk-api-zh-cn/publish/1.6.0/html_ ...

  6. [置顶] COcos2d-X 中文API

    本文来自http://blog.csdn.net/runaying ,引用必须注明出处! COcos2d-X 中文API 温馨提醒:使用二维码扫描软件,就可以在手机上访问我的博客啦!另外大家可以访问另 ...

  7. Android 中文 API (40) —— RatingBar

    Android 中文 API (40) —— RatingBar 前言 本章内容是 android.widget.RatingBar,译为"评分条",版本为Android 2.2 ...

  8. (转)jQuery验证控件jquery.validate.js使用说明+中文API

    官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuery plugin: Validation 使用说明 转载 ...

  9. Android 中文API (70) —— BluetoothDevice[蓝牙]

    前言 本章内容是  android.bluetooth.BluetoothDevice,为Android蓝牙部分的章节翻译.蓝牙设备类,代表了蓝牙通讯国足中的远端设备.版本为 Android  2.3 ...

随机推荐

  1. array_column 函数, 以及在PHP5.5之下的替代方法

    array_column 函数, 是能够根据多维数组中共有的一个键值来提取多维数组中属于这个键的值 例如下面的数组: $test = array( 0 => array( 'id' => ...

  2. LOJ#551 Matrix

    本地打表在线AC什么的最喜欢了. 题意 \(\rm Alice\)和\(\rm Bob\)在玩游戏,他们要给一个\(n\times n\)的矩阵打标记.初始时没有任何标记,每一轮\(\rm Bob\) ...

  3. 【刷题】BZOJ 4977 [Lydsy1708月赛]跳伞求生

    Description 小Q最近沉迷于<跳伞求生>游戏.他组建了一支由n名玩家(包括他自己)组成的战队,编号依次为1到n.这个游 戏中,每局游戏开始时,所有玩家都会从飞机上跳伞,选择一个目 ...

  4. BZOJ 1412 [ZJOI2009]狼和羊的故事 | 网络流

    显然是个最小割嘛! 一开始我是这么建图的: 源点向狼连INF 羊向汇点连INF 每两个相邻格子间连双向边,边权为1 然后T成狗 后来我是这么建图的: 源点向狼连INF 羊向汇点连INF 狼和空地向相邻 ...

  5. php编程——验证码的实现(session方法)

    index.PHP(实现输入验证码页面)代码如下: <html><head><title>check code</title></head> ...

  6. mysqldump --master-data=2 --single-transaction

    转载于https://blog.csdn.net/linuxheik/article/details/714808821 mysqldump导出数据主要有两种控制:一种是导出的全过程都加锁 lock- ...

  7. linux sed文本

    sed介绍 sed(stream editor)是一种非交互式的流编辑器,通过多种转换修改流经它的文本.默认情况下,sed不会改变原文件本身,而只是对流经sed命令的文本进行修改,并将修改后的结果打印 ...

  8. 弹指之间 -- Waltz

    CHAPTER 18 华尔兹 Waltz 示例歌曲:白桦林,丁香花

  9. 关于Thinkphp5类命名导致的“模块不存在”问题

    不得不说,thinkphp5就是个十足的坑货, 在thinkphp3.2.3的基础上,函数.用法变了也就忍了, 在mac下写的一个类文件 GetRedisData.php,在mac+mamp环境下是正 ...

  10. Spark记录-Scala类和对象

    本章将介绍如何在Scala编程中使用类和对象.类是对象的蓝图(或叫模板).定义一个类后,可以使用关键字new来创建一个类的对象. 通过对象可以使用定义的类的所有功能. 下面的图通过一个包含成员变量(n ...