Nodes/MOSS-TTS/MOSS-TTS Continue Speech
ComfyUI Node

MOSS-TTS Continue Speech

MOSS-TTS Continue Speech

By Saganaki22·Created 3 months ago·Updated 2 months ago· 30
MOSS-TTS Continue Speech
  • mosstts_model
  • prefix_audio
  • audio
prefix_textThis is the transcript of the prefix audio.
continuation_textThis is the sentence ending or continuation to generate.
return_full_audiofalse
languageauto
instruction
duration_tokens0
quality
sound_event
ambient_sound
max_new_tokens4096
do_sampletrue
text_temperature1.00
text_top_p1.00
text_top_k50
audio_temperature1.70
audio_top_p0.80
audio_top_k25
audio_repetition_penalty1.00
seed0

Continue Speech is the pack's answer to a specific annoyance: you have a recording that stops mid-sentence, and you want it to keep going in the same voice, same pace, same room tone - not start a fresh take. You feed it the existing clip plus its transcript, type the ending, and the node continues the audio rather than regenerating it from scratch.

It's a cousin of Voice Clone, and it's worth being clear about the difference because people conflate them. Voice Clone takes a separate reference clip and re-speaks your text from zero. Continue Speech takes the audio itself as the thing to continue - the prefix becomes the conditioning, and the continuation is stitched onto it. Different mechanism, different use case. If you have a half-finished sentence, this is the node you want.

How it works

The prefix audio is encoded into acoustic codes by MOSS-Audio-Tokenizer-v2. The node then builds a conversation where the user message is the full text - prefix_text plus continuation_text concatenated - and the assistant message contains the prefix's audio codes. Generation runs in continuation mode, meaning the model literally continues that acoustic sequence instead of generating unconditioned. Because it's continuing, the speaker's timbre, rhythm, and even the recording's character carry over naturally.

One output flag changes what you get back: return_full_audio (default false). Off, you get just the newly generated tail. On, the node concatenates the original prefix waveform with the continuation so you get the whole thing in one clip.

The inputs that matter

  • mosstts_model - the bundle from MOSS-TTS Load Model.
  • prefix_audio - the existing clip, as ComfyUI AUDIO.
  • prefix_text - the transcript of that clip. This one's required, and it has to actually match what's said. The node does not transcribe for you; that's what the Whisper node in this pack exists for.
  • continuation_text - the sentence ending or continuation to generate.
  • return_full_audio - the trap, honestly. Everyone forgets it defaults to false and wonders where their original audio went.
  • language - same advice as Voice Clone: set it rather than leaving auto guessing.
  • instruction, duration_tokens, max_new_tokens, and the sampling group behave identically to Voice Clone - same defaults, same 12.5 frames-per-second math (4096 tokens ≈ 5.5 minutes).

Output: audio - the continuation (or the full clip with return_full_audio on), ready for Save Audio or downstream processing.

Installing

Same as the rest of the pack: ComfyUI Manager → search MOSS-TTS, or

cd ComfyUI/custom_nodes
git clone https://github.com/Saganaki22/Moss_TTS-ComfyUI.git
../venv/bin/python Moss_TTS-ComfyUI/install.py

then restart. The loader node has to run first so there's a mosstts_model to plug in.

Common issues

The prefix transcript is where this node lives or dies. If prefix_text doesn't match the audio - wrong words, missing chunks - the continuation drifts because the model is aligning against text it thinks it said. That's the whole reason the pack ships a Whisper node, and it's covered on the MOSS-TTS Whisper Transcribe page.

Second gotcha: prefix_text and continuation_text are concatenated directly, with no space or punctuation inserted. A Whisper transcript that drops punctuation can make the model run words together at the seam. If your continuation reads as one run-on, check what's actually in prefix_text - a period and a space at the end usually fixes it.

And the return_full_audio default. If your workflow outputs a clip that's suddenly missing its first half, that's not a model failure - flip the toggle.

CategoryMOSS-TTS

Inputs (21)

NameTypeDefaultDescription
mosstts_modelMOSSTTS_MODELLoaded MOSS-TTS model bundle.
prefix_audioAUDIOPrefix audio to continue from. Provide a matching transcript below.
prefix_textSTRINGThis is the transcript of the prefix audio. Text to synthesize. Inline [pause 0.5s], Pinyin, and IPA are passed through to MOSS-TTS.
continuation_textSTRINGThis is the sentence ending or continuation to generate.Text to synthesize. Inline [pause 0.5s], Pinyin, and IPA are passed through to MOSS-TTS.
return_full_audioBOOLEANfalseWhen enabled, concatenate the original prefix audio with the generated continuation.
languageCOMBOautoLanguage hint. v1.5 performs best when the language is specified.
instructionSTRINGOptional free-form style or delivery instruction.
duration_tokensINT00–45000Optional duration target in audio tokens. 0 omits the field. MOSS runs around 12.5 tokens per second.
qualitySTRINGOptional quality hint field exposed by the MOSS user-message schema.
sound_eventSTRINGOptional sound-event hint field exposed by the MOSS user-message schema.
ambient_soundSTRINGOptional ambient-sound hint field exposed by the MOSS user-message schema.
max_new_tokensINT40961–45000Generation budget in audio frames. At 12.5 frames per second, 4096 is roughly 5.5 minutes.
do_sampleBOOLEANtrueUse stochastic sampling. Disable for deterministic greedy decoding.
text_temperatureFLOAT1.000–2Sampling temperature for assistant text/audio-control tokens.
text_top_pFLOAT1.000–1Nucleus sampling for assistant text/audio-control tokens.
text_top_kINT500–4096Top-K sampling for assistant text/audio-control tokens.
audio_temperatureFLOAT1.700–3Recommended v1.5 audio sampling temperature.
audio_top_pFLOAT0.800–1Recommended v1.5 nucleus sampling cutoff for audio codebooks.
audio_top_kINT250–1024Recommended v1.5 Top-K cutoff for audio codebooks.
audio_repetition_penaltyFLOAT1.001–2Penalty for repeated acoustic code patterns.
seedINT00–92233720368547760000 leaves sampling unseeded. Positive values make identical settings repeatable.

Outputs (1)

NameTypeDescription
audioAUDIO