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 12.7k 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.
    • 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
                        • 1
                        • 2
                        • 2 / 2
                        • 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