AI

Tutoriel : Création d'un service de doublage automatique avec ElevenLabs

Thumbnail for Auto Dubbing Service Tutorial, showcasing various technologies involved.

Introduction

L'arrivée de technologies de synthèse vocale hautement avancées ces dernières années a ouvert les portes à de nombreux produits innovants et à la pointe de la technologie, alimentés par l'IA. Nous ne sommes plus limités aux discours synthétiques maladroits et robotiques générés par les technologies de synthèse vocale du passé. Récemment, une entreprise nommée ElevenLabs a élevé la mise en proposant des fonctionnalités centrées sur la génération de voix. De la création et de la conception de voix personnalisées à la synthèse de discours utilisant les voix que nous créons ou à partir de voix préfabriquées fournies par ElevenLabs.

Dans ce tutoriel, nous allons construire un service de doublage automatique en utilisant la technologie de synthèse vocale d'ElevenLabs. Non seulement cela, mais nous identifierons également les étapes nécessaires allant de la récupération d'une vidéo à partir d'un lien YouTube à la combinaison de la vidéo avec les doublages générés.

Introduction à ElevenLabs

ElevenLabs est une entreprise hautement innovante qui propose une API puissante et facile à utiliser pour la génération de voix. Ils se vantent d'une technologie de pointe avec leur API de génération de voix, formée sur d'énormes collections de livres audio et de podcasts, aboutissant à la capacité de générer des discours naturels et expressifs. Ainsi, l'API d'ElevenLabs peut servir de choix idéal pour une large gamme de produits centrés sur la voix, tels que la narration d'histoires/livres audio et le doublage de vidéos.

Introduction à Whisper d'OpenAI

Whisper est un service de transcription audio, ou de reconnaissance vocale, développé par OpenAI. Il a été signalé qu'il a été formé sur 680 000 heures de données supervisées multilingues et multitâches collectées sur le web, garantissant une meilleure cohérence dans la détection des accents, du bruit de fond et du langage technique. Whisper est également capable de transcrire des discours dans plusieurs langues ainsi que de traduire des langues non anglaises.

Introduction au modèle Claude d'Anthropic

Claude est un modèle d'IA avancé développé par Anthropic, basé sur leurs recherches sur la promotion et la formation de systèmes d'IA utiles, honnêtes et inoffensifs. Il est conçu pour aider dans divers cas d'utilisation centrés sur la langue, tels que le résumé de texte, l'écriture collaborative, les questions-réponses et la programmation. Les premières critiques d'utilisateurs variés ont rapporté que Claude est particulièrement efficace pour produire des réponses sûres et fiables, rendant ainsi son utilisation plus intuitive. Cela rend Claude idéal pour la création de services censés offrir une expérience utilisateur humaine et excellente. Nous allons utiliser Claude pour aider à traduire notre transcription vidéo.

Prérequis

  • Connaissances de base en Python ; l'expérience avec Streamlit est un plus.
  • Accès à l'API d'ElevenLabs.
  • Accès à l'API d'Anthropic.

Aperçu

  • Identification des exigences
  • Initialisation du projet
  • Ajout de la fonctionnalité de transcription vidéo en utilisant Whisper d'OpenAI
  • Ajout de la fonctionnalité de traduction utilisant Claude d'Anthropic
  • Ajout de la fonctionnalité de génération de doublage en utilisant l'API d'ElevenLabs
  • Dernière touche - Combinaison de la vidéo avec les doublages générés
  • Test du service de doublage automatique

Discussion

Avant de plonger dans la partie codage, réfléchissons aux fonctionnalités que notre service de doublage automatique devrait inclure. En considérant les exigences et les cas d'utilisation prévus, nous pouvons nous assurer que notre service fournit des solutions adéquates. Avec cela en tête, commençons !

Identification des exigences

Pour générer des doublages pour les vidéos YouTube, nous devons retracer les étapes impliquées :

1. Récupérer la vidéo à partir du lien YouTube

Nous pouvons utiliser la populaire bibliothèque Python, pytube, pour récupérer les flux vidéo et audio, ainsi que les métadonnées telles que le titre, la description et la miniature. Nous fournirons un champ de saisie de texte pour le lien YouTube et un bouton pour déclencher le processus de téléchargement du flux.

2. Transcrire le flux audio

