android - 流式传输 .m3u 音频

标签 android audio streaming

我想播放流媒体广播(.m3u 格式),但我不知道该怎么做。

这个例子我是怎么玩的:

final MediaPlayer mp = new MediaPlayer();
        try {
            mp.setDataSource("url.m3u");
        } catch (IllegalArgumentException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IllegalStateException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        try {
            mp.prepare();
            mp.start();
        } catch (IllegalStateException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

此代码无效。 请帮忙。

最佳答案

您必须先下载 M3U 文件。它只是一个文本文件,逐行阅读。每行都有一个链接,您可以在媒体播放器中阅读该链接。

使用这样的东西,

public ArrayList<String> readURLs(String url) {             
        if(url == null) return null;
        ArrayList<String> allURls = new ArrayList<String>();
        try {

            URL urls = new URL(url);
            BufferedReader in = new BufferedReader(new InputStreamReader(urls
                    .openStream()));
            String str;
            while ((str = in.readLine()) != null) {
                allURls.add(str);
            }
            in.close();
            return allURls ;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        } 
    }

关于android - 流式传输 .m3u 音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6688758/

相关文章:

javascript - 如何设置audio.play()的音量

streaming - 限制 gstreamer 管道吞吐量以模拟实时源

ios - iOS 中的音频信号处理

android - 如何删除 Android Studio 中的库/模块?

java - 每次显示 Activity 时运行一个方法

android - Galaxy S4 SupportActionBar 在 ActionMode 下覆盖整个屏幕

java - 无法让 JApplet 播放音乐 mp3 文件

java - jPod 是否通过数据流合并 PDF?

用于 Apple HTTP Live 流(HLS)的 Python 模块?

java - 将字符串数组转换为字节数组(java)