Streaming en direct avec Azure Media Services v3

Logo de Media Services v3


Avertissement

Azure Media Services sera mis hors service le 30 juin 2024. Pour plus d’informations, consultez le Guide de mise hors service AMS.

Azure Media Services vous permet de transmettre des événements en direct auprès de vos clients dans le cloud Azure. Pour diffuser vos événements en direct avec Media Services, vous devez configurer un encodeur vidéo en direct qui convertit les signaux d’une caméra (ou d’un autre appareil, comme un ordinateur portable) en un flux de contribution envoyé à Media Services. Le flux de contribution peut inclure des signaux de publicité, tels que les marqueurs SCTE-35. Pour obtenir une liste d’encodeurs de streaming live recommandés, consultez Encodeurs de streaming live.

Si vous n’avez pas encore utilisé d’encodeur local, essayez le démarrage rapide Créer un flux en direct Azure Media Services avec OBS .

Empaquetage dynamique et distribution

Avec Media Services, vous pouvez tirer parti de l’empaquetage dynamique, qui vous permet d’afficher un aperçu et de diffuser vos flux en direct dans les formats MPEG DASH, HLS et Smooth Streaming à partir du flux de contribution. Vos clients peuvent alors lire le flux en direct au moyen de n’importe quel lecteur compatible avec HLS, DASH ou Smooth Streaming. Consultez la liste des joueurs testés et essayez les exemples de lecteurs tiers Media Services.

Types d’événements en direct

Les événements en direct sont ingérer et traiter des flux vidéo en direct. Un événement en direct peut être défini sur :

  • pass-through quand un encodeur live local envoie un flux à débit binaire multiple, ou
  • encodage en direct lorsqu’un encodeur live local envoie un flux à débit binaire unique. Pour plus d’informations sur les sorties en direct, consultez Événements en direct et sorties en direct.

Requête directe

Quand vous utilisez l’événement en direct Pass-through (de base ou standard), vous chargez l’encodeur live local de générer un flux vidéo à vitesse de transmission multiple et de l’envoyer comme flux de contribution à l’événement en direct (à l’aide du protocole d’entrée RTMP ou MP4 fragmenté). L’événement live transmet ensuite le flux vidéo entrant au packager dynamique (point de terminaison de streaming) sans traitement supplémentaire. Un événement en direct pass-through est optimisé pour les événements en direct de longue durée ou la diffusion en direct linéaire 24x365.

streaming transmis en direct

Encodage en direct

Pour utiliser l’encodage en direct, configurez votre encodeur live local pour envoyer une vidéo à débit unique (jusqu’à 32 Mbits/s d’agrégation) à l’événement en direct (à l’aide du protocole RTMP ou du protocole d’entrée MP4 fragmenté). L’événement live transcode le flux entrant à débit unique en plusieurs flux vidéo à débit binaire à différentes résolutions. Cela améliore la livraison pour les appareils de lecture avec des protocoles standard tels que MPEG-DASH, Apple HTTP Live Streaming (HLS) et Microsoft Smooth Streaming.

streaming d’encodage en temps réel

Options d’événement en direct

Chiffrement dynamique

Le chiffrement dynamique permet de chiffrer dynamiquement votre contenu en direct ou à la demande avec AES-128 ou un des trois systèmes principaux de gestion des droits numériques (DRM) : Microsoft PlayReady, Google Widevine et Apple FairPlay. Media Services fournit également un service de distribution de clés AES et licences (PlayReady, Widevine et FairPlay) DRM aux clients autorisés. Pour plus d’informations, consultez Chiffrement dynamique.

Widevine est un service fourni par Google Inc. soumis aux conditions de service et à la politique de confidentialité de Google, Inc.

Filtrage dynamique

Le filtrage dynamique permet de contrôler le nombre de pistes, de formats, de vitesses de transmission et de fenêtres de temps de présentation envoyés aux lecteurs. Pour plus d’informations, consultez Filtres et manifestes dynamiques.

