AudioTrackList

AudioTrackList インターフェイスは、所与の HTML メディア要素内に含まれる音声トラックのリストを表すために使用します。 各トラックはリスト内の別々の AudioTrack オブジェクトで表します。

HTMLMediaElement.audioTracks を使用してこのオブジェクトのインスタンスを取得します。 個々のトラックは、配列構文を使用してアクセスできます。

EventTarget AudioTrackList

インスタンスプロパティ

このインターフェイスは、その親インターフェイスである EventTarget からプロパティを継承しています。

length 読取専用

リスト内のトラック数。

インスタンスメソッド

このインターフェイスは、その親インターフェイスである EventTarget からメソッドを継承しています。

getTrackById()

指定された文字列と一致する id を持つ AudioTrackList 内で見つかった AudioTrack を返します。 一致が見つからない場合は、null を返します。

イベント

addtrack

新しい音声トラックがメディア要素に追加されたときに発生します。

change

トラックが有効または無効にされたときに発生します。

removetrack

音声トラックがメディア要素から取り除かれたときに発生します。

使用上のメモ

AudioTrackList を使用すると、メディア要素にある音声トラックに直接アクセスできるだけでなく、addtrack イベントと removetrack イベントにイベントハンドラーを設定できるため、メディア要素のストリームにトラックが追加されたときまたは取り除かれたときに検出できます。 詳細と例については、addtrackremovetrack を参照してください。

メディア要素の音声トラックリストの取得

メディア要素の AudioTrackList を取得するには、その audioTracks プロパティを使用します。

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

トラック数の変化の監視

この例では、利用可能なチャンネル数に関する情報を表示するアプリがあります。 それを最新に保つために、 addtrack イベントと removetrack イベントのためのハンドラを設定しています。

js
audioTracks.onaddtrack = updateTrackCount;
audioTracks.onremovetrack = updateTrackCount;

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

仕様書

Specification
HTML Standard
# audiotracklist-and-videotracklist-objects

ブラウザーの互換性

BCD tables only load in the browser