Metadata
- Source
- FLUID-6736
- Type
- Bug
- Priority
- Critical
- Status
- Closed
- Resolution
- Cannot Reproduce
- Assignee
- N/A
- Reporter
- Justin Obara
- Created
2022-05-16T08:13:57.547-0400 - Updated
2024-07-22T11:00:07.822-0400 - Versions
-
- 4.0
- Fixed Versions
- N/A
- Component
-
- Self Voicing
Description
SelfVoicing ( Text-to-Speech ) is no longer working in Safari 15.4. It seems like it may be related to this version of Safari returning an empty array when speechSynthesis.getVoices() is called.
See:
Environments
Safari 15.4 (macOS 12.3.1)
Comments
-
Justin Obara commented
2022-05-16T08:17:22.353-0400 I submitted feedback to Apple, but it's unlikely I'll hear back from them.
-
Justin Obara commented
2022-07-19T09:58:51.803-0400 @@Ned Zimmerman pointed out that the Speech Synthesis demo from MDN is still working in Safari. It's probably useful as a comparison to see if there is something actually wrong with the Orator's implementation or a work around that could be employed.
-
Ned Zimmerman commented
2022-07-20T14:22:36.739-0400 Looks like the linked issue is fixed in Safari 15.5.
Also, I found this which may be of interest: https://jankapunkt.github.io/easy-speech/
It's basically a zero-dependency wrapper for the SpeechSynthesis API which ensures that it's properly initialized across various browsers.
-
Cindy Li commented
2022-07-28T14:09:48.890-0400 cc @@Ned Zimmerman@@Justin Obara@@Antranig Basman
Self voicing stops working in Safari due to a webkit bug.
A pull request is issued to work around the Safari bug by always assigning a speech synthesis voice at speaking instead of leaving the voice option to `null`. This change breaks some tests because the "fluid.textToSpeech.utterance" mock was not complete since it did nothing to override the construction of the native “utterance” member. We made a mock Utterance and found that the tests hang through expecting the “onStop” event to be fired at the expected time. To save the time spent on this, we made the mock getVoices() return actual speech synthesis voice list instead of a list of objects. This fixed broken tests.
Moreover, Ned will not use orator from infusion, and SelfVoicing is not configured as part of the out of the box configuration of UIO on any of our supported sites, so we can punt on this issue until we come to make the UIO 2 release - in the meantime Safari may have resolved their bug.
The PR is mothballed.
-
Justin Obara commented
2024-07-22T10:54:41.054-0400 I re-tested this with Safari 17.5 and am not able to reproduce the issue.