Win Kodi 20 with bundled python breaks text to speech using native sapi
#1
Kodi 20 ships with a private copy of python. This python uses a non-standard name of python3.8.dll instead of python38.dll. This means that any third-party python package (such as comtypes) which provides .dll or .pyd modules that references python38.dll  will fail. This may be intentional, since addons are not supposed to ship with .dlls, which is understandable. However, it breaks an old, unsupported text-to-speech addon which uses Windows native speech system via SAPI through comtypes (and possibly other libraries). Support for native TTS could be removed and instead use other supported TTS engines, such as espeak, but it is a step down.

For quite some time I have been reworking the old TTS addon and learned about this .dll problem from some users trying to get the old addon to work on 20. I was able to get my new version to work only after building Kodi 20, python 3.8 (with python38.dll)  and the third-party libs (now using comtypes, pywin32 and pipywin3).

Is it possible to for these third-party packages be allowed to be installed, or shipped with Kodi? If not, the alternatives that I see are:
  1. TTS not to support native SAPI or JAWS, but use other engines
  2. Use a proxy with rpc and a second python instance to run the .dll code
I think the visually impaired community prefers the native TTS, but I have not asked. The voice quality and language support is certainly better than the older open-source engines such as espeak. I have been adding some newer engines, such as for google (gtts) and several other free services which are of high quality. They probably don't support as many languages as native Windows does, but they can be run on any platform.

Thanks for any suggestions or guidance.
Reply

Logout Mark Read Team Forum Stats Members Help
Kodi 20 with bundled python breaks text to speech using native sapi0