Dispositivi audio

I dispositivi Google Cast per audio supportano solo la riproduzione dell'audio. Questa guida descrive come ottimizzare le applicazioni Cast per i dispositivi di solo audio e sfruttare la riduzione del fabbisogno di memoria, CPU e utilizzo della larghezza di banda di rete.

Un'app che supporta Google Cast per l'audio deve tenere in considerazione quanto segue:

  • I dispositivi Google Cast per audio non mostrano video o grafica. Tuttavia, molti dispositivi audio hanno un display per la visualizzazione dei metadati, ad esempio lo stato di riproduzione (in riproduzione o in pausa) e l'avanzamento. L'applicazione non deve mostrare queste informazioni utente critiche solo sul destinatario; le informazioni critiche e la maggior parte dell'interfaccia utente devono essere mostrate al mittente.
  • Per eseguire correttamente le applicazioni ricevitore web, Google Cast per i dispositivi audio deve comunque eseguire il rendering della grafica, anche se non vengono visualizzate. Poiché i dispositivi potrebbero non supportare operazioni grafiche con accelerazione hardware, le applicazioni di ricezione dovrebbero evitare di utilizzare operazioni ad alta intensità di grafica, come gradienti di colore, rotazione, combinazione alfa e il ridisegno di oggetti di grandi dimensioni come le barre di avanzamento più di una volta al secondo.
  • Google Cast per dispositivi audio supporta solo Widevine per i contenuti protetti da DRM (Digital Rights Management).
  • Per la maggior parte dei dispositivi Google Cast per audio, l'applicazione del mittente controlla l'intera gamma del volume del dispositivo (ad esempio gli altoparlanti), non solo il volume dell'ingresso della sorgente audio alla TV, come avviene con un dispositivo Chromecast.
  • Oltre a controllare la riproduzione con il dispositivo del mittente (ad esempio un telefono), l'app potrebbe dover consentire il controllo della riproduzione con i controller del dispositivo, come un telecomando, i tasti sul dispositivo o un'applicazione remota esterna.
  • Un dispositivo Google Cast per audio potrebbe supportare la visualizzazione di metadati dei contenuti con uno schermo LCD di piccole dimensioni, un'uscita HDMI (per soundbar o ricevitori audio-video) o un'applicazione remota esterna, a seconda dell'interfaccia utente specifica del dispositivo.

Sviluppo

La prima cosa da fare quando si crea un'applicazione Cast per il supporto di Google Cast per l'audio è sviluppare un'applicazione Cast per audio-video e assicurarsi che funzioni su Chromecast. Questo documento presuppone che tu abbia sviluppato e testato tale app.

Un'app può supportare dispositivi di solo audio e video. Deve sapere quando trasmette a un dispositivo e cosa no e deve prendere le misure necessarie per garantire la migliore esperienza utente nello scenario.

Ad esempio, le app dual video e audio (come le applicazioni per la riproduzione di file locali/NAS) devono consentire la trasmissione a dispositivi di solo audio per supportare la riproduzione di file audio, ma l'app non deve consentire all'utente di inviare file video al dispositivo di solo audio. L'app può utilizzare le API delle funzionalità del dispositivo per i mittenti descritte di seguito per determinare i contenuti appropriati per il dispositivo.

Per supportare Google Cast per l'audio, la tua app deve:

  • Supporta solo l'audio: musica in streaming e file audio, radio e così via. I contenuti multimediali trasmessi in streaming all'app ricevitore web non devono essere stream video. Inoltre, evita di eseguire lo streaming di grafica e immagini per migliorare i tempi di avvio delle applicazioni e l'utilizzo della memoria. Consulta le linee guida sull'utilizzo della memoria di seguito.

  • Funzionano come previsto su un dispositivo Cast per audio e su un normale Chromecast.

Funzionalità del dispositivo

La tua app può sapere se è in esecuzione su un dispositivo di solo audio grazie alle API delle funzionalità del dispositivo, disponibili dal dispositivo stesso o tramite le API mittente o destinatario.

Intestazione HTTP dispositivo

L'intestazione HTTP CAST-DEVICE-CAPABILITIES fornita dal dispositivo di trasmissione durante l'avvio dell'applicazione descrive le funzionalità del dispositivo. Il dispositivo invia una richiesta con questa intestazione al server che ospita l'app ricevitore web. L'intestazione per un dispositivo di solo audio descrive le funzionalità del dispositivo con CAST-DEVICE-CAPABILITIES: {"display_supported":false}.

Quando il tuo server riceve la richiesta dal dispositivo, puoi utilizzare le informazioni in questa intestazione per reindirizzare la richiesta all'app Web Ricevir, ottimizzata per i dispositivi audio.

API Web Receiver

Puoi ottenere lo stesso oggetto delle funzionalità del dispositivo chiamando CastReceiverManager.getDeviceCapabilities() quando l'app Web Ricevir viene caricata.

Per ulteriori informazioni, consulta Funzionalità dispositivo.

API Sender

Ogni API Cast Sender contiene anche informazioni sulle funzionalità del dispositivo. che consentono all'app del mittente di determinare quale tipo di contenuti multimediali inviare al destinatario. Se la tua app supporta sia audio che video, puoi evitare di inviare contenuti video a dispositivi di solo audio. Inoltre, l'app può controllare il volume utilizzando il metodo più appropriato per il dispositivo, come descritto nell'elenco di controllo per la progettazione. Vedi le seguenti API relative alle funzionalità del dispositivo per i mittenti:

