[DECtalk] dectalk for linux with orca and speakup

Guillem León guilevi2000 at gmail.com
Sat Nov 19 12:26:50 EST 2022


Josh,

I know you send messages of this kind on this list every time we obtain the source code/any amount of further information about literally any synthesizer, so I'll try to explain this in a way that'll be applicable to as many things as possible. I'll stick to the technical side, which is only the tip of the iceberg, because there are obviously legal implications involved which Don has already patiently tried to explain to you.

Having the source code to DECtalk, or to anything for that matter, doesn't mean we have a generic template to compile it on every system for every platform for every speech framework. In DECtalk's case, as far as I am aware, it means that we got the source code for the say and speak applications and the accompanying dynamic libraries that actually contain the code for the speech synthesizer itself. However, making the NVDA add-on version and the SAPI version did not entail simply typing a different command to compile DECtalk. It involved writing the Python code that will serve as a middle man between NVDA and the dynamic library, and the equivalent for SAPI. Thankfully, it just so happens that say, speak, SAPI and NVDA run on the same platform, and that the source and whatever accompanying docs tell us exactly how to call into the functions of the dynamic library. Even so, someone (please forgive my ignorance as to who did it) went through the process of writing the code to interface with the latter two.

This has the potential of becoming exponentially more complicated when the code has to be compiled for a different platform, because that means rebuilding the dynamic library itself, the code that makes whatever device make the necessary noises for our monkey brains to be tricked into thinking we are hearing human speech. And if the code makes any assumption that is true for Windows but is not so in the case of Platform X, you have to go through and change absolutely every instance of every single assumption, assuming there are direct equivalents for each and every one of them. Spoiler alert: this is usually not the case. Spoiler alert No. 2: this cannot be easily automated. Spoiler alert No. 3: This tends to be quite a bit more involved than just writing some Python to make NVDA talk to a DLL.

you might be wondering what the point of me oversimplifying and explaining all of this is. I'm glad you asked! What I mean to achieve by this is that you understand that having DECtalk's source code doesn't mean we can recompile it for any platform, and that this applies to literally anything. Yes, "maybe now that we have the source code for several versions of dectalk, maybe now we can once again have it for Linux, for use with speakup and orca." We could also have it for Mac now that speech audio units are a thing. We could have it for Android, for iOS, for Rockbox on a Sansa Clip, for the BraillePlus mobile manager, maybe even for Symbian S60. But someone has to do the work. We're aware that we can, and that maybe it can be done. I understand expressing your support for the idea of having synthesizers ported, but I don't know that starting multiple threads every single time this happens is the best way to approach this. I know I'm not the first to explain this, but you have been getting the same response every time, and you will continue to get the same response. It's not that easy, and for something like this to happen, either there is high popular demand, or there is a user with the pertinent knowhow who happens to need it on a specific platform and does all the work for personal use and has the kindness to share it.

I hope that this all makes sense and that you understand where I'm coming from.

Thank you.



> On 19 Nov 2022, at 16:15, Josh Kennedy <joshknnd1982 at gmail.com> wrote:
> 
> also, maybe now that we have the source code for several versions of dectalk, maybe now we can once again have it for Linux, for use with speakup and orca? 
> 
> 
> Sent from my iPhone
> _______________________________________________
> Dectalk mailing list
> Dectalk at bluegrasspals.com
> https://bluegrasspals.com/mailman/listinfo/dectalk




More information about the Dectalk mailing list