Подтвердить что ты не робот

Как определить поддержку HTML5 аудио MP3?

Я знаю, как проверить Javascript, если доступно воспроизведение звука HTML5. Но как я могу конкретно проверить, доступно ли воспроизведение аудио MP3, как IE9 и Chrome поддерживают его, в то время как Firefox и Opera этого не делают.

4b9b3361

Ответ 1

Вы можете проверить User-Agent и посмотреть, какой браузер используется, или вы можете протестировать поддержку с помощью Javascript.

var a = document.createElement('audio');
return !!(a.canPlayType && a.canPlayType('audio/mpeg;').replace(/no/, ''));

Я получил приведенный выше код с этой страницы.

return!! (a.canPlayType) лучше, потому что (некоторые последние версии) Firefox не поддерживает mp3 и a.canPlayType('audio/mpeg;') будет false

Ответ 2

Modernizr - это библиотека для обнаружения функций. Вы можете использовать его для выполнения вашей работы.

В соответствии с документацией:

Если обнаружена поддержка звука, Modernizr оценивает, в каких форматах будет воспроизводиться текущий браузер. В настоящее время Modernizr тестирует ogg, mp3, wav и m4a.

Важно: значения этих свойств не являются истинными булевыми. Вместо этого Modernizr сопоставляет спецификацию HTML5 с возвратом строки, представляющей уровень уверенности браузера, который может обрабатывать этот кодек. Эти возвращаемые значения представляют собой пустую строку (отрицательный ответ), "возможно" и "возможно". Пустая строка является ложью, другими словами: Modernizr.audio.ogg == '' и '' == false

Ответ 3

var test_audio= document.createElement("audio") //try and create sample audio element 
var test_video= document.createElement("video") //try and create sample video element
var mediasupport={audio: (test_audio.play)? true : false, video: (test_video.play)? true :     false}

alert("Audio Element support: " + mediasupport.audio + "\n"
+ "Video Element support: " + mediasupport.video
)