--- title: MediaRecorder.requestData() slug: Web/API/MediaRecorder/requestData translation_of: Web/API/MediaRecorder/requestData ---

{{APIRef("MediaStream Recording")}}

Метод MediaRecorder.requestData() (часть MediaRecorder API) используется, чтобы поднять {{domxref("dataavailable")}} событие содержащее {{domxref("Blob")}} объект захваченных медиа-данных как это было когда метод был вызван. This can then be grabbed и манипулировать как необходимо.

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

  1. If {{domxref("MediaRecorder.state")}} is not "recording", raise a DOM InvalidState error and terminate these steps. If {{domxref("MediaRecorder.state")}} is "recording", continue to the next step.
  2. Raise a {{domxref("dataavailable")}} event containing a {{domxref("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

MediaRecorder.requestData()

Errors

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

Example

...

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

...

Specifications

Specification Status Comment
{{SpecName("MediaStream Recording", "#widl-MediaRecorder-requestData-void", "MediaRecorder.requestData()")}} {{Spec2("MediaStream Recording")}} Initial definition

Browser compatibility

{{Compat("api.MediaRecorder.requestData")}}

See also