MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-TTS

    Scheduled Pinned Locked Moved Utilities
    text-to-speech
    19 Posts 4 Posters 14.1k Views 5 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • strawberry 3.141S Offline
      strawberry 3.141 Project Sponsor Module Developer
      last edited by

      An offline text-to-speech module

      [card:fewieden/MMM-TTS]

      For developers:

      this.sendNotification('MMM-TTS', 'This is a text to read. Hello World!');
      

      Please create a github issue if you need help, so I can keep track

      A D 2 Replies Last reply Reply Quote 2
      • A Offline
        alexyak @strawberry 3.141
        last edited by

        @strawberry-3.141 hey, man, what’s the state of your MMM-voice module?

        strawberry 3.141S 1 Reply Last reply Reply Quote 0
        • strawberry 3.141S Offline
          strawberry 3.141 Project Sponsor Module Developer @alexyak
          last edited by

          @alexyak still in development was working most of the time on different modules

          [card:fewieden/MMM-voice]

          Please create a github issue if you need help, so I can keep track

          A 1 Reply Last reply Reply Quote 1
          • A Offline
            alexyak @strawberry 3.141
            last edited by

            @strawberry-3.141 what’s left there, what’s working and what’s not?

            1 Reply Last reply Reply Quote 1
            • strawberry 3.141S Offline
              strawberry 3.141 Project Sponsor Module Developer
              last edited by

              voice recognition and installer are finished, but need to build the module itself

              Please create a github issue if you need help, so I can keep track

              A 1 Reply Last reply Reply Quote 1
              • cowboysdudeC Offline
                cowboysdude Module Developer
                last edited by

                You two are amazing! It’s people like you that bring this type of technology and make it reachable by far more people that just couldn’t afford to pay HUGE amounts of money to just buy a mirror that works…

                Thanks for ALL your hard work and patience with those of us who are neither py or js developers!

                A 1 Reply Last reply Reply Quote 0
                • A Offline
                  alexyak @cowboysdude
                  last edited by

                  @cowboysdude thank you.

                  1 Reply Last reply Reply Quote 1
                  • A Offline
                    alexyak @strawberry 3.141
                    last edited by

                    @strawberry-3.141 I could start looking at the module for voice rec. if you don’t mind.

                    1 Reply Last reply Reply Quote 1
                    • D Offline
                      davericher @strawberry 3.141
                      last edited by

                      @strawberry-3.141 Not to be a debbie downer, but does electron not expose Chromes built in multi voice text to speech api?

                      https://developers.google.com/web/updates/2014/01/Web-apps-that-talk-Introduction-to-the-Speech-Synthesis-API

                      strawberry 3.141S 1 Reply Last reply Reply Quote 0
                      • strawberry 3.141S Offline
                        strawberry 3.141 Project Sponsor Module Developer @davericher
                        last edited by

                        @davericher should be, but that wouldn’t work for people with serveronly mode

                        Please create a github issue if you need help, so I can keep track

                        D 1 Reply Last reply Reply Quote 0
                        • D Offline
                          davericher @strawberry 3.141
                          last edited by

                          @strawberry-3.141 True, but it would work for every connected client

                          strawberry 3.141S 1 Reply Last reply Reply Quote 0
                          • strawberry 3.141S Offline
                            strawberry 3.141 Project Sponsor Module Developer @davericher
                            last edited by

                            @davericher if you like you can create a pr to let the user decide via config if he wants to use festival or speech synthesis :)

                            Please create a github issue if you need help, so I can keep track

                            1 Reply Last reply Reply Quote 1
                            • cowboysdudeC Offline
                              cowboysdude Module Developer
                              last edited by

                              Question…this is what I"m trying to do…

                              else if (/(HIDE)/g.test(data) && /(CLOCK)/g.test(data)) {
                                        this.hide(0, {lockString: 'MMM-voice'});
                                        this.sendNotification('MMM-TTS', 'Hiding Clock');
                                      }  else if (/(SHOW)/g.test(data) && /(CLOCK)/g.test(data)) {
                                        this.show(0, {lockString: 'MMM-voice'});
                                      this.sendNotification('MMM-TTS', 'Showing clock');
                                      }  
                              

                              It works buttttttttttttttt the 1st time you fire it off it doesn’t stop LOL

                              “Showing clock”…“showing clock”…“showing clock”…

                              Same for Hiding clock

                              Apparently I’m not using it correctly hahahhahhahhaha

                              SO which is the correct way?

                              strawberry 3.141S 1 Reply Last reply Reply Quote 0
                              • strawberry 3.141S Offline
                                strawberry 3.141 Project Sponsor Module Developer @cowboysdude
                                last edited by

                                @cowboysdude where did you put that code piece?

                                Please create a github issue if you need help, so I can keep track

                                cowboysdudeC 1 Reply Last reply Reply Quote 0
                                • cowboysdudeC Offline
                                  cowboysdude Module Developer @strawberry 3.141
                                  last edited by

                                  @strawberry-3.141

                                  checkCommands(data) {
                                          if (/(HELP)/g.test(data)) {
                                              if (/(CLOSE)/g.test(data) || (this.help && !/(OPEN)/g.test(data))) {
                                                  this.help = false;
                                                  this.interval = this.createInterval();
                                              } else if (/(OPEN)/g.test(data) || (!this.help && !/(CLOSE)/g.test(data))) { 
                                                  this.help = true;
                                                  clearInterval(this.interval);
                                              }
                                          } else if (/(HIDE)/g.test(data) && /(CLOCK)/g.test(data)) {
                                            this.hide(300, {lockString: 'MMM-voice'});
                                           //  if (this.hide){
                                           // this.sendNotification('MMM-TTS', 'Hiding Clock');
                                          //   }
                                          }  else if (/(SHOW)/g.test(data) && /(CLOCK)/g.test(data)) {
                                            this.show(300, {lockString: 'MMM-voice'});
                                          //  this.sendNotification('MMM-TTS', 'Showing clock');
                                          }  
                                          
                                      },
                                  
                                  strawberry 3.141S 1 Reply Last reply Reply Quote 0
                                  • strawberry 3.141S Offline
                                    strawberry 3.141 Project Sponsor Module Developer @cowboysdude
                                    last edited by

                                    @cowboysdude could it be that the output of tts is putting you in a loop because it is triggering the command again :D try to change the output of tts so it will not trigger any output and then see if it still occurs

                                    Please create a github issue if you need help, so I can keep track

                                    1 Reply Last reply Reply Quote 0
                                    • cowboysdudeC Offline
                                      cowboysdude Module Developer
                                      last edited by

                                      OK have no idea what that means but I didn’t change anything and now this is all I get…

                                      Error: SIOD ERROR: unbound variable : voice_us1_mbrola

                                      at Socket. (/home/cowboysdude/MagicMirror/modules/MMM-TTS/node_modules/say/index.js:83:14)
                                      at Socket.g (events.js:286:16)
                                      at emitOne (events.js:96:13)
                                      at Socket.emit (events.js:188:7)
                                      at readableAddChunk (_stream_readable.js:176:18)
                                      at Socket.Readable.push (_stream_readable.js:134:10)
                                      at Pipe.onread (net.js:543:20)
                                      
                                      strawberry 3.141S 1 Reply Last reply Reply Quote 0
                                      • strawberry 3.141S Offline
                                        strawberry 3.141 Project Sponsor Module Developer @cowboysdude
                                        last edited by

                                        @cowboysdude For me it sounds like the output of tts showing clock triggered the voice module to recognize the command again, so tts said showing clock again -> infinite loop

                                        Not sure what this error is

                                        Please create a github issue if you need help, so I can keep track

                                        1 Reply Last reply Reply Quote 0
                                        • cowboysdudeC Offline
                                          cowboysdude Module Developer
                                          last edited by cowboysdude

                                          Thanks!!! I got it… can’t understand the jibberish it’s saying but I think TTS didn’t install properly…

                                          FOR the record in simple form DO NOT use the same phrases in TTS that you use for sentences for voice…

                                          if anyone needs examples please let me know I’ll be happy to help.

                                          1 Reply Last reply Reply Quote 0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          • 1 / 1
                                          • First post
                                            Last post
                                          Enjoying MagicMirror? Please consider a donation!
                                          MagicMirror created by Michael Teeuw.
                                          Forum managed by Sam, technical setup by Karsten.
                                          This forum is using NodeBB as its core | Contributors
                                          Contact | Privacy Policy