通过android中的mediaplayer进行直播
如何使用MediaPlayer传输在线URL?您可以使用:通过android中的mediaplayer进行直播,android,media-player,http-live-streaming,Android,Media Player,Http Live Streaming,如何使用MediaPlayer传输在线URL?您可以使用: MediaPlayer mediaPlayer = MediaPlayer.create(this, Uri.parse("YOUR URL HERE")); mediaPlayer.start(); 如果您正在从远程URL流式传输音频,则MediaPlayer有问题。它有时工作,但挂起主要是为了远程 试过挂在下面吗 mediaPlayer = MediaPlayer.create(this, Uri.parse
MediaPlayer mediaPlayer = MediaPlayer.create(this, Uri.parse("YOUR URL HERE"));
mediaPlayer.start();
如果您正在从远程URL流式传输音频,则MediaPlayer有问题。它有时工作,但挂起主要是为了远程 试过挂在下面吗
mediaPlayer = MediaPlayer.create(this, Uri.parse("YOUR URL HERE"));
mediaPlayer.start();
也试过
mediaPlayer.prepareAsync();并在准备好的侦听器上实现。不起作用。。使用的设备是三星galaxy mini
已经尝试手动读取URL内容并使用缓冲内容更新MediaPlayer数据源。最有效,但还不知道如何切换URL等
这里的示例适用于视频播放器,但音频播放器也应采用相同的概念
编辑
啊,刚刚找到这个似乎很好地包装了对MediaPlayer的调用:基本上,如果使用Android MediaPlayer类,您需要执行以下操作:
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setOnErrorListener(new MediaPlayer.OnErrorListener() {
public boolean onError(MediaPlayer mp, int what, int extra) {
mp.reset();
return false;
}
});
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
try {
mediaPlayer.setDataSource("http://someurl");
mediaPlayer.prepareAsync();
} catch (IllegalArgumentException e) {
} catch (IllegalStateException e) {
} catch (IOException e) {
}
请记住,Android MediaPlayer类只能播放支持的格式:
在API 28中为我工作
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource("http://209.188.21.202:8016/stream");
mediaPlayer.prepare();
mediaPlayer.start();
如果使用INTERNET,请记住向清单添加权限
<uses-permission android:name="android.permission.INTERNET" />
也要小心使用文本通信
从Android 9.0(API级别28)开始,默认情况下禁用明文支持
在我的例子中,我在清单中添加-->android:UseSlearTextTraffic=“true”
参考-->
“我尝试了这么长时间但结果相同”-什么结果?请显示您迄今为止尝试过的内容。您好,Lalit u可以看到我在下面的堆栈溢出标题中尝试了什么。。。Android http直播URL使用mediaplayerGetting错误,如Mediaplayer错误(1,-1002),开始状态为0,错误(-38,0)原因。如果您使用http直播(HLS/pantos-http-live-Streaming-07),则仅在Android 3.0及更高版本中受支持。你可以在这里看到谷歌的发布说明:你需要在你的问题中提供更多的信息…@NAVdroid我也使用了这个,但它显示未发送缓冲状态,因为持续时间未知…请给我建议,如果你以前做过…,mediaplayer启动状态为2hi,本机媒体播放器是否支持自适应比特率流媒体?
<uses-permission android:name="android.permission.INTERNET" />