Guida alla migrazione per il ritiro di trasmissioni e stream predefiniti

Panoramica

Questa guida è rivolta agli sviluppatori di applicazioni client API che utilizzano le risorse predefinite liveStream e liveBroadcast dei canali YouTube per trasmettere in streaming contenuti dal vivo. ha lo scopo di garantire che l'applicazione gestisca agevolmente il ritiro delle trasmissioni e degli stream predefiniti ed è pertinente per te se una delle seguenti affermazioni riguarda la tua applicazione:

  • Verifica il valore della proprietà isDefaultBroadcast della risorsa liveBroadcast.
  • Verifica il valore della proprietà isDefaultStream della risorsa liveStream.
  • Chiama il metodo liveBroadcasts.list e imposta il valore del parametro broadcastType su persistent. A partire dalla data di ritiro:

    • Se il valore del parametro broadcastType è persistent, il metodo liveBroadcasts.list non restituirà alcun risultato.
    • Se il valore del parametro broadcastType è all, il metodo liveBroadcasts.list non restituirà trasmissioni permanenti che esistevano prima di tale periodo.

Se la tua applicazione è interessata, consulta la sezione Aggiornamento dell'applicazione, che spiega le modifiche procedurali che la tua applicazione potrebbe dover apportare a causa di questa deprecazione. Questa sezione identifica i passaggi specifici nella guida Life of a broadcast che il client API potrebbe non seguire in genere se attualmente utilizza la trasmissione e lo stream predefiniti.

Che cosa sta succedendo?

Dal 2015, YouTube crea automaticamente uno stream e una trasmissione predefiniti per un canale che è stato abilitato per il live streaming. Il flusso predefinito esisteva a tempo indeterminato e non è stato possibile eliminarlo. Analogamente, la trasmissione predefinita era considerata permanente. È sempre esistito, non aveva un'ora di inizio o di fine associata e non era legato a un determinato evento.

A partire dalla data di ritiro di cui sopra, YouTube non creerà più stream e trasmissioni predefiniti. Questa modifica interessa le applicazioni client che utilizzano queste risorse per trasmettere contenuti dal vivo. Influirà inoltre sulle applicazioni in cui l'interfaccia utente è personalizzata per distinguere le risorse predefinite e altre trasmissioni e stream creati dai proprietari dei canali.

Invece di fare affidamento sulle risorse predefinite, i client API devono creare e gestire le risorse liveBroadcast e liveStream e associarle.

Aggiornamento dell'applicazione in corso...

Per rivedere rapidamente la terminologia, una trasmissione rappresenta un evento che può essere guardato su YouTube man mano che si verifica e uno stream è il meccanismo per inviare contenuti effettivi del video a YouTube. Una trasmissione può e deve essere associata esattamente a un unico stream.

Migrazione da trasmissioni predefinite

Prima di questo ritiro, i client API potevano scegliere di utilizzare la trasmissione predefinita di un canale o di creare una trasmissione specifica per un evento. La trasmissione predefinita era una risorsa permanente che può essere riutilizzata per più eventi, mentre una risorsa di trasmissione specifica per un evento è una risorsa monouso che corrisponde esattamente a un video di YouTube.

L'applicazione client utilizza la trasmissione predefinita se chiama il metodo liveBroadcasts.list ed esegue una delle seguenti operazioni:

  • Imposta il valore del parametro broadcastType su persistent. Questa richiesta recupera solo la trasmissione predefinita.
  • Imposta il valore del parametro broadcastType su all, quindi identifica la risorsa liveBroadcast nella risposta dell'API per la quale il valore della proprietà isDefaultBroadcast è true.

In seguito al ritiro, YouTube supporterà solo le trasmissioni specifiche per gli eventi. Ciò significa che anziché utilizzare la trasmissione predefinita, le applicazioni client devono creare risorse liveBroadcast per ogni singolo evento di trasmissione.

Per creare una risorsa liveBroadcast, chiama il metodo liveBroadcasts.insert. Questo processo è spiegato nel passaggio 1.1 della guida "La vita di una trasmissione".

In caso contrario, l'interfaccia utente deve fornire anche meccanismi per consentire agli utenti di distinguere e scegliere i futuri eventi di trasmissione specifici per gli eventi.

