Voice Changer Pro

Replace each speaker’s voice independently in a multi-speaker recording — or in a whole talking video — preserving the original emotion, cadence, and timing for every speaker.

Overview

The Voice Changer Pro node uses ElevenLabs Speech-to-Speech to re-voice multi-speaker media. It detects each speaker in the recording by first-appearance order, then applies your ordered list of target voices — voice 1 recasts speaker 1, voice 2 recasts speaker 2, and so on. Speakers without a mapped voice pass through unchanged.

Like Voice Changer, it operates in two modes, chosen automatically by what you wire in:

In both cases the target voices’ identities are applied while the original pacing, intonation, and emotional delivery are preserved.

How separation works. Voice and music are always separated first — before recasting, the source is split into an isolated vocal stem and a music/SFX stem. Preserve Background does not control whether the split happens — only whether the music/instrumental stem is mixed back in under the new voices afterward.

Cloud edition only. Voice Changer Pro requires a Cloud subscription.

Configuration

Node-level settings

Field Type Default Description
Ordered Voices Array<string \| VoiceChangerProVoice \| null> (1–8) [] Ordered list of target voices. Voice N recasts the N-th detected speaker (first-appearance order). Speakers without a mapped voice pass through unchanged. Each entry is either a bare voice id (premade name or ElevenLabs UUID), an object with per-voice settings (see below), or null — a keep-slot that keeps that speaker’s original voice while later speakers are still recast. At least one entry must be a real voice. Selectable via VoiceBrowser (premade, custom, or library); add a keep-slot with the Keep original button, or convert any row in place.
Model "eleven_english_sts_v2" \| "eleven_multilingual_sts_v2" "eleven_multilingual_sts_v2" ElevenLabs speech-to-speech model. Multilingual v2 covers 29 languages and is ElevenLabs’ recommended model — including for English source audio, where it often outperforms the English-only model. English v2 remains selectable.
Preserve Background boolean true On mixes the separated music / SFX stem back in under the new voices. Off drops it for clean, voice-only results. (The voice is always split out first regardless of this setting.)
Separation Quality "fast" \| "best" "fast" Quality of the voice/music separation. Fast is quicker and preserves more of the voice. Best gives finer voice/music separation.
Music Volume "match" \| "normalize" \| "manual" (+ musicVolume %) "match" Level of the preserved background music / SFX in the final mix — only applies when Preserve Background is on. match (default) keeps the original level; normalize applies loudness normalization; manual sets the level to musicVolume% (0–200, default 100).
Remove Background Noise boolean false On denoises the result for a cleaner voice-only output. Off leaves the recast as-is.

Per-voice settings (VoiceChangerProVoice)

Each entry in Ordered Voices may be an object that pins per-speaker ElevenLabs speech-to-speech settings and loudness behavior. All fields except voiceId are optional — omit them to use the model defaults. (A null keep-slot has no per-voice settings — there is nothing to configure for a kept voice.)

Field Type Range Default Description
voiceId string (required) Target voice — premade name (Rachel, Aria, …) or an ElevenLabs UUID for a custom clone.
stability number 0–1 model default Higher = steadier and more consistent; lower = more expressive and variable.
similarityBoost number 0–1 model default How closely the output hugs the target voice’s timbre.
style number 0–1 0 Style exaggeration. >0 amplifies delivery at the cost of latency / stability.
useSpeakerBoost boolean false Sharpens fidelity to the target speaker.
seed number (int) 0–4294967295 random Deterministic speech-to-speech seed for this speaker. The same source + settings + seed recast this speaker identically across runs. Omit for a random seed each run.
volumeMode "match" \| "normalize" \| "manual" "match" Loudness handling for this recast voice. match matches the original speaker’s loudness; normalize applies loudness normalization; manual uses volume.
volume number 0–200 100 Manual output volume as a percentage. Consulted only when volumeMode is "manual".

Voice FX (voiceFx)

An optional node-level reverb/echo applied to the combined recast voices before the background is mixed back in — so the effect sits on the voices only, never on the music/SFX bed. Omit voiceFx entirely for no effect.

Field Type Range Default Description
preset AudioFxPreset (required) Effect preset. Reverb spaces: room, bathroom, car, hall, concert-hall, church, cave, arena, outdoor. Character: telephone, megaphone, echo, custom.
wetDryMix number 0–100 preset default Reverb wet/dry mix as a percentage — higher = wetter (more reverb). Applies to the reverb presets.
delayMs number 20–2000 preset default Echo delay in milliseconds. Used by the echo / custom presets.
decay number 0–1 preset default Echo decay / feedback — higher = more repeats. Used by the echo / custom presets.

The reverb presets use wetDryMix; the echo and custom presets use delayMs + decay. Because the effect is applied before the background remix, leaving Preserve Background on keeps a dry music bed under reverberant/echoed voices.

Inputs & Outputs

Credit Pricing

Voices mapped Credits
1 speaker 4
2 speakers 8
3 speakers 12
N speakers 4 × N

Credit cost is 4 credits per mapped speaker (per recast pass). Unmapped speakers (those beyond the length of your Ordered Voices list) are passed through without charge.

Keep-slots are free: a null entry reserves and charges nothing — credits count only the recast (non-null) entries.

Note (workflow execution): When running via the workflow orchestrator (server-side), the orchestrator reserves a flat 4 credits at job creation time and the worker commits the actual 4 × mappedCount on completion. For single-speaker workflows there is no under-reserve. For multi-speaker runs the orchestrator may temporarily reserve fewer credits than the worker commits — the final charge is always correct. Single-node runs (clicking Run on the canvas) reserve the correct dynamic amount up front.

Video Mode

Wire any talking video into the video input and the node will:

  1. Extract the audio track from the clip.
  2. Detect each speaker by first-appearance order.
  3. Re-voice each speaker with the corresponding target voice (speech-to-speech).
  4. Remux the new voices onto the original video and return it — plus the new audio track on the audio output handle.

Requires an audio track. Most text-to-video / image-to-video models output silent video. If you feed in a silent clip, the node fails fast. Use a clip with spoken audio, or feed audio directly.

Keeping the background. Leave Preserve Background on (default) to keep any music or sound effects baked into the clip’s audio under the new voices. Turn it off for clean, voice-only results.

Best Practices

Common Use Cases

Tips