Media Overview: Image, Video, Music, Speech, and Understanding Capabilities
This page summarizes OpenClaw's media tools for generating images, videos, and music, processing incoming media, and using text-to-speech. It is essential for developers configuring media providers and understanding tool-based media features.
Read this when
- Looking for an overview of OpenClaw's media capabilities
- Deciding which media provider to configure
- Understanding how async media generation works
OpenClaw can generate images, videos, and music, process incoming media (images, audio, video), and respond audibly using text-to-speech. All media features are tool based: the agent decides when to invoke them depending on the conversation, and each tool is only available when at least one supporting provider is configured.
Live speech uses the Talk session contract rather than the one-shot media tool path. Talk offers three modes: provider-native realtime, local or streaming stt-tts, and transcription for observe-only speech capture. These modes share provider catalogs, event envelopes, and cancellation semantics with telephony, meetings, browser realtime, and native push-to-talk clients.
Capabilities
-
Image generation, Create and edit images from text prompts or reference images using
image_generate. Runs asynchronously in chat sessions, processing in the background and posting the result when ready. -
Video generation, Text-to-video, image-to-video, and video-to-video using
video_generate. Asynchronous, runs in the background and posts the result when ready. -
Music generation, Generate music or audio tracks via
music_generate. Asynchronous in chat sessions on the shared media-generation task lifecycle. -
Text-to-speech, Convert outbound replies to spoken audio using the
ttstool plusttsconfiguration. Synchronous. -
Media understanding, Summarize inbound images, audio, and video with vision-capable model providers and dedicated media-understanding plugins.
-
Speech-to-text, Transcribe inbound voice messages through batch STT or Voice Call streaming STT providers.
Provider capability matrix
Note
This table covers the dedicated media-generation, TTS, and STT plugins. Many chat-model providers (Anthropic, Google, OpenAI, and others) also understand inbound media through their reply model; see the full provider list in Media understanding.
| Provider | Image | Video | Music | TTS | STT | Realtime voice | Media understanding |
|---|---|---|---|---|---|---|---|
| Alibaba | ✓ | ||||||
| Azure Speech | ✓ | ||||||
| BytePlus | ✓ | ||||||
| ComfyUI | ✓ | ✓ | ✓ | ||||
| Deepgram | ✓ | ||||||
| DeepInfra | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| ElevenLabs | ✓ | ✓ | |||||
| fal | ✓ | ✓ | ✓ | ||||
| ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| Gradium | ✓ | ||||||
| Inworld | ✓ | ||||||
| LiteLLM | ✓ | ||||||
| Local CLI | ✓ | ||||||
| Microsoft | ✓ | ||||||
| Microsoft Foundry | ✓ | ||||||
| MiniMax | ✓ | ✓ | ✓ | ✓ | |||
| Mistral | ✓ | ||||||
| OpenAI | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| OpenRouter | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| PixVerse | ✓ | ||||||
| Qwen | ✓ | ✓ | |||||
| Runway | ✓ | ||||||
| SenseAudio | ✓ | ||||||
| Together | ✓ | ||||||
| Volcengine | ✓ | ||||||
| Vydra | ✓ | ✓ | ✓ | ||||
| xAI | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| Xiaomi MiMo | ✓ |
Note
Realtime voice here means provider-native bidirectional realtime (Talk
realtimemode, e.g. Gemini Live or the OpenAI Realtime API), only Google and OpenAI register it today. Deepgram, ElevenLabs, Mistral, OpenAI, and xAI separately register Voice Call streaming STT (one-way audio-to-text); see Speech-to-text and Voice Call below. xAI Realtime voice is an upstream capability but is not registered in OpenClaw until the shared realtime-voice contract can represent it.
Async vs synchronous
| Capability | Mode | Why |
|---|---|---|
| Image | Asynchronous | Provider processing can outlive a chat turn; generated attachments use the shared completion path. |
| Text-to-speech | Synchronous | Provider responses return in seconds; attached to the reply audio. |
| Video | Asynchronous | Provider processing takes 30 s to several minutes; slow queues can run up to the configured timeout. |
| Music | Asynchronous | Same provider-processing characteristic as video. |
For async tools, OpenClaw sends the request to the provider, returns a task ID immediately, and monitors the job in the task ledger. The agent continues replying to other messages while the job runs. When the provider finishes, OpenClaw wakes the agent with the generated media paths so it can inform the user through the session's normal visible-reply mode: automatic final reply delivery when configured, or message(action="send") when the session requires the message tool. If the requester session is inactive or its active wake fails, and some generated media is still missing from the completion reply, OpenClaw sends an idempotent direct fallback with only the missing media. Media already delivered by the completion reply is not posted again.
Speech-to-text and Voice Call
Deepgram, DeepInfra, ElevenLabs, Google, Groq, Mistral, OpenAI, OpenRouter, SenseAudio, and xAI can all transcribe inbound audio through the batch tools.media.audio path when configured. Channel plugins that preflight a voice note for mention gating or command parsing mark the transcribed attachment on the inbound context, so the shared media-understanding pass reuses that transcript instead of making a second STT call for the same audio.
Deepgram, ElevenLabs, Mistral, OpenAI, and xAI also register Voice Call streaming STT providers, so live phone audio can be forwarded to the selected vendor without waiting for a completed recording.
For live user conversations, prefer Talk mode. Batch audio attachments stay on the media path; browser realtime, native push-to-talk, telephony, and meeting audio should use Talk events and the session-scoped catalogs returned by the Gateway.
Provider mappings (how vendors split across surfaces)
Image, video, music, batch TTS, batch STT, backend realtime voice, and media-understanding surfaces.
OpenAI
Image, video, batch TTS, batch STT, Voice Call streaming STT, backend realtime voice, and memory-embedding surfaces.
DeepInfra
Chat/model routing, image generation/editing, text-to-video, batch TTS, batch STT, image media understanding, and memory-embedding surfaces. DeepInfra also exposes reranking, classification, object-detection, and other native model types; OpenClaw has no provider contract for those categories yet, so this plugin does not register them.
xAI
Image, video, search, code-execution, batch TTS, batch STT, and Voice Call streaming STT. xAI Realtime voice is an upstream capability but is not registered in OpenClaw until the shared realtime-voice contract can represent it.