VideoTrackList

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Giao diện VideoTrackList được dùng để đại diện cho danh sách các video track có trong phần tử <video>, với mỗi track được đại diện bởi một đối tượng VideoTrack riêng biệt trong danh sách.

Lấy một phiên bản của đối tượng này bằng HTMLMediaElement.videoTracks. Các track riêng lẻ có thể được truy cập bằng cú pháp mảng hoặc các hàm như forEach().

EventTarget VideoTrackList

Thuộc tính phiên bản

Giao diện này cũng kế thừa các thuộc tính từ giao diện cha của nó, EventTarget.

length Read only

Số lượng track trong danh sách.

selectedIndex Read only

Chỉ số của track đang được chọn, nếu có, hoặc −1 nếu không.

Phương thức phiên bản

Giao diện này cũng kế thừa các phương thức từ giao diện cha của nó, EventTarget.

getTrackById()

Trả về VideoTrack tìm thấy trong VideoTrackListid khớp với chuỗi được chỉ định. Nếu không tìm thấy, trả về null.

Sự kiện

addtrack

Được kích hoạt khi một video track mới đã được thêm vào phần tử media. Cũng có thể sử dụng qua thuộc tính onaddtrack.

change

Được kích hoạt khi một video track đã được kích hoạt hoặc hủy kích hoạt. Cũng có thể sử dụng qua thuộc tính onchange.

removetrack

Được kích hoạt khi một video track mới đã bị xóa khỏi phần tử media. Cũng có thể sử dụng qua thuộc tính onremovetrack.

Ghi chú sử dụng

Ngoài khả năng truy cập trực tiếp vào các video track có trên phần tử media, VideoTrackList cho phép bạn đặt trình xử lý sự kiện trên các sự kiện addtrackremovetrack, để bạn có thể phát hiện khi track được thêm vào hoặc xóa khỏi luồng của phần tử media.

Ví dụ

Lấy danh sách video track của phần tử media

Để lấy VideoTrackList của phần tử media, hãy sử dụng thuộc tính videoTracks của nó.

js
const videoTracks = document.querySelector("video").videoTracks;

Giám sát thay đổi số lượng track

Trong ví dụ này, chúng ta có một ứng dụng hiển thị thông tin về số lượng kênh có sẵn. Để cập nhật thông tin này, trình xử lý cho các sự kiện addtrackremovetrack được thiết lập.

js
videoTracks.onaddtrack = updateTrackCount;
videoTracks.onremovetrack = updateTrackCount;

function updateTrackCount(event) {
  trackCount = videoTracks.length;
  drawTrackCountIndicator(trackCount);
}

Thông số kỹ thuật

Specification
HTML
# audiotracklist-and-videotracklist-objects

Tương thích trình duyệt