Medienupdates in Chrome 70

François Beaufort
François Beaufort

Videos mit Bild im Bild ansehen

Mit Bild im Bild (BiB) können Nutzer Videos in einem unverankerten Fenster ansehen (immer über anderen Fenstern). So haben sie bei der Interaktion mit anderen Websites oder Anwendungen einen besseren Überblick darüber, was sie gerade sehen. Mit der neuen Picture-in-Picture-Web API kannst du die Funktion „Bild im Bild“ für Videos auf deiner Website initiieren und steuern.

Weitere Informationen

AV1-Decoder

AV1 ist ein Codec der nächsten Generation, der von der Alliance for Open Media entwickelt wurde. AV1 verbessert die Komprimierungseffizienz um mehr als 30% gegenüber dem aktuellen Video-Codec VP9. In Chrome 70 wird Chrome Desktop x86-64 mit einem AV1-Decoder basierend auf der offiziellen Bitstream-Spezifikation hinzugefügt. Derzeit ist die Unterstützung auf das Hauptprofil 0 beschränkt und umfasst keine Codierungsfunktionen. Der unterstützte Container ist MP4 (ISO-BMFF). Eine kurze Erläuterung von Containern finden Sie unter Container und Codecs.

So kannst du AV1 ausprobieren:

  1. Gehe zur TestTube-Seite von YouTube.
  2. Wähle „AV1 für SD bevorzugen“ oder „AV1 immer bevorzugen“ aus, um die gewünschte AV1-Auflösung zu erhalten. Beachten Sie, dass bei höheren Auflösungen auf einigen Geräten bei AV1 mit höherer Wahrscheinlichkeit Probleme mit der Wiedergabeleistung auftreten.
  3. Versuche, YouTube-Clips aus der AV1 Beta Launch Playlist abzuspielen.
  4. Bestätige den Codec „av01“ in „Statistiken für Interessierte“.
Statistiken für Interessierte mit AV1 auf YouTube
Statistiken für Interessierte mit AV1 auf YouTube.

Unterstützung für Codec und Containerwechsel in MSE

Chrome bietet eine Unterstützung für verbesserte Cross-Codec- oder Cross-Bytestream-Übergänge bei der Wiedergabe von Media Source Extensions. Dazu wird eine neue changeType()-Methode auf SourceBuffer verwendet. Damit kann die Art der Medienbyte, die an SourceBuffer angehängt sind, nachträglich geändert werden.

Die aktuelle Version von MSE unterstützt die adaptive Wiedergabe von Medien. Allerdings müssen Medien, die an eine SourceBuffer angehängt werden, dem MIME-Typ entsprechen, der bei der anfänglichen Erstellung des SourceBuffer über MediaSource.addSourceBuffer(type) angegeben wurde. Codecs dieses Typs und alle zuvor geparsten Initialisierungssegmente müssen durchgehend gleich bleiben. Das bedeutet, dass die Website explizite Schritte ausführen muss, um den Codec- oder Bytestream-Wechsel umzusetzen (durch die Verwendung mehrerer Medienelemente oder SourceBuffer-Tracks und Wechseln zwischen diesen), wodurch die Anwendungskomplexität und die für den Nutzer sichtbare Latenz erhöht werden. Bei solchen Übergängen muss die Webanwendung eine synchrone Aktion im Hauptthread des Renderers ausführen. Diese Übergangslatenz beeinträchtigt die reibungslose Medienwiedergabe bei den Übergängen.

Mit seiner neuen changeType()-Methode kann ein SourceBuffer Zwischenspeichern und die Wiedergabe in verschiedenen Bytestream-Formaten und Codecs unterstützen. Diese neue Methode behält zuvor gepufferte Medien und modulo-zukünftige MSE-codierte Frames – Bereinigung oder Entfernung und nutzt die Spplicing- und Zwischenspeicherungslogik im vorhandenen MSE-codierten Frameverarbeitungsalgorithmus.

So verwenden Sie die Methode changeType():

const sourceBuffer = myMediaSource.addSourceBuffer('video/webm; codecs="opus, vp09.00.10.08"');
sourceBuffer.appendBuffer(someWebmOpusVP9Data);

// Later on...
if ('changeType' in sourceBuffer) {
  // Change source buffer type and append new data.
  sourceBuffer.changeType('video/mp4; codecs="mp4a.40.5, avc1.4d001e"');
  sourceBuffer.appendBuffer(someMp4AacAvcData);
}

Wenn der übergebene Typ vom Browser nicht unterstützt wird, löst diese Methode die Ausnahme NotSupportedError aus.

Sehen Sie sich das Beispiel an, um die Cross-Codec- und Cross-Bytestream-Zwischenspeicherung und -Wiedergabe eines Audioelements auszuprobieren.

Intent to Ship | Chromestatus-Tracker | Chromium-Fehler

Opus in MP4 für MSE

Der offene und äußerst vielseitige Audio-Codec Opus wird seit Chrome 33 in den Elementen <audio> und <video> unterstützt. Danach wurde die Unterstützung für Opus in ISO-BMFF (Opus in MP4) hinzugefügt. Außerdem ist Opus jetzt im MP4-Format in Chrome 70 für Medienquellenerweiterungen verfügbar.

So finden Sie heraus, ob Opus in MP4 für MSE unterstützt wird:

if (MediaSource.isTypeSupported('audio/mp4; codecs="opus"')) {
  // TODO: Fetch data and feed it to a media source.
}

Ein vollständiges Beispiel finden Sie in unserem offiziellen Beispiel.

Aufgrund fehlender Tools zum Mux des Opus in MP4 mit korrekten Werten für das Ende des Trimmens und das Vorüberspringen müssen Sie SourceBuffer.appendWindow{Start,End} und SourceBuffer.timestampOffset in Chrome verwenden, um eine stichpräzise Wiedergabe zu erzielen, wenn diese Genauigkeit für Sie wichtig ist.

Intent to Ship | Chromestatus-Tracker | Chromium-Fehler

Standardmäßig Wiedergabe geschützter Inhalte auf Android zulassen

In Chrome 70 für Android ändert sich der Standardwert für die Websiteeinstellung für geschützte Inhalte von „Zuerst fragen“ zu „Erlaubt“. Dadurch wird die Wiedergabe solcher Medien weniger kompliziert. Diese Änderung ist zum Teil durch zusätzliche Schritte zum Löschen von Medienlizenzen neben Cookies und Websitedaten möglich, durch die sichergestellt wird, dass von Websites keine Medienlizenzen verwendet werden, um Nutzer zu verfolgen, die Browserdaten gelöscht haben.

ALT_TEXT_HERE
Einstellung für geschützte Inhalte in Android.