Итак, у меня есть php-скрипт, который отправляет мой mp3-файл на аудио-тег html5.Проблема в том, что в Safari тег audio.duration не работает и возвращает бесконечность.Если я устанавливаю src аудио прямо в файл, все работает нормально.Но я не хочу, чтобы мои пользователи видели путь к файлу.
В любом случае, так я посылаю свои заголовки из PHP.
Я уже пробовал иметь диапазоны содержимого.Это не помогло.
if (file_exists($filename)) {
$fp = fopen($filename, 'r');
$etag = md5(serialize(fstat($fp)));
fclose($fp);
header("Content-Transfer-Encoding: binary");
header("Content-Type: audio/mpeg");
header('Content-Length: ' . (string)(filesize($filename)));
header('Content-Disposition: inline; filename="' . $filename . '"');
header('X-Pad: avoid browser bug');
header('Cache-Control: no-cache');
header('Etag: ' . $etag);
//GetContentRange($filelength);
readfile($filename);
exit;
}
else {
header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found', true, 404);
echo "no file";
}