Title: Describewright – AI Audio Description for Accessible Video
Author: karelialabs
Published: <strong>November 13, 2026</strong>
Last modified: November 13, 2026

---

Search plugins

![](https://ps.w.org/describewright/assets/banner-772x250.png?rev=3801086)

![](https://ps.w.org/describewright/assets/icon.svg?rev=3801086)

# Describewright – AI Audio Description for Accessible Video

 By [karelialabs](https://profiles.wordpress.org/karelialabs/)

[Download](https://downloads.wordpress.org/plugin/describewright.1.0.13.zip)

 * [Details](https://wordpress.org/plugins/describewright/#description)
 * [Reviews](https://wordpress.org/plugins/describewright/#reviews)
 *  [Installation](https://wordpress.org/plugins/describewright/#installation)
 * [Development](https://wordpress.org/plugins/describewright/#developers)

 [Support](https://wordpress.org/support/plugin/describewright/)

## 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:

 1. Open **Media  Audio description** and click **Describe** next to a video.
 2. Describewright finds the pauses in the speech, spots the scene changes and picks
    still frames.
 3. An AI model that can see images writes one description per pause, sized to fit 
    it, including the on-screen text.
 4. You check each description next to the playing video, change what you like, and
    save.
 5. 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](https://wordpress.org/plugins/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

[⌊The editor: each description with the frame it describes, its times and its word
budget, next to the playing video.⌉⌊The editor: each description with the frame 
it describes, its times and its word budget, next to the playing video.⌉[

The editor: each description with the frame it describes, its times and its word
budget, next to the playing video.

[⌊Media → Audio description: every video with its description languages.⌉⌊Media 
→ Audio description: every video with its description languages.⌉[

Media  Audio description: every video with its description languages.

[⌊The Audio description button under a video, and the described transcript.⌉⌊The
Audio description button under a video, and the described transcript.⌉[

The Audio description button under a video, and the described transcript.

[⌊Settings: the style of the descriptions and how the player reads them.⌉⌊Settings:
the style of the descriptions and how the player reads them.⌉[

Settings: the style of the descriptions and how the player reads them.

## 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

 1. Install and activate Describewright.
 2. 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.
 3. Go to **Media  Audio description  Settings** and click **Test the connection**.
 4. 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](https://wordpress.org/plugins/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 `.vtt` file 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.

Contributors

 *   [ karelialabs ](https://profiles.wordpress.org/karelialabs/)

[Translate “Describewright – AI Audio Description for Accessible Video” into your language.](https://translate.wordpress.org/projects/wp-plugins/describewright)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/describewright/), check
out the [SVN repository](https://plugins.svn.wordpress.org/describewright/), or 
subscribe to the [development log](https://plugins.trac.wordpress.org/log/describewright/)
by [RSS](https://plugins.trac.wordpress.org/log/describewright/?limit=100&mode=stop_on_copy&format=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.

## Meta

 *  Version **1.0.13**
 *  Last updated **1 day ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 7.0 or higher **
 *  Tested up to **7.1.4**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [accessibility](https://wordpress.org/plugins/tags/accessibility/)[ada](https://wordpress.org/plugins/tags/ada/)
   [video](https://wordpress.org/plugins/tags/video/)[wcag](https://wordpress.org/plugins/tags/wcag/)
 *  [Advanced View](https://wordpress.org/plugins/describewright/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/describewright/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/describewright/reviews/)

## Contributors

 *   [ karelialabs ](https://profiles.wordpress.org/karelialabs/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/describewright/)