Linee guida per l'utilizzo della memoria

Le app ricevitori web in esecuzione su dispositivi audio devono gestire l'utilizzo della memoria nel modo seguente:

  • Evita di scaricare o utilizzare asset immagine o grafiche per ridurre l'ingombro di memoria e ridurre il tempo necessario per l'avvio della riproduzione.
  • Quando si utilizzano Media Source Extensions (MSE), le applicazioni devono limitare il buffer del flusso a 2 MB. Se utilizzi la libreria Media Player (MPL), la dimensione del buffer dello stream dell'applicazione è già definita da MPL.
  • Quando utilizzi HTMLMediaElement, le dimensioni del buffer dello stream dell'applicazione vengono definite da Chrome in base alla frequenza dello stream. Limita la velocità in bit dell'audio a 2 megabit al secondo, questa impostazione supporta tutti i codec descritti nella sezione Contenuti multimediali supportati (fino a 48 KHz/16 bit).

Controllo del volume

Per la maggior parte dei dispositivi Google Cast per audio, l'applicazione del mittente controlla l'intervallo completo del volume del dispositivo, non solo il volume di ingresso della sorgente audio, come con un dispositivo Chromecast. Ciò significa che gli incrementi delle variazioni del volume devono essere inferiori per le applicazioni solo audio. Consulta i seguenti documenti per le linee guida su come fornire il controllo del volume nella tua app:

Controllo dispositivi

I dispositivi Google Cast per audio potrebbero avere i propri controlli di riproduzione (ad esempio pulsanti e telecomandi). Questi utilizzano i messaggi relativi alla riproduzione di contenuti multimediali definiti per lo spazio dei nomi urn:x-cast:com.google.cast.media, come descritto in Messaggi di riproduzione multimediale, per controllare la riproduzione nell'applicazione del destinatario. L'applicazione ricevitore deve supportare questi messaggi di riproduzione multimediale per supportare i controlli di riproduzione del dispositivo.

Inoltre, l'app del mittente deve supportare la funzionalità Messaggi dal destinatario al mittente in modo che, se l'utente cambia lo stato dei contenuti multimediali con i controlli del dispositivo, l'app del mittente possa ricevere un messaggio di stato dal destinatario e aggiornare l'interfaccia utente di conseguenza.

Display del dispositivo

I dispositivi Google Cast per audio potrebbero essere dotati di uno schermo LCD o di un'applicazione di controllo specifica del dispositivo che mostra metadati multimediali. L'app del destinatario deve fornire questi metadati per tutte le tracce audio e assicurarsi che siano sincronizzati con i contenuti attualmente in riproduzione per garantire che i metadati vengano visualizzati in modo appropriato sul display. Se l'applicazione utilizza metadati personalizzati, deve fornire anche i metadati audio standard (nome della traccia, nome dell'artista, titolo dell'album e così via) come descritto di seguito per ciascuna piattaforma.

Il destinatario riceve i metadati dal mittente quando carica i contenuti multimediali. Nell'app del mittente, con il comando per caricare i contenuti multimediali sul ricevitore, devi specificare i campi descritti di seguito in modo che i metadati vengano visualizzati sul dispositivo audio Google Cast. Utilizza le seguenti API:

Se l'app Cast gestisce una coda multimediale sul ricevitore o nel cloud, il ricevitore web deve trasmettere tutti gli aggiornamenti dello stato dei contenuti multimediali utilizzando lo spazio dei nomi urn:x-cast:com.google.cast.media in modo che tutti i mittenti vengano sincronizzati.

Iscrizione

Devi registrare il dispositivo Google Cast per audio per i test e la tua app affinché supporti Google Cast per i dispositivi audio tramite la Console per gli sviluppatori dell'SDK Google Cast.

  • Per ulteriori informazioni sulla registrazione dei dispositivi, vedi Dispositivi.
  • Devi selezionare la casella di controllo Supporta la trasmissione verso dispositivi di solo audio quando registri l'applicazione per consentire all'app di rilevare i dispositivi audio Google Cast. Vedi Registrare la richiesta.

Per le app non pubblicate, ad esempio quelle utilizzate per i test, devi selezionare anche l'opzione che consente di supportare i dispositivi di solo audio affinché l'app possa rilevare questi dispositivi.

Google Cast per Audio 2.0

Google Cast for Audio (GC4A) 2.0 è la piattaforma di trasmissione audio di nuova generazione progettata per dispositivi con poca memoria, in modo da espandere l'ecosistema di dispositivi in grado di riprodurre in streaming i tuoi contenuti.

È importante che gli sviluppatori di app audio testino le loro app su GC4A 2.0. Puoi testare la tua app Cast per GC4A 2.0 su un altoparlante di produzione Bose (ad esempio, lo smart speaker Bose 500).

Contatta gc4a-support-external@google.com se hai bisogno di assistenza per la configurazione del test o se non puoi utilizzare un altoparlante Bose. Se vuoi eseguire il debug della tua app, Google consiglia di utilizzare Cast Debug Logger.