El SDK de Cast permite que un usuario seleccione contenido audiovisual de transmisión con un Remitente y lo reproduzca en (o transmita a) otro dispositivo conocido como el Receptor, mientras controla la reproducción con el Remitente.
El término Remitente hace referencia a una app que cumple la función de controlador para la sesión de Cast. Un remitente inicia la sesión de Cast y administra la interacción del usuario con el contenido.
Hay muchos tipos de remitentes, como apps para dispositivos móviles y apps web de Google Chrome, además de plataformas de control virtuales en dispositivos táctiles de Google Home. Los controles de contenido multimedia en el navegador web Chrome funcionan como remitentes, al igual que el Asistente de Google.
El término receptor hace referencia a una app que se ejecuta en un dispositivo compatible con Cast y es responsable de responder a los comandos del remitente y de transmitir contenido de transmisión de un servicio de transmisión en línea al dispositivo compatible con Cast. Algunos ejemplos de dispositivos receptores compatibles con Cast incluyen Chromecasts, televisores inteligentes, pantallas inteligentes y bocinas inteligentes.
El SDK de Cast también admite el envío de varios remitentes a una sesión de Cast. Por ejemplo, un remitente podría iniciar una sesión en un receptor y otro remitente podría unirse a la misma sesión para controlar la reproducción, cargar contenido nuevo o poner en cola más contenido para más tarde.
Componentes y arquitectura de la app
Google Cast admite el desarrollo de apps de remitentes para Android, iOS y las plataformas web compatibles con Cast, como Google Chrome.
Una app receptora se ejecuta en un dispositivo compatible con Cast. Algunos ejemplos son los siguientes:
- Un Chromecast conectado a un sistema de sonido o televisión de alta definición
- Una televisión compatible con Cast.
- Una pantalla inteligente compatible con Cast
- Un dispositivo compatible con Cast, como Android TV
Un remitente controla la reproducción de contenido multimedia en un receptor mediante mensajes de reproducción de contenido multimedia definidos por el SDK. Si un caso de uso de la app requiere que se envíen datos que no están definidos formalmente en los mensajes de reproducción de contenido multimedia estándar, puedes usar el campo customData
que proporcionan varios tipos de mensajes para pasar datos complementarios.
Existen dos situaciones básicas de desarrollo de apps de Cast:
- Una solución integral basada en Cast. En esta situación, el desarrollador debe compilar la app emisora y las dos app receptora: una Android TV y un receptor web (más información al respecto a continuación).
- Una app emisora compatible con Cast que puede transmitir contenido (una pantalla o una transmisión multimedia) a la app receptora de transmisión predeterminada de Google, que se denomina receptor de medios predeterminado. En esta situación, el desarrollador solo necesita compilar una app, el remitente. El Media Receiver predeterminado es útil para el aprendizaje y situaciones de reproducción muy limitadas. No es práctico para los receptores que requieren lógica empresarial, credenciales, administración de derechos o estadísticas personalizadas.
SDK de Google Cast
El SDK de Google Cast consta de varias bibliotecas de la API de Cast. Además de las API, hay dos tipos de documentación:
- Guías de API que te guiarán a fin de que puedas usar las API con un código de muestra que demuestra las funciones de Cast.
- Instructivos de codelabs que te indican el proceso para desarrollar tipos específicos de apps de Cast
Las API de Cast se dividen según la plataforma y el tipo de app de Cast. La Tabla 1 contiene vínculos a las guías para las distintas API de Cast.
Plataforma | Remitente | Receptor |
---|---|---|
Android | Apps para remitentes de Android | Descripción general de la app receptora de Android TV |
Web | Aplicaciones de remitentes web | Descripción general de Web Receiver |
iOS | Apps emisoras de iOS | N/A |
Tipos de apps emisoras
Las apps emisoras se pueden ejecutar en tres plataformas:
- Web
- Android
- iOS
Si bien es probable que la elección del tipo de remitente esté determinada en gran medida por las plataformas de remitente que deseas admitir, es importante conocer las capacidades y las limitaciones de cada tipo de remitente (consulta la tabla 3).
Función | Remitente de Android | Remitente de iOS | Remitente web |
---|---|---|---|
Pausas publicitarias y anuncios complementarios en transmisiones de medios | |||
Pistas de texto con estilo | |||
Cómo agrupar, diseñar y activar pistas multimedia | |||
Reproducción automática y elementos en fila (editar, reordenar, actualizar) | |||
Canales personalizados | |||
Acciones personalizadas | |||
IU completa de Cast, incluidos un controlador y un minicontrolador | |||
Intención de unirse |
Tipos de apps receptoras
Las apps receptores controlan la comunicación entre la app emisora y el dispositivo de transmisión. Existen dos tipos principales de receptor: el Receptor web y el Receptor de Android TV. Se espera que proporciones un receptor web, como mínimo, y te recomendamos que proporciones un receptor de Android TV para maximizar la experiencia del usuario con tu aplicación.
Existen tres tipos de receptores web, cada uno con un conjunto distinto de cualidades y capacidades:
- El receptor personalizado, que permite la lógica personalizada, el desarrollo de la marca y la modificación de los controles.
- El receptor de medios con estilo, que permite el desarrollo de la marca personalizado.
- El receptor predeterminado, que es el tipo más básico. Esto no permite ninguna personalización y no es adecuado para apps de producción.
Además de las funciones que brinda el receptor personalizado, este Android proporciona Cast Connect, un conjunto de capacidades que ofrecen una experiencia nativa a los usuarios, mediante la combinación perfecta de la transmisión con Android TV.
En la Tabla 2, se destacan las capacidades de los diferentes tipos de receptores.
Receptor de Android TV | Receptor personalizado | Style Media Receiver (SMR) | Receptor multimedia predeterminado | |
---|---|---|---|---|
Plataforma | ||||
Basado en Android (Java/Kotlin) | ||||
Basado en la Web (HTML5) | ||||
Requisitos | ||||
Debe estar registrado | ||||
Funciones | ||||
Reproducción de medios HLS y DASH | ||||
Compatibilidad con controles de tacto | ||||
Controla comandos por voz de dispositivos compatibles con el Asistente | ||||
Estilo visual y de desarrollo de la marca personalizables | ||||
Administra mensajes personalizados. | ||||
Cast Connect |
La elección entre las tres opciones de Web Receiver depende de los tipos de contenido multimedia que la app necesite admitir, el grado de personalización de la IU que se requiere y cualquier requisito lógico personalizado.
Cómo determinar qué tipo de receptor web compilar
Siempre que tu app pueda integrarse con Cast, usa los siguientes mensajes para determinar qué tipo de receptor web debes compilar:
Crea un receptor personalizado en los siguientes casos: | |||||
La app requiere una o más de las siguientes funciones especiales:
|
O |
|
Crea un receptor de medios con estilo en los siguientes casos: | |||||
|
Usa el receptor de contenido multimedia predeterminado en los siguientes casos: | |||||
|