Edit: This is now released. Say all works, though the audio becomes choppy sometimes. But it doesn't crash. Right! I now have a copy of Eloquence that works on the 64-bit alphas of #NVDA, with the following issues: say all on the web doesn't work (it stops whenever the type of element changes for reasons I don't understand), and dialect switching doesn't work (but it doesn't crash everything anymore). If you want to play, you need to follow the build instructions; I only understand about a quarter of this code and have no intention of actually releasing things that are still broken: github.com/fastfinge/eloquence_64/
@jscholes Oh, also, I used spell check on the build docs. So I guess that counts. And Titet11 is Mexican and more comfortable working in Spanish, so AI translation was involved in communication and some of the comments. If you want to avoid anything that uses AI you need to avoid this, as it couldn't exist otherwise.
@jscholes So with more code updates this morning, the thing I'm noticing is that the more rewriting that is done, the less and less code there is from the initial AI rewrite. The AI solution mostly worked, but was over-complicated and multi-threaded where it didn't need to be. We're slowly arriving at code that is both simpler and works better.
@fastfinge I suppose I initially asked because of it defaulting to a Python helper process written in Python, using sockets as the IPC mechanism. Which is very AI, based on what will have been most common in the training data.
But for this sort of thing, I wonder about performance gains from shared memory, COM, or whatever with something other than Python on the other end.
@jscholes So the reason I wanted Python was because I naively thought a lot of the existing code could be reused, as well as some of the learnings from IBM TTS, eloquence threshold, and the sonata voices. That turned out to be entirely wrong. The "correct" way to do this would be to write a 64-bit API compatible wrapper for ECI.dll. But that's way beyond my abilities as a programmer, and AI can't help because we don't have the development headers for ECI.dll to feed it.
@feld@jscholes Maybe you could. But I don't really understand low level c++ code and pointers and things well enough to want to use AI for this. When it comes to Python, I can at least understand the code well enough to audit it (even if not to write it myself), and understand the approach. With C++ that wouldn't be the case.