splashkit / splashkit-core

Core code for SplashKit—beginner's all-purpose SDK
http://splashkit.io/
GNU General Public License v3.0
23 stars 58 forks source link

Cross-Platform Speech (Screen-Reader) Output Library for the Splashkit SDK #113

Open njsch opened 4 years ago

njsch commented 4 years ago

Feature suggestion: Use object-orientated development to create a new speech portion of the Splashkit API to provide a way for third-party applications written with Splashkit to be able to output messages (speech and maybe Braille) to screen-reading technologies. An individual screen reader will usually have its own library to control speech output; however, it would be easier for a third-party developer to be able to utilise one library to check which operating system and screen-reader is running, to then output speech / Braille accordingly.

There are already packages / libraries that have been built along these lines, such as Accessible_output2 written in Python. But I do not know of anything written exclusively in C++.

At a base level, such a library would require:

  1. A directory to store dynamic-linked libraries (DLLs) for each individually supported screen reader.
  2. An output controller / handler / helper to control output to each screen reader.
  3. An auto-detector to precisely determine the opeating system and screen reader in use.

Although I have done a mild amount of OOP in Python, my syntactical and functional knowledge of C++ is such that I could not, at this point, develop it myself. But I thought I would leave this here for reference, unless someone jumps the gun and does it before me.

macite commented 4 years ago

This would be great. This may be a good starting point: https://github.com/dkager/tolk though a cross platform product would make this easier.