Panoramica

L'SDK di trasmissione consente a un utente di selezionare i contenuti audiovisivi in streaming utilizzando un mittente e di riprodurli su un altro dispositivo noto come destinatario, controllando al contempo la riproduzione usando il mittente.

Il termine Mittente si riferisce a un'app che svolge il ruolo di controller per la sessione di trasmissione. Un mittente avvia la sessione di trasmissione e gestisce l'interazione dell'utente con i contenuti.

Esistono molti tipi di mittenti, incluse le app mobile e le app web di Google Chrome, nonché le piattaforme di controllo virtuale sui dispositivi Google Home compatibili con il tocco. I controlli multimediali nel browser web Chrome funzionano come mittenti, così come l'Assistente Google stesso.

Il termine Destinatario si riferisce a un'app in esecuzione su un dispositivo compatibile con Google Cast, responsabile della risposta ai comandi del mittente e della trasmissione di contenuti di streaming da un servizio di streaming online al dispositivo compatibile con Google Cast. Esempi di dispositivi con ricezione compatibile con Google Cast includono Chromecast, smart TV, smart smart e smart speaker.

Inoltre, l'SDK Cast supporta più mittenti che si connettono a una sessione di trasmissione. Ad esempio, un mittente potrebbe avviare una sessione su un destinatario e un altro mittente potrebbe partecipare alla stessa sessione per controllare la riproduzione, caricare nuovi contenuti o mettere in coda più contenuti per un secondo momento.

Componenti e architettura delle app

Google Cast supporta lo sviluppo di app mittenti per Android, iOS e piattaforme web supportate da Cast, come Google Chrome.

Un'app del destinatario viene eseguita su un dispositivo compatibile con Google Cast, ad esempio:

  • Un Chromecast collegato a un televisore o a un sistema audio ad alta definizione.
  • Un televisore compatibile con Google Cast.
  • Uno schermo smart compatibile con Google Cast.
  • Un dispositivo Android compatibile con Google Cast, ad esempio Android TV.

Architettura di alto livello di Google Cast

Un mittente controlla la riproduzione dei contenuti multimediali su un destinatario utilizzando i messaggi di riproduzione dei contenuti multimediali definiti dall'SDK. Se un caso d'uso dell'app richiede l'invio di dati non formalmente definiti nei messaggi multimediali di riproduzione standard, puoi utilizzare il campo customData fornito da diversi tipi di messaggio per trasmettere dati ausiliari.

Esistono due scenari di base per lo sviluppo di app Cast:

  1. Una soluzione end-to-end basata su Google Cast. In questo scenario, lo sviluppatore deve creare sia l'app Mittente che due app del ricevitore: un ricevitore Android TV e un ricevitore web (ulteriori informazioni di seguito).
  2. Un'app Mittente compatibile con Google Cast che può trasmettere contenuti (uno schermo o uno stream multimediale) al Ricevitore Cast predefinito di Google, chiamato Ricevitore multimediale predefinito. In questo scenario, lo sviluppatore deve creare una sola app, il mittente. Il ricevitore multimediale predefinito è utile per l'apprendimento e per scenari di riproduzione molto limitati. Non è pratico per i riceventi che richiedono logica di business personalizzata, credenziali, gestione dei diritti o analisi.

L'SDK Google Cast

L'SDK Google Cast è composto da diverse librerie API Cast. Oltre alle API, esistono due tipi di documentazione:

  • Guide API che ti spiegano come utilizzare le API con il codice campione che mostra le funzionalità di trasmissione e
  • Tutorial su codelab che ti informano sulla procedura di sviluppo di tipi specifici di app Google Cast.

Le API Cast sono divise in base alla piattaforma e al tipo di app Cast. La tabella 1 contiene link alle guide per le varie API di trasmissione.

Tabella 1: guide dell'SDK di Google Cast
Piattaforma Mittente Ricevitore
Android App Mittenti Android Panoramica del ricevitore Android TV
Web App Web Sender Panoramica del ricevitore web
iOS App Mittente iOS n/d

Tipi di app mittenti

