MediaRecorder: mimeType-Eigenschaft

Die mimeType schreibgeschützte Eigenschaft des MediaRecorder-Interfaces gibt den MIME-Medientyp zurück, der beim Erstellen des MediaRecorder-Objekts angegeben wurde, oder, wenn keiner angegeben wurde, den der Browser gewählt hat. Dies ist das Dateiformat der Datei, die durch das Schreiben aller aufgezeichneten Daten auf die Festplatte entstehen würde.

Beachten Sie, dass nicht alle Codecs von einem bestimmten Container unterstützt werden; wenn Sie Medien mit einem Codec schreiben, der von einem bestimmten Mediencontainer nicht unterstützt wird, funktioniert die resultierende Datei möglicherweise nicht zuverlässig oder überhaupt nicht, wenn Sie versuchen, sie abzuspielen. Weitere Informationen über die Unterstützung von Containern und Codecs in verschiedenen Browsern finden Sie in unserem Leitfaden zu Medientypen und -formaten.

Hinweis: Der Begriff "MIME-Typ" wird offiziell als historisch betrachtet; diese Zeichenfolgen sind nun offiziell als Medientypen bekannt. Die Inhalte der MDN Web Docs verwenden die Begriffe austauschbar.

Wert

Der MIME-Medientyp, der das Format der aufgezeichneten Medien als Zeichenfolge beschreibt. Diese Zeichenfolge kann den codecs-Parameter enthalten, der Details über die von dem Medienrecorder verwendeten Codecs und die Codec-Konfigurationen gibt.

Die Medientyp-Zeichenfolgen werden von der Internet Assigned Numbers Authority (IANA) standardisiert. Für deren offizielle Liste der definierten Medientyp-Zeichenfolgen siehe den Artikel Media Types auf der IANA-Website. Weitere Informationen über Medientypen und deren Verwendung in Webinhalten und durch Webbrowser finden Sie unter Medientypen.

Beispiele

js
if (navigator.mediaDevices) {
  console.log("getUserMedia supported.");

  const constraints = { audio: true, video: true };
  const chunks = [];

  navigator.mediaDevices
    .getUserMedia(constraints)
    .then((stream) => {
      const options = {
        audioBitsPerSecond: 128000,
        videoBitsPerSecond: 2500000,
        mimeType: "video/mp4",
      };
      const mediaRecorder = new MediaRecorder(stream, options);
      m = mediaRecorder;

      m.mimeType; // would return 'video/mp4'
      // …
    })
    .catch((error) => {
      console.error(error.message);
    });
}

Das Ändern des mimeType in options zu 'video/mp4; codecs="avc1.424028, mp4a.40.2"' führt dazu, dass MediaRecorder versucht, das AVC Constrained Baseline Profile Level 4 für Video und AAC-LC (Low Complexity) für Audio zu verwenden, was gut für mobile Geräte und andere möglicherweise ressourcenbeschränkte Situationen ist.

Angenommen, diese Konfiguration ist für den User-Agent akzeptabel, würde der später von m.mimeType zurückgegebene Wert dann video/mp4; codecs="avc1.424028, mp4a.40.2" sein.

Spezifikationen

Specification
MediaStream Recording
# dom-mediarecorder-mimetype

Browser-Kompatibilität

Siehe auch