Jump to content
Sign in to follow this  
cph1776

Advanced TI Speech

Recommended Posts

Hello all,

 

In early 2016 I was discussing various ways to use the TI Speech Synthesizer. My goal was to (eventually) be able to convert a .WAV file into a format that could be read by the TMS5220.

(Like QBOX, but with less hassle). Lots of discussion on SPEECODER, STANAGs, and SOX. The thread is at https://atariage.com/forums/topic/251554-speecoder-on-win994a/

 

Not too long after that, I picked up another part-time job, and ended up writing three (non-computer related) journal/magazine articles, taking up much of my time and brainspace.

TI speech, unfortunately, got shunted off to a siding.

 

Now that things have quieted down a bit, I'm revisiting my investigation into the speech synthesizer. One project, if anyone hasn't beat me to it yet, is to extract speech data from TI's text to 

speech programs ("SPEAK", "XLAT", etc), and save it to a file. (Note that the input expected by "CALL SAY" is different than the output of XLAT--CALL SAY wants TI-LPC data, XLAT produces a

coded phoneme string.)

 

There will be other studies in LPC formats, bit manipulation, phonemes, formants, and I may even tackle the math that generates the reflection coefficients. But for now, enjoy this Extended Basic program

that makes the TI sing! (feel free to scroll ahead to about 1:30 to hear the actual singing...) Let me know what you think. 

 

 

 

  • Like 6

Share this post


Link to post
Share on other sites

An x-mas song, nice!  

Also fun to combine music and speech in that way, I can´t recall ever heard TI singing with music. 

Looking forward to follow your progress on the WAV to speech program. 👍

Share this post


Link to post
Share on other sites

I must admit to being somewhat fixated by early speech synthesis techniques and LPC. 

 

Classic99's debugger can capture data from >9400(very useful).

 

I as well, confess to having, breached the surface a little...

 

#25

 

...and are you aware of this:

 

examples

 

I would like to expand these vocabularies or phonemize:) them.

Share this post


Link to post
Share on other sites
4 hours ago, HOME AUTOMATION said:

I must admit to being somewhat fixated by early speech synthesis techniques and LPC. 

 

Classic99's debugger can capture data from >9400(very useful).

 

I as well, confess to having, breached the surface a little...

 

#25

 

...and are you aware of this:

 

examples

 

I would like to expand these vocabularies or phonemize:) them.

Hi. I downloaded the tts2lpc disk and played around with it. One issue is I'm not quite sure when to turn the buffer on/off before extracting the lpc codes. I thought I got something from CALL LINK("LPC") but when I ran it through

CALL SAY, it sounded garbled...

 

The talkie source code looks *very* interesting. Seems easier to follow than the source code in SOX, for one thing. I'll see if it gets me closer to the "holy grail" of converting WAV files to TMS5220 LPC...

 

Share this post


Link to post
Share on other sites

The idea of using OFF is just to keep the buffer from being overwritten(if desired).

ON is to clear the buffer.

Did you run PHRASE and use FCTN 4(BREAK)? ...see PAGE 2 of the thread.
Are you on real hardware or EMU?

 

I imagine TALKIE doesn't crash. I haven't tried it though. Curiously simple!

Share this post


Link to post
Share on other sites
10 hours ago, HOME AUTOMATION said:

The idea of using OFF is just to keep the buffer from being overwritten(if desired).

ON is to clear the buffer.

Did you run PHRASE and use FCTN 4(BREAK)? ...see PAGE 2 of the thread.
Are you on real hardware or EMU?

 

I imagine TALKIE doesn't crash. I haven't tried it though. Curiously simple!

 

I just tried it now. It works fine. (I had difficulties getting some of the programs to load last night for some reason....) 

 

This is a jump ahead for me (I was preparing to disassemble the TI programs to find out where the LPC codes were stored!)

 

I might try adding a feature where it saves the LPC strings to a disk file, or even BASIC program lines in MERGE format....

 

I am currently using MESS .0159.  (I have MAME .216, installed, but I haven't tried to run TI99/4a emulation there yet)

 

Talkie looks like source code for the Arduino, which I haven't played with yet. The algorithms in the source code might be handy for another project, though.

Share this post


Link to post
Share on other sites
1 hour ago, cph1776 said:

I am currently using MESS .0159.  (I have MAME .216, installed, but I haven't tried to run TI99/4a emulation there yet)

Remember to get the suitable ROM dumps from WHTech (folder System ROMs/MAME). Here is a list what happened in the meantime for the TI family: https://www.mizapf.de/ti99/mame/changes

 

Share this post


Link to post
Share on other sites

I was more desperate to capture the data stream than I was to determine the means of operation. Around here... it does make it feel like I cheated or something!:dunce:

 

Sometimes just a few short words generate enough data to overflow the string length limit of 255. I worked on an alternate method to move the data within XB, but lost interest at the last minute.:twisted:

 

Glad that you got it to work.

 

I mainly made it because of performance issues, I wanted proper vocabulary, better speed and I needed access from running machine code.:cool: I wonder if TE IIs virtual "SPEECH" device would even work outside of the BASIC environment.:ponder:

 

I believe TALKIE was developed on TEENSY 2...
 

https://www.pjrc.com/teensy/

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...