VideoFrame: copyTo() method
The copyTo()
method of the VideoFrame
interface copies the contents of the VideoFrame
to an ArrayBuffer
.
Syntax
js
copyTo(destination)
copyTo(destination, options)
Parameters
destination
-
An
ArrayBuffer
, aTypedArray
, or aDataView
to copy to. options
Optional-
An object containing the following:
rect
Optional-
The rectangle of pixels to copy from the
VideoFrame
. If unspecified, thevisibleRect
will be used. This is in the format of a dictionary object containing:x
: The x-coordinate.y
: The y-coordinate.width
: The width of the frame.height
: The height of the frame.
layout
Optional-
A list containing the following values for each plane in the
VideoFrame
:offset
-
An integer representing the offset in bytes where the given plane begins.
stride
-
An integer representing the number of bytes, including padding, used by each row of the plane. Planes may not overlap. If no
layout
is specified, the planes will be tightly packed.
Return value
A Promise
that resolves to the layout of the copy when the copy has completed.
Examples
The following example copies the entire contents of videoFrame
.
js
let buffer = new Uint8Array(videoFrame.allocationSize());
let layout = await videoFrame.copyTo(buffer);
Specifications
Specification |
---|
WebCodecs # dom-videoframe-copyto |
Browser compatibility
BCD tables only load in the browser