Close

Detour de Farce

A project log for Look Who's Talking 0256

A BluePill Driver/Simulator/Emulator for the GI SP0256-AL2

ziggurat29ziggurat29 05/05/2020 at 18:010 Comments

Summary

I implement a simulation of my simulation in Python.

Deets

While preparing to get my hands dirty with the breadboard and jumper wires, I found on the web an existing set of pre-recorded SP0256-AL2 phonemes Allophones.zip.  It was cautioned that these files are recorded incorrectly, but I carry on anyway.

Since I don't know if this 'concatenate pre-recorded sounds' approach will generate acceptable quality at all, I thought it might be best to do a cheap proof-of-concept first, before I bother with developing the embedded controller.  Since I found those pre-recorded audio files, this made it even cheaper.  As mentioned, it was cautioned that the files were defective in some way, but I decided to rush in where angels fear to tread.

Python is not my mother tongue, so it was with some embarrassment that I would have to google as much as I did to get syntax correct for things like 'how do I make a for loop', but oh well.  I got through it.  The application was trivial -- read a bunch of audio files into arrays, and then whizz over a list of phoneme codes and concatenate them into a single array, which then gets written out as a wave file.  Conveniently, I had a rather long sequence of phonemes from another project that is of The Doors 'Hello'.  (I did that because the first word I hand-crafted was 'hello', and upon hearing that I immediately thought of that song.)  The results were actually not that bad:  testcase_001.wav

A little crackly at the phoneme transitions, but it seems to give credence to the hypothesis that this concatenation approach could be workable.  It also immediately made me think of other ideas outside of the scope of the original project, so now I'm off pursuing undomesticated aquatic fowl (once again).  One such canard is resurrecting some old text-to-speech code I have somewhere.

Next

A detour of a detour onto text-to-speech.

Discussions