Photo de Cooler8 sur Shutterstock
Le streaming en direct est devenu incontournable pour capter l'attention des audiences et diffuser des événements en temps réel. Avec l'essor de plateformes telles que Vimeo, YouTube Live et Facebook Live, la demande de solutions de streaming en direct fiables, scalables et de haute qualité a explosé. Amazon Web Services (AWS) propose une suite d'outils puissante pour le streaming en direct, dont l'un des services phares est Amazon Elemental MediaLive, un service de traitement vidéo en direct de qualité broadcast.
Que vous diffusiez des événements en direct, du sport, de l'actualité ou du divertissement, offrir une expérience de streaming fluide à vos spectateurs est essentiel. Concevoir et gérer un workflow de streaming en direct fiable peut toutefois s'avérer complexe. C'est là qu'intervient AWS Elemental MediaLive : une solution robuste et scalable pour le traitement vidéo en direct dans le cloud. Elle vous permet d'échanger avec vos audiences en temps réel, de stimuler l'engagement et de diffuser des contenus à fort impact, tout en proposant des fonctionnalités avancées de traitement vidéo — transcodage, packaging et chiffrement — pour une diffusion de haute qualité sur l'ensemble des appareils et des plateformes, partout dans le monde.
Dans ce guide pour débutants, nous verrons comment déployer rapidement une solution de streaming en direct sur AWS grâce à la fonctionnalité Workflow Wizard d'AWS Elemental MediaLive, en quelques minutes seulement, en abordant au passage quelques notions essentielles. C'est parti.

Workflow architectural
**Créer le workflow**
Étape 1 : créer le workflow
Rendez-vous dans la console AWS Elemental MediaLive → cliquez sur Workflow wizard → Create workflow.

Workflow wizard

