HLS sulla migrazione del player Shaka

Panoramica

L'SDK Cast Web Receiver supporta la riproduzione di contenuti tramite diversi protocolli per lo streaming web. In base al protocollo utilizzato, l'SDK carica un player per gestire la riproduzione dei contenuti. Nel caso di contenuti HLS, viene caricata la Media Player Library (MPL). Nel caso di contenuti DASH, viene caricato Shaka Player.

Per il futuro, i team di tecnici dell'SDK Cast e di Shaka Player stanno consolidando gli sforzi per aumentare il supporto della riproduzione di contenuti HLS su Shaka Player. MPL non riceverà più aggiornamenti critici. Ti consigliamo di attivare l'utilizzo di Shaka Player per la riproduzione dei contenuti HLS della tua applicazione.

Vantaggi di Shaka Player

Quando i giocatori cambiano, le applicazioni sfruttano i seguenti vantaggi:

  • Sessioni di streaming più affidabili per gli utenti, con miglioramenti in termini di latenza e errori in termini di tempo di caricamento.
  • Adozione continua delle funzionalità HLS più recenti.
  • Maggiore chiarezza nell'analisi delle cause principali per i problemi di compatibilità con i contenuti dei player dovuti alla natura open source di Shaka Player.
  • Il codebase del player open source consente ai partner di contribuire allo Shaka Player Project.
  • Una riduzione significativa dei tempi di produzione per la correzione di bug e funzionalità, in quanto la cadenza di rilascio di Shaka Player è frequente e indipendente dalle release dell'SDK Web ricevir.
  • Maggiore controllo sull'ambiente di riproduzione fornito dall'API shakaVersion.
  • Maggiore supporto alla riproduzione da parte di Google grazie a risorse di progettazione incentrate sulla riproduzione HLS su Shaka Player, come indicato nella roadmap.

Sequenza

L'SDK Web Receiver passerà all'utilizzo di Shaka Player come player predefinito per la riproduzione di contenuti HLS. Questo verrà fatto con un approccio graduale per guidare i partner nel processo di migrazione.

Fase Data di inizio Panoramica
1 Ott '22 L'SDK Cast Web ricevir introduce le API per l'attivazione della riproduzione di contenuti HLS su Shaka Player.
2 Seconda metà del 2024 L'SDK Cast Web ricevir modifica il player predefinito in Shaka Player per la riproduzione di contenuti HLS.

I team di tecnici dell'SDK Web Ricevir stanno adottando un approccio orientato alle prestazioni e passeranno alla fase successiva solo quando le prestazioni di Shaka Player saranno in linea con quelle di base di MPL. Queste modifiche verranno annunciate nel cast-sdk-announcements google group e aggiornate in questa guida.

Attiva

A partire dalla versione CAF 3.0.0105, esiste una configurazione a livello di applicazione per attivare l'utilizzo di Shaka Player per la riproduzione HLS. Questa versione introduce anche un'API per scegliere tra una gamma supportata di versioni di Shaka Player da caricare. Questi flag vengono forniti nella classe CastReceiverOptions tramite le proprietà useShakaForHls e shakaVersion e vengono valutati all'avvio del CastReceiverContext. Qualsiasi applicazione che attiva Shaka per HLS deve impostare una versione di Shaka Player almeno pari a 4.3.4 per poter usufruire degli ultimi miglioramenti HLS. Per attivare la funzionalità, segui lo snippet di codice riportato di seguito:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = true;

context.start(castReceiverOptions);

Convalida contenuti

I partner devono convalidare la riproduzione dei contenuti su Shaka Player prima di attivare l'utilizzo di Shaka Player nella loro app di produzione. Consigliamo di eseguire il test per ciascuna delle varianti dei contenuti elencate di seguito:

  • Tipi di stream: LIVE o VOD
  • Formati container: TS, MP4 o stream elementari
  • Contenuti con discontinuità o annunci incorporati
  • Riproduzione sui seguenti tipi di dispositivi: smart display, chiavette Chromecast, dispositivi Android TV, TV con Chromecast integrato, smart speaker

