Issues and inaccuracies with Cantonese TTS handling characters with multiple tones?

I am wondering how Pleco incorporates Google TTS with the dictionaries. I notice some inaccuracies for Cantonese.

In the example below for 咪, the Google TTS pronounces both mai6 and mai1 as mai6.

In the next example for 聽, both the popup at the bottom and the sentence itself marks the pronounciation as teng1, but when I play the sentence, it plays as ting3.

Does the TTS read sentences from dictionaries based on the jyutping tones? Or does the Google TTS try to parse and interpret the sentence itself? Is there a way to improve this or are there any alternatives?


Staff member
The Android system TTS interface does not currently provide a way for us to override its syllables / tones - all we can do is hand it some characters and it decides on the pronunciation itself.

With our paid TTS add-ons we do have that ability, but we don't currently take advantage of it in example sentences, only in headwords. So it would pronounce mai1 as mai1 but would still use whatever it felt like in the example sentence. (example sentence TTS pronunciation override support should be coming in our next major update, though - we basically get it for free because example sentences are now their own standalone entries embedded in definitions and so automatically get all of the same capabilities that regular dictionary entries do)