ASLP-lab SemBridge: Open TTS and Singing Voice Model

Introduction
SemBridge is an open speech and singing model from ASLP-lab. On October 12, 2026 they shipped the Hugging Face checkpoints and GitHub inference code: one continuous-latent autoregressive stack that does text-to-speech, note-conditioned singing voice synthesis (SVS), and unified clips that switch between speech and singing in a single sequence.
It's open weights under Apache-2.0 (code plus checkpoints). You can run it today with SemBridge.from_pretrained("ASLP-lab/SemBridge") or the sembridge-infer CLI after a local install. Listen first on the SemBridge demo page.
Pro Tip
Start with the bundled examples instead of wiring MIDI yourself. The repo ships 10 ready requests (4 TTS, 4 SVS, 2 Unified) with lyrics, pitches, and durations already aligned — bash scripts/infer_examples.sh --list shows them without loading the model.
What Shipped
From the Hugging Face model card and GitHub repo (card created 2026-10-12; inference init the same day):
- One model, three tasks: TTS (text), SVS (lyrics + MIDI pitches + note durations), Unified (ordered speech and singing segments).
- Size: about 0.8B parameters; weights include
model.safetensorsplus speech and unified audio VAEs. - Decoders: TTS defaults to a native causal decoder; SVS and Unified default to BigVGAN-Large. You can force
--decoder nativeor--decoder bigvgan. - Output: mono 44.1 kHz WAV. Without request-specific limits,
--max-patches 500caps generation around 40 seconds. - Languages on the demo: Chinese and English speech, singing, and mixed samples (zero-shot reference prompts included).
- Paper: arXiv:2608.07462 (August 2026) — the October drop is the runnable code and checkpoints, not a new paper.
SemBridge trains with discrete semantic tokens as anchors, then generates entirely continuous acoustic latents at inference. The pitch is better linguistic fidelity without throwing away continuous-latent audio quality.
How to Run It Today
Needs Python 3.10+, matched PyTorch / torchaudio 2.6–2.8, and preferably CUDA (BigVGAN stays in standard PyTorch — no custom CUDA ops).
conda create -n sembridge python=3.10 -y
conda activate sembridge
git clone https://github.com/ASLP-lab/SemBridge.git
cd SemBridge
python -m pip install torch==2.6.0 torchaudio==2.6.0 \
--index-url https://download.pytorch.org/whl/cu124
python -m pip install -e .from sembridge import SemBridge
from sembridge.requests import load_request
model = SemBridge.from_pretrained(
"ASLP-lab/SemBridge", device="cuda", dtype="bfloat16"
)
model.generate_to_file(
"outputs/singing.wav",
**load_request("examples/svs/zh_r001.json"),
)Or from the CLI:
sembridge-infer --model ASLP-lab/SemBridge --task tts \
--input examples/tts/zh_r001.json --output outputs/tts.wav \
--device cuda --dtype bfloat16Add prompt_audio and matching prompt_text for reference-conditioned (zero-shot) generation. Reference audio is downmixed and resampled to 44.1 kHz automatically.
Why It Matters
Most open TTS stacks stop at speech. Most singing models stop at score-conditioned vocals. SemBridge puts both — and the awkward middle where a host talks, then sings, then talks again — behind one continuous AR path you can clone and run locally. For singers, podcasters, and game-audio makers who want Chinese/English demos without an API key, this is a real day-0 artifact: card, weights, CLI, and a public listen page landed together on October 12.
Conclusion
ASLP-lab’s SemBridge is an open Apache-2.0 continuous-latent model for TTS, MIDI-conditioned singing, and mixed speech↔singing. Checkpoints and inference went live on Hugging Face and GitHub on October 12, 2026; outputs are 44.1 kHz mono WAV, and the demo plus ten bundled examples make it tryable the same day.
Primary: Hugging Face — ASLP-lab/SemBridge, GitHub — ASLP-lab/SemBridge, SemBridge Demo, arXiv:2608.07462.
—Anabel ♡
