2014-11-25 73 views
0

不知道这是否可能,我配置了一个icecast服务器和流音乐,我想创建一个使用Java(或Grails)的网络播放器。我设法获取Java web应用程序播放音乐的Icecast是流,使用这样的事情:问题与冰播音频客户端

AudioInputStream stream = AudioSystem.getAudioInputStream(new URL("http://localhost:8000/musicstation"))  

和几行正在播放的音乐后,问题是,如果我关闭该标签与网络应用程序音乐不断播放,我必须停止应用程序停止播放,但是当我再次启动它并尝试再次播放时,就好像icecast服务器在后台继续播放歌曲,我的意思是,它并没有停止或暂停,因为这我不能实现一个暂停动作,因为如果我暂停,它实际上暂停的是网络应用程序播放歌曲,但在背景中,icecast将继续传送歌曲,以便当我在暂停后再次播放时,歌曲将不会从暂停点继续播放。

正在使用AudioInputStream实现icecast音频客户端的正确方法? 我希望我能解释一下自己。 谢谢

回答

2

由于Icecast是一个流媒体直播服务器,因此显然会继续“玩”。如果你想实现暂停机制,你需要缓冲你从Icecast得到的内容并播放缓冲区。

+0

因此,如果我想创建一个类似spotify的播放器,您认为icecast作为流式传输服务器会是一个不错的选择吗?我想要的是创建一个网络播放器,用户可以暂停,前进,停止等用户正在播放的任何歌曲,不确定缓冲我从icecast获得的内容是否是一种好方法,有什么建议? – george969 2014-11-26 10:07:47

+0

还是开发自己的实时流协议(RTSP)的正确方法? – george969 2014-11-26 15:38:06

+0

Icecast不是正确的做法。一个普通的网络服务器可以。 – ePirat 2014-11-27 10:40:00