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.7.tar.gz (61.0 kB view details)

Uploaded Source

Built Distribution

anaouder-0.9.7-py3-none-any.whl (67.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: anaouder-0.9.7.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.7.tar.gz
Algorithm Hash digest
SHA256 3cb2a6c840ab476c70fafa9f0fdf22bec1791b9829c30e7653b7fc06fe065bc6
MD5 330e5e2e9ee561e10f2c0d3c6fbc8c42
BLAKE2b-256 f2f62fb45fb7346952f7de378dfa0637da4b531edce84465f352eb2d8921bdc1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: anaouder-0.9.7-py3-none-any.whl
  • Upload date:
  • Size: 67.1 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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d0785afcb933e8bc3a61f76c5106a2f3b969ad69674b777a171f1df976ee1e56
MD5 5996930d8da90289a29fc3035e6ead11
BLAKE2b-256 f41503a1a222dfe732d2a6f787013a0beee7a995f5a0e04e2f5ef8472caf6e8e

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