我一直在尝试通过给它提供 php 脚本的源代码来让 chrome 通过 HTML5 音频标签播放 opus 音频文件。这在 mozilla 中运行良好,但 chrome 给出错误“资源解释为文档但使用 MIME 类型音频/ogg 传输”。
<td>
<audio preload='none' id='$row[FILE_NAME]' controls='controls'>
<source src='../../functions/play.php?FILE=$row[FILE_NAME]' type='audio/ogg; codecs=opus' />
</audio>
</td>
这是从 ftp 下载音频文件的脚本代码
<?php
if (isset($_GET["FILE"]) && ($_GET["FILE"]!=""))
{
$FILENAME=$_GET["FILE"];
$ftp_server = "server";
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, 'username', 'password');
$fsize = ftp_size($ftp_conn, $FILENAME);
header('Content-disposition: inline; filename="'.$FILENAME.'"');
header('Content-Type: audio/ogg');
header('Content-Length: '.$fsize);
$path = "ftp://username:password@server/".$FILENAME;
$handle = fopen($path, "rb");
if (FALSE === $handle) exit("Failed to open stream to URL");
$contents = fpassthru($handle);
fclose($handle);
print ($contents);
}
else exit("No filename recived");
?>