MediaStreamTrack インタフェースは、ストリームに含まれる一つのメディアトラックを表現します。 一般的に、オーディオやビデオのトラックですが、他の種類のトラックも存在することができます。

プロパティ

以下に示すプロパティに加えて、MediaStreamTrackは制約可能なプロパティを持っています。これらのプロパティは、applyConstraints()によって設定でき、getConstraints()getSettings()によって取得できます。制約可能なプロパティを用いて適切に動作させるためにはどのようにすればいいかを知りたい場合は、Capabilities, constraints, and settingsを見てください。適切に動作させなかった場合の結果として、あなたが作成したコードは信頼できないものになります。

MediaStreamTrack.contentHint
このプロパティは文字列でありWebアプリケーションによって使用されます。APIの利用者がどの様にして扱うべきかをガイドするためのヒント情報としてトラックが含んでいるコンテンツのタイプを提供します。
MediaStreamTrack.enabled
このプロパティはBoolean型です。トラックが有効の場合はtrueの値になり、メディアソースストリームを描画することができます。 トラックが無効の場合はfalseの値になり、メディアソースストリームに描画されません。トラックの接続が解除された場合、この値は変更することはできますが影響を与えることはありません。
MediaStreamTrack.id 読取専用
トラックの固有識別子(GUID)を含むDOMStringを返します。この識別子はブラウザによって生成されます。
MediaStreamTrack.kind 読取専用
DOMStringを返します。このトラックがオーディオトラックの場合は"audio"が設定され、ビデオトラックの場合は"video"が設定されます。ソースからの関連付けが解除された場合、この値が変更されることはありません。
MediaStreamTrack.label 読取専用
"internal microphone"のようなトラックソースを識別するユーザエージェントによって割り当てられたラベルを含むDOMStringを返します。この文字列は空になることもあり、ソースが接続されていないと空になります。トラックのソースとの関連付けが解除されても、このラベルは変更されません。
MediaStreamTrack.muted 読取専用
Booleanの値を返します。トラックがミュートであるかどうかを示します。
MediaStreamTrack.readonly 読取専用
Booleanの値を返します。トラックが読み取り専用の場合(ビデオファイルソースやカメラなどの設定を変更することができないもののような)はtrueを返し、それ以外の場合はfalseを返します。
MediaStreamTrack.readyState 読取専用
トラックの状態を表す列挙型の値を返します。この値は次のどれかになります。
  • "live"は入力デバイスが接続されており、ベストエフォートでリアルタイムなデータを提供することを表します。この状態では、MediaStreamTrack.enabled属性を用いることで、データの出力のオンとオフを切り替えることができます。
  • "ended"は入力デバイスがこれ以上データを提供することがなく、新しいデータも一切提供されないことを示します。
MediaStreamTrack.remote  読取専用
Booleanの値を返します。トラックのソースがRTCPeerConnectionの場合はtrueであり、それ以外はfalseです。

イベントハンドラ

MediaStreamTrack.onstarted
startedイベントが発生した時に実行する処理を含むEventHandlerです。このイベントは新しいMediaStreamTrackオブジェクトが追加された時に発生します。
MediaStreamTrack.onmute
muteイベントが発生した時に実行する処理を含むEventHandlerです。このイベントは、MediaStreamTrackオブジェクトのソースが一時的にデータを提供することができない時に発生します。
MediaStreamTrack.onunmute
unmuteイベントが発生した時に実行する処理を含むEventHandlerです。このイベントは、MediaStreamTrackオブジェクトのソースが一時的にデータを提供できない状態から復帰した時に発生します。
MediaStreamTrack.onoverconstrained
overconstrainedイベントが発生した時に実行する処理を含むEventHandlerです。このエラーイベントは、影響を受けた各トラック(複数のトラックが同一のソースを共有している時)で発生します。このイベントは、ユーザエージェントが与えられたソースに対して現在の制約を評価し、与えられた制約でソースを設定することができない時に発生します。 過制約のため、ユーザエージェントは影響をうけた各トラックをミュートにします。影響を受けたトラックは、現在のソースの有効な能力に配慮してアプリケーションが制約を調整するまでmutedの状態を維持します。
MediaStreamTrack.onended
endedイベントが発生した時に実行する処理を含むEventHandlerです。このイベントは、MediaStreamTrackオブジェクトのソースが、これ以上データを提供することがないか、ユーザーの操作によって許可が無効になったか、ソースデバイスが取り出されたか、リモートのピアがデータの送信を停止した時に発生します。

