PHP - 用于流媒体的MP3代理

时间:2015-06-19 18:52:33

标签: php apache audio proxy mp3

我正在开发一个mp3流式网络应用程序。 我正在使用外部API来获取mp3网址,问题是所有mp3都被限制在IP请求文件(在这种情况下是我的服务器),它只能由服务器流式传输/下载,任何其他IP都会产生在404。

我正在寻找的是我的服务器作为mp3和想要收听它的用户之间的中继/代理的最佳选择。

这对我的带宽来说有点问题,但我认为别无选择。

这是我正在使用的代码,但是当它下载的同时进行广播时,网络应用无法获取mp3标签,并且它以某种方式破坏了网络应用播放器。

if (isset($_GET['name']) AND isset($_GET['url'])){
$url = urldecode($_GET['url']);
if ((strpos($url,'xxxxxx') !== false) || (strpos($url,'xxxxxx') !== false)) {
    header('Content-type: application/octet-stream');
    header('Content-Disposition: attachment; filename="' . $_GET['name'] . ' - xxxxxx.mp3"');
readfile(urldecode($_GET['url']));
} 
else {
    header("HTTP/1.0 404 Not Found");
}
}
else {
  header("HTTP/1.0 404 Not Found");
}

1 个答案:

答案 0 :(得分:0)

您需要使用音频流包装器。一个例子是OGG。它的设置基本上与设置消息套接字服务器的方式相同。因此,如果您从未创建过消息套接字服务器,我建议您先观看有关如何使用套接字设置消息服务器的YouTube视频。

抱歉,您的问题不是直接回答问题。不是先知道你对流数据的了解。

http://php.net/manual/en/wrappers.audio.php

https://www.youtube.com/watch?v=XkBaba5q6dc&list=PLgiqzl4BEJTOiJolWtRF2tEhlkX1r-s5a