1

我用 MediaElement.js 设置了一个 MP3 音频播放器,它不允许我搜索,而 mediaelementjs.com 上的演示确实允许搜索。我没有看到任何有关在网站上启用搜索的选项或说明。为什么不去寻找?

我使用的是 2.13.1 版本。这是代码(除了包含的 js 和 css 文件):

<audio controls="control" preload="auto" src="sound.mp3" type="audio/mp3"></audio>
<script>
$('audio').mediaelementplayer();
</script>

编辑:我发现问题在于我如何通过 PHP 提供音频文件。我之前没有提到这一点,但我已将问题标题更改为包含此内容。MP3 文件通过 PHP readfile() 提供,以防止非会员下载。

4

1 回答 1

3

如果您通过 PHP 为 HTML5 音频元素和其他播放器(如 MediaElement.js)提供音频文件,则需要包含以下标头以寻求工作:

<?php header('Accept-Ranges: bytes'); ?>

这是我的 php 来提供文件:

if(file_exists($file)) {
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename='.$filename);
    header('Content-Transfer-Encoding: binary');
    header('Expires: 0');
    header('Cache-Control: must-revalidate');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    header('Accept-Ranges: bytes');
    flush();
    readfile($file);
    exit();
}

当然,您需要设置 $file(文件路径)和 $filename(只是文件名)。

于 2013-08-22T05:13:14.390 回答