Список видеодорожек
Ограниченная доступность
Эта функция не входит в Baseline, так как она не работает в некоторых из самых распространённых браузеров.
Интерфейс VideoTrackList используется для представления списка видеодорожек, содержащихся в элементе <video>, причём каждая дорожка представлена отдельным объектом VideoTrack в списке.
Получить экземпляр этого объекта можно с помощью HTMLMediaElement.videoTracks. Доступ к отдельным дорожкам можно получить с помощью синтаксиса массивов или функций, таких как forEach().
Свойства экземпляра
Этот интерфейс также наследует свойства от своего родительского интерфейса EventTarget.
-
lengthТолько для чтения -
Количество дорожек в списке.
-
selectedIndexТолько для чтения -
Индекс текущей выбранной дорожки, если таковая есть, или
−1в противном случае.
Методы экземпляра
Этот интерфейс также наследует методы от своего родительского интерфейса EventTarget.
getTrackById()-
Возвращает
VideoTrack, найденную вVideoTrackList, идентификатор которой (id) соответствует указанной строке. Если совпадения не найдено, возвращаетсяnull.
События
addtrack-
Срабатывает, когда новая видеодорожка добавлена в элемент мультимедиа. Также доступно через свойство
onaddtrack. change-
Срабатывает, когда видеодорожка стала активной или неактивной. Также доступно через свойство
onchange. removetrack-
Срабатывает, когда новая видеодорожка удалена из элемента мультимедиа. Также доступно через свойство
onremovetrack.
Примечания к использованию
Помимо прямого доступа к видеодорожкам в элементе мультимедиа, VideoTrackList позволяет устанавливать обработчики событий на события addtrack и removetrack, чтобы определять добавление или удаление дорожек из потока элемента мультимедиа.
Примеры
Получение списка видеодорожек элемента мультимедиа
Чтобы получить список видеодорожек элемента мультимедиа, используйте свойство videoTracks.
const videoTracks = document.querySelector("video").videoTracks;
Отслеживание изменений количества дорожек
В этом примере приложение отображает информацию о доступных каналах. Для поддержания актуальности настроены обработчики событий addtrack и removetrack.
videoTracks.onaddtrack = updateTrackCount;
videoTracks.onremovetrack = updateTrackCount;
function updateTrackCount(event) {
trackCount = videoTracks.length;
drawTrackCountIndicator(trackCount);
}
Спецификации
| Спецификация |
|---|
| HTML # audiotracklist-and-videotracklist-objects |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
VideoTrackList |
37 | 7912–79 | 33 | 24 | 7 | 37 | Нет | Нет | 7 | Нет | Нет |
addtrack_event |
37 | 7912–79 | 33 | 24 | 7 | 37 | Нет | Нет | 7 | Нет | Нет |
change_event |
37 | 7912–79 | 33 | 24 | 7 | 37 | Нет | Нет | 7 | Нет | Нет |
getTrackById |
37 | 7912–79 | 33 | 24 | 7 | 37 | Нет | Нет | 7 | Нет | Нет |
length |
37 | 7912–79 | 33 | 24 | 7 | 37 | Нет | Нет | 7 | Нет | Нет |
removetrack_event |
37 | 7912–79 | 33 | 24 | 7 | 37 | Нет | Нет | 7 | Нет | Нет |
selectedIndex |
37 | 7912–79 | 33 | 24 | 7 | 37 | Нет | Нет | 7 | Нет | Нет |
© 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/VideoTrackList