2 votes

speech-dispatcher ne fonctionne plus, spd-say démarre, mais s'arrête après quelques mots

J'ai un problème avec le speech-dispatcher. Comme indiqué : speech-dispatcher a cessé de fonctionner. spd-say commence, mais s'arrête après quelques mots.

Pour être plus précis :

  1. J'avais un texte plus long. (Ce https://github.com/systemd/systemd/blob/master/NEWS de CHANGEMENTS AVEC 246 à CHANGEMENTS AVEC 245)
  2. Je l'ai donné à spd-say : spd-say -l de -r 50 -t male1 "$(cat temp.txt)"
  3. J'ai remarqué qu'il lit l'anglais en allemand. J'ai donc fait killall speech-dispatcher . C'est ce qui m'a valu des ennuis.
  4. J'ai couru sudo service speech-dispatcher restart . Ensuite, spd-say -l en -r 50 -t male1 "$(cat temp.txt)" Il ne termine jamais la deuxième phrase. La fonction de lecture à voix haute de Firefox ne fonctionne plus non plus.

Je pense que ce n'est généralement pas une bonne idée d'utiliser killall et j'ai manqué les options suivantes pour spd-say :

-w, --wait          Wait till the message is spoken or discarded
-S, --stop          Stop speaking the message being spoken
-C, --cancel            Cancel all messages

Quelqu'un peut-il m'aider à faire fonctionner à nouveau speech-dispatcher sans redémarrer ou se déconnecter et probablement me dire comment il est intégré dans la session gnome, qui semble être le problème ici puisque le speech-dispatcher du système est désactivé.

Edit 1 : Je viens de démarrer une VM et cela échoue avec le même exemple de texte et d'autres. J'ai essayé de lui donner un peu moins de texte, en supprimant les espaces blancs et les astérisques, mais il s'arrête toujours au milieu de la deuxième phrase. Dans un autre exemple, il s'arrête après la première phrase (ici : https://docs.ansible.com/ansible/latest/network/dev_guide/developing_plugins_network.html ). Du côté positif : j'ai commencé à utiliser cette commande lorsque je n'ai trouvé aucune option dans Firefox pour lire le texte d'une page ou d'un fichier. Je viens de remarquer qu'elle peut au moins lire le changelog de systemd sans problème.

Edit 2 : Firefox fonctionne à nouveau, il avait juste besoin d'un redémarrage après toutes mes manipulations pour essayer de résoudre le problème initial.

2voto

iKarith Points 146

Vous avez besoin de -w avec spd-say pour empêcher cela.

Sans elle, spd-say enverra la demande de dire quelque chose à speech-dispatcher, speech-dispatcher dira "ok, je vais le faire !" et peu après, spd-say se terminera. Si speech-dispatcher n'a pas fini de parler à ce moment-là, il s'arrête dès que spd-say se termine.

Je ne sais pas pourquoi la décision architecturale a été prise de le faire de cette façon. Parce que c'était le cas, il me semble plus logique que spd-say ait un --no-wait qu'un --wait, mais je pense que nous sommes tous deux d'accord pour dire que la documentation n'est pas aussi claire sur ce point qu'elle devrait l'être.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X