使用CountDownTimer进行Android Media Player口吃

时间:2015-07-02 02:38:41

标签: java android android-mediaplayer countdowntimer

我试图制作应用程序来教别人如何计算音乐。媒体播放器初始化为持续A音符的30秒声音片段。我正在使用倒数计时器告诉我的媒体播放器何时暂停和播放。下面的代码导致音频的第一个和最后一个音频断断续续。

MediaPlayer myMediaPlayer = MediaPlayer.create(MusicCounting.this, R.raw.a_note);
CountDownTimer time = new CountDownTimer(4000,500) {
    @Override
    public void onTick(long millisUntilFinished) {
        if(myMediaPlayer.isPlaying()) {
            myMediaPlayer.pause();
        } else {
            myMediaPlayer.start();
        }
    }

    @Override
    public void onFinish() {
        myMediaPlayer.pause();
        myMediaPlayer.seekTo(0);
    }
};

time.start();

此代码用于四分音符,我的八分音符代码看起来完全相同,但倒数计时器的第二个参数是250.任何建议都将非常感谢。谢谢:)

1 个答案:

答案 0 :(得分:0)

有很多关于Android MediaPlayer口吃的报告,有各种方法可以尝试修复它。这似乎是最相关的问题:

但是,AudioTrack可能更适合您只想播放特定音符的特定情况。参见: