Parameters Reference (v0.4.1)
Every custom parameter on the shipped v0.4.1 operator, organized by parameter page. Alt + mouse over any parameter in TouchDesigner for its tooltip.
v0.4.1 adds, removes or changes no parameters. Names, defaults, menus and ranges below are identical to v0.4.0.
New in v0.4.0
- TRT Profile (
Trtprofile, Models page): flexible / quality / performance / fast_build engine build profiles. performance is FP8 (RTX 40+); fast_build is ~2x faster engine builds - CN Cache Decay (
Cncachedecay, V2V page): ControlNet residual cache that actually works on live video - Feature Injection (
Fienable / Fistrength / Fithreshold, V2V page): StreamV2V smoothness controls - Preprocessor preview (
Enablepreprocpreview, ControlNet page): opt-in, costs a stall - LoRA Weight is live: drag it mid-stream, no rebuild
- Acceleration menu is
none / tensorrt (xformers is gone); Cfgtype menu is none / self / initialize (full is gone) - Interpolation gains
cosine_weighted - Dynamic-shape engines cover 256-1024px (floor was 384)
Page Navigation
- Settings 1 - Core generation: prompts, step schedule, seeds, IP Adapter, guidance
- Settings 2 - Stream control, backend console, OSC, and generation mode
- Settings 3 - Outputs, UI, op config, model presets, and the TensorRT engine loader
- FX Processors - Processor chain for image and latent processing
- ControlNet - Image conditioning
- V2V - StreamV2V cached attention, ControlNet caching, and Feature Injection
- Models - Model loading, acceleration, TensorRT build profile, LCM / VAE, and LoRA
- Callbacks - TouchDesigner callback functions fired by the operator
- Install - Backend selection and installation
- About - Version info, updates, and operator packaging
Settings 1
Core generation: prompts, step schedule, seeds, IP Adapter, guidance.
Read-only status line, mirrored in the operator UI.
Default: Not Streaming
Start the stream. Local backend: launches the server process and builds any missing TensorRT engines first.
Shut down the backend server process entirely. Use Pause Stream (Settings 2) to stop output without killing the server.
Model used for generation. Accepts a HuggingFace ID, a direct safetensors link, or a local file path. The dropdown shows starter models; use My Models (Models page) for models in your models folder.
Default: stabilityai/sdxl-turbo Options: stabilityai/sd-turbo, stabilityai/sdxl-turbo, prompthero/openjourney-v4
Output width. Dynamic-shape TensorRT engines cover 256-1024 without a rebuild; static-shape engines (Quality / Performance / Fast Build profiles) are locked to their build resolution. Values round to a multiple of 64.
Default: 512 Slider: 384 - 1024 (soft)
Output height. Same engine rules as Width.
Default: 512 Slider: 384 - 1024 (soft)
Prompts
Prompt blocks. Each block has a Prompt string and a Weight; multiple blocks blend by weight using the Interpolation method. Add and remove blocks while streaming.
Per block: Prompt (Str); Weight (Float) 0 - 1 (soft)
Normalize prompt block weights so they sum to Total Weight.
Default: On
The combined weight the normalized prompt blocks sum to.
Default: 1.0 Slider: 1 - 3 (soft)
How multiple prompt embeddings blend: average is a linear mix, slerp is spherical interpolation, cosine_weighted eases the transition between prompts.
Default: cosine_weighted Options: average, slerp, cosine_weighted
Denoise Schedule
Step schedule, similar to denoise in img2img. Each block is one diffusion step with an index slider (1-49): lower = more change, higher = closer to the input. Add or remove steps while streaming; more steps is slower but higher quality (1-4 typical).
Per block: Step (Int) 1 - 49
Seed / Init Noise
Seed blocks. Each block has a Seed value and a Weight; multiple seeds blend without the weight-drag glitch of earlier versions. Seed -1 picks a random seed every frame.
Per block: Seed (Int) -1 - 1e+07 (soft); Weight (Float) 0 - 1 (soft)
Multiplier on the seed noise.
Default: 1.0 Slider: 1 - 1.1 (soft)
Ip Adapter
Enable IP Adapter image conditioning. With TensorRT this is baked into the engine: decide it before the build.
Default: Off
Push the current Ip Image TOP to the stream as the new reference image.
Strength of the IP Adapter influence. Updates live.
Default: 0.0 Slider: 0 - 1 (soft)
TOP used as the IP Adapter reference image.
Default: Empty
Use the FaceID variant of IP Adapter for face preservation. Not supported with sd-turbo.
Default: Off
Guidance
CFG scale controlling prompt adherence.
Default: 1.0 Slider: 1 - 1.5 (soft)
Multiplier of virtual residual noise.
Default: 1.0 Slider: 1 - 1.5 (soft)
CFG mode for img2img. The full mode from earlier versions is gone in v0.4.0 (it manufactured a broken config).
Default: self Options: none, self, initialize
Negative prompt. Not functional with distilled models: it required cfg full, which was removed in v0.4.0. Kept for compatibility.
Default: Empty
Settings 2
Stream control, backend console, OSC, and generation mode.
Read-only status line.
Default: Not Streaming
Read-only: the stream is producing frames.
Default: Off
Read-only: the backend server process is running.
Default: Off
Copies a formatted report (FPS, VRAM, current config, GPU info) to the clipboard. Useful for sharing results or filing issues.
Paces processing so TD-side feedback networks stay in step with the stream: frames are processed on demand instead of free-running. Pair with Process Delay and the Process Frame pulse.
Default: Off
Pause and resume output without shutting the server down. Restart is immediate.
Default: Off
Frame delay used by Feedback Safe pacing before a frame is processed.
Default: 3 Range: 1 - 10
Manually process one frame (Feedback Safe workflows).
Connection / Stream Settings
Keep the backend console window open after exit so errors stay readable.
Default: On
Show the backend console window.
Default: On
Verbose debug logging in the backend console for the Local backend.
Default: Off
Name of the shared-memory stream between TD and the backend. Default is an expression built from the operator name and resolution; leave it unless you have a naming collision.
Default: StreamDiffusionTD_512-512_1b0c7dd5
OSC port the operator listens on (backend to TD).
Default: 8576 Range: 1 - 65535
OSC port the operator sends on (TD to backend).
Default: 8588 Range: 1 - 65535
Additional Settings
Skip processing when the input is nearly identical to the previous frame.
Default: Off
Similarity threshold for the similar image filter.
Default: 0.9998 Slider: 0 - 1 (soft)
Maximum consecutive frames the similar image filter may skip.
Default: 10 Range: 0 - 10
Switch between image-to-image and text-to-image generation.
Default: img2img Options: img2img, txt2img
Warmup steps run at stream start before frames are produced.
Default: 10 Slider: 5 - 30 (soft)
Enable the NSFW safety checker.
Default: Off
Pass frames through the pipeline without running the diffusion step. Debugging aid.
Default: Off
Cap the stream frame rate. Applies live.
Default: 120 Slider: 1 - 120 (soft)
Frame buffer size for the denoising batch.
Default: 1 Slider: 0 - 1 (soft)
Add noise for the following denoising steps.
Default: On
Use denoising batch processing.
Default: On
Transport selector. Marked unused in this release; shared_mem is the active path.
Default: shared_mem Options: shared_mem, ndi
Settings 3
Outputs, UI, op config, model presets, and the TensorRT engine loader.
Read-only status line.
Default: Not Streaming
Op Create
Creates a base component with an independent timeline that advances at the stream rate, wired with the callback code for syncing to StreamDiffusionTD (onReceiveFrame must be On).
Outputs
What the CHOP on out2 carries: all channels or only backend channels.
Default: only_backend Options: all, only_backend
Which DAT out3 shows: logs, daydream_web_status, or local_backend_status.
Default: logs Options: logs, daydream_web_status, local_backend_status
Log level for the logs DAT on out3.
Default: Basic Options: Basic, All Logs, Errors Only
Display
Show the status icons in the top-left of the operator viewer (server state, mode, TensorRT / V2V / ControlNet active, FPS).
Default: On
Clear the error badges from the operator UI.
Op Configurations / Reset
When on, the operator saves its full configuration to a JSON file whenever the project is saved.
Default: Off
When on, the operator loads its saved configuration JSON on project load.
Default: Off
Full operator reset back to defaults.
Model Preset Configs
Saved model preset to act on. Presets store main SD model, ControlNet, LCM, VAE, LoRA models, and acceleration settings (model_presets.json in the install).
Default: Saved Model Configs Will Show Here Options: Saved Model Configs Will Show Here
Load the selected preset onto the operator.
Save the current model setup as a preset.
TensorRT Engines
Built TensorRT engines found in the current install.
Default: Empty
Load the selected engine’s parameters (model, step count, TensorRT settings) onto the operator so the stream reuses it instead of building.
Re-scan the engines folder and refresh the Select Engine menu.
FX Processors
Processor chain for image and latent processing. Full processor reference on the FX Processors page.
Custom Processors
Sync FX parameter changes to the running stream.
Default: On
FX processor chain. Each block selects a processor; its parameters are generated dynamically on the operator when added. Built-ins: feedback_loop and feedback_grade (image_pre, so their effects compound through feedback), plus hed_tensorrt, normal_bae_tensorrt, and scribble_tensorrt TensorRT preprocessor effects. Custom processors dropped in the Basefolder appear here too - see the FX Processors docs page.
Per block: Processor (StrMenu) [feedback_grade, feedback_loop, hed_tensorrt, normal_bae_tensorrt, scribble_tensorrt]
Re-scan available processors (built-in and custom) and refresh the menus.
ControlNet
Image conditioning. The ControlNet input image is the operator’s second TOP input. Note: the ControlNet cache controls (Cncacheinterval / Cncachedecay) live on the V2V page.
ControlNet
Master ControlNet toggle. Turn it On before starting the stream so ControlNet is baked into the engine; once streaming it can be toggled to control whether conditioning is applied. The ControlNet input image is the operator’s second TOP input.
Default: Off
ControlNet blocks. Each block has an Enable toggle, a Model ID (HuggingFace ID, local file, or the dropdown), a preprocessor, and a live Weight slider. Multiple blocks run multi-ControlNet.
Per block: Enable (Toggle); Model ID (StrMenu) [xinsir/controlnet-depth-sdxl-1.0, xinsir/controlnet-canny-sdxl-1.0, xinsir/controlnet-openpose-sdxl-1.0, xinsir/controlnet-scribble-sdxl-1.0]; preprocessor (Menu) [canny, depth_tensorrt, passthrough, pose_tensorrt, scribble_tensorrt]; Weight (Float) 0 - 1 (soft)
ControlNet Helpers
Automatically select the mapped preprocessor when a ControlNet model is chosen. Turn Off to set preprocessors manually, otherwise your selection is overridden.
Default: Off
Automatically update the ControlNet Model ID options to match the current main model architecture.
Default: On
Automatically update preprocessor parameters when the preprocessor changes.
Default: On
Update ControlNet options from par.Modelid.
Default: On
Send the ControlNet preprocessor output back to TD as a preview. Off by default: turning it on costs a GPU-to-CPU stall every frame.
Default: Off
Preprocessor Controls
V2V
StreamV2V cached attention, ControlNet caching, and Feature Injection. Everything here needs TensorRT.
Enable StreamV2V cached attention for temporal consistency. Baked into the engine: set it before starting the stream. Requires TensorRT and the tcd scheduler.
Default: Off
Frames held in the attention feature bank. More frames, more temporal consistency, more VRAM.
Default: 4 Range: 1 - 4
Commit one frame to the feature bank every N frames. v0.4.0 fixes the cache-slot latch that made this judder at FPS/interval in v0.3.1.
Default: 2 Range: 1 - 8
Run ControlNet once, reuse its residuals for the next N-1 frames. In v0.4.0 this actually applies on a live feed.
Default: 2 Range: 1 - 4
ControlNet residual cache easing on live video. 0.0 is the old feel (cache interval effectively off on a live feed). Above zero the cache interval is authoritative and the applied residual eases toward the newest computed one each frame; 1.0 snaps with no smoothing. Try 0.3 to 0.6.
Default: 0.0 Range: 0 - 1
StreamV2V Feature Injection. Build-time: changing it needs a stream reload (engine identity includes it).
Default: Off
Feature Injection blend strength. Updates live.
Default: 0.754 Range: 0 - 1
Similarity threshold for Feature Injection. Updates live.
Default: 0.98 Range: 0 - 1
Models
Model loading, acceleration, TensorRT build profile, LCM / VAE, and LoRA.
Download / Loading Models
Open the models folder in the file browser.
Models found in your models folders (from the model list JSON in the install). Selecting one sets Model Id.
Default: stabilityai/sdxl-turbo Options: select_working_model_from_dropdown, stabilityai/sd-turbo, prompthero/openjourney-v4, stabilityai/sdxl-turbo
Acceleration method. TensorRT is required for ControlNet, IP Adapter, and StreamV2V; the none path runs bare PyTorch and does not support them. xformers was removed in v0.4.0.
Default: tensorrt Options: none, tensorrt
Extra folder scanned for main SD model files.
Default: /models/Model
Override folder for TensorRT engines. Empty uses the default engines location inside the install.
Default: /engines/td
Build engines and exit without starting the stream. Useful for preparing engines ahead of a show.
Default: Off
Build any missing engines automatically when the stream starts.
Default: On
Lock the engine to a fixed resolution. Faster inference, no resolution changes without a rebuild. The TRT Profile menu sets this for you; the toggle is the manual override.
Default: Off
TensorRT build profile. flexible: dynamic resolution, FP16, best compatibility. quality: fixed resolution, FP16, full optimization. performance: fixed resolution, FP8 quantization, fastest inference (RTX 40-series and newer). fast_build: fixed resolution, FP16, roughly 2x faster engine builds. Changing profile rebuilds engines.
Default: fast_build Options: flexible, quality, performance, fast_build
FP8 quantization for engine builds (RTX 40-series and newer). The performance profile sets this; the toggle is the manual override.
Default: Off
LCM / VAE Selection
Noise scheduler. tcd is required for StreamV2V cached attention.
Default: lcm Options: lcm, tcd
Sigma sampling method for the step schedule.
Default: normal Options: simple, sgm_uniform, normal, ddim, beta
LCM-LoRA selection. auto picks based on model architecture. Use Skip LCM behavior for models with merged LCM weights.
Default: Empty Options: auto, latent-consistency/lcm-lora-sdv1-5, latent-consistency/lcm-lora-sdxl
VAE selection. auto picks based on model architecture; taesd variants are the fast tiny VAEs.
Default: auto Options: auto, madebyollin/taesd, madebyollin/taesdxl, stabilityai/sd-vae-ft-mse
LoRA Models Settings
Enable LoRA loading.
Default: Off
Folder scanned for LoRA files.
Default: \models\LoRA
Open the LoRA folder in the file browser.
LoRA blocks. Each block selects a LoRA (file path or dropdown) with a Weight. In v0.4.0 the weight is live: drag it mid-stream, no engine rebuild, including multiple LoRAs.
Per block: LoRA File Path (File); Select LoRA (Menu); Weight (Float) 0 - 1 (soft)
Callbacks
TouchDesigner callback functions fired by the operator.
Callbacks
DAT containing the callback functions.
Default: Empty
Open the callbacks DAT for editing.
Create the callbacks DAT next to the operator if it does not exist.
Fire onReceiveFrame when a new frame arrives from the stream.
Default: On
Fire onStreamStart when streaming starts.
Default: On
Fire onStreamEnd when streaming ends.
Default: On
Fire onFrameReady when a frame is ready for processing.
Default: On
Fire onImageChange when the input image changes.
Default: On
Print callback activity to the textport: None, Basic Info, or Full Details.
Default: None Options: None, Basic Info, Full Details
Install
Backend selection and installation. The full walkthrough is the Installation guide.
Installation and Update + Help
Local GPU processing or the Daydream hosted backend. Daydream needs no install: use the Daydream Login pulse that appears when it is selected.
Default: local Options: local, Daydream
Keep par.Modelid updated automatically when the backend changes.
Default: On
StreamDiffusion Install Location
Where StreamDiffusion is (or will be) installed on disk. Set once; the operator remembers the last install location on this machine and fills it in when dropped into a project.
Default: Empty
Installation Steps
Step 1. Downloads the pinned v0.4.0 repos, or offers Full Update / Fresh Install when an existing install is found.
Step 2. Builds the venv: PyTorch 2.11.0+cu128, cuda-link, and the rest of the stack. Required once per computer; wait for the console to finish.
Step 3. Installs TensorRT 10.16. Required for ControlNet, IP Adapter, and StreamV2V.
Other Install Options
No Cache Install
Disable pip caching during installation. Try this if the install hits dependency or hash errors.
Default: On
HF model cache: C:/Users/DotSimulate/.cache/huggingface/hub
Use a custom HuggingFace cache location.
Default: Off
The custom HuggingFace cache folder.
Default: /models
Activate Virtual Environment
Open a console with the install venv activated, for manual pip work and debugging (python -m sd_installer verify / repair / diagnose).
About
Version info, updates, and operator packaging.
Operator update action; the label shows current update state. Signed-in operators check for tox updates once every 24 hours.
Keep and load a separate user-modified copy of the operator, preserving your internal edits across backend switches and updates.
Default: Off
Operator version.
Default: 0.4.0
Operator build date.
Default: 08/22/2026
Show the TouchDesigner built-in parameter pages on the operator.
Default: Off
Package the operator into a lightweight loader stub for sharing a project file without the full operator inside it.
TensorRT Engine Behavior (v0.4.0)
The engine identity includes: model, ControlNet on/off, IP Adapter on/off, Feature Injection on/off, TRT Profile, TensorRT version, and GPU. Changing any of these builds a new engine (old engine folders stay).
With the flexible profile (default): resolution changes freely from 256-1024px and step count changes freely, no rebuild.
With static-shape profiles (quality / performance / fast_build): the engine is locked to its build resolution.
First ControlNet stream in v0.4.0 rebuilds the ControlNet engine once - the cache key now includes TensorRT version and GPU. That is expected.
StreamV2V: cached attention engines are locked to their build resolution regardless of profile.