问题描述
由于某种原因,当调用onCompletionListener时,我的速度参数设置为0,但是可以检索到音高。
如何在onCompletion中获取速度参数?
OnCompletion侦听器
@Override
public void onCompletion(MediaPlayer mp) {
Log.d(TAG,"OnCompletion called!");
if (isRepeat) {
if(!songList.isEmpty()) {
activeSong = songList.get(songIndex);
mp.reset();
try {
mp.setDataSource(this,activeSong.getData());
mp.prepare();
mp.start();
} catch (Exception e) {
Log.e(TAG,"ERROR SETTING DATA SOURCE",e);
Toast.makeText(this,"Can't play song! Possible cause: Unsupported file format",Toast.LENGTH_SHORT).show();
}
}
} else if (isShuffle) {
Random random = new Random();
songIndex = random.nextInt((songList.size() - 1) + 1);
playSong();
} else if (songIndex < songList.size() - 1) {
PlaybackParams params = mp.getPlaybackParams();
Log.d(TAG,"onCompletion params: pitch= "+ params.getPitch() + " speed= " +params.getSpeed());
nextSong();
} else {
songIndex = 0;
playSong();
}
}
Logcat输出
params: pitch= 1.2829928 speed= 1.2333759
onCompletion params: pitch= 1.2829928 speed= 0.0
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)