<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>On-Device on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/on-device/</link>
        <description>Recent content in On-Device on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Mon, 18 May 2026 19:18:19 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/on-device/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>supertonic</title>
        <link>https://producthunt.programnotes.cn/en/p/supertonic/</link>
        <pubDate>Mon, 18 May 2026 19:18:19 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/supertonic/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1510561467401-91b9835f745e?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NzkxMDI5OTF8&amp;ixlib=rb-4.1.0" alt="Featured image of post supertonic" /&gt;&lt;h1 id=&#34;supertone-incsupertonic&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/supertone-inc/supertonic&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;supertone-inc/supertonic&lt;/a&gt;
&lt;/h1&gt;&lt;h1 id=&#34;supertonic--lightning-fast-on-device-accurate-tts&#34;&gt;Supertonic — Lightning Fast, On-Device, Accurate TTS
&lt;/h1&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;img/Supertonic3_HeroImage.png&#34; alt=&#34;Supertonic 3 Banner&#34;&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/supertone-inc/supertonic&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/GitHub-Official%20Repo-black?logo=github&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;GitHub | Official Repo&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/Supertone/supertonic-3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/%f0%9f%a4%97%20Hugging%20Face-Models-blue&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Models&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/Supertone/supertonic-3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/%f0%9f%a4%97%20Hugging%20Face-Demo-yellow&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Runs Locally via WebGPU&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://supertonic3.github.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/DemoPage-Audio%20Samples-F5D90A?labelColor=0B0C0E&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;DemoPage | Audio Samples&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://supertonic.supertone.ai/voice-builder&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/Voice%20Builder-Cloning%20Demo-3457D5?logo=soundcloud&amp;amp;logoColor=white&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Voice Builder | Cloning Demo&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/supertone-inc/supertonic-py&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/GitHub-Python%20Package-black?logo=github&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;GitHub | Python Package&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://supertone-inc.github.io/supertonic-py/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/Docs-Python%20PyPI-blue?logo=readthedocs&amp;amp;logoColor=white&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Docs | Python PyPI&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://trendshift.io/repositories/15657&#34; target=&#34;_blank&#34;&gt;&lt;img src=&#34;https://trendshift.io/api/badge/repositories/15657&#34; alt=&#34;supertone-inc%2Fsupertonic | Trendshift&#34; style=&#34;width: 250px; height: 55px;&#34; width=&#34;250&#34; height=&#34;55&#34;/&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Supertonic&lt;/strong&gt; is a lightning-fast, on-device multilingual text-to-speech system designed for local inference with minimal overhead. Powered by ONNX Runtime, it runs entirely on your device—no cloud, no API calls, no privacy concerns.&lt;/p&gt;
&lt;h3 id=&#34;-highlights&#34;&gt;✨ Highlights
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;⚡ &lt;strong&gt;Blazingly Fast&lt;/strong&gt; — Low-latency, real-time synthesis across desktop, browser, mobile, and edge — fast enough to turn an entire webpage into audio in under a second&lt;/li&gt;
&lt;li&gt;🌍 &lt;strong&gt;31-Language Multilingual&lt;/strong&gt; — Synthesize directly from text across 31 languages, or pass &lt;code&gt;lang=&amp;quot;na&amp;quot;&lt;/code&gt; to let Supertonic process the text language-agnostically when you don&amp;rsquo;t know the input language — no separate language adapters needed&lt;/li&gt;
&lt;li&gt;🪶 &lt;strong&gt;99M-Parameter Open-Weight Model&lt;/strong&gt; — A compact, fully open-weight checkpoint — a fraction of the size of 0.7B–2B class open TTS systems — for smaller downloads, faster cold starts, and lower memory footprint&lt;/li&gt;
&lt;li&gt;📱 &lt;strong&gt;Edge-Device Ready&lt;/strong&gt; — Runs locally on desktop, mobile, browsers, and resource-constrained hardware like Raspberry Pi or e-readers, with zero network dependency, complete privacy, and no GPU required&lt;/li&gt;
&lt;li&gt;🔊 &lt;strong&gt;44.1kHz High-Quality Audio&lt;/strong&gt; — Outputs studio-grade 44.1kHz 16-bit WAV directly, ready for production playback without any external upsampler&lt;/li&gt;
&lt;li&gt;🎭 &lt;strong&gt;Expression Tags&lt;/strong&gt; — 10 inline tags (e.g. &lt;code&gt;&amp;lt;laugh&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;breath&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;sigh&amp;gt;&lt;/code&gt;) bring natural human nuance into generated speech without prompt engineering or reference audio&lt;/li&gt;
&lt;li&gt;🛠️ &lt;strong&gt;Multi-Runtime SDKs&lt;/strong&gt; — Ready-to-use examples through ONNX Runtime across Python, Node.js, Browser (WebGPU), Java, C++, C#, Go, Swift, iOS, Rust, and Flutter&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;-supported-languages-31&#34;&gt;🌍 Supported Languages (31)
&lt;/h3&gt;&lt;p&gt;Arabic (&lt;code&gt;ar&lt;/code&gt;), Bulgarian (&lt;code&gt;bg&lt;/code&gt;), Croatian (&lt;code&gt;hr&lt;/code&gt;), Czech (&lt;code&gt;cs&lt;/code&gt;), Danish (&lt;code&gt;da&lt;/code&gt;), Dutch (&lt;code&gt;nl&lt;/code&gt;), English (&lt;code&gt;en&lt;/code&gt;), Estonian (&lt;code&gt;et&lt;/code&gt;), Finnish (&lt;code&gt;fi&lt;/code&gt;), French (&lt;code&gt;fr&lt;/code&gt;), German (&lt;code&gt;de&lt;/code&gt;), Greek (&lt;code&gt;el&lt;/code&gt;), Hindi (&lt;code&gt;hi&lt;/code&gt;), Hungarian (&lt;code&gt;hu&lt;/code&gt;), Indonesian (&lt;code&gt;id&lt;/code&gt;), Italian (&lt;code&gt;it&lt;/code&gt;), Japanese (&lt;code&gt;ja&lt;/code&gt;), Korean (&lt;code&gt;ko&lt;/code&gt;), Latvian (&lt;code&gt;lv&lt;/code&gt;), Lithuanian (&lt;code&gt;lt&lt;/code&gt;), Polish (&lt;code&gt;pl&lt;/code&gt;), Portuguese (&lt;code&gt;pt&lt;/code&gt;), Romanian (&lt;code&gt;ro&lt;/code&gt;), Russian (&lt;code&gt;ru&lt;/code&gt;), Slovak (&lt;code&gt;sk&lt;/code&gt;), Slovenian (&lt;code&gt;sl&lt;/code&gt;), Spanish (&lt;code&gt;es&lt;/code&gt;), Swedish (&lt;code&gt;sv&lt;/code&gt;), Turkish (&lt;code&gt;tr&lt;/code&gt;), Ukrainian (&lt;code&gt;uk&lt;/code&gt;), Vietnamese (&lt;code&gt;vi&lt;/code&gt;)&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Not sure which language your text is in?&lt;/strong&gt; Pass &lt;code&gt;lang=&amp;quot;na&amp;quot;&lt;/code&gt; and Supertonic will handle the input in a language-agnostic way — no explicit language tag required.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;-update-news&#34;&gt;📰 Update News
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;2026.05.18&lt;/strong&gt; - Python SDK v1.3.1 adds &lt;strong&gt;&lt;code&gt;supertonic serve&lt;/code&gt;&lt;/strong&gt;, a local HTTP server with native &lt;code&gt;/v1/tts&lt;/code&gt; and OpenAI-compatible &lt;code&gt;/v1/audio/speech&lt;/code&gt; endpoints. See the &lt;a class=&#34;link&#34; href=&#34;https://supertone-inc.github.io/supertonic-py/cli/serve/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;serve documentation&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;2026.05.18&lt;/strong&gt; - &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://supertonic.supertone.ai/voice-builder&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Voice Builder&lt;/a&gt;&lt;/strong&gt; now supports &lt;strong&gt;Supertonic 3&lt;/strong&gt;. Create a permanent custom voice profile for Supertonic and download version-specific JSON files for both Supertonic 2 and Supertonic 3. If you already created a Supertonic 2 voice, the matching Supertonic 3 JSON is now available from &lt;a class=&#34;link&#34; href=&#34;https://supertonic.supertone.ai/my-page&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;My Page&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;2026.04.29&lt;/strong&gt; - 🎉 &lt;strong&gt;Supertonic 3&lt;/strong&gt; released with &lt;strong&gt;31-language support&lt;/strong&gt;, improved reading accuracy, fewer repeat/skip failures, and v2-compatible public ONNX assets. &lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/Supertone/supertonic-3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Demo&lt;/a&gt; | &lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/Supertone/supertonic-3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Models&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;2026.01.22&lt;/strong&gt; - &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://supertonic.supertone.ai/voice-builder&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Voice Builder&lt;/a&gt;&lt;/strong&gt; is now live! Turn your voice into a deployable, edge-native TTS with permanent ownership.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;2026.01.06&lt;/strong&gt; - 🎉 &lt;strong&gt;Supertonic 2&lt;/strong&gt; released with 5-language support. The v2 code path is preserved on the &lt;a class=&#34;link&#34; href=&#34;https://github.com/supertone-inc/supertonic/tree/release/supertonic-2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;release/supertonic-2&lt;/code&gt;&lt;/a&gt; branch.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;2025.12.10&lt;/strong&gt; - Added &lt;code&gt;supertonic&lt;/code&gt; PyPI package! Install via &lt;code&gt;pip install supertonic&lt;/code&gt;. For details, visit &lt;a class=&#34;link&#34; href=&#34;https://supertone-inc.github.io/supertonic-py&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;supertonic-py documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;2025.12.10&lt;/strong&gt; - Added &lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/Supertone/supertonic/tree/b10dbaf18b316159be75b34d24f740008fddd381&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;6 new voice styles&lt;/a&gt; (M3, M4, M5, F3, F4, F5). See &lt;a class=&#34;link&#34; href=&#34;https://supertone-inc.github.io/supertonic-py/voices/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Voices&lt;/a&gt; for details&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;2025.12.08&lt;/strong&gt; - Optimized ONNX models via &lt;a class=&#34;link&#34; href=&#34;https://github.com/inisis/OnnxSlim&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;OnnxSlim&lt;/a&gt; now available on &lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/Supertone/supertonic&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Hugging Face Models&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;2025.11.24&lt;/strong&gt; - Added Flutter SDK support with macOS compatibility&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id=&#34;quick-start&#34;&gt;Quick Start
&lt;/h2&gt;&lt;p&gt;Install the Python SDK and generate speech immediately. On the first run, Supertonic downloads the model assets from Hugging Face automatically.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pip install supertonic
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;python&#34;&gt;Python
&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;18
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;19
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;20
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;21
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;22
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;23
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;24
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;supertonic&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;TTS&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# First run downloads the model from Hugging Face automatically.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tts&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;TTS&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;auto_download&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;style&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;tts&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get_voice_style&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;voice_name&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;M1&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;text&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Supertonic is a lightning fast, on-device TTS system.&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;wav&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;duration&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;tts&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;synthesize&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;lang&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;en&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;                      &lt;span class=&#34;c1&#34;&gt;# Language code (e.g., &amp;#34;en&amp;#34;, &amp;#34;ko&amp;#34;, &amp;#34;na&amp;#34; for language-agnostic)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;voice_style&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;style&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;              &lt;span class=&#34;c1&#34;&gt;# Voice style object&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;total_steps&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;8&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# Quality: 5 (low) to 12 (high), default 8 (medium)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;speed&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;mf&#34;&gt;1.05&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;                     &lt;span class=&#34;c1&#34;&gt;# Speed: 0.7 (slow) to 2.0 (fast)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# wav: numpy array of shape (1, num_samples,) with dtype=np.float32, sampled at 44100 Hz&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# duration: numpy array of shape (1,) containing the duration of the generated audio in seconds&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tts&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;save_audio&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;wav&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;output.wav&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# import soundfile as sf&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# sf.write(&amp;#34;output.wav&amp;#34;, wav.squeeze(), 44100)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;sa&#34;&gt;f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Generated &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;duration&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;.2f&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;s of audio&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;local-http-server&#34;&gt;Local HTTP Server
&lt;/h3&gt;&lt;p&gt;The Python SDK can also run Supertonic as a local HTTP service. This is useful when you want to call Supertonic from tools that already speak HTTP, such as local agents, browser extensions, Electron apps, workflow automation tools, or OpenAI-compatible audio clients.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pip install &lt;span class=&#34;s1&#34;&gt;&amp;#39;supertonic[serve]&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;supertonic serve --host 127.0.0.1 --port &lt;span class=&#34;m&#34;&gt;7788&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Once running, use the native &lt;code&gt;POST /v1/tts&lt;/code&gt; endpoint or the OpenAI-compatible &lt;code&gt;POST /v1/audio/speech&lt;/code&gt; endpoint. The server also exposes interactive OpenAPI docs at &lt;code&gt;http://127.0.0.1:7788/docs&lt;/code&gt;. See the &lt;a class=&#34;link&#34; href=&#34;https://supertone-inc.github.io/supertonic-py/cli/serve/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;supertonic-py serve guide&lt;/a&gt; for request examples, batch synthesis, and custom Voice Builder JSON import.&lt;/p&gt;
&lt;h2 id=&#34;getting-started&#34;&gt;Getting Started
&lt;/h2&gt;&lt;p&gt;First, clone the repository:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/supertone-inc/supertonic.git
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; supertonic
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;prerequisites&#34;&gt;Prerequisites
&lt;/h3&gt;&lt;p&gt;Before running the examples, download the ONNX models and preset voices, and place them in the &lt;code&gt;assets&lt;/code&gt; directory:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; The Hugging Face repository uses Git LFS. Please ensure Git LFS is installed and initialized before cloning or pulling large model files.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;macOS: &lt;code&gt;brew install git-lfs &amp;amp;&amp;amp; git lfs install&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Generic: see &lt;code&gt;https://git-lfs.com&lt;/code&gt; for installers&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git lfs install
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://huggingface.co/Supertone/supertonic-3 assets
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Some language examples need native runtimes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Go&lt;/strong&gt;: install the ONNX Runtime C library. On macOS, &lt;code&gt;brew install onnxruntime&lt;/code&gt; is enough; the Go example auto-detects Homebrew paths.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Java&lt;/strong&gt;: use a JDK, not just a JRE. On macOS, &lt;code&gt;brew install openjdk@17&lt;/code&gt; works.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;C#&lt;/strong&gt;: targets .NET 9 and allows major-version roll-forward, so .NET 9 or newer runtimes can run it.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Then run the Python example:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; py
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv sync
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv run example_onnx.py
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;This generates &lt;code&gt;outputs/output.wav&lt;/code&gt; using the default preset voice.&lt;/p&gt;
&lt;h3 id=&#34;other-runtime-examples&#34;&gt;Other Runtime Examples
&lt;/h3&gt;&lt;details&gt;
&lt;summary&gt;&lt;b&gt;Run Supertonic in other languages and platforms&lt;/b&gt;&lt;/summary&gt;
&lt;p&gt;&lt;strong&gt;Node.js Example&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;nodejs/&#34; &gt;Details&lt;/a&gt;)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; nodejs
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm start
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Browser Example&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;web/&#34; &gt;Details&lt;/a&gt;)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; web
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run dev
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Java Example&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;java/&#34; &gt;Details&lt;/a&gt;)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; java
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mvn clean install
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mvn exec:java
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;C++ Example&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;cpp/&#34; &gt;Details&lt;/a&gt;)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; cpp
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir build &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; build
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cmake .. &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; cmake --build . --config Release
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./example_onnx
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;C# Example&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;csharp/&#34; &gt;Details&lt;/a&gt;)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; csharp
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dotnet restore
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dotnet run
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Go Example&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;go/&#34; &gt;Details&lt;/a&gt;)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; go
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;go mod download
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;go run example_onnx.go helper.go
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Swift Example&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;swift/&#34; &gt;Details&lt;/a&gt;)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; swift
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;swift build -c release
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.build/release/example_onnx
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Rust Example&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;rust/&#34; &gt;Details&lt;/a&gt;)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; rust
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cargo build --release
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./target/release/example_onnx
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;iOS Example&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;ios/&#34; &gt;Details&lt;/a&gt;)&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; ios/ExampleiOSApp
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;xcodegen generate
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;open ExampleiOSApp.xcodeproj
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;In Xcode: Targets → ExampleiOSApp → Signing: select your Team, then choose your iPhone as run destination and build.&lt;/p&gt;
&lt;/details&gt;
&lt;hr&gt;
&lt;h3 id=&#34;technical-details&#34;&gt;Technical Details
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Runtime&lt;/strong&gt;: ONNX Runtime for cross-platform inference&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Browser Support&lt;/strong&gt;: onnxruntime-web for client-side inference&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Batch Processing&lt;/strong&gt;: Supports batch inference for improved throughput&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Audio Output&lt;/strong&gt;: Outputs 44.1kHz 16-bit WAV files&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;performance-highlights&#34;&gt;Performance Highlights
&lt;/h2&gt;&lt;p&gt;Supertonic 3 is designed for practical on-device inference: compact enough to run locally, while staying competitive with much larger open TTS systems.&lt;/p&gt;
&lt;h3 id=&#34;reading-accuracy&#34;&gt;Reading Accuracy
&lt;/h3&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;img/metrics/s3_vs_measured_wer_range_voxcpm2.png&#34; alt=&#34;Supertonic 3 reading accuracy compared with measured model ranges and VoxCPM2&#34;&gt;
&lt;/p&gt;
&lt;p&gt;Evaluated on the &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/datasets/MiniMaxAI/TTS-MLS-Test&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Minimax-MLS-test&lt;/a&gt; benchmark&lt;/strong&gt;, Supertonic 3 stays within a competitive WER/CER range against much larger open TTS models such as VoxCPM2, while preserving a lightweight on-device deployment path. Asterisked languages (&lt;code&gt;*&lt;/code&gt;) use CER; the others use WER.&lt;/p&gt;
&lt;details&gt;
&lt;summary&gt;&lt;b&gt;📊 Detailed per-language results (WER / CER*)&lt;/b&gt;&lt;/summary&gt;
&lt;br&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Lang&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;VoxCPM2&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;OmniVoice&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Qwen3-TTS&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Supertonic 2&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Supertonic 3&lt;/strong&gt;&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;arabic*&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;4.14&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.74&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;2.14&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;czech&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;23.73&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;2.40&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3.02&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;dutch&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.84&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.77&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;1.47&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;english&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;2.11&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;2.02&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;2.25&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;2.52&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;2.06&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;finnish&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;2.29&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3.94&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5.40&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;french&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;4.41&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;4.74&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3.82&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;5.09&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4.89&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;german&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.85&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.96&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.52&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;0.86&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;greek&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3.22&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;2.96&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3.54&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;hindi*&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;5.85&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;5.14&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;5.34&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;indonesian&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.25&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.67&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;1.34&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;italian&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.74&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.29&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.40&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;1.75&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;japanese*&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3.35&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3.81&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3.67&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4.61&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;korean*&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;4.70&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3.22&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;4.07&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3.65&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3.26&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;polish&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.30&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.64&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;1.63&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;portuguese&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.74&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.40&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.21&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.52&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;2.48&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;romanian&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;22.39&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;2.29&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;2.19&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;russian&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;3.31&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;4.53&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;4.48&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;3.99&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;spanish&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.34&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.99&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.75&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.81&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;1.13&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;turkish&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.88&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;2.18&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;1.00&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;ukrainian&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;5.85&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.71&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;1.23&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;vietnamese&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1.48&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;0.79&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;strong&gt;4.49&lt;/strong&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;Lower is better. &lt;code&gt;*&lt;/code&gt; indicates CER (character error rate); all other rows use WER (word error rate). Dashes (&lt;code&gt;—&lt;/code&gt;) indicate the model does not officially support the language or no result is available.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/details&gt;
&lt;h3 id=&#34;supertonic-2-to-supertonic-3&#34;&gt;Supertonic 2 to Supertonic 3
&lt;/h3&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;img/metrics/supertonic2_vs_3_comparison.png&#34; alt=&#34;Supertonic 2 and Supertonic 3 comparison&#34;&gt;
&lt;/p&gt;
&lt;p&gt;Compared with Supertonic 2, Supertonic 3 reduces repeat and skip failures, improves speaker similarity across the shared-language set, and expands language coverage from 5 to 31 languages. It keeps the v2-compatible public ONNX interface, so existing integrations can move to v3 with the same inference contract.&lt;/p&gt;
&lt;h3 id=&#34;runtime-footprint&#34;&gt;Runtime Footprint
&lt;/h3&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;img/metrics/runtime_cpu_gpu_latency_memory.png&#34; alt=&#34;Supertonic CPU runtime compared with GPU baselines&#34;&gt;
&lt;/p&gt;
&lt;p&gt;Supertonic 3 runs fast on CPU, even compared with larger baselines measured on A100 GPU, and uses substantially less memory. The open-weight fixed-voice setting does not require a GPU, which makes local, browser, and edge deployment much easier.&lt;/p&gt;
&lt;h3 id=&#34;model-size&#34;&gt;Model Size
&lt;/h3&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;img/metrics/model_size_comparison.png&#34; alt=&#34;Model size comparison&#34;&gt;
&lt;/p&gt;
&lt;p&gt;At about 99M parameters across the public ONNX assets, Supertonic 3 is much smaller than 0.7B to 2B class open TTS systems. The smaller model size is a practical advantage for download size, startup time, and on-device inference.&lt;/p&gt;
&lt;h2 id=&#34;voice-cloning&#34;&gt;Voice Cloning
&lt;/h2&gt;&lt;p&gt;This open-weight repository focuses on fixed-voice, local TTS and does not include an official voice-cloning pipeline. If you want to bring your own voice to local Supertonic deployment, &lt;a class=&#34;link&#34; href=&#34;https://supertonic.supertone.ai/voice-builder&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Voice Builder&lt;/a&gt; turns a short reference recording into version-specific JSON files for Supertonic 2 and Supertonic 3, so the same custom voice can move with you across supported Supertonic versions.&lt;/p&gt;
&lt;p&gt;For a managed creation workflow, &lt;a class=&#34;link&#34; href=&#34;https://play.supertone.ai/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Supertone Play&lt;/a&gt; and the &lt;a class=&#34;link&#34; href=&#34;https://www.supertone.ai/ko/api&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Supertone API&lt;/a&gt; provide hosted TTS and voice services with 700+ commercially usable preset voices. You can also listen to Supertonic 3 zero-shot samples on the &lt;a class=&#34;link&#34; href=&#34;https://supertonic3.github.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;official showcase&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;demo&#34;&gt;Demo
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Try it now&lt;/strong&gt;: Experience Supertonic in your browser with our &lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/Supertone/supertonic-3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;Interactive Demo&lt;/strong&gt;&lt;/a&gt;, or get started with pre-trained models from &lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/Supertone/supertonic-3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;Hugging Face Hub&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;raspberry-pi&#34;&gt;Raspberry Pi
&lt;/h3&gt;&lt;p&gt;Watch Supertonic running on a &lt;strong&gt;Raspberry Pi&lt;/strong&gt;, demonstrating on-device, real-time text-to-speech synthesis:&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/user-attachments/assets/ea66f6d6-7bc5-4308-8a88-1ce3e07400d2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/user-attachments/assets/ea66f6d6-7bc5-4308-8a88-1ce3e07400d2&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;e-reader&#34;&gt;E-Reader
&lt;/h3&gt;&lt;p&gt;Experience Supertonic on an &lt;strong&gt;Onyx Boox Go 6&lt;/strong&gt; e-reader in airplane mode, achieving an average RTF of 0.3× with zero network dependency:&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/user-attachments/assets/64980e58-ad91-423a-9623-78c2ffc13680&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/user-attachments/assets/64980e58-ad91-423a-9623-78c2ffc13680&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;chrome-extension&#34;&gt;Chrome Extension
&lt;/h3&gt;&lt;p&gt;Turns any webpage into audio in under one second, delivering lightning-fast, on-device text-to-speech with zero network dependency—free, private, and effortless:&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/user-attachments/assets/cc8a45fc-5c3e-4b2c-8439-a14c3d00d91c&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/user-attachments/assets/cc8a45fc-5c3e-4b2c-8439-a14c3d00d91c&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;programming-language-support&#34;&gt;Programming Language Support
&lt;/h2&gt;&lt;p&gt;We provide ready-to-use TTS inference examples across multiple ecosystems:&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Language/Platform&lt;/th&gt;
          &lt;th&gt;Path&lt;/th&gt;
          &lt;th&gt;Description&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;py/&#34; &gt;&lt;strong&gt;Python&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;py/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;ONNX Runtime inference&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;nodejs/&#34; &gt;&lt;strong&gt;Node.js&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;nodejs/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Server-side JavaScript&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;web/&#34; &gt;&lt;strong&gt;Browser&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;web/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;WebGPU/WASM inference&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;java/&#34; &gt;&lt;strong&gt;Java&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;java/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Cross-platform JVM&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;cpp/&#34; &gt;&lt;strong&gt;C++&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;cpp/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;High-performance C++&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;csharp/&#34; &gt;&lt;strong&gt;C#&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;csharp/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;.NET ecosystem&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;go/&#34; &gt;&lt;strong&gt;Go&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;go/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Go implementation&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;swift/&#34; &gt;&lt;strong&gt;Swift&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;swift/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;macOS applications&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;ios/&#34; &gt;&lt;strong&gt;iOS&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;ios/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Native iOS apps&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;rust/&#34; &gt;&lt;strong&gt;Rust&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;rust/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Memory-safe systems&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;flutter/&#34; &gt;&lt;strong&gt;Flutter&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;&lt;code&gt;flutter/&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Cross-platform apps&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;For detailed usage instructions, please refer to the README.md in each language directory.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;natural-text-handling&#34;&gt;Natural Text Handling
