CoolFace
Modelpublic

Luigi/matcha-zh-tw-en-8k-gguf

sourceHugging Faceapache-2.0updated 3mo agoView on Hugging Face
0likes30downloads
Model Card

matcha-zh-tw-en-8k-gguf — Matcha-TTS (CFM) zh-TW/en @ 8 kHz, ggml/GGUF for RapidSpeech.cpp

A GGUF conversion of **Luigi/matcha-zh-tw-en-8k** (a Taiwan-Mandarin + English, 8 kHz Matcha-TTS — CFM acoustic model + Vocos vocoder) for the ggml runtime **RapidSpeech.cpp**. It lets Matcha-TTS run on ggml-CUDA / ggml-CPU — in particular on the Jetson Nano gen1 (Maxwell sm_53, CUDA 10.2), where the ggml engine fits the 4 GB budget that ONNX Runtime's CUDA EP overflows.

Contents

  • —matcha8k.gguf (~105 MB) — 474 learned tensors (acoustic 394 + Vocos 80) + all hyper-parameters (sample_rate=8000, ode_steps=3, …) packed into GGUF KV. Converted with scripts/convert_matcha_onnx_to_gguf.py from the source bundle's model-steps-3.onnx + vocos-8khz-univ.onnx. Round-trip validated: every GGUF tensor's bytes == the ONNX numpy (PASS).

Validated on real Jetson Nano gen1 (sm_53 Maxwell, CUDA 10.2, 4 GB)

Cross-compiled (x86 → aarch64, gcc-8.3 + CUDA-10.2 / kreier patch set) and run on the device:

Backendwarm RTFaudionotes
RapidSpeech ggml-CPU0.5073.18 s synth, valid (rms 0.118)
RapidSpeech ggml-CUDA0.184identical audioTegra X1 cc 5.3, MATCHA_USE_CUDA=1; ~2.75× over CPU

Real-utterance check (sentence 這個星期的研究進度。, 10 phoneme ids): 2.40 s @ 8 kHz, 151 mel frames — matches the ONNX reference. ggml-CUDA peaks well under the 4 GB budget (the engine's whole reason on this device).

Usage (RapidSpeech.cpp)

The GGUF self-identifies as arch=matcha-tts. The CFM acoustic + Vocos vocoder + iSTFT run end-to-end; the text→phoneme frontend is supplied externally (e.g. sherpa-onnx's Matcha frontend, --debug=1 dumps the int32 phoneme ids). Feed the ids via the MATCHA_IDS env (little-endian int32 file):

sh
# CPU
matcha_e2e_test matcha8k.gguf out.wav            # built-in fixture, or:
MATCHA_IDS=ids.bin matcha_e2e_test matcha8k.gguf out.wav
# ggml-CUDA (Maxwell sm_53+; matcha defaults to CPU because CUDA-graph replay needs cc>=800)
MATCHA_USE_CUDA=1 MATCHA_IDS=ids.bin matcha_e2e_test matcha8k.gguf out.wav

Provenance