流由 mp3 的无缝流组成
这就是流的作用……它将单独的 mp3 拼接到一个大流中。
但是流中有跟踪 ID 标记...如果您能找到结束并从它们开始,则不 shure
或者如果它们恰好在轨道起点或其他固定位置开始。
大多数电台不会提前发送有关下一首曲目的信息
只是因为他们不知道,大多数使用服务器必须决定的自动 dj 播放列表
在新旧曲目之间的短暂休息中,新曲目将是什么
即:它不会在播放旧曲目时做出决定。
有些电台确实会发送信息(PHP 到他们的网页)下一首曲目将是什么
但大多数人不...如果他们这样做,那么这些信息肯定不在流本身中。
也许一个技巧可能是为您的听众添加延迟
即:听众当前听到的内容
是旧的(最多几分钟或 1 个完整的曲目)
不知道如何创建这样的延迟...也许您需要记录(缓冲)它
并延迟播放(在您的应用中或通过其他服务器)
您的(未延迟的)应用程序将(希望)在当前歌曲结束时通知
因为一个新的以新的 ID2/3 标签开始...当他当前但延迟的歌曲结束时,它会将您的听众切换到新的流。
说不同...在您的应用程序向前看的表面之下(相对于侦听器)
您需要学习 Shoutcast 和 ID-tag 协议。
额外的静音检测也可能有所帮助(不是万无一失的)。
可能并不总是有效..有些电台不发送 ID 标签
其他人淡入淡出他们的曲目(没有沉默)......正是为了避免这些技巧。
或者类似的东西......祝我好运,我不会编写任何代码......这只是理论
我怀疑一些广播开膛手会使用这个技巧……我想他们会使用这个
扫描多个流(并行)以查找某些预设的艺术家曲目。
也许您可以通过对这些裂土器进行逆向工程来获得一些想法。
因为我自己有一台收音机,所以我不喜欢这些把戏,因为他们偷了我
当我为版权付费时....许多开膛手会扼杀在线广播。
最后我不认为你的想法(如果我很好地理解它的目的)有用
每下一首曲目从一个流切换到另一个流似乎不是一种享受的体验。
好的广播电台将有一个精心制作(订购)的播放列表
如果你搞砸了,你的听众会在很短的时间内得到很多情绪/风格的变化。
这样做的唯一有用的目的可能是构建一个自动开膛手
可以分散预设曲目/艺术家对平行观察的众多流的注意力
并在播放想要的曲目时记录它们...对于许多在线电台来说,这些开膛手已经是一个大问题,还有 10 个以上的开膛手和在线广播已经死了...结果高质量和独立的音乐将不再可用...我们将只能使用 Youtube 和其他
金钱出没的企业集团..我不期待那个..好奇你是否还有其他有用的
目的。