Problem/Motivation
AI Media makes images, SVGs and, experimentally, videos. Sites also want spoken clips: an intro, a pronunciation, a short announcement. The AI module has a text to speech operation with real providers (OpenAI, Gemini, ElevenLabs), and core ships an Audio media type.
Proposed resolution
- An Audio generator: the text is read aloud by the text to speech provider and saved into a media type with the Audio file source. Off by default, like Video; turned on in the generators table.
- The text field is "Text to speak", with its own help; a generator may now name its field.
- Options: the model, the voice the model lists (the site sets the default and may show the choice), and the format: mp3, wav or aac.
- A sound or video result shows a player where an image shows its preview, and its link reads "Open in a new tab".
- Only an image is asked for alt and title; other media types ask AI for the name alone, one call less per generation.
- Kernel tests, and an e2e scenario on Add media with the Echo provider, which speaks too.
Remaining tasks
- ✅ File an issue
- ✅ Addition/Change/Update/Fix
- ✅ Testing to ensure no regression
- ✅ Automated unit/functional testing coverage
- ✅ Developer Documentation support
- ❌ User Guide Documentation support
- ➖ UX/UI designer responsibilities
- ➖ Accessibility and Readability
- ❌ Reviewed by a human
- ❌ Code review by maintainers
- ❌ Full testing and approval
- ❌ Credit contributors
- ❌ Review with the product owner
- ✅ Update Release Notes
- ✅ Release
User interface changes
Add media > Audio, Generate with AI, after a generation in Gin: the AI name, the text, the player and the facts line.

The Options with Format and Voice shown:

API changes
- The
AiMediaGenerator attribute takes optional field_title and field_help.
AiMediaMetadata::values() takes the targets to fill; the default is all of them.
Data model changes
ai_media.settings gains generators.audio and editor_options.audio, with a voice option.
Release notes snippet
- Added the Audio generator: speech read from the text with the text to speech provider, in a voice the model lists.
AI-Generated: Yes
Comments
Comment #4
rajab natshah✅ Released ai_media-1.0.0-rc1