Aplicación de remitente

Cuando se transmite contenido a un receptor web, el usuario siempre debe poder controlarlo desde la app emisora.

Nota: De acuerdo con las Condiciones del Servicio Adicionales del SDK de Google Cast, una aplicación multimedia de Cast debe usar las API de control de Play (Mensajes de reproducción de contenido multimedia) definidas para que el SDK controle la reproducción multimedia en la app receptora.

Las apps emisoras deben proporcionar controles de transmisión en las siguientes áreas:

El estado de reproducción y los controles de Cast de la app emisora en estas áreas deben sincronizarse con los cambios de reproducción que ocurran en el receptor web, incluso cuando la app emisora no los haya creado. Esto permitirá el manejo adecuado de los comandos de varios remitentes y el control de reproducción que provienen de los controles remotos del dispositivo, los botones, etc.

Android

Controles de transmisión de contenido

Minicontrolador

Controles de notificación

Bloquear controles de pantalla

iOS

Controles de transmisión de contenido

Minicontrolador

Chrome

Controles de transmisión de contenido

Minicontrolador

 

Controles de volumen del remitente

La app emisora debe permitir que los usuarios controlen el volumen del contenido que se reproduce en la TV o las bocinas mediante los botones de volumen del hardware o el control deslizante del volumen del software del dispositivo emisor. Esto controla lo siguiente:

  • El nivel de audio enviado a la TV para dispositivos Google Cast, como Chromecast.
  • El volumen real de la TV o bocina nativa para Google Cast, las TV con Android TV integrado y las bocinas inteligentes.

Obligatorio
A La app emisora debe permitir que los usuarios controlen el volumen del contenido que se reproduce en la TV o las bocinas mediante los botones de volumen del hardware o el control deslizante de volumen de software del dispositivo de envío.

  • Android: se requiere compatibilidad con los botones de hardware y el control deslizante del volumen de software.
  • iOS: el control deslizante de volumen de software es obligatorio.
  • Web/Chrome: La compatibilidad con el control deslizante del volumen de software es obligatoria.

B En el dispositivo móvil, el control deslizante del volumen de software debe estar disponible en el diálogo para transmitir durante la transmisión.
C El control deslizante del volumen en la app emisora debe sincronizarse con el volumen actual del receptor web después de conectarse al receptor web y mantenerse sincronizado.
D El control deslizante del volumen de la app emisora debe reflejar los cambios de volumen que realizaron otros remitentes o el control remoto de la app de Chromecast.
E Las apps emisoras nunca deben establecer el volumen en un nivel predefinido, sino que solo deben pasar los cambios de volumen iniciados por el usuario.
F Solo para Android: Cuando usas los botones de hardware para cambiar el nivel de volumen del receptor web, debe aparecer un control deslizante de volumen visual (con un ícono de Cast a la izquierda) cuando se presionan los botones de volumen. Nota: El ícono para transmitir no aparece en Android Gingerbread (versión 2.3).

Prácticas recomendadas

  • Incrementos de volumen:
    • Android: El marco de trabajo aumenta el volumen automáticamente.
    • iOS y Chrome: En el caso de los botones de volumen de hardware, usa incrementos de igual o menor que el 5% del rango de volumen completo del dispositivo receptor de Web para dispositivos de audio y video, e incrementos iguales al 2% del rango de volumen completo del dispositivo de receptor web para dispositivos de solo audio.

Controlador expandido del remitente

La app emisora debe proporcionar un control expandido para el contenido que se transmita.

Obligatorio
A Identifica el contenido que se transmite mostrando el título o el material gráfico del contenido.
B Antes de que comience la reproducción, muestra un indicador de carga y el material gráfico o título del contenido.
C Cuando comience el contenido, identifica el estado del receptor web.
D Proporcione controles relevantes.
E En el extremo izquierdo de la barra deslizante, muestra el tiempo de reproducción actual.
En el extremo derecho, se muestra la duración total de la transmisión si es conocida y no es una transmisión en vivo.
F Ocultar los controles que no sean relevantes para la transmisión
G No desconectes ni detengas la transmisión cuando los usuarios salgan del control expandido.
H Proporciona una manera fácil de volver al controlador expandido cuando los usuarios salgan de la página.

