使用PHP(或者其他语言)流式传输数据(例如音乐)
时间:2020-03-05 18:48:00 来源:igfitidea点击:
多年以来,我一直在研究如何从计算机创建音乐流。我已经看过程序,但是看到的所有有用的东西都只有Windows(我使用Mac)。
最终,我对流的工作方式产生了兴趣。有什么办法可以使用PHP中的套接字函数创建自己的流?是否有一个PHP库?
解决方案
回答
看看Ampache。它是一个基于Web的开源音频文件管理器。它是通过MySQL和PHP实现的。它使我们可以通过网络查看,编辑和播放音频文件。
回答
最后,一切都归结为我们要使用的协议。 Shoutcast IMHO是纯HTTP,因此,要制作自己的流,只需输出流内容即可。
为了使基于ogg的webradio与我的Sonos系统一起工作,我创建了一个围绕sox的小转码包装器,它实际上是用PHP编写的,因此作为示例可能对我们有所帮助。
我们可以在这里找到它:http://www.gnegg.ch/ogg2mp3/
如果我们是在实现自己的流协议(甚至是基于UDP的协议)之后,那么恐怕PHP可能不是解决该问题的正确解决方案,至少在用于长时间运行的进程时,它有一定的问题(5.3可能为其集成的垃圾收集带来一些帮助)