Аудио не загружается в аудио-тег HTML - PullRequest
4 голосов
/ 18 мая 2011

Я тестирую аудио-тег HTML.

И он работает в моей тестовой среде, но по какой-то причине не в моей рабочей среде.

Я просто использую: <audio src="/sandbox/test.mp3" controls="controls"></audio>.

Сайт тестирования находится в Windows, а рабочий сайт - в Linux, но я думаю, что это должно иметь какое-то значение.

Я могу скачать трек, чтобы знать, что он находится в нужном месте.

URL-адрес продукции: http://pieterhordijk.com/sandbox

Как указано, точно такой же код работает на тестовой площадке.

Кто-нибудь знает, почему он не загружает мой звук?

PS

Я тестирую, используя:

Chrome 11.0.696.68

EDIT

Теперь я нахожусь на Chrome 13 (Canary Build) и загружаю MP3.

Но WAV загружает только первые секунды.

Ответы [ 2 ]

3 голосов
/ 18 мая 2011

http://pieterhordijk.com/sandbox/test.mp3 - это аудио / MPEG, что хорошо.Однако, когда я загружаю его с помощью Opera, он по какой-то причине выходит поврежденным, и я не могу добавить его в плейлист Foobar или что-то еще.Но он хорошо загружается с помощью wget, так что это может быть просто проблема с Opera или что-то необычное, что сервер дает Opera.Загрузка mp3 с помощью , конечно же, не работает в Opera, поскольку Opera не поддерживает этот формат.

http://pieterhordijk.com/sandbox/test.ogg используется как audio / ogg, что хорошо.И теперь он также содержит vorbis вместо flac (так как вы исправили это).Он не будет воспроизводиться в Opera удаленно, но будет играть нормально, если я скачаю файл и открою его в Opera локально.Он также хорошо играет в Foobar.

http://pieterhordijk.com/sandbox/test.oga подается с неверным типом пантомимы.Он используется как text / plain, но должен использоваться как audio / ogg (это можно исправить в .htaccess).Но он содержит vorbis и может быть воспроизведен с Foobar.Опять же, этот не будет играть удаленно в Opera.Но если я скачаю его и открою его в Opera локально, это не вызовет проблем.

http://pieterhordijk.com/sandbox/test.wav - это аудио / x-wav, что хорошо.Но wav-файл неприемлем для потоковой передачи, поскольку его размер составляет 30,9 МБ, а воспроизведение может быть ужасным, если оно не будет полностью загружено.По крайней мере, этот играет в Opera удаленно.

Однако на моем сайте все работает хорошо.См. http://shadow2531.com/opera/testcases/plugins/temp/peehaa/test_audio_vorbis.html. Ваш файл oga воспроизводится в Opera без проблем, и он должен вернуться к mp3 для UA, которые не поддерживают Vorbis.

С учетом сказанного кажется, что это что-то сСервер обслуживает файлы.Единственное отличие, которое я заметил, заключается в том, что ваш сервер отправляет заголовок Vary: Accept-Encoding.Но не уверен, является ли это причиной или нет.

Теперь, как вы увидите из моей тестовой страницы, он использует:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <p>
            <audio controls width="300">
                <source src="test.oga" type='audio/ogg; codecs="vorbis"'>
                <source src="test.mp3" type="audio/mpeg">
                <a href="test.oga">test.oga</a>
                <a href="test.mp3">test.mp3</a>
            </audio>
        </p>
    </body>
</html>

Вот как вы можете использовать другие типы,См. http://www.whatwg.org/specs/web-apps/current-work/multipage/the-iframe-element.html#the-source-element для получения дополнительной информации.Если mp3 и vorbis недостаточно, вы можете добавить aac audio в контейнер mp4 / m4a как еще один запасной вариант.

0 голосов
/ 20 декабря 2011

У меня была похожая проблема, по какой-то причине она не загружала локальные файлы MP3, решение для меня было использовать файлы OGG, и все работало. Моя локальная система разработки - Linux / apache2, и я тестировал Firefox 8 и Chrome 15. Аудио тег работал с удаленными файлами MP3 и OGG, хотя я не знаю, почему они не работали локально, опять же OGG работал локально.

...