diff --git a/examples/ERF.mp4 b/examples/ERF.mp4 deleted file mode 100644 index 6b8e77a..0000000 Binary files a/examples/ERF.mp4 and /dev/null differ diff --git a/examples/earth_example.json b/examples/earth_example.json deleted file mode 100644 index 84838d3..0000000 --- a/examples/earth_example.json +++ /dev/null @@ -1,4026 +0,0 @@ -{ - "last_node_id": 123, - "last_link_id": 220, - "nodes": [ - { - "id": 19, - "type": "ADE_ApplyAnimateDiffModelSimple", - "pos": [ - 3589.565364144639, - -818.5808476815564 - ], - "size": { - "0": 260.3999938964844, - "1": 114 - }, - "flags": {}, - "order": 24, - "mode": 0, - "inputs": [ - { - "name": "motion_model", - "type": "MOTION_MODEL_ADE", - "link": 28, - "slot_index": 0 - }, - { - "name": "motion_lora", - "type": "MOTION_LORA", - "link": null - }, - { - "name": "scale_multival", - "type": "MULTIVAL", - "link": null - }, - { - "name": "effect_multival", - "type": "MULTIVAL", - "link": null - }, - { - "name": "ad_keyframes", - "type": "AD_KEYFRAMES", - "link": null - } - ], - "outputs": [ - { - "name": "M_MODELS", - "type": "M_MODELS", - "links": [ - 22 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ADE_ApplyAnimateDiffModelSimple" - }, - "widgets_values": [ - "" - ] - }, - { - "id": 25, - "type": "ADE_LoadAnimateDiffModel", - "pos": [ - 3569.565364144639, - -928.5808476815566 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 0, - "mode": 0, - "inputs": [ - { - "name": "ad_settings", - "type": "AD_SETTINGS", - "link": null - } - ], - "outputs": [ - { - "name": "MOTION_MODEL", - "type": "MOTION_MODEL_ADE", - "links": [ - 28 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "ADE_LoadAnimateDiffModel" - }, - "widgets_values": [ - "ALCM_sd15_t2v_beta.ckpt" - ] - }, - { - "id": 20, - "type": "ADE_UseEvolvedSampling", - "pos": [ - 3593.565364144639, - -652.5808476815565 - ], - "size": { - "0": 315, - "1": 118 - }, - "flags": {}, - "order": 58, - "mode": 0, - "inputs": [ - { - "name": "model", - "type": "MODEL", - "link": 191, - "slot_index": 0 - }, - { - "name": "m_models", - "type": "M_MODELS", - "link": 22, - "slot_index": 1 - }, - { - "name": "context_options", - "type": "CONTEXT_OPTIONS", - "link": 211, - "slot_index": 2 - }, - { - "name": "sample_settings", - "type": "SAMPLE_SETTINGS", - "link": null, - "slot_index": 3 - } - ], - "outputs": [ - { - "name": "MODEL", - "type": "MODEL", - "links": [ - 208 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ADE_UseEvolvedSampling" - }, - "widgets_values": [ - "lcm >> sqrt_linear" - ] - }, - { - "id": 56, - "type": "VHS_VideoCombine", - "pos": [ - 1364.9574863420523, - -4109.79669531306 - ], - "size": [ - 315, - 514.937984496124 - ], - "flags": {}, - "order": 50, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 99 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/nvenc_h264-mp4", - "pix_fmt": "yuv420p", - "bitrate": 10, - "megabit": true, - "save_metadata": false, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00022.mp4", - "subfolder": "", - "type": "temp", - "format": "video/nvenc_h264-mp4", - "frame_rate": 15 - } - } - } - }, - { - "id": 54, - "type": "ParticleEmitter", - "pos": [ - 428.9574863420511, - -4206.796695313062 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 1, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": null, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 96 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0.5, - 0.5, - 180, - 360, - 27.6, - 397, - 100, - "(255,0,0)", - 0.1 - ] - }, - { - "id": 58, - "type": "GravityWell", - "pos": [ - 340.957486342051, - -3896.7966953130613 - ], - "size": { - "0": 330, - "1": 154 - }, - "flags": {}, - "order": 32, - "mode": 4, - "inputs": [ - { - "name": "previous_well", - "type": "GRAVITY_WELL", - "link": 162 - } - ], - "outputs": [ - { - "name": "GRAVITY_WELL", - "type": "GRAVITY_WELL", - "links": [ - 97 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "GravityWell" - }, - "widgets_values": [ - 0.5, - 0.5, - 480, - 160, - "attract" - ] - }, - { - "id": 93, - "type": "GravityWell", - "pos": [ - 338.957486342051, - -3693.796695313062 - ], - "size": { - "0": 330, - "1": 154 - }, - "flags": {}, - "order": 25, - "mode": 4, - "inputs": [ - { - "name": "previous_well", - "type": "GRAVITY_WELL", - "link": 163, - "slot_index": 0 - } - ], - "outputs": [ - { - "name": "GRAVITY_WELL", - "type": "GRAVITY_WELL", - "links": [ - 162 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "GravityWell" - }, - "widgets_values": [ - 0, - 0.5, - 610, - 250, - "attract" - ] - }, - { - "id": 94, - "type": "GravityWell", - "pos": [ - 350.957486342051, - -3490.796695313062 - ], - "size": { - "0": 330, - "1": 154 - }, - "flags": {}, - "order": 2, - "mode": 4, - "inputs": [ - { - "name": "previous_well", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "GRAVITY_WELL", - "type": "GRAVITY_WELL", - "links": [ - 163 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "GravityWell" - }, - "widgets_values": [ - 1, - 0.5, - 500, - 250, - "attract" - ] - }, - { - "id": 4, - "type": "CheckpointLoaderSimple", - "pos": [ - -1988.0726566990127, - 513.6379247099013 - ], - "size": { - "0": 315, - "1": 98 - }, - "flags": {}, - "order": 3, - "mode": 0, - "outputs": [ - { - "name": "MODEL", - "type": "MODEL", - "links": [ - 165 - ], - "slot_index": 0 - }, - { - "name": "CLIP", - "type": "CLIP", - "links": [ - 3, - 5 - ], - "slot_index": 1 - }, - { - "name": "VAE", - "type": "VAE", - "links": [ - 14, - 71 - ], - "slot_index": 2 - } - ], - "properties": { - "Node name for S&R": "CheckpointLoaderSimple" - }, - "widgets_values": [ - "photonLCM_v10.safetensors" - ] - }, - { - "id": 59, - "type": "ParticleEmissionMask", - "pos": [ - 916.9574863420521, - -4105.79669531306 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 45, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 98 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 96, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": null - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": 97 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3, - "slot_index": 0 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 99 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 1, - 0, - 340, - 0.6000000000000001, - 0, - 0, - 0, - 5, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 13, - "type": "ParticleEmitter", - "pos": [ - -313.2402841389896, - 84.0831912336003 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 30, - "mode": 0, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": 12, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 11 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 1, - 0.5, - 160, - 30, - 41.6, - 362, - 100, - "(50,100,150)", - 0.35000000000000003 - ] - }, - { - "id": 8, - "type": "VAEDecode", - "pos": [ - 2940, - 381 - ], - "size": { - "0": 210, - "1": 46 - }, - "flags": {}, - "order": 61, - "mode": 0, - "inputs": [ - { - "name": "samples", - "type": "LATENT", - "link": 7 - }, - { - "name": "vae", - "type": "VAE", - "link": 214 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 27 - ], - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "VAEDecode" - } - }, - { - "id": 26, - "type": "_mfc", - "pos": [ - 2480.762414670049, - -403.0812204134029 - ], - "size": { - "0": 315, - "1": 130 - }, - "flags": {}, - "order": 53, - "mode": 0, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 102 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 185 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "_mfc" - }, - "widgets_values": [ - 50, - 100, - 150, - 0 - ] - }, - { - "id": 27, - "type": "_mfc", - "pos": [ - 2953.762414670049, - -409.0812204134029 - ], - "size": { - "0": 315, - "1": 130 - }, - "flags": {}, - "order": 54, - "mode": 0, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 104 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 190 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "_mfc" - }, - "widgets_values": [ - 255, - 0, - 0, - 0 - ] - }, - { - "id": 60, - "type": "Reroute", - "pos": [ - 1006.9993211426081, - 175.58000379939452 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 48, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 107 - } - ], - "outputs": [ - { - "name": "", - "type": "IMAGE", - "links": [ - 102 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 61, - "type": "Reroute", - "pos": [ - 1009.9993211426081, - 212.58000379939466 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 49, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 174 - } - ], - "outputs": [ - { - "name": "", - "type": "IMAGE", - "links": [ - 104 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 90, - "type": "ConstrainImageforVideo|pysssss", - "pos": [ - -1494.0620444365936, - -809.511248600547 - ], - "size": { - "0": 315, - "1": 154 - }, - "flags": {}, - "order": 31, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 154 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 156 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ConstrainImageforVideo|pysssss" - }, - "widgets_values": [ - 960, - 960, - 0, - 0, - "no" - ] - }, - { - "id": 92, - "type": "GetImageSizeAndCount", - "pos": [ - -1496.0620444365936, - -569.511248600544 - ], - "size": { - "0": 210, - "1": 86 - }, - "flags": {}, - "order": 34, - "mode": 0, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 156 - } - ], - "outputs": [ - { - "name": "image", - "type": "IMAGE", - "links": [ - 157, - 178, - 194 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "960 width", - "type": "INT", - "links": [ - 158 - ], - "shape": 3, - "slot_index": 1 - }, - { - "name": "540 height", - "type": "INT", - "links": [ - 159 - ], - "shape": 3, - "slot_index": 2 - }, - { - "name": "64 count", - "type": "INT", - "links": [ - 160 - ], - "shape": 3, - "slot_index": 3 - } - ], - "properties": { - "Node name for S&R": "GetImageSizeAndCount" - } - }, - { - "id": 100, - "type": "GroundingDinoSAMSegment (segment anything)", - "pos": [ - -951.8691942265446, - -794.2994711220081 - ], - "size": { - "0": 352.79998779296875, - "1": 122 - }, - "flags": {}, - "order": 36, - "mode": 4, - "inputs": [ - { - "name": "sam_model", - "type": "SAM_MODEL", - "link": 176 - }, - { - "name": "grounding_dino_model", - "type": "GROUNDING_DINO_MODEL", - "link": 177, - "slot_index": 1 - }, - { - "name": "image", - "type": "IMAGE", - "link": 178 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": null, - "shape": 3 - }, - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "GroundingDinoSAMSegment (segment anything)" - }, - "widgets_values": [ - "earth", - 0.3 - ] - }, - { - "id": 101, - "type": "GroundingDinoModelLoader (segment anything)", - "pos": [ - -941.8691942265446, - -904.2994711220091 - ], - "size": { - "0": 361.20001220703125, - "1": 58 - }, - "flags": {}, - "order": 4, - "mode": 4, - "outputs": [ - { - "name": "GROUNDING_DINO_MODEL", - "type": "GROUNDING_DINO_MODEL", - "links": [ - 177 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "GroundingDinoModelLoader (segment anything)" - }, - "widgets_values": [ - "GroundingDINO_SwinT_OGC (694MB)" - ] - }, - { - "id": 99, - "type": "SAMModelLoader (segment anything)", - "pos": [ - -949.8691942265446, - -1027.299471122009 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 5, - "mode": 4, - "outputs": [ - { - "name": "SAM_MODEL", - "type": "SAM_MODEL", - "links": [ - 176 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "SAMModelLoader (segment anything)" - }, - "widgets_values": [ - "sam_vit_h (2.56GB)" - ] - }, - { - "id": 97, - "type": "ControlNetLoader", - "pos": [ - 1107.0895373235435, - -677.1546852302321 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 6, - "mode": 0, - "outputs": [ - { - "name": "CONTROL_NET", - "type": "CONTROL_NET", - "links": [ - 171 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "ControlNetLoader" - }, - "widgets_values": [ - "control_v11f1p_sd15_depth_fp16.safetensors" - ] - }, - { - "id": 108, - "type": "DepthAnything_V2", - "pos": [ - 890.0895373235443, - -834.1546852302316 - ], - "size": { - "0": 210, - "1": 46 - }, - "flags": {}, - "order": 37, - "mode": 0, - "inputs": [ - { - "name": "da_model", - "type": "DAMODEL", - "link": 193, - "slot_index": 0 - }, - { - "name": "images", - "type": "IMAGE", - "link": 194 - } - ], - "outputs": [ - { - "name": "image", - "type": "IMAGE", - "links": [ - 195 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "DepthAnything_V2" - } - }, - { - "id": 109, - "type": "DownloadAndLoadDepthAnythingV2Model", - "pos": [ - 764.0895373235442, - -691.1546852302321 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 7, - "mode": 0, - "outputs": [ - { - "name": "da_v2_model", - "type": "DAMODEL", - "links": [ - 193 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "DownloadAndLoadDepthAnythingV2Model" - }, - "widgets_values": [ - "depth_anything_v2_vitl_fp32.safetensors" - ] - }, - { - "id": 107, - "type": "VHS_VideoCombine", - "pos": [ - 1806.3027311370313, - 307.11293240169374 - ], - "size": [ - 315, - 515.5 - ], - "flags": {}, - "order": 55, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 192 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/nvenc_h264-mp4", - "pix_fmt": "yuv420p", - "bitrate": 10, - "megabit": true, - "save_metadata": false, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00041.mp4", - "subfolder": "", - "type": "temp", - "format": "video/nvenc_h264-mp4", - "frame_rate": 15 - } - } - } - }, - { - "id": 18, - "type": "SetLatentNoiseMask", - "pos": [ - 1396.3027311370313, - 661.1129324016931 - ], - "size": { - "0": 210, - "1": 46 - }, - "flags": {}, - "order": 51, - "mode": 0, - "inputs": [ - { - "name": "samples", - "type": "LATENT", - "link": 161 - }, - { - "name": "mask", - "type": "MASK", - "link": 56 - } - ], - "outputs": [ - { - "name": "LATENT", - "type": "LATENT", - "links": [ - 88 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "SetLatentNoiseMask" - } - }, - { - "id": 16, - "type": "VAEEncode", - "pos": [ - 1375.3027311370313, - 802.1129324016924 - ], - "size": { - "0": 210, - "1": 46 - }, - "flags": {}, - "order": 35, - "mode": 0, - "inputs": [ - { - "name": "pixels", - "type": "IMAGE", - "link": 157 - }, - { - "name": "vae", - "type": "VAE", - "link": 14 - } - ], - "outputs": [ - { - "name": "LATENT", - "type": "LATENT", - "links": [ - 161 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "VAEEncode" - } - }, - { - "id": 30, - "type": "IPAdapterUnifiedLoader", - "pos": [ - 2447.762414670049, - -1283.0812204134056 - ], - "size": { - "0": 315, - "1": 78 - }, - "flags": {}, - "order": 33, - "mode": 0, - "inputs": [ - { - "name": "model", - "type": "MODEL", - "link": 166 - }, - { - "name": "ipadapter", - "type": "IPADAPTER", - "link": null - } - ], - "outputs": [ - { - "name": "model", - "type": "MODEL", - "links": [ - 182 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "ipadapter", - "type": "IPADAPTER", - "links": [ - 183, - 196 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "IPAdapterUnifiedLoader" - }, - "widgets_values": [ - "PLUS (high strength)" - ] - }, - { - "id": 37, - "type": "VHS_VideoCombine", - "pos": [ - 6160, - 270 - ], - "size": [ - 315, - 487.6328125 - ], - "flags": {}, - "order": 68, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 218 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 16, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00043.mp4", - "subfolder": "", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 16 - } - } - } - }, - { - "id": 96, - "type": "ControlNetApplyAdvanced", - "pos": [ - 1145.0895373235435, - -898.1546852302317 - ], - "size": { - "0": 315, - "1": 166 - }, - "flags": {}, - "order": 39, - "mode": 0, - "inputs": [ - { - "name": "positive", - "type": "CONDITIONING", - "link": 167 - }, - { - "name": "negative", - "type": "CONDITIONING", - "link": 168 - }, - { - "name": "control_net", - "type": "CONTROL_NET", - "link": 171, - "slot_index": 2 - }, - { - "name": "image", - "type": "IMAGE", - "link": 195 - } - ], - "outputs": [ - { - "name": "positive", - "type": "CONDITIONING", - "links": [ - 210 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "negative", - "type": "CONDITIONING", - "links": [ - 206 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ControlNetApplyAdvanced" - }, - "widgets_values": [ - 0.28, - 0, - 0.6960000000000001 - ] - }, - { - "id": 34, - "type": "KSampler", - "pos": [ - 4540, - 610 - ], - "size": { - "0": 315, - "1": 262 - }, - "flags": {}, - "order": 64, - "mode": 0, - "inputs": [ - { - "name": "model", - "type": "MODEL", - "link": 69 - }, - { - "name": "positive", - "type": "CONDITIONING", - "link": 215 - }, - { - "name": "negative", - "type": "CONDITIONING", - "link": 216 - }, - { - "name": "latent_image", - "type": "LATENT", - "link": 48 - } - ], - "outputs": [ - { - "name": "LATENT", - "type": "LATENT", - "links": [ - 52 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "KSampler" - }, - "widgets_values": [ - 866894971726240, - "fixed", - 4, - 1, - "lcm", - "sgm_uniform", - 0.3 - ] - }, - { - "id": 10, - "type": "EmptyImage", - "pos": [ - -944.9997558592206, - -507.27393687824997 - ], - "size": { - "0": 315, - "1": 130 - }, - "flags": {}, - "order": 38, - "mode": 0, - "inputs": [ - { - "name": "width", - "type": "INT", - "link": 158, - "widget": { - "name": "width" - } - }, - { - "name": "height", - "type": "INT", - "link": 159, - "widget": { - "name": "height" - } - }, - { - "name": "batch_size", - "type": "INT", - "link": 160, - "widget": { - "name": "batch_size" - } - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 18 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "EmptyImage" - }, - "widgets_values": [ - 512, - 512, - 64, - 0 - ] - }, - { - "id": 116, - "type": "Note", - "pos": [ - 836.9042033384885, - -3560.82267015136 - ], - "size": { - "0": 249.20611572265625, - "1": 92.45272827148438 - }, - "flags": {}, - "order": 8, - "mode": 4, - "properties": { - "text": "" - }, - "widgets_values": [ - "here just messing around" - ], - "color": "#432", - "bgcolor": "#653" - }, - { - "id": 102, - "type": "Vortex", - "pos": [ - -515.0006788573936, - 728.5800037993948 - ], - "size": { - "0": 315, - "1": 178 - }, - "flags": {}, - "order": 9, - "mode": 4, - "inputs": [ - { - "name": "previous_vortex", - "type": "VORTEX", - "link": null - } - ], - "outputs": [ - { - "name": "VORTEX", - "type": "VORTEX", - "links": [ - 180 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "Vortex" - }, - "widgets_values": [ - 0.5, - 0.5, - 1000, - 270, - 0.4, - 0 - ] - }, - { - "id": 15, - "type": "VHS_VideoCombine", - "pos": [ - 573.999321142608, - 325.5800037993947 - ], - "size": [ - 315, - 515.5 - ], - "flags": {}, - "order": 47, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 13 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/nvenc_h264-mp4", - "pix_fmt": "yuv420p", - "bitrate": 10, - "megabit": true, - "save_metadata": false, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00040.mp4", - "subfolder": "", - "type": "temp", - "format": "video/nvenc_h264-mp4", - "frame_rate": 15 - } - } - } - }, - { - "id": 118, - "type": "Note", - "pos": [ - 544.999321142608, - 30.58000379939423 - ], - "size": { - "0": 306.046630859375, - "1": 133.32003784179688 - }, - "flags": {}, - "order": 10, - "mode": 0, - "properties": { - "text": "" - }, - "widgets_values": [ - "we send the IMAGE output to the ip adapters so that we can mask the separate colors" - ], - "color": "#432", - "bgcolor": "#653" - }, - { - "id": 62, - "type": "MaskToImage", - "pos": [ - 1448, - 357 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 52, - "mode": 0, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 108 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 192 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 120, - "type": "Note", - "pos": [ - 2795, - -221 - ], - "size": { - "0": 210, - "1": 58 - }, - "flags": {}, - "order": 11, - "mode": 0, - "properties": { - "text": "" - }, - "widgets_values": [ - "" - ], - "color": "#432", - "bgcolor": "#653" - }, - { - "id": 40, - "type": "GrowMask", - "pos": [ - 1350.3027311370313, - 429.1129324016938 - ], - "size": { - "0": 315, - "1": 82 - }, - "flags": {}, - "order": 46, - "mode": 0, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 175 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 56, - 108 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "GrowMask" - }, - "widgets_values": [ - 6, - true - ] - }, - { - "id": 117, - "type": "Note", - "pos": [ - -709.0006788573933, - 431.5800037993948 - ], - "size": { - "0": 210, - "1": 58 - }, - "flags": {}, - "order": 12, - "mode": 0, - "properties": { - "text": "" - }, - "widgets_values": [ - "we have two particle emitters, one red one blue" - ], - "color": "#432", - "bgcolor": "#653" - }, - { - "id": 119, - "type": "Note", - "pos": [ - 1382, - 202 - ], - "size": { - "0": 276.56475830078125, - "1": 96.5937728881836 - }, - "flags": {}, - "order": 13, - "mode": 0, - "properties": { - "text": "" - }, - "widgets_values": [ - "the latent mask ensures nothing but the masked areas will be sampled\n\nwe expand the masks to give the models more area to work with" - ], - "color": "#432", - "bgcolor": "#653" - }, - { - "id": 12, - "type": "ParticleEmissionMask", - "pos": [ - 33.76221680300504, - 142.26452527155757 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 44, - "mode": 0, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 93 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 11, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": 180, - "slot_index": 2 - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": 181, - "slot_index": 3 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 175 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 13, - 107, - 174 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 543, - 5.800000000000001, - 0, - 0, - 0, - 0, - 0, - false, - 1, - 10, - 0.71 - ] - }, - { - "id": 46, - "type": "Reroute", - "pos": [ - 2501, - 272 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 59, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 208 - } - ], - "outputs": [ - { - "name": "", - "type": "MODEL", - "links": [ - 69, - 209 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 32, - "type": "LoadImage", - "pos": [ - 2477, - -1169 - ], - "size": { - "0": 315, - "1": 314 - }, - "flags": {}, - "order": 14, - "mode": 0, - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 197 - ], - "shape": 3 - }, - { - "name": "MASK", - "type": "MASK", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "LoadImage" - }, - "widgets_values": [ - "FREE_psychadelicFire.webp", - "image" - ] - }, - { - "id": 106, - "type": "IPAdapterAdvanced", - "pos": [ - 2954, - -791 - ], - "size": { - "0": 315, - "1": 326 - }, - "flags": {}, - "order": 57, - "mode": 0, - "inputs": [ - { - "name": "model", - "type": "MODEL", - "link": 187 - }, - { - "name": "ipadapter", - "type": "IPADAPTER", - "link": 196 - }, - { - "name": "image", - "type": "IMAGE", - "link": 198 - }, - { - "name": "image_negative", - "type": "IMAGE", - "link": null - }, - { - "name": "attn_mask", - "type": "MASK", - "link": 190 - }, - { - "name": "clip_vision", - "type": "CLIP_VISION", - "link": null - } - ], - "outputs": [ - { - "name": "MODEL", - "type": "MODEL", - "links": [ - 191 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "IPAdapterAdvanced" - }, - "widgets_values": [ - 1, - "strong style transfer", - "concat", - 0, - 1, - "V only" - ] - }, - { - "id": 105, - "type": "IPAdapterAdvanced", - "pos": [ - 2481, - -789 - ], - "size": { - "0": 315, - "1": 326 - }, - "flags": {}, - "order": 56, - "mode": 0, - "inputs": [ - { - "name": "model", - "type": "MODEL", - "link": 182 - }, - { - "name": "ipadapter", - "type": "IPADAPTER", - "link": 183 - }, - { - "name": "image", - "type": "IMAGE", - "link": 197 - }, - { - "name": "image_negative", - "type": "IMAGE", - "link": null - }, - { - "name": "attn_mask", - "type": "MASK", - "link": 185 - }, - { - "name": "clip_vision", - "type": "CLIP_VISION", - "link": null - } - ], - "outputs": [ - { - "name": "MODEL", - "type": "MODEL", - "links": [ - 187 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "IPAdapterAdvanced" - }, - "widgets_values": [ - 0.3, - "strong style transfer", - "concat", - 0, - 1, - "V only" - ] - }, - { - "id": 95, - "type": "LoraLoaderModelOnly", - "pos": [ - -1418.0726566990081, - 163.63792470990077 - ], - "size": { - "0": 315, - "1": 82 - }, - "flags": {}, - "order": 26, - "mode": 0, - "inputs": [ - { - "name": "model", - "type": "MODEL", - "link": 165 - } - ], - "outputs": [ - { - "name": "MODEL", - "type": "MODEL", - "links": [ - 166 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "LoraLoaderModelOnly" - }, - "widgets_values": [ - "ral-dissolve-sd15.safetensors", - 1 - ] - }, - { - "id": 24, - "type": "VHS_VideoCombine", - "pos": [ - 3310, - 423 - ], - "size": [ - 315, - 512.7208121827412 - ], - "flags": {}, - "order": 63, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 27 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/nvenc_h264-mp4", - "pix_fmt": "yuv420p", - "bitrate": 10, - "megabit": true, - "save_metadata": true, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00042.mp4", - "subfolder": "", - "type": "temp", - "format": "video/nvenc_h264-mp4", - "frame_rate": 15 - } - } - } - }, - { - "id": 35, - "type": "NNLatentUpscale", - "pos": [ - 3986, - 779 - ], - "size": { - "0": 315, - "1": 82 - }, - "flags": {}, - "order": 62, - "mode": 4, - "inputs": [ - { - "name": "latent", - "type": "LATENT", - "link": 47 - } - ], - "outputs": [ - { - "name": "LATENT", - "type": "LATENT", - "links": [ - 48 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "NNLatentUpscale" - }, - "widgets_values": [ - "SD 1.x", - 1.5 - ] - }, - { - "id": 31, - "type": "LoadImage", - "pos": [ - 2931, - -1180 - ], - "size": { - "0": 315, - "1": 314 - }, - "flags": {}, - "order": 15, - "mode": 0, - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 198 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "MASK", - "type": "MASK", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "LoadImage" - }, - "widgets_values": [ - "water.jpg", - "image" - ] - }, - { - "id": 6, - "type": "CLIPTextEncode", - "pos": [ - -1488.0726566990081, - 293.6379247099005 - ], - "size": { - "0": 422.84503173828125, - "1": 164.31304931640625 - }, - "flags": {}, - "order": 27, - "mode": 0, - "inputs": [ - { - "name": "clip", - "type": "CLIP", - "link": 3 - } - ], - "outputs": [ - { - "name": "CONDITIONING", - "type": "CONDITIONING", - "links": [ - 167 - ], - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "CLIPTextEncode" - }, - "widgets_values": [ - "ral-dissolve enveloping earth, floating in the vastness of space, in the style of mesmerizing colorscapes, energy-filled illustrations, colorful, glorious, contrasting lights and darks, photorealistic paintings, energy-charged, ral-dissolve water fire" - ] - }, - { - "id": 57, - "type": "Reroute", - "pos": [ - -409, - -335 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 43, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 207 - } - ], - "outputs": [ - { - "name": "", - "type": "MASK", - "links": [ - 93, - 98 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 122, - "type": "ADE_StandardStaticContextOptions", - "pos": [ - 3562, - -1182 - ], - "size": { - "0": 319.20001220703125, - "1": 198 - }, - "flags": {}, - "order": 16, - "mode": 0, - "inputs": [ - { - "name": "prev_context", - "type": "CONTEXT_OPTIONS", - "link": null - }, - { - "name": "view_opts", - "type": "VIEW_OPTS", - "link": null - } - ], - "outputs": [ - { - "name": "CONTEXT_OPTS", - "type": "CONTEXT_OPTIONS", - "links": [ - 211 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ADE_StandardStaticContextOptions" - }, - "widgets_values": [ - 16, - 4, - "pyramid", - false, - 0, - 1 - ] - }, - { - "id": 110, - "type": "ADE_StandardUniformContextOptions", - "pos": [ - 4158, - -1357 - ], - "size": { - "0": 327.6000061035156, - "1": 222 - }, - "flags": {}, - "order": 17, - "mode": 0, - "inputs": [ - { - "name": "prev_context", - "type": "CONTEXT_OPTIONS", - "link": null - }, - { - "name": "view_opts", - "type": "VIEW_OPTS", - "link": null - } - ], - "outputs": [ - { - "name": "CONTEXT_OPTS", - "type": "CONTEXT_OPTIONS", - "links": [], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ADE_StandardUniformContextOptions" - }, - "widgets_values": [ - 16, - 1, - 4, - "pyramid", - false, - 0, - 1 - ] - }, - { - "id": 103, - "type": "GravityWell", - "pos": [ - -45.000678857393076, - 730.5800037993948 - ], - "size": { - "0": 330, - "1": 154 - }, - "flags": {}, - "order": 18, - "mode": 0, - "inputs": [ - { - "name": "previous_well", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "GRAVITY_WELL", - "type": "GRAVITY_WELL", - "links": [ - 181 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "GravityWell" - }, - "widgets_values": [ - 0.5, - 0.5, - 230, - 300, - "attract" - ] - }, - { - "id": 14, - "type": "ParticleEmitter", - "pos": [ - -685, - 55 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 19, - "mode": 0, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": null, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 12 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0, - 0.5, - 337, - 57, - 34.4, - 384, - 96.5, - "(255,0,0)", - 0.35000000000000003 - ] - }, - { - "id": 3, - "type": "KSampler", - "pos": [ - 2582, - 488 - ], - "size": { - "0": 315, - "1": 262 - }, - "flags": {}, - "order": 60, - "mode": 0, - "inputs": [ - { - "name": "model", - "type": "MODEL", - "link": 209 - }, - { - "name": "positive", - "type": "CONDITIONING", - "link": 212 - }, - { - "name": "negative", - "type": "CONDITIONING", - "link": 213 - }, - { - "name": "latent_image", - "type": "LATENT", - "link": 88 - } - ], - "outputs": [ - { - "name": "LATENT", - "type": "LATENT", - "links": [ - 7, - 47 - ], - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "KSampler" - }, - "widgets_values": [ - 1008539459902328, - "fixed", - 4, - 1.9000000000000001, - "lcm", - "sgm_uniform", - 0.8 - ] - }, - { - "id": 47, - "type": "Reroute", - "pos": [ - 2500, - 323 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 29, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 71 - } - ], - "outputs": [ - { - "name": "", - "type": "VAE", - "links": [ - 72, - 214 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 44, - "type": "Reroute", - "pos": [ - 2507, - 372 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 41, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 210 - } - ], - "outputs": [ - { - "name": "", - "type": "CONDITIONING", - "links": [ - 212, - 215 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 45, - "type": "Reroute", - "pos": [ - 2505, - 415 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 42, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 206 - } - ], - "outputs": [ - { - "name": "", - "type": "CONDITIONING", - "links": [ - 213, - 216 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 121, - "type": "Note", - "pos": [ - 3943, - 383 - ], - "size": { - "0": 345.6462097167969, - "1": 108.14704895019531 - }, - "flags": {}, - "order": 20, - "mode": 0, - "properties": { - "text": "" - }, - "widgets_values": [ - "for the second sampler, we sample the whole image. Since we only sampled the particles in the first, we still retain some \"washing over\" effect.\n\n" - ], - "color": "#432", - "bgcolor": "#653" - }, - { - "id": 7, - "type": "CLIPTextEncode", - "pos": [ - -1465.1048106245623, - 515.133752881524 - ], - "size": { - "0": 425.27801513671875, - "1": 180.6060791015625 - }, - "flags": {}, - "order": 28, - "mode": 0, - "inputs": [ - { - "name": "clip", - "type": "CLIP", - "link": 5 - } - ], - "outputs": [ - { - "name": "CONDITIONING", - "type": "CONDITIONING", - "links": [ - 168 - ], - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "CLIPTextEncode" - }, - "widgets_values": [ - "text, watermark" - ] - }, - { - "id": 89, - "type": "VHS_LoadVideo", - "pos": [ - -1865.0620444365973, - -762.511248600547 - ], - "size": [ - 235.1999969482422, - 397.112556422034 - ], - "flags": {}, - "order": 21, - "mode": 0, - "inputs": [ - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 154 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "frame_count", - "type": "INT", - "links": null, - "shape": 3 - }, - { - "name": "audio", - "type": "AUDIO", - "links": null, - "shape": 3 - }, - { - "name": "video_info", - "type": "VHS_VIDEOINFO", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_LoadVideo" - }, - "widgets_values": { - "video": "ERF.mp4", - "force_rate": 15, - "force_size": "Disabled", - "custom_width": 512, - "custom_height": 512, - "frame_load_cap": 100, - "skip_first_frames": 0, - "select_every_nth": 1, - "choose video to upload": "image", - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "frame_load_cap": 100, - "skip_first_frames": 0, - "force_rate": 15, - "filename": "ERF.mp4", - "type": "input", - "format": "video/mp4", - "select_every_nth": 1 - } - } - } - }, - { - "id": 17, - "type": "_mfc", - "pos": [ - -931, - -346 - ], - "size": { - "0": 307.56854248046875, - "1": 130 - }, - "flags": {}, - "order": 40, - "mode": 0, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 18 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 207 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "_mfc" - }, - "widgets_values": [ - 255, - 255, - 255, - 0 - ] - }, - { - "id": 115, - "type": "Note", - "pos": [ - -941, - -647 - ], - "size": { - "0": 275.30029296875, - "1": 87.48311614990234 - }, - "flags": {}, - "order": 22, - "mode": 0, - "properties": { - "text": "" - }, - "widgets_values": [ - "here we can mask an object in the video, or send a blank mask\n\n" - ], - "color": "#432", - "bgcolor": "#653" - }, - { - "id": 36, - "type": "VAEDecode", - "pos": [ - 5196, - 279 - ], - "size": { - "0": 210, - "1": 46 - }, - "flags": {}, - "order": 65, - "mode": 0, - "inputs": [ - { - "name": "samples", - "type": "LATENT", - "link": 52 - }, - { - "name": "vae", - "type": "VAE", - "link": 72 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 217 - ], - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "VAEDecode" - } - }, - { - "id": 114, - "type": "ImageCASharpening+", - "pos": [ - 5358, - 414 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 66, - "mode": 0, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 217 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 219 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ImageCASharpening+" - }, - "widgets_values": [ - 0.15 - ] - }, - { - "id": 113, - "type": "UpscaleModelLoader", - "pos": [ - 5711, - 549 - ], - "size": { - "0": 315, - "1": 58 - }, - "flags": {}, - "order": 23, - "mode": 0, - "outputs": [ - { - "name": "UPSCALE_MODEL", - "type": "UPSCALE_MODEL", - "links": [ - 202 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "UpscaleModelLoader" - }, - "widgets_values": [ - "RealESRGAN_x2.pth" - ] - }, - { - "id": 112, - "type": "ImageUpscaleWithModel", - "pos": [ - 5798, - 335 - ], - "size": { - "0": 241.79998779296875, - "1": 46 - }, - "flags": {}, - "order": 67, - "mode": 0, - "inputs": [ - { - "name": "upscale_model", - "type": "UPSCALE_MODEL", - "link": 202, - "slot_index": 0 - }, - { - "name": "image", - "type": "IMAGE", - "link": 219 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 218, - 220 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ImageUpscaleWithModel" - } - }, - { - "id": 123, - "type": "VHS_VideoCombine", - "pos": [ - 6553, - 275 - ], - "size": [ - 315, - 441 - ], - "flags": {}, - "order": 69, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 220 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 16, - "loop_count": 0, - "filename_prefix": "masks/earth", - "format": "video/ffmpeg-gif", - "dither": "sierra2_4a", - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00043.mp4", - "subfolder": "", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 16 - } - } - } - } - ], - "links": [ - [ - 3, - 4, - 1, - 6, - 0, - "CLIP" - ], - [ - 5, - 4, - 1, - 7, - 0, - "CLIP" - ], - [ - 7, - 3, - 0, - 8, - 0, - "LATENT" - ], - [ - 11, - 13, - 0, - 12, - 1, - "PARTICLE_EMITTER" - ], - [ - 12, - 14, - 0, - 13, - 0, - "PARTICLE_EMITTER" - ], - [ - 13, - 12, - 1, - 15, - 0, - "IMAGE" - ], - [ - 14, - 4, - 2, - 16, - 1, - "VAE" - ], - [ - 18, - 10, - 0, - 17, - 0, - "IMAGE" - ], - [ - 22, - 19, - 0, - 20, - 1, - "M_MODELS" - ], - [ - 27, - 8, - 0, - 24, - 0, - "IMAGE" - ], - [ - 28, - 25, - 0, - 19, - 0, - "MOTION_MODEL_ADE" - ], - [ - 47, - 3, - 0, - 35, - 0, - "LATENT" - ], - [ - 48, - 35, - 0, - 34, - 3, - "LATENT" - ], - [ - 52, - 34, - 0, - 36, - 0, - "LATENT" - ], - [ - 56, - 40, - 0, - 18, - 1, - "MASK" - ], - [ - 69, - 46, - 0, - 34, - 0, - "MODEL" - ], - [ - 71, - 4, - 2, - 47, - 0, - "*" - ], - [ - 72, - 47, - 0, - 36, - 1, - "VAE" - ], - [ - 88, - 18, - 0, - 3, - 3, - "LATENT" - ], - [ - 93, - 57, - 0, - 12, - 0, - "MASK" - ], - [ - 96, - 54, - 0, - 59, - 1, - "PARTICLE_EMITTER" - ], - [ - 97, - 58, - 0, - 59, - 3, - "GRAVITY_WELL" - ], - [ - 98, - 57, - 0, - 59, - 0, - "MASK" - ], - [ - 99, - 59, - 1, - 56, - 0, - "IMAGE" - ], - [ - 102, - 60, - 0, - 26, - 0, - "IMAGE" - ], - [ - 104, - 61, - 0, - 27, - 0, - "IMAGE" - ], - [ - 107, - 12, - 1, - 60, - 0, - "*" - ], - [ - 108, - 40, - 0, - 62, - 0, - "MASK" - ], - [ - 154, - 89, - 0, - 90, - 0, - "IMAGE" - ], - [ - 156, - 90, - 0, - 92, - 0, - "IMAGE" - ], - [ - 157, - 92, - 0, - 16, - 0, - "IMAGE" - ], - [ - 158, - 92, - 1, - 10, - 0, - "INT" - ], - [ - 159, - 92, - 2, - 10, - 1, - "INT" - ], - [ - 160, - 92, - 3, - 10, - 2, - "INT" - ], - [ - 161, - 16, - 0, - 18, - 0, - "LATENT" - ], - [ - 162, - 93, - 0, - 58, - 0, - "GRAVITY_WELL" - ], - [ - 163, - 94, - 0, - 93, - 0, - "GRAVITY_WELL" - ], - [ - 165, - 4, - 0, - 95, - 0, - "MODEL" - ], - [ - 166, - 95, - 0, - 30, - 0, - "MODEL" - ], - [ - 167, - 6, - 0, - 96, - 0, - "CONDITIONING" - ], - [ - 168, - 7, - 0, - 96, - 1, - "CONDITIONING" - ], - [ - 171, - 97, - 0, - 96, - 2, - "CONTROL_NET" - ], - [ - 174, - 12, - 1, - 61, - 0, - "*" - ], - [ - 175, - 12, - 0, - 40, - 0, - "MASK" - ], - [ - 176, - 99, - 0, - 100, - 0, - "SAM_MODEL" - ], - [ - 177, - 101, - 0, - 100, - 1, - "GROUNDING_DINO_MODEL" - ], - [ - 178, - 92, - 0, - 100, - 2, - "IMAGE" - ], - [ - 180, - 102, - 0, - 12, - 2, - "VORTEX" - ], - [ - 181, - 103, - 0, - 12, - 3, - "GRAVITY_WELL" - ], - [ - 182, - 30, - 0, - 105, - 0, - "MODEL" - ], - [ - 183, - 30, - 1, - 105, - 1, - "IPADAPTER" - ], - [ - 185, - 26, - 0, - 105, - 4, - "MASK" - ], - [ - 187, - 105, - 0, - 106, - 0, - "MODEL" - ], - [ - 190, - 27, - 0, - 106, - 4, - "MASK" - ], - [ - 191, - 106, - 0, - 20, - 0, - "MODEL" - ], - [ - 192, - 62, - 0, - 107, - 0, - "IMAGE" - ], - [ - 193, - 109, - 0, - 108, - 0, - "DAMODEL" - ], - [ - 194, - 92, - 0, - 108, - 1, - "IMAGE" - ], - [ - 195, - 108, - 0, - 96, - 3, - "IMAGE" - ], - [ - 196, - 30, - 1, - 106, - 1, - "IPADAPTER" - ], - [ - 197, - 32, - 0, - 105, - 2, - "IMAGE" - ], - [ - 198, - 31, - 0, - 106, - 2, - "IMAGE" - ], - [ - 202, - 113, - 0, - 112, - 0, - "UPSCALE_MODEL" - ], - [ - 206, - 96, - 1, - 45, - 0, - "*" - ], - [ - 207, - 17, - 0, - 57, - 0, - "*" - ], - [ - 208, - 20, - 0, - 46, - 0, - "*" - ], - [ - 209, - 46, - 0, - 3, - 0, - "MODEL" - ], - [ - 210, - 96, - 0, - 44, - 0, - "*" - ], - [ - 211, - 122, - 0, - 20, - 2, - "CONTEXT_OPTIONS" - ], - [ - 212, - 44, - 0, - 3, - 1, - "CONDITIONING" - ], - [ - 213, - 45, - 0, - 3, - 2, - "CONDITIONING" - ], - [ - 214, - 47, - 0, - 8, - 1, - "VAE" - ], - [ - 215, - 44, - 0, - 34, - 1, - "CONDITIONING" - ], - [ - 216, - 45, - 0, - 34, - 2, - "CONDITIONING" - ], - [ - 217, - 36, - 0, - 114, - 0, - "IMAGE" - ], - [ - 218, - 112, - 0, - 37, - 0, - "IMAGE" - ], - [ - 219, - 114, - 0, - 112, - 1, - "IMAGE" - ], - [ - 220, - 112, - 0, - 123, - 0, - "IMAGE" - ] - ], - "groups": [ - { - "title": "Particle Emitter", - "bounding": [ - -534, - -26, - 1679, - 938 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Gravity Well", - "bounding": [ - 336, - -4338, - 1412, - 913 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Anim Diff", - "bounding": [ - 3520, - -1375, - 485, - 881 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Load Video", - "bounding": [ - -1905, - -1006, - 821, - 786 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Ctrl Net", - "bounding": [ - 734, - -1014, - 853, - 511 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Mask", - "bounding": [ - -986, - -1163, - 478, - 935 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Latent noise mask", - "bounding": [ - 1310, - 205, - 865, - 679 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Sample", - "bounding": [ - 2479, - 178, - 1263, - 753 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Sample2", - "bounding": [ - 3828, - 136, - 1082, - 810 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Upscale", - "bounding": [ - 5016, - 136, - 1536, - 684 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Ipadapters", - "bounding": [ - 2401, - -1382, - 1045, - 1164 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - }, - { - "title": "Model", - "bounding": [ - -2003, - 58, - 1132, - 817 - ], - "color": "#3f789e", - "font_size": 24, - "locked": false - } - ], - "config": {}, - "extra": { - "ds": { - "scale": 0.1610510000000264, - "offset": [ - 2796.673050610804, - 3433.147746336461 - ] - } - }, - "version": 0.4 -} \ No newline at end of file diff --git a/examples/mask_examples.json b/examples/mask_examples.json deleted file mode 100644 index dad096c..0000000 --- a/examples/mask_examples.json +++ /dev/null @@ -1,6593 +0,0 @@ -{ - "last_node_id": 249, - "last_link_id": 391, - "nodes": [ - { - "id": 103, - "type": "ParticleEmitter", - "pos": [ - -420, - -4480 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 0, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": null, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 143 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0, - 0, - 45, - 0, - 73.5, - 609, - 16.8, - "(255,0,0)", - 0 - ] - }, - { - "id": 91, - "type": "EmptyImage", - "pos": [ - -1977, - 681 - ], - "size": { - "0": 315, - "1": 130 - }, - "flags": {}, - "order": 29, - "mode": 0, - "inputs": [ - { - "name": "batch_size", - "type": "INT", - "link": 180, - "widget": { - "name": "batch_size" - } - }, - { - "name": "width", - "type": "INT", - "link": 182, - "widget": { - "name": "width" - }, - "slot_index": 1 - }, - { - "name": "height", - "type": "INT", - "link": 183, - "widget": { - "name": "height" - } - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 168 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "EmptyImage" - }, - "widgets_values": [ - 512, - 768, - 30, - 0 - ] - }, - { - "id": 126, - "type": "Reroute", - "pos": [ - -1166.5090260535044, - 939.5748645327526 - ], - "size": [ - 75, - 26 - ], - "flags": {}, - "order": 53, - "mode": 0, - "inputs": [ - { - "name": "", - "type": "*", - "link": 169 - } - ], - "outputs": [ - { - "name": "", - "type": "MASK", - "links": [ - 170, - 171, - 172, - 195, - 209, - 220, - 222 - ], - "slot_index": 0 - } - ], - "properties": { - "showOutputText": false, - "horizontal": false - } - }, - { - "id": 142, - "type": "ParticleEmitter", - "pos": [ - 1320, - -2170 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 44, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": 197, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 196 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0.99, - 0.5, - 180, - 0, - 63.7, - 609, - 16.8, - "(255,0,0)", - 0 - ] - }, - { - "id": 143, - "type": "ParticleEmitter", - "pos": [ - 920, - -2160 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 33, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": 199, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 197 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0, - 0.5, - 0, - 0, - 62.400000000000006, - 609, - 16.8, - "(50,100,150)", - 0 - ] - }, - { - "id": 145, - "type": "ParticleEmitter", - "pos": [ - 510, - -2160 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 18, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": null, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": 200, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 199 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0, - 0.9, - 270, - 0, - 20.6, - 609, - 16.8, - "(0,100,0)", - 0 - ] - }, - { - "id": 146, - "type": "EmitterMovement", - "pos": [ - 120, - -2130 - ], - "size": { - "0": 285.6000061035156, - "1": 181.7848663330078 - }, - "flags": {}, - "order": 1, - "mode": 4, - "outputs": [ - { - "name": "EMITTER_MOVEMENT", - "type": "EMITTER_MOVEMENT", - "links": [ - 200 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "EmitterMovement" - }, - "widgets_values": [ - 0.5, - 0.5, - 0, - 0.5, - 0, - 180 - ] - }, - { - "id": 147, - "type": "ParticleEmitter", - "pos": [ - 3790, - -2020 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 19, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": null, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": 204, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 203 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0.5, - 0.5, - 270, - 0, - 20.6, - 609, - 100, - "(150,0,150)", - 0 - ] - }, - { - "id": 149, - "type": "EmitterMovement", - "pos": [ - 3410, - -1980 - ], - "size": { - "0": 285.6000061035156, - "1": 181.7848663330078 - }, - "flags": {}, - "order": 2, - "mode": 4, - "outputs": [ - { - "name": "EMITTER_MOVEMENT", - "type": "EMITTER_MOVEMENT", - "links": [ - 204 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "EmitterMovement" - }, - "widgets_values": [ - 0, - 0, - 0, - 0, - 0.62, - 360 - ] - }, - { - "id": 156, - "type": "ParticleEmitter", - "pos": [ - 3320, - -620 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 20, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": 212, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 210 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 1, - 0.5700000000000001, - 180, - 0, - 19.400000000000002, - 170, - 100, - "(255,0,0)", - 0 - ] - }, - { - "id": 157, - "type": "ParticleEmitter", - "pos": [ - 3310, - -940 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 3, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": null, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 212 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0, - 0.35000000000000003, - 0, - 0, - 17.6, - 37, - 100, - "(50,100,150)", - 0 - ] - }, - { - "id": 160, - "type": "Vortex", - "pos": [ - 3750, - -610 - ], - "size": { - "0": 306.17706298828125, - "1": 178 - }, - "flags": {}, - "order": 4, - "mode": 4, - "inputs": [ - { - "name": "previous_vortex", - "type": "VORTEX", - "link": null - } - ], - "outputs": [ - { - "name": "VORTEX", - "type": "VORTEX", - "links": [ - 214 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "Vortex" - }, - "widgets_values": [ - 0.5, - 0.6, - 500, - 370, - 0.14, - 0 - ] - }, - { - "id": 140, - "type": "VHS_VideoCombine", - "pos": [ - 2590, - -2170 - ], - "size": [ - 410, - 310 - ], - "flags": {}, - "order": 83, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 194 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": false, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00008.mp4", - "subfolder": "", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 113, - "type": "ParticleEmitter", - "pos": [ - 2660, - -3020 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 5, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": null, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 156 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0, - 0.5, - 0, - 30, - 20.400000000000002, - 384, - 45.900000000000006, - "(50,100,150)", - 0.51 - ] - }, - { - "id": 112, - "type": "ParticleEmitter", - "pos": [ - 2660, - -3450 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 21, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": 156, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 155, - 223, - 224 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 1, - 0.5, - 180, - 30, - 21.3, - 312, - 45.1, - "(255,0,0)", - 0.49 - ] - }, - { - "id": 110, - "type": "VHS_VideoCombine", - "pos": [ - 5480, - -4980 - ], - "size": [ - 410, - 310 - ], - "flags": {}, - "order": 82, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 153 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": false, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00002.mp4", - "subfolder": "", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 114, - "type": "VHS_VideoCombine", - "pos": [ - 5290, - -1900 - ], - "size": [ - 410, - 310 - ], - "flags": {}, - "order": 80, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 157 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": false, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00005.mp4", - "subfolder": "", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 109, - "type": "MaskFromColor+", - "pos": [ - -340, - -4830 - ], - "size": { - "0": 315, - "1": 130 - }, - "flags": {}, - "order": 34, - "mode": 4, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 151 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 152 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskFromColor+" - }, - "widgets_values": [ - 255, - 255, - 255, - 0 - ] - }, - { - "id": 123, - "type": "ParticleEmitter", - "pos": [ - 240, - -1030 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 6, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": null, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 166 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0, - 0.17, - 0, - 0, - 17.6, - 137, - 16.8, - "(50,100,150)", - 0 - ] - }, - { - "id": 122, - "type": "ParticleEmitter", - "pos": [ - 770, - -920 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 22, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": 166, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 165 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 1, - 0.6900000000000001, - 180, - 0, - 19.400000000000002, - 170, - 16.8, - "(255,0,0)", - 0 - ] - }, - { - "id": 124, - "type": "GravityWell", - "pos": [ - 1040, - -550 - ], - "size": { - "0": 330, - "1": 154 - }, - "flags": {}, - "order": 23, - "mode": 4, - "inputs": [ - { - "name": "previous_well", - "type": "GRAVITY_WELL", - "link": 207 - } - ], - "outputs": [ - { - "name": "GRAVITY_WELL", - "type": "GRAVITY_WELL", - "links": [ - 167 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "GravityWell" - }, - "widgets_values": [ - 0.35000000000000003, - 0.3, - 100, - 140, - "attract" - ] - }, - { - "id": 153, - "type": "GravityWell", - "pos": [ - 470, - -550 - ], - "size": { - "0": 330, - "1": 154 - }, - "flags": {}, - "order": 7, - "mode": 4, - "inputs": [ - { - "name": "previous_well", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "GRAVITY_WELL", - "type": "GRAVITY_WELL", - "links": [ - 207 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "GravityWell" - }, - "widgets_values": [ - 0.5, - 0.66, - 870, - 140, - "repel" - ] - }, - { - "id": 166, - "type": "VHS_VideoCombine", - "pos": [ - 5480, - -3970 - ], - "size": [ - 410, - 310 - ], - "flags": {}, - "order": 86, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 221 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": false, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00004.mp4", - "subfolder": "", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 57, - "type": "VHS_LoadVideo", - "pos": [ - -2483, - 1781 - ], - "size": [ - 240, - 630 - ], - "flags": {}, - "order": 24, - "mode": 0, - "inputs": [ - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - }, - { - "name": "frame_load_cap", - "type": "*", - "link": 179, - "widget": { - "name": "frame_load_cap" - } - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 151, - 225 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "frame_count", - "type": "INT", - "links": null, - "shape": 3 - }, - { - "name": "audio", - "type": "AUDIO", - "links": null, - "shape": 3 - }, - { - "name": "video_info", - "type": "VHS_VIDEOINFO", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_LoadVideo" - }, - "widgets_values": { - "video": "polina809MaskFull_00001.mp4", - "force_rate": 0, - "force_size": "Custom", - "custom_width": 512, - "custom_height": 768, - "frame_load_cap": 30, - "skip_first_frames": 30, - "select_every_nth": 1, - "choose video to upload": "image", - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "frame_load_cap": 30, - "skip_first_frames": 30, - "force_rate": 0, - "select_every_nth": 1, - "filename": "polina809MaskFull_00001.mp4", - "type": "input", - "format": "video/mp4", - "force_size": "512x768" - }, - "muted": false - } - } - }, - { - "id": 125, - "type": "_mfc", - "pos": [ - -1515, - 755 - ], - "size": { - "0": 315, - "1": 130 - }, - "flags": {}, - "order": 39, - "mode": 0, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 168 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 169 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "_mfc" - }, - "widgets_values": [ - 255, - 255, - 255, - 0 - ] - }, - { - "id": 135, - "type": "PrimitiveNode", - "pos": [ - -2571, - 878 - ], - "size": { - "0": 210, - "1": 82 - }, - "flags": {}, - "order": 8, - "mode": 0, - "outputs": [ - { - "name": "INT", - "type": "INT", - "links": [ - 182, - 231, - 328 - ], - "slot_index": 0, - "widget": { - "name": "width" - } - } - ], - "properties": { - "Run widget replace on values": false - }, - "widgets_values": [ - 512, - "fixed" - ] - }, - { - "id": 130, - "type": "PrimitiveNode", - "pos": [ - -2749, - 1379 - ], - "size": { - "0": 210, - "1": 82 - }, - "flags": {}, - "order": 9, - "mode": 0, - "outputs": [ - { - "name": "INT", - "type": "INT", - "links": [ - 179, - 180 - ], - "slot_index": 0, - "widget": { - "name": "frame_load_cap" - } - } - ], - "properties": { - "Run widget replace on values": false - }, - "widgets_values": [ - 30, - "fixed" - ] - }, - { - "id": 181, - "type": "ParticleEmitter", - "pos": [ - 1587, - 1079 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 25, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": null, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": 244, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 243 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0.2, - 0.9, - 270, - 0, - 20.6, - 609, - 16.8, - "(0,100,0)", - 0 - ] - }, - { - "id": 183, - "type": "EmitterMovement", - "pos": [ - 1527, - 1471 - ], - "size": { - "0": 285.6000061035156, - "1": 181.7848663330078 - }, - "flags": {}, - "order": 10, - "mode": 4, - "outputs": [ - { - "name": "EMITTER_MOVEMENT", - "type": "EMITTER_MOVEMENT", - "links": [ - 247 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "EmitterMovement" - }, - "widgets_values": [ - 0.5, - 0.5, - 0, - 0.5, - 0, - 129 - ] - }, - { - "id": 182, - "type": "EmitterMovement", - "pos": [ - 1138, - 1203 - ], - "size": { - "0": 285.6000061035156, - "1": 181.7848663330078 - }, - "flags": {}, - "order": 11, - "mode": 4, - "outputs": [ - { - "name": "EMITTER_MOVEMENT", - "type": "EMITTER_MOVEMENT", - "links": [ - 244 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "EmitterMovement" - }, - "widgets_values": [ - 0.5, - 0.5, - 0, - 0.5, - 0, - 180 - ] - }, - { - "id": 180, - "type": "ParticleEmitter", - "pos": [ - 1980.9579632874907, - 1073.2051034373235 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 36, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": 243, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": 247, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 242 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0.25, - 0.1, - 90, - 0, - 27.3, - 609, - 16.8, - "(50,100,150)", - 0 - ] - }, - { - "id": 192, - "type": "VHS_VideoCombine", - "pos": [ - 2440, - 6870 - ], - "size": [ - 315, - 738.84375 - ], - "flags": {}, - "order": 74, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 254 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00089.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 193, - "type": "MaskToImage", - "pos": [ - 2020, - 7880 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 59, - "mode": 4, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 259 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 255 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 196, - "type": "VHS_VideoCombine", - "pos": [ - 2460, - 8900 - ], - "size": [ - 315, - 310 - ], - "flags": {}, - "order": 77, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 256 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00091.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 187, - "type": "MaskRings", - "pos": [ - 880, - 8960 - ], - "size": { - "0": 315, - "1": 298 - }, - "flags": {}, - "order": 48, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 252 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 260 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskRings" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - true, - 10, - 0.39 - ] - }, - { - "id": 185, - "type": "MaskMorph", - "pos": [ - 1217, - 7126 - ], - "size": { - "0": 315, - "1": 322 - }, - "flags": {}, - "order": 46, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 250 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 258 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskMorph" - }, - "widgets_values": [ - 1, - false, - 0.72, - 0, - 0, - 0, - 0, - "ease_in_out", - true, - "dilate", - 11, - 10 - ] - }, - { - "id": 200, - "type": "MovingShape", - "pos": [ - -219, - 6761 - ], - "size": { - "0": 315, - "1": 394 - }, - "flags": {}, - "order": 12, - "mode": 0, - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 263 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MovingShape" - }, - "widgets_values": [ - 512, - 768, - 30, - "(255,255,255)", - "square", - 50, - 50, - 0, - 0, - 0, - 0, - "ease_in_out", - 0, - true, - 0 - ] - }, - { - "id": 198, - "type": "PrimitiveNode", - "pos": [ - -2070.699048437932, - 1419.7775949970946 - ], - "size": { - "0": 210, - "1": 82 - }, - "flags": {}, - "order": 13, - "mode": 0, - "outputs": [ - { - "name": "INT", - "type": "INT", - "links": [ - 262, - 329, - 363 - ], - "slot_index": 0, - "widget": { - "name": "batch_size" - } - } - ], - "properties": { - "Run widget replace on values": false - }, - "widgets_values": [ - 30, - "fixed" - ] - }, - { - "id": 164, - "type": "VHS_VideoCombine", - "pos": [ - 5480, - -2990 - ], - "size": [ - 410, - 310 - ], - "flags": {}, - "order": 85, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 219 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "init_plum_east_wind", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "init_plum_east_wind_00001.mp4", - "subfolder": "", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 111, - "type": "ParticleEmissionMask", - "pos": [ - 3320, - -3920 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 66, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 172 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 155, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": null - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 153 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - 340, - 4, - 0, - 0, - 0, - 0, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 167, - "type": "ParticleEmissionMask", - "pos": [ - 3350, - -3340 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 70, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 222 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 223, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": null - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 221 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - 340, - 4, - 0, - 0, - 464, - 0, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 165, - "type": "ParticleEmissionMask", - "pos": [ - 3240, - -2740 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 69, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 220 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 224, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": null - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 219 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - 340, - 4, - 100, - 0, - 0, - 0, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 104, - "type": "VHS_VideoCombine", - "pos": [ - 640, - -4890 - ], - "size": [ - 1010.0657348632812, - 310 - ], - "flags": {}, - "order": 57, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 145 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "masks/pelting", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "pelting_00002.mp4", - "subfolder": "masks", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 141, - "type": "ParticleEmissionMask", - "pos": [ - 1830, - -2190 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 67, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 195 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 196, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": null - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 194 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - 340, - 4, - 0, - 0, - 0, - 0, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 115, - "type": "ParticleEmissionMask", - "pos": [ - 4300, - -2030 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 64, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 170 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 203, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": null - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 157 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - 340, - 4, - 0, - 0, - 0, - 0, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 102, - "type": "ParticleEmissionMask", - "pos": [ - 20, - -4540 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 45, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 152 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 143, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": null - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3, - "slot_index": 0 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 145 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - 340, - 4, - 0, - 0, - 0, - 0, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 172, - "type": "VHS_VideoCombine", - "pos": [ - 1181.2037879868071, - 3343.3521874804596 - ], - "size": [ - 315, - 310 - ], - "flags": {}, - "order": 78, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 229 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00106.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 208, - "type": "OpticalFlowMaskModulation", - "pos": [ - 263.2037879868053, - 3562.3521874804596 - ], - "size": { - "0": 386.3999938964844, - "1": 366 - }, - "flags": {}, - "order": 51, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 293 - }, - { - "name": "images", - "type": "IMAGE", - "link": 273 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 274 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "OpticalFlowMaskModulation" - }, - "widgets_values": [ - 0.99, - false, - 0.9500000000000001, - 0, - "Farneback", - 0.04, - 0, - 1, - 5, - 15, - 0.8, - "thickness", - 50 - ] - }, - { - "id": 169, - "type": "_mfc", - "pos": [ - -1914, - 5166 - ], - "size": { - "0": 315, - "1": 130 - }, - "flags": {}, - "order": 35, - "mode": 0, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 225 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 250, - 251, - 252 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "_mfc" - }, - "widgets_values": [ - 255, - 255, - 255, - 0 - ] - }, - { - "id": 218, - "type": "VHS_VideoCombine", - "pos": [ - 1576.2037879868071, - 3906.352187480455 - ], - "size": [ - 315, - 310 - ], - "flags": {}, - "order": 79, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 297 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00107.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 171, - "type": "MaskToImage", - "pos": [ - 801.2037879868059, - 3524.3521874804596 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 62, - "mode": 4, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 274 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 229 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 204, - "type": "MaskToImage", - "pos": [ - 726.2037879868059, - 4133.35218748046 - ], - "size": { - "0": 296.50048828125, - "1": 26 - }, - "flags": {}, - "order": 63, - "mode": 4, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 296 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 297 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 217, - "type": "_mfc", - "pos": [ - -550, - 3830 - ], - "size": { - "0": 315, - "1": 130 - }, - "flags": {}, - "order": 38, - "mode": 0, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 291 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 293, - 295 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "_mfc" - }, - "widgets_values": [ - 255, - 255, - 255, - 0 - ] - }, - { - "id": 221, - "type": "PrimitiveNode", - "pos": [ - -1720, - 3790 - ], - "size": { - "0": 210, - "1": 82 - }, - "flags": {}, - "order": 14, - "mode": 0, - "outputs": [ - { - "name": "INT", - "type": "INT", - "links": [ - 303, - 304 - ], - "widget": { - "name": "frame_load_cap" - }, - "slot_index": 0 - } - ], - "properties": { - "Run widget replace on values": false - }, - "widgets_values": [ - 30, - "fixed" - ] - }, - { - "id": 207, - "type": "OpticalFlowMaskModulation", - "pos": [ - 261.2037879868053, - 4073.352187480458 - ], - "size": { - "0": 386.3999938964844, - "1": 366 - }, - "flags": {}, - "order": 52, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 295 - }, - { - "name": "images", - "type": "IMAGE", - "link": 294 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 296 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "OpticalFlowMaskModulation" - }, - "widgets_values": [ - 1, - false, - 1, - 0, - "Farneback", - 0.04, - 0, - 1, - 5, - 15, - 0.8, - "fade", - 50 - ] - }, - { - "id": 56, - "type": "VHS_LoadVideo", - "pos": [ - -1350, - 4240 - ], - "size": [ - 235.1999969482422, - 622.7999954223633 - ], - "flags": {}, - "order": 28, - "mode": 0, - "inputs": [ - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - }, - { - "name": "frame_load_cap", - "type": "INT", - "link": 304, - "widget": { - "name": "frame_load_cap" - } - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 273, - 294 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "frame_count", - "type": "INT", - "links": null, - "shape": 3 - }, - { - "name": "audio", - "type": "AUDIO", - "links": null, - "shape": 3 - }, - { - "name": "video_info", - "type": "VHS_VIDEOINFO", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_LoadVideo" - }, - "widgets_values": { - "video": "pexels-polina-tankilevitch-5385809 (1080p).mp4", - "force_rate": 15, - "force_size": "Custom", - "custom_width": 512, - "custom_height": 768, - "frame_load_cap": 30, - "skip_first_frames": 0, - "select_every_nth": 1, - "choose video to upload": "image", - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "frame_load_cap": 30, - "skip_first_frames": 0, - "force_rate": 15, - "select_every_nth": 1, - "filename": "pexels-polina-tankilevitch-5385809 (1080p).mp4", - "type": "input", - "format": "video/mp4", - "force_size": "512x768" - }, - "muted": false - } - } - }, - { - "id": 202, - "type": "VHS_VideoCombine", - "pos": [ - 5110, - 5325 - ], - "size": [ - 751.7349243164062, - 310 - ], - "flags": {}, - "order": 50, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 264 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00098.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 186, - "type": "MaskTransform", - "pos": [ - 1240, - 7860 - ], - "size": { - "0": 344.3999938964844, - "1": 322 - }, - "flags": {}, - "order": 47, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 251 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 259, - 310 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskTransform" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - true, - "rotate", - 169.5, - 171.4 - ] - }, - { - "id": 195, - "type": "MaskToImage", - "pos": [ - 2040, - 8920 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 61, - "mode": 4, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 260 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 256 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 191, - "type": "MaskToImage", - "pos": [ - 2030, - 6890 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 58, - "mode": 4, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 258 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 254 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 201, - "type": "MaskToImage", - "pos": [ - 1808, - 6429 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 37, - "mode": 4, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 265 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 264 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 210, - "type": "ImageScaleBy", - "pos": [ - 3297, - 1285 - ], - "size": { - "0": 315, - "1": 82 - }, - "flags": {}, - "order": 93, - "mode": 4, - "inputs": [ - { - "name": "image", - "type": "IMAGE", - "link": 277 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "ImageScaleBy" - }, - "widgets_values": [ - "nearest-exact", - 2 - ] - }, - { - "id": 177, - "type": "VHS_VideoCombine", - "pos": [ - 3850, - 805 - ], - "size": [ - 602.3653564453125, - 664.2435709635417 - ], - "flags": {}, - "order": 94, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 318 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "masks/RyanOnTheInside", - "format": "video/ffmpeg-gif", - "dither": "sierra2_4a", - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "RyanOnTheInside_00014.gif", - "subfolder": "masks", - "type": "output", - "format": "video/ffmpeg-gif", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 120, - "type": "VHS_VideoCombine", - "pos": [ - 2320, - -980 - ], - "size": [ - 410, - 310 - ], - "flags": {}, - "order": 81, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 163 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "gravwells", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "gravwells_00001.mp4", - "subfolder": "", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 121, - "type": "ParticleEmissionMask", - "pos": [ - 1660, - -930 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 65, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 171 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 165, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": null - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": 167, - "slot_index": 3 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 163 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - 340, - 4, - 0, - 0, - 0, - 0, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 155, - "type": "ParticleEmissionMask", - "pos": [ - 4140, - -800 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 68, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 209 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 210, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": 214, - "slot_index": 2 - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": null, - "slot_index": 3 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 208 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - 340, - 4, - 0, - 0, - 0, - 1, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 154, - "type": "VHS_VideoCombine", - "pos": [ - 4860, - -770 - ], - "size": [ - 410, - 310 - ], - "flags": {}, - "order": 84, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 208 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "vortex", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": false, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "vortex_00001.mp4", - "subfolder": "", - "type": "temp", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 139, - "type": "MaskToImage", - "pos": [ - 281, - 899 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 88, - "mode": 0, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 348 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 193 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 236, - "type": "MaskTransform", - "pos": [ - -941, - 579 - ], - "size": { - "0": 344.3999938964844, - "1": 322 - }, - "flags": {}, - "order": 40, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 342 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskTransform" - }, - "widgets_values": [ - 0.97, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - false, - "scale", - 1.5, - 1.5 - ] - }, - { - "id": 176, - "type": "MaskMorph", - "pos": [ - -462, - 1044 - ], - "size": { - "0": 315, - "1": 322 - }, - "flags": {}, - "order": 54, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 347 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 266 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskMorph" - }, - "widgets_values": [ - 0.34, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - true, - "dilate", - 3, - 4 - ] - }, - { - "id": 203, - "type": "MaskWarp", - "pos": [ - -80, - 990 - ], - "size": { - "0": 315, - "1": 346 - }, - "flags": {}, - "order": 71, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 266 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 268, - 348 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskWarp" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - false, - "perlin", - 0.05, - 298.90000000000003, - 3 - ] - }, - { - "id": 179, - "type": "ParticleEmitter", - "pos": [ - 2412, - 1037 - ], - "size": { - "0": 285.6000061035156, - "1": 270 - }, - "flags": {}, - "order": 49, - "mode": 4, - "inputs": [ - { - "name": "previous_emitter", - "type": "PARTICLE_EMITTER", - "link": 242, - "slot_index": 0 - }, - { - "name": "emitter_movement", - "type": "EMITTER_MOVEMENT", - "link": null, - "slot_index": 1 - } - ], - "outputs": [ - { - "name": "PARTICLE_EMITTER", - "type": "PARTICLE_EMITTER", - "links": [ - 241 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "ParticleEmitter" - }, - "widgets_values": [ - 0, - 0.48, - 0, - 7, - 17.6, - 351, - 16.8, - "(255,0,0)", - 0.21 - ] - }, - { - "id": 237, - "type": "MaskTransform", - "pos": [ - -913, - 1070 - ], - "size": { - "0": 344.3999938964844, - "1": 322 - }, - "flags": {}, - "order": 41, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 344 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 347 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskTransform" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 0, - 0, - 0, - "none", - true, - "scale", - 0.4, - 0.4 - ] - }, - { - "id": 133, - "type": "TextMaskNode", - "pos": [ - -1395, - 1021 - ], - "size": { - "0": 315, - "1": 342 - }, - "flags": {}, - "order": 30, - "mode": 4, - "inputs": [ - { - "name": "width", - "type": "INT", - "link": 232, - "widget": { - "name": "width" - } - }, - { - "name": "height", - "type": "INT", - "link": 231, - "widget": { - "name": "height" - } - }, - { - "name": "batch_size", - "type": "INT", - "link": 262, - "widget": { - "name": "batch_size" - } - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 342, - 344 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "TextMaskNode" - }, - "widgets_values": [ - 768, - 512, - "Particle Systems", - "Arial", - 45, - "(255,255,255)", - "(0,0,0)", - 0.5, - 0.5, - 0, - 1, - 30 - ] - }, - { - "id": 138, - "type": "VHS_VideoCombine", - "pos": [ - 814, - 631 - ], - "size": [ - 315, - 521 - ], - "flags": {}, - "order": 96, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 193 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_02019.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 231, - "type": "MaskToImage", - "pos": [ - -213, - 1846 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 72, - "mode": 4, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 352 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 333, - 338 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 234, - "type": "OpticalFlowMaskModulation", - "pos": [ - 443, - 1595 - ], - "size": { - "0": 386.3999938964844, - "1": 366 - }, - "flags": {}, - "order": 90, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 351 - }, - { - "name": "images", - "type": "IMAGE", - "link": 338 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 335 - ], - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "OpticalFlowMaskModulation" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - "Farneback", - 0.04, - 0, - 1, - 5, - 15, - 0.8, - "fade", - 50 - ] - }, - { - "id": 194, - "type": "VHS_VideoCombine", - "pos": [ - 2388, - 7859 - ], - "size": [ - 315, - 310 - ], - "flags": {}, - "order": 75, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 255 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00090.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 229, - "type": "TextMaskNode", - "pos": [ - -1597, - 1824 - ], - "size": { - "0": 315, - "1": 342 - }, - "flags": {}, - "order": 31, - "mode": 4, - "inputs": [ - { - "name": "width", - "type": "INT", - "link": 327, - "widget": { - "name": "width" - } - }, - { - "name": "height", - "type": "INT", - "link": 328, - "widget": { - "name": "height" - } - }, - { - "name": "batch_size", - "type": "INT", - "link": 329, - "widget": { - "name": "batch_size" - } - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 349 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "TextMaskNode" - }, - "widgets_values": [ - 768, - 512, - "Optical Flow", - "Arial", - 36, - "(255,255,255)", - "(0,0,0)", - 0.03, - 0.03, - 0, - 1, - 30 - ] - }, - { - "id": 228, - "type": "MaskTransform", - "pos": [ - -1251, - 1839 - ], - "size": { - "0": 344.3999938964844, - "1": 322 - }, - "flags": {}, - "order": 42, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 349 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 350 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskTransform" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - false, - "translate", - 252, - 224.10000000000002 - ] - }, - { - "id": 235, - "type": "MaskTransform", - "pos": [ - -817, - 1827 - ], - "size": { - "0": 344.3999938964844, - "1": 322 - }, - "flags": {}, - "order": 55, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 350 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 351, - 352 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskTransform" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 5, - 0, - 0, - "ease_in_out", - false, - "scale", - 1.3, - 1.3 - ] - }, - { - "id": 232, - "type": "MaskToImage", - "pos": [ - 1225, - 1767 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 97, - "mode": 4, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 335 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 178, - "type": "ParticleEmissionMask", - "pos": [ - 2825, - 925 - ], - "size": { - "0": 360.8669128417969, - "1": 454 - }, - "flags": {}, - "order": 87, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 268 - }, - { - "name": "emitters", - "type": "PARTICLE_EMITTER", - "link": 241, - "slot_index": 1 - }, - { - "name": "vortices", - "type": "VORTEX", - "link": null - }, - { - "name": "wells", - "type": "GRAVITY_WELL", - "link": null - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [], - "shape": 3 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 277, - 318, - 359 - ], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "ParticleEmissionMask" - }, - "widgets_values": [ - 0.99, - false, - 0, - 0, - 340, - 4, - 0, - 0, - 0, - 0, - 0, - true, - 1, - 10, - 0.68 - ] - }, - { - "id": 240, - "type": "VHS_VideoCombine", - "pos": [ - 4929, - 828 - ], - "size": [ - 601.5174560546875, - 663.6783040364583 - ], - "flags": {}, - "order": 95, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 359 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "masks/particle_systems", - "format": "video/ffmpeg-gif", - "dither": "sierra2_4a", - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "particle_systems_00001.gif", - "subfolder": "masks", - "type": "output", - "format": "video/ffmpeg-gif", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 216, - "type": "VHS_LoadVideo", - "pos": [ - -1250, - 3510 - ], - "size": [ - 235.1999969482422, - 622.7999954223633 - ], - "flags": {}, - "order": 27, - "mode": 0, - "inputs": [ - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - }, - { - "name": "frame_load_cap", - "type": "*", - "link": 303, - "widget": { - "name": "frame_load_cap" - }, - "slot_index": 2 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 291 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "frame_count", - "type": "INT", - "links": null, - "shape": 3 - }, - { - "name": "audio", - "type": "AUDIO", - "links": null, - "shape": 3 - }, - { - "name": "video_info", - "type": "VHS_VIDEOINFO", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_LoadVideo" - }, - "widgets_values": { - "video": "polina809MaskFull_00001.mp4", - "force_rate": 0, - "force_size": "Custom", - "custom_width": 512, - "custom_height": 768, - "frame_load_cap": 30, - "skip_first_frames": 0, - "select_every_nth": 1, - "choose video to upload": "image", - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "frame_load_cap": 30, - "skip_first_frames": 0, - "force_rate": 0, - "select_every_nth": 1, - "filename": "polina809MaskFull_00001.mp4", - "type": "input", - "format": "video/mp4", - "force_size": "512x768" - }, - "muted": false - } - } - }, - { - "id": 230, - "type": "VHS_VideoCombine", - "pos": [ - 49, - 1703 - ], - "size": [ - 320, - 524 - ], - "flags": {}, - "order": 89, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 333 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_02031.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 136, - "type": "PrimitiveNode", - "pos": [ - -2572, - 1163 - ], - "size": { - "0": 210, - "1": 80 - }, - "flags": {}, - "order": 15, - "mode": 0, - "outputs": [ - { - "name": "INT", - "type": "INT", - "links": [ - 183, - 232, - 327, - 361 - ], - "slot_index": 0, - "widget": { - "name": "height" - } - } - ], - "properties": { - "Run widget replace on values": false - }, - "widgets_values": [ - 768, - "fixed" - ] - }, - { - "id": 246, - "type": "PrimitiveNode", - "pos": [ - -1563, - 2489 - ], - "size": { - "0": 210, - "1": 82 - }, - "flags": {}, - "order": 16, - "mode": 0, - "outputs": [ - { - "name": "INT", - "type": "INT", - "links": [ - 368 - ], - "slot_index": 0, - "widget": { - "name": "height" - } - } - ], - "properties": { - "Run widget replace on values": false - }, - "widgets_values": [ - 256, - "fixed" - ] - }, - { - "id": 199, - "type": "MaskWarp", - "pos": [ - 1184, - 6469 - ], - "size": { - "0": 315, - "1": 346 - }, - "flags": {}, - "order": 26, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 263 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 265 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskWarp" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - false, - "perlin", - 0.05, - 298.90000000000003, - 3 - ] - }, - { - "id": 190, - "type": "VHS_VideoCombine", - "pos": [ - 2373, - 5392 - ], - "size": [ - 315, - 738.84375 - ], - "flags": {}, - "order": 92, - "mode": 4, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 253 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_00112.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 197, - "type": "MovingShape", - "pos": [ - 99, - 5443 - ], - "size": { - "0": 315, - "1": 394 - }, - "flags": {}, - "order": 17, - "mode": 4, - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 311 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MovingShape" - }, - "widgets_values": [ - 512, - 768, - 30, - "(255,255,255)", - "square", - 50, - 50, - 0, - 0, - 0, - 0, - "ease_in_out", - 0, - true, - 0 - ] - }, - { - "id": 188, - "type": "MaskMath", - "pos": [ - 1337, - 5712 - ], - "size": { - "0": 315, - "1": 294 - }, - "flags": {}, - "order": 60, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 310 - }, - { - "name": "mask_b", - "type": "MASK", - "link": 311 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 257 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskMath" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - false, - "subtract" - ] - }, - { - "id": 189, - "type": "MaskToImage", - "pos": [ - 1937, - 5611 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 76, - "mode": 4, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 257 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 253 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 243, - "type": "VHS_VideoCombine", - "pos": [ - 1330, - 2300 - ], - "size": [ - 320, - 424 - ], - "flags": {}, - "order": 99, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 364 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "AnimateDiff", - "format": "video/h264-mp4", - "pix_fmt": "yuv420p", - "crf": 19, - "save_metadata": true, - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "AnimateDiff_02065.mp4", - "subfolder": "", - "type": "output", - "format": "video/h264-mp4", - "frame_rate": 15 - }, - "muted": false - } - } - }, - { - "id": 248, - "type": "MaskTransform", - "pos": [ - -673, - 2373 - ], - "size": { - "0": 344.3999938964844, - "1": 322 - }, - "flags": {}, - "order": 43, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 386 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 387 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskTransform" - }, - "widgets_values": [ - 0.47000000000000003, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - true, - "rotate", - 369, - 0 - ] - }, - { - "id": 242, - "type": "TextMaskNode", - "pos": [ - -1142, - 2394 - ], - "size": { - "0": 315, - "1": 342 - }, - "flags": {}, - "order": 32, - "mode": 0, - "inputs": [ - { - "name": "width", - "type": "INT", - "link": 361, - "widget": { - "name": "width" - } - }, - { - "name": "height", - "type": "INT", - "link": 368, - "widget": { - "name": "height" - } - }, - { - "name": "batch_size", - "type": "INT", - "link": 363, - "widget": { - "name": "batch_size" - } - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 386 - ], - "shape": 3, - "slot_index": 0 - }, - { - "name": "IMAGE", - "type": "IMAGE", - "links": [], - "shape": 3, - "slot_index": 1 - } - ], - "properties": { - "Node name for S&R": "TextMaskNode" - }, - "widgets_values": [ - 768, - 256, - "Time", - "Arial", - 50, - "(255,255,255)", - "(0,0,0)", - 0.5, - 0.47000000000000003, - 0, - 1, - 30 - ] - }, - { - "id": 241, - "type": "MaskTransform", - "pos": [ - -260, - 2373 - ], - "size": { - "0": 344.3999938964844, - "1": 322 - }, - "flags": {}, - "order": 56, - "mode": 4, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 387 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 388 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskTransform" - }, - "widgets_values": [ - 0.47000000000000003, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - true, - "translate", - 700, - 0 - ] - }, - { - "id": 245, - "type": "MaskTransform", - "pos": [ - 139, - 2373 - ], - "size": { - "0": 344.3999938964844, - "1": 322 - }, - "flags": {}, - "order": 73, - "mode": 0, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 388 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 389 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskTransform" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 0, - 0, - 0, - "none", - false, - "scale", - 1.5, - 1.5 - ] - }, - { - "id": 249, - "type": "MaskRings", - "pos": [ - 547, - 2392 - ], - "size": { - "0": 315, - "1": 298 - }, - "flags": {}, - "order": 91, - "mode": 0, - "inputs": [ - { - "name": "masks", - "type": "MASK", - "link": 389 - } - ], - "outputs": [ - { - "name": "MASK", - "type": "MASK", - "links": [ - 390 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskRings" - }, - "widgets_values": [ - 1, - false, - 0, - 0, - 0, - 0, - 0, - "ease_in_out", - true, - 4, - 0.5 - ] - }, - { - "id": 244, - "type": "MaskToImage", - "pos": [ - 930, - 2380 - ], - "size": { - "0": 210, - "1": 26 - }, - "flags": {}, - "order": 98, - "mode": 0, - "inputs": [ - { - "name": "mask", - "type": "MASK", - "link": 390 - } - ], - "outputs": [ - { - "name": "IMAGE", - "type": "IMAGE", - "links": [ - 364, - 391 - ], - "shape": 3, - "slot_index": 0 - } - ], - "properties": { - "Node name for S&R": "MaskToImage" - } - }, - { - "id": 233, - "type": "VHS_VideoCombine", - "pos": [ - 2252, - 1914 - ], - "size": [ - 601.5174560546875, - 469.83915201822913 - ], - "flags": {}, - "order": 100, - "mode": 0, - "inputs": [ - { - "name": "images", - "type": "IMAGE", - "link": 391 - }, - { - "name": "audio", - "type": "AUDIO", - "link": null - }, - { - "name": "meta_batch", - "type": "VHS_BatchManager", - "link": null - }, - { - "name": "vae", - "type": "VAE", - "link": null - } - ], - "outputs": [ - { - "name": "Filenames", - "type": "VHS_FILENAMES", - "links": null, - "shape": 3 - } - ], - "properties": { - "Node name for S&R": "VHS_VideoCombine" - }, - "widgets_values": { - "frame_rate": 15, - "loop_count": 0, - "filename_prefix": "masks/time", - "format": "video/ffmpeg-gif", - "dither": "sierra2_4a", - "pingpong": false, - "save_output": true, - "videopreview": { - "hidden": false, - "paused": false, - "params": { - "filename": "time_00001.gif", - "subfolder": "masks", - "type": "output", - "format": "video/ffmpeg-gif", - "frame_rate": 15 - }, - "muted": false - } - } - } - ], - "links": [ - [ - 143, - 103, - 0, - 102, - 1, - "PARTICLE_EMITTER" - ], - [ - 145, - 102, - 1, - 104, - 0, - "IMAGE" - ], - [ - 151, - 57, - 0, - 109, - 0, - "IMAGE" - ], - [ - 152, - 109, - 0, - 102, - 0, - "MASK" - ], - [ - 153, - 111, - 1, - 110, - 0, - "IMAGE" - ], - [ - 155, - 112, - 0, - 111, - 1, - "PARTICLE_EMITTER" - ], - [ - 156, - 113, - 0, - 112, - 0, - "PARTICLE_EMITTER" - ], - [ - 157, - 115, - 1, - 114, - 0, - "IMAGE" - ], - [ - 163, - 121, - 1, - 120, - 0, - "IMAGE" - ], - [ - 165, - 122, - 0, - 121, - 1, - "PARTICLE_EMITTER" - ], - [ - 166, - 123, - 0, - 122, - 0, - "PARTICLE_EMITTER" - ], - [ - 167, - 124, - 0, - 121, - 3, - "GRAVITY_WELL" - ], - [ - 168, - 91, - 0, - 125, - 0, - "IMAGE" - ], - [ - 169, - 125, - 0, - 126, - 0, - "*" - ], - [ - 170, - 126, - 0, - 115, - 0, - "MASK" - ], - [ - 171, - 126, - 0, - 121, - 0, - "MASK" - ], - [ - 172, - 126, - 0, - 111, - 0, - "MASK" - ], - [ - 179, - 130, - 0, - 57, - 2, - "*" - ], - [ - 180, - 130, - 0, - 91, - 0, - "INT" - ], - [ - 182, - 135, - 0, - 91, - 1, - "INT" - ], - [ - 183, - 136, - 0, - 91, - 2, - "INT" - ], - [ - 193, - 139, - 0, - 138, - 0, - "IMAGE" - ], - [ - 194, - 141, - 1, - 140, - 0, - "IMAGE" - ], - [ - 195, - 126, - 0, - 141, - 0, - "MASK" - ], - [ - 196, - 142, - 0, - 141, - 1, - "PARTICLE_EMITTER" - ], - [ - 197, - 143, - 0, - 142, - 0, - "PARTICLE_EMITTER" - ], - [ - 199, - 145, - 0, - 143, - 0, - "PARTICLE_EMITTER" - ], - [ - 200, - 146, - 0, - 145, - 1, - "EMITTER_MOVEMENT" - ], - [ - 203, - 147, - 0, - 115, - 1, - "PARTICLE_EMITTER" - ], - [ - 204, - 149, - 0, - 147, - 1, - "EMITTER_MOVEMENT" - ], - [ - 207, - 153, - 0, - 124, - 0, - "GRAVITY_WELL" - ], - [ - 208, - 155, - 1, - 154, - 0, - "IMAGE" - ], - [ - 209, - 126, - 0, - 155, - 0, - "MASK" - ], - [ - 210, - 156, - 0, - 155, - 1, - "PARTICLE_EMITTER" - ], - [ - 212, - 157, - 0, - 156, - 0, - "PARTICLE_EMITTER" - ], - [ - 214, - 160, - 0, - 155, - 2, - "VORTEX" - ], - [ - 219, - 165, - 1, - 164, - 0, - "IMAGE" - ], - [ - 220, - 126, - 0, - 165, - 0, - "MASK" - ], - [ - 221, - 167, - 1, - 166, - 0, - "IMAGE" - ], - [ - 222, - 126, - 0, - 167, - 0, - "MASK" - ], - [ - 223, - 112, - 0, - 167, - 1, - "PARTICLE_EMITTER" - ], - [ - 224, - 112, - 0, - 165, - 1, - "PARTICLE_EMITTER" - ], - [ - 225, - 57, - 0, - 169, - 0, - "IMAGE" - ], - [ - 229, - 171, - 0, - 172, - 0, - "IMAGE" - ], - [ - 231, - 135, - 0, - 133, - 1, - "INT" - ], - [ - 232, - 136, - 0, - 133, - 0, - "INT" - ], - [ - 241, - 179, - 0, - 178, - 1, - "PARTICLE_EMITTER" - ], - [ - 242, - 180, - 0, - 179, - 0, - "PARTICLE_EMITTER" - ], - [ - 243, - 181, - 0, - 180, - 0, - "PARTICLE_EMITTER" - ], - [ - 244, - 182, - 0, - 181, - 1, - "EMITTER_MOVEMENT" - ], - [ - 247, - 183, - 0, - 180, - 1, - "EMITTER_MOVEMENT" - ], - [ - 250, - 169, - 0, - 185, - 0, - "MASK" - ], - [ - 251, - 169, - 0, - 186, - 0, - "MASK" - ], - [ - 252, - 169, - 0, - 187, - 0, - "MASK" - ], - [ - 253, - 189, - 0, - 190, - 0, - "IMAGE" - ], - [ - 254, - 191, - 0, - 192, - 0, - "IMAGE" - ], - [ - 255, - 193, - 0, - 194, - 0, - "IMAGE" - ], - [ - 256, - 195, - 0, - 196, - 0, - "IMAGE" - ], - [ - 257, - 188, - 0, - 189, - 0, - "MASK" - ], - [ - 258, - 185, - 0, - 191, - 0, - "MASK" - ], - [ - 259, - 186, - 0, - 193, - 0, - "MASK" - ], - [ - 260, - 187, - 0, - 195, - 0, - "MASK" - ], - [ - 262, - 198, - 0, - 133, - 2, - "INT" - ], - [ - 263, - 200, - 0, - 199, - 0, - "MASK" - ], - [ - 264, - 201, - 0, - 202, - 0, - "IMAGE" - ], - [ - 265, - 199, - 0, - 201, - 0, - "MASK" - ], - [ - 266, - 176, - 0, - 203, - 0, - "MASK" - ], - [ - 268, - 203, - 0, - 178, - 0, - "MASK" - ], - [ - 273, - 56, - 0, - 208, - 1, - "IMAGE" - ], - [ - 274, - 208, - 0, - 171, - 0, - "MASK" - ], - [ - 277, - 178, - 1, - 210, - 0, - "IMAGE" - ], - [ - 291, - 216, - 0, - 217, - 0, - "IMAGE" - ], - [ - 293, - 217, - 0, - 208, - 0, - "MASK" - ], - [ - 294, - 56, - 0, - 207, - 1, - "IMAGE" - ], - [ - 295, - 217, - 0, - 207, - 0, - "MASK" - ], - [ - 296, - 207, - 0, - 204, - 0, - "MASK" - ], - [ - 297, - 204, - 0, - 218, - 0, - "IMAGE" - ], - [ - 303, - 221, - 0, - 216, - 2, - "*" - ], - [ - 304, - 221, - 0, - 56, - 2, - "*" - ], - [ - 310, - 186, - 0, - 188, - 0, - "MASK" - ], - [ - 311, - 197, - 0, - 188, - 1, - "MASK" - ], - [ - 318, - 178, - 1, - 177, - 0, - "IMAGE" - ], - [ - 327, - 136, - 0, - 229, - 0, - "INT" - ], - [ - 328, - 135, - 0, - 229, - 1, - "INT" - ], - [ - 329, - 198, - 0, - 229, - 2, - "INT" - ], - [ - 333, - 231, - 0, - 230, - 0, - "IMAGE" - ], - [ - 335, - 234, - 0, - 232, - 0, - "MASK" - ], - [ - 338, - 231, - 0, - 234, - 1, - "IMAGE" - ], - [ - 342, - 133, - 0, - 236, - 0, - "MASK" - ], - [ - 344, - 133, - 0, - 237, - 0, - "MASK" - ], - [ - 347, - 237, - 0, - 176, - 0, - "MASK" - ], - [ - 348, - 203, - 0, - 139, - 0, - "MASK" - ], - [ - 349, - 229, - 0, - 228, - 0, - "MASK" - ], - [ - 350, - 228, - 0, - 235, - 0, - "MASK" - ], - [ - 351, - 235, - 0, - 234, - 0, - "MASK" - ], - [ - 352, - 235, - 0, - 231, - 0, - "MASK" - ], - [ - 359, - 178, - 1, - 240, - 0, - "IMAGE" - ], - [ - 361, - 136, - 0, - 242, - 0, - "INT" - ], - [ - 363, - 198, - 0, - 242, - 2, - "INT" - ], - [ - 364, - 244, - 0, - 243, - 0, - "IMAGE" - ], - [ - 368, - 246, - 0, - 242, - 1, - "INT" - ], - [ - 386, - 242, - 0, - 248, - 0, - "MASK" - ], - [ - 387, - 248, - 0, - 241, - 0, - "MASK" - ], - [ - 388, - 241, - 0, - 245, - 0, - "MASK" - ], - [ - 389, - 245, - 0, - 249, - 0, - "MASK" - ], - [ - 390, - 249, - 0, - 244, - 0, - "MASK" - ], - [ - 391, - 244, - 0, - 233, - 0, - "IMAGE" - ] - ], - "groups": [ - { - "title": "Particle System", - "bounding": [ - -750, - -5800, - 8048, - 6053 - ], - "color": "#3f789e", - "font_size": 500, - "locked": false - }, - { - "title": "Initial Plume", - "bounding": [ - 6118, - -4562, - 512, - 115 - ], - "color": "#A88", - "font_size": 75, - "locked": false - }, - { - "title": "Temporal Masks", - "bounding": [ - -445, - 4855, - 6008, - 5214 - ], - "color": "#3f789e", - "font_size": 300, - "locked": false - }, - { - "title": "Simulation Gravity", - "bounding": [ - 6081, - -3543, - 710, - 98 - ], - "color": "#A88", - "font_size": 75, - "locked": false - }, - { - "title": "Eastward simulation wind", - "bounding": [ - 6037, - -2481, - 862, - 119 - ], - "color": "#A88", - "font_size": 75, - "locked": false - }, - { - "title": "Optical Flow", - "bounding": [ - -128, - 2902, - 4320, - 1834 - ], - "color": "#3f789e", - "font_size": 300, - "locked": false - } - ], - "config": {}, - "extra": { - "ds": { - "scale": 0.1, - "offset": { - "0": 6635.775639000176, - "1": 3039.0521128085834 - } - } - }, - "version": 0.4 -} \ No newline at end of file diff --git a/examples/pexels_polina809.mp4 b/examples/pexels_polina809.mp4 deleted file mode 100644 index dd3d0a0..0000000 Binary files a/examples/pexels_polina809.mp4 and /dev/null differ diff --git a/examples/pexels_polina809_mask.mp4 b/examples/pexels_polina809_mask.mp4 deleted file mode 100644 index 360c597..0000000 Binary files a/examples/pexels_polina809_mask.mp4 and /dev/null differ diff --git a/examples/psychadelic fire.webp b/examples/psychadelic fire.webp deleted file mode 100644 index 7a3c720..0000000 Binary files a/examples/psychadelic fire.webp and /dev/null differ diff --git a/examples/water.jpg b/examples/water.jpg deleted file mode 100644 index 1d4e7ad..0000000 Binary files a/examples/water.jpg and /dev/null differ diff --git a/node_configs.py b/node_configs.py index 0a913ec..233c93e 100644 --- a/node_configs.py +++ b/node_configs.py @@ -288,6 +288,7 @@ add_node_config("ParticleModulationBase", { - `temporal_easing`: Easing function for the modulation effect ("ease_in_out", "linear", "bounce", "elastic", "none") - `palindrome`: Whether to reverse the modulation effect after completion (True/False) - `random`: Selects a random value between 0 and the chosen target value and applies it per particle +- `feature`: Optionally, pass in a feature (like audio or motion) to drive the modulation of the particles """ }) @@ -543,6 +544,10 @@ Direction Control: - `direction_frequency`: How quickly the emission angle changes (0.0 to 10.0). Higher values create more rapid direction changes. - `direction_amplitude`: Maximum angle change in degrees (0.0 to 180.0). Larger values allow for more extreme direction shifts. +Feature Modulation: +- `feature`: Optional feature to modulate the movement (FEATURE type) +- `feature_param`: Parameter to be modulated by the feature ("emitter_x_frequency", "emitter_y_frequency", or "direction_frequency") + """ }) diff --git a/nodes/flex/feature_modulation.py b/nodes/flex/feature_modulation.py index 84341f8..185c79c 100644 --- a/nodes/flex/feature_modulation.py +++ b/nodes/flex/feature_modulation.py @@ -9,6 +9,14 @@ class FeatureModulationBase(RyanOnTheInside): CATEGORY = "RyanOnTheInside/FlexFeatures" FUNCTION = "modulate" + @classmethod + def INPUT_TYPES(cls): + return { + "required": { + "invert_output": ("BOOLEAN", {"default": False}), + } + } + def visualize(self, feature, width=1920, height=1080): values = [feature.get_value_at_frame(i) for i in range(feature.frame_count)] frames = len(values) @@ -58,14 +66,21 @@ class FeatureModulationBase(RyanOnTheInside): return img_tensor - def create_processed_feature(self, original_feature, processed_values, name_prefix="Processed"): + def create_processed_feature(self, original_feature, processed_values, name_prefix="Processed", invert_output=False): class ProcessedFeature(type(original_feature)): - def __init__(self, original_feature, processed_values): + def __init__(self, original_feature, processed_values, invert_output): self.__dict__.update(original_feature.__dict__) self.name = f"{name_prefix}_{original_feature.name}" + if invert_output: + self.name = f"Inverted_{self.name}" self.frame_rate = original_feature.frame_rate self.frame_count = len(processed_values) - self.data = processed_values + + if invert_output: + min_val, max_val = min(processed_values), max(processed_values) + self.data = [max_val - v + min_val for v in processed_values] + else: + self.data = processed_values def extract(self): return self @@ -73,7 +88,7 @@ class FeatureModulationBase(RyanOnTheInside): def get_value_at_frame(self, frame_index): return self.data[frame_index] - return ProcessedFeature(original_feature, processed_values) + return ProcessedFeature(original_feature, processed_values, invert_output) class FeatureMixer(FeatureModulationBase): @classmethod @@ -92,6 +107,7 @@ class FeatureMixer(FeatureModulationBase): "feature_threshold": ("FLOAT", {"default": 0.0, "min": 0.0, "max": 1.0, "step": 0.01}), "rise_detection_threshold": ("FLOAT", {"default": 0.3, "min": 0.0, "max": 1.0, "step": 0.05}), "rise_smoothing_factor": ("FLOAT", {"default": 0.5, "min": 0.1, "max": 2.0, "step": 0.05}), + **super().INPUT_TYPES()["required"], # Include the invert_output option } } @@ -99,7 +115,7 @@ class FeatureMixer(FeatureModulationBase): RETURN_NAMES = ("FEATURE", "FEATURE_VISUALIZATION") FUNCTION = "modulate" - def modulate(self, feature, base_gain, floor, ceiling, peak_sharpness, valley_sharpness, attack, release, smoothing, feature_threshold, rise_detection_threshold, rise_smoothing_factor): + def modulate(self, feature, base_gain, floor, ceiling, peak_sharpness, valley_sharpness, attack, release, smoothing, feature_threshold, rise_detection_threshold, rise_smoothing_factor, invert_output): values = [feature.get_value_at_frame(i) for i in range(feature.frame_count)] values = [v if v >= feature_threshold else 0 for v in values] @@ -144,7 +160,7 @@ class FeatureMixer(FeatureModulationBase): # chop final_values = [max(floor, min(ceiling, v)) for v in adjusted] - processed_feature = self.create_processed_feature(feature, final_values, "Processed") + processed_feature = self.create_processed_feature(feature, final_values, "Processed", invert_output) return (processed_feature, self.visualize(processed_feature)) def apply_rise_time_adjustment(self, values, rise_detection_threshold, rise_smoothing_factor): @@ -180,13 +196,14 @@ class FeatureScaler(FeatureModulationBase): "min_output": ("FLOAT", {"default": 0.0, "min": 0.0, "max": 1.0, "step": 0.01}), "max_output": ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}), "exponent": ("FLOAT", {"default": 2.0, "min": 0.1, "max": 10.0, "step": 0.1}), + **super().INPUT_TYPES()["required"], } } RETURN_TYPES = ("FEATURE", "IMAGE") RETURN_NAMES = ("FEATURE", "FEATURE_VISUALIZATION") - def modulate(self, feature, scale_type, min_output, max_output, exponent): + def modulate(self, feature, scale_type, min_output, max_output, exponent, invert_output): values = [feature.get_value_at_frame(i) for i in range(feature.frame_count)] min_val, max_val = min(values), max(values) @@ -203,7 +220,7 @@ class FeatureScaler(FeatureModulationBase): final_values = [min_output + v * (max_output - min_output) for v in scaled] - processed_feature = self.create_processed_feature(feature, final_values, "Scaled") + processed_feature = self.create_processed_feature(feature, final_values, "Scaled", invert_output) return (processed_feature, self.visualize(processed_feature)) class FeatureMath(FeatureModulationBase): @@ -216,13 +233,14 @@ class FeatureMath(FeatureModulationBase): "operation": (["add", "subtract", "multiply", "divide", "max", "min"],), "weight1": ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}), "weight2": ("FLOAT", {"default": 1.0, "min": 0.0, "max": 1.0, "step": 0.01}), + **super().INPUT_TYPES()["required"], } } RETURN_TYPES = ("FEATURE", "IMAGE") RETURN_NAMES = ("FEATURE", "FEATURE_VISUALIZATION") - def modulate(self, feature1, feature2, operation, weight1, weight2): + def modulate(self, feature1, feature2, operation, weight1, weight2, invert_output): values1 = [feature1.get_value_at_frame(i) for i in range(feature1.frame_count)] values2 = [feature2.get_value_at_frame(i) for i in range(feature2.frame_count)] @@ -244,7 +262,7 @@ class FeatureMath(FeatureModulationBase): elif operation == "min": combined = [min(weight1 * v1, weight2 * v2) for v1, v2 in zip(values1, values2)] - processed_feature = self.create_processed_feature(feature1, combined, "Combined") + processed_feature = self.create_processed_feature(feature1, combined, "Combined", invert_output) return (processed_feature, self.visualize(processed_feature)) class FeatureSmoothing(FeatureModulationBase): @@ -257,13 +275,14 @@ class FeatureSmoothing(FeatureModulationBase): "window_size": ("INT", {"default": 5, "min": 3, "max": 21, "step": 2}), "alpha": ("FLOAT", {"default": 0.3, "min": 0.0, "max": 1.0, "step": 0.01}), "sigma": ("FLOAT", {"default": 1.0, "min": 0.1, "max": 5.0, "step": 0.1}), + **super().INPUT_TYPES()["required"], } } RETURN_TYPES = ("FEATURE", "IMAGE") RETURN_NAMES = ("FEATURE", "FEATURE_VISUALIZATION") - def modulate(self, feature, smoothing_type, window_size, alpha, sigma): + def modulate(self, feature, smoothing_type, window_size, alpha, sigma, invert_output): values = [feature.get_value_at_frame(i) for i in range(feature.frame_count)] if smoothing_type == "moving_average": @@ -281,7 +300,7 @@ class FeatureSmoothing(FeatureModulationBase): kernel = kernel / np.sum(kernel) smoothed = np.convolve(values, kernel, mode='same') - processed_feature = self.create_processed_feature(feature, smoothed, "Smoothed") + processed_feature = self.create_processed_feature(feature, smoothed, "Smoothed", invert_output) return (processed_feature, self.visualize(processed_feature)) class FeatureOscillator(FeatureModulationBase): @@ -295,13 +314,14 @@ class FeatureOscillator(FeatureModulationBase): "amplitude": ("FLOAT", {"default": 0.5, "min": 0.0, "max": 1.0, "step": 0.01}), "phase_shift": ("FLOAT", {"default": 0.0, "min": 0.0, "max": 2*np.pi, "step": 0.1}), "blend": ("FLOAT", {"default": 0.5, "min": 0.0, "max": 1.0, "step": 0.01}), + **super().INPUT_TYPES()["required"], } } RETURN_TYPES = ("FEATURE", "IMAGE") RETURN_NAMES = ("FEATURE", "FEATURE_VISUALIZATION") - def modulate(self, feature, oscillator_type, frequency, amplitude, phase_shift, blend): + def modulate(self, feature, oscillator_type, frequency, amplitude, phase_shift, blend, invert_output): values = [feature.get_value_at_frame(i) for i in range(feature.frame_count)] t = np.linspace(0, 2*np.pi, len(values)) @@ -316,5 +336,5 @@ class FeatureOscillator(FeatureModulationBase): blended = [v * (1 - blend) + osc * blend for v, osc in zip(values, oscillation)] - processed_feature = self.create_processed_feature(feature, blended, "Oscillated") + processed_feature = self.create_processed_feature(feature, blended, "Oscillated", invert_output) return (processed_feature, self.visualize(processed_feature)) diff --git a/nodes/masks/flex_masks.py b/nodes/masks/flex_masks.py index aba7913..c1a7677 100644 --- a/nodes/masks/flex_masks.py +++ b/nodes/masks/flex_masks.py @@ -141,8 +141,8 @@ class FlexMaskVoronoiScheduled(FlexMaskBase): "y_offset": ("FLOAT", {"default": 0.0, "min": -1000.0, "max": 1000.0, "step": 0.1}), "feature_param": (["scale", "detail", "randomness", "seed", "x_offset", "y_offset"],), "formula": (list(cls.formulas.keys()),), - "a": ("FLOAT", {"default": 1.0, "min": 0.1, "max": 10.0, "step": 0.1}), - "b": ("FLOAT", {"default": 1.0, "min": 0.1, "max": 10.0, "step": 0.1}), + "x_offset": ("FLOAT", {"default": 0.0, "min": -1.0, "max": 1.0, "step": 0.01}), + "y_offset": ("FLOAT", {"default": 0.0, "min": -1.0, "max": 1.0, "step": 0.01}), } } @@ -170,9 +170,9 @@ class FlexMaskVoronoiScheduled(FlexMaskBase): elif feature_param == "seed": seed = int(seed + (schedule_value * strength * 1000000)) elif feature_param == "x_offset": - x_offset *= (1 + schedule_value * strength) + x_offset += width * schedule_value * strength elif feature_param == "y_offset": - y_offset *= (1 + schedule_value * strength) + y_offset += height * schedule_value * strength # Create VoronoiNoise instance voronoi = VoronoiNoise( diff --git a/nodes/masks/mask_base.py b/nodes/masks/mask_base.py index 07ea674..bde8fcb 100644 --- a/nodes/masks/mask_base.py +++ b/nodes/masks/mask_base.py @@ -556,7 +556,8 @@ class ParticleSystemMaskBase(MaskBase, ABC): 'effect_duration': effect_duration, 'temporal_easing': modulation['temporal_easing'], 'palindrome': modulation['palindrome'], - 'random': modulation.get('random', False) # Add this line + 'random': modulation.get('random', False), + 'feature': modulation.get('feature',None) } if modulation['type'] == 'ParticleSizeModulation': @@ -580,6 +581,8 @@ class ParticleSystemMaskBase(MaskBase, ABC): if modulation['start_frame'] <= current_frame < modulation['end_frame']: if modulation.get('random', False): progress = random.random() # Generate a random value between 0 and 1 + elif 'feature' in modulation and modulation['feature'] is not None: + progress = modulation['feature'].get_value_at_frame(current_frame) else: progress = self.calculate_modulation_progress(current_frame, modulation, particle.creation_frame) @@ -791,6 +794,16 @@ class ParticleSystemMaskBase(MaskBase, ABC): if 'movement' in emitter: movement = emitter['movement'] + # Check if a feature is present and apply it to the specified parameter + if 'feature' in movement and movement['feature'] is not None: + feature = movement['feature'] + feature_param = movement['feature_param'] + feature_value = feature.get_value_at_frame(frame_index) + + if feature_param in ['emitter_x_frequency', 'emitter_y_frequency', 'direction_frequency']: + # Use 1 + feature_value to ensure the frequency is always at least the original value + movement[feature_param] *= (1 + feature_value) + # Modulate emitter_x base_x = float(emitter['initial_x']) freq_x = float(movement['emitter_x_frequency']) diff --git a/nodes/masks/particle_system_masks.py b/nodes/masks/particle_system_masks.py index ce60d75..ee21dd8 100644 --- a/nodes/masks/particle_system_masks.py +++ b/nodes/masks/particle_system_masks.py @@ -238,6 +238,10 @@ class EmitterMovement(ParticleSystemModulatorBase): "emitter_y_amplitude": ("FLOAT", {"default": 0.5, "min": 0.0, "max": 0.5, "step": 0.01}), "direction_frequency": ("FLOAT", {"default": 0.0, "min": 0.0, "max": 10.0, "step": 0.01}), "direction_amplitude": ("FLOAT", {"default": 180.0, "min": 0.0, "max": 360.0, "step": 1.0}), + "feature_param": (["emitter_x_frequency", "emitter_y_frequency", "direction_frequency"],), + }, + "optional": { + "feature": ("FEATURE",), } } @@ -245,7 +249,8 @@ class EmitterMovement(ParticleSystemModulatorBase): FUNCTION = "create_movement" def create_movement(self, emitter_x_frequency, emitter_y_frequency, direction_frequency, - emitter_x_amplitude, emitter_y_amplitude, direction_amplitude): + emitter_x_amplitude, emitter_y_amplitude, direction_amplitude, + feature_param, feature=None): movement = { "emitter_x_frequency": emitter_x_frequency, "emitter_y_frequency": emitter_y_frequency, @@ -253,6 +258,8 @@ class EmitterMovement(ParticleSystemModulatorBase): "emitter_x_amplitude": emitter_x_amplitude, "emitter_y_amplitude": emitter_y_amplitude, "direction_amplitude": direction_amplitude, + "feature_param": feature_param, + "feature": feature, } return (movement,) @@ -315,11 +322,11 @@ class ParticleModulationBase(ParticleSystemModulatorBase): }, "optional": { "previous_modulation": ("PARTICLE_MODULATION",), + "feature": ("FEATURE",), } } - - def create_modulation(self, start_frame, end_frame, effect_duration, temporal_easing, palindrome, random, previous_modulation=None): + def create_modulation(self, start_frame, end_frame, effect_duration, temporal_easing, palindrome, random, previous_modulation=None, feature=None): modulation = { "start_frame": start_frame, "end_frame": end_frame, @@ -327,6 +334,7 @@ class ParticleModulationBase(ParticleSystemModulatorBase): "temporal_easing": temporal_easing, "palindrome": palindrome, "random": random, + "feature": feature, } modulation_type = self.__class__.__name__ diff --git a/pyproject.toml b/pyproject.toml index 9799d1f..738c4b2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [project] name = "comfyui_ryanonyheinside" description = "Custom nodes introducing particle simulations, optical flow, audio manipulation & reactivity, and temporal masks" -version = "1.4.3" +version = "1.4.6" license = {file = "LICENSE"} dependencies = ["opencv-python==4.10.0","scipy","pillow","librosa","pymunk==6.8.1","matplotlib","openunmix","mido"] diff --git a/readme.md b/readme.md index a198c25..3a11f9b 100644 --- a/readme.md +++ b/readme.md @@ -36,18 +36,18 @@ Getting started with the RyanOnTheInside node pack is easy: 2. Open ComfyUI and look for nodes prefixed with "RyanOnTheInside" in the node browser. 3. Check out the example workflows on Civitai to see how different features can be used. -### Example Workflows on Civitai +### Example and Tutorial Workflows on Civitai -For a range of example workflows showcasing the capabilities of this node pack, visit my Civitai profile: +For a range of example and tutorial workflows showcasing the capabilities of this node pack, visit my Civitai profile: [RyanOnTheInside Civitai Profile](https://civitai.com/user/RyanOnTheInside) ## 🚀 Key Features - +Particles are now reactive! ### 🎛️ Flex Features Dynamic control over various aspects of your workflow: -- Modulate IPAdapters, Masks, and Images based on extracted features +- Modulate IPAdapters, Masks, Images, and Particles based on extracted features - Features include: Audio, MIDI, Motion, Depth, Color, Time, and more - Create adaptive, responsive effects that evolve with your input data