MediaPlayer停止并重新启动
我收到一个奇怪的错误。 我使用MediaPlayer播放媒体流(如shoutcast或icecast)。
有时突然在播放流(总随机)发生错误,流停止并重新启动。
OnErrorListener不会被触发!MediaPlayer停止并重新启动
的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_START
和702
表示MEDIA_INFO_BUFFERING_END
。 我想我可以修复这些,如果我增加缓冲区大小?
编辑:但是等等。 BufferingSize被烘焙到系统中。诅咒。 :)
正如你所写,缓冲...
对不起,没有其他的建议。
这是你写的缓冲 - 我想补充的唯一的事情是,虽然它很烦人,它停止或开始,这些信息对你的用户非常有用。你可能想用Toast(或者Crouton!)来更新他,或者指出某种缓冲状态,这样他们就不会责怪你的应用程序(他们无论如何都会这样做),或者让他们知道这可能是他们连接的责任 - 在这种情况下连接到WIFI是一种有助于的行动。
我看到同样的问题,但只有在使用特定的蓝牙耳机并且手机屏幕关闭时才会发生。它发生的应用程序是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进行优化。
OnInfoListener的确触发了信息和警告。 – 2012-03-08 13:50:00