gpt4 book ai didi

web-services - 音频流服务器

转载 作者:行者123 更新时间:2023-12-03 11:12:34 25 4
gpt4 key购买 nike

我是一名 php 开发人员,试图开发一个网站来向用户播放点播音乐。经过大量谷歌搜索后,我对应该使用哪种服务器或工具感到困惑?我见过一些类似 WOWZA 或 SHOUTCAST 的软件,但我不知道哪个最适合我的需要。

我想提供高质量的音频文件。所以也许我应该使用 320kbps mp3 格式或其他但质量相同的格式。

我不需要直播。我只需要音乐文件的点播流和用户创建他/她自己的播放列表的能力。

用户不应该能够下载音乐文件。

最佳答案

Icecast/SHOUTcast 不适合您使用。他们采用单个流并将其同时发送到多个连接。它们不是“点播”服务器,每个用户都可以在其中收听不同的内容。

对于您的用例,您可以用 PHP 实现一些东西。您真正要做的就是将媒体文件发送给客户端。您提到要阻止客户端下载这些文件……这是不可能的。客户端能播放,客户端就可以保存,这个没办法。但是,您可以做一些事情来防止它像链接到文件一样简单。

不要将您的音频存储在网络服务器的文档根目录中。所有媒体文件都应仅从您的 PHP 脚本提供。这使您可以控制传入的请求。查看 readfile()。这也为您提供了一条简单的途径,无需从磁盘加载文件(当您的媒体文件数量开始超过 100k 时,您将需要这种方式)。

一个媒体文件的 URL 应该只工作一次,并且针对特定的用户 session ID。即时生成这些 URL,并对其设置时间限制。如果媒体文件的 URL 是由在您的网站上没有有效 session 的人请求的,请不要提供它。如果链接已过期,请不要提供它。这就是阻止某人获取 URL 并将其发布到某些留言板上的原因。只有具有当前有效 session 的您网站的有效用户才能访问您的媒体文件。

速率限制请求。不允许用户一次下载超过需要的文件。如果他们在 1 秒内请求 100 个文件,请不要提供它们。

实现所有这些概念是我留给您的任务。如何执行此操作取决于您的需求,而不是通常在 5 行代码片段中完成的事情。

关于web-services - 音频流服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15460216/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com