Le app del mittente possono essere eseguite su tre piattaforme:

  • Web
  • Android
  • iOS

Anche se la scelta del tipo di mittente probabilmente dipenderà in gran parte dalle piattaforme Mittente che intendi supportare, è importante conoscere le capacità e le limitazioni di ogni tipo di Mittente (vedi la Tabella 3).

Tabella 3: Confronto dei mittenti
Capacità Mittente Android Mittente iOS Mittente web
Interruzioni pubblicitarie e annunci companion in uno stream multimediale
Tracce con testo con stili
Raggruppa, crea stili e attiva tracce multimediali
Riproduzione automatica e coda (modifica, riordinamento, aggiornamento)
Criteri personalizzati
Azioni personalizzate
Interfaccia utente di trasmissione completa, inclusi controller e minicontroller
Intenzione di partecipare

Tipi di app di ricezione

Le app del destinatario gestiscono la comunicazione tra l'app Mittente e il dispositivo di trasmissione. Esistono due tipi principali di destinatari: il ricevitore web e il destinatario di Android TV. Devi fornire un ricevitore web come minimo e consigliamo di fornire un ricevitore Android TV per massimizzare l'esperienza dell'utente con la tua applicazione.

Esistono tre tipi di ricevitore web, ciascuno con una serie distinta di qualità e funzionalità:

  • Il destinatario personalizzato, che consente la logica, il branding e la modifica dei controlli personalizzati.
  • Il ricevitore multimediale con stili, che consente il branding personalizzato.
  • Il destinatario predefinito, che è il tipo più semplice. Ciò non consente alcuna personalizzazione e non è adatto per le app di produzione.

Oltre alle funzionalità fornite dal Ricevitore personalizzato, il ricevitore Android TV fornisce Cast Connect, un insieme di funzionalità che forniscono un'esperienza nativa ai tuoi utenti, combinando perfettamente Cast con Android TV.

La Tabella 2 evidenzia le capacità dei diversi tipi di Ricevitori.

Tabella 2: Confronto dei destinatari
Ricevitore Android TV Ricevitore personalizzato Ricevitore stile multimediale (SMR) Destinatario predefinito per contenuti multimediali
Piattaforma
Basato su Android (Java/Kotlin)
Basato sul Web (HTML5)
Requisiti
Registrazione
Funzionalità
Riproduzione di contenuti multimediali HLS e DASH
Supporto per i controlli touch
Consente di gestire i comandi vocali dei dispositivi con l'assistente integrato
Stile visivo e branding personalizzabili
Gestisce i messaggi personalizzati
Connetti

La scelta tra le tre opzioni di ricezione web dipende dai tipi di media che l'app deve supportare, dal grado di personalizzazione dell'interfaccia utente richiesta e dagli eventuali requisiti della logica personalizzata.

Determina il tipo di ricevitore web da creare

A condizione che la tua app possa integrarsi con Google Cast, utilizza le seguenti istruzioni per determinare quale tipo di ricevitore web dovresti creare:

Crea un destinatario personalizzato se:
L'app richiede una o più delle seguenti funzionalità speciali:

  • Stili non forniti dal ricevitore multimediale con stili
  • Modifiche dei controlli touch
  • Autorizzazione o autenticazione
  • Dati e analisi del destinatario
  • Licenza DRM fornita separatamente dal file manifest
  • Pre-, a metà o post-pubblicità
  • Qualsiasi altra funzionalità personalizzata del destinatario o la logica JavaScript personalizzata
OPPURE
  • L'app richiede stili personalizzati
AND
  • Le funzionalità di stile del ricevitore multimediale con stile non sono sufficienti
Crea un ricevitore multimediale con stile se:
  • L'app richiede stili personalizzati
AND
  • Le funzionalità di stile del ricevitore multimediale con stile sono sufficienti
AND
  • L'app non richiede nessuna delle funzionalità speciali elencate sopra
Usa il ricevitore multimediale predefinito se:
  • Il formato multimediale è supportato
AND
  • L'app non richiede stili personalizzati
AND
  • L'app non richiede nessuna delle funzionalità speciali elencate sopra