alexylem / jarvis

Jarvis.sh is a simple configurable multi-lang assistant.
http://openjarvis.com
MIT License
807 stars 197 forks source link

DEBUG: timeout, end of conversation, malgré que je parle #467

Closed Propheet closed 7 years ago

Propheet commented 7 years ago

Description

Bonjour je suis un nouveau je ne sais pas comment trouver un solution l’installation c'est fait pas de probleme. quand je démarre Jarvis il me répond "-oui" après c'est le néant il n’écoute pas (comme avec ma femme :p). avec le troubleshooting je m'entend sa voudrais dire que c'est la reconnaissance de la voix qui ne va pas ? Voice recognition c'est Snowboy recognition of commands c'est bing ou dois je regarder ? merci beaucoup

Result

------------ Config ------------
jv_version           17.03.03
jv_arch              armv7l
jv_os_name           raspbian
jv_os_version        8
language             fr_FR
play_hw              hw:1,0
rec_hw               hw:1,0
speaker              C-Media Electronics, Inc. Audio Adapter
microphone           C-Media Electronics, Inc. Audio Adapter
trigger_stt          snowboy
command_stt          bing
tts_engine           svox_pico
--------------------------------
DEBUG: program_startup hook
jarvis: Hello
DEBUG: start_speaking hook
DEBUG: stop_speaking hook
User defined commands:
                        *AIDE*                  *BONJOUR*|*SALUT*
*COMMENT*APPELLE*       *MERCI*                 *AU REVOIR*|*BYE*
ANNULE*|TERMINE*        ENCORE*                 *TEST*
*VERSION*               *REPETE (*) ET (*)      *CA VA*
>*OUI*                  >*NON*
jarvis: Waiting to hear 'jarvis'
paco: (listening...)
DEBUG: models=alexa,jarvis,snowboy
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
INFO:snowboy:Keyword 2 detected at time: 2017-03-05 12:13:20
DEBUG: modelid=1
jarvis
DEBUG: entering_cmd hook
jarvis: Yes?
DEBUG: start_speaking hook
DEBUG: stop_speaking hook
paco: (listening...)
DEBUG: start_listening hook
utils/timeout.sh 10 rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian li                                                                                                                                                             ttle /dev/shm/jarvis-record.wav gain 25 silence 1 0.1 1 1 0.5 1 trim 0 10
DEBUG: stop_listening hook
DEBUG: timeout, end of conversation
DEBUG: exiting_cmd hook
jarvis: Waiting to hear 'jarvis'
paco: (listening...)
DEBUG: models=alexa,jarvis,snowboy
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
^CDEBUG: program_exit hook
wikijm commented 7 years ago

Est-ce que tu peux écouter le fichier d'écoute généré par Jarvis (/dev/shm/jarvis-record.wav) et nous dire ce que tu entends ?

alexylem commented 7 years ago

Dans ce que tu as copié, après la reconnaissance du mot clé:

DEBUG: timeout, end of conversation

Il ne t'as pas entendu. Assures-toi de bien parler fort près du micro après la reconnaissance du hotword Jarvis. Tu dois aussi faire l'ajustement automatique des niveaux audio dans: Settings > Audio > Auto-adjust levels

Propheet commented 7 years ago

bonjour sur le fichier je m'entend correctement dire "-test test 123"

alexylem commented 7 years ago

@Propheet regarde mon post ci-dessus. D'après ta copie de log, tu as eu un timeout... tu peux réessayer plusieurs fois en lisant bien ce qui est écris en mode troubleshooting, les indications sont la pour t'aider...

Propheet commented 7 years ago

