A simulated call, and what a screen reader is told.
Nothing here is real audio or video. The buttons fire the events a call app would receive from its media layer, and call-a11y decides what the live regions say. Turn on a screen reader to hear it, or read the history on the right, which lists exactly what the library sent. It shows what was sent, not what a particular screen reader then does with it: nothing here has been run with JAWS, NVDA or VoiceOver yet, and the page about the project explains how to help with that.
The call
You and 2 others:
- Priya
- Sam
Each button has a fixed name; its state is aria-pressed, so a screen reader says “Mute, toggle button, pressed”.
Keyboard shortcuts
Every shortcut needs a modifier, because screen readers use bare letters to navigate (WCAG 2.1.4), and they can be switched off. A change made by shortcut is announced, since focus is not on the button to report it.
Simulate what happens around you
Live captions
No captions yet.
The log can be read, scrolled and searched, and it never interrupts. Unsettled words are never spoken. Turn on “Speak captions aloud” for a reader who cannot hear the call; only settled captions are spoken, joined per speaker.
What was sent to the live regions
Events fired: 0 · Messages sent: 0
Nothing yet. Press a button on the left.
This panel is not a live region, so nothing here is read twice. Polite messages wait for a pause in speech; assertive ones (recording, lost connection) can interrupt.