Skip to main content
BlogCalculComment réduire les coûts de transcodage vidéo en migrant vers des instances Linode dédiées

Comment réduire les coûts de transcodage vidéo en migrant vers des instances Linode dédiées

Image d'en-tête comportant le texte comment réduire les coûts de transcodage vidéo en migrant vers des instances Linode dédiées, avec une icône à droite d'un écran vidéo lisant de la vidéo sur plusieurs flux.

De nombreux coûts sont associés à la construction dans le nuage. Pour le transcodage vidéo, il y a les coûts de stockage, les coûts des instances de calcul et, surtout, les coûts de sortie. Les coûts de sortie sont souvent négligés et peuvent avoir un impact significatif sur vos résultats. Le défi se pose lorsque vous souhaitez distribuer du contenu à l'échelle mondiale dans tous les formats appropriés tout en maintenant les coûts à un niveau bas. Chaque fois que des données sont consultées ou transférées hors du nuage, qu'il s'agisse de contenu vidéo en continu, de téléchargement de fichiers ou de diffusion de pages web, des frais de sortie entrent en ligne de compte. À l'échelle mondiale, ces coûts représentent un poste important. 

Alors, comment diffuser des contenus à des publics du monde entier sans se ruiner ? C'est un défi auquel sont confrontées de nombreuses entreprises, et plus récemment l'un de nos clients qui est un fournisseur de télévision en ligne et de contenu à la demande. Ce client est une importante plateforme over-the-top (OTT) spécialisée dans la fourniture de chaînes de télévision en direct, de contenu à la demande et de services de télévision de rattrapage aux téléspectateurs du monde entier. Il investit massivement dans des solutions évolutives basées sur le cloud pour garantir des expériences de streaming avec une mise en mémoire tampon et une latence minimales, en particulier pendant les périodes de pointe du trafic. Ce client s'est d'abord tourné vers les GPU Oracle Cloud et les instancesAWS VT1 pour gérer son transcodage vidéo. Cependant, ces fournisseurs de cloud s'accompagnaient d'un prix élevé, à tel point qu'ils n'étaient plus viables financièrement pour le client. Chaque fois que leur contenu vidéo était diffusé en continu, téléchargé ou servi aux utilisateurs finaux, ils encouraient des frais de sortie substantiels. Ces coûts se sont rapidement accumulés, en particulier compte tenu de leur audience mondiale et de la nécessité d'une diffusion en continu de haute qualité et à faible latence. L'entreprise souhaitait maximiser son flux de transcodage par VM afin d'obtenir un meilleur rapport coût/performance, tout en déployant ses vidéos transcodées auprès des utilisateurs afin de fournir un contenu à faible latence. Cependant, au fur et à mesure que leur base d'utilisateurs augmentait et que leur distribution de contenu s'étendait à l'échelle mondiale, la charge financière devenait insoutenable.

Face à cette escalade des coûts, le client devait trouver une solution plus rentable sans sacrifier les performances ou l'expérience utilisateur. Cela l'a conduit à réévaluer en profondeur sa stratégie de transcodage vidéo et de distribution de contenu, dont j'ai déjà parlé dans ce billet de blog. Ils ont cherché des alternatives qui leur permettraient d'optimiser le nombre de flux de transcodage par machine virtuelle (VM), améliorant ainsi leur rapport coût/performance. En outre, ils souhaitaient déployer les vidéos transcodées plus près de leurs utilisateurs afin de réduire la latence et d'améliorer l'expérience de visionnage.

L'augmentation des coûts associés à AWS VT1 - en particulier les frais de sortie pour le transfert hors de AWS - a incité à réévaluer la plateforme de distribution de contenu de transcodage vidéo. 

Les défis du transcodage de la vidéo à la demande

