Changing wakeword response bug

Hi, so I wanted to change the response mycroft makes when activated by the wakeword. I saw this post which was very helpful:

I didn’t want to reply there because I don’t know how acceptable it is to revive dead posts or not, so I’m making a new one (lmk if that’s what I should have done or no)

Anyways, so I’m trying to use this sound file as my wakeword response:

So here were my steps:

cd /home/pi/mycroft-core/mycroft/res/snd/

wget https://i1.theportalwiki.net/img/b/bb/GLaDOS_taunt_small_wave02.wav

mkdir old_files

mv start_listening.wav old_files/

mediainfo GLaDOS_taunt_small_wave02.wav 

This was the mediainfo output:

General
Complete name                            : GLaDOS_taunt_small_wave02.wav
Format                                   : Wave
File size                                : 250 KiB
Duration                                 : 2 s 899 ms
Overall bit rate mode                    : Constant
Overall bit rate                         : 706 kb/s
Writing application                      : Lavf54.59.106

Audio
Format                                   : PCM
Format settings                          : Little / Signed
Codec ID                                 : 1
Duration                                 : 2 s 899 ms
Bit rate mode                            : Constant
Bit rate                                 : 705.6 kb/s
Channel(s)                               : 1 channel
Sampling rate                            : 44.1 kHz
Bit depth                                : 16 bits
Stream size                              : 250 KiB (100%)

Format looks correct except only 1 channel, so not stereo. So I converted to stereo:

ffmpeg -i GLaDOS_taunt_small_wave02.wav -ac 2 GLaDOS_taunt_small_wave02_stereo.wav

mv GLaDOS_taunt_small_wave02.wav old_files/
mycroft-config reload
mycroft-start all restart 

When I do all this, I just get no wakeword response. Mycroft still works fine, just no sound when it’s woken up. When I move the old files back to where they were and keep all my changes in the old_files/ directory, I’m able to get the original wakeword response back. So I feel like it’s the format of the file? But it’s wav-format, 16-bit, stereo, 44100 Hz sampling rate. Any ideas? I didn’t have something to play the .wav natively but I did convert to mp3 and was able to play it through my pi’s speakers using mpg123, so it doesn’t seem corrupted or anything.

Edit: Almost forgot, this is using Picroft 21.2.1 on a Raspberry pi 4 Model B. I did also try checking the mediainfo of the original start_listening.wav, which had a 48khz sampling rate, so I tried changing that with ffmpeg as well with the same results.

Thanks!

Wilson

Got it! Went digging around for when the file was referenced and realized in the configuration file start_listening.wav is referenced directly, not just looking for the .wav in the path. So I changed the name in the configuration file and it’s working now!

1 Like