MediaRecorder:stop() 方法
stop()
是 MediaRecorder
接口用于停止媒体捕获的方法。
当调用 stop()
方法时,UA 会排队一个任务,执行以下步骤
- 如果
MediaRecorder.state
为 "inactive",则引发 DOMInvalidState
错误并终止这些步骤。如果MediaRecorder.state
不为 "inactive",则继续执行下一步。 - 将
MediaRecorder.state
设置为 "inactive" 并停止捕获媒体。 - 引发一个
dataavailable
事件,其中包含已收集的数据的 Blob。 - 引发一个
stop
事件。
语法
js
stop()
参数
无。
返回值
无 (undefined
).
异常
InvalidStateError
DOMException
-
如果
MediaRecorder
当前处于"inactive"
状态,则抛出此异常;如果MediaRecorder
未处于活动状态,则无法停止录制。
示例
js
stop.onclick = () => {
mediaRecorder.stop();
console.log("recorder stopped, data available");
};
规范
规范 |
---|
MediaStream Recording # dom-mediarecorder-stop |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。
另请参阅
- 使用 MediaStream Recording API
- Web 录音机:MediaRecorder + getUserMedia + Web Audio API 可视化演示,作者 Chris Mills (GitHub 上的源代码。)
- simpl.info MediaStream Recording 演示,作者 Sam Dutton。
Navigator.getUserMedia