【问题标题】:Android MediaPlayer Clipping on Restart after seekTo在 seekTo 后重新启动时 Android MediaPlayer 剪辑
【发布时间】:2011-05-12 23:53:48
【问题描述】:

我正在使用 Android MediaPlayer 从本地源播放。除了重新启动声音时出现一个错误之外,它运行良好。

public void create() {
   FileInputStream in = mApp.openFileInput(mMusicFile);
   mp = new MediaPlayer();
   mp.setDataSource(in.getFD());
   mp.prepare();
   mp.setLooping(true);
}

public void play() {
   mp.start();
}

public void stop() {
   mp.stop();
   mp.prepare();
   mp.seekTo(0);
}

如果我调用 stop(),然后大约一秒钟后调用 play(),我会听到一个简短的声音片段,它已停止,然后声音重新开始。

【问题讨论】:

  • 为什么要在 stop() 方法中调用 mp.prepare()?
  • 所以在我调用 stop() 之后,它将处于与调用 play() 之前相同的状态

标签: java android media-player


【解决方案1】:

我相信这是 Android 2.2 Froyo 中的一个已知错误。规定的解决方法是删除 MediaPlayer 并制作一个新的或淡入播放。

在查找后内部缓冲区不会被刷新。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多