MediaRecorder: error イベント
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
error は MediaRecorder インターフェイスのイベントで、エラーが発生したときに発行されます。 例えば、記録が許可されていない、またはサポートされていないコーデックを使用して試みられたなどです。
このイベントはキャンセル不可で、バブリングしません。
構文
このイベント名を addEventListener() などのメソッドで使用sるうか、イベントハンドラープロパティを設定するかしてください。
addEventListener("event", (event) => {});
onevent = (event) => {};
イベント型
MediaRecorderErrorEvent です。 Event を継承しています。
イベントプロパティ
親インターフェイスである Event からプロパティを継承しています。
error読取専用-
DOMExceptionで、発生したエラーに関する情報を保持しています。
解説
>トリガー
レコーダーのライフタイム中にエラーが発生したときに呼び出される関数です。発生する可能性のある他の一般的なエラーに加えて、 MediaStream 収録 API を使用する際に特に以下のエラーが発生する可能性があります。どれが発生したか判断するには、 MediaRecorderErrorEvent.error.name の値を調べてみてください。
SecurityError-
MediaStreamが、収録を許可しないように設定されています。例えば、getUserMedia()を使用して取得したソースで、ユーザーが入力機器を使用する許可を拒否している場合などに該当する可能性があります。 InvalidModificationError-
収録中のストリームのトラック数が変更されました。メディアの記録中にトラックを追加したり削除したりすることはできません。
UnknownError-
セキュリティに関連しない、他に分類できないエラーが発生しました。 収録が停止し、
MediaRecorderのstateはinactiveとなり、最後に残りの受信データでdataavailableイベントがMediaRecorderに送られ、最後にstopイベントが送出されました。
例
addEventListener() を使って error イベントを待ち受けしてください。
async function record() {
const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
const recorder = new MediaRecorder(stream);
recorder.addEventListener("error", (event) => {
console.error(`error recording stream: ${event.error.name}`);
});
recorder.start();
}
record();
上と同じですが、 onerror イベントハンドラープロパティを使用します。
async function record() {
const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
const recorder = new MediaRecorder(stream);
recorder.onerror = (event) => {
console.error(`error recording stream: ${event.error.name}`);
};
recorder.start();
}
record();
仕様書
| Specification |
|---|
| MediaStream Recording> # dom-mediarecorder-onerror> |
ブラウザーの互換性
Loading…