Extensions/comfyui-sopro-tts
ComfyUI Extension

comfyui-sopro-tts

A ComfyUI extension with 3 custom nodes.

By vjumpkung·Created about 22 hours ago·Updated about 22 hours ago· 0
vjumpkung/comfyui-sopro-tts
Nodes3
On cloudLocal install
Categoryaudio/sopro
Stars0
Updatedabout 22 hours ago
Readme

ComfyUI SoPro TTS

ComfyUI V3 custom nodes for SoPro, a lightweight multilingual text-to-speech model with zero-shot voice cloning.

Nodes

  • Load SoPro Model loads a Hugging Face model or a local SoPro artifact directory. The default is samuel-vitorino/sopro-v2-turbo.
  • Prepare SoPro Voice Reference encodes a reference clip once so it can be reused for multiple generations.
  • SoPro Text to Speech generates a standard ComfyUI AUDIO value using the offline or causal streaming inference path.

The default model supports English (en), European Portuguese (pt), French (fr), and German (de). SoPro recommends a clean 5–20 second reference clip.

Installation

From this custom-node directory, install the Python dependency into the same environment that runs ComfyUI:

pip install -r requirements.txt

Adjust the Python path if your ComfyUI installation uses a portable or different virtual environment, then restart ComfyUI.

The model artifacts download from Hugging Face on the first execution of Load SoPro Model and remain in the Hugging Face cache. You can avoid a download by entering a local artifact directory in the loader's model field. CPU int8 applies only to SoPro's autoregressive weights and requires the loader's device to be cpu.

Basic workflow

  1. Load reference speech with ComfyUI's Load Audio node.
  2. Connect Load SoPro Model and Load Audio to Prepare SoPro Voice Reference.
  3. Connect the model and prepared reference to SoPro Text to Speech.
  4. Connect its audio output to Preview Audio or Save Audio.

offline mode provides the best quality. streaming uses SoPro's causal generation path, but ComfyUI receives the joined audio after generation rather than playing chunks live.

The max_seconds setting applies to each segment; SoPro automatically splits long text, so it does not cap total output length. For difficult references, increasing steps from the default of 2 to 8, 16, or 32 may improve quality at the cost of speed.

Notes

  • SoPro's text frontend is intentionally minimal. Writing numbers and symbols as words can improve pronunciation.
  • Mixed-language sentences may be less reliable than text written in one selected language.
  • Only clone voices you have permission to use. The upstream model does not add a watermark.

This integration targets current ComfyUI releases with the V3 custom-node API and uses SoPro 2.x.