? Traduction vidéo avec audio synchronisé
SonyTranslate est une application Web puissante et conviviale qui vous permet de traduire facilement des vidéos en différentes langues. Ce référentiel héberge le code de l'interface utilisateur Web SonyTranslate, qui est construit avec la bibliothèque Gradio pour fournir une expérience utilisateur transparente et interactive.
Description | Lien |
---|---|
? Cahier de colab | |
? Dépôt | |
Démo en ligne |
Pour une compréhension complète du projet, nous vous recommandons fortement de regarder ce tutoriel vidéo de Dev-Mallettes. Vous pouvez le regarder sur YouTube en cliquant sur la vignette ci-dessous:
Code linguistique | Langue |
---|---|
en | Anglais |
frousser | Français |
de | Allemand |
es | Espagnol |
il | italien |
ja | japonais |
nl | Néerlandais |
Royaume-Uni | ukrainien |
pt | portugais |
ardente | arabe |
zh | Chinois - simplifié |
zh-tw | Chinois - traditionnel |
CS | tchèque |
da | danois |
FI | finlandais |
El | grec |
il | hébreu |
hu | hongrois |
ko | coréen |
fa | persan |
PL | polonais |
ru | russe |
tr | turc |
ur | Ourdou |
Salut | hindi |
vi | vietnamien |
identifiant | indonésien |
BN | bengali |
te | Telugu |
M. | Marathi |
faire | Tamoul |
JW (ou JV) | javanais |
Californie | catalan |
ne | Népalais |
ème | thaïlandais |
SV | suédois |
suis | Amharique |
cycle | gallois |
heure | croate |
est | islandais |
ka | géorgien |
km | Khmer |
skin | slovaque |
sq | albanais |
SR | serbe |
az | azerbaïdjanais |
bg | bulgare |
glousser | Galicien |
GU | Gujarati |
kk | Kazakh |
KN | Kannada |
LT | lituanien |
LV | letton |
ml | Malayalam |
ro | roumain |
si | Cinghalais |
su | Sundanais |
ET | estonien |
mk | Macédonien |
swin | Swahili |
AF | afrikaans |
bs | Bosnie |
la | latin |
mon | Myanmar Birman |
Non | norvégien |
comme | Assamais |
UE | Basque |
Ha | Haoussa |
HT | Créole haïtien |
hy | arménien |
à | Lao |
mg | malgache |
MN | mongol |
MT | maltais |
Pennsylvanie | Punjabi |
ps | Pachto |
sl | slovène |
sn | Shona |
donc | somali |
tg | Tadjik |
tk | Turkmène |
tt | tatar |
uz | Ouzbek |
toi | Yoruba |
Code linguistique | Langue |
---|---|
oui | Aymara |
BM | Bambara |
CEB | Cebuano |
New York | Chichewa |
dv | Divehi |
doi | Dogri |
ee | Éwé |
gn | Guarani |
ILO | Iloko |
rw | Kinyarwanda |
kri | Krio |
ku | kurde |
ky | kirghiz |
LG | Ganda |
mai | Maïthili |
ou | Oriya |
om | Oromo |
qu | Quechua |
sm | Samoan |
ti | Tigrinya |
ts | Tsonga |
AK | Akan |
ug | Ouïghour |
Pour exécuter sonitRanslate en utilisant Colab Runtime:
Avant de commencer à installer et à utiliser sonitranslate, il y a quelques choses que vous devez faire:
accept the license to use the models
: https://huggingface.co/pyannote/speaker-diarisation et https://huggingface.co/pyannote/segmentationconda install -c anaconda git -y
dans votre terminal (faites-le après l'étape 1 dans la section suivante.). Si vous avez du mal à installer GIT via Anaconda, vous pouvez plutôt utiliser le lien suivant:Une fois que vous aurez terminé ces étapes, vous serez prêt à installer sonitranslate.
Pour installer sonitRanslate, suivez ces étapes:
conda create -n sonitr python=3.10 -y
conda activate sonitr
python -m pip install pip==23.1.2
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
git clone https://github.com/r3gm/SoniTranslate.git
cd SoniTranslate
pip install -r requirements_base.txt -v
pip install -r requirements_extra.txt -v
pip install onnxruntime-gpu
Installez FFMPEG. FFMPEG est un projet logiciel gratuit qui produit des bibliothèques et des programmes pour gérer les données multimédias. Vous en aurez besoin pour traiter les fichiers audio et vidéo. Vous pouvez installer FFMPEG avec Anaconda en exécutant conda install -y ffmpeg
dans votre terminal (recommandé). Si vous avez du mal à installer FFMPEG via Anaconda, vous pouvez utiliser le lien suivant à la place: (https://ffmpeg.org/ffmpeg.html). Une fois installé, assurez-vous qu'il est sur votre chemin en exécutant ffmpeg -h
dans votre terminal. Si vous n'obtenez pas de message d'erreur, vous êtes prêt à partir.
Installation facultative:
Après avoir installé FFMPEG, vous pouvez installer ces packages en option.
Piper TTS est un système de texte neuronal rapide et rapide qui sonne bien et est optimisé pour le Raspberry Pi 4. Piper est utilisé dans une variété de projets. Les voix sont formées avec des vites et exportées vers l'Onnxruntime.
pip install -q piper-tts==1.2.0
Coqui XTTS est un modèle de texte à dispection (TTS) qui vous permet de générer des voix réalistes dans différentes langues. Il peut cloner les voix avec juste un court clip audio, même parler dans une langue différente! C'est comme avoir une voix personnelle imiter pour tout texte dont vous avez besoin.
pip install -q -r requirements_xtts.txt
pip install -q TTS==0.21.1 --no-deps
Pour exécuter sonitranslate localement, assurez-vous que l'environnement sonitr
Conda est actif:
conda activate sonitr
Définition de votre jeton de visage étreint comme variable d'environnement dans Linux:
export YOUR_HF_TOKEN="YOUR_HUGGING_FACE_TOKEN"
Ensuite, accédez au dossier SoniTranslate
et exécutez l' app_rvc.py
python app_rvc.py
Lorsque l' local URL
http://127.0.0.1:7860
s'affiche dans le terminal, ouvrez simplement cette URL dans votre navigateur Web pour accéder à l'interface sonitranslate.
Dans la plupart des environnements, vous pouvez arrêter l'exécution en appuyant sur Ctrl + C dans le terminal où vous avez lancé le script app_rvc.py
. Cela interrompra le programme et arrêtera l'application Gradio. Pour désactiver l'environnement conda, vous pouvez utiliser la commande suivante:
conda deactivate
Cela désactivera l'environnement conda actuellement actif, et vous reviendrez dans l'environnement de base ou l'environnement mondial Python.
Si vous devez recommencer à zéro, vous pouvez supprimer le dossier SoniTranslate
et supprimer l'environnement sonitr
conda avec l'ensemble de commandes suivant:
conda deactivate
conda env remove -n sonitr
Avec l'environnement sonitr
supprimé, vous pouvez recommencer avec une nouvelle installation.
conda activate sonitr
conda env config vars set YOUR_HF_TOKEN="YOUR_HUGGING_FACE_TOKEN_HERE"
conda deactivate
conda activate sonitr
conda env config vars set OPENAI_API_KEY="your-api-key-here"
conda deactivate
Le script App_RVC.py prend en charge les arguments en ligne de commande pour personnaliser son comportement. Voici un bref guide sur la façon de les utiliser:
Commandement de l'argument | Défaut | Valeur | Description |
---|---|---|---|
--thème | Taithrah / minimal | Chaîne | Définit le thème de l'interface. Les thèmes peuvent être trouvés dans la galerie de thème. |
--langue | Anglais | Chaîne | Sélectionne la langue d'interface. Options disponibles: Afrikaans, arabe, Azerbaïdjanais, chinois_zh_cn, anglais, français, allemand, hindi, indonésien, italien, japonais, coréen, marathi, persan, polonais, portugais, russe, espagnol, suédois, turc, ukrainien, vietnamien. |
--verbosity_level | informations | Chaîne | Définit le niveau de verbosité de l'enregistreur: débogage, informations, avertissement, erreur ou critique. |
---Public_url | Booléen | Permet un lien public. | |
--CPU_MODE | Booléen | Activez le mode CPU pour exécuter le programme sans utiliser l'accélération du GPU. | |
--logs_in_gui | Booléen | Montre les opérations effectuées dans les journaux (obsolètes). |
Exemple d'utilisation:
python app_rvc.py --theme aliabid94/new-theme --language french
Cette commande définit le thème sur un thème personnalisé et sélectionne le français comme langue d'interface. N'hésitez pas à personnaliser ces arguments en fonction de vos préférences et exigences.
2024/18/05: nouveaux détails de mise à jour
kotoba-tech/kotoba-whisper-v1.1
pour la transcription japonaise disponible iciapp_rvc.py --cpu_mode
2024/03/02: conserver les noms de fichiers en sortie. Plusieurs archives peuvent désormais être soumises simultanément en spécifiant leurs chemins, répertoires ou URL séparés par des virgules. Traitement d'une liste de lecture YouTube complète. À propos de l'URL des sites pris en charge, sachez que tous les sites ne peuvent pas fonctionner de manière optimale. Ajout d'option pour désactiver la diarisation. Implémentation de sous-titres souples. Sortie de format (MP3, MP4, MKV, WAV et OGG), et résolu les problèmes liés à la lecture et à la diarisation des fichiers.
2024/02/22: Ajout de FreeVC pour l'imitation vocale, une piste sans voix fixe, des segments de division. Support de nouvelles langues (suédois, amharique, gallois, croate, islandais, géorgien, khmer, slovaque, albanais, serbe, azerbaïdjanais, bulgare, galicien, gujarati, kazakh, kannada, lituanien, latton, malayama, Rouman, sinhala et sundanaise). Nouvelles traductions de l'interface graphique (espagnol, français, allemand, italien, japonais, chinois simplifié, ukrainien, arabe, russe, turc, indonésien, portugais, hindi, vietnamien, polonais, suédois, coréen, marathi et Azerbaïdjani). Avec le fichier de sous-titres, pas d'alignement et le fichier multimédia n'est pas nécessaire pour traiter le fichier SRT. Brûler des sous-titres à la vidéo. La file d'attente peut accepter plusieurs tâches simultanément. Notification d'alerte sonore. Continuez le processus à partir du dernier point de contrôle. Régulation du taux d'accélération.
2024/01/16: Assistance élargie du langage (Thaïlandais, Népali, Catalan, Javanais, Tamoul, Marathi, Telugu, Bengali et Indonésien), L'introduction de Whisper Large V3, Configurable GUI Options, Integration of Bark, Facebook-MMS, Coqui Xtts et Piper-Tts. Les fonctionnalités supplémentaires comprenaient des utilitaires de séparation audio, la création de WAV XTTS, utilisent un fichier SRT comme base pour la traduction, la traduction de documents, l'édition de haut-parleur manuelle et les options de sortie flexibles (vidéo, audio, sous-titres).
2023/10/29: modifier le sous-titre traduit, télécharger, ajuster le volume et les options de vitesse.
2023/08/03: Modification des options par défaut et vue de répertoire ajouté des téléchargements.
2023/08/02: Ajout de soutien aux langues arabes, tchèques, danois, finlandais, grecs, hébreux, hongrois, coréens, persans, polonais, russes, turcs, ourdou, hindi et vietnamiens.
2023/08/01: Ajouter des options d'utilisation des modèles RVC.
2023/07/27: Correction d'un traitement de bogue de la vidéo et de l'audio.
2023/07/26: Nouvelle interface utilisateur et ajoutez des options de mixage.
Bienvenue aux contributions de la communauté! Si vous avez des idées, des rapports de bogues ou des demandes de fonctionnalités, veuillez ouvrir un problème ou soumettre une demande de traction. Pour plus d'informations, veuillez vous référer aux directives de contribution.
Ce projet tire parti d'un certain nombre de projets open-source. Nous tenons à reconnaître et à remercier les contributeurs des référentiels suivants:
Bien que le code soit concédé sous licence sous Apache 2, les modèles ou les poids peuvent avoir des restrictions commerciales, comme on le voit avec la diarisation de la pyannote.