MediaRecorderErrorEvent: thuộc tính error
Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.
Non-standard: This feature is not standardized. We do not recommend using non-standard features in production, as they have limited browser support, and may change or be removed. However, they can be a suitable alternative in specific cases where no standard option exists.
Thuộc tính chỉ đọc error của giao diện MediaRecorderErrorEvent là đối tượng DOMException cung cấp chi tiết về ngoại lệ được ném bởi phiên bản MediaRecorder.
Khi MediaRecorderErrorEvent xảy ra, bạn có thể xác định phần nào đó về những gì đã xảy ra sai bằng cách kiểm tra thuộc tính error trong MediaRecorderErrorEvent nhận được bởi trình xử lý sự kiện error của MediaRecorder, onerror.
Giá trị
Một DOMException mô tả lỗi được đại diện bởi sự kiện. Giá trị thuộc tính name của lỗi có thể là bất kỳ ngoại lệ nào hợp lý trong quá trình xử lý ghi phương tiện, bao gồm những ngoại lệ được đặc tả xác định cụ thể. Mô tả ở đây là những mô tả chung; bạn sẽ tìm thấy những mô tả cụ thể hơn cho các tình huống khác nhau trong đó chúng có thể xảy ra trong các tham chiếu phương thức tương ứng.
InvalidStateError-
Một thao tác đã được thử trong ngữ cảnh mà nó không được phép, hoặc một yêu cầu đã được thực hiện trên đối tượng đã bị xóa hoặc loại bỏ.
NotSupportedError-
Không thể tạo
MediaRecordervì các tùy chọn được chỉ định không hợp lệ. Thuộc tínhmessagenên cung cấp thông tin bổ sung, nếu tồn tại. SecurityError-
MediaStreamđược cấu hình để không cho phép ghi. Điều này có thể xảy ra, ví dụ, với các nguồn thu được bằnggetUserMedia()khi người dùng từ chối quyền sử dụng thiết bị đầu vào. InvalidModificationError-
Số track trên luồng đang ghi đã thay đổi. Bạn không thể thêm hoặc xóa track trong khi ghi phương tiện.
UnknownError-
Lỗi không liên quan đến bảo mật đã xảy ra và không thể phân loại theo cách khác. Ghi dừng,
statecủaMediaRecordertrở thànhinactive, một sự kiệndataavailablecuối cùng được gửi đếnMediaRecordervới dữ liệu còn lại nhận được, và cuối cùng sự kiệnstopđược gửi.
Ví dụ
>Ví dụ xử lý lỗi cơ bản
Hàm này tạo và trả về MediaRecorder cho MediaStream đã cho, được cấu hình để đệm dữ liệu vào mảng và xem để phát hiện lỗi.
function recordStream(stream) {
let recorder = null;
let bufferList = [];
try {
recorder = new MediaRecorder(stream);
} catch (err) {
/* exception while trying to create the recorder; handle that */
}
recorder.ondataavailable = (event) => {
bufferList.push(event.data);
};
recorder.onerror = (event) => {
console.error(`Error: ${event.error}`);
};
recorder.start(100); /* 100ms time slices per buffer */
return recorder;
}
Thông số kỹ thuật
Tính năng này không còn là một phần của bất kỳ đặc tả nào và không còn theo hướng trở thành tiêu chuẩn.