1.SoundPool概述
SoundPool类管理和播放低延迟音频资源。SoundPool还管理一次渲染的音频流的数量,构造SoundPool对象时,maxStreams参数为从单个SoundPool播放的最大流数。
设置非零循环值,可以循环播放声音。值为-1声音永远循环,这种情况,应用程序必须显式调用stop()函数来停止声音,任何其他非零值都会重复播放指定次数。
播放速率也可以更改,播放速率为1.0时,声音将以原始频率播放。
2.SoundPool
源码路径:
frameworks/base/media/java/android/media/SoundPool.java
源码接口:
// Load the sound from the specified APK resource
public int load(Context context, int resId, int priority)
// Play a sound from a sound ID
public final int play(int soundID, float leftVolume, float rightVolume,int priority, int loop, float rate)
// Pause a playback stream
public native final void pause(int streamID);
// Stop a playback stream
public native final void stop(int streamID);
// Set stream volume
public final void setVolume(int streamID, float leftVolume, float rightVolume)
以上,SoundPool播放模式简要说明,可以参照源码进行查看。
可以参考示例进行调试:android 音频播放器,(一)SoundPool音频播放实例-CSDN博客