Closed nicolas92g closed 7 years ago
Merci de coller le résultat complet de la console après avoir lancé Jarvis en mode Troubleshooting, ou partage une session de ton terminal en utilisant http://asciinema.org.
oui oui je suis en train de le faire
------------ Config ------------
jv_version 17.02.20
jv_arch x86_64
jv_os_name ubuntu
jv_os_version 12.04
language fr_FR
play_hw hw:1,9
rec_hw hw:2,0
speaker NVidia
microphone Logitech, Inc.
trigger_stt pocketsphinx
command_stt bing
tts_engine voxygen
--------------------------------
DEBUG: program_startup hook
jarvis: bonjour
DEBUG: start_speaking hook
DEBUG: stop_speaking hook
rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% trim 0 10
DEBUG: speech duration was 05 (10 = 1 sec)
(listening...)
rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% trim 0 10
DEBUG: speech duration was 00 (10 = 1 sec)
DEBUG: too short for a trigger (min 0.2 max 1.5 sec), ignoring...
rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% trim 0 10
DEBUG: speech duration was 07 (10 = 1 sec)
?(listening...)
rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% trim 0 10
DEBUG: speech duration was 05 (10 = 1 sec)
jarvis
DEBUG: entering_cmd hook
jarvis: oui ?
DEBUG: start_speaking hook
DEBUG: stop_speaking hook
nicolas: (listening...)
DEBUG: start_listening hook
utils/timeout.sh 10 rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% trim 0 10
DEBUG: speech duration was 02 (10 = 1 sec)
DEBUG: stop_listening hook
DEBUG: token missing or expired
DEBUG: json=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzY29wZSI6Imh0dHBzOi8vc3BlZWNoLnBsYXRmb3JtLmJpbmcuY29tIiwic3Vic2NyaXB0aW9uLWlkIjoiNzdiODBkZjdlYjQwNDRlOWJhMzhhMzdkMTE4OGNmMjIiLCJwcm9kdWN0LWlkIjoiQmluZy5TcGVlY2guUHJldmlldyIsImNvZ25pdGl2ZS1zZXJ2aWNlcy1lbmRwb2ludCI6Imh0dHBzOi8vYXBpLmNvZ25pdGl2ZS5taWNyb3NvZnQuY29tL2ludGVybmFsL3YxLjAvIiwiYXp1cmUtcmVzb3VyY2UtaWQiOiIiLCJpc3MiOiJ1cm46bXMuY29nbml0aXZlc2VydmljZXMiLCJhdWQiOiJ1cm46bXMuc3BlZWNoIiwiZXhwIjoxNDg3NzczMzQ0fQ.C8mHo2_h54_5w99m-9b_J6Y8lXBW4ubFYHA6s1pne_4
DEBUG: token will expire in 590 seconds
DEBUG: curl https://speech.platform.bing.com/recognize/query?version=3.0&requestid=4ce0222f-b1f7-4fb5-a753-35ff06022eb8&appid=D4D52672-91D7-4C74-8AD8-42B1D98141A5&format=json&locale=fr-FR&device.os=linux&scenarios=ulm&instanceid=E043E4FE-51EF-4B74-8133-B728C4FEA8AA&result.profanitymarkup=0
DEBUG: json={"version":"3.0","header":{"status":"success","scenario":"ulm","name":"quel jour sommes-nous","lexical":"quel jour sommes-nous","properties":{"requestid":"ba98e857-4041-44eb-ba08-4b9d8ae692c9","HIGHCONF":"1"}},"results":[{"scenario":"ulm","name":"quel jour sommes-nous","lexical":"quel jour sommes-nous","confidence":"0.9562168","properties":{"HIGHCONF":"1"}}]}
quel jour sommes-nous
$> say "nous sommes le $(LC_TIME="$language.UTF-8" date +"%A %d %B %Y")"
jarvis: nous sommes le mercredi 22 février 2017
DEBUG: start_speaking hook
DEBUG: stop_speaking hook
nicolas: (listening...)
DEBUG: start_listening hook
utils/timeout.sh 10 rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% trim 0 10
DEBUG: speech duration was 08 (10 = 1 sec)
DEBUG: stop_listening hook
DEBUG: curl https://speech.platform.bing.com/recognize/query?version=3.0&requestid=1835db55-1628-496d-bea8-c677338c3003&appid=D4D52672-91D7-4C74-8AD8-42B1D98141A5&format=json&locale=fr-FR&device.os=linux&scenarios=ulm&instanceid=E043E4FE-51EF-4B74-8133-B728C4FEA8AA&result.profanitymarkup=0
DEBUG: json={"version":"3.0","header":{"status":"error","properties":{"requestid":"2d1fb22a-6dee-4c41-af53-25ef8fc49263","NOSPEECH":"1"}}}
?(listening...)
DEBUG: start_listening hook
utils/timeout.sh 10 rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% trim 0 10
^CDEBUG: program_exit hook
jarvis: nous sommes le mercredi 22 février 2017
Alors il l'a dit?
Mmmmh tu dois avoir des fichiers son corrompus en cache, essaye de les virer puis de réessayer:
$> rm -f /dev/shm/*.mp3
$> ./jarvis.sh -vx "quel jour"
non
Tu es essayé de supprimer les fichiers son en cache comme je te l'ai conseillé ci-dessus?
j'ai l'impresion qu'il ne dit pas les mots qu'il ne comprens pas
oui j'ai fait les commandes que tu m'a dit de faire
@themask38 il dit les mots que tu lui dis de dire. La synthèse vocale et la reconnaissance vocale sont 2 choses différentes... Tu peux essayer les commandes suivantes et me dire si ca marche:
$> ./jarvis.sh -vs "test"
$> ./jarvis.sh -vx "quel jour"
bonjour c'est bon j'ai pu testé et ca marche pour test ca ne marche toujours pas pour
nicolas@nicolas-ubuntu-12:~$ cd jarvis
nicolas@nicolas-ubuntu-12:~/jarvis$ ./jarvis.sh -vx "quel jour"
$> say "nous sommes le $(LC_TIME="$language.UTF-8" date +"%A %d %B %Y")"
jarvis: nous sommes le jeudi 23 février 2017
j'ai essayé aussi ./jarvis.sh -vs "nous sommes le jeudi 23 février 2017" et ca ne marche pas non plus
Très bien on va se focaliser sur quel jour. Dans ton extrait je ne vois pas l'appel à voxygen, alors ca doit prendre les fichiers dans le cache. Peux-tu à nouveau:
$> ls /dev/shm/nous*.mp3
$> rm -f /dev/shm/nous*.mp3
$> ./jarvis.sh -vx "quel jour"
Et me coller bien tous les résultats. On va y arriver, tiens bon!
Bonjour @alexylem
Je me permets de faire un message dans ce topic pour ne pas en ouvrir un autre, car j'ai sensiblement le même problème au niveau de la synthèse vocale. Mon jarvis est muet.... Enfin à 98% car il me balance de temps en temps quelques mots, style mon username (flo) ou autre mot très cours. J'ai configuré le speech engine à svox_pico car si je mets les autre ça plante au moment où il doit théoriquement parlé, mais avec lui il n'est pas très bavard. Je ne sais pas comment le faire parler ? Est-il censé avoir un catalogue de texte en local ? Faut-il une clé api ? Dois je lui apprendre tout ce qu'il peut dire ? J'avoue que je ne trouve pas et difficile d'aller plus loin. Ah oui, dernier détail, je suis en fr_FR.
Merci d'avance à toi Flo
@AlienFX c'est vraiment bizarre. Essaye déjà avec un moteur de synthèse vocal en ligne, genre Google, puis lance immédiatement (pour éviter le cache) Jarvis en mode troubleshooting (pour voir la génération du mp3), et colle le résultat ici (ou utilise asciinema).
$> asciinema rec #optionnel pour enregistrer ta session
$> ./jarvis.sh
Settings > Speech Synthesis > Engine: Google
Start Jarvis > Troubleshooting mode
Ctrl+C # pour quitter Jarvis
Ctrl+D # pour arrêter l'enregistrement
y # pour uploader l'enregistrement
Ensuite explique la ou ca parle et la ou ca ne parle pas. Tu peux tester les fichiers mp3 générés sur un autre ordi (au cas ou ca vient des enceintes). Ils sont dans:
$> ls /dev/shm/*mp3
J'ai tenté de faire un screen, dis moi ce que tu en penses ? @alexylem
Quand j'utilise en ligne de commande svox_pico, il marche sans problème. Via Jarvis, non... De plus, j'ai l'impression qu'il ne dis pas tout. Par exemple j'ai la commande : REPETE () Et lui il me sort, "je ne comprends pas: repete" Par écrit bien sur !! Il ne me dit pas ça à l'oral.
Autre question hors sujet, afin de bien avoir compris. Sur une commande de type : *COMMENT*APPELLE* Lors ce que je fais le trainning snowboy, que dois je dire ? La j'ai créé un training pour le terme "comment appelle" et je lui ai dis : "comment t'appelles tu", 3 fois, mais je suis pas sur que ma démarche est la bonne ?
Merci !
Je ne vois pas la génération des fichiers mp3. Tu dois avoir des fichiers corrompus en cache. Fais-ceci:
$> ls /dev/shm/*.mp3 # vérifie que c'est bien la
$> rm -f /dev/shm/*.mp3 # supprime les
Puis relance Jarvis en mode troubleshooting, et copie colle le contenu du terminal (mieux qu'une image).
Hello @alexylem, désolé pour le délai. Mon dossier /dev/shm ne comprends aucun mp3... c'est d'autant plus étrange.
pi@PI020:/dev/shm$ ll total 76 drwxrwxrwt 2 root root 120 févr. 26 23:43 . drwxr-xr-x 15 root root 3380 févr. 26 20:13 .. -rw-r--r-- 1 pi pi 5 févr. 26 23:42 jarvis.lock -rw-r--r-- 1 pi pi 0 févr. 26 23:43 jarvis-order prw-r--r-- 1 pi pi 0 févr. 26 23:31 jarvis-say -rw-r--r-- 1 pi pi 69676 févr. 26 23:43 tts.wav
Excuse moi c'est normal de ne pas avoir de mp3 avec svox_pico
il n'y a pas d'appel web donc pas besoin de mettre en cache.
Juste pour revenir à ton exemple, il ne t'as pas prononcé "Oui?" ni "Au revoir" ?
Tu peux justement récupérer le dernier fichier son généré on le voit dans /dev/shm/tts.wav
et le lire sur un autre ordinateur.
Mais si tu dis que ca marche hors Jarvis alors ca devrait marcher dans Jarvis, voici le bout de code en question:
/usr/bin/pico2wave -l fr-FR -w "/dev/shm/tts.wav" "phrase à prononcer"
play "/dev/shm/tts.wav"
Essaye d'exécuter ce code pour voir si ca vient de ton installation de pico2wave.
De plus, et c'est la que c'est vraiment étrange, j'entends vraiment que ce qui l'arrange quoi... Ceci étant, j'ai vu quelqu'un se plaindre du même problème lors d'une connexion HDMI, cela est peut être mon cas, il faut que je test via un autre speaker, ça permettrai d'avoir une info de plus.
Si tu testes au même moment manuellement et avec Jarvis avec le même speaker ca donne des résultats différents alors ce n'est pas normal. Si tu peux j'aimerais bien que tu filmes une séquence avec les 2 tests (manuel et avec jarvis) à la suite histoire qu'on entende ce qu'il se passe:
/usr/bin/pico2wave -l fr-FR -w "/dev/shm/tts.wav" "phrase à prononcer"
play "/dev/shm/tts.wav"
./jarvis.sh -vs "phrase à prononcer"
Bonjour,
Je post ici car il y a déjà un sujet sur Voxygen.
La synthése vocal Voxygen ne fonctionne plus chez moi. JARVIS reste muet.
Ext ce du à une mise à jour ou il n'y a que moi?
Bonjour,
Je constate également des PB sur la synthese vocale Voxygen qui semble HS chez moi. En mode troubleshooting, les logs bouclent sur
--2017-03-01 20:13:19-- https://www.voxygen.fr/sites/all/modules/voxygen_voices/assets/proxy/index.php?method=redirect&text=|TEXT-MASQUE|=&ts=|TEXT-MASQUE| Connecting to www.voxygen.fr (www.voxygen.fr)|37.59.11.12|:443... connected. HTTP request sent, awaiting response... 302 Found Location: [following] --2017-03-01 20:13:19-- https://www.voxygen.fr/sites/all/modules/voxygen_voices/assets/proxy/index.php?method=redirect&text=|TEXT-MASQUE|=&ts=|TEXT-MASQUE| Connecting to www.voxygen.fr (www.voxygen.fr)|37.59.11.12|:443... connected. HTTP request sent, awaiting response... 302 Found Location: [following]
En attendant un retour à la normale, je suis passé sur svox_pico mais du coup l'option -s (qui permet de faire parler jarvis sans qu'il soit lancé) me retourne également une erreur
ERROR : Jarvis is not running
Je reste dispo, si je peux aider... En tout cas merci pour ce projet passionnant ! :)
Je confirme, aie aie aie!!
[...]
--2017-03-02 20:44:35-- https://www.voxygen.fr/sites/all/modules/voxygen_voices/assets/proxy/index.php?method=redirect&text=Oui?&voice=Loic&ts=1480362849466
Connecting to www.voxygen.fr (www.voxygen.fr)|37.59.11.12|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: [following]
--2017-03-02 20:44:35-- https://www.voxygen.fr/sites/all/modules/voxygen_voices/assets/proxy/index.php?method=redirect&text=Oui?&voice=Loic&ts=1480362849466
Connecting to www.voxygen.fr (www.voxygen.fr)|37.59.11.12|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: [following]
--2017-03-02 20:44:35-- https://www.voxygen.fr/sites/all/modules/voxygen_voices/assets/proxy/index.php?method=redirect&text=Oui?&voice=Loic&ts=1480362849466
Connecting to www.voxygen.fr (www.voxygen.fr)|37.59.11.12|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: [following]
20 redirections exceeded.
Note: on utilisait une version non officielle de voxygen (web)...
Voxygen a rajouté un captcha sur leur site, pas bon signe...
En attendant de trouver une solution de contournement (mais c'est très peu probable car c'était un "exploit" de leur interface web de démo), je vais enlever voxygen de la liste des TTS engines.
C'est dommage, j'aimais bien les voix de Voxygen :(
nicolas: .jarvis: Waiting to hear 'jarvis' nicolas: jarvis jarvis: oui ? /c'est dit par voxygen nicolas: ?ça va jarvis: Très bien et vous? /c'est dit par voxygen OUI NON nicolas: oui jarvis: tant mieux /c'est dit par voxygen nicolas: quelle heure est-il jarvis: il est 2 heures 59 /ce n'est pas dit nicolas: quel jour sommes-nous jarvis: nous sommes le mercredi 22 février 2017 /idem
et sa ma fait ca plusieurs fois je ne comprend pas pour quoi