MediaStreamTrack: ended イベント

endedMediaStreamTrack インターフェイスのイベントで、メディアの終端に到達したため、あるいはそれ以上のデータが利用できないために再生やストリーミングが停止したときに発行さ れます。

このイベントはキャンセル不可で、バブリングしません。

構文

このイベント名を addEventListener() のようなメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。

js
addEventListener("ended", (event) => {});

onended = (event) => {};

イベント型

一般的な Event です。

使用上のメモ

ended イベントは、メディアストリームトラックのソースがストリームのデータ送信を恒久的に停止したときに発行されます。これが起こるには、以下のような様々な方法があります。

  • 送信できるデータが残っていない。
  • ユーザーがデータ送信に必要な権限を剥奪した。
  • 送信元データを生成していたハードウェアが取り外されたか、排出された。
  • リモート通信相手がデータの送信を永久に停止した。メディアを

この例では、 ended イベントのイベントハンドラーを設定しています。このイベントハンドラーでは、トラックがアクティブでない状態を示すために画面上のアイコンを変更します。

js
track.addEventListener("ended", () => {
  let statusElem = document.getElementById("status-icon");
  statusElem.src = "/images/stopped-icon.png";
});

onended プロパティを使用してイベントハンドラーを設定することもできます。

js
track.onended = function () {
  let statusElem = document.getElementById("status-icon");

  statusElem.src = "/images/stopped-icon.png";
};

仕様書

Specification
Media Capture and Streams
# dom-mediastreamtrack-onended

ブラウザーの互換性

BCD tables only load in the browser

関連情報

  • HTMLMediaElement の playing イベント
  • HTMLMediaElement の waiting イベント
  • HTMLMediaElement の seeking イベント
  • <audio>
  • <video>
  • HTMLMediaElement の ended イベント
  • AudioScheduledSourceNode の ended イベント