--- 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

{{CompatibilityTable}}

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support {{CompatChrome(47)}}[2] {{CompatGeckoDesktop("25.0")}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
Feature Android Android Webview Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile Chrome for Android
Basic support {{CompatNo}} {{CompatNo}} {{CompatGeckoDesktop("25.0")}} 1.3[1] {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}

[1] The intial Firefox OS implementation only supported audio recording.

[2] To try this feature on Chrome, enable Experimental Web Platform features from chrome://flags . Currently only video is supported, not audio.

See also