--- title: VideoTrack slug: Web/API/VideoTrack tags: - HTML - HTML DOM - Interface - Media - Reference - Video - VideoTrack - track translation_of: Web/API/VideoTrack ---
VideoTrack インターフェイスは、{{HTMLElement("video")}} 要素からの単一の動画トラックを表します。 VideoTrack オブジェクトにアクセスするための最も一般的な用途は、その {{HTMLElement("video")}} 要素のアクティブ動画トラックにするために、その {{domxref("VideoTrack.selected", "selected")}} プロパティを切り替えることです。
true に設定すると、アクティブであったトラックは非アクティブになります。"main" という kind があります。kind が "sign" のトラックには "手話通訳" という label が付いている場合があります。 ラベルが指定されていない場合、この文字列は空です。"en-US" または "pt-BR" などの BCP 47({{RFC(5646)}})言語コードとして指定されています。特定のメディア要素の VideoTrack を取得するには、その要素の {{domxref("HTMLMediaElement.videoTracks", "videoTracks")}} プロパティを使用します。 このプロパティは、メディアに含まれる個々のトラックを取得できる {{domxref("VideoTrackList")}} オブジェクトを返します。
var el = document.querySelector("video");
var tracks = el.videoTracks;
その後、配列の構文または {{jsxref("Array.forEach", "forEach()")}} などの関数を使用して、メディアの個々のトラックにアクセスできます。
この最初の例は、メディア上の最初の動画トラックを取得します。
var firstTrack = tracks[0];
次の例では、メディアのすべての動画トラックをスキャンして、(変数 userLanguage から取得した)ユーザーの優先言語の最初の動画トラックをアクティブにします。
for (var i = 0; i < tracks.length; i++) {
if (tracks[i].language === userLanguage) {
tracks[i].selected = true;
break;
}
});
{{domxref("VideoTrack.language", "language")}} は標準({{RFC(5646)}})形式です。 例えば、アメリカ英語の場合、これは "en-US" になります。
| 仕様 | 状態 | コメント |
|---|---|---|
| {{SpecName('HTML WHATWG', '#videotrack', 'VideoTrack')}} | {{Spec2('HTML WHATWG')}} |
{{Compat("api.VideoTrack")}}