gpt4 book ai didi

android - 在 android 中从 Shoutcast Url 播放

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:00:20 26 4
gpt4 key购买 nike

我正在开发一个需要通过 Shout cast 播放广播的应用程序。对于 API,我遵循了这个 URL

我成功地使用我的开发者 ID 获得了一个电台 ID。现在在“如何调谐到一个电台”部分中,他们指导了如何调谐到一个特定的电台。我已经按照该部分进行操作并使用了这个 URL在我的安卓媒体播放器中。但是我的媒体播放器什么也没播放。

请注意我的目标 SDK 是 16,Min SDK 是 13。所以我希望 android 版本不是问题。如果我使用其他 URL,媒体播放器工作正常:

所以我想我的媒体播放器没有问题。我已经阅读了 SO 中可用的帖子。请帮忙。

public class MainActivity extends Activity {

Button play,pause,stop;
private MediaPlayer mediaPlayer;
private String out;
// private String url = "http://yp.shoutcast.com/sbin/tunein-station.pls?id=175821";
// private String url = "http://www.hrupin.com/wp-content/uploads/mp3/testsong_20_sec.mp3";

private String url1 = "http://streamplus8.leonex.de:14910";
private String url2 ="http://s2.voscast.com:7016/";
private String url3 ="http://s8.voscast.com:7024/";
private String url4 ="http://s8.voscast.com:7020/";
private String url5 ="http://s5.voscast.com:8216/";

private boolean pauseState = false;
ProgressDialog pd;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

pd = new ProgressDialog(this);
pd.setMessage("Loading your song....");
play = (Button)findViewById(R.id.btn_play);
pause = (Button)findViewById(R.id.btn_pause);
stop = (Button)findViewById(R.id.btn_stop);

mediaPlayer = new MediaPlayer();
this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
try {
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(url2);
mediaPlayer.prepareAsync();
} catch (Exception e) {
Toast.makeText(getApplicationContext(), "Please check your connection!", Toast.LENGTH_LONG).show();
e.printStackTrace();
}

play.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {

if(pauseState == true) {
mediaPlayer.start();
} else {
pd.show();
mediaPlayer.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mediaPlayer.start();
if(mediaPlayer.isPlaying()){
pd.dismiss();
}
}
});
}
pauseState = false;
}
});
pause.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
mediaPlayer.pause();
pauseState = true;
}
});
stop.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
mediaPlayer.stop();
// mediaPlayer.release();
}
});


}

}

最佳答案

好的。好吧,我终于想通了自己。实际上当我点击这个Url正在下载一个 .pls 文件。 .pls 文件的内容是这样的

[playlist]
numberofentries=1
File1=http://203.150.225.71:8000
Title1=(#1 - 10866/10000) COOLfahrenheit 93
Length1=-1
Version=2

我必须读取这个文件,然后解析这个文件以获取实际的 URL。这是

http://203.150.225.71:8000

Android 媒体播放器能够播放此 URL。

关于android - 在 android 中从 Shoutcast Url 播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18652583/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com