<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="atom.xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://developers.vocabusta.satryx.ai/blog</id>
    <title>VocaBusta Developers Blog</title>
    <updated>2026-06-26T00:00:00.000Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <link rel="alternate" href="https://developers.vocabusta.satryx.ai/blog"/>
    <subtitle>VocaBusta Developers Blog</subtitle>
    <icon>https://developers.vocabusta.satryx.ai/img/vocabusta-mark.svg</icon>
    <entry>
        <title type="html"><![CDATA[Clone an African voice in 60 seconds]]></title>
        <id>https://developers.vocabusta.satryx.ai/blog/2026-06-clone-an-african-voice-in-60-seconds</id>
        <link href="https://developers.vocabusta.satryx.ai/blog/2026-06-clone-an-african-voice-in-60-seconds"/>
        <updated>2026-06-26T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[A short, practical walkthrough: clone a voice from a 10-second clip with the VocaBusta Voice API, then synthesize new speech — and dub a video in that voice.
]]></summary>
        <content type="html"><![CDATA[<p>VocaBusta's voice cloning is <strong>zero-shot</strong> — no training run, no waiting. Give it
a short, clean reference clip and you get a voice you can synthesize with right
away. Here's the whole loop.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="1-clone-from-a-clip">1. Clone from a clip<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-clone-an-african-voice-in-60-seconds#1-clone-from-a-clip" class="hash-link" aria-label="Direct link to 1. Clone from a clip" title="Direct link to 1. Clone from a clip" translate="no">​</a></h2>
<p>Upload ~10–30 seconds of clear, single-speaker audio:</p>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> os</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> requests</span><br></div><div class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">with</span><span class="token plain"> </span><span class="token builtin">open</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">"my-voice.wav"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"rb"</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token keyword" style="color:#00009f">as</span><span class="token plain"> f</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    res </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> requests</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">post</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        </span><span class="token string" style="color:#e3116c">"https://api.satryx.ai/voice/clone"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        headers</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">{</span><span class="token string" style="color:#e3116c">"Authorization"</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string-interpolation string" style="color:#e3116c">f"Bearer </span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">{</span><span class="token string-interpolation interpolation">os</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">.</span><span class="token string-interpolation interpolation">environ</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">[</span><span class="token string-interpolation interpolation string" style="color:#e3116c">'SATRYX_API_KEY'</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">]</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">}</span><span class="token string-interpolation string" style="color:#e3116c">"</span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        files</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">{</span><span class="token string" style="color:#e3116c">"file"</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> f</span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">        data</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">{</span><span class="token string" style="color:#e3116c">"name"</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"Chidi"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"description"</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"My narration voice"</span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">res</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">raise_for_status</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">voice_id </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> res</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">json</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">[</span><span class="token string" style="color:#e3116c">"voice_id"</span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain">   </span><span class="token comment" style="color:#999988;font-style:italic"># cloned_…</span><br></div></code></pre></div></div>
<p>The response includes an instant <code>preview_url</code> so you can hear the clone
immediately.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="2-speak-with-it">2. Speak with it<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-clone-an-african-voice-in-60-seconds#2-speak-with-it" class="hash-link" aria-label="Direct link to 2. Speak with it" title="Direct link to 2. Speak with it" translate="no">​</a></h2>
<p>Pass the <code>cloned_…</code> id straight to text-to-speech:</p>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">audio </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> requests</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">post</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token string" style="color:#e3116c">"https://api.satryx.ai/voice/tts"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    headers</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">{</span><span class="token string" style="color:#e3116c">"Authorization"</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string-interpolation string" style="color:#e3116c">f"Bearer </span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">{</span><span class="token string-interpolation interpolation">os</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">.</span><span class="token string-interpolation interpolation">environ</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">[</span><span class="token string-interpolation interpolation string" style="color:#e3116c">'SATRYX_API_KEY'</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">]</span><span class="token string-interpolation interpolation punctuation" style="color:#393A34">}</span><span class="token string-interpolation string" style="color:#e3116c">"</span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">    json</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">{</span><span class="token string" style="color:#e3116c">"text"</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"Ndewo, this na my cloned voice."</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"voice_id"</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> voice_id</span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token builtin">open</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">"clone.wav"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"wb"</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">write</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">audio</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">content</span><span class="token punctuation" style="color:#393A34">)</span><br></div></code></pre></div></div>
<p>Dial <code>exaggeration</code> up for livelier delivery, or <code>cfg_weight</code> up to hew closer to
the reference timbre.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="3-dub-a-video-in-that-voice">3. Dub a video in that voice<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-clone-an-african-voice-in-60-seconds#3-dub-a-video-in-that-voice" class="hash-link" aria-label="Direct link to 3. Dub a video in that voice" title="Direct link to 3. Dub a video in that voice" translate="no">​</a></h2>
<p>Cloned voices drop straight into the dubbing pipeline. Map a speaker to your
clone in the <code>voice_map</code> when you render:</p>
<div class="language-python codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-python codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token plain">voice_map </span><span class="token operator" style="color:#393A34">=</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token string" style="color:#e3116c">"SPEAKER_00"</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> voice_id</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"SPEAKER_01"</span><span class="token punctuation" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"preserve"</span><span class="token punctuation" style="color:#393A34">}</span><br></div></code></pre></div></div>
<p><code>"preserve"</code> keeps a speaker's own voice; your <code>cloned_…</code> id swaps in the clone.
See the <a href="https://developers.vocabusta.satryx.ai/docs/dubbing" target="_blank" rel="noopener noreferrer" class="">Dubbing guide</a> for
the full analyze → translate → render flow.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="a-note-on-consent">A note on consent<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-clone-an-african-voice-in-60-seconds#a-note-on-consent" class="hash-link" aria-label="Direct link to A note on consent" title="Direct link to A note on consent" translate="no">​</a></h2>
<p>Only clone voices you own or have explicit permission to clone. Cloning is
powerful; use it responsibly.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="go-deeper">Go deeper<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-clone-an-african-voice-in-60-seconds#go-deeper" class="hash-link" aria-label="Direct link to Go deeper" title="Direct link to Go deeper" translate="no">​</a></h2>
<ul>
<li class=""><a href="https://developers.vocabusta.satryx.ai/docs/voice-cloning" target="_blank" rel="noopener noreferrer" class="">Voice cloning</a></li>
<li class=""><a href="https://developers.vocabusta.satryx.ai/docs/dubbing" target="_blank" rel="noopener noreferrer" class="">Dubbing</a></li>
<li class=""><a href="https://developers.vocabusta.satryx.ai/docs/voices-and-languages" target="_blank" rel="noopener noreferrer" class="">Voices &amp; languages</a></li>
</ul>]]></content>
        <author>
            <name>VocaBusta</name>
            <uri>https://vocabusta.satryx.ai</uri>
        </author>
        <category label="tutorial" term="tutorial"/>
        <category label="voice-cloning" term="voice-cloning"/>
        <category label="tts" term="tts"/>
        <category label="dubbing" term="dubbing"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Introducing the VocaBusta Voice API]]></title>
        <id>https://developers.vocabusta.satryx.ai/blog/2026-06-introducing-the-vocabusta-voice-api</id>
        <link href="https://developers.vocabusta.satryx.ai/blog/2026-06-introducing-the-vocabusta-voice-api"/>
        <updated>2026-06-24T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Lifelike African voices — Nigerian Pidgin, Yoruba, Igbo, Hausa, Swahili and more — now available to every developer through a clean REST API: text-to-speech, transcription, voice cloning and video dubbing.
]]></summary>
        <content type="html"><![CDATA[<p>Today we're opening up the engine behind <a href="https://vocabusta.satryx.ai/" target="_blank" rel="noopener noreferrer" class="">VocaBusta
Studio</a>. The <strong>Voice API</strong> gives any developer
programmatic access to the thing African voice tech has been missing: speech that
actually sounds African — in Nigerian Pidgin, Yoruba, Igbo, Hausa, Swahili, Zulu,
Twi and more.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="why-we-built-it">Why we built it<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-introducing-the-vocabusta-voice-api#why-we-built-it" class="hash-link" aria-label="Direct link to Why we built it" title="Direct link to Why we built it" translate="no">​</a></h2>
<p>Most text-to-speech treats African languages as an afterthought — a flat accent
bolted onto an English model, deaf to tone.</p>
<p>Yoruba and Igbo are tonal: the same letters mean different things depending on
pitch. Nigerian Pidgin has its own rhythm. Generic TTS flattens all of it. We
trained VocaBusta for real African phonology and tone, with native persona voices
per language — Blessing and Sunday for Pidgin, Adunni and Tunde for Yoruba,
Adaeze and Emeka for Igbo, and many more.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="what-you-get">What you get<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-introducing-the-vocabusta-voice-api#what-you-get" class="hash-link" aria-label="Direct link to What you get" title="Direct link to What you get" translate="no">​</a></h2>
<ul>
<li class=""><strong>Text to speech</strong> — natural speech in 12 languages and accents, with
expressiveness controls (<code>exaggeration</code>, <code>cfg_weight</code>) and streaming for
low-latency playback.</li>
<li class=""><strong>Transcription</strong> — our <strong>Vocabanga</strong> ASR model for African languages, with
word-level timestamps, and Whisper as a fallback.</li>
<li class=""><strong>Voice cloning</strong> — zero-shot: clone a voice from a ~10-second clip and
synthesize with it in seconds.</li>
<li class=""><strong>Video dubbing</strong> — analyze a video (transcript + speaker diarization),
translate it, and render it re-voiced — preserving each speaker's own voice or
swapping in a catalog voice.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="hello-world">Hello, world<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-introducing-the-vocabusta-voice-api#hello-world" class="hash-link" aria-label="Direct link to Hello, world" title="Direct link to Hello, world" translate="no">​</a></h2>
<div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><div class="token-line" style="color:#393A34"><span class="token function" style="color:#d73a49">curl</span><span class="token plain"> https://api.satryx.ai/voice/tts </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">-H</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"Authorization: Bearer </span><span class="token string variable" style="color:#36acaa">$SATRYX_API_KEY</span><span class="token string" style="color:#e3116c">"</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">-H</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"Content-Type: application/json"</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">-d</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">'{"text": "How far? Welcome to VocaBusta.", "voice_id": "vocabusta_pcm_female"}'</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">\</span><span class="token plain"></span><br></div><div class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token parameter variable" style="color:#36acaa">--output</span><span class="token plain"> hello.wav</span><br></div></code></pre></div></div>
<p>The response is raw WAV audio; synthesis metadata comes back in the
<code>X-Vox-Metadata</code> header.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="one-platform-two-sdks">One platform, two SDKs<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-introducing-the-vocabusta-voice-api#one-platform-two-sdks" class="hash-link" aria-label="Direct link to One platform, two SDKs" title="Direct link to One platform, two SDKs" translate="no">​</a></h2>
<p>VocaBusta is part of the Satryx platform, so the same first-party SDKs that wrap
chat and image generation also cover voice:</p>
<ul>
<li class=""><strong>Python</strong> — <code>pip install satryx</code></li>
<li class=""><strong>TypeScript / Node</strong> — <code>npm install @satryx/sdk</code></li>
</ul>
<p>Every endpoint is plain REST, so any language with an HTTP client works too.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="pricing--access">Pricing &amp; access<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-introducing-the-vocabusta-voice-api#pricing--access" class="hash-link" aria-label="Direct link to Pricing &amp; access" title="Direct link to Pricing &amp; access" translate="no">​</a></h2>
<p>Voice generation is gated behind the <strong>VocaBusta</strong> subscription — activate it in
Billing, then create an API key at <strong>Account → API keys</strong>. Browsing the voice
catalog (<code>GET /voice/voices</code>) is free and ungated, so you can audition voices
before you subscribe.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="get-started">Get started<a href="https://developers.vocabusta.satryx.ai/blog/2026-06-introducing-the-vocabusta-voice-api#get-started" class="hash-link" aria-label="Direct link to Get started" title="Direct link to Get started" translate="no">​</a></h2>
<ul>
<li class=""><a href="https://developers.vocabusta.satryx.ai/docs/quickstart" target="_blank" rel="noopener noreferrer" class="">Quickstart</a></li>
<li class=""><a href="https://developers.vocabusta.satryx.ai/docs/text-to-speech" target="_blank" rel="noopener noreferrer" class="">Text to speech</a></li>
<li class=""><a href="https://developers.vocabusta.satryx.ai/reference" target="_blank" rel="noopener noreferrer" class="">API reference</a></li>
</ul>
<p>We can't wait to hear what you build.</p>]]></content>
        <author>
            <name>VocaBusta</name>
            <uri>https://vocabusta.satryx.ai</uri>
        </author>
        <category label="launch" term="launch"/>
        <category label="api" term="api"/>
        <category label="voice" term="voice"/>
        <category label="tts" term="tts"/>
        <category label="africa" term="africa"/>
    </entry>
</feed>