- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这与这个问题本质上是一样的,但有更多的细节:
Soundcloud + SoundManager bug: reading a stream's eqData
所以我有一个使用 canvas/svg/你有什么的可视化工具,当它从 SoundCloud/SoundManager2 接收 EQData 时看起来很棒,但是发生了一些非常奇怪的事件,导致它不那么酷。
1.) 当您使用 SMSound.pause() 或任何变体(SoundManager.togglePause 等)然后恢复所有 EQData/WaveformData 停止进入 SoundManager2 并且它只是归零。
2.) 如果您停止轨道并重新启动它,所有 EQData/WaveformData 都会停止。
3.) EQData/WaveformData 偶尔会在没有任何警告的情况下停止进入 SM2,可视化工具也会停止,如果我转到下一首轨道,它会再次启动,但对于一首超过 30 秒的歌曲,它从来没有 100% 工作过。
我一直无法弄清楚这是 SoundCloud 还是 SoundManager2 的问题,但似乎其他人也遇到过问题,但直到现在我一直无法在任何地方找到任何解决方案。
此处提供链接:http://nikru.com/viz/ .它被从网站中删除,因为它是针对客户尚未启动的网站,他们不希望公众看到。 :)
非常感谢任何帮助。
谢谢!
最佳答案
好的。我相信其他人也遇到过这种情况,但没有快速解决办法。我希望这对其他人有帮助,因为我已经尝试了一天左右的可能性,并且认为我有适合每个人的解决方法。
发生的事情是,当 SoundManager2 第一次从 http://api.soundcloud.com/tracks/9708215/stream?consumer_key= 请求时调用歌曲{YOUR KEY} 页面。这太棒了,这首歌可以播放,因为 api.soundcloud.com 有一个 crossdomain.xml 文件。糟糕的是,SoundManager2 在下一个请求(暂停/播放或下一首/上一首轨道)时只是返回到它所知道的(这是 ec-media.soundcloud.com 上的 301 页面,正如我之前提到的 ec- media.soundcloud.com 没有 crossdomain.xml 文件)这不是很好。我的解决方法是,每次重新开始播放歌曲时,我都会修改声音的 URL 以包含新的 ts={time} 参数,然后在 SMSound 上运行 .load() ,这会导致重新加载并解决问题。
var $track = $(this),
data = $track.data('track'),
playing = $track.is('.active');
newURL = soundManager.sounds["track_" + data.id].url.split("&ts=")[0];
newURL += "&ts=" + Math.round((new Date()).getTime() / 1000);
soundManager.sounds["track_" + data.id].url = newURL;
soundManager.sounds["track_" + data.id].load();
soundManager.sounds["track_" + data.id].url = newURL;
然后为了在歌曲暂停时节省带宽,我实际上只是将其静音并保存歌曲暂停的位置。当他们取消暂停时,我会在他们停止的位置播放该轨道并取消静音...这不是很漂亮,但这是我们可以用我们现有的东西做的最好的(我认为)。
希望这对某人有帮助。 :)
关于javascript - SoundCloud + Soundmanager2 + EQData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11642556/
这与这个问题本质上是一样的,但有更多的细节: Soundcloud + SoundManager bug: reading a stream's eqData 所以我有一个使用 canvas/svg/
我是一名优秀的程序员,十分优秀!