Summary
When using a screen reader (tested with JAWS, Voice Over) with the Thorium Web audio reader, audiobook playback is repeatedly interrupted by announcements of the publication wrapper label and sometimes uppdated playback progress or remaining time.
This repeats regularly during playback and makes the audiobook difficult to listen to with a screen reader enabled.
Environment
@edrlab/thorium-web: 1.4.1
- Profile:
audio
- Integration: React/Vite SPA using
StatefulReaderWrapper
What we found
In the audio reader, StatefulPlayer renders the main player wrapper as:
<article aria-label={t("reader.app.publicationWrapper")}>
During playback, AudioNavigator updates the current position on a polling interval. The progress UI then updates continuously:
- the React Aria slider value changes
- aria-valuetext on the range input changes
- elapsed/remaining time text changes
- the surrounding named article remains in the accessibility tree
This appears to cause some screen readers to repeatedly announce the wrapper label and/or changing progress information during normal playback.
Suggested fix
Consider making the audio reader avoid exposing continuously changing playback progress as live accessible content during playback, for example by:
- not applying reader.app.publicationWrapper as an aria-label on the audio player wrapper
- avoiding continuous accessible updates to elapsed/remaining time
- avoiding slider value announcements while the slider is not focused
Summary
When using a screen reader (tested with JAWS, Voice Over) with the Thorium Web audio reader, audiobook playback is repeatedly interrupted by announcements of the publication wrapper label and sometimes uppdated playback progress or remaining time.
This repeats regularly during playback and makes the audiobook difficult to listen to with a screen reader enabled.
Environment
@edrlab/thorium-web: 1.4.1audioStatefulReaderWrapperWhat we found
In the audio reader,
StatefulPlayerrenders the main player wrapper as:During playback, AudioNavigator updates the current position on a polling interval. The progress UI then updates continuously:
This appears to cause some screen readers to repeatedly announce the wrapper label and/or changing progress information during normal playback.
Suggested fix
Consider making the audio reader avoid exposing continuously changing playback progress as live accessible content during playback, for example by: