• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
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.

VoiceControl module

Scheduled Pinned Locked Moved Utilities
79 Posts 27 Posters 98.5k Views 29 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.
  • J Offline
    Jeff
    last edited by Dec 19, 2016, 10:37 PM

    Hi,
    I was about to try this voice control modul to start/stop my music.
    But I can’t uploade or record files to snowboy at the moment, maybe it is partly down…

    But in the meantime I was triying to understand how to correctly install everything, but I think I’m not getting it.

    Can somebody maybe put everything in correct order.
    Where do I put the codes, what do I have to change in the mm-music-player module, where do I have to put the node_helper.js (what does it do), and so on…

    In this topic there are several questions and also answers, but I would be great to put in in order and make a summary.

    Thanks

    1 Reply Last reply Reply Quote 0
    • G Offline
      GinSeng
      last edited by Dec 21, 2016, 8:58 AM

      @Jeff
      Lets see if i can make a complete list for you.
      Step 1. cd in your MagicMirror/module folder then git clone the modul ( https://github.com/alexyak/voicecontrol.git )
      Step 2. cd in the voice module and install dependencies ( sudo apt-get install python-pyaudio python3-pyaudio sox )
      Step 3. Create snowboy files and copy them into the ( im not sure which works i copied them in 3 placed) 1. voice control module 2. mm-music-player module and MagicMirror folder
      Step 4. cd into your mm-music-player and sudo nano mm-music-player.js add following lines after this lines:
      start: function() {
      Log.info("Starting module: " + this.name);
      },

      ->> Add this
      notificationReceived: function(notification, payload, sender) {
      if (notification === “PLAY”){
      var playButton = document.getElementById(‘play-button’);
      playButton.click();

      if (notification === “STOP”){
      var pauseButton = document.getElementById(‘pause-button’);
      pauseButton.click();

      then go down to

          playButton.className = "play";
          playButton.innerHTML = '<i class="fa fa-play" aria-hidden="true"></i>'; 
      

      playButton.id = ‘play-button’;

          pauseButton.className = "pause";
          pauseButton.innerHTML = '<i class="fa fa-pause" aria-hidden="true"></i>'; 
      

      pauseButton.id = ‘pause-button’;

      Then cd in your MagicMirror config and sudo nano config.js

      and add the following lines

      {
      module: ‘voicecontrol’,
      position: ‘bottom_right’,
      config: {
      models: [
      {
      keyword: “play music”, // keyword
      description:
      file: “yourfile.pmdl”,
      message: “PLAY”,
      },
      {
      keyword: “stopmusic”, // keyword
      description:
      file: “yourfile.pmdl”,
      message: “STOP”
      },

      This should be all.
      If it doesn’t work, feel free to write me a PM.
      greez GinSeng

      F J 2 Replies Last reply Dec 21, 2016, 10:20 AM Reply Quote 3
      • F Offline
        frodrd00 @GinSeng
        last edited by Dec 21, 2016, 10:20 AM

        Hi @GinSeng ,

        How can I change the volume with the voice?

        if (notification === “VOLUME_UP”){
        ?¿?¿?¿?¿?
        }
        if (notification === “VOLUME_DOWN”){
        ?¿?¿?¿
        }

        Thanks.

        1 Reply Last reply Reply Quote 0
        • G Offline
          GinSeng
          last edited by GinSeng Dec 22, 2016, 12:38 PM Dec 22, 2016, 12:38 PM

          @frodrd00 Hey sorry i didn’t try this. Maybe i find time in the Christmas vacations but exams are near so i can’t promise you :P

          1 Reply Last reply Reply Quote 0
          • J Offline
            Jeff @GinSeng
            last edited by Dec 22, 2016, 8:31 PM

            @GinSeng said in VoiceControl module:

            greez GinSeng

            Thanks for the great instructions, but I think my mic isn’t working correctly :(

            I think I have to order a new one first.

            S 1 Reply Last reply Dec 27, 2016, 9:51 AM Reply Quote 0
            • S Offline
              shashank @Jeff
              last edited by Dec 27, 2016, 9:51 AM

              @Jeff hi, i wanted to share my Mirror with Family for individual Email on MM, can it be possible to use voice and access individual emails, making the previous person email hide and show the other member email

              1 Reply Last reply Reply Quote 0
              • D Offline
                DevilRev
                last edited by Dec 29, 2016, 7:43 PM

                Is there a way to set a snowboy tolerance?
                Because even tho my command is 5 words long it gets triggered all the time when I talk normally with a friend or watch a TV show.

                1 Reply Last reply Reply Quote 0
                • D Offline
                  DevilRev
                  last edited by Jan 1, 2017, 8:26 PM

                  So, I found out that there is a sensitivity setting which can be changed in one of the snowboy configs permanently but it can also be controlled for each hotword individually.

                  It would be a great feature if we could set a sensitivity for each hotword in the normal config file, if you find the time i would be really thankful for this addition.

                  G 1 Reply Last reply Jun 2, 2017, 2:57 PM Reply Quote 0
                  • M Offline
                    Medo
                    last edited by Medo Jan 5, 2017, 9:43 PM Jan 5, 2017, 9:36 PM

                    Searching for endless hours now, but no solution in sight…

                    Im trying to trigger the mm-music-player module with this voicecontrol module (i say “MUSIK ON” and the mm-music-player starts a certain mp3 file). But no luck…

                    My microfone can record audio (tested with arecord …) …

                    (note: i had to change my “sudo nano /usr/share/alsa/alsa.conf” and the entries “defaults.ctl.card 1” and “defaults.pcm.card 1” from “0” to “1” to get my USB microphone working/recording)

                    …and my mp3 soundfile can be played (tested with “omxplayer -o hdmi …”) - and also if i click on the mm-music-player-module…

                    pm2 logs mm (after a reboot) shows this:

                    [STREAMING] Now streaming realtime logs for [mm] process
                    0|mm | ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
                    0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
                    0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
                    0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
                    0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
                    0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
                    0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
                    0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
                    0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
                    0|mm | ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
                    0|mm | ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
                    0|mm | ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
                    0|mm | ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
                    0|mm | Cannot connect to server socket err = No such file or directory
                    0|mm | Cannot connect to server request channel
                    0|mm | jack server is not running or cannot be started
                    0|mm | Expression ‘paInvalidSampleRate’ failed in ‘src/hostapi/alsa/pa_linux_alsa.c’, line: 2048
                    0|mm | Expression ‘PaAlsaStreamComponent_InitialConfigure( &self->capture, inParams, self->primeBuffers, hwParamsCapture, &realSr )’ failed in ‘src/hostapi/alsa/pa_linux_alsa.c’, line: 2719
                    0|mm | Expression ‘PaAlsaStream_Configure( stream, inputParameters, outputParameters, sampleRate, framesPerBuffer, &inputLatency, &outputLatency, &hostBufferSizeMode )’ failed in ‘src/hostapi/alsa/pa_linux_alsa.c’, line: 2843
                    0|mm | Traceback (most recent call last):
                    0|mm | File “./modules/voicecontrol/snowboy/kws-multiple.py”, line 34, in
                    0|mm | detector = snowboydecoder.HotwordDetector(models, sensitivity=sensitivity)
                    0|mm | File “/home/pi/MagicMirror/modules/voicecontrol/snowboy/snowboydecoder.py”, line 115, in init
                    0|mm | stream_callback=audio_callback)
                    0|mm | File “/usr/lib/python2.7/dist-packages/pyaudio.py”, line 747, in open
                    0|mm | stream = Stream(self, *args, **kwargs)
                    0|mm | File “/usr/lib/python2.7/dist-packages/pyaudio.py”, line 442, in init
                    0|mm | self._stream = pa.open(**arguments)
                    0|mm | IOError: [Errno Invalid sample rate] -9997

                    I…

                    • installed the voicecontrol and mm-music-player
                    • double checked the code
                    • changed the mp3 file with another
                    • implemented the code like “GinSeng” stated some lines above.
                    • created the hotwords over at snowboy and copied them to “/MagicMirror”, “voicecontrol” and “mm-music-player” directories
                    • …
                      But im not able to find the problem…

                    Any suggestions?

                    Thanks a lot for your help…

                    J 1 Reply Last reply Dec 6, 2017, 9:36 PM Reply Quote 0
                    • thereisnotry87T Offline
                      thereisnotry87
                      last edited by yawns Feb 9, 2017, 6:56 AM Feb 8, 2017, 3:17 PM

                      Hello guys, it seems I have the same problem as @frodrd00 and @Medo and cannot properly run the voicecontrol module. In my case I want to use the camera module which works together with the mentioned one. I’ve checked the voicemodule.js to match with its corresponding declaration in config.js and everything looks fine.

                      **config.js**
                      {
                          	module: 'voicecontrol',
                          	position: 'bottom_left',
                          	config: {
                              	models: [
                                  	{
                                      	keyword: "Show Camera",
                                      	description: "Say 'Show Camera' to display camera",
                                      	file: "ShowCamera.pmdl",
                                      	message: "SHOW_CAMERA"
                                  	},
                                  	{
                                      	keyword: "Hide Camera",
                                      	description: "Say 'Hide Camera' to hide camera",
                                      	file: "HideCamera.pmdl",
                                      	message: "HIDE_CAMERA"
                                  	},
                                  	{
                                      	keyword: "Selfie",
                                      	description: "Say 'Selfie' when camera is visible",
                                      	file: "Selfie.pmdl",
                                      	message: "SELFIE"
                                  },
                              	]
                          	}
                      },
                      

                      voicecontrol.js

                      models: [
                      	{
                      		keyword: "Show Camera",
                      		description: "Say 'Show Camera' to display camera",
                      		file: "ShowCamera.pmdl",
                      		message: "SHOW_CAMERA"
                      	},
                      	{
                      		keyword: "Hide Camera",
                      		description: "Say 'Hide Camera' to hide camera",
                      		file: "HideCamera.pmdl",
                      		message: "HIDE_CAMERA"
                      	},
                      	{
                      		keyword: "Selfie",
                      		description: "Say 'Selfie' when camera is visible",
                      		file: "Selfie.pmdl",
                      		message: "SELFIE"
                      	},
                      ]
                      

                      How did you manage this problem?

                      ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
                      ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
                      ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
                      ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
                      ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
                      ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
                      ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
                      ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
                      ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
                      ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
                      
                      ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
                      
                      ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
                      
                      ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
                      Cannot connect to server socket err = No such file or directory
                      Cannot connect to server request channel
                      jack server is not running or cannot be started
                      

                      Thanks a lot in advance ))

                      S 1 Reply Last reply Feb 9, 2017, 2:56 AM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 7
                      • 8
                      • 6 / 8
                      • 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