&lt;/h2&gt;&lt;p&gt;Supertonic is designed to handle complex, real-world text inputs that contain natural prose, punctuation, abbreviations, and proper nouns.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;🎧 &lt;strong&gt;View audio samples more easily&lt;/strong&gt;: Check out our &lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/Supertone/supertonic-3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;strong&gt;Interactive Demo&lt;/strong&gt;&lt;/a&gt; for a better viewing experience of all audio examples&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Overview of Test Cases:&lt;/strong&gt;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Category&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Key Challenges&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Supertonic&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;ElevenLabs&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;OpenAI&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Gemini&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Microsoft&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Financial Expression&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Decimal currency, abbreviated magnitudes (M, K), currency symbols, currency codes&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;✅&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Phone Number&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Area codes, hyphens, extensions (ext.)&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;✅&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Technical Unit&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Decimal numbers with units, abbreviated technical notations&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;✅&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;❌&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;details&gt;
&lt;summary&gt;&lt;b&gt;Example 1: Financial Expression&lt;/b&gt;&lt;/summary&gt;
&lt;br&gt;
&lt;p&gt;&lt;strong&gt;Text:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;The startup secured &lt;strong&gt;$5.2M&lt;/strong&gt; in venture capital, a huge leap from their initial &lt;strong&gt;$450K&lt;/strong&gt; seed round.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Challenges:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Decimal point in currency ($5.2M should be read as &amp;ldquo;five point two million&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;Abbreviated magnitude units (M for million, K for thousand)&lt;/li&gt;
&lt;li&gt;Currency symbol ($) that needs to be properly pronounced as &amp;ldquo;dollars&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Audio Samples:&lt;/strong&gt;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;System&lt;/th&gt;
          &lt;th&gt;Result&lt;/th&gt;
          &lt;th&gt;Audio Sample&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Supertonic&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;✅&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1eancUOhiSXCVoTu9ddh4S-OcVQaWrPV-/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;ElevenLabs Flash v2.5&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1-r2scv7XQ1crIDu6QOh3eqVl445W6ap_/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;OpenAI TTS-1&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1MFDXMjfmsAVOqwPx7iveS0KUJtZvcwxB/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Gemini 2.5 Flash TTS&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1dEHpNzfMUucFTJPQK0k4RcFZvPwQTt09/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;VibeVoice Realtime 0.5B&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1b69XWBQnSZZ0WZeR3avv7E8mSdoN6p6P/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/details&gt;
&lt;details&gt;
&lt;summary&gt;&lt;b&gt;Example 2: Phone Number&lt;/b&gt;&lt;/summary&gt;
&lt;br&gt;
&lt;p&gt;&lt;strong&gt;Text:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;You can reach the hotel front desk at &lt;strong&gt;(212) 555-0142 ext. 402&lt;/strong&gt; anytime.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Challenges:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Area code in parentheses that should be read as separate digits&lt;/li&gt;
&lt;li&gt;Phone number with hyphen separator (555-0142)&lt;/li&gt;
&lt;li&gt;Abbreviated extension notation (ext.)&lt;/li&gt;
&lt;li&gt;Extension number (402)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Audio Samples:&lt;/strong&gt;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;System&lt;/th&gt;
          &lt;th&gt;Result&lt;/th&gt;
          &lt;th&gt;Audio Sample&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Supertonic&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;✅&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1z-e5iTsihryMR8ll1-N1YXkB2CIJYJ6F/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;ElevenLabs Flash v2.5&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1HAzVXFTZfZm0VEK2laSpsMTxzufcuaxA/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;OpenAI TTS-1&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/15tjfAmb3GbjP_kmvD7zSdIWkhtAaCPOg/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Gemini 2.5 Flash TTS&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1BCL8n7yligUZyso970ud7Gf5NWb1OhKD/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;VibeVoice Realtime 0.5B&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1c0c0YM_Qm7XxSk2uSVYLbITgEDTqaVzL/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/details&gt;
&lt;details&gt;
&lt;summary&gt;&lt;b&gt;Example 3: Technical Unit&lt;/b&gt;&lt;/summary&gt;
&lt;br&gt;
&lt;p&gt;&lt;strong&gt;Text:&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;Our drone battery lasts &lt;strong&gt;2.3h&lt;/strong&gt; when flying at &lt;strong&gt;30kph&lt;/strong&gt; with full camera payload.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Challenges:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Decimal time duration with abbreviation (2.3h = two point three hours)&lt;/li&gt;
&lt;li&gt;Speed unit with abbreviation (30kph = thirty kilometers per hour)&lt;/li&gt;
&lt;li&gt;Technical abbreviations (h for hours, kph for kilometers per hour)&lt;/li&gt;
&lt;li&gt;Technical/engineering context requiring proper pronunciation&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Audio Samples:&lt;/strong&gt;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;System&lt;/th&gt;
          &lt;th&gt;Result&lt;/th&gt;
          &lt;th&gt;Audio Sample&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Supertonic&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;✅&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1kvOBvswFkLfmr8hGplH0V2XiMxy1shYf/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;ElevenLabs Flash v2.5&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1_SzfjWJe5YEd0t3R7DztkYhHcI_av48p/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;OpenAI TTS-1&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1P5BSilj5xFPTV2Xz6yW5jitKZohO9o-6/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Gemini 2.5 Flash TTS&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1GU82SnWC50OvC8CZNjhxvNZFKQb7I9_Y/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;VibeVoice Realtime 0.5B&lt;/td&gt;
          &lt;td&gt;❌&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://drive.google.com/file/d/1lUTrxrAQy_viEK2Hlu3KLLtTCe8jvbdV/view?usp=sharing&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🎧 Play Audio&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/details&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; These samples demonstrate how each system handles text normalization and pronunciation of complex expressions &lt;strong&gt;without requiring pre-processing or phonetic annotations&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;built-with-supertonic&#34;&gt;Built with Supertonic
&lt;/h2&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Project&lt;/th&gt;
          &lt;th&gt;Description&lt;/th&gt;
          &lt;th&gt;Links&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;TLDRL&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;Free, on-device TTS extension for reading any webpage&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://chromewebstore.google.com/detail/tldrl-lightning-tts-power/mdbiaajonlkomihpcaffhkagodbcgbme&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Chrome&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Read Aloud&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;Open-source TTS browser extension&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://chromewebstore.google.com/detail/read-aloud-a-text-to-spee/hdhinadidafjejdhmfkjgnolgimiaplp&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Chrome&lt;/a&gt; · &lt;a class=&#34;link&#34; href=&#34;https://microsoftedge.microsoft.com/addons/detail/read-aloud-a-text-to-spe/pnfonnnmfjnpfgagnklfaccicnnjcdkm&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Edge&lt;/a&gt; · &lt;a class=&#34;link&#34; href=&#34;https://github.com/ken107/read-aloud&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;PageEcho&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;E-Book reader app for iOS&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://apps.apple.com/us/app/pageecho/id6755965837&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;App Store&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;VoiceChat&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;On-device voice-to-voice LLM chatbot in the browser&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/RickRossTN/ai-voice-chat&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Demo&lt;/a&gt; · &lt;a class=&#34;link&#34; href=&#34;https://github.com/irelate-ai/voice-chat&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;OmniAvatar&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;Talking avatar video generator from photo + speech&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/alexnasa/OmniAvatar&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Demo&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;CopiloTTS&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;Kotlin Multiplatform TTS SDK via ONNX Runtime&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/sigmadeltasoftware/CopiloTTS&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Voice Mixer&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;PyQt5 tool for mixing and modifying voice styles&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/Topping1/Supertonic-Voice-Mixer&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Supertonic MNN&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;Lightweight library based on MNN (fp32/fp16/int8)&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/vra/supertonic-mnn&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub&lt;/a&gt; · &lt;a class=&#34;link&#34; href=&#34;https://pypi.org/project/supertonic-mnn/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;PyPI&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Transformers.js&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;Hugging Face&amp;rsquo;s JS library with Supertonic support&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/huggingface/transformers.js/pull/1459&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub PR&lt;/a&gt; · &lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/webml-community/Supertonic-TTS-WebGPU&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Demo&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Pinokio&lt;/strong&gt;&lt;/td&gt;
          &lt;td&gt;1-click localhost cloud for Mac, Windows, and Linux&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://pinokio.co/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Pinokio&lt;/a&gt; · &lt;a class=&#34;link&#34; href=&#34;https://github.com/SUP3RMASS1VE/SuperTonic-TTS&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;models--versions&#34;&gt;Models &amp;amp; Versions
&lt;/h2&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;&lt;strong&gt;Supertonic 3&lt;/strong&gt;&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Supertonic 2&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;Supertonic 1&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Status&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;🟢 Latest&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Stable&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;Legacy&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Parameters&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;~99M&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;~66M&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;~66M&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Languages&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;31&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;5&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1 (en)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Expression Tags&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;✅ 10 tags&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/supertone-inc/supertonic&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;main&lt;/a&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/supertone-inc/supertonic/tree/release/supertonic-2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;release/supertonic-2&lt;/a&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Weights&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/Supertone/supertonic-3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🤗 HF&lt;/a&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/Supertone/supertonic-2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🤗 HF&lt;/a&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/Supertone/supertonic&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🤗 HF&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Interactive Demo&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/Supertone/supertonic-3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🤗 Space&lt;/a&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/Supertone/supertonic-2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🤗 Space&lt;/a&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/spaces/Supertone/supertonic#interactive-demo&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;🤗 Space&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;strong&gt;Audio Samples&lt;/strong&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://supertonic3.github.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;DemoPage&lt;/a&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;—&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://supertonictts.github.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;DemoPage&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;citation&#34;&gt;Citation
&lt;/h2&gt;&lt;p&gt;The following papers describe the core technologies used in Supertonic. If you use this system in your research or find these techniques useful, please consider citing the relevant papers:&lt;/p&gt;
&lt;h3 id=&#34;supertonictts-main-architecture&#34;&gt;SupertonicTTS: Main Architecture
&lt;/h3&gt;&lt;p&gt;This paper introduces the overall architecture of SupertonicTTS, including the speech autoencoder, flow-matching based text-to-latent module, and efficient design choices.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bibtex&#34; data-lang=&#34;bibtex&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nc&#34;&gt;@article&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nl&#34;&gt;kim2025supertonic&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{SupertonicTTS: Towards Highly Efficient and Streamlined Text-to-Speech System}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;author&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{Kim, Hyeongju and Yang, Jinhyeok and Yu, Yechan and Ji, Seunghun and Morton, Jacob and Bous, Frederik and Byun, Joon and Lee, Juheon}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;journal&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{arXiv preprint arXiv:2503.23108}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;year&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{2025}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{https://arxiv.org/abs/2503.23108}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;length-aware-rope-text-speech-alignment&#34;&gt;Length-Aware RoPE: Text-Speech Alignment
&lt;/h3&gt;&lt;p&gt;This paper presents Length-Aware Rotary Position Embedding (LARoPE), which improves text-speech alignment in cross-attention mechanisms.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bibtex&#34; data-lang=&#34;bibtex&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nc&#34;&gt;@article&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nl&#34;&gt;kim2025larope&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{Length-Aware Rotary Position Embedding for Text-Speech Alignment}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;author&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{Kim, Hyeongju and Lee, Juheon and Yang, Jinhyeok and Morton, Jacob}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;journal&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{arXiv preprint arXiv:2509.11084}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;year&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{2025}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{https://arxiv.org/abs/2509.11084}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;self-purifying-flow-matching-training-with-noisy-labels&#34;&gt;Self-Purifying Flow Matching: Training with Noisy Labels
&lt;/h3&gt;&lt;p&gt;This paper describes the self-purification technique for training flow matching models robustly with noisy or unreliable labels.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bibtex&#34; data-lang=&#34;bibtex&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nc&#34;&gt;@article&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;nl&#34;&gt;kim2025spfm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;title&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{Training Flow Matching Models with Reliable Labels via Self-Purification}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;author&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{Kim, Hyeongju and Yu, Yechan and Yi, June Young and Lee, Juheon}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;journal&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{arXiv preprint arXiv:2509.19091}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;year&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{2025}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;na&#34;&gt;url&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s&#34;&gt;{https://arxiv.org/abs/2509.19091}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;license&#34;&gt;License
&lt;/h2&gt;&lt;p&gt;This project&amp;rsquo;s sample code is released under the MIT License. - see the &lt;a class=&#34;link&#34; href=&#34;https://github.com/supertone-inc/supertonic?tab=MIT-1-ov-file&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LICENSE&lt;/a&gt; for details.&lt;/p&gt;
&lt;p&gt;The accompanying model is released under the OpenRAIL-M License. - see the &lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/Supertone/supertonic-3/blob/main/LICENSE&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LICENSE&lt;/a&gt; file for details.&lt;/p&gt;
&lt;p&gt;This model was trained using PyTorch, which is licensed under the BSD 3-Clause License but is not redistributed with this project. - see the &lt;a class=&#34;link&#34; href=&#34;https://docs.pytorch.org/FBGEMM/general/License.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LICENSE&lt;/a&gt; for details.&lt;/p&gt;
&lt;p&gt;Copyright (c) 2026 Supertone Inc.&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
