get-user-media-promise浏览器摄像头封装模块
浏览器的getUserMedia
的 Promise 封装,用起来还挺方便的。get-user-media-promise就是这么个小巧的工具,专门老 API 的回调地狱问题,顺手包一下新版的navigator.mediaDevices.getUserMedia
。
压缩后不到 0.5KB,真挺轻的。你项目里用browserify
、webpack
这些打包工具的话,它就是个小马填充,不会污染全局。单独引入也行,它会挂到全局上当polyfill
用。
它不搞什么跨浏览器兼容的复杂约束,就是一个基础包装。所以你要是搞那种带细致控制的音视频项目,比如精细调节麦克风增益之类的,就不太够用了。但你要是做个视频聊天小工具,或者想快速调起摄像头录段小视频,那用这个刚好。
安装也挺:
npm install --save get-user-media-promise
或者你用 Bower 的话:
bower install --save get-user-media-promise
懒得装包也行,GitHub 上可以直接下载单文件版本。
用法也清爽,比如:
const getUserMedia = require('get-user-media-promise');
getUserMedia({ video: true, audio: true })
.then(stream => {
// 拿到 stream 直接用就行,比如赋值给<video>
})
.catch(err => {
// 用户拒绝授权或者设备不可用
});
如果你常用getUserMedia
但又不想每次都写一堆navigator.mediaDevices
判断,挺推荐你试试它。要深入了解音视频的高级玩法,可以顺手看看这几篇文章:
51.33KB
文件大小:
评论区