Imaginez que vous êtes ingénieur dans une grande plateforme OTT, responsable du transcodage vidéo pour des millions d'utilisateurs. C'est une tâche redoutable qui exige à la fois une expertise technique et une prudence financière. Votre rôle est essentiel pour garantir que les téléspectateurs reçoivent des flux vidéo de haute qualité et sans interruption, quel que soit leur emplacement ou l'appareil qu'ils utilisent.

Chaque jour, vous gérez un parc de machines virtuelles (VM) chargées de la lourde tâche d'encoder du contenu vidéo. Ce processus ne consiste pas seulement à convertir les formats vidéo, mais aussi à optimiser les différentes résolutions, les débits binaires et les codecs afin de garantir l'accessibilité du contenu et son rendu sur différents écrans, des smartphones aux téléviseurs 4K. Le défi consiste à faire fonctionner ces VM de manière efficace pour gérer le flux constant de données vidéo entrantes tout en évitant les goulets d'étranglement et en minimisant la latence.

Il faut également garder à l'esprit que le transcodage vidéo est gourmand en ressources. Chaque vidéo doit être traitée dans plusieurs formats et qualités pour s'adapter aux différentes conditions du réseau et aux capacités des appareils. Cela nécessite une puissance de calcul importante, ce qui se traduit par des coûts élevés pour l'unité centrale, GPU, et les ressources mémoire. En tant qu'ingénieur, vous surveillez constamment ces ressources et équilibrez la charge entre plusieurs machines virtuelles afin d'éviter toute surutilisation et de garantir des performances optimales.

Outre les exigences en matière de calcul, il y a un autre aspect essentiel à prendre en compte : les coûts de sortie des données. Chaque fois qu'une vidéo est diffusée en continu, téléchargée ou transférée vers un réseau de diffusion de contenu (CDN), votre entreprise doit s'acquitter de frais de sortie. Ces frais sont généralement basés sur le volume de données transférées et peuvent varier en fonction de facteurs tels que la destination des données, la distance parcourue et la bande passante consommée. Ces frais peuvent rapidement s'accumuler, surtout lorsqu'il s'agit de gros volumes de contenu haute définition diffusés à un public mondial. La gestion de ces coûts est essentielle pour maintenir les résultats de votre entreprise.

Pour relever ces défis, vous avez besoin d'une stratégie qui maximise l'efficacité de votre infrastructure de transcodage tout en maîtrisant les coûts. Pour ce faire, vous devez optimiser l'utilisation de vos machines virtuelles et vous assurer que chaque machine virtuelle est utilisée au maximum de son potentiel sans être surchargée. Cela se traduit par le transcodage d'un plus grand nombre de flux par VM. Vous devez également choisir le bon fournisseur de services en nuage. Les modèles de tarification et les performances varient d'un fournisseur à l'autre. Il est essentiel d'évaluer ces options pour trouver un fournisseur qui offre le meilleur équilibre entre coûts et performances. Vous devez également mettre en œuvre des stratégies visant à réduire les frais de sortie, par exemple en mettant en cache les contenus fréquemment consultés à proximité des utilisateurs finaux, en utilisant efficacement les CDN et en envisageant d'autres solutions de stockage dans le nuage dont les frais de sortie sont moins élevés. Enfin, vous devez explorer des instances de calcul rentables, comme Linode, qui peuvent offrir des prix prévisibles et de meilleurs rapports coûts-performances que les fournisseurs traditionnels de services en nuage.

Essentiellement, votre rôle en tant qu'ingénieur est de veiller à ce que votre infrastructure de transcodage vidéo soit robuste, évolutive et rentable. Cela implique un équilibre constant entre l'optimisation des performances techniques et la gestion des contraintes financières. En mettant en œuvre une stratégie réfléchie et en exploitant les bons outils et les bonnes technologies, vous pouvez répondre aux demandes de millions d'utilisateurs tout en préservant les résultats de votre entreprise.

Analyse des coûts du transcodage vidéo

