Commit Graph

17 Commits

Author SHA1 Message Date
Nolan Darilek d3e05b5a7a Revert "Pass TTS instance as first argument to utterance callbacks."
This appears to break callbacks, and is of limited utility.

This reverts commit 29c0a8463e.
2020-11-03 11:03:55 -06:00
Nolan Darilek 5a9c96508f Remove unused variable. 2020-11-03 11:00:20 -06:00
Nolan Darilek 2343523bb6 Add example that exposes WinRT issue where speech doubles in some circumstances. 2020-11-03 10:05:17 -06:00
Nolan Darilek 29c0a8463e Pass TTS instance as first argument to utterance callbacks. 2020-11-02 22:40:30 -06:00
Nolan Darilek 565aa6d654 Fix issue where is_speaking always returns true under WinRT, and bump version. 2020-11-02 13:30:39 -06:00
Nolan Darilek ba90cd66ba Add unused example of setting on_utterance_stop. 2020-10-08 09:06:48 -05:00
Nolan Darilek 1f22843086 Refactor Linux, Windows, and Wasm platforms to use FnMut for callbacks, and bump version. 2020-09-25 11:08:19 -05:00
Nolan Darilek c5524113ff Document the fact that we only need an NSRunLoop in the example because there isn't one already. 2020-09-23 10:33:30 -05:00
Nolan Darilek 61522610cd Implement utterance begin/end callback framework, and set up for Speech-Dispatcher. 2020-09-23 10:12:51 -05:00
Nolan Darilek 47bfe768e6 Get delegates working so speech interruption/queuing should now be possible.
* Fix broken delegate method signature.
* Add `NSRunLoop` into `hello_world` example so delegates are called. Presumably, MacOS apps already run one of these, but the example didn't.
2020-08-12 09:49:51 -05:00
Nolan Darilek 7b4fb8dae4 Clean up speech synthesis properties, and implement everything for WinRT.
I'd previously attempted to normalize everything to `u8`, but this had some drawbacks:

 * It failed to account for some synthesis drivers defining normal as mid-range, while most define it very low.
 * It didn't track the normal value for a given synthesizer.
 * There was no clean way to map a curve between the minimum, normal, and maximum rates.

Here we track the minimum, normal, and maximum values of rate, pitch, and volume. Sanity checks are done on set.

Also, as a further proof-of-concept, all properties are now implemented for the WinRT driver.
2020-05-18 18:12:59 -05:00
Nolan Darilek 3198a537f0 Initial WinRT backend.
* Add WinRT backend
 * Refactor to use thiserror and unify error-handling
 * If a screen reader is detected. use Tolk. Otherwise, use the WinRT backend.
2020-05-18 15:14:09 -05:00
Nolan Darilek 1c1f38b55d Use new Tolk library and update backend. 2019-09-10 10:41:28 -05:00
Nolan Darilek e388934e5e Support dynamic feature selection/use in example. 2019-03-25 16:34:30 +00:00
Nolan Darilek 4fadad9d36 Add Web backend and refactor API. 2018-12-30 17:13:48 +00:00
Nolan Darilek e24ed9a3a3 Add support for volume and pitch. 2018-12-15 15:56:13 +00:00
Nolan Darilek bac4b7555f Initial commit. 2018-12-14 19:35:49 +00:00