Pyvideotrans : transcription, SRT, traduction, etc, en local

Pour échanger sur les avancées, les applications et les défis de l'IA.
Répondre
Avatar du membre
MyPOV
Membre VIP +
Membre VIP +
Messages : 1211
Enregistré le : sam. 11 déc. 2021 14:40
A remercié : 243 fois
A été remercié : 268 fois
    Windows 10 Chrome

Pyvideotrans : transcription, SRT, traduction, etc, en local

Message par MyPOV »

PyVideoTrans est un logiciel à base d'IA de type "couteau suisse" qui permet d'automatiquement :
- transcrire des vidéos ou de l'audio en texte
- transcrire des vidéos ou de l'audio en sous-titres SRT
- de traduire des sous-titres SRT
- de faire de la lecture audio de texte

Donc si on boucle toute la chaîne de ses fonctions, on peut aussi passer d'une vidéo dont l'audio est dans une langue vers une autre langue.

Il y a de nombreux paramètres qui peuvent sembler un peu impressionnants au premier contact, mais ceux par défaut suffisent généralement. Pour plus, il faut investir du temps, un peu comme les paramètres d'encodage vidéo de l'ancien temps. Pour le moment je me suis limité à explorer la possibilité de produire des sous-titres en français de qualité convenable. Je suis loin de le maitriser, j'arrive simplement à obtenir des sous-titres qui me satisfont faute qu'ils existent. A noter qu'il est d'origine chinoise mais qu'il dispose d'une interface en anglais. Au moins pour la version que j'ai testée, la partie aide fait référence à des liens menant vers des sites chinois, mais ce n'est pas un problème de les trouver en anglais, voire en français. ChatGPT est aussi assez efficace pour fournir de l'aide.

Site intéressant en français qui le présente :
https://www.toolify.ai/fr/ai-new-fr/pyv ... ia-3409078
Download officiel :
https://github.com/jianchang512/pyvideotrans/releases

Pour les modèles d'IA exploités, il y a de nombreuses possibilités allant de versions gratuites en local aux grosses payantes en ligne comme un abonnement à ChatGPT pour exploiter son API. J'ai toujours utilisé des modèles gratuits.

Quelques infos :

• C'est un développement Open Source d'origine chinoise, il faut éviter des chemins d'installation avec des caractères accentués, voire des espaces.
• PyVideoTrans est naturellement optimisé pour exploiter Cuda de Nvidia dont il faudra penser à cocher l'option. L'écart de performance est important avec ou sans GPU Nvidia, ayant un impact sur le modèle de Faster-Whisper raisonnablement exploitable.
Faster-whisper est une version d'IA qui transcrit de l'audio en texte, elle est dérivée et optimisée de Whisper qui est un outil d'OpenAI. J'ai aussi testé son concurrent Google Speech to Text, il est nettement plus lent avec une qualité de transcription moindre.
• Il y a plusieurs versions de Faster-Whisper : tiny, base, small, medium (pour les larges V1, V2, V3 il faut 12 à 16Go+ de vram donc je n'ai pas testé). Chacune existe en deux versions, par exemple medium qui gère plusieurs langues, et medium.en qui ne pourra transcrire que de l'anglais, mais pas forcément mieux, car il est possible que la transcription prenne plus de liberté par rapport à l'audio d'origine.
• Normalement, il télécharge les modèles d'IA qui lui manquent, parfois ça prend un peu de temps ; on peut aussi les downloader à la main, mais ils ne sont pas toujours faciles à trouver sur huggingface.
• Pour la traduction, par défaut elle est réalisée de manière transparente par un appel en ligne à Google Traduction, qui fonctionne via un VPN. Cependant de nombreux autres choix sont disponibles, dont d'utiliser un modèle local qu'on peut forcer (pas testé).

Les sous-titres que j'obtiens comportent parfois des phrases d'instructions internes de PyVideoTrans, du genre :

Code : Tout sélectionner

26 00:02:10,000 --> 00:02:15,000 Add punctuation at the end of each sentence.
Je les nettoie rapidement à la main, mais je pense que c'est faisable de le faire via un script sollicité auprès de ChatGPT.

Image
"𝓛𝓮 𝓭𝓸𝓾𝓽𝓮 𝓮𝓼𝓽 𝓵𝓮 𝓬𝓸𝓶𝓶𝓮𝓷𝓬𝓮𝓶𝓮𝓷𝓽 𝓭𝓮 𝓵𝓪 𝓼𝓪𝓰𝓮𝓼𝓼𝓮"
Répondre