HTMLMediaElement: метод canPlayType()
Базовая реализация Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Метод HTMLMediaElement canPlayType() показывает вероятность воспроизведения медиафайла заданного MIME типа текущим браузером.
Синтаксис
canPlayType(type)
Параметры
type-
Строка, определяющая MIME тип медиа и (необязательно)
codecsпараметр, содержащий список поддерживаемых кодеков, разделённый запятыми.
Возвращаемое значение
Строка, указывающая вероятность воспроизведения медиа. Строка будет иметь одно из следующих значений:
""(пустая строка)-
Медиафайл не может быть воспроизведён на текущем устройстве.
probably-
Медиафайл, вероятно, воспроизведётся на данном устройстве.
maybe-
Недостаточно информации для определения возможности воспроизведения медиа (до фактической попытки воспроизведения).
Примеры
let obj = document.createElement("video");
console.log(obj.canPlayType("video/mp4")); // "maybe"
Спецификации
| Спецификация |
|---|
| HTML # dom-navigator-canplaytype-dev |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
canPlayType |
3["codecs строка может содержать любой подмножество необязательных параметров (должны быть все или ни одного).", "Возникает ошибка, если codecs строка содержит неожиданные символы (должен вычисляться строка до символа)."] |
12["codecs строка может содержать любой подмножество необязательных параметров (должны быть все или ни одного).", "Возникает ошибка, если codecs строка содержит неожиданные символы (должен вычисляться строка до символа)."] |
3.5["Перед Firefox 28,canPlayType() возвращало probably при запросе о WebM аудио или видео файлах без codecs параметра. Поскольку поддерживается несколько кодеков, этой информации недостаточно, чтобы определить, может ли файл воспроизводиться, поэтому maybe теперь правильно возвращается.", "Перед Firefox 101, canPlayType() игнорировал codecs параметры для av01 кодеков (обращаясь к ним как av1)."] |
≤12.1["codecs строка может содержать любой подмножество необязательных параметров (должны быть все или ни одного).", "Возникает ошибка, если codecs строка содержит неожиданные символы (должен вычисляться строка до символа)."] |
4 | 18["codecs строка может содержать любой подмножество необязательных параметров (должны быть все или ни одного).", "Возникает ошибка, если codecs строка содержит неожиданные символы (должен вычисляться строка до символа)."] |
4["Перед Firefox for Android 28,canPlayType() возвращало probably при запросе о WebM аудио или видео файлах без codecs параметра. Поскольку поддерживается несколько кодеков, этой информации недостаточно, чтобы определить, может ли файл воспроизводиться, поэтому maybe теперь правильно возвращается.", "Перед Firefox for Android 101, canPlayType() игнорировал codecs параметры для av01 кодеков (обращаясь к ним как av1)."] |
≤12.1["codecs строка может содержать любой подмножество необязательных параметров (должны быть все или ни одного).", "Возникает ошибка, если codecs строка содержит неожиданные символы (должен вычисляться строка до символа)."] |
3 | 1.0["codecs строка может содержать любой подмножество необязательных параметров (должны быть все или ни одного).", "Возникает ошибка, если codecs строка содержит неожиданные символы (должен вычисляться строка до символа)."] |
≤37["codecs строка может содержать любой подмножество необязательных параметров (должны быть все или ни одного).", "Возникает ошибка, если codecs строка содержит неожиданные символы (должен вычисляться строка до символа)."] |
См. также
-
HTMLMediaElement: Интерфейс, используемый для определения методаHTMLMediaElement.canPlayType() MediaCapabilities- Обработка проблем с поддержкой медиа в веб-контенте
- Руководство по типам и форматам медиа
- Кодеки в распространённых типах медиа
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/canPlayType