Description
Audio description for every WordPress video, written by AI and checked by you.
Blind and low-vision viewers hear what is said in a video, but not what is shown: the slide with the new opening hours, the name under the speaker, the map, the chart, the person who walks in. Audio description fills that gap with short spoken descriptions in the pauses of the speech. WCAG 2.1 requires it for prerecorded video at Level AA (success criterion 1.2.5).
Describewright writes those descriptions for you:
- Open Media Audio description and click Describe next to a video.
- Describewright finds the pauses in the speech, spots the scene changes and picks still frames.
- An AI model that can see images writes one description per pause, sized to fit it, including the on-screen text.
- You check each description next to the playing video, change what you like, and save.
- Your videos get an Audio description button. Viewers turn it on and hear each description at the right moment, and screen-reader users get it announced.
Why now
Audio description is part of WCAG 2.1 Level AA, the standard behind:
- ADA Title II (US): state and local governments, public schools, colleges and universities must meet WCAG 2.1 AA on their websites from April 26, 2027 (50,000 residents or more) and April 26, 2028 (smaller entities and special districts).
- The European Accessibility Act, which has applied across the EU since June 28, 2025, and the EU Web Accessibility Directive for public-sector websites (both through EN 301 549).
- Section 508 for US federal agencies (WCAG 2.0 AA, which includes the same success criterion).
Captions alone do not meet 1.2.5. Professional audio description is usually priced per minute of video. Describewright uses the AI provider you set up in WordPress, so you pay that provider directly, with no per-minute fee from us.
Features
- Finds the pauses in the speech by listening to the sound track, or uses your captions when you have them from Captionwright.
- Sees the video: detects scene changes and sends still frames from the right moments to the AI.
- Fits the pause: each description gets a word budget from the length of its pause, and the editor warns when one is too long.
- Reads on-screen text word for word: titles, names, slides, signs and numbers.
- Notes for the AI: tell it the names and context once (“Mayor Ana Ruiz speaks at the podium”) and it uses them.
- Editor with frames: every description shows the frame it describes, with editable start and end times and a live read-aloud preview.
- Audio description button in the core Video block and the
[video]shortcode, with a language picker when you have several languages, keyboard and screen-reader friendly. - Description text under the video: while a description is read, it also appears as text below the player for viewers who follow along by sight. You can turn this off.
- Described transcript block and
[describewright_transcript id="123"]shortcode: the speech and the descriptions as text, in time order (WCAG 1.2.3 and 1.2.8). Click a time to jump the video there. - Standard WebVTT description files (
kind="descriptions") in your uploads folder. They are yours to keep. - Built on WordPress AI: Describewright uses the AI provider you set up once under Settings Connectors (WordPress 7.0+). It has no API key or AI settings of its own.
Who it is for
Cities, counties and public agencies that publish council meetings and announcements; schools, colleges and universities with lecture and campus videos; course creators and membership sites; museums, libraries and nonprofits; and agencies that look after accessibility for their clients.
Describewright Pro
- The whole library in one queue: describe every video without audio description, with a list of videos to retry if one fails.
- Extended audio description: the player waits while a long description is read, so nothing important has to be left out.
- Translate descriptions into 30 languages with the same timing; viewers pick the language next to the button.
External services
Describewright does not connect to any AI service itself. It asks WordPress’ AI client (WordPress 7.0+), which sends the request to the AI provider you set up under Settings Connectors, with the API key you entered there. This happens only when you start one of the actions below, and nothing is sent to Karelia Labs.
- Create audio description sends still frames from the video (JPEG, up to 512 pixels wide, each labelled with its time), the video’s title, your notes for that video, the pauses (start and end times and a word limit), the language and style you chose, up to four descriptions written earlier in the same video (so the AI does not repeat them) and, if Captionwright has captions for the video, the words spoken in and around that part of the video, with their times.
- Test the connection sends one built-in 32×32 red test image and a fixed question. Nothing from your site.
The provider you choose in Connectors handles the data under its own terms and privacy policy.
Screenshots




Blocks
This plugin provides 1 block.
- Described transcript Shows a video's speech and its audio descriptions as text, in time order. Click a time to jump the player there.
Installation
- Install and activate Describewright.
- Set up an AI provider under Settings Connectors (WordPress AI), for example Anthropic, Google or OpenAI, and add its API key there. Its models must be able to look at images.
- Go to Media Audio description Settings and click Test the connection.
- Click Describe next to a video, then Create audio description. Check the descriptions and save.
FAQ
-
Is AI-written audio description good enough for WCAG?
-
It gives you a complete first draft in minutes, but no automatic description is perfect. WCAG asks for descriptions that convey the important visual information, so read every description next to the video before you save. The editor is built for that check.
-
What does it cost?
-
The plugin is free. You pay your AI provider for what you use. A video is sent as still frames, not as video, so a low-cost vision model is enough. Our estimate from the published prices in October 2026: a few cents for a 10-minute video with a low-cost vision model. Your provider’s bill is what counts.
-
Which AI provider and model does it use?
-
The one you set up under Settings Connectors. Describewright sends its frames as images, and WordPress picks a model of that provider that can look at images. Test the connection checks that the provider answers and really sees the test image.
-
Do I need WordPress 7.0?
-
Yes. Describewright uses WordPress AI, the AI client that comes with WordPress 7.0 and later.
-
It says the sound of the video could not be analysed.
-
Describewright listens to the sound track to find the pauses in the speech. If the browser cannot decode that sound, it stops instead of guessing, because a guess could put descriptions on top of speech. Add captions with Captionwright (then the captions give the pauses), try another browser, or, for a video without speech, click “Describe without speech timing”. A video with no sound track at all is described without asking.
-
My video has no pauses.
-
Lower “Shortest pause” in the settings. If the speech never stops, there is no gap for a spoken description to fit in. Describewright Pro can pause the video while a long description is read.
-
Do visitors need a special browser?
-
No. The button reads the descriptions with the browser’s built-in voice and also announces them to screen readers. You can choose to only announce them to screen readers in the settings.
-
Does it work with captions?
-
Yes. Describewright works on its own, and with Captionwright it uses your captions to find the pauses more precisely and to tell the AI what is said.
-
Where are the description files stored?
-
In
wp-content/uploads/describewright/, one.vttfile per video and language. Deleting the plugin removes them, its settings and its records. Your videos are never changed.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Describewright – AI Audio Description for Accessible Video” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Describewright – AI Audio Description for Accessible Video” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.13
- Describewright now works only through WordPress AI: the provider you set up under Settings Connectors. The plugin’s own AI service settings and API key field are gone, so a provider and its key are set up once for all of WordPress. Requires WordPress 7.0 or later.
1.0.12 and earlier
- Versions 1.0.0 to 1.0.12 were released outside WordPress.org. Their features (pause and scene detection, the editor with frames and word budgets, the Audio description button, the described transcript block and WebVTT files) and their fixes are all in 1.0.13.
