Android 使用 mediaPlayer 播放 m3u 流

标签 android media-player

我正在构建一个从网络播放流式 m3u 文件的应用程序。

我正在使用 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()之前调用mediaPlayer.setOnPreparedListener(this)。这假设您的 Activity 或其他任何内容已经实现了 OnPreparedListener 接口(interface)。然后您需要一个名为 onPrepared() 的回调,您可以在其中调用 mediaPlayer.start()。

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

关于Android 使用 mediaPlayer 播放 m3u 流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6730702/

相关文章:

android - fragment 和 ImageView 中的 setOnItemClickListener

android - 如何最好使用 xml 为 tabwidget 按钮设置禁用状态的样式

java - 是否可以在 Java 服务器中添加 PHP 脚本?

android - 为 QuickBlox 开发 Flutter 插件与使用 native 插件开发 native 应用程序

windows-phone-7 - MediaElement 破坏 WP7 中的音频播客 (MediaPlayer)

java - 通过程序动态启用或禁用特定 EditText View 的验证

java - 媒体播放器错误(-19 0)不适用于release()

java - Android——多个同步流音频

java - 通过同时点击不同的按钮来播放和停止声音

c# - Unity从文件夹加载媒体并显示在RawImage上