通八洲科技

javascript怎样进行屏幕录制?_javascript的MediaRecorder API如何使用?

日期:2025-12-17 00:00 / 作者:夢幻星辰
JavaScript可通过MediaRecorder API配合getDisplayMedia()实现浏览器内屏幕录制,需用户授权且仅限HTTPS或localhost安全上下文,须在用户手势触发下调用,支持Chrome、Edge、Firefox,Safari暂不支持。

JavaScript 本身不能直接录制屏幕,但可以通过 MediaRecorder API 配合 getDisplayMedia() 获取屏幕流,实现浏览器内的屏幕录制。这个功能需要用户主动授权,且仅在安全上下文(httpslocalhost)中可用。

获取屏幕媒体流

调用 navigator.mediaDevices.getDisplayMedia() 请求用户选择要共享的屏幕、窗口或标签页。它返回一个 Promise,成功后得到一个 MediaStream 对象:

创建并启动 MediaRecorder

拿到 stream 后,用它初始化 MediaRecorder 实例:

处理录制数据与下载

dataavailable 事件中收集 Blob,并在停止后合并为完整视频文件:

注意事项与兼容性

实际使用中需关注以下几点:

基本上就这些。不复杂但容易忽略权限和上下文限制,动手前先确保是 https 环境并由用户点击触发。