如何在android中使用Async任务进行音频流传输

时间:2011-12-06 09:53:18

标签: android android-asynctask http-live-streaming

我们可以通过android中的异步任务流式传输音频文件。如果你做了,给我一个例子。

2 个答案:

答案 0 :(得分:9)

好吧,我已经在这方面挣扎了很长一段时间,因为每个人总是告诉我“只需使用prepareAsync()就行了。

但是,在尝试start()之前,您仍然需要等待足够的缓冲,否则您将收到错误,并且不会发生任何事情。

首先,让你的音乐流媒体课程实现OnPreparedListener。这将用于检查在开始播放之前是否有足够的缓冲。

接下来,使用这段代码启动缓冲并设置监听器:

mediaPlayer.setDataSource(URL here);
mediaPlayer.prepareAsync();
mediaPlayer.setOnPreparedListener(this);

您现在已设置侦听器以检查是否已缓冲足够的内容。再往前走一步

public void onPrepared(MediaPlayer mediaplayer) {
    // We now have buffered enough to be able to play
    mediaPlayer.start();
}

这首歌现在可以开始播放,而不会出现任何错误。

祝你好运!


至于您想要播放音乐并且能够随时停止音乐的事实,如果您计划能够停止所有活动中的音乐,则需要使用Service。有一些关于这方面的教程可以在互联网上找到。

答案 1 :(得分:0)

您可以使用mediaPlayer对象。

mediaPlayer.setDataSource("Your datasource");
mediaPlayer.prepareAsync();

方法prepareAsyc:以异步方式准备播放器以进行播放。

有关详细信息,请参阅:http://developer.android.com/reference/android/media/MediaPlayer.html

希望这会有所帮助......