某些流式SoundCloud歌曲无法在iOS上流式播放,出现错误

某些流式SoundCloud歌曲无法在iOS上流式播放,出现错误,ios,soundcloud,avplayer,Ios,Soundcloud,Avplayer,我正在使用AVPlayer在我的应用程序中播放SoundCloud歌曲,但其中一些歌曲无法播放,尽管streamable标志为true。肯德里克·拉马尔(Kendrick Lamar)的《黑色星期五》(Black Friday)就是一首不起作用的歌曲,带有流式URL https://api.soundcloud.com/tracks/234989572/stream?client_id={MY_CLIENT_ID} (当然,{MY_CLIENT_ID}是实际的ID) 这是AVPlayerIt

我正在使用AVPlayer在我的应用程序中播放SoundCloud歌曲,但其中一些歌曲无法播放,尽管streamable标志为true。肯德里克·拉马尔(Kendrick Lamar)的《黑色星期五》(Black Friday)就是一首不起作用的歌曲,带有流式URL

https://api.soundcloud.com/tracks/234989572/stream?client_id={MY_CLIENT_ID} 
(当然,{MY_CLIENT_ID}是实际的ID)

这是AVPlayerItem返回的错误(同样,真实的客户端ID不清楚):

大多数歌曲都播放得很好,例如G-Eazy的《一切都会好起来》。网址:

https://api.soundcloud.com/tracks/236005149/stream?client_id={MY_CLIENT_ID}

为什么像《黑色星期五》这样的一些歌曲失败了?

这首歌的出版商选择不提供mp3流。不幸的是,由于一些非常复杂的原因,在您实际尝试获取流之前,无法判断情况是否会如此。这是一件非常令人沮丧的事情,但是当我说原因很复杂时,请相信我


也许在尝试播放之前向streams端点发送HEAD请求会有所帮助?

我不相信这个答案。使用
api mobileweb.soundcloud.com上的
trending tracks
端点,我得到一个
http\u mp3\u 128\u url
返回值。网络播放器和移动应用程序必须有一个mp3公开,但我认为它是私有的。不建议使用api.soundcloud.com以外的api-*域。它们被内部SC应用程序使用,因此它们不会被公开记录,也不能保证它们将来会继续表现相同(甚至存在)。
https://api.soundcloud.com/tracks/236005149/stream?client_id={MY_CLIENT_ID}