Introduction
Vaux turns speech, text or an AI agent's replies into natural speech in any voice, live. Use it to change a user's voice in real time, speak typed lines instantly, or run a briefed voice agent, all over one API.
| API base URL | https://api.vaux.ng |
| Realtime stream | wss://vaux.ng/v1/stream |
| SDK | npm install @vaux/sdk |
Quickstart
1. Activate the API and create a key in Dashboard → Developers. Keep the key on your server.
2. Add a token endpoint to your backend. It mints a short-lived client token for each session:
// app/api/vaux-token/route.ts (Next.js), or any server route
import { Vaux } from '@vaux/sdk/server';
const vaux = new Vaux({ apiKey: process.env.VAUX_API_KEY });
export async function POST() {
const { token, streamUrl } = await vaux.tokens.create({ maxMinutes: 15 });
return Response.json({ token, streamUrl });
}
3. Connect from the browser:
import { createVauxClient } from '@vaux/sdk';
const vaux = createVauxClient({
apiKeyProvider: () => fetch('/api/vaux-token', { method: 'POST' }).then((r) => r.json()),
});
const mic = await navigator.mediaDevices.getUserMedia({ audio: true });
const session = await vaux.realtime.connect(mic, {
voice: 'leo',
emotion: 'excited',
onAudioStream: (stream) => {
audioElement.srcObject = stream; // or add to a WebRTC peer connection
},
});
Speak into your microphone. You'll hear your words in Leo's voice.
What you can build
- Live voice changing for calls, streams, games and social apps
- Full identity swaps, pairing Vaux's voice with a face or character-swap video model (guide)
- Type-to-speak for accessibility and noisy environments
- Voice agents that answer in a chosen voice from a brief (guide)
- Batch narration with text-to-speech
Next steps
- Authentication: keys, client tokens and limits
- Realtime: the session lifecycle and protocol
- SDK reference