MODE_STATIC模式AudioTrack的使用方法

使用MODE_STATIC模式的AudioTrack时,遇到了播放不正常的问题。

使用比较短的文件,发现开始几次,声音都没出来,到最后一次,感觉是把前面几次积累的声音一次播放出来了。


后来查了下资料,发现使用MODE_STATIC模式的AudioTrack的方法不对。


正确使用的方法如下:



参考了以下链接:

http://stackoverflow.com/questions/6049221/androids-audiotrack-mode-static-issues


其中的示例代码也展示一下:

public void play(){

    switch (super.getPlayState()) {
    case AudioTrack.PLAYSTATE_PAUSED:
    super.stop();
        super.reloadStaticData();
        super.play();
        break;
    case AudioTrack.PLAYSTATE_PLAYING:
    super.stop();
        super.reloadStaticData();
        super.play();
        break;
    case AudioTrack.PLAYSTATE_STOPPED:
        super.reloadStaticData();
        super.play();
        break;
    }

}


    

posted @ 2012-04-11 17:47  andriod2012  阅读(1252)  评论(0编辑  收藏  举报