Se rilevi errori o comportamenti imprevisti, segnala un bug. Dopo aver verificato che non siano presenti errori di riproduzione critici nei tuoi contenuti, esegui il push delle modifiche nell'ambiente di produzione.

Disattiva

L'SDK Web Receiver passerà a un modello di disattivazione per la riproduzione dei contenuti HLS di Shaka Player in base alla sequenza temporale. La proprietà useShakaForHls cambierà il proprio valore predefinito da false a true. A quel punto, le applicazioni possono scegliere di utilizzare MPL per la riproduzione HLS impostando manualmente questa proprietà su false. All'avvio di CastReceiverContext, l'SDK Web Receiver ripristinerà il caricamento di MPL anziché Shaka Player. Per informazioni su come disattivare la funzionalità, consulta l'esempio riportato di seguito:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = false;

context.start(castReceiverOptions);

Segnalare i problemi

Invitiamo i nostri partner a segnalare eventuali problemi riscontrati durante la riproduzione dei contenuti HLS. Come accennato, MPL non riceverà più aggiornamenti critici. In caso di problemi con MPL, segui la procedura descritta nella sezione Attivazione della guida per verificare se il passaggio a Shaka Player sblocca il problema. Segui la procedura riportata di seguito se il problema persiste o se riscontri un problema diverso quando cambi giocatore.

  1. Per risolvere il problema, prova a impostare shakaVersion su una versione diversa del ramo. Ad esempio, se il problema si verifica nel ramo 4.3, prova a impostarlo sulla release più recente nelle versioni 4.2.x o 3.3.x. Controlla le note di rilascio di Shaka Player per trovare le uscite con gli aggiornamenti più pertinenti. Tieni presente che l'API shakaVersion ha una versione minima e una massima supportata, come descritto nella documentazione di riferimento. Se noti una regressione, segnala il problema nel Issuetracker del player Shaka.
  2. Prova a modificare i parametri di configurazione del player. Shaka Player è configurabile tramite l'oggetto PlayerConfiguration. L'SDK Web Ricevir definisce un insieme di valori predefiniti e consente alle applicazioni di modificare questa configurazione tramite la proprietà shakaConfig nell'oggetto PlaybackConfig. Questo valore viene valutato durante il tempo di caricamento, quando viene creata l'istanza del player. Altre in

    della configurazione e delle opzioni delle applicazioni. I valori predefiniti impostati dall'SDK Web ricevir sono quelli consigliati.

  3. Verifica se il problema è stato segnalato nel Issuetracker del player Shaka o nel tracker dei problemi di trasmissione. Commenta il bug e aggiungi eventuali informazioni pertinenti, se descrivono anche il tuo problema.

  4. Testa i tuoi contenuti sul sito dimostrativo di Shaka Player. Se ti accorgi che il problema viene riprodotto nel sito dimostrativo dei tuoi contenuti, segnala un bug con il progetto Shaka Player.

  5. Segnala un bug nel tracker dei problemi di trasmissione se hai un problema specifico di Shaka Player sugli endpoint di trasmissione.

Domande frequenti

Cambiare giocatori può sollevare molte domande. Di seguito troverai le risposte alle domande più comuni per guidarti nel processo di migrazione.

Devo eseguire la migrazione a Shaka Player?

Invitiamo i nostri partner che utilizzano i contenuti HLS a iniziare il processo di migrazione il prima possibile. Di conseguenza, la tua app fornirà agli utenti un'esperienza di streaming più solida. Altri vantaggi sono descritti nella sezione Vantaggi dei giocatori di Shaka di questa guida. Per garantire una transizione senza problemi, i partner devono verificare che le loro app funzionino correttamente utilizzando Shaka Player. Alcune app potrebbero essere a rischio quando l'SDK Web Ricevir passa a un modello di disattivazione, se i partner non verificano in anticipo che i loro contenuti vengano riprodotti correttamente su Shaka Player.

