一,简介

  • VolumeShaper可以实现在音频应用的淡入,淡出,淡入淡出,淡入淡出以及其他短暂的自动音量转换。
  • VolumeShaper进行音量控制通过VolumeShaper.Configuration实现。
  • VolumeShaper类是在8.0的Android(API级26)和后可用。

二,创建VolumeShaper配置

参数:

参数 描述
duration(持续时间) 指定该声音的持续效果
interpolator type(插值方式)

指定声音变化的插值方式

  • VolumeShaper.Configuration.INTERPOLATOR_TYPE_STEP(分段曲线)
  • VolumeShaper.Configuration.INTERPOLATOR_TYPE_LINEAR(线性)
  • VolumeShaper.Configuration.INTERPOLATOR_TYPE_CUBIC(三次曲线)
  • VolumeShaper.Configuration.INTERPOLATOR_TYPE_CUBIC_MONOTONIC(单调三次曲线)
volume curve(音量曲线)

指定音量变化的曲线,需要两个长度相同的数组

  • 第一个数组表示各个时间点
  • 第二个数组表示时间点对应的音量
 VolumeShaper.Configuration config =                new VolumeShaper.Configuration.Builder()                        .setDuration(5000*20)                        .setCurve(new float[] {0f,0.2f ,0.4f ,0.6f ,0.8f ,1f}, new float[] {0f, 1f,0f,1f,0f,1f})                        .setInterpolatorType(VolumeShaper.Configuration.INTERPOLATOR_TYPE_LINEAR)                        .build();

三,创建VolumeShaper

MediaPlayer mediaPlayer = MediaPlayer.create(this,R.raw.l);VolumeShaper volumeShaper = mediaPlayer.createVolumeShaper(config);//添加配置

四,启动VolumeShaper

mediaPlayer.start();volumeShaper.apply(VolumeShaper.Operation.PLAY);

 

 

更多相关文章

  1. Android利用canvas画各种图形(点、直线、弧、圆、椭圆、文字、矩
  2. Android音量seekbar制作
  3. Android NDK:JNI 数组的输入输出
  4. android byte[]数组,bitmap,drawable之间的相互转换
  5. Android设置系统音量范围0-100,步进值5
  6. Android audioManager解决MediaPlayer AudioTrack 调节音量问题
  7. Android 使用 AudioManager 类控制音量
  8. 在Android中如何绘制光滑曲线(二)
  9. 客户定制 音量控制 Preference

随机推荐

  1. Android(安卓)SDK是什么
  2. Android(安卓)常用权限和使用说明
  3. android 精确定位
  4. Android(安卓)Studio 初次见面(AVD加速)
  5. Android(安卓)- 简单的查看APP启动时间
  6. Android(安卓)Dialog 对话框详解及示例代
  7. Android8.0 Oreo新特性
  8. Android(安卓)View的onTouch、onClick和o
  9. Android中保存图片到本地功能实现
  10. Android的一个自定义的动态添加Dialog类