2011-07-18 129 views
1

我正在构建一个从网上播放流媒体m3u文件的应用程序。Android使用媒体播放流m3uPlayer

我正在使用mediaPlayer类,它的工作原理。 代码如下:

String test_path = "http://cast.idvps.com:8000/djwirya.m3u"; 
     try { 
      mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); 
      mediaPlayer.setDataSource(test_path); 
      mediaPlayer.prepareAsync(); 
     } catch (IOException e) {Log.e("Error", "No Stream");} 
     mediaPlayer.start(); 

它工作的很完美。但是,在我再次编译后,没有声音。

请帮助....在prepareAsync前THX

+0

你能否提供任何异常或堆栈跟踪? –

+0

我收到此错误代码,同时buffering.07-19 17:15:08.059:错误/ MediaPlayer(1468):启动状态4调用 07-19 17:15:08.059:错误/ MediaPlayer(1468):错误(-38,0) 07-19 17:15:08.069:错误/ MediaPlayer(1468):错误(-38,0) 尽管它保持缓冲.....什么是(-38,8)错误? ? – Jason

+0

然后缓冲停止在72 .... – Jason

回答

2

你需要调用mediaPlayer.setOnPreparedListener(本)()。这假定你的活动或其他任何已经实现了OnPreparedListener接口。然后,您需要一个名为onPrepared()的回调函数,您可以在其中调用mediaPlayer.start()。

您需要做的另一件事是确保您的应用程序结束时在某处调用mediaPlayer.release()。 onPause()的内部可能是一个好主意。

2

这是一个解决方案。 对不起,我是法国人,但我认为这应该与谷歌翻译好。

Link for a solution