Scénario : Contenu de location
Pour le contenu de location, la licence fournie pour le contenu spécifie une date et une heure d’expiration. Une fois cette date et cette heure terminées, le contenu peut toujours se trouver sur l’appareil de l’utilisateur, et la licence peut également être conservée dans le magasin de données de l’appareil de l’utilisateur, mais le client PlayReady dans l’appareil de l’utilisateur utilisera le système d’horloge de l’appareil pour vérifier si la licence est toujours valide et appliquer l’expiration définie par le service dans la licence.
En outre, il est recommandé de définir une date et une heure de début (généralement la date et l’heure payées par l’utilisateur pour le contenu). Cela vous aidera à protéger le système dans certains cas où l’utilisateur serait en mesure de restaurer l’horloge de son appareil.
Une alternative est que le service fournisse une limitation dans la licence en termes d’intervalle de temps qui indique à quel moment la licence expirera après le premier jeu. Cela permet au fournisseur de services d’émettre une licence qui pourrait commencer à un moment donné, expirer à un moment spécifié et/ou expirer après une durée spécifiée, après la première lecture du contenu.
Voici un exemple classique :
Un utilisateur loue du contenu le vendredi 5 janvier 2018 à 18h00.
La licence remise à l’utilisateur inclut les restrictions suivantes :
Droite : lire (droit de déchiffrer le contenu à afficher sur un écran)
Heure de début : 5 janvier 2018 à 17h55 (l’heure de début est légèrement passée pour tenir compte de toute différence d’horloge mineure entre le client et le serveur)
Délai d’expiration — 5 février 2018 à 18h00 (un mois plus tard)
Expiration après la première lecture : 48 heures (2 jours complets après que l’utilisateur a commencé à jouer)
Étant donné que le contenu de location nécessite généralement des heures de début et d’expiration, le client doit prendre en charge un certain type d’horloge approuvée PlayReady. Pour plus d’informations, consultez Horloges approuvées.
La figure suivante indique les interactions entre les clients et les serveurs dans le scénario de contenu de location.
Le scénario de contenu de location effectue les étapes suivantes, comme illustré dans la figure :
Le contenu qui sera distribué aux clients est protégé par Microsoft PlayReady technologie.
Le fournisseur de services transfère les informations de protection du contenu à un serveur de licences.
Le fournisseur de services transfère le contenu protégé à un serveur pour la distribution sur le web.
Un client demande du contenu pour le streaming ou le téléchargement.
Le client acquiert une licence et commence à diffuser en continu ou à télécharger le contenu à partir du serveur de contenu à l’aide d’un protocole Internet tel que SSTP, DASH, HLS ou HTTP. Bien que le client diffuse ou télécharge le contenu, il peut déchiffrer le contenu et le contenu déchiffré peut être lu en continu.
Les mécanismes de remise les plus courants pour le contenu de location consiste à diffuser en continu le contenu protégé à partir d’un service Web, ou à télécharger le contenu sur un appareil local, puis à lire le contenu.
Diffusion en continu du contenu de location
Lors de la diffusion en continu d’un média de location, le contenu est lu en continu pendant qu’il est transféré à partir du serveur web. Les aspects techniques suivants doivent être pris en compte lors de l’implémentation de contenu de location diffusé en continu sur les appareils utilisateur.
PlayReady prend en charge de nombreux types de protocoles. Il n’existe aucune restriction pour n’importe quel protocole. Toutefois, les clients PlayReady prennent généralement en charge une ou plusieurs des normes suivantes : SSTP (Smooth Streaming), DASH (streaming adaptatif dynamique via HTTP), HLS (HTTP Live Streaming). En plus de ces protocoles, il est parfaitement acceptable et doable pour un service qui contrôle à la fois son back-end et ses clients d’implémenter un autre protocole, par exemple la multidiffusion TS sur un réseau fermé.
Le format du contenu est généralement H264 + AAC, ou H265 + AAC, mais tous les autres codecs sont autorisés par PlayReady.
Le contenu de location de streaming peut utiliser une licence persistante ou non persistante.
Le cas le plus évident serait des licences non persistantes. Les licences non persistantes sont stockées dans la mémoire volatile (RAM) et ne durent que tant que la session active. Les licences non persistantes sont bien adaptées au scénario de diffusion en continu, car pour la diffusion en continu, l’appareil doit être connecté de toute façon et peut se permettre d’acquérir une licence non persistante juste à temps au moment de la lecture.
Une licence non persistante qui est pré-acquise raccourcit également la durée de la première image. Pour plus d’informations, consultez Génération et émission de licence.
Une autre façon d’optimiser le temps pour la première image lors de la diffusion en continu de contenu de location consiste à tirer parti des « licences de durée limitée PlayReady ». Bien que l’utilisateur soit présenté à une page avec une liste de vidéos à sélectionner, les licences dont la durée est très faible sont pré-acquises en arrière-plan (généralement trente secondes). Ces licences incluent la restriction « Expiration en temps réel », qui garantit que le client cessera de jouer avec cette licence après trente secondes. Ensuite, l’utilisateur peut sélectionner l’une des vidéos répertoriées à lire. À ce stade, la lecture peut démarrer immédiatement. Le joueur demande une licence de location complète (pendant 48 heures) pour la vidéo sélectionnée par l’utilisateur, et le joueur se lie ensuite en toute transparence à la licence de location lors de la lecture. Cette optimisation est possible sur les clients PlayReady version 3.0 ou ultérieure, qui prennent en charge l’expiration en temps réel et la remise de licences non persistantes par lots.
Il est également possible d’utiliser des licences persistantes pour les scénarios de diffusion en continu. Les licences persistantes sont stockées en mémoire non volatile (dans le magasin de données local) et sont conservées pour la durée de vie du magasin ou jusqu’à ce qu’une restriction temporelle soit atteinte.
Télécharger et lire du contenu de location
Le contenu de location peut également être téléchargé sur le client avant que la lecture puisse commencer. En règle générale, cela permet d’obtenir une qualité constante du contenu non corrélé avec la qualité du réseau, mais peut nécessiter un certain délai avant que la lecture puisse réellement démarrer.
Les aspects techniques suivants doivent être pris en compte lors de l’implémentation de contenu de location téléchargé et lu.
Le contenu peut être téléchargé sous la forme d’un fichier simple via HTTP, si le contenu est déjà créé au format approprié pour l’appareil. Une autre option est que le client récupère les segments successifs d’une ressource de diffusion en continu adaptative sur le protocole de streaming (SSTP, DASH, HLS, other) et les packs tous sur le stockage local de l’appareil pour une lecture plus poussée, sous la forme d’un fichier segmenté unique ou d’une collection de fichiers de segments. Ce dernier permet des scénarios plus sophistiqués comme la liaison tardive, qui est la possibilité pour un client de sélectionner différentes pistes en fonction de ses préférences. Par exemple, choisissez une qualité vidéo parmi plusieurs qualités, une piste audio particulière ou une piste de sous-titre, indépendamment de la création de contenu initiale sur le serveur principal.
Télécharger et lire du contenu de location peut également utiliser une licence persistante ou non persistante. En règle générale, une licence persistante de prédelivery serait préférable.
Lorsque vous utilisez des licences persistantes, l’appareil peut parfois avoir besoin de supprimer des licences du magasin de données après leur expiration.
Comme toutes les licences persistantes qui incluent une date d’expiration, elles doivent également inclure une date de début qui permet d’empêcher certaines attaques utilisateur contre le système d’horloge approuvé de l’appareil.