"Ошибка: неподдерживаемый тип аудио или неверный путь к файлу" для тега HTML5 Audio в Internet Explorer 10

У меня есть следующий html5-документ с аудио-тэгом и откат к Flash для браузеров, которые его не поддерживают:

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  </head>
  <body>
    <audio autoplay controls preload="auto" autobuffer> 
      <source src="trumpet.ogg" type="audio/ogg">
      <source src="trumpet.mp3" type="audio/mp3">
      <source src="trumpet.wav" type="audio/wav">
      <source src="trumpet.m4a" type="audio/aac">

      <!-- Flash fallback -->
      <object width="1" height="1" type="application/x-shockwave-flash" data="player.swf">
        <param name="movie" value="player.swf">
        <param name="flashvars" value="file=trumpet.mp3">
      </object>
    </audio>
  </body>
</html>

Все файлы возвращаются службой с правильным типом MIME в заголовке http. Решение отлично работает для всех браузеров, кроме Internet Explorer 9 и 10 (за исключением режима совместимости, поскольку там будет воспроизводиться файл Flash).

В этих двух браузерах я вижу элементы управления проигрывателем с сообщением об ошибке "Ошибка: неподдерживаемый тип аудио или неверный путь к файлу". Я пытался перетасовать порядок тегов источника, но не смог найти решение, позволяющее воспроизвести любой из них.

У кого-нибудь есть подсказка что проверять или что тут не так?

Пожалуйста, смотрите http://l.urff.at/html5audioexample для вышеупомянутой разметки в действии.

Заранее спасибо за любые полезные советы или подсказки!:)

1 ответ

Ваш пример отлично работает для меня в IE10 на Windows 8.

Вы должны знать, что:

  • вам нужно только Ogg Vorbis и AAC (.m4a), чтобы охватить все браузеры..Wav и.mp3 не помогут.
  • некоторые форматы имеют сложные подформаты, например, файлы.wav могут содержать аудио MP3, файлы.m4a могут содержать определенные частоты дискретизации или битовую глубину, которые не могут поддерживаться конкретной системой, а файлы.ogg могут содержать видео или другой контент. Большинство браузеров не поддерживают все подформаты, поэтому вам следует тщательно проверять точные подформаты каждого используемого вами звука и убедиться, что они поддерживаются. 16-битная 44,1 кГц моно / стерео поддерживается почти всегда, поэтому постарайтесь не отклоняться от этого.
Другие вопросы по тегам