Qual è il livello di impegno previsto quando si cambia giocatore?

I partner dovranno testare l'applicazione e i contenuti in un ambiente di test per garantire che l'esperienza utente sia simile o migliorata rispetto a HLS. Per farlo, i partner dovranno attivare la funzionalità in un ambiente interno e testare scrupolosamente che i loro contenuti siano in grado di essere riprodotti utilizzando Shaka Player. Consulta la pagina relativa ai contenuti di convalida per maggiori dettagli sugli aspetti dei contenuti su cui concentrarti. Una volta convalidati, i partner dovranno aggiungere il flag per l'attivazione nel proprio ambiente applicativo di produzione per iniziare a sfruttare i vantaggi offerti da Shaka Player. A livello generale, lo sviluppo del software prevede modifiche minime e, per lo più, requisiti di QA per consentire ai nostri partner di eseguire correttamente la migrazione.

A breve la mia applicazione utilizzerà HLS per trasmettere contenuti in streaming. Cosa devo fare?

Le nuove integrazioni dovrebbero attivare l'utilizzo di Shaka Player per la riproduzione. La tua applicazione sarà supportata meglio a lungo termine e sfrutterà le nuove funzionalità HLS e i miglioramenti delle prestazioni. Se si verificano problemi con la nuova integrazione, segnala un bug il prima possibile per dare al team di progettazione tempo sufficiente per risolverlo. Se la tua domanda ha una scadenza ravvicinata, includi queste informazioni nella segnalazione di bug e indica l'impatto a cui assegnare le priorità di conseguenza. Il nostro team tecnico si adopererà per fornire una soluzione che supporti adeguatamente i tuoi utenti.

I miei contenuti o la mia app non funzionano con Shaka Player, cosa devo fare adesso?

Devi segnalare un bug relativo al progetto Shaka Player o al progetto Cast (consulta la sezione Segnalare problemi). Il team di tecnici dell'SDK Cast sta monitorando attivamente questi tracker e collaborerà con te per risolvere eventuali problemi in sospeso. Prima vengono rilevati questi problemi, più tempo avranno a disposizione per fornire una soluzione.

MPL non riceve più aggiornamenti critici, cosa significa esattamente?

Storicamente, MPL ha adottato nuove funzionalità HLS e corretto i bug principali tramite aggiornamenti critici. Ora che MPL non li riceve più, le nuove funzionalità HLS non verranno aggiunte al player. Analogamente, eventuali problemi segnalati per la riproduzione HLS su MPL non verranno risolti in MPL. Questi problemi dovrebbero essere risolti passando a Shaka Player per la riproduzione. Se i problemi persistono, è necessario segnalare un bug indicando i problemi riscontrati su Shaka Player. I partner dovrebbero abbandonare la procedura MPL.

I miei contenuti utilizzano il protocollo live streaming. Che impatto ha sulla mia applicazione?

I file binari MPL saranno ancora ospitati e accessibili all'applicazione ricevitore. Tuttavia, eventuali richieste di funzionalità relative al flusso fluido e correzioni di bug non saranno supportate, in quanto la specifica dello streaming fluido non viene aggiornata da più di quattro anni. Ti consigliamo di eseguire la migrazione dei tuoi contenuti per utilizzare il protocollo di streaming DASH o HLS per continuare a ricevere aggiornamenti sulle prestazioni e assistenza per i tuoi contenuti.

I miei contenuti non utilizzano i protocolli HLS o Uniform Stream. Che effetto ha sulla mia applicazione?

Se la tua raccolta di contenuti non utilizza nessuno di questi protocolli di streaming, la migrazione non sarà interessata. Non sono necessarie modifiche alla tua applicazione.