W3cubDocs

/Web APIs

MediaRecorder: requestData() method

The MediaRecorder.requestData() method (part of the MediaStream Recording API) is used to raise a dataavailable event containing a Blob object of the captured media as it was when the method was called. This can then be grabbed and manipulated as you wish.

When the requestData() method is invoked, the browser queues a task that runs the following steps:

  1. If MediaRecorder.state is "inactive", raise a DOM InvalidState error and terminate these steps. If MediaRecorder.state is not "inactive", continue to the next step.
  2. Raise a dataavailable event containing a Blob of the currently captured data (the Blob is available under the event's data attribute.)
  3. Create a new Blob and place subsequently captured data into it.

Syntax

js

requestData()

Parameters

None.

Return value

None (undefined).

Errors

An InvalidState error is raised if the requestData() method is called while the MediaRecorder object's MediaRecorder.state is not "recording" — the media cannot be captured if recording is not occurring.

Examples

js

captureMedia.onclick = () => {
  mediaRecorder.requestData();
  // makes snapshot available of data so far
  // ondataavailable fires, then capturing continues
  // in new Blob
};

Specifications

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
requestData 49 79 25 No 36 14.1 49 49 25 36 14 5.0

See also

© 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/MediaRecorder/requestData