Transcription en direct

Transcription en direct est une fonctionnalité que vous pouvez utiliser avec les événements en direct qui sont des encodages à transfert direct ou en temps réel. Pour en savoir plus, consultez Transcription en direct. Lorsque cette fonctionnalité est activée, le service utilise la fonctionnalité de reconnaissance vocale de Cognitive Services pour transcrire les paroles du fichier audio entrant en texte. Ce texte, accompagné de fichiers vidéo et audio dans les protocoles MPEG-DASH et HLS, est ensuite mis à disposition pour diffusion.

Important

Vous devez utiliser des tailles GOP de 2 secondes pour les événements en direct. Vous devez utiliser des tailles GOP de 4 secondes ou inférieures pour les événements en direct transmis directement avec des transcriptions en direct afin d’obtenir des données de transcription correctes. Si vous choisissez d’utiliser une taille GOP supérieure, les données de transcription peuvent être défectueuses avec, par exemple, du contenu manquant.

Considérations en matière de sécurité pour les sous-titres et la remise de métadonnées temporisées

Les fonctionnalités de chiffrement dynamique et DRM d’Azure Media Services présentent des limites lors de la tentative de sécurisation de la distribution de contenu qui inclut des transcriptions en direct, des sous-titres ou des métadonnées temporisées. Les sous-systèmes DRM, y compris PlayReady, FairPlay et Widevine, ne prennent pas en charge le chiffrement et la gestion des licences des pistes de texte. L’absence de chiffrement DRM pour les pistes de texte limite votre capacité à sécuriser le contenu des transcriptions en direct, des sous-titres insérés manuellement, des sous-titres chargés ou des signaux de métadonnées temporisées qui peuvent être insérés en tant que pistes distinctes.

Pour sécuriser vos sous-titres ou pistes de métadonnées temporisées, suivez ces instructions :

  1. Utilisez le chiffrement à clé en clair AES-128. Lors de l’activation du chiffrement à clé en clair AES-128, les pistes de texte peuvent être configurées pour être chiffrées à l’aide d’une technique de chiffrement à « enveloppe » complète qui suit le même modèle de chiffrement que les segments audio et vidéo. Ces segments peuvent ensuite être déchiffrés par une application cliente après avoir demandé la clé de déchiffrement au service de remise de clés Media Services à l’aide d’un jeton JWT authentifié. Cette méthode est prise en charge par le Lecteur multimédia Azure, mais peut ne pas être prise en charge sur tous les appareils et peut nécessiter un travail de développement côté client afin de garantir son bon fonctionnement sur toutes les plateformes.
  2. Utilisez l’authentification de jeton CDN pour protéger les pistes de texte (sous-titres, métadonnées) fournies avec des URL tokenisées sous forme abrégée qui sont limitées à la géographie, à l’adresse IP ou à d’autres paramètres configurables dans le portail CDN. Activez les fonctionnalités de sécurité CDN à l’aide de Verizon Premium CDN ou d’autres CDN tiers configurés pour se connecter à vos points de terminaison de streaming Media Services.

Avertissement

Si vous ne suivez pas l’une des instructions ci-dessus, vos sous-titres ou texte de métadonnées temporisées seront accessibles en tant que contenu non chiffré susceptible d’être intercepté ou partagé en dehors du chemin de remise client prévu. Cela peut entraîner des fuites d’informations. Si vous craignez que le contenu des sous-titres soit divulgué dans un scénario de remise sécurisée, contactez l’équipe de support technique Media Services pour obtenir plus d’informations sur les recommandations ci-dessus afin de sécuriser votre remise de contenu.

Workflow de streaming en direct

Pour comprendre le flux de travail de streaming en direct dans Media Services v3, vous devez commencer par évaluer et comprendre les concepts suivants :

