Lorsque du contenu est casté sur un Web Receiver, l'utilisateur doit toujours pouvoir le contrôler depuis l'application émettrice.
Remarque : Conformément aux Conditions d'utilisation supplémentaires pour les développeurs du SDK Google Cast, une application Cast de contenu multimédia doit utiliser les API de contrôle de lecture (Messages de lecture de contenu multimédia) définies pour le SDK afin de contrôler la lecture de contenu multimédia sur le Web Receiver.
Les applications émettrices doivent fournir des commandes Cast dans les zones suivantes :
- Boîte de dialogue Cast, pendant la diffusion
- Contrôles du volume pour l'expéditeur
- Télécommande agrandie de l'expéditeur
- Mini-télécommande Sender
- Notification à l'expéditeur
- Écran de verrouillage de l'expéditeur
L'état de lecture Cast et les commandes de l'application émettrice dans ces zones doivent être synchronisés avec les modifications de lecture qui se produisent sur le Web Receiver, même si elles ne proviennent pas de l'application émettrice. Cela permettra de gérer correctement les commandes multi-émetteurs et le contrôle de la lecture provenant des télécommandes, des boutons, etc. de l'appareil.
Android
Commandes de la boîte de dialogue Cast
Mini-télécommande
Paramètres des notifications
Verr. commandes écran
iOS
Commandes de la boîte de dialogue Cast
Mini-télécommande
Chrome
Commandes de la boîte de dialogue Cast
Mini-télécommande
Commandes de volume de l'expéditeur
L'application émettrice doit permettre aux utilisateurs de contrôler le volume du contenu en cours de lecture sur le téléviseur ou les enceintes à l'aide des boutons de volume physiques et/ou du curseur de volume logiciel sur l'appareil émetteur. Ces contrôles permettent d'effectuer l'une des opérations suivantes :
- Niveau audio envoyé au téléviseur pour les appareils Google Cast tels que Chromecast.
- Volume réel du téléviseur/de l'enceinte pour les téléviseurs Google Cast, les téléviseurs avec Android TV intégré et les enceintes connectées.
Obligatoire
A L'application émettrice doit permettre aux utilisateurs de contrôler le volume du contenu en cours de lecture sur le téléviseur ou les enceintes à l'aide des boutons de volume matériels et/ou du curseur de volume logiciel sur l'appareil émetteur.
- Android : la prise en charge des boutons matériels et du curseur de volume logiciel est obligatoire.
- iOS : le curseur de volume logiciel est obligatoire.
- Web/Chrome : la prise en charge du curseur de volume logiciel est obligatoire.
B Sur l'appareil mobile, le curseur de volume du logiciel doit être disponible dans la boîte de dialogue Cast, lors de la diffusion.
C Le curseur de volume de l'application émettrice doit se synchroniser avec le volume actuel du Web Receiver après la connexion au Web Receiver et rester synchronisé.
D Le curseur de volume de l'application émettrice doit refléter les modifications de volume apportées par d'autres émetteurs ou par la télécommande de l'application Chromecast.
E Les applications émettrices ne doivent jamais définir le volume sur un niveau prédéfini. Elles ne doivent transmettre que les modifications de volume initiées par l'utilisateur.
F Android uniquement : lorsque vous utilisez les boutons physiques pour modifier le niveau de volume sur le Web Receiver, un curseur de volume visuel (avec une icône Cast à sa gauche) doit s'afficher lorsque vous appuyez sur les boutons physiques de volume. Remarque : L'icône Caster n'apparaît pas sur Android Gingerbread (version 2.3).
Bonnes pratiques
- Incréments de volume :
- Android : le framework augmente automatiquement le volume.
- iOS et Chrome : pour les boutons de volume physiques, utilisez des incréments inférieurs ou égaux à 5 % de la plage de volume complète de l'appareil Web Receiver pour les appareils audio/vidéo, et des incréments égaux à 2 % de la plage de volume complète de l'appareil Web Receiver pour les appareils audio uniquement.
Télécommande agrandie de l'expéditeur
L'application émettrice doit fournir une télécommande agrandie pour le contenu en cours de diffusion.
Obligatoire
A Identifiez le contenu en cours de diffusion en affichant le titre ou l'illustration du contenu.
B Avant le début de la lecture, affichez un indicateur de chargement, ainsi que le titre ou la pochette du contenu.
C Lorsque le contenu démarre, identifiez l'état Web Receiver.
D Fournissez des contrôles pertinents.
E Affichez la durée de lecture actuelle à l'extrémité gauche de la barre de recherche.
À l'extrémité droite, affichez la durée totale du flux si elle est connue et s'il ne s'agit pas d'un flux en direct.
F Masquer les commandes non pertinentes pour le casting.
G Ne déconnectez pas ni n'arrêtez la diffusion lorsque les utilisateurs quittent le contrôleur étendu.
H Offrez aux utilisateurs un moyen facile de revenir à la télécommande développée lorsqu'ils quittent l'écran.
Bonnes pratiques
- Fournissez un curseur de position de lecture pour les flux multimédias.
- Afficher d'autres illustrations et métadonnées pertinentes liées au contenu
- Identifier le temps écoulé et la durée du contenu pour les flux multimédias.
Android
Chargement du contenu de l'expéditeur
Chargement du contenu sur le récepteur
Lecture du contenu de l'expéditeur
Web Receiver en train de lire du contenu
iOS
Chargement du contenu de l'expéditeur
Chargement de contenu Web Receiver
Lecture du contenu de l'expéditeur
Web Receiver en train de lire du contenu
Chrome
Chargement du contenu de l'expéditeur
Chargement de contenu Web Receiver
Lecture du contenu de l'expéditeur
Web Receiver en train de lire du contenu
Mini-télécommande Sender
Une petite commande persistante appelée mini-télécommande doit s'afficher pendant la diffusion lorsque l'utilisateur quitte la page de contenu actuelle ou la télécommande développée pour accéder à une autre vue dans l'application émettrice. La mini-télécommande est un rappel visible de la diffusion en cours et permet d'y accéder instantanément.
Obligatoire
A Une barre ou une zone affichant le contenu en cours de diffusion s'affiche près du bas de l'application émettrice. Ces commandes restent visibles pendant que l'utilisateur parcourt d'autres contenus ou sections de l'application.
B Les commandes fonctionnent mieux lorsqu'elles sont simples et indiquent le contenu en cours de diffusion.
C Disponible sur tous les écrans de l'application (sauf sur la page de la télécommande agrandie).
D Appuyez sur la zone de contenu pour ouvrir le sélecteur étendu.
E Fournissez toutes les autres commandes pertinentes pour une action immédiate.
Bonnes pratiques
Pour une expérience utilisateur optimale, fournissez des commandes dans la boîte de dialogue Cast en plus du lecteur petit format.
Android
Mini-télécommande Sender
Contenu Web Receiver mis en pause
iOS
Mini-télécommande Sender
Contenu Web Receiver mis en pause
Chrome
Mini-télécommande Sender
Contenu Web Receiver mis en pause
Notification à l'expéditeur
Obligatoire (Android uniquement)
A Utilisez l'icône de l'application (et non l'icône Cast) pour la notification dans la barre d'état.
B Identifiez le contenu en cours de diffusion. Par exemple, afficher le titre ou la pochette d'un contenu.
C Identifiez le Web Receiver qui diffuse le contenu.
D Fournissez des commandes de contenu de base.
E : dans la ligne des actions, indiquez "X" pour arrêter la diffusion et vous déconnecter du Web Receiver.
F Appuyer sur le logo de l'application, le titre du contenu ou l'illustration doit ouvrir le contrôleur étendu de l'application émettrice.
Remarques
- Android uniquement : il n'est pas possible d'implémenter des notifications dans iOS ni dans Chrome.
- Dans Android Gingerbread (version 2.3), les notifications n'affichent que l'icône et le texte de l'application, et non les boutons de lecture/pause ou d'arrêt.
- Pour en savoir plus, consultez Ajouter des commandes multimédias aux notifications.
Android
Icône de notification de l'expéditeur
Web Receiver en train de lire du contenu
Paramètres de notification de l'expéditeur
Web Receiver en train de lire du contenu
Écran de verrouillage de l'expéditeur
Obligatoire (Android uniquement)
A Identifiez le contenu casté à l'aide du titre ou de l'illustration du contenu.
B Identifiez le Web Receiver qui diffuse le contenu. Notez que cela n'est pas nécessaire pour les applications musicales.
C Fournir des commandes de lecture.
D Fournissez l'accès au contrôle du volume via les boutons physiques.
Obligatoire pour Android 4.4 KitKat et versions ultérieures :
- Icône de l'application
- Illustrations (par exemple, la couverture d'un album)
- Identifier le contenu en cours de diffusion dans le texte (par exemple, "Tears of Steel")
- Identifiez le Web Receiver qui diffuse le contenu (par exemple, "Salon").
Configuration requise pour Android 4.3 Jelly Bean :
- Illustrations (par exemple, la couverture d'un album)
- Identifier le contenu en cours de diffusion dans le texte (par exemple, "Tears of Steel")
- Identifiez le Web Receiver qui diffuse le contenu (par exemple, "Salon").
Remarques
- Android uniquement : il n'est pas possible d'implémenter des notifications dans iOS ni dans Chrome.
- Les commandes de l'écran de verrouillage sont obligatoires pour Android 4.1 et les versions ultérieures.
- Différentes commandes sont disponibles pour différentes versions du système d'exploitation Android, et l'écran de verrouillage ne peut contenir que des champs de texte. En général, les graphiques et les icônes décrivent le contenu plus immédiatement que le texte.
- Les boutons matériels de contrôle du volume doivent ajuster le volume de l'application émettrice lorsque le téléphone est verrouillé.
- Le contrôle doit utiliser le composant du framework :
MediaSession
ouMediaSessionCompat
(pour les versions 4.4 et 4.3) ouNotification
(pour la version 5.0 et les versions ultérieures).
Android
Commandes de l'écran de verrouillage de l'expéditeur
Web Receiver en train de lire du contenu
Reprise de la diffusion par l'expéditeur
Une application émettrice connectée doit rétablir son état de connexion après une déconnexion implicite (par exemple, en cas de perte de réseau, de mise en veille de l'appareil ou de décharge de la batterie).
Obligatoire
A Si l'application émettrice se déconnecte implicitement (l'utilisateur n'a pas explicitement arrêté la diffusion ni déconnecté l'appareil), le contenu diffusé doit continuer à être lu sur le Web Receiver. Lorsque l'application ou la connexion est redémarrée, l'application émettrice doit rétablir la connexion au Web Receiver, à condition que la session Web Receiver soit toujours en cours.
B Le bouton Cast doit être restauré à l'état connecté.
C Si l'utilisateur appuie sur le bouton Cast avant que l'expéditeur ne se reconnecte, la liste des appareils Web Receiver s'affiche. Lorsque l'utilisateur sélectionne le Web Receiver en cours de diffusion, une mini-télécommande ou une télécommande développée doit s'afficher dans l'application émettrice.
Remarques
L'application Web Receiver peut également se déconnecter et cesser de s'exécuter en cas de panne de courant ou d'une autre interruption hors contexte. Cela est traité comme une fin de session ordinaire, comme décrit dans L'expéditeur arrête la diffusion.
Android
Sélectionner l'application
Web Receiver en train de lire du contenu
Connexion Cast rétablie
Web Receiver en train de lire du contenu
iOS
Sélectionner l'application
Web Receiver en train de lire du contenu
Connexion Cast rétablie
Web Receiver en train de lire du contenu
L'expéditeur arrête la diffusion
Le contenu diffusé sur un téléviseur continue d'être lu jusqu'à ce qu'un utilisateur choisisse d'arrêter la diffusion ou qu'un émetteur diffuse un nouveau contenu. Lorsque plusieurs expéditeurs sont connectés au même Web Receiver, chaque application expéditrice doit comporter un bouton "Déconnecter" (au lieu d'un bouton "Arrêter la diffusion") dans la boîte de dialogue Cast.
Obligatoire
A Lorsque plusieurs expéditeurs sont connectés à un Web Receiver, appuyer sur "Arrêter la diffusion" depuis l'une des applications d'envoi n'a aucun effet sur le Web Receiver et supprime les commandes et les notifications Cast de l'appareil de l'expéditeur. Le ou les appareils expéditeurs connectés restants restent connectés et les commandes Cast sont disponibles.
B Lorsqu'une application émettrice se déconnecte de manière implicite (par exemple, lorsque la batterie de l'appareil émetteur est déchargée ou que la connexion réseau de l'appareil émetteur au Web Receiver est interrompue), elle n'a aucun effet sur le Web Receiver et supprime les commandes et les notifications Cast de l'appareil émetteur. L'application émettrice doit suivre les déconnexions implicites et tenter de se reconnecter à un Web Receiver lorsque l'application émettrice est rouverte.
Android
Boîte de dialogue Cast, bouton de déconnexion
Web Receiver en train de lire du contenu
iOS
Boîte de dialogue Cast, bouton de déconnexion
Web Receiver en train de lire du contenu
Chrome
Boîte de dialogue Cast, bouton de déconnexion
Web Receiver en train de lire du contenu
Les images utilisées dans ce guide de conception sont fournies par la Blender Foundation et partagées sous licence de droits d'auteur ou Creative Commons.
- Elephant's Dream : (c) copyright 2006, Blender Foundation / Netherlands Media Art Institute/www.elephantsdream.org
- Sintel : (c) copyright Blender Foundation | www.sintel.org
- Tears of Steel : (CC) Blender Foundation | mango.blender.org
- Big Buck Bunny : (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org