Skip to content
DemoVexa

AI and voice integrations

Connect Claude, Codex, GitHub Copilot, ElevenLabs, Sarvam and Deepgram, choose a primary AI, and continue a video with another worker.

#Connect your AI accounts

Use AI providers in onboarding, App settings → AI providers, or Workspace settings → Connections. You can connect Claude, OpenAI Codex and GitHub Copilot at the same time. Each has its own connection test and model choice. Connecting one does not sign out the others.

ConnectionHow it works
ClaudeClaude Code login on this computer, or your Anthropic API key
OpenAI CodexCodex CLI through the official Codex SDK, using your Codex login or OpenAI API key
GitHub CopilotCopilot CLI through the official Copilot SDK, using your local GitHub login or a supported Copilot token

The settings show installation and sign-in commands. Finish sign-in in Terminal, then test the connection. Account access, models, limits and billing depend on your provider plan. A workspace key takes precedence over the app key. Local CLI logins belong to this computer and are not exported with a project.

#Pick a primary and assistants

The primary AI decides which connected assistant should do a task and reviews assistant results. Select optional assistants in the same settings panel. With no assistants selected, the primary does the work directly. Assistant tasks do not delegate further, and review repairs are bounded.

Primary selection, models, connections and assistant assignments are locked while relevant work is active, including batch processing, queued animation builds, retry waits and rendering. App-wide changes wait for all workspaces; workspace changes wait for that workspace. Stop or finish the work before changing them. The primary selection stays fixed. Without automatic fallback, a coordination or review outage pauses the task. With configured fallbacks, structured tasks can continue on a backup during a primary outage: the output schema is checked, and task history records that primary review was unavailable rather than marking the result primary-approved.

Batch options and project AI settings are saved with their work. A queued batch or a video waiting for approval keeps its saved configuration, even if defaults change later.

#Account plans and balances

AI provider status shows the account plan when the local login exposes it: Claude, Codex and GitHub Copilot use their provider’s status metadata. If plan metadata is unavailable, the app keeps the sign-in status. API-key connections show saved credentials rather than inferring a subscription tier.

Voice providers show an Account row in App and Workspace settings. ElevenLabs returns its tier and remaining character allowance. Deepgram can return project balances when the key has billing permission; a balance is not presented as a subscription tier. Sarvam links to its dashboard for the organisation’s plan and credit balance because no public billing endpoint was found in the reviewed documentation. Missing billing information does not block speech access. The sidebar still shows only App or Workspace beside the voice provider.

If language preparation fails while an older version remains ready, Retry queues the failed step again. It keeps the error until an attempt succeeds; a failed language is not treated as ready to render.

#Continue an animation with another worker

On Animate, pick an Animation worker, then use Continue or Stop and continue. This changes the worker for that animation, keeping the primary unchanged. The replacement is checked before the active worker is stopped.

The new worker receives the saved brief, script, approved scene plan, voice metadata, existing video files, project chat and run history. A provider's private internal conversation is not copied. Saved project files are the shared source of context, so review the preview after a handoff.

Only one writer can change a video's files at a time. Different videos can have separate workers, subject to machine capacity and provider limits. Multiple connections do not make the Remotion renderer itself faster; rendering still uses your computer. Automatic fallback also covers briefs, scripts, translations and cover copy. Service failures switch to an available configured backup; rejected results carry the review corrections and previous draft into the next attempt. Each backup gets at most two structured attempts, and disconnected or failed providers are skipped. When no explicit fallback list is saved, enabled assistants act as backups; an explicitly empty list disables this. Connection tests do not fall back, so each test still verifies the selected service. Stop cancels rather than starting a fallback. Animation fallback keeps its existing worker retry limits.

#Choose a voice provider

Use App settings → Voice providers or Workspace settings → Voice providers for workspace overrides. ElevenLabs, Sarvam and Deepgram appear in the voice picker. Choose a voice per video, or use the workspace’s Language & narration step before Status to set language voices and narration defaults.

  • ElevenLabs: existing multilingual narration, account voices, voice library and timestamped speech.
  • Deepgram: 102 published Aura-2 and Aura voice models across English, Spanish, German, French, Dutch, Italian and Japanese. Paste your own key from Deepgram’s console, save it and test the connection. Choose Deepgram in Primary Voice Provider, then choose a default voice. Each voice speaks its listed language. Scene durations use the actual audio; word highlighting is estimated. Voice catalogue.
  • Sarvam: all 222 published Bulbul v4 Flash personas, all 37 v3 speakers and all seven legacy v2 speakers. Public voices cover Hindi, Bengali, Gujarati, Kannada, Malayalam, Marathi, Odia, Punjabi, Tamil, Telugu and Indian English. Saved clones from your Sarvam account appear when its beta cloning API is available; they also support Assamese, for all 12 languages in Sarvam’s cloning guide. Voice pickers show names, with language and model details separately; selecting a voice automatically chooses its compatible model.
  • Own recording and No voice remain available.

Sarvam uses the actual generated audio duration for each line. Its REST speech response does not include word timestamps, so word highlighting is estimated. Listen and check captions before exporting. v4 personas are limited to their published languages; v3 covers Malayalam and Odia. Saved clones support cross-language synthesis across all 12 cloning languages. Choose ElevenLabs, a recording or no voice for other languages. The Sarvam connection test generates a short speech sample and uses your provider allowance.

Changing a script, language, voice, provider or speech settings can invalidate narration. Generate it again, then approve the updated scene plan and rebuild an animation whose timing changed. Export rejects stale narration or an animation made for a different voiceover.

Keys stay in your operating system's secret store, with the app's restricted local-file fallback when no store is available. Usage records identify each AI and voice provider; unknown costs are not presented as free.

#Catalogue sources and updates

The public voice catalogue is bundled from Sarvam’s official voices guide. Developers can refresh that snapshot with npm --prefix studio run refresh:sarvam; it is not inferred from a few example speakers. Account clones are loaded through Sarvam’s paginated API and refreshed by Refresh voices. Clones are scoped to the API key, so another workspace’s account voices do not leak into the picker. Create or manage clones in Sarvam’s dashboard, then refresh them in DemoVexa.

Cloning language list · Standard speech API · Saved-voice speech API

Voice setup follows Connect Providers → Primary Voice Provider → Status in onboarding and App settings. Workspace keys override the app connection. Provider changes are blocked while a batch, build or render is active. Existing videos retain their selected voice; switching voice requires regenerating narration and animation timing.

Last updated · View as Markdown

Something unclear or missing on this page? Tell us