Étapes générales

  1. Dans votre compte Media Services, vérifiez que le point de terminaison de streaming (origine) est en cours d’exécution.

  2. Créez un événement en direct.
    Lors de la création de l’événement, vous pouvez spécifier qu’il démarre automatiquement. Sinon, lancez-le dès que vous souhaitez commencer le streaming.
    Lorsque le démarrage automatique est défini sur true, l’événement en direct démarre juste après sa création. La facturation commence donc dès que son exécution démarre. Vous devez appeler explicitement la commande Stop sur la ressource de l’événement en direct pour arrêter toute facturation supplémentaire. Pour plus d’informations, consultez États et facturation des événements en direct.

  3. Récupérez la ou les URL ingérées et configurez votre encodeur local afin qu’il utilise cette URL pour envoyer le flux de contribution.
    Voir Encodeurs live recommandés.

  4. Récupérez l’URL d’aperçu et utilisez-la pour vérifier que l’entrée de l’encodeur est bien reçue.

  5. Créez un objet asset (actif multimédia).

    Chaque sortie en direct est associée à un actif multimédia, qu’elle utilise pour enregistrer la vidéo dans le conteneur de stockage d’objets blob Azure associé.

  6. Créez une sortie en direct et utilisez le nom de l’actif multimédia que vous avez créé afin que le flux puisse être archivé dans l’actif multimédia.

    Les sorties en direct démarrent dès leur création et s’arrêtent à leur suppression. Quand vous supprimez la sortie en direct, vous ne supprimez pas l’actif multimédia sous-jacent ni le contenu de celui-ci.

  7. Créez un localisateur de streaming avec les types intégrés de la stratégie de streaming.

    Pour publier la sortie en temps réel, vous devez créer un localisateur de streaming pour la ressource associée.

  8. Listez les chemins dans le localisateur de streaming pour récupérer les URL à utiliser (elles sont déterministes).

  9. Récupérez le nom d’hôte du point de terminaison de streaming (origine) à partir duquel vous souhaitez effectuer le streaming.

  10. Combinez l’URL de l’étape 8 avec le nom d’hôte de l’étape 9 pour obtenir l’URL complète.

  11. Si vous ne souhaitez plus afficher votre événement en direct, arrêtez le streaming de l’événement et supprimez le localisateur de streaming.

  12. Si vous avez terminé de diffuser en continu les événements et que vous voulez nettoyer les ressources configurées précédemment, suivez la procédure ci-dessous.

    • Arrêtez d’envoyer le flux à partir de l’encodeur.
    • Arrêtez l’événement en temps réel. Une fois l’événement en direct arrêté, aucuns frais ne sont encourus. Lorsque vous devez le redémarrer, il possède la même URL de réception. Vous n’avez donc pas besoin de reconfigurer votre encodeur.
    • Vous pouvez arrêter votre point de terminaison de diffusion en continu, sauf si vous souhaitez continuer à fournir l’archive de votre événement en direct en tant que flux à la demande. Si l’événement en direct est dans l’état Arrêté, aucun frais n’est encouru. Toutefois, si le point de terminaison de streaming est toujours en cours d’exécution, cela entraînera des frais.

La ressource sur laquelle la sortie dynamique est archivée devient automatiquement une ressource à la demande lorsque la sortie dynamique est supprimée. Vous devez supprimer toutes les sorties dynamiques avant de pouvoir arrêter un événement en direct. Vous pouvez éventuellement utiliser un indicateur removeOutputsOnStop pour supprimer automatiquement les sorties dynamiques à l’arrêt.

Conseil

Consultez le tutoriel sur le streaming en direct, l’article examine le code qui implémente les étapes décrites ci-dessus.

Autres articles importants

FAQ du streaming en direct

Consultez la FAQ sur les questions de streaming en direct.

Obtenir de l’aide et du support

Vous pouvez contacter Media Services pour vous poser des questions ou suivre nos mises à jour en suivant l’une des méthodes suivantes :