Google Cast per i dispositivi audio supporta solo la riproduzione audio. Questa guida descrive come ottimizzare le applicazioni di trasmissione per i dispositivi solo audio e come trarre vantaggio dalle ridotte esigenze di utilizzo della memoria, della CPU e della larghezza di banda della rete.
Un'app che supporta Google Cast per l'audio deve tenere conto dei seguenti aspetti:
- I dispositivi Google Cast per l'audio non visualizzano immagini o video. Tuttavia, molti dispositivi audio hanno un display che mostra i metadati, ad esempio lo stato della riproduzione (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 sul mittente.
- Per eseguire correttamente le applicazioni di ricezione web, Google Cast per i dispositivi audio deve comunque visualizzare le immagini, anche se non vengono visualizzate. Poiché i dispositivi potrebbero non supportare le operazioni grafiche con accelerazione hardware, le applicazioni riceventi dovrebbero evitare di utilizzare operazioni ad alta intensità di grafica, come gradienti di colore, rotazione, fusione alfa e ridisegnare oggetti di grandi dimensioni come le barre di avanzamento più di una volta al secondo.
- I dispositivi Google Cast per l'audio supportano solo contenuti protetti da Widevine for Digital Rights Management (DRM).
- Per la maggior parte dei dispositivi Google Cast per audio, l'applicazione del mittente controlla l'intera gamma del volume del dispositivo (ad esempio, uno speaker), non solo il volume dell'origine audio inviata alla TV, come nel caso di un dispositivo Chromecast.
- Oltre a controllare la riproduzione con il dispositivo del mittente (ad esempio, un telefono), l'app potrebbe dover fornire la possibilità di controllare la riproduzione con i controller del dispositivo, ad esempio un telecomando, pulsanti sul dispositivo o un'applicazione di controllo remoto esterno.
- Un dispositivo Google Cast per audio potrebbe supportare la visualizzazione dei 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 della UI specifica del dispositivo.
Sviluppo
Il primo passaggio nello sviluppo di un'applicazione Cast per supportare Google Cast audio consiste nello sviluppare un'applicazione Cast audio-video e assicurati che venga eseguita su Chromecast. Questo documento presuppone che tu abbia sviluppato e testato l'app.
Un'app può supportare sia dispositivi audio-video che solo audio. Ha bisogno di sapere quando viene trasmesso a uno rispetto all'altro e adottare misure per garantire la migliore esperienza utente in uno scenario specifico.
Ad esempio, le doppie app per video e audio (come le applicazioni per la riproduzione di file locali/NAS) dovrebbero attivare la trasmissione su dispositivi solo audio per supportare la riproduzione di file audio. Tuttavia, l'app non deve consentire all'utente di inviare file video al dispositivo con solo audio. L'app può utilizzare le API relative alle funzionalità del dispositivo per i mittenti descritte di seguito per determinare i contenuti appropriati per il dispositivo.
Per supportare Google Cast audio, la tua app deve svolgere le seguenti operazioni:
Supporta solo l'audio: streaming di file musicali e audio, radio e così via. I contenuti multimediali trasmessi in streaming all'app ricevitore web non devono essere video stream. Evita inoltre di trasmettere in streaming immagini e immagini per migliorare i tempi di avvio dell'applicazione e l'utilizzo della memoria. Consulta le linee guida sull'utilizzo della memoria riportate di seguito.
Esegui come previsto su un dispositivo Google Cast per Chromecast e su un normale dispositivo Chromecast.
Funzionalità dispositivo
La tua app può sapere se viene eseguita su un dispositivo di solo audio in virtù delle API delle funzionalità del dispositivo, disponibili dal dispositivo stesso o tramite le API del mittente o del destinatario.
Intestazione HTTP dispositivo
L'intestazione HTTP CAST-DEVICE-CAPABILITIES
fornita dal dispositivo di trasmissione durante il lancio 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 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 contenute in questa intestazione per reindirizzare la richiesta all'app Ricevitore web ottimizzata per i dispositivi audio.
API Web Ricevitore
Puoi ottenere lo stesso oggetto funzionalità del dispositivo chiamando CastReceiverManager.getDeviceCapabilities()
quando viene caricata l'app Web Transfer.
Per ulteriori informazioni, consulta la sezione Funzionalità dei dispositivi.
API Sender
Tutte le API Trasmettitore contengono le informazioni sulle funzionalità del dispositivo. Consente all'app del mittente di determinare quale tipo di contenuto multimediale inviare al destinatario. Se l'app supporta audio e video, può evitare di inviare contenuti video a dispositivi 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:
- Android: CastDevice.hasCapabilities
- iOS: deviceCapabilities
- Chrome: chrome.cast.Capability
Linee guida per l'utilizzo della memoria
Le app ricevitore web in esecuzione su dispositivi audio devono gestire l'utilizzo della memoria nel seguente modo:
- Evita di scaricare o utilizzare risorse grafiche o immagine, per ridurre l'impatto della memoria e ridurre il tempo necessario per l'avvio della riproduzione.
- Quando si utilizzano le estensioni sorgente di contenuti multimediali (MSE), le applicazioni devono limitare il buffer dello stream a 2 MB. Se utilizzi la libreria lettore multimediale (MPL), la dimensione del buffer di streaming dell'applicazione è già definita da MPL.
- Quando utilizzi HTMLMediaElement, la dimensione del buffer di stream dell'applicazione viene definita da Chrome in base alla velocità di streaming. Limita la velocità in bit audio a 2 megabit al secondo, che supporta tutti i codec descritti in 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'intero volume del volume del dispositivo, non solo il volume in ingresso dell'origine audio, come con un dispositivo Chromecast. Ciò significa che gli incrementi della variazione 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 nell'app:
- Controlli del volume dei mittenti nell'elenco di controllo per la progettazione
- Volume mittente Android
- Volume mittente iOS
- Volume mittente web
Controllo dispositivi
Google Cast per i dispositivi audio potrebbe avere i propri controlli di riproduzione (ad esempio,
pulsanti, telecomandi). Utilizzano i messaggi di riproduzione multimediale definiti per lo spazio dei nomi urn:x-cast:com.google.cast.media
, come descritto nella sezione Messaggi di riproduzione dei contenuti multimediali, per controllare la riproduzione sull'applicazione del ricevitore. L'applicazione del destinatario deve supportare questi messaggi di riproduzione multimediale per supportare i controlli di riproduzione del dispositivo.
Inoltre, l'app del mittente deve supportare i 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'UI di conseguenza.
Display del dispositivo
Un dispositivo Google Cast per audio potrebbe avere uno schermo LCD sul dispositivo o un'applicazione di controllo specifica del dispositivo che mostra i metadati multimediali. L'app del ricevitore deve fornire questi metadati per tutte le tracce audio e verificare che siano sincronizzati con i contenuti attualmente in riproduzione per garantire che i metadati vengano visualizzati correttamente sul display. Se l'applicazione utilizza metadati personalizzati, deve anche fornire i metadati audio standard (nome della traccia, nome dell'artista, titolo dell'album e così via) come descritto per ogni piattaforma di seguito.
Il destinatario riceve i metadati dal mittente quando carica il contenuto multimediale. 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 Google Cast per audio. Utilizza le seguenti API:
Android
MediaMetadata
conMEDIA_TYPE_MUSIC_TRACK
e:iOS
GCKMediaMetadata
conGCKMediaMetadataType
GCKMediaMetadataTypeMusicTrack
e:Chrome
MediaInfo
conMusicTrackMediaMetadata
e:
Se l'app di trasmissione gestisce una coda multimediale sul ricevitore o nel cloud, il ricevitore web deve trasmettere eventuali 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.
Registrazione
Devi registrare il tuo dispositivo Google Cast per audio affinché venga testato e registrare l'app per supportare Google Cast per i dispositivi audio utilizzando la Console per gli sviluppatori dell'SDK Google Cast.
- Per ulteriori informazioni sulla registrazione dei dispositivi, consulta la sezione Dispositivi.
- Devi selezionare la casella di controllo Supporta la trasmissione a dispositivi solo audio durante la registrazione dell'applicazione per consentire all'app di rilevare Google Cast per i dispositivi audio. Vedi Registrare la tua domanda.
Per le app non pubblicate, come quelle utilizzate per i test, devi anche selezionare l'opzione per supportare i dispositivi solo audio al fine di scoprire i dispositivi solo audio.
Google Cast audio 2.0
Google Cast per audio (GC4A) 2.0 è la piattaforma audio Cast di nuova generazione progettata per scegliere come target i dispositivi con memoria ridotta, per espandere l'ecosistema dei dispositivi in grado di riprodurre contenuti in streaming.
È importante che gli sviluppatori di app audio testino le proprie app su GC4A 2.0. Puoi testare l'app Cast per GC4A 2.0 su uno speaker Bose di produzione (ad esempio, lo Smart speaker Bose" 500).
Contatta gc4a-support-external@google.com se hai bisogno di assistenza per la configurazione o se non puoi utilizzare un altoparlante Bose. Se vuoi eseguire il debug dell'app, Google consiglia di utilizzare Log Debug Cast.