[Proposal] Change listen sound per several answers


#1

I was thinking how about the possibility to change the sound Mycroft does when it listens the wake word by several quick answers, like:

  • yes?
  • what’s up?
  • tell me

It could even tell the user’s name through the seetings, or even in a future, if/when it could recognize the family member by the voice.

  • tell me, Angel
  • what do you need, Sandra?

Just an idea, and yet I know is extra work, and a sound is language-agnostic, I think is a cool feature.


#2

i like this, no core changes needed if you do it in a clever way (read, hacky)

  • disable sound in config (can be done from skill)
  • have 2 .dialog files with several options, one with standard sentences, one with sentences using the name
  • have settings accept a name, and a checkbox for default sentences or using name
  • use converse method to speak message and wait while speaking, always return False
  • let everything proceed as usual (passive skill)

tricky part is having converse always trigger… PR#1468 would help a lot here

  • on initialize call self.make_active()
  • set a timer to call this periodically so the skill isn’t removed from converse list

this is cool enough to have it as part of core, i will make a PR for that…eventually, chatterbox isn’t giving me any free time


#3

other option is using the messagebus to detect when listening stops, not sure if that causes a race condition


#4

Glad you like the idea :slight_smile:

Don’t know if that approach would be as fast as the current sound (well, perhaps the TTS engine is a bit slower than playing a wav file) as the main function is to be aware immediately if Mycroft has listened to you. It shouldn’t need either to query internet at all (or have the option), so it will sound as natural as speaking with a human.


#5

As things stand, there’s a lot of work which appears to be necessary on echo suppression etc.: see my notes of a few days ago.

What /would/ probably be possible is to have context-specific tones rather than different phrases. However if a phrase is used I’m seeing a substantial amount of breakthrough between the wakeword acknowledgement and Mycroft’s attempt at interpreting my spoken command, and I must say that that appeared to get worse over the few days I was tinkering with it rather than better: is there any possibility that my experiments have “polluted” a voice recognition corpus somewhere?


#6

If I understood correctly, you say Mycroft could think that what it’s speaking if it was my own speaking?
That would be a problem if we cannot make it aware and make it differentiate of what is its own voice from the environment voices.

Can you expand on the context-specific tones approach?


#7

Correct as of the current release. I wouldn’t say that it sits there talking to itself (although I admit that I /have/ tried “Hey Mycroft, say hey Mycroft”) but it’s got progressively worse to the extent that the only way to get it to recognise anything is to talk loud while it’s still speaking it’s acknowledgement. See

Can you expand on the context-specific tones approach?

It would need coding, but basically just a brief “Bip” or similar as a marker.