Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TTS Time Service #455

Closed
wants to merge 3 commits into from
Closed

TTS Time Service #455

wants to merge 3 commits into from

Conversation

decentralgabe
Copy link

@decentralgabe decentralgabe commented Nov 27, 2016

As discussed in #386
Making use of vocal with the following ~/.asoundrc file:

      type asym
      playback.pcm {
          type plug
          # This is your output device
          slave.pcm "hw:0,0"
      }
      capture.pcm {
          type plug
          # Input device
          slave.pcm "hw:1,0"
      }
}

Copy link
Owner

@evancohen evancohen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, you should be adding your dependencies at the top of the document. using require('say') every time you want to speak is unnecessarily costly.


function TimeService() {
var service = {};
var say = require('say');
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You never actually use vocal just say, which brings in unnecessary dependencies.

@evancohen
Copy link
Owner

I think this goes back to our discussion about weather or not the mirror should ever talk back to you. I'm still of the opinion that it should not, but two of the highest rated feature requests right now are related to sound output so I think it deserves to be revisited.

That said, if we are going to take the route, I'm not quite ready to accept a PR that adds this functionality. I think we should discuss a full, thought out, implementation (performance impact, ease of configuration, and how it applies to the rest of the smart mirror services)

@decentralgabe
Copy link
Author

Whoops, fixed those mistakes.

I was under the impression that your thoughts were what you wrote in #78...

The only time I see synthesized voice feedback as useful is when you are asking a question.

This case is asking a question, and getting a vocal response, even if it is a "low-purpose" case.
I can look into doing some performance testing. I can see how configuration could be an issue for other languages (not English), can think about that some more too.

@evancohen
Copy link
Owner

Thanks for fixing those 👍 My worry is that this sets precedence for situations where that does not apply. The qualification that I'll make to my previous statement is: We shouldn't be using voice synthesis when a UI will do.

Honestly what I'm most worried about is supporting it. say requires native libraries, and those have proved to be a hurtle for people in the past. It's pretty clear that people want speech synthesis (of some kind). If you're up for lending a hand then I think we should take the plunge.

+ @justbill2020 for his thoughts as well.

My intuition says that each service could have it's own spoken and/or visual feedback, I just want to make sure that if we're going to add it for 1 service that we have a good framework for everything else to plug into (you don't want it talking over itself etc).

@justbill2020
Copy link
Collaborator

Here is why I think this one makes sense now.... in my bathroom where the mirror will go while in the shower asking "what time is it?" And having a response makes sense... not sure what other spoken responses are needed.... "how much time is left?" For the timer?

@justbill2020
Copy link
Collaborator

I think it bein within one service helps keeping things from running away from us it also has people see audio and visual response... the only other way I see it is adding an IPC that reads text sent to it from any service

@justbill2020
Copy link
Collaborator

Also, avs support will greatly expand voice response features without reinventing the wheel

@evancohen
Copy link
Owner

Yeah, I think having Alexa integration at some level would be better than trying to roll our own solution at this point

@Kenno9000
Copy link

More than a mirror, maybe.

I'm interested in developing (in the conventional sense, not the coding sense) something like this for people with dementia,Social Worker that I am.

They are "old" mostly and can speak in old voices (so the modelling is perfect!).
They need the ability to have constant interactive reminders... ..."It's after 1000am, have you taken your heart pill?" (Y/N - voice reply). It's an hour since you should have taken your heart pill? Have you? (Puts photo of heart meds on screen.) (Y/N-reply).

What time is it? "It's the middle of the night, go back to bed." Humans fatigue with these tasks. Dementia may need to ask every five minutes.

Send a message to my daughter, I'm out of milk and it's raining. --> SMS.
I've sent your message to Tootsie.

Read me a story/" (Like old-time radio)

Turn up the heat! It's alreay 79 in here, are you sure?

--> Your calendar says your son, Bill, will be arriving in 10 minutes (puts photo of Bill on screen)
What?
(louder) --> Your calendar says your son will be arriving in 10 minutes.(What?)
(louder) --> You calendar says your son will be arriving in 10 minutes.(What?)

--> Hey! Are you okay, you havent' talked to me in 4 hours? (reply)
--> SMS: Your mother hasn't taken her heart medication in the last 10 hours and hasn't spoken to me in 9 hours.

The combo of verbal and display feedback is a necessity for this application, and no so bad for others as well.
Verbal reminders, with visual cues are the norm for this group. Think of a person living in one room, needs glasses, doesn't hear that well, but can speak. Can read at night okay, but not if in bed. You get the idea.

If it moves out from behind the glass of a mirror, for one roomers, that might be okay, but on the table, or bedside in a rest home room, perfect with a 7" screen. Lots of bespoke functions for this population, as the device is a minder, companion, communicator, with very real tasks, the least of which is notthe reduction in social isolation in this population. By 2040 the number of people living wiht dementia will outstrip the workforce population to look afterthem.

The voice modeling is perfect, as old voices are not typical voices. Other vocal aspects are the need to name the device with a memorable name and gender select (There will be a lot of devices with dead partner's names for sure. It sounds creepy at once, but it's a comfort to speak to Sue again, even if it's not her, we've talked for 50 years, and she is still helping me out and telling me what to do, asking if I'm okay. The Amazon voices are great, google, a bit off-putting for this generation, and I haven;t heard MS. On board synthesis, forget it, they don't want Stephen Hawking. Accent is very important in the group too, like humour, it does not cross the Atlantic, if it doesn't sound like them, they won;t trust it.

You see where I going with this. I want it to be sub $300NZD ($150USD) at cost. I can pretty much do that now, with RPI, a wood salad bowl, a quality mic, a reasonable speaker, and a cheap Android tablet on VNC.

So, a voice in this thing? You betcha!!! It's got the voice rec quality needed, the bespoke skills ability, a nice low latency, and the potential for a personal configuration system. No to the mention, the most badass quality of anything like this out there. You can't begin to imagine the effect such a device would have for people in this group.

@evancohen
Copy link
Owner

@Kenno9000 This sounds like a really awesome idea (and is something that I have been investing in recently for another project). That said, it's a bit off-topic for the smart mirror.

If you'd like to collaborate (or just hear about some of my "research") ping me on twitter/email.

p.s. you can probably do it for sub $45 😉

@evancohen
Copy link
Owner

We'll be addressing this on Wednesday (see #532) if you'd like to join us.

@sdetweil
Copy link
Collaborator

sdetweil commented May 3, 2020

need to redo dev branch

@sdetweil sdetweil closed this May 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants