The HTMLCanvasElement
captureStream()
method returns a MediaStream
which includes a CanvasCaptureMediaStreamTrack
containing a real-time video capture of the canvas's contents.
The HTMLCanvasElement
captureStream()
method returns a MediaStream
which includes a CanvasCaptureMediaStreamTrack
containing a real-time video capture of the canvas's contents.
js
captureStream(frameRate)
frameRate
Optional
A double-precision floating-point value that indicates the rate of capture of each frame. If not set, a new frame will be captured each time the canvas changes; if set to 0
, frames will not be captured automatically; instead, they will only be captured when the returned track's requestFrame()
method is called.
A reference to a MediaStream
object, which has a single CanvasCaptureMediaStreamTrack
in it.
NotSupportedError
DOMException
Thrown if the value of frameRate
is negative.
SecurityError
DOMException
The canvas's bitmap is not origin clean; at least some of its contents have or may have been loaded from a site other than the one from which the document itself was loaded.
js
// Find the canvas element to capture const canvasElt = document.querySelector("canvas"); // Get the stream const stream = canvasElt.captureStream(25); // 25 FPS // Do things to the stream // E.g. Send it to another computer using an RTCPeerConnection // pc is an RTCPeerConnection created elsewhere stream.getTracks().forEach((track) => pc.addTrack(track, stream));
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
captureStream |
51 | 79 | 43 | No | 36 | 11 | 51 | 51 | 43 | 36 | 11 | 5.0 |
HTMLMediaElement.captureStream()
, which allows capturing a stream from a media element. MediaStream
Media Capture and Streams API
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/captureStream