【问题标题】:MediaPlayer stops and restartsMediaPlayer 停止并重新启动
【发布时间】:2012-03-02 17:05:41
【问题描述】:

我收到一个奇怪的错误。 我使用 MediaPlayer 播放媒体流(如shoutcast 或icecast)。
有时突然在播放流(完全随机)时发生错误,流停止并重新启动。
OnErrorListener 不会被触发!

Logcat:

03-02 17:50:36.274: W/MediaPlayer(16799): info/warning (702, 0)
03-02 17:50:36.274: I/MediaPlayer(16799): Info (702,0)

或者像这样:

03-02 17:50:14.250: W/MediaPlayer(16799): info/warning (703, 0)
03-02 17:50:14.250: W/MediaPlayer(16799): info/warning (701, 0)
03-02 17:50:14.250: I/MediaPlayer(16799): Info (703,0)
03-02 17:50:14.250: I/MediaPlayer(16799): Info (701,0)

03-02 18:03:33.906: W/MediaPlayer(16799): info/warning (703, 126) <br>
03-02 18:03:33.906: I/MediaPlayer(16799): Info (703,126)

对此有什么想法吗?

编辑:

啊。还有一个信息。 701 表示 MEDIA_INFO_BUFFERING_START702 表示 MEDIA_INFO_BUFFERING_END。 如果我增加缓冲区大小,我想我可以解决这些问题吗?

编辑:但是等等。 BufferingSize 被烘焙到系统中。该死的。 :)

【问题讨论】:

  • OnInfoListener 确实会触发信息和警告。

标签: java android exception media-player


【解决方案1】:

正如您所写,正在缓冲...

抱歉,没有其他建议。

【讨论】:

    【解决方案2】:

    它在你写的时候正在缓冲——我唯一想补充的是,虽然它停止或启动很烦人,但这些信息对你的用户非常有用。您可能想用 Toast(或 Crouton!)更新他或指示某种缓冲状态,以便他们不会责怪您的应用程序(他们通常会!)或者让他们知道这可能是他们的连接责任- 在这种情况下连接到 WIFI 会有所帮助。

    【讨论】:

      【解决方案3】:

      我遇到了同样的问题,但仅在使用特定蓝牙耳机且手机屏幕关闭时才会出现。发生它的应用是 Just Playlists,这是我开发和支持的音乐播放器。

      仅在通过 Wi-Fi 而不是通过蜂窝网络进行流式传输时发生。通过进入 Android 的高级 Wi-Fi 设置并禁用“Wi-Fi 优化”选项,我能够解决这个问题,该选项声称“在 Wi-Fi 开启时最大限度地减少电池使用量”。我已经使用高级选项来保持 Wi-Fi 始终开启。

      耳机品牌和型号为 Phiaton PS 210 BTNC。他们支持蓝牙 3.0,这让我怀疑这是问题的一部分。我在 Android 4.1.x 和 4.2.2 下都遇到过这个问题。以下是问题发生然后恢复时的日志摘录:

      I/AwesomePlayer(  131): cache is running low (1.90 secs) , pausing.
      W/MediaPlayer( 3028): info/warning (703, 0)
      W/MediaPlayer( 3028): info/warning (701, 0)
      I/MediaPlayer( 3028): Info (703,0)
      I/MediaPlayer( 3028): Info (701,0)
      I/audio_a2dp_hw(  131): suspend_audio_datapath: state 1
      E/bt-btif (  889): bta_av_str_stopped:audio_open_cnt=1, p_data 586a58f8
      W/bt-btif (  889): bta_dm_rm_cback:1, status:6
      W/bt-btif (  889): bta_dm_rm_cback:1, status:6
      I/BluetoothA2dpServiceJni(  889): bta2dp_audio_state_callback
      I/audio_a2dp_hw(  131): skt_disconnect: fd 46
      D/A2dpStateMachine(  889): Connected process message: 101
      D/A2dpStateMachine(  889): A2DP Playing state : device: 00:18:09:06:08:0C State:10->11
      I/AwesomePlayer(  131): cache has filled up (6.00 secs), resuming.
      

      我还没有看到禁用 Wi-Fi 优化后对电池使用的影响。

      【讨论】:

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