Examinons une analyse détaillée des coûts comparant le transcodage vidéo à l'aide d'instances Linode dédiées de 64 Go et d'instances EC2 VT1 vt1.6xlarge ( AWS ), en tenant compte à la fois des coûts de sortie et du rapport coût/performance total. 

Supposons qu'un fournisseur de streaming doive transcoder 100 heures de contenu vidéo par mois. Chaque fichier vidéo a une taille moyenne de 1 Go, et le fournisseur souhaite transcoder vers trois formats de sortie différents pour prendre en charge divers appareils et résolutions. Nous supposerons également qu'il faut 2 heures pour transcoder 1 heure de contenu vidéo sur les deux fournisseurs et qu'ils ont chacun besoin de 50 instances.

Coût par instance de CPU dédiéeCoût total pour 50 instances
Instance Linode dédiée de 64 Go0,864 $/heure50 instances * 0,864 $/heure * 200 heures = 8 640 $/mois
AWS vt1.6xlarge instance1,30 $/heure50 instances * 1,30 $/heure * 200 heures = 13 000 $/mois
Note : Vous pouvez trouver des informations actualisées sur les prix de Linode ici et pour AWS ici.

Cette comparaison des coûts illustre les économies significatives réalisées en migrant vers les VM dédiées Linode. Dans cette analyse, l'utilisation des instances dédiées Linode pour le transcodage vidéo est 33 % moins chère que l'utilisation de AWS VT1. Outre des coûts d'instance inférieurs, Akamai propose également une allocation importante d'egress gratuits lorsque les clients optent pour les instances Akamai Compute, ce qui réduit encore les coûts d'egress globaux par rapport à AWS. Non seulement vous pouvez effectuer votre transcodage vidéo à moindre coût, mais vous bénéficiez de coûts d'egress nuls lorsque vous transcodez avec Akamai et que vous diffusez le contenu avec notre CDN. Si un client utilise le CDN d'Akamai pour transférer des vidéos transcodées vers et depuis des points de présence (PoP), les coûts associés sont effectivement éliminés. En utilisant nos ressources informatiques pour le transcodage, les clients peuvent bénéficier de frais de sortie minimes, ce qui garantit une solution rentable pour leurs besoins de transfert de données.

Solution : Migrer vers des instances Linode dédiées

Voyons comment ce client OTT a migré des instances EC2 VT1 de AWS vers des instances Linode dédiées de 64 Go. Ils ont utilisé Linode Object Storage pour télécharger les vidéos et les ont ensuite connectées au Linode Kubernetes Engine qui a effectué le transcodage vidéo. Une fois le transcodage terminé, les vidéos de sortie ont été placées dans un conteneur de sortie, puis distribuées par le CDN d'Akamai. Voyons plus en détail les étapes ci-dessous pour comprendre comment les VM dédiées de 64 Go de Linode ont permis à ce processus de transcodage vidéo de se dérouler en douceur et de manière rentable.

Étape 1 : ingestion et stockage du contenu

Tout d'abord, Linode ingère les vidéos brutes en direct ou à la demande. Ces vidéos sont téléchargées dans un magasin d'objets local dédié, Linode Object Storage, spécialement conçu pour gérer le contenu entrant. Ce bac sert de dépôt pour les vidéos brutes en attente de traitement. Les métadonnées associées à chaque vidéo, telles que le titre, la description et l'horodatage, peuvent également être stockées avec les fichiers vidéo. Lorsqu'une vidéo est téléchargée dans ce bac, le pipeline de traitement vidéo commence. 

Étape 2 : Initialisation du flux de travail de transcodage

Une fois les vidéos brutes téléchargées dans le panier Linode, les machines virtuelles de transcodage entrent en jeu. Ces machines virtuelles dédiées sont configurées pour surveiller en permanence l'espace de stockage, à la recherche de nouvelles vidéos à traiter. Lorsqu'une nouvelle vidéo est détectée, le logiciel de transcodage (dans ce cas, le client a utilisé Capella) est déclenché pour lancer le processus de transcodage. Au cours de ce processus, les fichiers vidéo bruts sont convertis en divers formats et résolutions optimisés pour différents appareils et bandes passantes. C'est là que la puissance du transcodage vidéo sur Linode entre en jeu. Les machines virtuelles Linode dédiées exploitent les capacités de traitement parallèle pour gérer efficacement plusieurs tâches de transcodage simultanément, garantissant ainsi un traitement rapide des vidéos entrantes.

