{
  "id": "d66dedb4-ed78-4b75-b7bf-4814fd4ab600",
  "revision": 0,
  "last_node_id": 73,
  "last_link_id": 101,
  "nodes": [
    {
      "id": 6,
      "type": "GetNode",
      "pos": [
        2150,
        -2250
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true
      },
      "order": 0,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "INT",
          "type": "INT",
          "links": [
            73
          ]
        }
      ],
      "title": "Get_Seed",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Seed"
      ],
      "widgets_values_named": {
        "Constant": "Seed"
      },
      "color": "#1b4669",
      "bgcolor": "#29699c"
    },
    {
      "id": 11,
      "type": "Fast Groups Bypasser (rgthree)",
      "pos": [
        2150,
        -2350
      ],
      "size": [
        220,
        60
      ],
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "label": "🤫",
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "title": "Relay Bypasser",
      "properties": {
        "matchColors": "",
        "matchTitle": "#Relay Upscale Video",
        "showNav": false,
        "showAllGraphs": true,
        "sort": "position",
        "customSortAlphabet": "",
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 12,
      "type": "GetNode",
      "pos": [
        2150,
        -2210
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true
      },
      "order": 2,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            72,
            95
          ]
        }
      ],
      "title": "Get_Org Video",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Org Video"
      ],
      "widgets_values_named": {
        "Constant": "Org Video"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 13,
      "type": "LCLoadVideo",
      "pos": [
        1670,
        -2400
      ],
      "size": [
        270,
        330
      ],
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": [
            55
          ]
        },
        {
          "name": "audio",
          "type": "AUDIO",
          "links": [
            53
          ]
        },
        {
          "name": "fps",
          "type": "FLOAT",
          "links": [
            54
          ]
        },
        {
          "name": "frame_count",
          "type": "INT",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_AV_nodes",
        "ver": "23ab7e5f491f9d01fe37e024791bcd0bf3f0757b",
        "Node name for S&R": "LCLoadVideo",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "\"H:\\ComfyUI\\output\\Videos\\Minimax_2026-09-17_00006.mp4\""
      ],
      "widgets_values_named": {
        "path": "\"H:\\ComfyUI\\output\\Videos\\Minimax_2026-09-17_00006.mp4\""
      },
      "color": "#1a5a7a",
      "bgcolor": "#1a5a7a"
    },
    {
      "id": 15,
      "type": "LoadImage",
      "pos": [
        1670,
        -3110
      ],
      "size": [
        350,
        510
      ],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            52,
            84
          ]
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.44.0",
        "Node name for S&R": "LoadImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Lonecats Krea2 Pro_00040.png",
        "image"
      ],
      "widgets_values_named": {
        "image": "Lonecats Krea2 Pro_00040.png",
        "upload": "image"
      },
      "color": "#233",
      "bgcolor": "#355"
    },
    {
      "id": 20,
      "type": "LCSeed",
      "pos": [
        1200,
        -2960
      ],
      "size": [
        270,
        130
      ],
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "seed",
          "type": "INT",
          "links": [
            17
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCSeed",
        "lc_seed_history": [
          8675309,
          8675310,
          8675309
        ],
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        8675309,
        "",
        "",
        "— last used seeds —"
      ],
      "widgets_values_named": {
        "base_seed": 8675309,
        "🎲 Randomize Each Time": "",
        "🎲 New Fixed Random": "",
        "seed history": "— last used seeds —"
      },
      "color": "#822305",
      "bgcolor": "#822305"
    },
    {
      "id": 21,
      "type": "SetNode",
      "pos": [
        1490,
        -2960
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true
      },
      "order": 27,
      "mode": 0,
      "inputs": [
        {
          "name": "INT",
          "type": "INT",
          "link": 17
        }
      ],
      "outputs": [
        {
          "name": "INT",
          "type": "INT",
          "links": null
        }
      ],
      "title": "Set_Seed",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Seed",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Seed"
      ],
      "widgets_values_named": {
        "Constant": "Seed"
      },
      "color": "#1b4669",
      "bgcolor": "#29699c"
    },
    {
      "id": 27,
      "type": "SetNode",
      "pos": [
        2040,
        -3110
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true
      },
      "order": 26,
      "mode": 0,
      "inputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "link": 52
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": null
        }
      ],
      "title": "Set_org image",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "org image",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "org image"
      ],
      "widgets_values_named": {
        "Constant": "org image"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 28,
      "type": "LCBatchImageComparer",
      "pos": [
        3080,
        -3070
      ],
      "size": [
        380,
        540
      ],
      "flags": {},
      "order": 36,
      "mode": 0,
      "inputs": [
        {
          "label": "Before",
          "name": "image_a",
          "shape": 7,
          "type": "IMAGE",
          "link": 34
        },
        {
          "label": "After Relay",
          "name": "image_b",
          "shape": 7,
          "type": "IMAGE",
          "link": 71
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCBatchImageComparer",
        "comparer_mode": "Slide",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 33,
      "type": "GetNode",
      "pos": [
        2210,
        -2970
      ],
      "size": [
        210,
        40
      ],
      "flags": {
        "collapsed": true
      },
      "order": 6,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "INT",
          "type": "INT",
          "links": [
            68
          ]
        }
      ],
      "title": "Get_Seed",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Seed"
      ],
      "widgets_values_named": {
        "Constant": "Seed"
      },
      "color": "#1b4669",
      "bgcolor": "#29699c"
    },
    {
      "id": 36,
      "type": "SetNode",
      "pos": [
        2210,
        -2890
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true
      },
      "order": 35,
      "mode": 0,
      "inputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "link": 70
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": []
        }
      ],
      "title": "Set_Relay Image",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Relay Image",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Relay Image"
      ],
      "widgets_values_named": {
        "Constant": "Relay Image"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 38,
      "type": "Fast Groups Bypasser (rgthree)",
      "pos": [
        2210,
        -3070
      ],
      "size": [
        220,
        60
      ],
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "label": "🤫",
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": []
        }
      ],
      "title": "Relay Bypasser",
      "properties": {
        "matchColors": "",
        "matchTitle": "#Relay Upscale Image",
        "showNav": false,
        "showAllGraphs": true,
        "sort": "position",
        "customSortAlphabet": "",
        "toggleRestriction": "default",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#c3782d",
      "bgcolor": "#af6419"
    },
    {
      "id": 39,
      "type": "GetNode",
      "pos": [
        2210,
        -2930
      ],
      "size": [
        210,
        50
      ],
      "flags": {
        "collapsed": true
      },
      "order": 8,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            34,
            67,
            99
          ]
        }
      ],
      "title": "Get_org image",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "org image"
      ],
      "widgets_values_named": {
        "Constant": "org image"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 40,
      "type": "SetNode",
      "pos": [
        1960,
        -2350
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true
      },
      "order": 24,
      "mode": 0,
      "inputs": [
        {
          "name": "AUDIO",
          "type": "AUDIO",
          "link": 53
        }
      ],
      "outputs": [
        {
          "name": "AUDIO",
          "type": "AUDIO",
          "links": null
        }
      ],
      "title": "Set_Audio",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Audio",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Audio"
      ],
      "widgets_values_named": {
        "Constant": "Audio"
      }
    },
    {
      "id": 41,
      "type": "SetNode",
      "pos": [
        1970,
        -2310
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true
      },
      "order": 25,
      "mode": 0,
      "inputs": [
        {
          "name": "FLOAT",
          "type": "FLOAT",
          "link": 54
        }
      ],
      "outputs": [
        {
          "name": "FLOAT",
          "type": "FLOAT",
          "links": []
        }
      ],
      "title": "Set_FPS",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "FPS",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "FPS"
      ],
      "widgets_values_named": {
        "Constant": "FPS"
      },
      "color": "#232",
      "bgcolor": "#353"
    },
    {
      "id": 42,
      "type": "SetNode",
      "pos": [
        1970,
        -2390
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true
      },
      "order": 23,
      "mode": 0,
      "inputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "link": 55
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": null
        }
      ],
      "title": "Set_Org Video",
      "properties": {
        "Node name for S&R": "SetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "previousName": "Org Video",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Org Video"
      ],
      "widgets_values_named": {
        "Constant": "Org Video"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 43,
      "type": "GetNode",
      "pos": [
        2150,
        -2170
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true
      },
      "order": 9,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "AUDIO",
          "type": "AUDIO",
          "links": [
            96
          ]
        }
      ],
      "title": "Get_Audio",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Audio"
      ],
      "widgets_values_named": {
        "Constant": "Audio"
      },
      "color": "#322",
      "bgcolor": "#533"
    },
    {
      "id": 44,
      "type": "GetNode",
      "pos": [
        2150,
        -2130
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true
      },
      "order": 10,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "FLOAT",
          "type": "FLOAT",
          "links": [
            97
          ]
        }
      ],
      "title": "Get_FPS",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "FPS"
      ],
      "widgets_values_named": {
        "Constant": "FPS"
      },
      "color": "#232",
      "bgcolor": "#353"
    },
    {
      "id": 45,
      "type": "GetNode",
      "pos": [
        3480,
        -3100
      ],
      "size": [
        210,
        60
      ],
      "flags": {
        "collapsed": true
      },
      "order": 11,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            59
          ]
        }
      ],
      "title": "Get_Relay Image",
      "properties": {
        "Node name for S&R": "GetNode",
        "aux_id": "kijai/ComfyUI-KJNodes",
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "Relay Image"
      ],
      "widgets_values_named": {
        "Constant": "Relay Image"
      },
      "color": "#2a363b",
      "bgcolor": "#3f5159"
    },
    {
      "id": 46,
      "type": "LCEasyFolder",
      "pos": [
        2730,
        -2350
      ],
      "size": [
        300,
        160
      ],
      "flags": {},
      "order": 12,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "filename_prefix",
          "type": "STRING",
          "links": [
            98
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCEasyFolder",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Relay",
        "Video Test",
        "",
        "none",
        "auto"
      ],
      "widgets_values_named": {
        "folder": "Relay",
        "prefix": "Video Test",
        "suffix": "",
        "timestamp": "none",
        "path_separator": "auto"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 47,
      "type": "LCEasyFolder",
      "pos": [
        3480,
        -3060
      ],
      "size": [
        300,
        160
      ],
      "flags": {},
      "order": 13,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "filename_prefix",
          "type": "STRING",
          "links": [
            60,
            81
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCEasyFolder",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Relay",
        "Image Test",
        "",
        "none",
        "auto"
      ],
      "widgets_values_named": {
        "folder": "Relay",
        "prefix": "Image Test",
        "suffix": "",
        "timestamp": "none",
        "path_separator": "auto"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 48,
      "type": "SaveImage",
      "pos": [
        3790,
        -3100
      ],
      "size": [
        390,
        560
      ],
      "flags": {},
      "order": 29,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 59
        },
        {
          "name": "filename_prefix",
          "type": "STRING",
          "widget": {
            "name": "filename_prefix"
          },
          "link": 60
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": [
            85
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.44.0",
        "Node name for S&R": "SaveImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "ComfyUI"
      ],
      "widgets_values_named": {
        "filename_prefix": "ComfyUI"
      },
      "color": "#233",
      "bgcolor": "#355"
    },
    {
      "id": 49,
      "type": "Fast Groups Bypasser (rgthree)",
      "pos": [
        1200,
        -3110
      ],
      "size": [
        320,
        100
      ],
      "flags": {},
      "order": 14,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "OPT_CONNECTION",
          "type": "*",
          "links": null
        }
      ],
      "properties": {
        "matchColors": "",
        "matchTitle": ":",
        "showNav": false,
        "showAllGraphs": true,
        "sort": "position",
        "customSortAlphabet": "",
        "toggleRestriction": "always one",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#c87a2c",
      "bgcolor": "#b46618"
    },
    {
      "id": 50,
      "type": "LCTimer",
      "pos": [
        1200,
        -2780
      ],
      "size": [
        300,
        250
      ],
      "flags": {},
      "order": 15,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCTimer",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_runs": [
          {
            "t": 12.64,
            "at": "15:44",
            "ok": true
          },
          {
            "t": 1.3,
            "at": "15:46",
            "ok": true
          },
          {
            "t": 34.39,
            "at": "15:47",
            "ok": false
          },
          {
            "t": 0.8,
            "at": "15:49",
            "ok": true
          },
          {
            "t": 5.27,
            "at": "15:50",
            "ok": true
          },
          {
            "t": 5.37,
            "at": "15:50",
            "ok": true
          },
          {
            "t": 2.05,
            "at": "15:52",
            "ok": true
          },
          {
            "t": 2.92,
            "at": "15:52",
            "ok": true
          },
          {
            "t": 73.64,
            "at": "16:12",
            "ok": true
          },
          {
            "t": 0.78,
            "at": "16:13",
            "ok": true
          },
          {
            "t": 74.34,
            "at": "18:52",
            "ok": true
          },
          {
            "t": 74.72,
            "at": "18:59",
            "ok": true
          },
          {
            "t": 2.85,
            "at": "19:03",
            "ok": true
          },
          {
            "t": 16.47,
            "at": "19:39",
            "ok": false
          },
          {
            "t": 49.13,
            "at": "19:42",
            "ok": true
          },
          {
            "t": 2.93,
            "at": "19:42",
            "ok": true
          },
          {
            "t": 6.93,
            "at": "18:17",
            "ok": true
          },
          {
            "t": 0.89,
            "at": "18:18",
            "ok": true
          },
          {
            "t": 0.79,
            "at": "18:19",
            "ok": true
          },
          {
            "t": 7.65,
            "at": "18:19",
            "ok": true
          }
        ]
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_rt": ""
      },
      "color": "#000000",
      "bgcolor": "#000000"
    },
    {
      "id": 52,
      "type": "LCLabel",
      "pos": [
        1800,
        -3340
      ],
      "size": [
        1159,
        131
      ],
      "flags": {},
      "order": 16,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "Relay VSR Upscale Module\n",
        "font": "Oswald",
        "size": 107,
        "bold": true,
        "italic": false,
        "color": "#ffffff",
        "align": "center",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 0,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCLabel",
        "_w": 1159,
        "_h": 131,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 57,
      "type": "LCRelayVSRUpscale",
      "pos": [
        2760,
        -3030
      ],
      "size": [
        300,
        250
      ],
      "flags": {},
      "order": 32,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 67
        },
        {
          "name": "protect_mask",
          "shape": 7,
          "type": "MASK",
          "link": 100
        },
        {
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 68
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            70,
            71
          ]
        },
        {
          "name": "relay",
          "type": "LC_RELAY",
          "links": []
        },
        {
          "name": "protected",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "0.29.8",
        "Node name for S&R": "LCRelayVSRUpscale",
        "ue_properties": {
          "widget_ue_connectable": {
            "seed": true
          },
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "image",
        "2x",
        8675309,
        "fixed",
        1,
        0.5,
        true
      ],
      "widgets_values_named": {
        "source": "image",
        "upscale": "2x",
        "seed": 8675309,
        "control_after_generate": "fixed",
        "detail": 1,
        "mask_protect_strength": 0.5,
        "detect_faces": true
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 58,
      "type": "LCRelayVSRUpscale",
      "pos": [
        2390,
        -2310
      ],
      "size": [
        320,
        250
      ],
      "flags": {},
      "order": 22,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 72
        },
        {
          "name": "protect_mask",
          "shape": 7,
          "type": "MASK",
          "link": null
        },
        {
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          },
          "link": 73
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": []
        },
        {
          "name": "relay",
          "type": "LC_RELAY",
          "links": [
            94
          ]
        },
        {
          "name": "protected",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "0.29.8",
        "Node name for S&R": "LCRelayVSRUpscale",
        "ue_properties": {
          "widget_ue_connectable": {
            "seed": true
          },
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "video",
        "2x",
        8675309,
        "fixed",
        1,
        0.5,
        true
      ],
      "widgets_values_named": {
        "source": "video",
        "upscale": "2x",
        "seed": 8675309,
        "control_after_generate": "fixed",
        "detail": 1,
        "mask_protect_strength": 0.5,
        "detect_faces": true
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 59,
      "type": "LCLabel",
      "pos": [
        3000,
        -3330
      ],
      "size": [
        262,
        121
      ],
      "flags": {},
      "order": 17,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "text": "V3.0.2",
        "font": "Oswald",
        "size": 98,
        "bold": true,
        "italic": false,
        "color": "#4da3ff",
        "align": "left",
        "outline": false,
        "outlineColor": "#000000",
        "outlineWidth": 4,
        "shadow": false,
        "shadowBlur": 10,
        "bg": false,
        "bgColor": "#324B4B",
        "radius": 12,
        "padding": 8,
        "angle": 0,
        "width": 0,
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCLabel",
        "_w": 262,
        "_h": 121,
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 61,
      "type": "LCTextOverlay",
      "pos": [
        4560,
        -3100
      ],
      "size": [
        300,
        640
      ],
      "flags": {},
      "order": 37,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 86
        }
      ],
      "outputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "links": [
            79
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCTextOverlay",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        },
        "lc_overlay_text": "Before         After",
        "lc_preview_meta": [
          {
            "filename": "lc_before_temp_kghcp_00002_.png",
            "subfolder": "",
            "type": "temp",
            "metadata": {
              "kind": "image",
              "width": 2144,
              "height": 2704
            },
            "id": "30f22e23-b89e-47af-a481-00a42be6c40b"
          }
        ]
      },
      "widgets_values": [
        "Before         After",
        "Arial",
        110,
        255,
        255,
        255,
        50.3,
        85.5,
        "center"
      ],
      "widgets_values_named": {
        "text": "Before         After",
        "font": "Arial",
        "font_size": 110,
        "color_r": 255,
        "color_g": 255,
        "color_b": 255,
        "x_percent": 50.3,
        "y_percent": 85.5,
        "alignment": "center"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 62,
      "type": "SaveImage",
      "pos": [
        4880,
        -3010
      ],
      "size": [
        230,
        350
      ],
      "flags": {},
      "order": 38,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 79
        },
        {
          "name": "filename_prefix",
          "type": "STRING",
          "widget": {
            "name": "filename_prefix"
          },
          "link": 82
        }
      ],
      "outputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.44.0",
        "Node name for S&R": "SaveImage",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "ComfyUI"
      ],
      "widgets_values_named": {
        "filename_prefix": "ComfyUI"
      },
      "color": "#233",
      "bgcolor": "#355"
    },
    {
      "id": 63,
      "type": "PrimitiveString",
      "pos": [
        4870,
        -3060
      ],
      "size": [
        270,
        60
      ],
      "flags": {
        "collapsed": true
      },
      "order": 18,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "STRING",
          "type": "STRING",
          "links": [
            80
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.44.0",
        "Node name for S&R": "PrimitiveString",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "Stitch"
      ],
      "widgets_values_named": {
        "value": "Stitch"
      }
    },
    {
      "id": 64,
      "type": "LCJoinStrings",
      "pos": [
        4870,
        -3100
      ],
      "size": [
        330,
        130
      ],
      "flags": {
        "collapsed": true
      },
      "order": 30,
      "mode": 0,
      "inputs": [
        {
          "name": "string_1",
          "shape": 7,
          "type": "STRING",
          "link": 80
        },
        {
          "name": "string_2",
          "shape": 7,
          "type": "STRING",
          "link": 81
        }
      ],
      "outputs": [
        {
          "name": "string",
          "type": "STRING",
          "links": [
            82
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCJoinStrings",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        2,
        " "
      ],
      "widgets_values_named": {
        "inputcount": 2,
        "delimiter": " "
      },
      "color": "#28281E",
      "bgcolor": "#28281E"
    },
    {
      "id": 65,
      "type": "LCImageSplit",
      "pos": [
        4250,
        -3100
      ],
      "size": [
        300,
        500
      ],
      "flags": {},
      "order": 34,
      "mode": 0,
      "inputs": [
        {
          "name": "image_a",
          "type": "IMAGE",
          "link": 84
        },
        {
          "name": "image_b",
          "type": "IMAGE",
          "link": 85
        }
      ],
      "outputs": [
        {
          "name": "split 🖼️",
          "type": "IMAGE",
          "links": [
            86
          ]
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCImageSplit",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        0.5,
        true,
        5,
        "#FFFFFF"
      ],
      "widgets_values_named": {
        "split_position": 0.5,
        "show_divider": true,
        "divider_width": 5,
        "divider_color": "#FFFFFF"
      },
      "color": "#324B4B",
      "bgcolor": "#324B4B"
    },
    {
      "id": 68,
      "type": "LCNote",
      "pos": [
        2730,
        -2150
      ],
      "size": [
        300,
        400
      ],
      "flags": {},
      "order": 19,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "## Save💾\n\n**LC Save Video**\n\n- **relay**: Takes the output and saves the video a few frames at a time, straight to the file. The whole upscaled video never sits in RAM.\n    - 5 s clip at 4x: **0.3 GB** of RAM instead of **12 GB**.\n- Leave the Relay node's **image** output empty, or the full video gets built anyway.\n\n\n\n**When bypassing**\n- bypass the Relay group and LC Save Video saves the original video from **images** instead. Same save node, nothing to rewire.\n\n- **save_metadata** puts the workflow in the mp4, so CivitAI can find your resources.\n\n**Settings ⚙️**\n\n- **crf:** 19 looks like the source. Lower = better and bigger.\n- **pingpong** and **loop_count** are skipped for a relay video.\n\n"
            },
            "zh": {
              "text": "## 保存💾\n\n**LC 保存视频**\n\n- **relay**：逐帧将输出直接保存到文件，整个超分辨率视频不会占用内存。\n    - 5秒4倍速视频：仅需 **0.3 GB** 内存，而非 **12 GB**。\n- 若 Relay 节点的 **image** 输出留空，则仍会完整生成整段视频。\n\n---\n\n**当绕过时**\n- 绕过 Relay 组后，LC 保存视频将从 **images** 直接保存原始视频。同一保存节点，无需重新布线。\n\n- **save_metadata** 将工作流嵌入 mp4 文件，以便 CivitAI 能识别你的资源。\n\n---\n\n**设置 ⚙️**\n\n- **crf**：19 看起来与源视频一致。数值越低，画质越好但文件越大。\n- 对于 relay 视频，**pingpong** 和 **loop_count** 设置将被跳过。",
              "src": "e76fffde",
              "srcTitle": ""
            },
            "zh-TW": {
              "text": "## 儲存💾\n\n**LC 儲存影片**\n\n- **relay**：將輸出逐幀儲存至檔案，不讓整個上採樣後的影片停留在記憶體中。\n    - 5 秒片段以 4x 上採樣：僅需 **0.3 GB** 記憶體，而非 **12 GB**。\n- 若 Relay 節點的 **image** 輸出留空，則仍會完整建立影片。\n\n---\n\n**當繞過時**\n- 繞過 Relay 群組後，LC 儲存影片將直接從 **images** 儲存原始影片。同一儲存節點，無需重新接線。\n\n- **save_metadata** 會將工作流程嵌入 mp4 檔案，讓 CivitAI 可搜尋到你的資源。\n\n---\n\n**設定 ⚙️**\n\n- **crf**：19 看起來與原始影片相近。數值越低 = 質量越好、檔案越大。\n- 對於 relay 影片，**pingpong** 和 **loop_count** 設定將被跳過。",
              "src": "e76fffde",
              "srcTitle": ""
            },
            "ja": {
              "text": "## 保存💾\n\n**LC Save Video**\n\n- **relay**: 出力を受け取り、フレームごとにファイルに直接書き込み。アップスケールされた動画全体がRAMに一時的に残らない。\n    - 4xで5秒のクリップ：**0.3 GB** のRAM（通常は**12 GB**）。\n- リレー・ノードの **image** 出力を空にしないと、動画全体が無条件に作成される。\n\n---\n\n**バイトパス時**\n- リレー・グループをバイパスすると、LC Save Video は **images** から元の動画を保存する。同じ保存ノードで、配線を変更する必要はない。\n\n- **save_metadata** はワークフロー情報をMP4に埋め込み、CivitAIがリソースを検索できるようにする。\n\n---\n\n**設定 ⚙️**\n\n- **crf:** 19は元の動画とほぼ同じ品質。低い値ほど品質は高くなりますが、ファイルサイズも大きくなる。\n- リレー・ビデオでは **pingpong** と **loop_count** は無視される。",
              "src": "e76fffde",
              "srcTitle": ""
            },
            "ko": {
              "text": "## 저장💾\n\n**LC Save Video**\n\n- **relay**: 출력을 받아 몇 프레임씩 직접 파일에 저장합니다. 확대된 전체 영상은 RAM에 한 번도 저장되지 않습니다.\n    - 4x 확대 5초 영상: **0.3 GB**의 RAM 대신 **12 GB** 사용.\n- Relay 노드의 **image** 출력을 빈 값으로 두어야만 전체 영상이 생성되지 않습니다.\n\n---\n\n**바이패스 시**\n- Relay 그룹을 우회하면 LC Save Video는 **images**에서 원본 영상을 저장합니다. 동일한 저장 노드이며, 재연결할 필요 없음.\n\n- **save_metadata**: 작업 흐름을 mp4에 포함시켜 CivitAI가 자원을 찾을 수 있도록 합니다.\n\n---\n\n**설정 ⚙️**\n\n- **crf:** 19는 원본과 유사한 품질입니다. 낮을수록 품질은 좋고 파일 크기는 커집니다.\n- **pingpong** 및 **loop_count**는 릴레이 영상에서는 무시됩니다.",
              "src": "e76fffde",
              "srcTitle": ""
            }
          },
          "titles": {}
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "## Save💾\n\n**LC Save Video**\n\n- **relay**: Takes the output and saves the video a few frames at a time, straight to the file. The whole upscaled video never sits in RAM.\n    - 5 s clip at 4x: **0.3 GB** of RAM instead of **12 GB**.\n- Leave the Relay node's **image** output empty, or the full video gets built anyway.\n\n\n\n**When bypassing**\n- bypass the Relay group and LC Save Video saves the original video from **images** instead. Same save node, nothing to rewire.\n\n- **save_metadata** puts the workflow in the mp4, so CivitAI can find your resources.\n\n**Settings ⚙️**\n\n- **crf:** 19 looks like the source. Lower = better and bigger.\n- **pingpong** and **loop_count** are skipped for a relay video.\n\n"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "## Save💾\n\n**LC Save Video**\n\n- **relay**: Takes the output and saves the video a few frames at a time, straight to the file. The whole upscaled video never sits in RAM.\n    - 5 s clip at 4x: **0.3 GB** of RAM instead of **12 GB**.\n- Leave the Relay node's **image** output empty, or the full video gets built anyway.\n\n\n\n**When bypassing**\n- bypass the Relay group and LC Save Video saves the original video from **images** instead. Same save node, nothing to rewire.\n\n- **save_metadata** puts the workflow in the mp4, so CivitAI can find your resources.\n\n**Settings ⚙️**\n\n- **crf:** 19 looks like the source. Lower = better and bigger.\n- **pingpong** and **loop_count** are skipped for a relay video.\n\n"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    },
    {
      "id": 69,
      "type": "LCSaveVideo",
      "pos": [
        3040,
        -2350
      ],
      "size": [
        300,
        780
      ],
      "flags": {},
      "order": 31,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "shape": 7,
          "type": "IMAGE",
          "link": 95
        },
        {
          "name": "audio",
          "shape": 7,
          "type": "AUDIO",
          "link": 96
        },
        {
          "name": "av_pipe",
          "shape": 7,
          "type": "LC_AV_PIPE",
          "link": null
        },
        {
          "name": "metadata",
          "shape": 7,
          "type": "LC_SAVE_META,LC_SAVE_VIDEO_META",
          "link": null
        },
        {
          "name": "relay",
          "shape": 7,
          "type": "LC_RELAY",
          "link": 94
        },
        {
          "name": "frame_rate",
          "type": "FLOAT",
          "widget": {
            "name": "frame_rate"
          },
          "link": 97
        },
        {
          "name": "filename_prefix",
          "type": "STRING",
          "widget": {
            "name": "filename_prefix"
          },
          "link": 98
        }
      ],
      "outputs": [
        {
          "name": "saved_as",
          "type": "STRING",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_AV_nodes",
        "ver": "0.5.21",
        "Node name for S&R": "LCSaveVideo",
        "ue_properties": {
          "widget_ue_connectable": {
            "frame_rate": true,
            "loop_count": true,
            "filename_prefix": true,
            "format": true,
            "pix_fmt": true,
            "crf": true,
            "save_metadata": true,
            "civitai_still": true,
            "pingpong": true,
            "save_output": true,
            "prune_outputs": true
          },
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        24,
        0,
        "Relay",
        "video/h264-mp4",
        "yuv420p",
        19,
        false,
        false,
        false,
        true,
        true
      ],
      "widgets_values_named": {
        "frame_rate": 24,
        "loop_count": 0,
        "filename_prefix": "Relay",
        "format": "video/h264-mp4",
        "pix_fmt": "yuv420p",
        "crf": 19,
        "save_metadata": false,
        "civitai_still": false,
        "pingpong": false,
        "save_output": true,
        "prune_outputs": true
      },
      "color": "#1a5a7a",
      "bgcolor": "#1a5a7a"
    },
    {
      "id": 70,
      "type": "LCImageLabel",
      "pos": [
        1530,
        -3410
      ],
      "size": [
        221,
        221
      ],
      "flags": {},
      "order": 20,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {
        "imgW": 211,
        "imgH": 211,
        "angle": 0,
        "size": 211,
        "padding": 5,
        "borderWidth": 0,
        "borderColor": "#ffffff",
        "borderRadius": 0,
        "backgroundColor": "transparent",
        "bgTransparent": true,
        "syncImageRadius": true,
        "imageRadius": 0,
        "embeddedData": "data:image/webp;base64,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",
        "_w": 221,
        "_h": 221,
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "{\"filename\":\"Logo no background_00001_.png\",\"subfolder\":\"\"}"
      ],
      "widgets_values_named": {
        "_image_path": "{\"filename\":\"Logo no background_00001_.png\",\"subfolder\":\"\"}"
      },
      "color": "#fff0",
      "bgcolor": "#fff0"
    },
    {
      "id": 71,
      "type": "LCPersonMask",
      "pos": [
        2450,
        -3030
      ],
      "size": [
        300,
        490
      ],
      "flags": {},
      "order": 28,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 99
        }
      ],
      "outputs": [
        {
          "name": "cutout",
          "type": "IMAGE",
          "links": null
        },
        {
          "name": "mask",
          "type": "MASK",
          "links": [
            100,
            101
          ]
        },
        {
          "name": "raw_mask",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC_MaskMaker_nodes",
        "ver": "a8c3e1c6a19abfae17932561c88b32d41cf426a8",
        "Node name for S&R": "LCPersonMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        "segformer",
        "models/segformer_b2_clothes (local)",
        true,
        false,
        false,
        false,
        false,
        false,
        0.4,
        "vitmatte",
        "models/vitmatte (local)",
        10,
        10,
        0.01,
        0.99,
        2,
        false
      ],
      "widgets_values_named": {
        "engine": "segformer",
        "segformer_model": "models/segformer_b2_clothes (local)",
        "face": true,
        "hair": false,
        "body": false,
        "clothes": false,
        "accessories": false,
        "background": false,
        "confidence": 0.4,
        "refine": "vitmatte",
        "vitmatte_model": "models/vitmatte (local)",
        "edge_erode": 10,
        "edge_dilate": 10,
        "black_point": 0.01,
        "white_point": 0.99,
        "max_megapixels": 2,
        "remove_features": false
      },
      "color": "#324b4b",
      "bgcolor": "#324b4b"
    },
    {
      "id": 72,
      "type": "LCPreviewMask",
      "pos": [
        2760,
        -2740
      ],
      "size": [
        180,
        200
      ],
      "flags": {},
      "order": 33,
      "mode": 0,
      "inputs": [
        {
          "name": "mask",
          "shape": 7,
          "type": "MASK",
          "link": 101
        }
      ],
      "outputs": [
        {
          "name": "mask",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "ComfyUI_LC123_nodes",
        "ver": "e9d3f5fa5d7d6c0f603b2e19f8a8bf458ee3b8ec",
        "Node name for S&R": "LCPreviewMask",
        "ue_properties": {
          "widget_ue_connectable": {},
          "input_ue_unconnectable": {},
          "version": "7.8"
        }
      },
      "widgets_values": [
        ""
      ],
      "widgets_values_named": {
        "lc_preview": ""
      },
      "color": "#222",
      "bgcolor": "#000"
    },
    {
      "id": 73,
      "type": "LCNote",
      "pos": [
        1190,
        -2440
      ],
      "size": [
        430,
        890
      ],
      "flags": {
        "collapsed": false
      },
      "order": 21,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "title": "Relay Notes",
      "properties": {
        "lc_note": {
          "source": "en",
          "texts": {
            "en": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**What is it?**\n- A one-step upscaler for video and pictures (2x or 4x). The model, VAE and sampler are built in. Fast, sharp, and it adds real skin and hair detail.\n- A fraction of the time VOSR2 or SeedVR2 takes, and higher quality.\n- **detect_faces** finds the faces on its own and holds back Relay's grain on them, so skin keeps its look.\n- 💡 If you used detailers or want all skin protected, wire a mask into **protect_mask**. It overrides detect_faces.\n\n- ✋ **First use downloads the models:** 5.2 GB per upscale size (10 GB for bf16) plus a 128 MB VAE, and 55 MB for the face finder. A toast tells you it started. Press Stop to cancel. Already have them? They are found wherever they are.\n\n---\n\n### Videos 🎥\n\n- **2x faces on** is the default. Your eye goes straight to the faces when things are moving, and everything else is background noise.\n    - Use **faces off** only when time or file size is the problem.\n- **4x** runs on an 8 GB card, but on a moving video it looks barely different from 2x. Extra sharpness can actually make it look worse.\n- Save with **LC Save Video**'s **relay** input. It saves a few frames at a time, so the upscaled video never sits in RAM (5 s at 4x: 0.3 GB instead of 12 GB).\n    - Leave the Relay node's **image** output empty, or the full video gets built anyway.\n\n| Video | 2x faces on | 2x faces off | 4x faces on | 4x faces off |\n|---|---|---|---|---|\n| 960 x 544, 5 s, 24 fps | 13 s (est.) | 12 s | 36 s (est.) | 34 s |\n| 896 x 1152, 6.6 s, 24 fps | 26 s (est.) | 22 - 24 s | 78 s (est.) | 72 - 75 s |\n| 832 x 1056, 15 s, 48 fps | 46 s | 40 s | 2.7 min | 2.6 min |\n| **8 GB laptop:** 960 x 544, 5 s, 24 fps | 28 s (est.) | 27 s | 2 min (est.) | 118 s |\n| **8 GB laptop:** 832 x 1056, 15 s, 48 fps | 4 min | 3.9 min | 18 min (est.) | 17 min (est.) |\n\n\\* RTX 5090 unless noted, laptop is an RTX 5060 8 GB. Models already downloaded. Faces on finds the faces every 3rd frame and costs about 4 - 15 % (measured on the 15 s clip). (est.) rows are scaled from the measured ones.\n- 💡 VRAM stays flat on 8 GB cards (7.4 GB at 2x), so long clips do not slow to a crawl. The 5090 used 13 GB at 2x and 24 GB at 4x only because it had it free.\n- ⚠️ **16 GB RAM:** the frames sit in RAM before Relay even starts. The 15 s, 48 fps clip peaked at 18.5 GB.\n    - Keep clips short, or upscale **before** frame interpolation (half the frames, half the RAM). Recommended, not tested.\n\n---\n\n### Pictures 🖼️\n\n- People actually zoom in on a picture, so 4x is worth it here. Faces cost nothing on a picture (about 4 s either way at 4x, 6 s for a 1056 x 1320 picture).\n- **Quality order:**\n    - 4x faces on\n    - 2x faces on\n    - 4x faces off\n    - 2x faces off\n- **Realism and photos:** faces on.\n- **Lineart, anime, painted, etc.:** depends on the face.\n    - Smooth or painted skin: faces on (the grain is just noise there).\n    - Freckles, hatching or other drawn detail: faces off, or that detail goes soft.\n- Small faces in a crowd: on or off makes no visible difference.\n\n**💡 Tips & tricks**\n- Adjust how much the faces are protected with **mask_protect_strength**.\n- Adjust the sharpness with **detail**.\n\n---\n\n### Settings ⚙️\n\n- **source:**\n    - **video:** the frames are matched to each other, so the video stays steady. Use it for anything that came from a video.\n    - **image:** every picture is upscaled on its own, so nothing carries over between them. Use it for a batch of different pictures. One picture comes out the same either way.\n- **upscale:** 2x for video, 4x for pictures. Each one is its own model.\n    - **2x bf16 / 4x bf16 (10 GB):** the original release. It's an option, but not noticeably different, and it uses about 5 GB more VRAM.\n        - Quality: practically identical. The average difference is 0.12 - 0.21 levels out of 255, and the 100% crops can't be told apart.\n        - 4x on a 5090: pictures 4 s either way (10 - 11 GB vs 15 - 17 GB VRAM), a 3 s clip 22 s vs 25 s (19 GB vs 24 GB).\n- **detail:** 1.0 is the full model output. Lower moves toward a plain upscale.\n- **detect_faces:** typically on. Off for drawn faces with freckles or hatching.\n- **mask_protect_strength:** how much of Relay's detail still lands on the face. 0.5 is the default. Raise it to keep more texture on stylized faces.\n\n---\n\n### Manual download 📂 (optional)\n\n- The node downloads these on first use. Grab them yourself if you'd rather not wait mid-run.\n\n- [Relay 2x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 model (optional, 10 GB)](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 model (optional, 10 GB)](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, optional, 10 GB)\n    │   └── wan (4x bf16, optional, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```"
            },
            "zh": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**这是什么？**\n- 一步完成的视频和图片放大器（2x 或 4x）。模型、VAE 和采样器都已内置。速度快、清晰，还能添加真实的皮肤和头发细节。\n- 耗时只有 VOSR2 或 SeedVR2 的一小部分，质量更高。\n- **detect_faces** 会自动找到人脸，并压住 Relay 在脸上的颗粒，让皮肤保持原样。\n- 💡 如果你用了检测修复（detailer），或想保护全部皮肤，把遮罩接到 **protect_mask**。它会覆盖 detect_faces。\n\n- ✋ **首次使用会下载模型：** 每种放大倍数 5.2 GB（bf16 为 10 GB），加一个 128 MB 的 VAE，人脸检测另需 55 MB。开始时会弹出提示。按 Stop 可取消。已经有了？无论放在哪里都能找到。\n\n---\n\n### 视频 🎥\n\n- **2x 开启人脸** 是默认设置。画面在动时，眼睛会直接盯住人脸，其余部分都成了背景噪声。\n    - 只有在时间或文件大小成为问题时，才使用 **关闭人脸**。\n- **4x** 能在 8 GB 显卡上运行，但在运动的视频里和 2x 几乎看不出区别。多出来的锐度反而可能让画面更难看。\n- 用 **LC Save Video** 的 **relay** 输入保存。它一次只保存几帧，放大后的视频永远不会整个放进内存（5 秒 4x：0.3 GB，而不是 12 GB）。\n    - Relay 节点的 **image** 输出保持空着，否则还是会生成完整视频。\n\n| 视频 | 2x 开启人脸 | 2x 关闭人脸 | 4x 开启人脸 | 4x 关闭人脸 |\n|---|---|---|---|---|\n| 960 x 544，5 秒，24 fps | 13 秒（估计） | 12 秒 | 36 秒（估计） | 34 秒 |\n| 896 x 1152，6.6 秒，24 fps | 26 秒（估计） | 22 - 24 秒 | 78 秒（估计） | 72 - 75 秒 |\n| 832 x 1056，15 秒，48 fps | 46 秒 | 40 秒 | 2.7 分钟 | 2.6 分钟 |\n| **8 GB 笔记本：** 960 x 544，5 秒，24 fps | 28 秒（估计） | 27 秒 | 2 分钟（估计） | 118 秒 |\n| **8 GB 笔记本：** 832 x 1056，15 秒，48 fps | 4 分钟 | 3.9 分钟 | 18 分钟（估计） | 17 分钟（估计） |\n\n\\* 除注明外均为 RTX 5090，笔记本为 RTX 5060 8 GB。模型已下载。开启人脸时每 3 帧检测一次人脸，多花约 4 - 15 %（在 15 秒片段上实测）。（估计）一栏由实测数据推算。\n- 💡 8 GB 显卡上显存占用保持平稳（2x 时 7.4 GB），所以长片段不会越跑越慢。5090 在 2x 用了 13 GB、4x 用了 24 GB，只是因为它有空闲显存。\n- ⚠️ **16 GB 内存：** 在 Relay 开始之前，所有帧就已经放在内存里了。15 秒、48 fps 的片段峰值为 18.5 GB。\n    - 片段保持简短，或者在插帧 **之前** 放大（帧数减半，内存减半）。推荐做法，未测试。\n\n---\n\n### 图片 🖼️\n\n- 人们真的会放大查看图片，所以这里 4x 值得。图片上开启人脸几乎不花时间（4x 时开关都约 4 秒，1056 x 1320 的图片约 6 秒）。\n- **质量排序：**\n    - 4x 开启人脸\n    - 2x 开启人脸\n    - 4x 关闭人脸\n    - 2x 关闭人脸\n- **写实和照片：** 开启人脸。\n- **线稿、动漫、绘画等：** 取决于脸。\n    - 光滑或绘画式的皮肤：开启人脸（那里的颗粒只是噪声）。\n    - 雀斑、排线或其他画出来的细节：关闭人脸，否则这些细节会变软。\n- 人群里的小脸：开或关看不出区别。\n\n**💡 小技巧**\n- 用 **mask_protect_strength** 调整人脸受保护的程度。\n- 用 **detail** 调整锐度。\n\n---\n\n### 设置 ⚙️\n\n- **source：**\n    - **video：** 帧与帧之间相互匹配，视频保持稳定。凡是来自视频的内容都用它。\n    - **image：** 每张图片单独放大，彼此之间不会互相影响。用于一批不同的图片。单张图片两种方式结果相同。\n- **upscale：** 视频用 2x，图片用 4x。每种都是独立的模型。\n    - **2x bf16 / 4x bf16（10 GB）：** 原始版本。可以选，但看不出明显区别，还要多用约 5 GB 显存。\n        - 画质：几乎一样。平均差异只有 0.12 - 0.21（满分 255），100% 裁切图也看不出区别。\n        - 5090 上 4x：图片都是 4 秒（显存 10 - 11 GB 对 15 - 17 GB），3 秒视频 22 秒对 25 秒（19 GB 对 24 GB）。\n- **detail：** 1.0 是完整的模型输出。调低会更接近普通放大。\n- **detect_faces：** 通常开启。对带雀斑或排线的手绘脸关闭。\n- **mask_protect_strength：** Relay 的细节还有多少会落到脸上。默认 0.5。调高可以在风格化的脸上保留更多纹理。\n\n---\n\n### 手动下载 📂（可选）\n\n- 节点会在首次使用时下载这些文件。不想在运行中途等待的话，可以自己先下载。\n\n- [Relay 2x 模型](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x 模型](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 模型（可选，10 GB）](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 模型（可选，10 GB）](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, 可选, 10 GB)\n    │   └── wan (4x bf16, 可选, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```",
              "src": "36dc9909",
              "srcTitle": "Relay Notes"
            },
            "zh-TW": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**這是什麼？**\n- 一步完成的影片和圖片放大器（2x 或 4x）。模型、VAE 和取樣器都已內建。速度快、清晰，還能加上真實的皮膚和頭髮細節。\n- 耗時只有 VOSR2 或 SeedVR2 的一小部分，品質更高。\n- **detect_faces** 會自動找到人臉，並壓住 Relay 在臉上的顆粒，讓皮膚保持原樣。\n- 💡 如果你用了細節修復（detailer），或想保護全部皮膚，把遮罩接到 **protect_mask**。它會覆蓋 detect_faces。\n\n- ✋ **第一次使用會下載模型：** 每種放大倍數 5.2 GB（bf16 為 10 GB），加一個 128 MB 的 VAE，人臉偵測另需 55 MB。開始時會跳出提示。按 Stop 可取消。已經有了？不論放在哪裡都找得到。\n\n---\n\n### 影片 🎥\n\n- **2x 開啟人臉** 是預設設定。畫面在動時，眼睛會直接盯著人臉，其餘部分都成了背景雜訊。\n    - 只有在時間或檔案大小成為問題時，才使用 **關閉人臉**。\n- **4x** 能在 8 GB 顯示卡上執行，但在動態影片裡和 2x 幾乎看不出差別。多出來的銳利度反而可能讓畫面更難看。\n- 用 **LC Save Video** 的 **relay** 輸入儲存。它一次只存幾格，放大後的影片永遠不會整個放進記憶體（5 秒 4x：0.3 GB，而不是 12 GB）。\n    - Relay 節點的 **image** 輸出保持空著，否則還是會產生完整影片。\n\n| 影片 | 2x 開啟人臉 | 2x 關閉人臉 | 4x 開啟人臉 | 4x 關閉人臉 |\n|---|---|---|---|---|\n| 960 x 544，5 秒，24 fps | 13 秒（估計） | 12 秒 | 36 秒（估計） | 34 秒 |\n| 896 x 1152，6.6 秒，24 fps | 26 秒（估計） | 22 - 24 秒 | 78 秒（估計） | 72 - 75 秒 |\n| 832 x 1056，15 秒，48 fps | 46 秒 | 40 秒 | 2.7 分鐘 | 2.6 分鐘 |\n| **8 GB 筆電：** 960 x 544，5 秒，24 fps | 28 秒（估計） | 27 秒 | 2 分鐘（估計） | 118 秒 |\n| **8 GB 筆電：** 832 x 1056，15 秒，48 fps | 4 分鐘 | 3.9 分鐘 | 18 分鐘（估計） | 17 分鐘（估計） |\n\n\\* 除註明外皆為 RTX 5090，筆電為 RTX 5060 8 GB。模型已下載。開啟人臉時每 3 格偵測一次人臉，多花約 4 - 15 %（在 15 秒片段上實測）。（估計）欄位由實測數據推算。\n- 💡 8 GB 顯示卡上顯存占用保持平穩（2x 時 7.4 GB），所以長片段不會越跑越慢。5090 在 2x 用了 13 GB、4x 用了 24 GB，只是因為它有空閒顯存。\n- ⚠️ **16 GB 記憶體：** 在 Relay 開始之前，所有畫格就已經放在記憶體裡了。15 秒、48 fps 的片段峰值為 18.5 GB。\n    - 片段保持簡短，或者在補幀 **之前** 放大（畫格減半，記憶體減半）。建議做法，未測試。\n\n---\n\n### 圖片 🖼️\n\n- 大家真的會放大檢視圖片，所以這裡 4x 值得。圖片上開啟人臉幾乎不花時間（4x 時開關都約 4 秒，1056 x 1320 的圖片約 6 秒）。\n- **品質排序：**\n    - 4x 開啟人臉\n    - 2x 開啟人臉\n    - 4x 關閉人臉\n    - 2x 關閉人臉\n- **寫實和照片：** 開啟人臉。\n- **線稿、動漫、繪畫等：** 取決於臉。\n    - 光滑或繪畫式的皮膚：開啟人臉（那裡的顆粒只是雜訊）。\n    - 雀斑、排線或其他畫出來的細節：關閉人臉，否則這些細節會變軟。\n- 人群裡的小臉：開或關看不出差別。\n\n**💡 小技巧**\n- 用 **mask_protect_strength** 調整人臉受保護的程度。\n- 用 **detail** 調整銳利度。\n\n---\n\n### 設定 ⚙️\n\n- **source：**\n    - **video：** 畫格之間互相匹配，影片保持穩定。凡是來自影片的內容都用它。\n    - **image：** 每張圖片單獨放大，彼此之間不會互相影響。用於一批不同的圖片。單張圖片兩種方式結果相同。\n- **upscale：** 影片用 2x，圖片用 4x。每種都是獨立的模型。\n    - **2x bf16 / 4x bf16（10 GB）：** 原始版本。可以選，但看不出明顯差別，還要多用約 5 GB 顯存。\n        - 畫質：幾乎一樣。平均差異只有 0.12 - 0.21（滿分 255），100% 裁切圖也看不出差別。\n        - 5090 上 4x：圖片都是 4 秒（顯存 10 - 11 GB 對 15 - 17 GB），3 秒影片 22 秒對 25 秒（19 GB 對 24 GB）。\n- **detail：** 1.0 是完整的模型輸出。調低會更接近一般放大。\n- **detect_faces：** 通常開啟。對帶雀斑或排線的手繪臉關閉。\n- **mask_protect_strength：** Relay 的細節還有多少會落到臉上。預設 0.5。調高可以在風格化的臉上保留更多紋理。\n\n---\n\n### 手動下載 📂（可選）\n\n- 節點會在第一次使用時下載這些檔案。不想在執行中途等待的話，可以自己先下載。\n\n- [Relay 2x 模型](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x 模型](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 模型（選用，10 GB）](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 模型（選用，10 GB）](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, 選用, 10 GB)\n    │   └── wan (4x bf16, 選用, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```",
              "src": "36dc9909",
              "srcTitle": "Relay Notes"
            },
            "ja": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**これは何？**\n- 動画と画像を1ステップで拡大するアップスケーラー（2x または 4x）。モデル、VAE、サンプラーはすべて内蔵。速くてシャープ、本物の肌と髪のディテールを加えます。\n- VOSR2 や SeedVR2 のほんの一部の時間で、しかも高品質。\n- **detect_faces** が顔を自動で見つけ、顔の上の Relay の粒状感を抑えるので、肌の見た目がそのまま残ります。\n- 💡 ディテーラーを使った場合や肌全体を守りたい場合は、マスクを **protect_mask** につなぎます。detect_faces より優先されます。\n\n- ✋ **初回使用時にモデルをダウンロードします：** 拡大サイズごとに 5.2 GB（bf16 は 10 GB）と 128 MB の VAE、顔検出用に 55 MB。開始するとトーストが出ます。Stop でキャンセル。もう持っている？ どこに置いてあっても見つかります。\n\n---\n\n### 動画 🎥\n\n- **2x 顔オン** がデフォルト。動いている映像では目はまっすぐ顔に向かい、それ以外は背景のノイズになります。\n    - **顔オフ** は時間やファイルサイズが問題になるときだけ使います。\n- **4x** は 8 GB のカードでも動きますが、動いている映像では 2x とほとんど違いが分かりません。余分なシャープさでかえって悪く見えることもあります。\n- **LC Save Video** の **relay** 入力で保存します。数フレームずつ保存するので、拡大した動画が丸ごとメモリに乗ることはありません（5 秒の 4x：12 GB ではなく 0.3 GB）。\n    - Relay ノードの **image** 出力は空けておきます。つなぐと結局フル動画が作られます。\n\n| 動画 | 2x 顔オン | 2x 顔オフ | 4x 顔オン | 4x 顔オフ |\n|---|---|---|---|---|\n| 960 x 544、5 秒、24 fps | 13 秒（推定） | 12 秒 | 36 秒（推定） | 34 秒 |\n| 896 x 1152、6.6 秒、24 fps | 26 秒（推定） | 22 - 24 秒 | 78 秒（推定） | 72 - 75 秒 |\n| 832 x 1056、15 秒、48 fps | 46 秒 | 40 秒 | 2.7 分 | 2.6 分 |\n| **8 GB ノートPC：** 960 x 544、5 秒、24 fps | 28 秒（推定） | 27 秒 | 2 分（推定） | 118 秒 |\n| **8 GB ノートPC：** 832 x 1056、15 秒、48 fps | 4 分 | 3.9 分 | 18 分（推定） | 17 分（推定） |\n\n\\* 注記がなければ RTX 5090、ノートPC は RTX 5060 8 GB。モデルはダウンロード済み。顔オンは 3 フレームごとに顔を検出し、約 4 - 15 % 余分にかかります（15 秒のクリップで実測）。（推定）は実測値から換算しています。\n- 💡 8 GB のカードでは VRAM が一定のまま（2x で 7.4 GB）なので、長いクリップでも極端に遅くなりません。5090 が 2x で 13 GB、4x で 24 GB 使ったのは、空きがあったからにすぎません。\n- ⚠️ **16 GB RAM：** Relay が始まる前に、フレームはすでにメモリに乗っています。15 秒、48 fps のクリップはピーク 18.5 GB。\n    - クリップは短くするか、フレーム補間の **前に** 拡大します（フレームが半分、RAM も半分）。推奨、未テスト。\n\n---\n\n### 画像 🖼️\n\n- 画像は実際にズームして見られるので、ここでは 4x の価値があります。画像なら顔オンの時間はほぼゼロ（4x でオンでもオフでも約 4 秒、1056 x 1320 の画像で 6 秒）。\n- **品質の順番：**\n    - 4x 顔オン\n    - 2x 顔オン\n    - 4x 顔オフ\n    - 2x 顔オフ\n- **リアル系と写真：** 顔オン。\n- **線画、アニメ、ペイント系など：** 顔しだい。\n    - なめらかな肌やペイントの肌：顔オン（そこでは粒状感はただのノイズ）。\n    - そばかす、ハッチング、その他描き込まれたディテール：顔オフ。そうしないとそのディテールがぼやけます。\n- 群衆の中の小さな顔：オンでもオフでも見た目の違いはありません。\n\n**💡 コツ**\n- 顔の守り具合は **mask_protect_strength** で調整します。\n- シャープさは **detail** で調整します。\n\n---\n\n### 設定 ⚙️\n\n- **source：**\n    - **video：** フレーム同士を合わせるので、動画が安定します。動画から来たものすべてに使います。\n    - **image：** 画像ごとに個別に拡大するので、画像間で何も引き継がれません。別々の画像のバッチに使います。画像1枚ならどちらでも同じ結果です。\n- **upscale：** 動画は 2x、画像は 4x。それぞれ別のモデルです。\n    - **2x bf16 / 4x bf16（10 GB）：** オリジナル版。選べますが、目に見える違いはなく、VRAM を約 5 GB 多く使います。\n        - 画質：ほぼ同じ。平均差は 255 段階中 0.12 - 0.21 で、100% の切り抜きでも見分けがつきません。\n        - 5090 で 4x：画像はどちらも 4 秒（VRAM 10 - 11 GB 対 15 - 17 GB）、3 秒のクリップは 22 秒対 25 秒（19 GB 対 24 GB）。\n- **detail：** 1.0 がモデルのフル出力。下げるほど普通の拡大に近づきます。\n- **detect_faces：** 通常はオン。そばかすやハッチングのある描かれた顔ではオフ。\n- **mask_protect_strength：** Relay のディテールが顔にどれだけ乗るか。デフォルトは 0.5。上げると様式化された顔のテクスチャがより残ります。\n\n---\n\n### 手動ダウンロード 📂（任意）\n\n- ノードは初回使用時にこれらをダウンロードします。実行中に待ちたくなければ、自分で先に入手してください。\n\n- [Relay 2x モデル](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x モデル](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 モデル（任意、10 GB）](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 モデル（任意、10 GB）](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, 任意, 10 GB)\n    │   └── wan (4x bf16, 任意, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```",
              "src": "36dc9909",
              "srcTitle": "Relay Notes"
            },
            "ko": {
              "text": "## LC Relay VSR Upscale 🧩\n\n**이게 뭔가요?**\n- 영상과 사진을 한 번에 키우는 업스케일러(2x 또는 4x). 모델, VAE, 샘플러가 모두 내장되어 있습니다. 빠르고 선명하며, 실제 피부와 머리카락 디테일을 더합니다.\n- VOSR2나 SeedVR2에 걸리는 시간의 일부만 들고, 품질은 더 높습니다.\n- **detect_faces**가 얼굴을 스스로 찾아 얼굴 위의 Relay 그레인을 눌러 주므로, 피부가 원래 모습을 유지합니다.\n- 💡 디테일러를 썼거나 피부 전체를 보호하고 싶다면 마스크를 **protect_mask**에 연결하세요. detect_faces보다 우선합니다.\n\n- ✋ **첫 사용 시 모델을 다운로드합니다:** 업스케일 크기마다 5.2 GB(bf16은 10 GB)와 128 MB VAE, 얼굴 감지용 55 MB. 시작하면 토스트 알림이 뜹니다. Stop을 누르면 취소됩니다. 이미 있나요? 어디에 두었든 찾아냅니다.\n\n---\n\n### 영상 🎥\n\n- **2x 얼굴 켜기**가 기본입니다. 화면이 움직일 때 눈은 곧장 얼굴로 가고, 나머지는 배경 노이즈가 됩니다.\n    - **얼굴 끄기**는 시간이나 파일 크기가 문제일 때만 쓰세요.\n- **4x**는 8 GB 카드에서도 돌아가지만, 움직이는 영상에서는 2x와 거의 차이가 없습니다. 오히려 과한 선명함 때문에 더 나빠 보일 수 있습니다.\n- **LC Save Video**의 **relay** 입력으로 저장하세요. 몇 프레임씩 저장하므로, 업스케일된 영상이 통째로 RAM에 올라가지 않습니다(5초 4x: 12 GB 대신 0.3 GB).\n    - Relay 노드의 **image** 출력은 비워 두세요. 연결하면 결국 전체 영상이 만들어집니다.\n\n| 영상 | 2x 얼굴 켜기 | 2x 얼굴 끄기 | 4x 얼굴 켜기 | 4x 얼굴 끄기 |\n|---|---|---|---|---|\n| 960 x 544, 5초, 24 fps | 13초 (추정) | 12초 | 36초 (추정) | 34초 |\n| 896 x 1152, 6.6초, 24 fps | 26초 (추정) | 22 - 24초 | 78초 (추정) | 72 - 75초 |\n| 832 x 1056, 15초, 48 fps | 46초 | 40초 | 2.7분 | 2.6분 |\n| **8 GB 노트북:** 960 x 544, 5초, 24 fps | 28초 (추정) | 27초 | 2분 (추정) | 118초 |\n| **8 GB 노트북:** 832 x 1056, 15초, 48 fps | 4분 | 3.9분 | 18분 (추정) | 17분 (추정) |\n\n\\* 따로 적지 않으면 RTX 5090, 노트북은 RTX 5060 8 GB. 모델은 다운로드된 상태. 얼굴 켜기는 3프레임마다 얼굴을 찾으며 약 4 - 15 % 더 걸립니다(15초 클립에서 측정). (추정)은 측정값을 바탕으로 계산했습니다.\n- 💡 8 GB 카드에서는 VRAM이 일정하게 유지되므로(2x에서 7.4 GB), 긴 클립도 크게 느려지지 않습니다. 5090이 2x에서 13 GB, 4x에서 24 GB를 쓴 것은 여유가 있었기 때문일 뿐입니다.\n- ⚠️ **16 GB RAM:** Relay가 시작되기 전에 프레임이 이미 RAM에 올라가 있습니다. 15초, 48 fps 클립은 최고 18.5 GB였습니다.\n    - 클립을 짧게 하거나, 프레임 보간 **전에** 업스케일하세요(프레임 절반, RAM 절반). 권장, 테스트 안 됨.\n\n---\n\n### 사진 🖼️\n\n- 사람들은 사진을 실제로 확대해서 보므로, 여기서는 4x가 그만한 값을 합니다. 사진에서는 얼굴 켜기에 드는 시간이 거의 없습니다(4x에서 켜든 끄든 약 4초, 1056 x 1320 사진은 6초).\n- **품질 순서:**\n    - 4x 얼굴 켜기\n    - 2x 얼굴 켜기\n    - 4x 얼굴 끄기\n    - 2x 얼굴 끄기\n- **실사와 사진:** 얼굴 켜기.\n- **라인아트, 애니메이션, 페인팅 등:** 얼굴에 따라 다릅니다.\n    - 매끈하거나 칠한 피부: 얼굴 켜기(거기서는 그레인이 그냥 노이즈입니다).\n    - 주근깨, 해칭 등 그려 넣은 디테일: 얼굴 끄기. 안 그러면 그 디테일이 뭉개집니다.\n- 군중 속 작은 얼굴: 켜든 끄든 눈에 띄는 차이가 없습니다.\n\n**💡 팁**\n- 얼굴을 얼마나 보호할지는 **mask_protect_strength**로 조절합니다.\n- 선명도는 **detail**로 조절합니다.\n\n---\n\n### 설정 ⚙️\n\n- **source:**\n    - **video:** 프레임끼리 서로 맞추므로 영상이 안정적입니다. 영상에서 나온 것에는 모두 이것을 쓰세요.\n    - **image:** 사진마다 따로 업스케일하므로 사진 사이에 아무것도 이어지지 않습니다. 서로 다른 사진 묶음에 쓰세요. 사진 한 장은 어느 쪽이든 결과가 같습니다.\n- **upscale:** 영상은 2x, 사진은 4x. 각각 별도의 모델입니다.\n    - **2x bf16 / 4x bf16 (10 GB):** 원본 릴리스. 선택할 수 있지만 눈에 띄는 차이가 없고 VRAM을 약 5 GB 더 씁니다.\n        - 화질: 사실상 같습니다. 평균 차이는 255단계 중 0.12 - 0.21이고, 100% 크롭으로도 구분이 안 됩니다.\n        - 5090에서 4x: 사진은 둘 다 4초(VRAM 10 - 11 GB 대 15 - 17 GB), 3초 클립은 22초 대 25초(19 GB 대 24 GB).\n- **detail:** 1.0이 모델의 전체 출력입니다. 낮출수록 일반 업스케일에 가까워집니다.\n- **detect_faces:** 보통 켭니다. 주근깨나 해칭이 있는 그린 얼굴에서는 끕니다.\n- **mask_protect_strength:** Relay의 디테일이 얼굴에 얼마나 남는지. 기본값 0.5. 높이면 스타일화된 얼굴에 텍스처가 더 남습니다.\n\n---\n\n### 수동 다운로드 📂 (선택)\n\n- 노드가 첫 사용 시 이 파일들을 다운로드합니다. 실행 도중 기다리기 싫다면 직접 받아 두세요.\n\n- [Relay 2x 모델](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x 모델](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 모델 (선택, 10 GB)](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 모델 (선택, 10 GB)](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, 선택, 10 GB)\n    │   └── wan (4x bf16, 선택, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```",
              "src": "36dc9909",
              "srcTitle": "Relay Notes"
            }
          },
          "titles": {
            "en": "Relay Notes",
            "zh": "中继笔记",
            "zh-TW": "中繼筆記",
            "ja": "Relay メモ",
            "ko": "Relay 노트"
          }
        },
        "ue_properties": {
          "widget_ue_connectable": {},
          "version": "7.8",
          "input_ue_unconnectable": {}
        }
      },
      "widgets_values": [
        "English ✏️",
        "## LC Relay VSR Upscale 🧩\n\n**What is it?**\n- A one-step upscaler for video and pictures (2x or 4x). The model, VAE and sampler are built in. Fast, sharp, and it adds real skin and hair detail.\n- A fraction of the time VOSR2 or SeedVR2 takes, and higher quality.\n- **detect_faces** finds the faces on its own and holds back Relay's grain on them, so skin keeps its look.\n- 💡 If you used detailers or want all skin protected, wire a mask into **protect_mask**. It overrides detect_faces.\n\n- ✋ **First use downloads the models:** 5.2 GB per upscale size (10 GB for bf16) plus a 128 MB VAE, and 55 MB for the face finder. A toast tells you it started. Press Stop to cancel. Already have them? They are found wherever they are.\n\n---\n\n### Videos 🎥\n\n- **2x faces on** is the default. Your eye goes straight to the faces when things are moving, and everything else is background noise.\n    - Use **faces off** only when time or file size is the problem.\n- **4x** runs on an 8 GB card, but on a moving video it looks barely different from 2x. Extra sharpness can actually make it look worse.\n- Save with **LC Save Video**'s **relay** input. It saves a few frames at a time, so the upscaled video never sits in RAM (5 s at 4x: 0.3 GB instead of 12 GB).\n    - Leave the Relay node's **image** output empty, or the full video gets built anyway.\n\n| Video | 2x faces on | 2x faces off | 4x faces on | 4x faces off |\n|---|---|---|---|---|\n| 960 x 544, 5 s, 24 fps | 13 s (est.) | 12 s | 36 s (est.) | 34 s |\n| 896 x 1152, 6.6 s, 24 fps | 26 s (est.) | 22 - 24 s | 78 s (est.) | 72 - 75 s |\n| 832 x 1056, 15 s, 48 fps | 46 s | 40 s | 2.7 min | 2.6 min |\n| **8 GB laptop:** 960 x 544, 5 s, 24 fps | 28 s (est.) | 27 s | 2 min (est.) | 118 s |\n| **8 GB laptop:** 832 x 1056, 15 s, 48 fps | 4 min | 3.9 min | 18 min (est.) | 17 min (est.) |\n\n\\* RTX 5090 unless noted, laptop is an RTX 5060 8 GB. Models already downloaded. Faces on finds the faces every 3rd frame and costs about 4 - 15 % (measured on the 15 s clip). (est.) rows are scaled from the measured ones.\n- 💡 VRAM stays flat on 8 GB cards (7.4 GB at 2x), so long clips do not slow to a crawl. The 5090 used 13 GB at 2x and 24 GB at 4x only because it had it free.\n- ⚠️ **16 GB RAM:** the frames sit in RAM before Relay even starts. The 15 s, 48 fps clip peaked at 18.5 GB.\n    - Keep clips short, or upscale **before** frame interpolation (half the frames, half the RAM). Recommended, not tested.\n\n---\n\n### Pictures 🖼️\n\n- People actually zoom in on a picture, so 4x is worth it here. Faces cost nothing on a picture (about 4 s either way at 4x, 6 s for a 1056 x 1320 picture).\n- **Quality order:**\n    - 4x faces on\n    - 2x faces on\n    - 4x faces off\n    - 2x faces off\n- **Realism and photos:** faces on.\n- **Lineart, anime, painted, etc.:** depends on the face.\n    - Smooth or painted skin: faces on (the grain is just noise there).\n    - Freckles, hatching or other drawn detail: faces off, or that detail goes soft.\n- Small faces in a crowd: on or off makes no visible difference.\n\n**💡 Tips & tricks**\n- Adjust how much the faces are protected with **mask_protect_strength**.\n- Adjust the sharpness with **detail**.\n\n---\n\n### Settings ⚙️\n\n- **source:**\n    - **video:** the frames are matched to each other, so the video stays steady. Use it for anything that came from a video.\n    - **image:** every picture is upscaled on its own, so nothing carries over between them. Use it for a batch of different pictures. One picture comes out the same either way.\n- **upscale:** 2x for video, 4x for pictures. Each one is its own model.\n    - **2x bf16 / 4x bf16 (10 GB):** the original release. It's an option, but not noticeably different, and it uses about 5 GB more VRAM.\n        - Quality: practically identical. The average difference is 0.12 - 0.21 levels out of 255, and the 100% crops can't be told apart.\n        - 4x on a 5090: pictures 4 s either way (10 - 11 GB vs 15 - 17 GB VRAM), a 3 s clip 22 s vs 25 s (19 GB vs 24 GB).\n- **detail:** 1.0 is the full model output. Lower moves toward a plain upscale.\n- **detect_faces:** typically on. Off for drawn faces with freckles or hatching.\n- **mask_protect_strength:** how much of Relay's detail still lands on the face. 0.5 is the default. Raise it to keep more texture on stylized faces.\n\n---\n\n### Manual download 📂 (optional)\n\n- The node downloads these on first use. Grab them yourself if you'd rather not wait mid-run.\n\n- [Relay 2x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 model (optional, 10 GB)](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 model (optional, 10 GB)](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, optional, 10 GB)\n    │   └── wan (4x bf16, optional, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```"
      ],
      "widgets_values_named": {
        "language": "English ✏️",
        "text": "## LC Relay VSR Upscale 🧩\n\n**What is it?**\n- A one-step upscaler for video and pictures (2x or 4x). The model, VAE and sampler are built in. Fast, sharp, and it adds real skin and hair detail.\n- A fraction of the time VOSR2 or SeedVR2 takes, and higher quality.\n- **detect_faces** finds the faces on its own and holds back Relay's grain on them, so skin keeps its look.\n- 💡 If you used detailers or want all skin protected, wire a mask into **protect_mask**. It overrides detect_faces.\n\n- ✋ **First use downloads the models:** 5.2 GB per upscale size (10 GB for bf16) plus a 128 MB VAE, and 55 MB for the face finder. A toast tells you it started. Press Stop to cancel. Already have them? They are found wherever they are.\n\n---\n\n### Videos 🎥\n\n- **2x faces on** is the default. Your eye goes straight to the faces when things are moving, and everything else is background noise.\n    - Use **faces off** only when time or file size is the problem.\n- **4x** runs on an 8 GB card, but on a moving video it looks barely different from 2x. Extra sharpness can actually make it look worse.\n- Save with **LC Save Video**'s **relay** input. It saves a few frames at a time, so the upscaled video never sits in RAM (5 s at 4x: 0.3 GB instead of 12 GB).\n    - Leave the Relay node's **image** output empty, or the full video gets built anyway.\n\n| Video | 2x faces on | 2x faces off | 4x faces on | 4x faces off |\n|---|---|---|---|---|\n| 960 x 544, 5 s, 24 fps | 13 s (est.) | 12 s | 36 s (est.) | 34 s |\n| 896 x 1152, 6.6 s, 24 fps | 26 s (est.) | 22 - 24 s | 78 s (est.) | 72 - 75 s |\n| 832 x 1056, 15 s, 48 fps | 46 s | 40 s | 2.7 min | 2.6 min |\n| **8 GB laptop:** 960 x 544, 5 s, 24 fps | 28 s (est.) | 27 s | 2 min (est.) | 118 s |\n| **8 GB laptop:** 832 x 1056, 15 s, 48 fps | 4 min | 3.9 min | 18 min (est.) | 17 min (est.) |\n\n\\* RTX 5090 unless noted, laptop is an RTX 5060 8 GB. Models already downloaded. Faces on finds the faces every 3rd frame and costs about 4 - 15 % (measured on the 15 s clip). (est.) rows are scaled from the measured ones.\n- 💡 VRAM stays flat on 8 GB cards (7.4 GB at 2x), so long clips do not slow to a crawl. The 5090 used 13 GB at 2x and 24 GB at 4x only because it had it free.\n- ⚠️ **16 GB RAM:** the frames sit in RAM before Relay even starts. The 15 s, 48 fps clip peaked at 18.5 GB.\n    - Keep clips short, or upscale **before** frame interpolation (half the frames, half the RAM). Recommended, not tested.\n\n---\n\n### Pictures 🖼️\n\n- People actually zoom in on a picture, so 4x is worth it here. Faces cost nothing on a picture (about 4 s either way at 4x, 6 s for a 1056 x 1320 picture).\n- **Quality order:**\n    - 4x faces on\n    - 2x faces on\n    - 4x faces off\n    - 2x faces off\n- **Realism and photos:** faces on.\n- **Lineart, anime, painted, etc.:** depends on the face.\n    - Smooth or painted skin: faces on (the grain is just noise there).\n    - Freckles, hatching or other drawn detail: faces off, or that detail goes soft.\n- Small faces in a crowd: on or off makes no visible difference.\n\n**💡 Tips & tricks**\n- Adjust how much the faces are protected with **mask_protect_strength**.\n- Adjust the sharpness with **detail**.\n\n---\n\n### Settings ⚙️\n\n- **source:**\n    - **video:** the frames are matched to each other, so the video stays steady. Use it for anything that came from a video.\n    - **image:** every picture is upscaled on its own, so nothing carries over between them. Use it for a batch of different pictures. One picture comes out the same either way.\n- **upscale:** 2x for video, 4x for pictures. Each one is its own model.\n    - **2x bf16 / 4x bf16 (10 GB):** the original release. It's an option, but not noticeably different, and it uses about 5 GB more VRAM.\n        - Quality: practically identical. The average difference is 0.12 - 0.21 levels out of 255, and the 100% crops can't be told apart.\n        - 4x on a 5090: pictures 4 s either way (10 - 11 GB vs 15 - 17 GB VRAM), a 3 s clip 22 s vs 25 s (19 GB vs 24 GB).\n- **detail:** 1.0 is the full model output. Lower moves toward a plain upscale.\n- **detect_faces:** typically on. Off for drawn faces with freckles or hatching.\n- **mask_protect_strength:** how much of Relay's detail still lands on the face. 0.5 is the default. Raise it to keep more texture on stylized faces.\n\n---\n\n### Manual download 📂 (optional)\n\n- The node downloads these on first use. Grab them yourself if you'd rather not wait mid-run.\n\n- [Relay 2x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x2_lightx2v_int8_convrot.safetensors?download=true)\n\n- [Relay 2x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x2_fp32.safetensors?download=true)\n\n- [Relay 4x model](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/diffusion_models/relayvsr_x4_int8_convrot.safetensors?download=true)\n\n- [Relay 4x VAE](https://huggingface.co/Comfy-Org/RelayVSR/resolve/main/vae/relayvsr_flash_vae_x4_fp32.safetensors?download=true)\n\n- [Relay 4x bf16 model (optional, 10 GB)](https://huggingface.co/kopper/RelayVSR/resolve/main/wan.safetensors?download=true)\n\n- [Relay 2x bf16 model (optional, 10 GB)](https://huggingface.co/lightx2v/RelayVSR_X2/resolve/main/wan_x2.safetensors?download=true)\n\n```\nComfyUI/\n└── models/\n    ├── diffusion_models/\n    │   ├── relayvsr_x2_lightx2v_int8_convrot (5.2 GB)\n    │   ├── relayvsr_x4_int8_convrot (5.2 GB)\n    │   ├── wan_x2 (2x bf16, optional, 10 GB)\n    │   └── wan (4x bf16, optional, 10 GB)\n    ├── vae/\n    │   ├── relayvsr_flash_vae_x2_fp32\n    │   └── relayvsr_flash_vae_x4_fp32\n    └── facexlib/\n        ├── detection_mobilenet0.25_Final.pth\n        └── parsing_bisenet.pth\n```"
      },
      "color": "#2E3A46",
      "bgcolor": "#2E3A46"
    }
  ],
  "links": [
    [
      17,
      20,
      0,
      21,
      0,
      "INT"
    ],
    [
      34,
      39,
      0,
      28,
      0,
      "IMAGE"
    ],
    [
      52,
      15,
      0,
      27,
      0,
      "IMAGE"
    ],
    [
      53,
      13,
      1,
      40,
      0,
      "AUDIO"
    ],
    [
      54,
      13,
      2,
      41,
      0,
      "FLOAT"
    ],
    [
      55,
      13,
      0,
      42,
      0,
      "IMAGE"
    ],
    [
      59,
      45,
      0,
      48,
      0,
      "IMAGE"
    ],
    [
      60,
      47,
      0,
      48,
      1,
      "STRING"
    ],
    [
      67,
      39,
      0,
      57,
      0,
      "IMAGE"
    ],
    [
      70,
      57,
      0,
      36,
      0,
      "IMAGE"
    ],
    [
      71,
      57,
      0,
      28,
      1,
      "IMAGE"
    ],
    [
      72,
      12,
      0,
      58,
      0,
      "IMAGE"
    ],
    [
      79,
      61,
      0,
      62,
      0,
      "IMAGE"
    ],
    [
      80,
      63,
      0,
      64,
      0,
      "STRING"
    ],
    [
      81,
      47,
      0,
      64,
      1,
      "STRING"
    ],
    [
      82,
      64,
      0,
      62,
      1,
      "STRING"
    ],
    [
      84,
      15,
      0,
      65,
      0,
      "IMAGE"
    ],
    [
      85,
      48,
      0,
      65,
      1,
      "IMAGE"
    ],
    [
      86,
      65,
      0,
      61,
      0,
      "IMAGE"
    ],
    [
      95,
      12,
      0,
      69,
      0,
      "IMAGE"
    ],
    [
      96,
      43,
      0,
      69,
      1,
      "AUDIO"
    ],
    [
      97,
      44,
      0,
      69,
      5,
      "FLOAT"
    ],
    [
      94,
      58,
      1,
      69,
      4,
      "LC_RELAY"
    ],
    [
      99,
      39,
      0,
      71,
      0,
      "IMAGE"
    ],
    [
      100,
      71,
      1,
      57,
      1,
      "MASK"
    ],
    [
      101,
      71,
      1,
      72,
      0,
      "MASK"
    ],
    [
      68,
      33,
      0,
      57,
      2,
      "INT"
    ],
    [
      73,
      6,
      0,
      58,
      2,
      "INT"
    ],
    [
      98,
      46,
      0,
      69,
      6,
      "STRING"
    ]
  ],
  "groups": [
    {
      "id": 1,
      "title": "#Relay Upscale Video",
      "bounding": [
        2380,
        -2380,
        340,
        330
      ],
      "color": "#8AA",
      "flags": {}
    },
    {
      "id": 6,
      "title": "Image:",
      "bounding": [
        1660,
        -3180,
        2530,
        670
      ],
      "color": "#b58b2a",
      "flags": {}
    },
    {
      "id": 4,
      "title": "Relay Upscale",
      "bounding": [
        2200,
        -3140,
        1270,
        620
      ],
      "color": "#3f789e",
      "flags": {}
    },
    {
      "id": 3,
      "title": "#Relay Upscale Image",
      "bounding": [
        2440,
        -3100,
        630,
        570
      ],
      "color": "#8AA",
      "flags": {}
    },
    {
      "id": 8,
      "title": "Head End",
      "bounding": [
        1190,
        -3180,
        430,
        670
      ],
      "color": "#3f789e",
      "flags": {}
    },
    {
      "id": 10,
      "title": "Test (Delete if you don't want it)",
      "bounding": [
        4240,
        -3170,
        880,
        720
      ],
      "color": "#3f789e",
      "flags": {}
    },
    {
      "id": 17,
      "title": "Video:",
      "bounding": [
        1660,
        -2470,
        1700,
        920
      ],
      "color": "#A88",
      "flags": {}
    },
    {
      "id": 16,
      "title": "Relay Video",
      "bounding": [
        2140,
        -2420,
        1210,
        860
      ],
      "color": "#3f789e",
      "flags": {}
    }
  ],
  "config": {},
  "extra": {
    "k2cf_state_id": "k2cf_1794218693220_m5ffhjq6fo",
    "ue_links": [],
    "vision_assistant": {
      "snapshots": []
    },
    "links_added_by_ue": [],
    "ds": {
      "scale": 1.0152559799477343,
      "offset": [
        -727.7113254686565,
        2243.8893645886237
      ]
    },
    "frontendVersion": "1.58.5",
    "VHS_latentpreview": false,
    "VHS_latentpreviewrate": 0,
    "VHS_MetadataImage": true,
    "VHS_KeepIntermediate": true
  },
  "extensions": {
    "seed_widgets": {
      "57": 2,
      "58": 2
    }
  },
  "version": 0.4,
  "seed_widgets": {
    "57": 2,
    "58": 2
  }
}