Migrazione da flussi predefiniti

Uno stream ti consente di trasmettere contenuti audio-video su YouTube e definisce le impostazioni relative alla modalità di streaming dei tuoi contenuti su YouTube. Spesso, gli autori delle trasmissioni TV riutilizzano lo stesso stream per molte trasmissioni diverse, a patto che si verifichino in momenti diversi.

Anche se la tua applicazione non può utilizzare lo stream predefinito, può creare uno stream riutilizzabile che può essere riutilizzato per ogni trasmissione. Per creare una risorsa liveStream, chiama il metodo liveStreams.insert, seguendo le istruzioni nel passaggio 1.2 della guida "Durata di una trasmissione". Per impostazione predefinita, i flussi appena creati sono riutilizzabili. Tuttavia, se preferisci, puoi impostare la proprietà contentDetails.isReusable su false per creare stream monouso e avere una relazione one-to-one tra trasmissioni e stream.

Il seguente elenco contiene le quattro proprietà, oltre a titolo stream e descrizione stream, che puoi impostare quando crei un nuovo stream. L'elenco mostra i valori utilizzati dagli stream predefiniti per ogni proprietà, probabilmente le impostazioni che vuoi utilizzare in un'applicazione client se stai eseguendo la migrazione dagli stream predefiniti.

Associazione delle trasmissioni agli stream

Ogni risorsa liveBroadcast deve essere associata a un solo stream prima dell'inizio effettivo della trasmissione dal vivo su YouTube. (La trasmissione non è associata ad alcun flusso al momento della sua creazione).

Il processo di associazione è stato gestito automaticamente per la trasmissione predefinita, che era inestricabilmente associato al flusso predefinito. Tuttavia, dopo la data di ritiro, le applicazioni client devono gestire il processo per tutte le trasmissioni.

Per associare una trasmissione a uno stream, chiama il metodo liveBroadcasts.bind come spiegato nel passaggio 1.3 della "Guida di una trasmissione".

  • Se utilizzi uno stream riutilizzabile, puoi creare uno stream una volta e poi associare ogni trasmissione a quello stream.
  • Se non utilizzi uno stream riutilizzabile, devi creare una trasmissione e uno stream, quindi associarli insieme.

Testare la trasmissione

Se non utilizzi la trasmissione predefinita, puoi testare la trasmissione. Per eseguire un test, devi incorporare un player che ti consenta di visualizzare l'anteprima del video trasmesso come appare agli spettatori di YouTube, ma la trasmissione non è visibile agli altri spettatori.

Se il client API utilizzava in precedenza la trasmissione e lo streaming predefiniti e vuoi aggiungere una fase di test al processo di streaming, consulta la fase 3 della guida "La vita di una trasmissione".

Se vuoi testare il tuo stream, quando inserisci una trasmissione devi impostare la proprietà contentDetails.monitorStream.enableMonitorStream su true e la proprietà contentDetails.enableAutoStart su false. Questi sono i valori predefiniti di entrambe le proprietà.

Utilizzare le funzionalità di avvio e arresto automatici

La trasmissione predefinita viene avviata automaticamente ogni volta che inizi a riprodurre video in streaming sullo stream predefinito. Analogamente, la trasmissione predefinita è terminata dopo che hai interrotto lo streaming del video. Ogni sessione di streaming che utilizza queste risorse predefinite è diventata in seguito un video sul tuo canale.

Nonostante le funzionalità di avvio e arresto automatico fossero il comportamento predefinito per le trasmissioni predefinite, queste funzionalità sono facoltative e devono essere attivate per altri. Se vuoi utilizzare queste funzionalità, quando inserisci una trasmissione devi impostare i valori delle proprietà contentDetails.enableAutoStart e contentDetails.enableAutoStop su true. Queste funzionalità sono indipendenti, quindi puoi scegliere di usare una e non l'altra.

Se non attivi le funzionalità di avvio e arresto automatici per le nuove trasmissioni, il client API deve chiamare il metodo liveBroadcasts.transition per aggiornare lo stato di una trasmissione quando inizi e termini la riproduzione del video in streaming. Nella guida "La vita di una trasmissione", consulta i passaggi 4.3 e 5.2 per le istruzioni sulla gestione di queste transizioni all'inizio e alla fine di una trasmissione.