Aggiornamenti di contenuti multimediali in Chrome 70

François Beaufort
François Beaufort

Guardare il video utilizzando Picture in picture

Picture in picture (PIP) consente agli utenti di guardare i video in una finestra mobile (sempre sopra le altre finestre), in modo da poter tenere d'occhio ciò che stanno guardando mentre interagiscono con altri siti o applicazioni. Con la nuova API Picture in picture, puoi avviare e controllare Picture in picture per i video sul tuo sito web.

Leggi il nostro articolo per scoprire di più al riguardo.

Decoder AV1

AV1 è un codec di nuova generazione sviluppato da Alliance for Open Media. AV1 migliora l'efficienza di compressione di oltre il 30% rispetto all'attuale codec video all'avanguardia, VP9. Chrome 70 aggiunge un decodificatore AV1 a Chrome Desktop x86-64 in base alla specifica ufficiale bitstream. Al momento il supporto è limitato al profilo 0 "Principale" e non include funzionalità di codifica. Il container supportato è MP4 (ISO-BMFF) (vedi Container e codec per una breve spiegazione dei container).

Per provare AV1:

  1. Vai alla pagina di TestTube di YouTube.
  2. Seleziona "Preferenza AV1 per SD" o "Preferenza AV1" per ottenere la risoluzione AV1 desiderata. Tieni presente che, a risoluzioni più alte, è più probabile che AV1 riscontri problemi di prestazioni di riproduzione su alcuni dispositivi.
  3. Prova a riprodurre i clip di YouTube dalla playlist di avvio di AV1 Beta.
  4. Conferma il codec av01 in "Statistiche per nerd".
Statistiche per nerd con AV1 su YouTube
Statistiche per nerd che mostrano AV1 su YouTube.

Supporto per il cambio di codec e container in MSE

Chrome sta aggiungendo il supporto per migliorare le transizioni cross-codec o cross-byte nella riproduzione Media Source Extensions utilizzando un nuovo metodo changeType() su SourceBuffer. Consente di modificare successivamente il tipo di byte multimediali aggiunti a SourceBuffer.

La versione corrente di MSE supporta la riproduzione adattiva dei contenuti multimediali; tuttavia, l'adattamento richiede che tutti i contenuti multimediali aggiunti a SourceBuffer siano conformi al tipo MIME fornito durante la creazione iniziale di SourceBuffer tramite MediaSource.addSourceBuffer(type). I codec di quel tipo e tutti i segmenti di inizializzazione analizzati in precedenza devono rimanere invariati. Ciò significa che il sito web deve adottare misure esplicite per accelerare il passaggio di codec o bytestream (utilizzando più elementi multimediali o tracce SourceBuffer e passando da una all'altra), aumentando la complessità delle applicazioni e la latenza visibile all'utente. Queste transizioni richiedono all'app web di eseguire un'azione sincrona sul thread principale del renderer. Questa latenza di transizione compromette l'uniformità della riproduzione dei contenuti multimediali tra le transizioni.

Con il nuovo metodo changeType(), un elemento SourceBuffer può eseguire il buffering e supportare la riproduzione in diversi formati bytestream e codec. Questo nuovo metodo conserva i contenuti multimediali precedentemente sottoposti a buffer, il futuro modulo di rimozione o rimozione di frame con codifica MSE e sfrutta la logica di splicing e buffering nell'algoritmo di elaborazione di frame con codifica MSE esistente.

Ecco come utilizzare il metodo 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);
}

Come previsto, se il tipo passato non è supportato dal browser, questo metodo genera un'eccezione NotSupportedError.

Dai un'occhiata al campione per riprodurre contenuti con il buffering cross-codec e cross-byte e la riproduzione di un elemento audio.

Intenzione di spedizione | Tracker dello stato di Chrome | Bug di Chromium

Opus in MP4 per MSE

Il codec audio aperto e molto versatile Opus è supportato negli elementi <audio> e <video> a partire da Chrome 33. Successivamente è stato aggiunto il supporto di Opus in ISO-BMFF (noto anche come Opus in MP4). Ora Opus in MP4 è disponibile in Chrome 70 per le estensioni per origini multimediali.

Ecco come puoi rilevare se Opus in MP4 è supportato per MSE:

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

Per vedere un esempio completo, consulta il nostro esempio ufficiale.

A causa della mancanza di strumenti per Mux Opus in MP4 con valori corretti di taglio finale e presaltamento, se questa precisione è importante per te, dovrai utilizzare SourceBuffer.appendWindow{Start,End} e SourceBuffer.timestampOffset in Chrome per ottenere una riproduzione accurata del campione.

Intenzione di spedizione | Tracker dello stato di Chrome | Bug di Chromium

Consentire la riproduzione di contenuti protetti per impostazione predefinita su Android

In Chrome 70 per Android, il valore predefinito dell'impostazione del sito "contenuti protetti" cambia da "Chiedi prima" ad "Consentiti", riducendo i problemi associati alla riproduzione di questi contenuti multimediali. Questo cambiamento è possibile, in parte, anche grazie a ulteriori misure adottate per cancellare le licenze multimediali insieme a cookie e dati dei siti, garantendo che le licenze multimediali non vengano utilizzate dai siti per monitorare gli utenti che hanno cancellato i dati di navigazione.

ALT_TEXT_HERE
Impostazione Contenuti protetti in Android.