Pocket TTS 100M

Pocket TTS 100M speech-core का कम-विलंब, ऑन-डिवाइस अंग्रेज़ी टेक्स्ट-टू-स्पीच बैकएंड है। सार्वजनिक ONNX बंडल निश्चित Alba आवाज़ इस्तेमाल करता है और हर ध्वनिक फ्रेम तैयार होते ही ऑडियो स्ट्रीम करता है।

पहला ऑडियो स्ट्रीम करना

इन्फ़रेंस वास्तव में इंटरलीव्ड है: एक autoregressive latent को decode और emit करने के बाद अगला बनाया जाता है। हर non-final callback 1,920 Float32 samples — 24 kHz पर 80 ms — देता है और buffered TTS graph की स्थिर प्रतीक्षा से बचता है।

प्रकाशित बंडल

ItemDetails
Modelsoniqo/Pocket-TTS-100M-ONNX-INT8
Releasev1.0.0 · ad5d3fae3fb2f10024583708597afca8337c094c
Bundle size120.3 MiB
RuntimeONNX Runtime · C++17 · dynamic INT8 + FP32
Output24 kHz mono Float32 PCM · 1,920 samples / 80 ms per frame
Language / voiceEnglish · fixed Alba voice

डाउनलोड और सत्यापन

speech-core downloader v1.0.0 को pin करता है और हर प्रकाशित फ़ाइल को SHA-256 से जाँचता है।

bash scripts/download_pocket_tts_onnx.sh /models/pocket-tts-onnx

C++ API

#include <speech_core/models/onnx_pocket_tts.h>

speech_core::PocketTtsConfig config;
config.intra_threads = 2;
config.flow_steps = 4;

speech_core::OnnxPocketTts tts("/models/pocket-tts-onnx", config);
tts.synthesize("Hello world.", "en",
    [](const float* samples, size_t length, bool is_final) {
        // Each non-final callback is 1,920 Float32 samples:
        // 80 ms at 24 kHz.
    });

स्ट्रीमिंग अनुबंध

callback को एक बार में 80 ms का frame मिलता है; final callback stream का अंत बताता है। last_metrics() conditioning, first-audio और total latency, frame/sample counts, EOS, cancellation और effective seed देता है। cancel() सक्रिय synthesis रोकता है।

Galaxy S23 Ultra बेंचमार्क

सार्वजनिक v1.0.0 बंडल का नया परीक्षण ONNX Runtime 1.27, दो CPU threads और Galaxy S23 Ultra पर हुआ। ये सीधे engine माप हैं, UI या पूरी voice pipeline के नहीं।

MetricResult
TTFA p50 / p95127.7 / 133.7 ms
Total latency p50 / p95467.5 / 485.3 ms
Median RTF0.4495
Peak RSS373.7 MiB

राउंड-ट्रिप स्पष्टता

डिवाइस परीक्षण ने 46 command और assistant वाक्य synthesize किए, production 24→16 kHz resampler से गुज़ारे और deployed Parakeet-EOU से transcribe किए।

MetricResult
Corpus46 phrases
Exact transcripts31 / 46
WER / CER8.00% / 3.47%
Empty audio / transcript / EOS failures0 / 0 / 0

राउंड-ट्रिप ASR समझ आने की क्षमता मापता है, स्वाभाविकता या श्रोता पसंद नहीं; यह listening tests का पूरक है।

इंटीग्रेशन स्थिति

आज उपलब्ध स्थिति

C++17 ONNX backend speech-core में merge है और Windows, Linux तथा Android के लिए build होता है। मौजूदा speech-android SDK/JNI अभी भी Kokoro को default चुनता है; Kotlin model selection, download wiring और SDK exposure आगे का काम है। Apple/CoreML backend शामिल नहीं है।

सीमाएँ और लाइसेंस

स्रोत