0

我想从动态链接播放 MP3

我正在使用此代码发送 mp3 而不是直接链接:

PHP端:

$filename = "jadi.mp3";
$mime_type = "audio/mpeg, audio/x-mpeg, audio/x-mpeg-3, audio/mpeg3";
if (is_file($filename)) {

    header("Content-Type: {$mime_type}");
    header('Content-length: ' . filesize($filename));
    header("Content-Disposition: attachment;filename = jadi.mp3");
    header('X-Pad: avoid browser bug');
    header('Cache-Control: no-cache');
    header("Content-Transfer-Encoding: binary");
    $fd = fopen($filename, "r");
    while (!feof($fd)) {
        echo fread($fd, 1024 * 200);
    }
    fclose($fd);
    exit();
}

HMLL 方面:

<audio controls>
    <source src="http://localhost/music.php" type="audio/mpeg"  preload="auto">
    Your browser does not support the audio element.
</audio>

但是浏览器不能播放,我对WAV文件没有问题,但是对于mp3,它不起作用

如果我使用直接链接而不是php脚本没有问题,所以我的浏览器可以支持MP3

谢谢

4

2 回答 2

0

如果您单独运行 PHP 脚本,您的浏览器应该能够立即下载 MP3 文件。

如果这不起作用,那么您的 PHP 脚本中存在一些问题。

于 2013-08-25T07:33:48.963 回答
0

Content-Type你应该只在你的 PHP中指定一个。您不能只发送逗号分隔的列表 AFAIK。

于 2013-08-25T13:53:32.353 回答