メソッド

MediaStreamTrack.applyConstraints()
MediaStreamTrackの有効な制約可能な値についての許容できる値の範囲を指定します。
MediaStreamTrack.clone()
MediaStreamTrackの複製を返します。
MediaStreamTrack.getCapabilities()
MediaStreamTrackで有効な制約可能なプロパティの一覧を返します。
MediaStreamTrack.getConstraints()
トラックに設定されている制約を含むMediaTrackConstraintsを返します。戻り値は、最後にapplyConstraints()を用いて設定した制約に一致します。
MediaStreamTrack.getSettings()
MediaStreamTrackの制約可能なプロパティの値を含むMediaTrackSettingsオブジェクトを返します。
MediaStreamTrack.stop()
トラックに関連付けられたソースの再生を停止し、ソースとトラックの関連付けを解除します。トラックの状態はendedに設定されます。

仕様

仕様 状態 コメント
Media Capture and Streams
MediaStreamTrack の定義
勧告改訂案 初版

ブラウザ互換性

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support (有) (有) 22 (22) 未サポート (有) (有)
applyConstraints() 未サポート (有) (有) ? 未サポート (有)
clone() (有) ? 48 (48) ? (有) ?
contentHint 60 ? ? ? 47 ?
enabled (有) ? 23 (23) (有) (有) (有)
getConstraints() 53 ? 50 (50) ? 40 ?
getSettings() 53 ? 50 (50) ? 40 ?
getSources() (有)
Removed 56
? 未サポート ? (有)
Removed 43
?
id (有) ? 22 (22) ? (有) ?
kind (有) ? 22 (22) ? (有) ?
label (有) ? 22 (22) ? (有) ?
muted (有) ? 未サポート ? (有) ?
onmute (有) ? 未サポート ? (有) ?
onoverconstrained 未サポート ? 未サポート ? (有) ?
onended (有) ? 50 (50) ? (有) ?
onunmute (有) ? 未サポート ? (有) ?
readyState (有) ? 50 (50) ? (有) ?
remote 48
Removed 59
? 未サポート ? 35
Removed 46
?
stop() (有) ? 34 (34) ? (有) ?
Feature Android Webview Chrome for Android Edge Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support (有) (有) (有) 22.0 (22) 未サポート (有) ?
applyConstraints() 未サポート 未サポート (有) (有) 未サポート 未サポート ?
clone() (有) ? ? ? ? (有) ?
contentHint 60 60 ? ? ? 47 ?
enabled (有) ? ? (有) (有) (有) ?
getConstraints() 53 52.0 ? 50 (50) 未サポート 40 ?
getSettings() 53 ? ? ? ? 40 ?
getSources() (有)
Removed 56
56 ? ? ? (有)
Removed 43
?
id (有) ? ? ? ? (有) ?
kind (有) ? ? ? ? (有) ?
label (有) ? ? ? ? (有) ?
muted (有) ? ? ? ? (有) ?
onended (有) ? ? ? ? (有) ?
onmute (有) ? ? ? ? (有) ?
onoverconstrained 未サポート ? ? ? ? (有) ?
onunmute (有) ? ? ? ? (有) ?
readyState (有) ? ? ? ? (有) ?
remote 48
Removed 59
48
Removed 59
? 未サポート 未サポート 35
Removed 46
?
stop() (有) (有) ? 34.0 (34) 未サポート (有) ?

関連項目

ドキュメントのタグと貢献者

 このページの貢献者: e53e04ac
 最終更新者: e53e04ac,