Nodes/ComfyUI-Stream-Pack/SR Model Loader
ComfyUI Node

SR Model Loader

Classic SR models, downloaded on demand — nothing to hunt down

By livepeer·Created 2 years ago·Updated 11 months ago· 22
SR Model Loader
    • sr_model
    model_typeFSRCNN
    scale_factor2

    SR Model Loader is the boring-but-necessary front half of the Stream Pack's upscaling pair: it picks a super-resolution model, downloads it on first use, and hands it to the SR Upscale node as an SR_MODEL. If you've used ComfyUI for a while you're used to hunting for model files and dropping them into folders; this one does the fetching for you, so the first time you wire it up is the only time you touch a network request.

    Know what these models are before you get excited. FSRCNN, ESPCN, EDSR, LapSRN and VDSR are the classic CNN super-resolution family (2015–2017 era, OpenCV's built-in dnn_superres lineage) - the "add pixels, add nothing else" rung of upscaling. They don't invent detail the way SUPIR or SeedVR2 do, and they're nowhere near those on quality for a finished still. What they have is speed: these are the models you pick when you need 2–4x on a live stream frame-by-frame, where a generative upscaler at even a few seconds per frame would destroy the whole point of real-time. The KB's upscaling framing nails it - pick the tool by which job you're doing, and for "more pixels over time," classic SR is the realistic answer in a streaming graph.

    How it works

    Under the hood it's a model config registry plus an on-demand downloader. Each model family has a known filename pattern - FSRCNN_x2.pb, EDSR_x4.pb, and so on - and a download URL pointing at ryanontheinside's TensorFlow model repos. On first use it pulls the file into the pack's downloaded_models/<FAMILY>/ directory, then loads it through OpenCV's DNN super-resolution reader. The .pb files are small (a few MB each - these are old, lean CNNs, not diffusion checkpoints), so first-run stalls are seconds, not the multi-GB wait you get with a Whisper or SR-ESRGAN download.

    The inputs that matter

    • model_type - the author's own descriptions, straight from the node:
      • FSRCNN - good balance of quality and speed (the default)
      • FSRCNN-small - fastest, lower quality
      • ESPCN - efficient for text and line art
      • LapSRN - better edge preservation
      • EDSR - highest quality, slower
      • VDSR - very deep SR, sharp edge reconstruction
    • scale_factor - 2, 3, or 4 (the author's examples: 512→1024, 512→1536, 512→2048). Pick it at load time; the model is built for exactly one scale.

    Output: a single SR_MODEL reference - there's nothing to see in it directly. Wire it into the sr_model input of SR Upscale.

    Installing

    It ships in livepeer/ComfyUI-Stream-Pack, so you install the pack once: ComfyUI Manager → search "ComfyUI-Stream-Pack", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/livepeer/ComfyUI-Stream-Pack
    # restart ComfyUI
    

    The dependency that actually matters here is opencv-contrib-python>=4.8.0 (pinned in the pack's requirements.txt) - the dnn_superres module lives in the contrib build, not plain opencv-python, so if OpenCV is already installed the wrong way you'll get AttributeError: module 'cv2' has no attribute 'dnn_superres'. If that happens, pip install --upgrade opencv-contrib-python and restart.

    Where people get burned

    • Models download on first load, and only if the network works. If a run fails with a file-not-found on FSRCNN_x2.pb, the fetch failed - check that the pack can reach raw.githubusercontent.com, then rerun.
    • The node is just a loader. It doesn't upscale anything. Expect to see nothing from it on its own; the SR Upscale node is where the visible work happens.
    • Don't expect modern generative quality. On a clean, already-detailed source these look fine and can't hallucinate; on a soft low-res mess they'll just make it a bigger soft mess. That's the trade you're signing up for with real-time speed.
    CategoryStreamPack/SuperResolution

    Inputs (2)

    NameTypeDefaultDescription
    model_typeCOMBOFSRCNNSelect super resolution model type: • FSRCNN: Good balance of quality and speed • FSRCNN-small: Fastest, lower quality option • ESPCN: Efficient for text and line art • LapSRN: Better edge preservation • EDSR: Highest quality, slower processing • VDSR: Very Deep SR with sharp edge reconstruction
    scale_factorCOMBO2Upscaling factor: • 2: Double resolution (e.g., 512x512 → 1024x1024) • 3: Triple resolution (e.g., 512x512 → 1536x1536) • 4: Quadruple resolution (e.g., 512x512 → 2048x2048)

    Outputs (1)

    NameTypeDescription
    sr_modelSR_MODEL