Spotify的在线服务如何流式传输音乐,使其不可下载[关闭]

Posted

技术标签:

【中文标题】Spotify的在线服务如何流式传输音乐,使其不可下载[关闭]【英文标题】:How does Spotify's online service stream music so it's not downloadable [closed] 【发布时间】:2013-06-16 02:01:41 【问题描述】:

我正在开发一个可以托管几首歌曲的网站。我知道在大多数情况下,音乐流可以通过 Chrome 的开发者工具、Firebug 等下载。 Soundcloud 是可以使用这种下载流的方法的示例站点。

另一方面,Spotify 似乎找到了一种流式传输音乐的方法,因此无法下载。 这怎么可能?如何为自己的网站实施这一级别的保护?


我打算收集的答案和信息隐藏在 cmets 的所有噪音中。

正如@idbebhold 所建议的那样,我发现RTMP 流媒体 可能是我正在寻找的答案。

【问题讨论】:

【参考方案1】:

Spotify 未使用 html5 音频。他们很可能使用 Flash 来提供音频。


编辑:Spotify 正在使用 Flash 播放音频。

在 Chrome DevTools 中查看“网络”选项卡时,it appears that I was correct。

为了验证这一点,我在 Chrome (chrome://plugins/) 中禁用了 Flash 插件并尝试访问 Spotify。它弹出了这个通知:"To enjoy Spotify, please install Adobe Flash. It's free."

【讨论】:

您应该能够在开发者工具中看到.flv.swf 流吗? 不,您不会在“网络”标签中看到该流。另外:不要试图从 Spotify 窃取音乐。 我不是。我正在尝试弄清楚如何将这种级别的保护添加到客户的网站。 不,没有使用闪存。将flashblock添加到您的浏览器并转到网络播放器,您会发现它可以正常工作。 确实是这样。很可能使用RTMP 流式传输音频。【参考方案2】:

刚刚使用 tcpdump 进行了测试。音频连接通过服务器端口 1935,即 RTMP 端口。浏览器通常通过 Flash 使用 rtmp。事实上,如果您在浏览器中禁用 Flash,您将无法使用 Spotify。 此外,我可以看到他们使用 Cloudfront,那么我猜这个服务特别:http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-rtmp.html

【讨论】:

以上是关于Spotify的在线服务如何流式传输音乐,使其不可下载[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

是否允许 Spotify 应用程序以与 SoundCloud 应用程序相同的方式流式传输无限音乐?

如何使用NoteBurner Spotify Music Converter在没有 DRM 限制的情况下下载 Spotify 音乐

我需要知道如何获取有关当前正在流式传输的播放器的信息(播放器、spotify、napster ......)

如何将 Spotify 音乐添加到 djay Pro

使用 GWT 进行在线音乐流式传输

使用 libspotifydotnet (Spotify - libspotify) 流式传输音频