[DECtalk] DecTalk emulator

Don Text_to_Speech at GMX.com
Wed Jul 31 13:58:59 EDT 2019


On 7/31/2019 9:50 AM, Jayson Smith wrote:
> What I wish someone would do is figure out how to emulate a DECtalk PC or
> Express and make it really work well, then export that into a DLL or something.
>
> FWIW, I really don't buy the lost source code story about why Force messed it
> up so horribly, then nobody was ever able to revert it and make it sound like
> it once did.

I've no idea as to that "story".  OTOH, I've had clients who HAVE lost the
source code to the products they were building!  There's never a panic (because
they can still build the products "as is") -- until they want to make a
change... and can't make the change because they don't have the "original"
to modify!  <frown>

There are a couple of approaches to "emulation".

The "white room" approach is to design a "work-alike" of a product without
ever "peeking under the hood".  This is legal -- barring any patent
infringement -- because you are not copying the COPYRIGHTED software
that resides in the device.  You're just observing how it reacts when
tickled in various different ways!

You can include the same interface to that device that has been
openly published (e.g., like selecting "Perfect Paul" for a particular
set of voice characteristics) and, in that way, ensure the interface
"fits", seamlessly, with other products that expect that interface.

You possibly can also determine how the LTS rules work by throwing
all sorts of word combinations at it and analysing the resulting
phoneme codes that it has chosen for that set of input words.  What
might have been a significant undertaking with 1980's technology
is probably something that could be done on a laptop while ALSO
watching a movie on a commercial aircraft flight!

Again, you're not looking at or copying the software -- just trying
to COMPLETELY characterize how the device performs over a wide variety
of input conditions.

[If I throw every combination of X & Y at a device that processing them
in some way to come up with a Z; tabulate each of these combinations;
then make another device that yields the same resulting Z for every
combination of X & Y... have I *copied* the device?  Or, just it's
FUNCTIONALITY??]

The other approach is the one taken by the MAME dectalk emulation.
It emulates the CPUs that are present in the DECtalk device and
literally copies the ROM images to drive those CPUs in an identical
manner to that of the genuine device.

The ROM images are copyrighted.  So, this is technically illegal.
You can't argue that you coincidentally came up with 256KB of "data"
that exactly match the set that was originally published!  But, IANAL.

However, I suspect that you could create a program (or device) that
allows someone to "plug in" a chunk of data -- say 256KB worth -- in
a certain way and it magically ends up acting exactly like the
original article, now counterfeited!  You could probably even apply
some mathematical transform to that data (for example, adding "1" to the
value of every byte in that data chunk -- and having the emulator SUBTRACT
one from each byte after its retrieved it!) and argue that YOUR data is
now different from the original data.

[I suspect this would fail, miserably, in a court of law.  Again, IANAL]

Realistically, any business wanting to make a comparable product
wouldn't want to pursue either of these options.  Instead, you'd
want to learn from the "prior art" and come up with your own, original
version.  To think that a 35 year old product can't be improved upon
is just plain silly!

For example, Aksel lamented the 11KHz sample rate (I've not verified
that).  But, that's largely a consequence of the technology that was
available at the time.  Your iPod now handles 44KHz rates when decoding
MP3's -- using far cheaper hardware than DECtalk's!  So, no reason a newer
"version" couldn't also use a higher sample rate (though how much
improved the voices might be is debatable)

[Keep in mind that the original DECtalk was menat to interact with
people over a TELEPHONE line:  "Press 7 to hear your current balance".
The phone line already compromises the quality of the speech signal!]



More information about the Dectalk mailing list