使用HTML5录制屏幕(屏幕录像),例如getUserMedia什么的?
问题描述:
是否有一些HTML5 API可以帮助我记录屏幕(screencast)?我知道录制摄像头等,但我需要自己的屏幕。如果这个API实际上是在一些跨平台的浏览器中实现的,那将会更有帮助。使用HTML5录制屏幕(屏幕录像),例如getUserMedia什么的?
答
屏幕截图在Chrome中作为实验性功能提供,您必须在浏览器设置中启用它(chrome:// flags /#enable-usermedia-screen-capture)。而且,它似乎只适用于https连接。
navigator.getUserMedia({
video: {
mandatory: {
chromeMediaSource: 'screen'
// maxWidth: 640,
// maxHeight: 480
}
}
},
function (stream) {
//success! Now set up the video
var video = document.createElement('video');
video.src = window.URL.createObjectURL(stream);
video.autoplay = true;
//you can choose to display the video here or not.
},
function() {
//failure. browser is unable or permission denied
}
);
一旦你设置了视频,就可以记录它。有一个为媒体录制起草的标准,但它尚未在任何浏览器中实现。但是,它仍然是可能的。有关解决方法,请参阅此demo and sample code。
不幸的是,目前该解决方案仅适用于Chrome。
您描述的解决方案记录来自相机的内容,它不是OP请求的截屏。 – pat 2014-10-18 01:05:14
这是因为这个答案已有一年了,而且实验功能已被删除。您现在需要浏览器扩展才能使其工作。详细信息在这里:https://github.com/muaz-khan/WebRTC-Experiment/tree/master/Pluginfree-Screen-Sharing – brianchirls 2014-10-18 20:51:56