Okay, okay, @_jupiter you were right!
Introducing SAMMY Singer!
Based on the principles of ‘formant synthesis’, where multiple sounds called ‘formants’ are layered to synthesize a human voice. This had been theorized to be possible, but was only made real once I read a few studies revealing the ‘formants’ in most human speech is consistent.
So the formants making up ‘m’ ‘a’ ‘k’ and ‘e’ are about the same every time you say them, cutting out the need to record audio or store massive amounts of data. SAMMY can speak with just 3 sine waves at a time!
What does it do?
SAMMY (Short for Software Automatic Mouth Makecode Yippee) can speak whatever your heart desires! Simply place down letters and set a length, then SAMMY will do the rest. While SAMMY may be technically complicated, the game itself is simple and up to the user’s own creativity!
Try SAMMY out for yourself!
SAMMY saying ‘Makecode Arcade’ in SAMMY Singer:
(Check bug fixes to hear why there’s an E at the start)
He can also sing Daisy Bell, known for being the first song sung by a computer!
(Assets removed to cut down on lag)
Improvements
Things I hope to add to the final version of SAMMY Singer
- Transitions. You can hear SAMMY slowly switch from one vowel to another in his singing, but when creating your own sounds, this is not an option yet.
- Pitch control.
- TUTORIAL!!! Blocks of text are painfully slow and boring, I know. It would be easy to add a nice gradual tutorial to introduce the concepts.
- Saving, especially because when trying to screen record sounds, users may accidentally reset or close the tab.
- More songs!
- More voices!
- Minor sound changes when singing Daisy Bell. (Ex. he says ‘stillish’ rather than ‘stylish’)
Easy bug fixes in the game
- Due to a stray minus sign, you CANNOT put an M or N at the start of a word.
- SAMMY’s singing in ‘Daisy Bell’ often lags behind the song on slower devices. This could be fixed by splitting the song into multiple parts and ‘re-aligning’ it with his signing periodically.
- When starting the game, a letter is automatically placed without user input. Easy fix!
Improvements in the extension version
- SAMMY has no pitch control! (He sings monotone with no high or low notes.) This is easy to add, but will require precise testing to ensure he sounds right on key.
- SAMMY can only speak with the voices sampled in the studies. Ideally these studies represented an average person, but alas, 99% of them just use a college-age American white man with no discernable accent. I hope to track down a few with other voices, especially for in-demand voices like Woman and Child.
- More automation. (There are some unnecessary manual steps that could be eliminated)
More
I hope to make this into an amazing extension that can bring speech to the many Makecode games and coders who have been pleading for a speech synthesizer!