Reconnaissance vocale, créer un fichier texte depuis un fichier audio

Le logiciel Pocketsphinx est disponible dans Debian.

Pour fonctionner il lui faut un modèle de la langue à décoder

Paquets installés

pocketsphinx
Speech recognition tool

pocketsphinx-en-us
Speech recognition tool - US English language model

Avec ça on peut traiter les dialogues d’un film en anglais

Créer un fichier wav aux normes de pocketsphinx

ffmpeg -i nom_fichier_entrée.mp3 -acodec pcm_s16le -ar 16000 -ac 1 nomfichier_sortie.wav

Tester le décodage

L’outil c’est pocketsphinx_continuous, le dictionnaire c’est cmudict-en-us.dict

/usr/bin/pocketsphinx_continuous -dict /usr/share/pocketsphinx/model/en-us/cmudict-en-us.dict -infile ~/Vidéos/test.wav

La sortie est très bavarde, beaucoup de lignes INFO avant et après la production du décodage du dialogue en texte.

INFO: ngram_search.c(873): bestpath 12.75 wall 0.510 xRT
at a at it they have to have and for no no i'm another thrown a lotta middle earth and i don't know being oh poor and bring them back of a power tool belt moment he's trying to get in bed years that not only that i am on your lap and at the red god know
INFO: ngram_search_fwdtree.c(427): TOTAL fwdtree 40.70 CPU 1.628 xRT
INFO: ngram_search_fwdtree.c(430): TOTAL fwdtree 42.24 wall 1.690 xRT
INFO: ngram_search_fwdflat.c(174): TOTAL fwdflat 12.01 CPU 0.480 xRT
INFO: ngram_search_fwdflat.c(177): TOTAL fwdflat 19.80 wall 0.792 xRT
INFO: ngram_search.c(301): TOTAL bestpath 9.33 CPU 0.373 xRT
INFO: ngram_search.c(304): TOTAL bestpath 12.75 wall 0.510 xRT

Filtrer les infos inutiles

/usr/bin/pocketsphinx_continuous -dict /usr/share/pocketsphinx/model/en-us/cmudict-en-us.dict -infile ~/Vidéos/test.wav -lm /usr/share/pocketsphinx/model/en-us/en-us.lm.bin 2> voice2.log

Produit le résultat

at a at it they have to have and for no no i'm another thrown a lotta middle earth and i don't know being oh poor and bring them back of a power tool belt moment he's trying to get in bed years that not only that i am on your lap and at the red god know

Filtrer les infos inutiles et écrire le résultat dans un fichier texte

/usr/bin/pocketsphinx_continuous -dict /usr/share/pocketsphinx/model/en-us/cmudict-en-us.dict -infile ~/Vidéos/test.wav -lm /usr/share/pocketsphinx/model/en-us/en-us.lm.bin 2> voice2.log > resul-pocketsphinx.txt

Aide

https://manpages.debian.org/testing/pocketsphinx/pocketsphinx_continuous.1.en.html

https://github.com/cmusphinx/pocketsphinx

https://packages.debian.org/source/sid/pocketsphinx

Par Bidouille De Bian

Bidouilleur sur Linux Debian 10 (Buster). Débutant dans le blog sur Wordpress.

Créez votre site Web avec WordPress.com
Commencer
%d blogueurs aiment cette page :