Skip to main content

Breton language speech-to-text tools

Project description

pypi version License: MIT

Anaouder

E brezhoneg

Reconnaissance vocale pour le breton avec Vosk.

Ce projet est développé bénévolement. Vous pouvez le soutenir par un don : Liberapay

Une version en ligne, développée par Philippe Argouarch, est également disponible.

Présentation

Modèle de reconnaissance vocale (speech-to-text) entraîné avec le framework Kaldi, au format Vosk.
Il est accompagné de scripts permettant la retranscription automatique de fichiers audio et video, l'alignement texte/son pour la création de sous-titres, ou encore l'inférence en temps réel à l'aide d'un microphone.

Principaux avantages :

  • Léger. Les modèles Vosk pèsent moins de 100 Mo et peuvent tourner sur une large gamme d'appareils : ordinateurs sans GPU, RaspberryPi, smartphone Android...
  • Rapide. L'inférence se fait en temps réel, même sur une machine un peu datée.
  • Local. Fonctionne sans connexion internet. Vos données restent donc sur votre appareil.
  • Libre et gratuit. La licence MIT vous permet de modifier le logiciel et de l'intégrer dans d'autres applications.

Le nombre d'heures d'enregistrement audio utilisé pour entraîner le modèle est relativement faible mais progresse peu à peu. En dehors du projet Common Voice de Mozilla, les enregistrements retranscrits libres de droit sont rares pour le breton. Toute aide sur ce terrain sera la bienvenue !

Installation

Les scripts nécessitent l'installation de Python3. L'installation du module de reconnaissance vocale se fera ensuite dans un terminal, en exécutant la commande suivante :

pip3 install anaouder

Une fois installé, et à mesure que de nouvelles versions du modèle de reconnaissance vocale seront proposées, vous pourrez mettre à jour le logiciel avec :

pip3 install --upgrade anaouder

Retranscrire un fichier audio ou video

Une fois le module installé, la commande adskrivan permet de retranscrire un fichier audio ou video depuis le terminal. A la première exécution de la commande, il vous faudra patienter le temps de l'installation du module static_ffmpeg (programme de conversion pour les fichiers audio/video). Cette installation ne se fera qu'une seule fois.

adskrivan NOM_DU_FICHIER

Le résultat de la transcription s'affichera dans le terminal par défaut. Vous pouvez toutefois préciser le nom d'un fichier dans lequel écrire, avec l'option -o

adskrivan NOM_DU_FICHIER -o SORTIE.txt

Utilisation avec un microphone

Depuis un terminal, invoquez la commande mikro.

Si aucun texte n'apparaît, vous pouvez afficher la liste des interfaces audio avec la commande :

mikro -l

Vous pourrez ensuite préciser, en argument, le numéro de l'interface à utiliser pour l'inférence :

mikro -d NUMERO_INTERFACE

Alignement d'un texte d'après un audio

Il est possible d'aligner un texte d'après un fichier audio ou video à l'aide de la commande linennan. Vous obtiendrez un fichier contenant le texte original, accompagné de marqueurs temporels, au format srt (fichier de sous-titres Subrip).
Le fichier texte doit être un texte brut (extension .txt) où chaque ligne correspondra à une ligne de sous-titre.

linennan FICHIER_SON_OU_VIDEO FICHIER_TEXTE -o sous-titres.srt

(export au format eaf, pour le logiciel ELAN, à venir...)

Création automatique de sous-titres

Vous pouvez également laisser le modèle de reconnaissance vocale retranscrire les paroles pour la création de sous-titres, au format srt (Subrip).

istitlan FICHIER_SON_OU_VIDEO

Utilisation du modèle avec d'autres logiciel

L'utilisation du modèle brut dans d'autres logiciel est possible mais n'est pas conseillé, puisque qu'elle omettra le post-traitement proposé par le module anaouder : le replacement des tirets de liaison et la normalisation-inverse des nombres notamment.

Le modèle brut est accessible sous le dossier anaouder/models ou par le lien releases.

Audapolis

Il est possible d'utiliser le modèle avec le logiciel Audapolis, qui offre également le confort d'une interface graphique.

Kdenlive

Le logiciel de montage video Kdenlive permet l'utilisation de modèles Vosk pour la retranscription automatique de sous-titres.
Voir la documentation.

Remerciements

Le développement de cet outil a été possible grâce aux logiciels libres sur lesquels il se base : Kaldi, Vosk et le correcteur automatique Hunspell de An Drouizig.
Le modèle de reconnaissance vocale n'aurait jamais pu être entraîne sans les voix et les textes de nombreux contributeurs, issus de : Becedia, Brezhoweb, Dastum, Dizale, Kaouen.net, Mozilla Common Voice, RKB et l'Ofice Public de la Langue Bretonne
Je remercie enfin Elen Cariou, Jean-Mari Ollivier, Karen Treguier, Mélanie Jouitteau, Pêr Morvan et l'association An Drouizig pour leur aide et leur soutien.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anaouder-0.9.8.tar.gz (61.0 kB view details)

Uploaded Source

Built Distribution

anaouder-0.9.8-py3-none-any.whl (67.2 kB view details)

Uploaded Python 3

File details

Details for the file anaouder-0.9.8.tar.gz.

File metadata

  • Download URL: anaouder-0.9.8.tar.gz
  • Upload date:
  • Size: 61.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for anaouder-0.9.8.tar.gz
Algorithm Hash digest
SHA256 47b2c2b23d6f24b6e1fcfb719d52047a2eedb1ad09c53d701e896b3af01608bd
MD5 721a9727af5d8dc04c726aef25e41f41
BLAKE2b-256 dbaf61c80d3006eea7cac605fc36774f2c4689932af91692c864cb1f5e31a379

See more details on using hashes here.

File details

Details for the file anaouder-0.9.8-py3-none-any.whl.

File metadata

  • Download URL: anaouder-0.9.8-py3-none-any.whl
  • Upload date:
  • Size: 67.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for anaouder-0.9.8-py3-none-any.whl
Algorithm Hash digest
SHA256 127d384959d604b660bdfbca2932d8c58a1cdc87484a3dec65fc52055ca84a87
MD5 79dcbb67ebe058528af7a2cac0b7a8a0
BLAKE2b-256 d90165435d489e570b2d9703c5413644e0ba4e0be52c9e11d5258c7783f5ad98

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page