Awtomatikong salin · Orihinal sa Ingles
Pocket TTS 100M
Katutubong Apple runtime · PocketTTS
Ang PocketTTS ay nagdaragdag ng katutubong CoreML speech synthesis sa speech-swift. lahat ng mga yugto ay default sa CPU-lamang pagpatay. Ang Ingles na Alba preseted streams 1,920-sample frames sa 24 kHz (80 ms kada frame).
Ang bawat kahilingan ay may kani - kaniyang estado at binhi, Cancellation, mga kabiguan sa callback, at mga hangganan sa salinlahi; ang matagumpay na pagtatapos ay naglalabas ng isang bakanteng pangwakas na bahagi ng katawan.
Download ang inilathalang brock aufklarer/Pocket-TTS-100M-CoreML-INT8 sa unang paggamit, o pagkarga ng isang lokal na import. Retain conscrimination to Kyutai, Fluid Inference, at Alba MacKenna sa ilalim ng CC BY 4.0.
Swift at CLI
speech speak "Hello world." --engine pocket --stream \
--pocket-bundle-dir /path/to/bundle --pocket-seed 42 -o hello.wavimport PocketTTS
let model = try PocketTTSModel.fromBundle(URL(fileURLWithPath: "/path/to/bundle"))
try await model.generateStreaming(text: "Hello world.") { chunk in
await consume(chunk.samples)
}HTTP at WebSocket
Gumamit ng pocket-tts na may voice alba. Streaming HTTP ay nangangailangan ng PCM; WebSocket ay naglalabas ng audio deltas. Ang mga umiiral na default models ay hindi nagbabago.
curl http://localhost:8080/v1/audio/speech \
-H 'Content-Type: application/json' \
-d '{"model":"pocket-tts","voice":"alba","input":"Hello world.","response_format":"pcm","stream":true}' \
-o hello.pcmApple CPU benchmark
Apple M5 Pro · 48 GiB · cpu Only · first_audio_ms 78.9 · RTF 0.337 · peak_rss 866.8 MiB · n=5 · binhi=42 · 2026-10-17
Pocket TTS 100M ay ang low-latency, on-device English text-to-speech backend sa speech-core. Ang public ONNX brock ay gumagamit ng nakapirmeng Albang tinig at mga sapa audio sa sandaling ang bawat akustikong frame ay handa na.
Ang inference ay tunay na interleased: ang isang autoregressive latent ay descoded at inilabas sa harap ng henerasyon ng susunod na latent. Ang bawat non-final callback ay nagdadala ng 1,920 Float32 sampol – 80 ms sa 24 kHz — iniiwasan ang nakapirmeng full-graph floor ng mga exclusioned TTS.
Inilathalang bungkos
| Item | Mga Detalye |
|---|---|
| Huwaran | soniqo/Pocket-TTS-100M-ONNX-INT8 |
| Paglaya | v1.0.0 · ad5d3fae3fb2f10024583708597afca8337c094c |
| Maliit na sukat | 120.3 MiB |
| Oras ng Pagtakbo | ONNX Runtime · C++17 · dynamic INT8 + FP32 |
| Ilabas | 24 kHz mono Float32 PCM · 1,920 sampol / 80 m bawat balangkas |
| Wika / tinig | Tagalog · pirmihang tinig ng Alba |
Pag - download at pagtiyak
Ang speech-core downloader pins v1.0.0 at verifies ang bawat nailathalang talaksan sa pamamagitan ng 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.
});
Malaking kontrata
Ang callback ay tumatanggap ng isang 80 ms frame sa isang panahon; ang panghuling callback ay palatandaan ng dulo ng sapa. last_metrics() ulat ng conditioning, first-audio at kabuuang latency, frame and sampol counts, EOS state, deficiation, at ang epektibong binhi. cancel() ay humihinto sa isang aktibong synthesis.
Galaxy S23 Ultra benchmark
Isang malinis na rerun ng pampublikong v1.0.0 brock ang gumamit ng ONNX Runtime 1.27, dalawang CPU na sinulid, at isang Galaxy S23 Ultra. Ang mga ito ay direktang sukat ng makina, hindi UI o kumpletong voice-pipeline na mga tiyempo.
| Masalimuot | Resulta |
|---|---|
| TTFA p50 / p95 | 127.7 / 133.7 ms |
| Kabuuang latency p50 / p95 | 467.5 / 485.3 ms |
| Median RTF | 0.4495 |
| Pinakamataas na RS | 373.7 MiB |
Kawalang - Alam sa Round-crip
Ang device gate ay gumawa ng 46 command at assistant na mga parirala, muling ini-samp ang audio sa production 24-to-16 kHz path, at kinabitan ito ng naka-set na Parakeet-EOU identer.
| Masalimuot | Resulta |
|---|---|
| Corpus | 46 parirala |
| Mga Lapat na Rescripto | 31 / 46 |
| WER / CER | 8.00% / 3.47% |
| Walang - laman na mga fault sa audio / transcript / EOS | 0 / 0 / 0 |
Ang Round-trip ASR ay sumusukat sa intelligence, hindi natural o kagustuhan ng tagapakinig; ito ay nagtutugma sa mga pagsusulit sa pakikinig.
Kalagayan sa pandarayuhan
Ang C++17 ONNX Pinagsasama ang likod speech-core at nagtatayo para Windows, Linux, at Android. Ang agos speech-android SDK/JNI pa rin ang mapagpipilian Kokoro sa pamamagitan ng default; pagpili ng modelo ng Kotlin, pag - download ng mga kawad, at SDK Ang exposure ay ang sumusunod-up na trabaho. Ang bahaging ito ay naglalarawan sa seksyon ONNX paglaya; ang katutubo Swift CoreML ay dokumentado sa itaas.
Mga Hangganan at lisensiya
- Sa Ingles lamang; ang public checkpoint ay naghuhurno sa nakapirmeng tinig ng Alba at hindi sumusuporta sa di - makatuwirang voice cloning.
- Ang modelo at boses ay ang CC BY 4.0.Papanatilihin ang Alba MacKenna na pag-aaklas na kasama sa bungkos na inihayag.
- Ang mga paulit-ulit na grap ay CPU-oriented. Hardware shuffed-in dahil ang Android bitayan-provider support ay iba-iba sa pamamagitan ng device at ONNX Runtime na gusali.
- Ang speech-core source ay Apache 2.0; ang modelong bungkos ay nagpapanatili ng sarili nitong CC BY 4.0 termino.