Étape 3 : Stockage des résultats

Au fur et à mesure que le logiciel de transcodage traite les vidéos brutes, les sorties transcodées sont générées et stockées dans un godet Linode de sortie (ou le même godet dans un autre dossier). Ces vidéos transcodées sont maintenant prêtes à être livrées aux utilisateurs finaux, après avoir été transformées dans des formats compatibles avec un large éventail d'appareils et de plateformes de diffusion en continu. En prime, le site Object Storage de Linode garantit la haute disponibilité et la durabilité des vidéos transcodées, avec des mécanismes de redondance et d'intégrité des données en place pour éviter toute perte de données. 

Étape 4 : Intégration du CDN

Pour améliorer les performances et la montée en charge, ce client a choisi d'intégrer le CDN d'Akamai dans son flux de traitement vidéo. Akamai met en cache, distribue et contrôle l'accès à la vidéothèque, diffusant le contenu aux utilisateurs finaux avec une faible latence et un débit élevé. En exploitant les capacités de mise en cache en périphérie et de distribution mondiale d'Akamai, le client a pu optimiser la diffusion de son contenu en diffusant les vidéos à partir de l'emplacement en périphérie le plus proche de l'utilisateur final, réduisant ainsi le temps de latence et améliorant l'expérience de l'utilisateur. En prime, il n'y a pas de frais de sortie lors de la diffusion de contenu avec le CDN d'Akamai, car le client a utilisé le calcul d'Akamai pour le transcodage.

Étape 5 : Gestion et automatisation de l'infrastructure

Pour rationaliser les opérations et faciliter l'évolutivité, ce client a utilisé l'API d'automatisation Linode pour gérer son infrastructure et déployer de nouvelles versions de code. L'API d'automatisation Linode permet le provisionnement et la configuration programmables des machines virtuelles, des volumes de stockage et des ressources réseau, ce qui permet de gérer efficacement l'infrastructure par le biais du code. En utilisant l'infrastructure en tant que code (IaC), ce client a défini les exigences de son infrastructure de manière déclarative en utilisant du code, en automatisant les tâches répétitives et en garantissant la cohérence entre les environnements. 

Réflexions finales

J'espère que cette explication des défis posés par le transcodage vidéo à la demande, l'optimisation de l'utilisation des VM et le maintien des coûts de sortie à un niveau bas, a permis d'illustrer une solution à un problème qui continue de croître de manière exponentielle à mesure que nous consommons quotidiennement de plus en plus de contenu vidéo en continu. L'utilisation des instances dédiées de Linode pour le transcodage vidéo s'est avérée 33 % moins chère que l'utilisation des instances AWS VT1 dans ce cas d'utilisation spécifique. N'oubliez pas que lorsque vous utilisez Akamai pour le transcodage vidéo et notre CDN pour la distribution, vos coûts de sortie sont éliminés. 

Si vous souhaitez en savoir plus sur la façon de mettre cela en œuvre vous-même, lisez ce tutoriel sur le transcodage vidéo évolutif sur Linode, où vous apprendrez à convertir un fichier mp4 en HLS avec Kubernetes et Capella. N'oubliez pas de vous inscrire pour obtenir 100 $ de crédits gratuits afin de terminer le tutoriel. Vous pouvez également lire notre nouveau guide qui vous explique comment configurer le transcodage en direct pour le streaming UGC sur Akamai.

Commentaires

Laissez un commentaire

Votre adresse électronique ne sera pas publiée. Les champs obligatoires sont marqués d'un *.