Prácticas recomendadas

  • Proporciona un control deslizante de posición de reproducción para las transmisiones de medios.
  • Muestra otras obras de arte y metadatos significativos relacionados con el contenido.
  • Identifique el tiempo transcurrido y la duración del contenido para las transmisiones de medios.

Android

Cargando el contenido del remitente

Cargando el contenido del remitente

Cargando el contenido del receptor

Se está reproduciendo el contenido del remitente

El receptor web reproduce contenido

iOS

Cargando el contenido del remitente

Cargando el contenido del receptor web

Se está reproduciendo el contenido del remitente

El receptor web reproduce contenido

Chrome

Cargando el contenido del remitente

Cargando el contenido del receptor web

Se está reproduciendo el contenido del remitente

El receptor web reproduce contenido

 

Minicontrol de remitentes

Durante la transmisión, debería aparecer un control pequeño y persistente conocido como el minicontrolador, cuando el usuario sale de la página de contenido actual o del control expandido hacia otra vista dentro de la app emisora. El minicontrolador es un recordatorio visible de la transmisión actual y proporciona acceso instantáneo a este.

Obligatorio
A Una barra o casilla que muestra lo que se transmite aparece cerca de la parte inferior de la app emisora. Estos controles persisten mientras el usuario explora otro contenido o secciones de la app.
B Los controles funcionan mejor cuando son simples y comunican lo que se transmite.
C Disponible en todas las pantallas de la app (excepto la página del control expandida).
D Si presionas el área de contenido, se abrirá el control expandido.
E Proporcionar cualquier otro control relevante para la acción inmediata.

Prácticas recomendadas
Para obtener la mejor experiencia de usuario, proporciona controles en el diálogo de Cast además del minicontrolador.

Android

Minicontrolador de emisor

Se pausó el contenido del receptor web

iOS

Minicontrolador de emisor

Se pausó el contenido del receptor web

Chrome

Minicontrolador de emisor

Se pausó el contenido del receptor web

 

Notificación del remitente

Obligatorio (solo para Android)
A Usa el ícono de la app (no el de transmisión) para la notificación en la barra de estado.
B Identifica qué contenido se transmite. Por ejemplo, muestra el título del contenido o el material gráfico.
C Identifica qué receptor web está transmitiendo.
D Proporciona controles básicos de contenido.
E Proporciona una "X" para detener la transmisión y desconectarte del receptor web en la fila de acciones.
F Si presionas el logotipo de la app, el título del contenido o el material gráfico, se debería abrir el control expandido de la app emisora.

Notas

  • Solo para Android: No se pueden implementar notificaciones en iOS o Chrome.
  • En Android Gingerbread (versión 2.3), las notificaciones solo mostrarán el ícono y el texto de la app, no se reproducirán, pausarán ni detendrán.
  • Para obtener más información, consulta cómo agregar controles de contenido multimedia a las notificaciones.

Android

Ícono de notificación del remitente

El receptor web reproduce contenido

Controles de notificación del remitente

El receptor web reproduce contenido

 

Pantalla de bloqueo del remitente

Obligatorio (solo para Android)
A Identifica la transmisión de contenido con el título o la carátula del contenido.
B Identifica qué receptor web está transmitiendo. Ten en cuenta que esto no es necesario para las apps de Music.
C Proporcionar controles de reproducción
D Proporciona acceso al control de volumen mediante botones de hardware.

Obligatorio para Android 4.4 KitKat y versiones posteriores:

  • Ícono de la app
  • Material gráfico (por ejemplo, la portada del álbum)
  • Identificar en el texto qué contenido se transmite (por ejemplo, "Lágrimas de acero")
  • Identificar qué receptor web está transmitiendo (por ejemplo, "Sala de estar")

Obligatorio para Android 4.3 Jelly Bean:

  • Material gráfico (por ejemplo, la portada del álbum)
  • Identificar en el texto qué contenido se transmite (por ejemplo, "Lágrimas de acero")
  • Identificar qué receptor web está transmitiendo (por ejemplo, "Sala de estar")

