彩信流(无线客户端 - 仅限音频)

时间:2013-12-22 14:13:38

标签: audio video stream streaming mms

我对此有点困惑。 搜索并找到了有关如何使用MMS协议传输音频和视频的主题,但我想要的是在 ANDROID 中收听它(就像无线电客户端一样,在这种情况下只需要音频)。

我的目标网址为: mms://stream.radio.com.pt/ROLI-ENC-452
(以上网址有效。但为了确定,我已将其复制/粘贴到我的Firefox浏览器,然后它要求播放器,“Widows Media Player”或“VLC”,并且扮演一个魅力的角色两者。你也可以尝试。)

1)我试过这段代码:(使用MediaPlayer - 结果是:无声,没有任何反应)

String target = "mms://stream.radio.com.pt/ROLI-ENC-452";
MediaPlayer mp = new MediaPlayer();
mp.setDataSource(target);
mp.prepare();
mp.start();

2)此代码:(使用MediaPlayer - 结果是:崩溃 - 空指针异常)

Uri target = Uri.parse("mms://stream.radio.com.pt/ROLI-ENC-452");
MediaPlayer.create(context, target).start();

注意:所有活动和互联网权限都在“AndroidManifest.xml”中注册。

问题:我是否正确使用MediaPlayer进行MMS协议?...如果是这样,我做错了什么? (我知道MediaPlayer处理HTTP和RTSP协议,不确定MMS)

1 个答案:

答案 0 :(得分:0)

解决方案:(排序)好的,经过大量的代码尝试后,在那里尝试了很多东西后,发布在很多论坛上,我的简历是:

事实: MediaPlayer本身无法处理 mms 协议。
a)支持的格式:http://developer.android.com/guide/appendix/media-formats.html
b)不推荐使用MMS:http://en.wikipedia.org/wiki/Microsoft_Media_Server

选项:我可以选择“Vitamio”库。 (很多人都会选择这个解决方案,正如我所见)

我的决定:我选择了“ .pls ”和“ .acc ”文件,因为它们与MediaPlayer兼容。现代音频压缩和编码方案,具有更好的音频质量。而且(对我来说最重要的)代码结束时就像下面示例中的代码一样简单:

// Both urls for audio stream (radio):
// Try this as an "PLS" example: http://tsf.pt/emdirecto.pls
// Try this as an "AAC" example: http://euronews-02.ice.infomaniak.ch/euronews-02.aac   

VideoView vv = (VideoView) findViewById(R.id.myVideoView); // In a layout xml file
MediaController mc = new MediaController(context){};

Uri path = Uri.parse("http://euronews-02.ice.infomaniak.ch/euronews-02.aac");
vv.setMediaController(mc);
vv.setVideoURI(path);
vv.requestFocus();
vv.start();

希望这对于在这个“沉默”中迷失的人来说也会发出“嘟嘟”声...... ;)