/Web APIs

VideoFrame: allocationSize() method

The allocationSize() method of the VideoFrame interface returns the number of bytes required to hold the video as filtered by options passed into the method.




options Optional

An object containing the following:

rect Optional

The rectangle of pixels to copy from the VideoFrame. If unspecified the visibleRect 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. Planes may not overlap. If unspecified the planes will be tightly packed:


An integer representing the offset in bytes where the given plane begins.


An integer representing the number of bytes, including padding, used by each row of the plane.

Return value

An integer containing the number of bytes needed to hold the frame as specified by options.


In the following example the allocationSize is returned for the rectangle at top left with dimensions of 800 by 600.

const videoRect = {
  x: 0,
  y: 0,
  width: 800,
  height: 600,
let size = VideoFrame.allocationSize({ rect: videoRect });


Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
allocationSize 94 94 No No 80 16.4 94 94 No 66 16.4 17.0

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.