[DECtalk] It's time to bust some DECtalk myths

Don Text_to_Speech at GMX.com
Sun Sep 18 15:36:25 EDT 2022


Chime,

Top posted so you don't have to sort my comments from amidst your original
message

I assume setting the device to RS232 mode is something that you can do
without any driver?  Perhaps a real switch on the case?  Regardless,
it must be something that you can do RELIABLY so I'm not going to worry
about how it works.

If the device is connected to the Linux system as "/dev/stty", then
everything that gets sent to it is written to /dev/stty (and, if anything
can be read FROM it, it would be read from that same "file" -- everything
in Linux looks like a file)

So, if you did something like:
     echo "Hello, Joe" > /dev/stty
it likely will SAY "hello, joe" -- because the smarts to convert the text
into sounds resides inside the DECtalk device.  SpeakUp likely just knows how
to grab text from the screen and pass it to the device via /dev/stty.

[This is an educated guess but probably not far from the truth]

This should be done while speakup is NOT running else you may find a
conflict (the /dev/stty device may be locked for exclusive use of the
speakup program).  And, hopefully, just after the dectalk has been powered
up (so it hasn't been "told" anything, yet)

[I don't know how your dectalk differs from the original dectalk or
the express, so I am cautious as to how much I assume]

Without trying to get data back from the dectalk, you should be able
to get an idea of how fast it is speaking by sending a long string of
text to it and timing it.  Then, send the same string through speakup
and play with the rate setting until you get a comparable time.  The
longer the text, the easier it will be for you to get a feel for the
right rate setting -- sensing a difference of a second in a 20 second
utterance is easier than trying to match a 2 second utterance!

(yes, I know this is kludgey)

You could do something similar to get an idea of the pitch and volume.
We're just looking for APPROXIMATE values.  So, we can decide if the
"dropping" you mentioned is bringing things back to this default settings.

My thinking is that, in certain cases, speakup tries to tell the
DECtalk to do more than the DECtalk expects.  Or, doesn't wait for it
to finish one thing before it tells it to do something else.  Or,
sends too much data to the DECtalk and the DECtalk "gags".

(we call these things bugs!  <grin>)

If that proves to be the case, then we'll have to figure out how NOT
to cause that situation to exist.

I assume you told speakup, during installation or configuration, that
/dev/stty was the way to access your dectalk device.  We can possibly
abuse that capability to get a peek at what speakup is actually sending
to the dectalk when it gags.  My dectalk has the ability to log stuff
that is sent to it but I'm not sure how easy that will be for you -- or
if yours even has that capability!

Altering a parameter works to restore normal operation because it forces
speakup to send the new parameters to the dectalk.  So, speakup apparently
thinks everything is fine and is unaware that dectalk choked on something
otherwise it could do that automatically!

On 9/18/2022 10:12 AM, Chime Hart wrote:
> Hi Don: Well, thank you, I read your comments maybe 4hours ago, but wanted to
> have a good breakfast before I make sense. Anyway, I must set the DecTalk in
> RS232 mode instead of U S B. I have `absolutely no idea how I would bipass
> speakup to type directly in to the DecTalk? If I did, then next time these
> settings drop, I could send a sample-and-see what happens? Even an original
> author of Speakup says the settings are wrong, but neither him nor the person
> who maintains Debian Speakup files have any DecTalk units. Seemingly this unit
> is on /dev/stty0
> Lets take these 3 Speakup settings 1 at a time. First volume which in this
> driver  go from 60-86, I keep at 86, but when it drops, I think it ends up at
> 70 or 71.
> Rate. I keep rate at 229. Rate goes from 75-610. Alot of times when it
> initualizes, its at 180.
> Pitch. I like it at 111, setting go from 50-349 or so. Maybe pitch drops to 80?
> And lastly I have inflection crankedup, with the following command, which I
> think I got from some1 on the DecTalk list many years ago
> echo "[:dv pr 250]" >> /sys/accessibility/speakup/synth_direct
> All 4 of those drop suddenly while either scrolling with Speakup review on the
> numpad, or any number of other ways. After they drop, I must go to the Speakup
> control-pannel-and-jossle each setting by 1. As soon as it gets moved by 1, it
> comes back nearly where it was. An even stranger thing, my Linux expert looks
> at the settings while its dropped, but they show regular values as I want them.
> O, I also must run that inflection command again, so I keep that in tty9
> history, as I run it alot. I am not a programmer, but if there are specific
> thinks you want me to try, I would be happy to. Thanks in advance.
> Chime
>
> _______________________________________________
> Dectalk mailing list
> Dectalk at bluegrasspals.com
> https://bluegrasspals.com/mailman/listinfo/dectalk




More information about the Dectalk mailing list