Аудиодорожка
Ограниченное использование
Эта функция не относится к Baseline, поскольку она не работает в некоторых из самых широко используемых браузеров.
Интерфейс AudioTrack представляет собой отдельную аудиодорожку из одного из HTML-медиаэлементов, <audio> или <video>.
Наиболее распространённое использование объекта AudioTrack заключается в переключении его свойства enabled для отключения и включения звука дорожки.
Свойства экземпляра
enabled-
Булево значение, которое управляет включением/выключением звука аудиодорожки. Установка этого значения в
falseотключает звук дорожки. -
idТолько для чтения -
Строка, которая уникально идентифицирует дорожку в медиаданных. Этот идентификатор можно использовать для поиска конкретной дорожки в списке аудиодорожек, вызвав
AudioTrackList.getTrackById(). Идентификатор также может использоваться как фрагмент URL, если медиа поддерживает поиск по фрагментам медиа в соответствии со спецификацией URI фрагментов медиа. -
kindТолько для чтения -
Строка, определяющая категорию, к которой принадлежит дорожка. Например, основная аудиодорожка будет иметь
kind"main". -
labelТолько для чтения -
Строка, предоставляющая удобочитаемое имя дорожки. Например, аудиокомментарий к фильму может иметь
label"Commentary with director John Q. Public and actors John Doe and Jane Eod.". Эта строка пуста, если метка не указана. -
languageТолько для чтения -
Строка, определяющая основной язык аудиодорожки или пустая строка, если язык неизвестен. Язык задаётся в формате BCP 47 (RFC 5646), например
"en-US"или"pt-BR". -
sourceBufferТолько для чтения -
SourceBufferсоздавший дорожку. Возвращает null, если дорожка не была создана с помощьюSourceBufferили еслиSourceBufferбыл удалён из атрибутаMediaSource.sourceBuffersродительского источника медиа.
Примечания по использованию
Чтобы получить AudioTrack для данного медиаэлемента, используйте свойство audioTracks элемента, которое возвращает объект AudioTrackList, из которого можно получить отдельные дорожки, содержащиеся в медиа:
const el = document.querySelector("video");
const tracks = el.audioTracks;
Затем вы можете получить доступ к отдельным дорожкам медиа, используя синтаксис массивов или функции, такие как forEach().
В этом первом примере берется первая аудиодорожка в медиа:
const firstTrack = tracks[0];
Следующий пример просматривает все аудиодорожки медиа, включая те, которые на языке пользователя (взятом из переменной userLanguage), и отключает остальные.
tracks.forEach((track) => {
track.enabled = track.language === userLanguage;
});
Свойство language находится в стандартном формате (RFC 5646). Для английского языка США это будет, например, "en-US".
Пример
См. AudioTrack.label для примера получения массива типов и названий дорожек для указанного медиаэлемента, отфильтрованного по типу.
Спецификации
| Спецификация |
|---|
| HTML # audiotrack |
Совместимость с браузерами
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
AudioTrack |
37 | 7912–79 | 33 | 24 | 8 | 37 | Нет | Нет | 8 | Нет | Нет |
enabled |
37 | 7912–79 | 33 | 24 | 8 | 37 | Нет | Нет | 8 | Нет | Нет |
id |
37 | 7912–79 | 33 | 24 | 8 | 37 | Нет | Нет | 8 | Нет | Нет |
kind |
37 | 7912–79 | 33 | 24 | 8 | 37 | Нет | Нет | 8 | Нет | Нет |
label |
37 | 7912–79 | 33 | 24 | 8 | 37 | Нет | Нет | 8 | Нет | Нет |
language |
37 | 7912–79 | 33 | 24 | 8 | 37 | Нет | Нет | 8 | Нет | Нет |
sourceBuffer |
51 | 7912–79 | Нет | 38 | 8 | 51 | Нет | Нет | 13Доступно в Mobile Safari на iPad, но не на iPhone. |
Нет | Нет |
© 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/AudioTrack