MediaRecorder() - Web API 接口参考 编辑
MediaRecorder()
构造函数会创建一个对指定的 MediaStream
进行录制的 MediaRecorder
对象
语法
var mediaRecorder = new MediaRecorder(stream[, options]);
参数
stream
MediaStream
将要录制的流. 它可以是来自于使用navigator.mediaDevices.getUserMedia()
创建的流或者来自于<audio>
,<video>
以及<canvas>
DOM元素.options
可选一个字典对象,它可以包含下列属性:
mimeType
: 为新构建的MediaRecorder
指定录制容器的MIME类型. 在应用中通过调用MediaRecorder.isTypeSupported()
来检查浏览器是否支持此种mimeType
.audioBitsPerSecond
: 指定音频的比特率.videoBitsPerSecond
: 指定视频的比特率.bitsPerSecond
: 指定音频和视频的比特率. 此属性可以用来指定上面两个属性. 如果上面两个属性只有其中之一和此属性被指定, 则此属性可以用于设定另外一个属性.
如果视频和/或音频的比特率没有指定, 视频默认采用的比特率是2.5Mbps, 但音频的默认比特率并不固定, 音频的默认比特率根据采样率和轨道数自适应.
例子
此例展示了如果对指定的流创建一个音频比特率为128kbps,视频比特率为2.5Mbps的媒体录制器. 被录制的媒体数据会以MP4格式封装(因此你若获取这些媒体数据片段,并存放到磁盘上去,你就会得到一个mp4文件).
...
if (navigator.mediaDevices.getUserMedia) {
var constraints = { audio: true, video: true };
var chunks = [];
var onSuccess = function(stream) {
var options = {
audioBitsPerSecond : 128000,
videoBitsPerSecond : 2500000,
mimeType : 'video/mp4'
}
var mediaRecorder = new MediaRecorder(stream,options);
m = mediaRecorder;
...
说明
Specification | Status | Comment |
---|---|---|
MediaStream Recording | Working Draft | Initial definition |
浏览器兼容性
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.更多信息
- Using the MediaRecorder API
- Web Dictaphone: MediaRecorder + getUserMedia + Web Audio API visualization demo, by Chris Mills (source on Github.)
- simpl.info MediaStream Recording demo, by Sam Dutton.
Navigator.mediaDevices.getUserMedia()
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论