
This ComfyUI workflow turns written scripts into expressive speech using ElevenLabs’ Eleven v4 model. It’s designed around two clear paths: use a preset voice from your ElevenLabs library or instantly clone a voice from an audio sample. The core generation happens in the ElevenLabsTextToSpeech node, which reads your script (written in a Note/MarkdownNote) and applies performance directions you embed as inline tags like [whispers], [excited], [laughs], [sighs], [sarcastic], and [crying]. SaveAudioAdvanced then writes a single audio file to disk.
Technically, Option 1 (Use Preset Voice) routes a selection from ElevenLabsVoiceSelector into ElevenLabsTextToSpeech along with your script and the Eleven v4 model choice. Option 2 (Create a Voice Clone) feeds audio from LoadAudio or RecordAudio into ElevenLabsInstantVoiceClone, which returns a temporary voice you can target in the TTS node. Only one option group should be enabled at a time (select the group and press Ctrl-B to un-bypass it). Because Eleven v4 treats the prompt as a performance script, the workflow lets you direct tone and delivery directly in text while keeping the node graph compact and easy to iterate for narration, audiobooks, and character voiceovers.
API
通过代码使用此工作流
每个 Comfy 工作流都是一个 JSON 图。下面的内容就是此工作流的完整数据,ComfyUI 运行时也是如此——你可以从该 URL 获取、放入版本控制,或在 ComfyUI 中加载并逐节点运行。
使用 Comfy SDK 从 TypeScript 或 Python 运行。相同代码可用于 Comfy Cloud 或你自托管的 ComfyUI——只需更改基础 URL。
// Install (beta)
npm i @comfyorg/sdk
// Run this workflow (TypeScript)
import { Comfy } from "@comfyorg/sdk";
const client = new Comfy({ apiKey: "comfyui-..." });
const wf = await client.workflows.fromFile("workflow_api.json");
const job = await client.run(wf);
await job.getOutputs("<output-node-id>")[0].toFile("output.png");SDK 需要 API 格式的工作流:在 ComfyUI 中打开此工作流,使用 文件 → 导出工作流(API)。



