Créer le workflow
Étape 2 : saisir les informations de base
Workflow Name. Ex. : myfirst-medialive-channel → sélectionnez la MediaLive Channel Class. Ex. : Single pipeline → rôle IAM. Ex. : Create a role (créez d'abord le rôle, puis sélectionnez-le) → Next.

Étape 2
Remarque — un canal single pipeline vous fournira un seul endpoint statique pour pousser votre flux, tandis qu'un canal standard en fournira deux. Ex. : rtmp://3.216.59.247:1935/myfirst-medialive/input-1
Étape 3 : choisir une source vidéo
3.1 : choisir un type d'entrée

3.1 : choisir un type d'entrée
Au moment de choisir l'entrée, quatre options sont actuellement disponibles : retenez celle qui correspond le mieux à votre cas d'usage. Pour cette démonstration, nous utiliserons RTMP (push).
- Elemental Link — un dispositif d'encodage qui relie une source vidéo en direct (caméra ou équipement de production vidéo) au cloud (MediaLive).

Options des appareils Elemental Link
2. MediaConnect — un service de transport vidéo en direct fiable, sécurisé et flexible, qui permet aux diffuseurs et aux ayants droit de bâtir des workflows vidéo en direct et de partager leurs contenus en toute sécurité avec partenaires et clients. Il facilite l'exploitation de canaux ou la diffusion d'événements en direct, ainsi que le transport de flux vidéo à forte valeur ajoutée vers, à travers et depuis le cloud AWS.
- MP4 — vous pouvez pousser des fichiers MP4 non-streaming (extension .mp4) directement depuis S3 vers un canal Elemental MediaLive et les diffuser en live broadcast.
4. RTMP (push) — vous pouvez ingérer du contenu en streaming depuis un téléphone mobile ou un poste de bureau, avec le logiciel de diffusion de votre choix.
3.2 : sélectionner ou créer une entrée

3.2 : sélectionner ou créer une entrée
Remarque — lors de la création d'une entrée, vous pouvez choisir n'importe quel nom pour l'Application name et l'Application instance ; ils tiennent toutefois lieu d'endpoint et de stream key au moment de la diffusion. Mieux vaut donc opter pour des valeurs complexes, difficiles à deviner. Un autre mécanisme de sécurité existe (étape 3.3) : le security group, qui définit depuis où le flux peut être poussé vers vos endpoints.
3.3 : créer ou utiliser un input security group existant — pour restreindre les sources de flux de votre canal MediaLive, indiquez les origines d'entrée autorisées à l'aide de plages CIDR réseau correspondant à vos sources de confiance, par exemple :
- l'IP d'une machine spécifique ;
- la plage du réseau studio ;
- un bloc CIDR on-prem ou VPC.
Vous garantissez ainsi que seuls les réseaux de confiance peuvent pousser du contenu vers votre canal. Exemple :

3.3 : créer ou utiliser un input security group existant
3.4 : sélectionner le codec d'entrée — j'ai conservé la valeur par défaut, mais vous trouverez ici la liste des codecs vidéo et audio pris en charge par MediaLive.

3.4 : sélectionner le codec d'entrée
Étape 4 : ajouter des sorties vidéo
4.1 : choisir où envoyer votre vidéo — plusieurs options s'offrent à vous : MediaPackage, HLS vers MediaStore, et des plateformes sociales comme Facebook, YouTube et Twitch TV. Sélectionnez une ou plusieurs options selon vos besoins, et choisissez la qualité vidéo entre Standard et Enhanced.
Remarque : lorsque la qualité vidéo Enhanced est activée, MediaLive produit une meilleure qualité d'image sans augmenter le bitrate. Ce paramètre s'applique à toutes les sorties de votre workflow. Cette fonctionnalité entraîne un coût supplémentaire.

4.2 : destination MediaPackage

Vous pouvez ajouter des résolutions et fréquences d'images supplémentaires pour mieux servir vos spectateurs.

Résolutions et fréquences d'images supplémentaires
Étape 5 : vérifier et créer
L'état du workflow affiche désormais create in progress. Cela signifie que votre workflow a généré un template CloudFormation conforme aux options sélectionnées et qu'il est en cours de déploiement.

Workflow en cours

Workflow CloudFormation en cours.
Étape 6 : vérifier les détails
6.1 : workflow terminé — notez que nous n'avons pas encore démarré le workflow. Il est en Idle state, ce qui signifie que votre canal MediaLive ne tourne pas.

6.2 : déploiement CloudFormation terminé — CloudFormation a déployé plusieurs ressources avec succès.

Le Workflow Wizard a créé et déployé le template CloudFormation, puis assemblé tous les composants. Le workflow se présente ainsi : source en direct → RTMP push → MediaLive Input → MediaLive Channel (transcodage) → MediaPackage (packaging) → CloudFront (diffusion mondiale) → utilisateurs finaux.
AWS Elemental MediaLive récupère et traite l'entrée RTMP, puis la transcode pour produire les différents formats de sortie sélectionnés. Exemple (étape 4.2) :
- 1080p60 (1920x1080 à 60 fps, jusqu'à 6 Mbps)
- 1080p30 (1920x1080 à 30 fps, jusqu'à 5 Mbps)
- 720p60 (1280x720 à 60 fps, jusqu'à 5 Mbps)
- 720p30 (1280x720 à 30 fps, jusqu'à 3 Mbps)
- 480p30 (854x480 à 30 fps, jusqu'à 1,5 Mbps)
- 240p30 (426x240 à 30 fps, jusqu'à 750 Kbps)
AWS Elemental MediaPackage se charge du packaging. Le canal MediaPackage reçoit l'ensemble des flux traités et fournit trois types de sorties (endpoints) à partir du contenu transcodé. Il crée et gère les playlists/manifests.
- Endpoint HLS (pour les appareils Apple et la compatibilité générale)
- Endpoint DASH (pour Android et autres lecteurs compatibles DASH)
- Endpoint CMAF (Common Media Application Format pour le streaming moderne)
AWS CloudFront assure la distribution mondiale des flux auprès des utilisateurs.
Avant de démarrer le workflow et de pousser le flux vers notre canal Elemental MediaLive, précisons que vous pouvez rattacher jusqu'à 20 entrées à un même canal MediaLive. Certaines limites s'appliquent selon le type d'entrée. Les cas d'usage varient : vous pouvez par exemple vouloir basculer entre les entrées de votre canal MediaLive lors d'une diffusion en direct. Le premier flux contiendra une vidéo en boucle avant le début de l'événement, et le second prendra le relais au moment du lancement. Ce basculement d'entrée est possible grâce aux MediaLive schedules — un sujet à part entière, que nous aborderons une autre fois.
Notez maintenant les détails de votre input endpoint. Vous pouvez les retrouver dans le Workflow Wizard, dans les détails du canal MediaLive ou directement dans la section Input.
Ex. : rtmp://3.216.59.247:1935/myfirst-medialive/input-1
J'utilise OBS Studio pour diffuser mon contenu, mais vous pouvez retenir l'outil de streaming de votre choix.
Diffuser un média vers votre canal
Étape 7 : configurer OBS
7.1 : configurer la source du flux dans OBS

Source
7.2 : configurer la destination dans OBS
Mon input endpoint est rtmp://3.216.59.247:1935/myfirst-medialive/input-1 et j'avais indiqué Application name : myfirst-medialive et Application instance : input-1 (stream key).

Destination de diffusion
Étape 8 : démarrer le Workflow Wizard
Vérifiez que votre canal Elemental MediaLive est bien à l'état Running et non Idle.

Canal en ligne
Étape 9 : diffusion vidéo en direct
Lancez le push RTMP en cliquant sur Start Streaming dans OBS Studio.

Rendez-vous sur l'endpoint HLS et cliquez sur Preview Player pour visualiser votre flux en direct.

Endpoint HLS

Diffusion en direct avec MediaLive
Et voilà ! Mettre en place du streaming en direct sur AWS n'a rien d'insurmontable. Avec le Workflow Wizard de MediaLive, vos flux sont opérationnels en quelques minutes au lieu de plusieurs heures. Vous pouvez aussi créer des templates personnalisés et les réutiliser à l'envi.
**Nettoyage**
Allez dans le Workflow Wizard → sélectionnez votre workflow → Stop Workflow → Delete Workflow.
Que vous bâtissiez une plateforme de streaming ou exploriez les capacités média d'AWS, j'espère que ce guide vous aura aidé à simplifier la mise en place de MediaLive. De la conception d'architectures cloud à l'automatisation de l'infrastructure, DoiT International met à votre disposition une expertise complète pour moderniser votre infrastructure cloud. Prêt à optimiser votre implémentation des services média AWS ? Contactez-nous ici pour découvrir nos solutions d'ingénierie cloud.