HTML5 аудио файлы не загружаются в Safari - PullRequest
7 голосов
/ 17 ноября 2010

[РЕДАКТИРОВАТЬ: использование упрощенной тестовой страницы без Javascript и т. Д.]

У меня есть веб-страница, которая содержит четыре аудиофайла. Эти файлы обслуживаются как HTML5 <audio> с файлами .mp3, которые должны воспроизводиться в Safari. (У меня не было проблем с файлами .ogg в Firefox и Chrome.)

Каждый раз, когда я перезагружаю страницу, правильно загружаются от одного до трех файлов, а остальные не загружаются - хотя они не выдают ошибку и сообщение «загрузка» исчезает; как будто они загружаются с размером 0B. Какие файлы работают, а какие не кажутся совершенно случайными: я видел, как каждый из них загружался, и каждый из них выходил из строя более одного раза.

Как я могу заставить все эти файлы загружаться правильно?

Ответы [ 2 ]

10 голосов
/ 15 декабря 2010

У меня была похожая проблема с файлами, которые не загружались, и я нашел это решение. Кажется, что HTML5 аудио / видео может «зависнуть», то есть просто перестает загружаться. К счастью, когда это происходит, происходит событие «срыва». Что я сделал, так это прослушал это событие, и когда / если оно сработало, просто попытайтесь снова загрузить звук.

Пример использования jQuery:

    // the event is 'onstalled' - 'stalled' in the jquery case
   $("audio").bind("stalled", function() { 
        var audio = this;
        audio.load();

        // Threw in these two lines for good measure.
        audio.play();
        audio.pause();
    });
0 голосов
/ 17 ноября 2010

Глядя на сгенерированный источник вашей страницы, вы загружаете в качестве первого источника файл ogg, а затем mp3-файл в этом точном порядке

Но, как указано в http://html5doctor.com/native-audio-in-the-browser/ файле, в обратном порядкепопробуйте сделать то же самое

в противном случае попробуйте использовать в ваших источниках также аудио aac в контейнере m4a / mp4

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...