MediaRecorder: requestData()-Methode
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
Die requestData()-Methode des MediaRecorder-Interfaces wird verwendet, um ein dataavailable-Ereignis auszulösen, das ein Blob-Objekt der aufgenommenen Medien enthält, so wie es war, als die Methode aufgerufen wurde. Dies kann dann erfasst und nach Wunsch manipuliert werden.
Wenn die requestData()-Methode aufgerufen wird, stellt der Browser eine Warteschlange mit Aufgaben auf, die die folgenden Schritte ausführt:
- Wenn
MediaRecorder.state"inactive" ist, wird ein DOM-InvalidState-Fehler ausgelöst und diese Schritte werden beendet. WennMediaRecorder.statenicht "inactive" ist, wird mit dem nächsten Schritt fortgefahren. - Ein
dataavailable-Ereignis wird ausgelöst, das einBlobder derzeit aufgenommenen Daten enthält (das Blob ist imdata-Attribut des Ereignisses verfügbar). - Ein neues Blob wird erstellt und darauffolgende aufgenommene Daten werden hineingelegt.
Syntax
requestData()
Parameter
Keine.
Rückgabewert
Keiner (undefined).
Ausnahmen
InvalidStateErrorDOMException-
Wird ausgelöst, wenn der
MediaRecorderaktuell"inactive"ist; Sie können die Aufnahme nicht erfassen, wenn derMediaRecordernicht aktiv ist.
Beispiele
captureMedia.onclick = () => {
mediaRecorder.requestData();
// makes snapshot available of data so far
// ondataavailable fires, then capturing continues
// in new Blob
};
Spezifikationen
| Specification |
|---|
| MediaStream Recording> # dom-mediarecorder-requestdata> |
Browser-Kompatibilität
Loading…
Siehe auch
- Verwendung der MediaStream Recording API
- Web Diktiergerät: MediaRecorder + getUserMedia + Web Audio API Visualisierungs-Demo von Chris Mills (Quelle auf GitHub.)
- simpl.info MediaStream Recording Demo, von Sam Dutton.
Navigator.getUserMedia()