Nodes/ComfyUI Web Viewer/QR Code Generator @ vrch.ai
ComfyUI Node

QR Code Generator @ vrch.ai

Point a phone at the screen, get your viewer URL

By VrchStudio·Created 2 years ago·Updated 22 days ago· 356
QR Code Generator @ vrch.ai
    • QR_CODE
    text
    size256
    error_correctionM
    border2
    debugfalse

    The QR Code Generator from the ComfyUI Web Viewer pack exists for one moment: you're doing something live, the output is on a big screen, and you want everyone's phone pointed at it. You feed this node the URL of your web viewer, it renders a QR code as an image, and the room scans it instead of typing a URL that ends in a port number. It sounds like a party trick until you've done a show with it - then it feels like the most practical node in the box.

    How it works

    Under the hood it uses the qrcode[pil] library that the pack's requirements.txt installs, so there's no model download and nothing clever going on. You give it text, it gives you back an IMAGE you can show, save, or project. The inputs are exactly what a QR encoder needs:

    • text - the string to encode. For this pack the natural move is to wire it from the URL output of a Web Viewer or WebSocket Viewer node, so the QR always points at your current viewer.
    • size - output resolution in pixels, 64–1024, default 256. 256 is fine for a thumbnail; bump it if the QR is going on a wall.
    • error_correction - L, M, Q, or H. This is the setting that actually matters in the real world: higher levels survive more damage and more glare, at the cost of a denser pattern. M is the default; for stage lighting or any display that isn't a clean monitor, H is a lot less frustrating.
    • border - quiet-zone width in modules, default 2. Leave it at least 2; QR scanners need that empty margin or they fail on perfectly good codes.

    The single QR_CODE output is a standard ComfyUI IMAGE, so it flows into Save Image, a Web Viewer node, or a compositing stack the same as any render.

    Where it fits

    Think of it as the final hop in an interactive pipeline. The web viewer gives you a URL; this node turns that URL into something an audience can physically enter. For the pack's live-control world - gamepad portraits, OSC-driven visuals, a flipbook viewer running on a projector - putting a QR on the corner of the screen is how spectators get the same view on their own devices. It also works for mundane things like embedding a model card link or a settings page into an image you're about to send someone.

    Installing it

    It's one node in the pack, installed the usual way:

    1. ComfyUI Manager → search ComfyUI Web Viewer → install.
    2. Manual:
      cd ComfyUI/custom_nodes
      git clone https://github.com/VrchStudio/comfyui-web-viewer
      pip install -r requirements.txt
      
      Windows portable: python_embeded\python.exe -m pip install -r ComfyUI\custom_nodes\comfyui-web-viewer\requirements.txt.
    3. Restart ComfyUI.

    The QR library comes along in that requirements file. First install is slow because the file also pulls the optional Music2Emotion stack (librosa, pytorch_lightning, numba), but nothing about that touches this node.

    Gotchas worth knowing

    Keep the error_correction at H for anything projected or backlit - a scanner that can't read your code at the exact moment the room is watching is the one failure mode that actually hurts. And remember the QR is only as good as its URL: if the ComfyUI server is on a LAN IP that phones can't reach (or a self-signed TLS host they won't trust), the code scans fine and then nothing loads. Test it from a phone on the same network before you commit to the bit.

    Categoryvrch.ai/logic

    Inputs (5)

    NameTypeDefaultDescription
    textSTRING
    sizeINT25664–1024
    error_correctionCOMBOM4 options: L, M, Q, H
    borderINT20–20
    debugBOOLEANfalse

    Outputs (1)

    NameTypeDescription
    QR_CODEIMAGE