利用纯客户端JavaScript实现屏幕录制和截屏:JSCapture
jopen
11年前
JSCapture一个基于纯 JavaScript与HTML5实现的截屏库。
它可以让你从浏览器做您在桌面的截图和视频录制。JSCapture使用getUserMedia捕获屏幕。目前的屏幕捕捉API仅支持通过谷歌Chrome,和实际标志的Canary与Chromium。
API
JSCapture.capture(config)- Captures a new screenshot.config.x- (Number) default value0. Specifies the left offset.config.y- (Number) default value0. Specifies the top offset.config.width- (Number) default value the screen width. Specifies the width of the screenshot.config.height- (Number) default value the screen height. Specifies the height of the screenshot.config.process- (Function|Array) default value an empty array. A list of filters, which are going to process the image.config.done- (Function) default value isundefined. Callback, which is being called with the captured image.config.fail- (Function) default value isundefined. A callback, which is being executed on unsuccessful screen capturing (for example if the user does not allow screen capturing).config.delay- (Number) default value0. Specifies the delay after each the screenshot will be captured.
JSCapture.record(config)- Capture a video.config.x- (Number) default value0. Specifies the left offset.config.y- (Number) default value0. Specifies the top offset.config.width- (Number) default value the screen width. Specifies the width of the video.config.height- (Number) default value the screen height. Specifies the height of the video.config.process- (Function|Array) default value an empty array. A list of filters, which are going to process the individual frames.config.done- (Function) default value isundefined. Callback, which is being called with the captured video.config.delay- (Number) default value0. Specifies the delay after each the video will be captured.config.frameRate- (Number) default value60frames per second. Specifies the number of frames per second.config.done- (Function) default value isundefined. A callback, which accepts the video (as a Blob), result of the screen recording, as an argumentconfig.fail- (Function) default value isundefined. A callback, which is being executed on unsuccessful screen recording (for example if the user does not allow screen capturing).config.duration- (Number) default isInfinity. A number which indicates the length of the video.
JSCapture.stopRecording(fn)- Stops the video recording.fn- (Function) default value isundefined. A callback, which accepts the video (as a Blob), result of the screen recording, as an argument. Note that the callback provided inconfig.donewon't be invoked ifJSCapture.stopRecording(fn)is called.
JSCapture.isRecording()- (Boolean) Returns whether the screen recording have been started.