merci pour les infos j'ai bien régler Auto-adjust levels je l'ai régler mais marche toujours pas :(

### DEBUG: program_startup hook
jarvis: Bonjour Paco
DEBUG: start_speaking hook
DEBUG: stop_speaking hook
User defined commands:
                        *AIDE*                  *BONJOUR*|*SALUT*
*COMMENT*APPELLE*       *MERCI*                 *AU REVOIR*|*BYE*
ANNULE*|TERMINE*        ENCORE*                 *TEST*
*VERSION*               *REPETE (*) ET (*)      *CA VA*
>*OUI*                  >*NON*
jarvis: Waiting to hear 'jarvis'
paco: (listening...)
DEBUG: models=alexa,jarvis,snowboy
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started

**je dis "-Jarvis" il répond "-oui"

je dis "-CA VA" ... répond pas** DEBUG: stop_listening hook DEBUG: timeout, end of conversation je m'entend parler correctement

une idée

je ne vois pas quoi faire d'autre il reconnait ma voix pour jarvis mais le reste nada : s

alexylem commented 7 years ago

Dans ce que tu as copié, après la reconnaissance du mot clé:

DEBUG: timeout, end of conversation

Il ne t'as pas entendu. Assures-toi de bien parler fort près du micro après la reconnaissance du hotword Jarvis. Tu dois aussi faire l'ajustement automatique des niveaux audio dans: Settings > Audio > Auto-adjust levels

Jean-Bernard-Hallez commented 7 years ago

Est ce que tu t'entends bien parler ou entends tu derrière ta voix des bruits de fonds ? Quel micro as-tu ?

Propheet commented 7 years ago

bonsoir et merci pour votre aide j'ai refait le auto-adjust level voila le resultat

│ Results: │ │ - Silence level: 1% (max 5%) │ │ - Voice volume: 78% (min 50%, max 95%) │ │ Sox parameters: │ │ - Microphone gain: 20 │ │ - Min noise percentage to start: 3% │ │ - Min silence percentage to stop: 3%

je m'entend bien et pour le matériel c'est USB Trust http://www.trust.com/tr/product/20378-mico-usb-microphone

que puis je vous donner en plus pour trouver une solution je me demande si je ne ferrais pas une video ?

merci pour tout

alexylem commented 7 years ago

Oui car c'est pas du tout normal. Bonne idée pour la vidéo, mets toi bien en mode troubleshooting.

Propheet commented 7 years ago

Voici une petite vidéo fait ce matin https://youtu.be/vWVvDARuHDI

Merci

Propheet commented 7 years ago

Je republie car j'ai remarqué que la qualité n'était pas trop top on ne savait pas lire ce qui était sur l'écran j'espère que cette version nous permettra de lire ce qu'il y a sur l'écran

https://youtu.be/2S9Q0xmh1Wo

Jean-Bernard-Hallez commented 7 years ago

Et coucou...

alexylem commented 7 years ago

Merci bcp @Propheet pour la vidéo, très clair. @Jean-Bernard-Hallez rien à voir avec la clé, il part en timeout tout le temps.

@Propheet c'est clairement un problème de réglage de micro. En fait, après la détection du hotword, il commence un enregistrement audio et détecte automatiquement le son de ta voix, et quand tu arrêtes de parler pour arrêter l'enregistrement (puis l'envoyer à Bing, ...). Dans ton cas il ne s'arrête pas, parce qu'il croit que tu n'as toujours pas commencé de parler (sinon tu aurais un autre message). Timeout = j'attendais un truc et j'ai rien eu (mais je pourrais rendre ce message plus explicite).

Le problème se situe clairement sur les niveaux sox. C'est la première fois que je rencontre un cas comme ca. Mais on est la pour t'aider. J'aimerais que tu fasses une même vidéo mais de toi en train de faire l'auto-adjust levels dans Settings > Audio. Après en fonction de te donnerai les bonnes valeurs à mettre manuellement.

Merci!

Propheet commented 7 years ago

Bonsoir voilà la petite vidéo effectué à l'instant encore un très grand merci pour tout https://youtu.be/crrmJ6gThQI

Propheet commented 7 years ago

J'ai tester le mode clavier il fonctionne très bien Jean-Bernard-Hallez

alexylem commented 7 years ago

Ok merci bcp pour la vidéo. C'est à n'y rien comprendre. Bon voici ce que je te proposes:

Propheet commented 7 years ago

merci pour le suivi :) voila les infos

DC offset -0.110567 Min level -0.681244 Max level 0.354431 Pk lev dB -3.33 RMS lev dB -17.57 RMS Pk dB -11.90 RMS Tr dB -19.36 Crest factor 5.15 Flat factor 0.00 Pk count 2 Bit-depth 16/16 Num samples 160k Length s 10.000 Scale max 1.000000 Window s 0.050

Propheet commented 7 years ago

si je parle plus fort

Min level -1.000000 Max level 0.999969

voila :)

alexylem commented 7 years ago

Ok. Quelques questions:

Essaye pareil en baissant le gain:

rec -V1 -r 16000 -c 1 -b 16 -e signed-integer --endian little /tmp/test.wav gain 0 silence 1 0.1 11 1 0.5 11 trim 0 10

Puis dit juste quelque-chose, près du micro, et arrête. Si tu peux enregistrer ton écran avec asciinema ca aiderait afin que je vois les niveau bouger:

