TTS implementation

App Name: Xumo Play

In our Xumo Play application on Fire TV, we are implementing TTS for accessibility and need guidance on the correct approach.

What We Tested

We attempted multiple TTS implementations but none are working:

✗ window.speechSynthesis - Not available in Kepler
✗ window.vega.accessibility - Not found  
✗ AccessibilityInfo.isScreenReaderEnabled() - Hangs/returns undefined
✗ AccessibilityInfo.announceForAccessibility() - No audio output

Our Questions

  1. What is the recommended TTS approach for Kepler apps?

  2. Is AccessibilityInfo working in the current Kepler version?

  3. Can we use JavascriptInterface bridge to native Android TTS?

  4. If any documentation or code examples are available, please share the details.

Hey @manoj_d_b

Text To Speech in Vega is called VoiceView and it’s the recommended approach for Vega Apps.
You can follow the documentation here and here to know more about VoiceView in Vega.

The AccessibilityInfo API provides functionalty that allows you to query the current state of the screen reader and to register to be notified when the state of the screen reader changes. The Vega SDK supports many of the React Native version 0.72 components and APIs, AccessibilityInfo is supported as well.

About using JavascriptInterface for TTS in Vega, I will check internally and update you ASAP.

In the meantime, please try using VoiceView and AccessibilityInfo API and let me know if they work for your usecase.

Warm regards,
Ivy