track 要素

4.7.9 track 要素

カテゴリー:
なし
この要素を使うことができるコンテキスト:
メディア要素の子として。ただし、あらゆるフロー・コンテントより前。
コンテントモデル:
コンテント属性:
グローバル属性
kind - テキストトラックのタイプ
src - リソースのアドレス
srclang - テキストトラックの言語
label - ユーザーに見せるラベル
default - より適切なテキストトラックが他にない場合に該当のトラックを有効にする
text/html におけるタグの省略:
終了タグはありません。
指定可能な ARIA role 属性 の値:
なし
指定可能な ARIA ステートとプロパティ属性:
グローバル aria-* 属性
DOM インタフェース:
interface HTMLTrackElement : HTMLElement {
           attribute DOMString kind;
           attribute DOMString src;
           attribute DOMString srclang;
           attribute DOMString label;
           attribute boolean default;

  const unsigned short NONE = 0;
  const unsigned short LOADING = 1;
  const unsigned short LOADED = 2;
  const unsigned short ERROR = 3;
  readonly attribute unsigned short readyState;

  readonly attribute TextTrack track;
};

track 要素は、ウェブ制作者がメディア要素に対して明示的な外部の同期テキストトラックを指定できるようにします。これ自身では何も表しません。

kind 属性は列挙属性です。次表は、この属性に定義されたキーワードをリストにしたものです。各行の最初のセルのキーワードは、二つ目のセルの状態に対応します。

キーワード 状態 概略
subtitles Subtitles 会話の書き起こしや翻訳。音声は利用できるけれども理解ができないときに適しています(例えば、ユーザーがメディアリソースの音声トラックの言語を理解できない、といった場合)。ビデオに重ねて表示されます。
captions Captions 会話の書き起こしや翻訳、音声効果、関連のミュージカル・キュー、そのほか、関連のオーディオ情報。音声トラックが利用できないときや、はっきりと聞き取れないときに適しています(ミュートされているときや、周囲の騒音でかき消されてしまうときや、ユーザーが聴覚障害者である、といった場合)。ビデオに重ねて表示されます。難聴向けとして分類表示されます。
descriptions Descriptions メディアリソースのビデオ・コンポーネントのテキスト記述。表示系がよく見えない状態だったり、使えない状態だったり、役に立たない場合の音声合成を想定しています(ユーザーが運転中にスクリーンを見ずにアプリケーションを操作したり、ユーザーが聴覚障害である、といった場合)。オーディオとして合成されます。
chapters Chapters チャプターのタイトル。メディアリソースの再生位置を移動するために使うことを想定しています。ユーザーエージェントのインタフェースにインタラクティブ・リスト(ネストされる場合もある)として表示されます。
metadata Metadata スクリプトから利用する目的のトラック。ユーザーエージェントによって表示されません。

この属性は省略することができます。指定がなかった場合のデフォルトは、subtitles 状態です。

src 属性には、テキストトラックのデータのアドレスを指定します。この値は、潜在的にスペースで囲まれた空でない妥当な URL でなければいけません。この属性は必須です。

この要素が src 属性を持ち、その値が空文字列ではなく、そして、この属性がセットされたときに、その値がこの要素に対して問題なく解決できたのであれば、この要素のトラック URL は、その結果として得られる絶対 URL となります。そうでなければ、この要素のトラック URL は、空文字列となります。

この要素のトラック URLWebVTT リソースを識別し、この要素の kind 属性が metadata 状態になければ、その WebVTT ファイルは キュー・テキストを使う WebVTT ファイルでなければいけません。 [WEBVTT]

さらに、この要素のトラック URLWebVTT リソースを識別し、この要素の kind 属性が chapters 状態にあれば、その WebVTT ファイルは、チャプター・タイトル・テキストを使う WebVTT ファイルであり、かつ、ネストされたキューのみを使う WebVTT ファイルでなければいけません。 [WEBVTT]

srclang 属性は、テキスト・トラック・データの言語を与えます。この値は、妥当な BCP 47 言語タグでなければいけません。この属性は、この要素の kind 属性が subtitles 状態にあるなら、必須です。 [BCP47]

この要素が srclang 属性を持ち、その値が空文字列ではないなら、この要素のトラック言語は、この属性の値となります。そうでなければ、この要素はトラック言語を持ちません。

label 属性は、トラックに対してユーザー可読タイトルを与えます。このタイトルは、ユーザーエージェントがそのユーザー・インタフェースの中に subtitle, caption, audio description トラックをリスト表示する際に使われます。

label 属性の値は、この属性が存在していれば、空文字列であってはなりません。さらに、kind 属性が同じ状態にある、srclang 属性が双方に存在しないか同じ言語を表す値を持っている、そして、label 属性が双方に存在しないか同じ値を持っている、といった 2 つの track 要素が同じメディア要素の中に存在してはいけません。

この要素が label 属性を持ち、その値が空文字列でなければ、この要素のトラック・ラベルは、その属性の値になります。そうでなければ、この要素のトラック・ラベルは空文字列となります。

default 属性は論理属性です。指定されたら、ユーザー設定において他のトラックの方が適していると示されていなければ、そのトラックが有効であることを指示します。

それぞれのメディア要素は、kind 属性が subtitlescaptions 状態にあり、かつ、default 属性が指定されている track 要素を、子として 1 つしか持つことができません。

それぞれのメディア要素は、kind 属性が description 状態にあり、かつ、default 属性が指定された track 要素を、子として 1 つしか持つことができません。

それぞれのメディア要素は、kind 属性が chapters 状態にあり、default 属性が指定された track 要素を、子として 1 つしか持つことができません。

kind 属性が metadata 状態にあり、かつ、default 属性が指定された track 要素の数に制限はありません。

track . readyState

テキストトラック読取状態を返します。これは、次のリストにある数字によって表されます:

track . NONE (0)

text track not loaded状態。

track . LOADING (1)

text track loading状態。

track . LOADED (2)

text track loaded状態。

track . ERROR (3)

text track failed to load状態。

track . track

track 要素のテキストトラックに対応する TextTrack オブジェクトを返します。

readyState 属性は、次のリストに定義されている通り、track 要素のテキストトラックテキストトラック読取状態に対応する数値を返さなければいけません:

NONE (数値 0)
text track not loaded 状態。
LOADING (数値 1)
text track loading 状態。
LOADED (数値 2)
text track loaded 状態。
ERROR (数値 3)
text track failed to load 状態。

track IDL 属性は、取得時においては、track 要素のテキストトラックに対応する TextTrack オブジェクトを返さなければいけません。

src, srclang, label, default IDL 属性は、それぞれ同じ名前のコンテント属性を反映しなければいけません。kind IDL 属性は同じ名前のコンテント属性を反映しなければいけませんが、既知の値のみに限定されます。

このビデオにには、いくつかの言語の字幕があります:

<video src="brave.webm">
 <track kind=subtitles src=brave.en.vtt srclang=en label="English">
 <track kind=captions src=brave.en.hoh.vtt srclang=en label="English for the Hard of Hearing">
 <track kind=subtitles src=brave.fr.vtt srclang=fr lang=fr label="Français">
 <track kind=subtitles src=brave.de.vtt srclang=de lang=de label="Deutsch">
</video>

(最後の 2 つの lang 属性は label 属性の言語を説明していますが、サブタイトルそのものの言語ではありません。サブタイトルの言語は、srclang 属性によって与えられます。)


※ 原文:http://www.w3.org/TR/2014/REC-html5-20141028/embedded-content-0.html#the-track-element