Une fois le flux audio téléchargé, nous pouvons le transcrire en utilisant Whisper d'OpenAI via la bibliothèque Whisper. Pour améliorer les performances, nous allons découper l'audio en durées d'une minute avant la transcription. La transcription sera affichée dans un DataFrame.

3. Traduire la transcription

Ensuite, nous utiliserons la bibliothèque anthropic pour accéder à Claude, en envoyant une invite pour demander la traduction de la transcription, à l'origine en anglais.

4. Générer les doublages

Après avoir reçu la réponse de Claude, nous allons générer des doublages en utilisant l'API d'ElevenLabs, en employant le modèle multilingue pour accommoder les traductions non anglaises.

5. Combiner les doublages avec la vidéo

Enfin, nous allons récupérer le flux vidéo à partir du lien YouTube et combiner l'audio généré avec la vidéo en utilisant ffmpeg.

Initialisation du projet

Nous allons utiliser la bibliothèque streamlit pour construire notre interface utilisateur. Le projet impliquera la création d'un seul fichier Python et le suivi des étapes pour garantir un fonctionnement fluide :

Création du répertoire du projet

Tout d'abord, naviguez vers votre répertoire de projets de code et créez un répertoire de projet.

Création et activation de l'environnement virtuel

Créez l'environnement virtuel et activez-le pour éviter les conflits de dépendances.

Installation des dépendances

À l'aide des commandes pip, nous allons installer toutes les dépendances nécessaires, y compris Streamlit, Anthropic, ElevenLabs, Pytube, Pydub, Whisper et d'autres mentionnées. Assurez-vous de résoudre tout problème potentiel, tel que des bugs dans Pytube et l'installation de ffmpeg.

Création du fichier secret Streamlit

Stockez les clés API et les informations sensibles dans un fichier secrets.toml au sein du répertoire du projet pour des raisons de sécurité.

Création du fichier auto_dubs.py

À l'aide d'un éditeur de code, écrivez la mise en page initiale de l'application avec un titre, un champ de saisie de texte, une boîte de sélection pour les langues, et un bouton qui déclenche le processus de transcription.

Ajout de la fonctionnalité de transcription vidéo en utilisant Whisper d'OpenAI

Ajoutez un gestionnaire au bouton "Transcrire !" pour télécharger le flux audio, découper l'audio et traiter la transcription avec la bibliothèque Whisper, affichant les résultats dans un DataFrame Pandas.

Ajout de la fonctionnalité de traduction en utilisant Claude d'Anthropic

Intégrez la fonctionnalité de traduction en créant une fonction qui envoie la transcription à Claude pour traduction, en suivant avec une invite utilisateur pour diriger Claude efficacement.

Ajout de la fonctionnalité de génération de doublage en utilisant l'API d'ElevenLabs

Intégrez la fonctionnalité de génération de doublage en utilisant ElevenLabs, en utilisant le modèle multilingue pour générer un discours naturel basé sur le texte traduit.

Dernière touche - Combinaison de la vidéo avec les doublages générés

Combinez la vidéo et l'audio en utilisant ffmpeg, en veillant à ce que l'ensemble du processus fonctionne sans accroc avant de le présenter à l'utilisateur.

Test du service de doublage automatique

Maintenant, testons notre application en cliquant sur le bouton "Transcrire !" et en vérifiant que tout fonctionne comme prévu, y compris la lecture de la vidéo avec les nouveaux doublages.

Conclusion

Ce tutoriel a démontré une approche innovante pour générer des doublages de traduction pour les vidéos YouTube en utilisant l'API d'ElevenLabs. La combinaison de Whisper d'OpenAI, Claude d'Anthropic, et les capacités multilingues d'ElevenLabs aboutit à une expérience utilisateur fluide. Grâce à Streamlit, nous avons pu présenter toutes les fonctionnalités nécessaires dans une interface conviviale.

Nous pouvons maintenant générer automatiquement des doublages pour les vidéos YouTube, démontrant le potentiel de la combinaison de divers services d'IA pour obtenir des résultats remarquables !

En lire plus

A demonstration of Cohere's text embedding capabilities for machine learning.
Llama 2 Model integration with Langchain on Clarifai

Laisser un commentaire

Tous les commentaires sont modérés avant d'être publiés.

Ce site est protégé par hCaptcha, et la Politique de confidentialité et les Conditions de service de hCaptcha s’appliquent.