sudo apt-get install -y asciinema # installe asciinema si pas déjà fait
asciinema rec # commence l'enregistrement
rec -V1 -r 16000 -c 1 -b 16 -e signed-integer --endian little /tmp/test.wav gain 0 silence 1 0.1 11 1 0.5 11 trim 0 10
# Dis quelquechose pendant juste quelques secondes
Ctrl + C # si ne s'arrête pas tout seul
sox /tmp/test.wav -n stats 2>&1 # montrer infos
Ctrl+D # stopper enregistrement
y # yes pour uploader, partager l'URL de la session ici

Merci

Propheet commented 7 years ago

merci voila j'ai fait ce que tu m as dit mail ne m'entend pas j'ai refais après la même commande de 10 sec http://asciinema.org/a/ci0ixxw5jgs0wl0hn3gl1ywzm

Propheet commented 7 years ago

c'est vrais que c'est plus simple que de filmer lol

alexylem commented 7 years ago

Dans le premier essai (gain à 0) tu parles? la barre de bouge pas du tout, ok gain à 0 mais quand même !!

Dans le 2ème (gain 25) tu parles tout le temps non? la barre n'arrête jamais de bouger.

Tu pourrais aussi faire un essai avec un gain de 10. Continue avec asciinema ca aide bien 😄

Propheet commented 7 years ago

voila j'ai refait j'ai parler plus fort même très fort q que sec et il c'est arrêter tout seul http://asciinema.org/a/5zs9om592rir2oxcdkb07k44v

Propheet commented 7 years ago

et en gain de 10 http://asciinema.org/a/2y38fbh1qen00q7dpgwd5vhx5

alexylem commented 7 years ago

Bon ca va bcp mieux 😄 Il te reste plus qu'à jouer avec le gain pour que ca soit confortable pour toi. Le plus important est que l'enregistrement s'arrête bien tout seul sans avoir à faire Ctrl + C. Ensuite modifie le Gain dans Jarvis > Settings > Audio > Gain Et relance Jarvis, en parlant de la même manière, ca devrait le faire! Bonne chance 👍

Propheet commented 7 years ago

re :) 1/ j'ai mi ce code rec -V1 -r 16000 -c 1 -b 16 -e signed-integer --endian little /tmp/test.wav gain 10 silence 1 0.1 11 1 0.5 11 trim 0 10 il faut que je cris dans le micro très très près pour qu'il m'entende et il s' arrête bien tout seul. pour le Gain dans Jarvis > Settings > Audio > Gain je ne sais pas comment le régler ( c'est quoi ?) sa change quoi car je le modifie plus grand plus petit mais change pas merci pour tout

alexylem commented 7 years ago

Ben si la valeur de gain 10 va bien pour toi dans tes essais, tu peux la mettre dans Jarvis ainsi: http://asciinema.org/a/106794 Puis lancer Jarvis en mode troubleshooting et voit si ca marche.

Propheet commented 7 years ago

Youpi sa fonctionne !!! j ai mis le gain a 16 Un très grand merci pour ton aide je ne serrais jamais arriver sans toi et de plus j'ai appris plein de chose :)

ps : pour éloigner le micro c'est avec le gain ,prendre un micro plus performant ou il y a un autre paramétré magique ;)

prochain défis c'est de le raccorder avec Jeedom lol

wikijm commented 7 years ago

@Propheet Content que tu ai pu trouver une solution à ton problème 😃 Afin d'en faire profiter la communauté, est ce que tu pourrais :

Merci de d'avance de la part des autres personnes qui pourraient rencontrer le même cas que toi ;-)

alexylem commented 7 years ago

@wikijm

Il s'agit en fait d'un Bug car trop de bruit de fond devrait écrire dans la console "Too much background noise" et non "Timeout". Je vais résoudre ca.

wikijm commented 7 years ago

Merci pour l'explication @alexylem, je pensais que c'était un problème de paramétrage de sensibilité ou de compatibilité de matériel.

alexylem commented 7 years ago

Résolu, maintenant ca affichera:

Alex: (listening...)
DEBUG: start_listening hook
utils/timeout.sh 10 rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /tmp/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% trim 0 5
DEBUG: speech duration was 50 (10 = 1 sec)
WARNING: too long for a command (max 4 secs), ignoring...
HELP: try in order the following options
1) wait longer between voice commands
2) reduce ambiant background noise
3) decrease mic sensitivity in Settings > Audio
4) increase Min Silence Level to Stop
Propheet commented 7 years ago

un très grand merci pour tout dois je faire quelque chose pour clôturer le dossier correctement ? et je ne le dirais jamais assez "-un très grand merci pour tout "

wikijm commented 7 years ago

@alexylem s'en est chargé il y a 17h, donc je répondrais non 😄 Sinon, il faudra simplement cliquer sur le bouton "Close and comment" afin de pouvoir terminer une issue.