Notas

  • Solo para Android: No se pueden implementar notificaciones en iOS o Chrome.
  • Los controles de la pantalla bloqueada son obligatorios para Android 4.1 y versiones posteriores.
  • Hay diferentes controles disponibles para diferentes versiones del sistema operativo Android, y que la pantalla de bloqueo solo puede admitir campos de texto. En general, los gráficos y la iconografía se describen con más inmediatamente contenido que texto.
  • Los botones de hardware de control de volumen deben ajustar el volumen de la app emisora cuando el teléfono está bloqueado.
  • El control debe usar el componente de framework: MediaSession o MediaSessionCompat (para las versiones 4.4 y 4.3) o Notification (para las versiones 5.0 y posteriores).

Android

Controles de la pantalla bloqueada del remitente

El receptor web reproduce contenido

 

Reanudación del emisor

Una app emisora conectada debe restablecer su estado de conexión después de una desconexión implícita (como una caída de red, un dispositivo suspendido o agotando la batería).

Obligatorio
A Si la app emisora se desconecta de manera implícita (el usuario no detuvo la transmisión ni la conexión de manera explícita), el contenido de transmisión debería seguir reproduciéndose en el receptor web. Cuando se reinicia la app o la conexión, la app emisora debe restablecer la conexión al receptor web, siempre que la sesión del receptor web siga siendo actual.
B El botón para transmitir debe restaurarse al estado de conexión.
C Si el usuario presiona el botón para transmitir antes de que el remitente se vuelva a conectar, se mostrará la lista de dispositivos receptores web. Cuando el usuario seleccione la app receptora web, debería aparecer un minicontrolador o un controlador expandido en la app emisora.

Notas
Es posible que la app receptora web se desconecte y deje de ejecutarse debido a un corte de energía o a otra interrupción fuera de contexto. Esto se trata como un final de sesión común, como se describe en Remitente detiene la transmisión.

Android

Selecciona la app

El receptor web reproduce contenido

Se restableció la conexión de transmisión

El receptor web reproduce contenido

iOS

Selecciona la app

El receptor web reproduce contenido

Se restableció la conexión de transmisión

El receptor web reproduce contenido

 

El remitente deja de transmitir contenido

El contenido que se transmite a una TV continúa reproduciéndose hasta que el usuario elige Detener transmisión o un remitente transmite algo nuevo. Cuando hay varios remitentes conectados al mismo receptor web, cada app de remitente debe tener un botón para desconectar (en lugar de un botón para detener la transmisión) en el diálogo de transmisión.

Obligatorio
A Cuando varios remitentes están conectados a un receptor web, cuando presionas Detener transmisión desde una app emisora, el receptor no hace nada y se quitan los controles y las notificaciones de Cast del dispositivo emisor. Los dispositivos emisores restantes permanecen conectados con los controles de transmisión disponibles.
B Cuando una app emisora se desconecta de manera implícita (por ejemplo, cuando se agota la batería del dispositivo emisor o cuando se desconecta la conexión de red del dispositivo web al receptor web), el receptor no hace nada y quita los controles de transmisión y las notificaciones del dispositivo emisor. La app emisora debe realizar un seguimiento de las desconexiones implícitas y tratar de volver a conectarse a un receptor web cuando la app emisora se vuelve a abrir.

Android

Transmitir diálogo, botón para desconectar

El receptor web reproduce contenido

iOS

Transmitir diálogo, botón para desconectar

El receptor web reproduce contenido

Chrome

Transmitir diálogo, botón para desconectar

El receptor web reproduce contenido

 

 

Las imágenes que se usan en esta guía de diseño son cortesía de Blender Foundation, bajo licencia de derechos de autor o Creative Commons.

  • Elephant's Dream: (c) Copyright 2006, Blender Foundation / Dutch Media Art Institute/www.elephantsdream.org
  • Sintel: (c) Copyright Blender Foundation | www.sintel.org
  • Bases de acero: (CC) Blender Foundation | mango.blender.org
  • Big Buck Bunny: (c) Copyright 2008, Blender Foundation / www.bigbuckbunny.org