Игра в WAV файл на iOS Safari
Я пытаюсь получить WAV файл для воспроизведения на HTML-странице либо как тег HTML5, либо через обычную загружаемую ссылку в мобильном Safari (iPad/iPhone):
<audio controls src="audio-pcm_s16le-8k.wav"/></audio>
<a href="audio-pcm_s16le-8k.wav">audio</a>
Объект HTML5 audio
показывает только Cannot play audio file
в нем, и когда я нажимаю, чтобы загрузить привязанный якорь, я получаю черную страницу с "не могу воспроизвести этот круг" посередине. Я пробовал различные частоты (8000, 11025, 16000, 32000, 44100), различные кодировки (mu-law, Linear Signed 16-bit LE и BE), различные контейнеры (.wav,.caf,.aiff) и различные (Audacity, ffmpeg и Apple, afconconvert)... Я не могу получить звук для воспроизведения (если я не сделаю его MP3 - и нет, я не могу просто использовать MP3 или AAC, мне нужен "сырой" "формат по причинам слишком долго, чтобы войти сюда).
Я просмотрел поддерживаемые форматы для iOS и, похоже, поддерживает WAV... у кого-нибудь есть опыт работы с этой проблемой? Я нахожусь на последней версии iOS 6.0.1
РЕДАКТИРОВАТЬ: Выбранный автоответчик дал мне вопрос, но причина в комментариях к ответу. Нижняя строка - это то, что для воспроизведения файлов требуется HTML-диапазон заголовков.
Ответы
Ответ 1
Ну, ты, конечно же, получил меня на правильном пути... это, видимо, не файл вообще... это веб-сервер. Точно точный контент от Stockley работает, но на моем веб-сервере это не так. Я должен буду подробно просмотреть HTTP-ответ. Мой веб-сервер возвращает Content-Type: audio/x-wav
, так что это не так...
Проверяя заголовки для тестового сайта, который я настроил, вы хотите вернуть Content-Type: text/html
для страницы, содержащей требуемые данные HTML:
![enter image description here]()
И Content-Type: audio/x-wav
для фактического аудиофайла (http://www.test.com/file.wav
)
![enter image description here]()
Ответ 2
В ходе проб и ошибок я обнаружил, что для этого вам нужен заголовок диапазона контента. Вот пример моих заголовков, который позволяет wav файлу играть в Safari для iOS:
Content-Range: bytes XX-XX/XX
Content-Type: audio/wav
Content-Disposition: attachment; filename="whatever.WAV"
Content-Length: XX
Надеюсь, это поможет!
Ответ 3
Он отлично работает. Я использовал Content-Range: bytes XX-XX/XX и Content-Length: XX