我能够使用公共流媒体API从Grooveshark流式传输歌曲。 我用jPlayer(jplayer.org)使用它,它正确地播放歌曲。Grooveshark公共流媒体API与jPlayer
但问题是,在Firefox(查了最新版本)的歌曲不断从00:00提高到全曲长度的充分时间。基本上整首歌曲的持续时间为是缓冲的歌曲数量。
例如, 一首长度为04:00的歌曲分钟开始缓冲。现在,当它缓冲歌曲的季度(即01:00分钟),jPlayer将歌曲持续时间显示为01:00分钟,而它应该是04:00分钟。
截图:(这首歌打了总长度05:06分钟)
http://i.stack.imgur.com/wzxPx.png
在谷歌浏览器(在最新版本检查)歌曲的整个持续时间显示 jplayer表明,即使从歌曲开始,整首歌曲都会被缓冲。
截图:(铬显示,整首歌被缓冲,但它仍然是缓冲)
http://i.stack.imgur.com/PSkct.png
jPlayer首先使用HTML5和回落到闪存如果不支持HTML5。 Google Chrome支持使用HTML5播放mp3(Grooveshark流是一个mp3)。 但Firefox不支持HTML5中的mp3。
所以很明显,Firefox使用的是Flash,而Chrome使用的是HTML5。
现在我要解决的问题是: -
- 获取歌曲的整个持续时间在Firefox和保持一切喜欢它。
- 在Chrome中保留歌曲的全部时间并显示正确的歌曲缓冲量。
所有这些应该是可能的,因为grooveshark网站本身也使用相同的stream.php文件。
Grooveshark也提供它自己的Flash播放器,但它没有足够的功能,特别是它不是HTML5。
如果jPlayer无法实现,那么请给我一个更好的选择,它支持HTML5并且适用于流媒体。
看看http://stackoverflow.com/questions/13170411/audio-element-with-controls-trackbar-not-moving类似问题 – Baba 2013-02-12 08:13:09
@Baba我没有控制stream.php,因为它是在Grooveshark的结局。 当我检查Firebug中的stream.php的标头时, Content-Length的标头已经设置。 – 2013-02-12 08:40:56