Implementazione: trasmissioni e stream

I seguenti esempi mostrano come utilizzare l'API YouTube Live Streaming per creare e gestire live streaming e trasmissioni in diretta.

Crea una trasmissione

Chiama il metodo liveBroadcasts.insert per programmare un nuovo evento dal vivo. Il corpo della richiesta deve definire il titolo, l'ora di inizio programmata e lo stato della privacy della trasmissione. Puoi anche specificare facoltativamente la categoria del video utilizzando la proprietà snippet.categoryId. Puoi recuperare un elenco di categorie utilizzando il metodo videoCategories.list.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveBroadcasts.insert?
        part=snippet,status

Il corpo della richiesta contiene una risorsa liveBroadcast. In questo esempio, il corpo della richiesta è:

{
  "snippet": {
    "title": "My Live Event",
    "scheduledStartTime": "2026-10-30T19:00:00Z",
    "categoryId": "17"
  },
  "status": {
    "privacyStatus": "unlisted"
  }
}

Crea uno stream

Chiama il metodo liveStreams.insert per creare uno stream che definisca le impostazioni di trasmissione del video. Devi specificare il titolo dello stream e le impostazioni CDN (tipo di importazione, risoluzione e frequenza fotogrammi).

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveStreams.insert?
        part=snippet,cdn

Il corpo della richiesta contiene una risorsa liveStream. In questo esempio, il corpo della richiesta è:

{
  "snippet": {
    "title": "My Live Stream"
  },
  "cdn": {
    "frameRate": "30fps",
    "ingestionType": "rtmp",
    "resolution": "720p"
  }
}

Collega la trasmissione allo stream

Chiama il metodo liveBroadcasts.bind per associare la trasmissione allo stream. Imposta il parametro id sull'ID della trasmissione e il parametro di query streamId sull'ID dello stream.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveBroadcasts.bind?
        id=BROADCAST_ID
        &streamId=STREAM_ID
        &part=id,snippet

Transizione dello stato della trasmissione

Chiama il metodo liveBroadcasts.transition per modificare lo stato della trasmissione. Ad esempio, per iniziare i test, imposta lo stato su testing. Per avviare la trasmissione vera e propria, imposta lo stato su live.

Questo esempio imposta la trasmissione su testing. Imposta il parametro id sull'ID della trasmissione e il parametro broadcastStatus su testing.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveBroadcasts.transition?
        broadcastStatus=testing
        &id=BROADCAST_ID
        &part=id,status

Recupera le trasmissioni

Chiama il metodo liveBroadcasts.list per recuperare le trasmissioni. Puoi filtrare in base a broadcastStatus (ad es. active, completed, upcoming) o recuperare le tue trasmissioni utilizzando il parametro mine.

Questo esempio recupera le trasmissioni imminenti dell'utente autenticato.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.liveBroadcasts.list?
        part=snippet,status
        &broadcastStatus=upcoming
        &mine=true