This commit is contained in:
peteromallet
2024-02-13 23:34:28 +01:00
parent 74c326a9a2
commit f688b4fa26
2 changed files with 427 additions and 424 deletions
+412 -412
View File
@@ -179,7 +179,7 @@
"hidden": false,
"paused": false,
"params": {
"filename": "AD__00602.mp4",
"filename": "AD__00686.mp4",
"subfolder": "steerable-motion",
"type": "output",
"format": "video/h264-mp4"
@@ -312,72 +312,6 @@
"Node name for S&R": "GetImageSize+"
}
},
{
"id": 401,
"type": "VHS_LoadImagesPath",
"pos": [
-1426.3693935183685,
-1835.5733992417513
],
"size": [
320,
194
],
"flags": {},
"order": 5,
"mode": 0,
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
737,
881,
908,
975
],
"shape": 3,
"slot_index": 0
},
{
"name": "MASK",
"type": "MASK",
"links": null,
"shape": 3
},
{
"name": "INT",
"type": "INT",
"links": [],
"shape": 3,
"slot_index": 2
}
],
"properties": {
"Node name for S&R": "VHS_LoadImagesPath"
},
"widgets_values": {
"directory": "/workspace/ComfyUI/input//Dance into shadow/",
"image_load_cap": 0,
"skip_first_images": 0,
"select_every_nth": 1,
"choose folder to upload": "image",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"frame_load_cap": 0,
"skip_first_images": 0,
"filename": "/workspace/ComfyUI/input//Dance into shadow/",
"type": "path",
"format": "folder",
"select_every_nth": 1
}
}
},
"color": "#332922",
"bgcolor": "#593930"
},
{
"id": 541,
"type": "PromptSchedule",
@@ -569,7 +503,7 @@
"1": 58
},
"flags": {},
"order": 6,
"order": 5,
"mode": 0,
"inputs": [
{
@@ -608,7 +542,7 @@
"1": 365.04229736328125
},
"flags": {},
"order": 7,
"order": 6,
"mode": 0,
"inputs": [
{
@@ -668,7 +602,7 @@
"1": 300
},
"flags": {},
"order": 8,
"order": 7,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -794,46 +728,6 @@
"split_index": 4
}
},
{
"id": 552,
"type": "ADE_AnimateDiffLoRALoader",
"pos": [
2603,
-1261
],
"size": {
"0": 316.65606689453125,
"1": 82
},
"flags": {},
"order": 9,
"mode": 4,
"inputs": [
{
"name": "prev_motion_lora",
"type": "MOTION_LORA",
"link": null
}
],
"outputs": [
{
"name": "MOTION_LORA",
"type": "MOTION_LORA",
"links": [
1007
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "ADE_AnimateDiffLoRALoader"
},
"widgets_values": [
"400_woman_dancing_temporal_unet.safetensors",
0.65
]
},
{
"id": 451,
"type": "Note Plus (mtb)",
@@ -854,7 +748,7 @@
"1": 147.40196228027344
},
"flags": {},
"order": 10,
"order": 8,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -889,7 +783,7 @@
"1": 163.1022491455078
},
"flags": {},
"order": 11,
"order": 9,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -924,7 +818,7 @@
"1": 390
},
"flags": {},
"order": 12,
"order": 10,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -1037,59 +931,6 @@
0.675
]
},
{
"id": 548,
"type": "BatchValueScheduleLatentInput",
"pos": [
2057,
-2119
],
"size": {
"0": 352.79998779296875,
"1": 140
},
"flags": {},
"order": 33,
"mode": 0,
"inputs": [
{
"name": "num_latents",
"type": "LATENT",
"link": 1006
}
],
"outputs": [
{
"name": "FLOAT",
"type": "FLOAT",
"links": [
998
],
"shape": 3,
"slot_index": 0
},
{
"name": "INT",
"type": "INT",
"links": null,
"shape": 3,
"slot_index": 1
},
{
"name": "LATENT",
"type": "LATENT",
"links": null,
"shape": 3
}
],
"properties": {
"Node name for S&R": "BatchValueScheduleLatentInput"
},
"widgets_values": [
"0:(1.3)",
true
]
},
{
"id": 547,
"type": "ADE_UseEvolvedSampling",
@@ -1258,46 +1099,6 @@
],
"shape": 2
},
{
"id": 536,
"type": "ADE_AnimateDiffLoRALoader",
"pos": [
3002,
-1263
],
"size": {
"0": 308.66558837890625,
"1": 82
},
"flags": {},
"order": 25,
"mode": 4,
"inputs": [
{
"name": "prev_motion_lora",
"type": "MOTION_LORA",
"link": 1007
}
],
"outputs": [
{
"name": "MOTION_LORA",
"type": "MOTION_LORA",
"links": [
1004
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "ADE_AnimateDiffLoRALoader"
},
"widgets_values": [
"400_woman_dancing_temporal_unet.safetensors",
0.4
]
},
{
"id": 436,
"type": "PreviewImage",
@@ -1332,7 +1133,7 @@
],
"size": {
"0": 785.2230224609375,
"1": 213.7488555908203
"1": 246
},
"flags": {},
"order": 23,
@@ -1368,7 +1169,7 @@
"1": 260
},
"flags": {},
"order": 13,
"order": 11,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -1403,7 +1204,7 @@
"1": 256.3551330566406
},
"flags": {},
"order": 14,
"order": 12,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -1438,7 +1239,7 @@
"1": 347.8489685058594
},
"flags": {},
"order": 15,
"order": 13,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -1473,7 +1274,7 @@
"1": 265.0110778808594
},
"flags": {},
"order": 16,
"order": 14,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -1508,7 +1309,7 @@
"1": 147.5499725341797
},
"flags": {},
"order": 17,
"order": 15,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -1523,62 +1324,6 @@
"bgcolor": "#335",
"shape": 1
},
{
"id": 470,
"type": "LoraLoader",
"pos": [
-725,
-1357
],
"size": {
"0": 314.343994140625,
"1": 126
},
"flags": {},
"order": 22,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 896
},
{
"name": "clip",
"type": "CLIP",
"link": 893
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
909
],
"shape": 3,
"slot_index": 0
},
{
"name": "CLIP",
"type": "CLIP",
"links": [
994,
996
],
"shape": 3,
"slot_index": 1
}
],
"properties": {
"Node name for S&R": "LoraLoader"
},
"widgets_values": [
"v3_sd15_adapter.ckpt",
0.4,
0.25
]
},
{
"id": 467,
"type": "ACN_SparseCtrlLoaderAdvanced",
@@ -1675,6 +1420,233 @@
"Node name for S&R": "ACN_SparseCtrlRGBPreprocessor"
}
},
{
"id": 556,
"type": "Note Plus (mtb)",
"pos": {
"0": -780,
"1": -1948,
"2": 0,
"3": 0,
"4": 0,
"5": 0,
"6": 0,
"7": 0,
"8": 0,
"9": 0
},
"size": {
"0": 411.70318603515625,
"1": 196.17578125
},
"flags": {},
"order": 16,
"mode": 0,
"inputs": [],
"outputs": [],
"title": "Note+ (mtb)",
"properties": {},
"widgets_values": [
"## Tweak Sparse Ctrl end_percent to improve adherence ⮕\n<br>\nI'd recommend that you increase the `end_percent` to the right to improve adherence. Higher values tend to cause flickering. However, increase the adapter strength below along with it below to fix this to an extend. Increasing `end_percent` above 0.5 will also cause issues.",
"markdown",
""
],
"color": "#223",
"bgcolor": "#335",
"shape": 1
},
{
"id": 445,
"type": "Note Plus (mtb)",
"pos": {
"0": -1594,
"1": -1461,
"2": 0,
"3": 0,
"4": 0,
"5": 0,
"6": 0,
"7": 0,
"8": 0,
"9": 0
},
"size": {
"0": 650,
"1": 1040
},
"flags": {},
"order": 17,
"mode": 0,
"inputs": [],
"outputs": [],
"title": "Note+ (mtb)",
"properties": {},
"widgets_values": [
"# A brief guide\n\n<br>\n\n## Philosophy for getting the most from this:\n\n<br>\n\nThis isn’t a tool like text to video that will perform well out of the box - it’s more like a paint brush, an artistic tool that you need to figure out how to get the best from. \n\n<br>\n\nThrough trial and error, you'll need to build an understanding of how the motion and settings work, what its limitations are, which inputs work best with it, etc.\n\n<br>\n\nIf you can figure out how to wield it, this approach can provide enough control for you to make beautiful things that match your imagination precisely.\n\n<br>\n\n## How to use this:\n<br> \n1.Select a folder with the images in them above. The most important thing that will influence the quality of your creation is the input images.\n\n<br> \n\n2.Try the basic settings to start. Based on the resulting generation, try to understand what happened - you can learn about the settings and observe the graphs to the right.\n\n<br>\n\n3.Tweak the settings until you achieve your desired effect. \n\n<br>\n\n## What this will &amp; won't be suitable for:\n\nI believe that this will be good for a wide range of storytelling-driven and abstract motion.\n\nHowever, it probably won't be good for complex motion - other approaches like vid2vid are far more suitable for this.\n\n## If you're having problems:\n\n<br>\n\nFirst, download the latest version of this workflow from [here](https://raw.githubusercontent.com/peteromallet/steerable-motion/main/demo/creative_interpolation_example.json) and get the latest version of the node from Comfy Manager.\n\n<br>\n\nIf that doesn't work, drop into [our Discord](https://discord.gg/V72vk8T67n) and share your problem and I'll try to help ASAP.\n\n<br>\n\n\n## Want to join a community of people who are pushing open source models to their technical and artistic limits?\n\n<br>\n\nYou're welcome to join [our Discord](https://discord.gg/UJf6aum7WZ).\n\n<br>\n\nPlease share anything you generate in the steerable-motion channel.",
"markdown",
""
],
"color": "#223",
"bgcolor": "#335",
"shape": 1
},
{
"id": 456,
"type": "Note Plus (mtb)",
"pos": {
"0": 212,
"1": -940,
"2": 0,
"3": 0,
"4": 0,
"5": 0,
"6": 0,
"7": 0,
"8": 0,
"9": 0
},
"size": {
"0": 210,
"1": 186.09225463867188
},
"flags": {},
"order": 18,
"mode": 0,
"inputs": [],
"outputs": [],
"title": "Note+ (mtb)",
"properties": {},
"widgets_values": [
"## ⬅ Download the models from Comfy Manager\n<br>\nSee details on where to find them on the left.",
"markdown",
""
],
"color": "#223",
"bgcolor": "#335",
"shape": 1
},
{
"id": 470,
"type": "LoraLoader",
"pos": [
-725,
-1357
],
"size": {
"0": 314.343994140625,
"1": 126
},
"flags": {},
"order": 22,
"mode": 0,
"inputs": [
{
"name": "model",
"type": "MODEL",
"link": 896
},
{
"name": "clip",
"type": "CLIP",
"link": 893
}
],
"outputs": [
{
"name": "MODEL",
"type": "MODEL",
"links": [
909
],
"shape": 3,
"slot_index": 0
},
{
"name": "CLIP",
"type": "CLIP",
"links": [
994,
996
],
"shape": 3,
"slot_index": 1
}
],
"properties": {
"Node name for S&R": "LoraLoader"
},
"widgets_values": [
"v3_sd15_adapter.ckpt",
0.05,
0.25
]
},
{
"id": 401,
"type": "VHS_LoadImagesPath",
"pos": [
-1426,
-1836
],
"size": [
320,
194
],
"flags": {},
"order": 19,
"mode": 0,
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
737,
881,
908,
975
],
"shape": 3,
"slot_index": 0
},
{
"name": "MASK",
"type": "MASK",
"links": null,
"shape": 3
},
{
"name": "INT",
"type": "INT",
"links": [],
"shape": 3,
"slot_index": 2
}
],
"properties": {
"Node name for S&R": "VHS_LoadImagesPath"
},
"widgets_values": {
"directory": "/workspace/ComfyUI/input//Disappearing/",
"image_load_cap": 0,
"skip_first_images": 0,
"select_every_nth": 1,
"choose folder to upload": "image",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"frame_load_cap": 0,
"skip_first_images": 0,
"filename": "/workspace/ComfyUI/input//Disappearing/",
"type": "path",
"format": "folder",
"select_every_nth": 1
}
}
},
"color": "#332922",
"bgcolor": "#593930"
},
{
"id": 468,
"type": "ACN_AdvancedControlNetApply",
@@ -1770,154 +1742,14 @@
"widgets_values": [
0.6,
0,
0.2
0.05
]
},
{
"id": 556,
"type": "Note Plus (mtb)",
"pos": {
"0": -780,
"1": -1948,
"2": 0,
"3": 0,
"4": 0,
"5": 0,
"6": 0,
"7": 0,
"8": 0,
"9": 0
},
"size": {
"0": 411.70318603515625,
"1": 196.17578125
},
"flags": {},
"order": 18,
"mode": 0,
"inputs": [],
"outputs": [],
"title": "Note+ (mtb)",
"properties": {},
"widgets_values": [
"## Tweak Sparse Ctrl end_percent to improve adherence ⮕\n<br>\nI'd recommend that you increase the `end_percent` to the right to improve adherence. Higher values tend to cause flickering. However, increase the adapter strength below along with it below to fix this to an extend. Increasing `end_percent` above 0.5 will also cause issues.",
"markdown",
""
],
"color": "#223",
"bgcolor": "#335",
"shape": 1
},
{
"id": 445,
"type": "Note Plus (mtb)",
"pos": {
"0": -1594,
"1": -1461,
"2": 0,
"3": 0,
"4": 0,
"5": 0,
"6": 0,
"7": 0,
"8": 0,
"9": 0
},
"size": {
"0": 650,
"1": 1040
},
"flags": {},
"order": 19,
"mode": 0,
"inputs": [],
"outputs": [],
"title": "Note+ (mtb)",
"properties": {},
"widgets_values": [
"# A brief guide\n\n<br>\n\n## Philosophy for getting the most from this:\n\n<br>\n\nThis isn’t a tool like text to video that will perform well out of the box - it’s more like a paint brush, an artistic tool that you need to figure out how to get the best from. \n\n<br>\n\nThrough trial and error, you'll need to build an understanding of how the motion and settings work, what its limitations are, which inputs work best with it, etc.\n\n<br>\n\nIf you can figure out how to wield it, this approach can provide enough control for you to make beautiful things that match your imagination precisely.\n\n<br>\n\n## How to use this:\n<br> \n1.Select a folder with the images in them above. The most important thing that will influence the quality of your creation is the input images.\n\n<br> \n\n2.Try the basic settings to start. Based on the resulting generation, try to understand what happened - you can learn about the settings and observe the graphs to the right.\n\n<br>\n\n3.Tweak the settings until you achieve your desired effect. \n\n<br>\n\n## What this will &amp; won't be suitable for:\n\nI believe that this will be good for a wide range of storytelling-driven and abstract motion.\n\nHowever, it probably won't be good for complex motion - other approaches like vid2vid are far more suitable for this.\n\n## If you're having problems:\n\n<br>\n\nFirst, download the latest version of this workflow from [here](https://raw.githubusercontent.com/peteromallet/steerable-motion/main/demo/creative_interpolation_example.json) and get the latest version of the node from Comfy Manager.\n\n<br>\n\nIf that doesn't work, drop into [our Discord](https://discord.gg/V72vk8T67n) and share your problem and I'll try to help ASAP.\n\n<br>\n\n\n## Want to join a community of people who are pushing open source models to their technical and artistic limits?\n\n<br>\n\nYou're welcome to join [our Discord](https://discord.gg/UJf6aum7WZ).\n\n<br>\n\nPlease share anything you generate in the steerable-motion channel.",
"markdown",
""
],
"color": "#223",
"bgcolor": "#335",
"shape": 1
},
{
"id": 456,
"type": "Note Plus (mtb)",
"pos": {
"0": 212,
"1": -940,
"2": 0,
"3": 0,
"4": 0,
"5": 0,
"6": 0,
"7": 0,
"8": 0,
"9": 0
},
"size": {
"0": 210,
"1": 186.09225463867188
},
"flags": {},
"order": 20,
"mode": 0,
"inputs": [],
"outputs": [],
"title": "Note+ (mtb)",
"properties": {},
"widgets_values": [
"## ⬅ Download the models from Comfy Manager\n<br>\nSee details on where to find them on the left.",
"markdown",
""
],
"color": "#223",
"bgcolor": "#335",
"shape": 1
},
{
"id": 551,
"type": "Note Plus (mtb)",
"pos": {
"0": 3001,
"1": -1142,
"2": 0,
"3": 0,
"4": 0,
"5": 0,
"6": 0,
"7": 0,
"8": 0,
"9": 0
},
"size": {
"0": 322.51995849609375,
"1": 163.89112854003906
},
"flags": {},
"order": 21,
"mode": 0,
"inputs": [],
"outputs": [],
"title": "Note+ (mtb)",
"properties": {},
"widgets_values": [
"## You can add Motion LoRAs above\n<br>\nThese are great for complex movements. Just un-bypass the nodes. You can learn more about training them [here](https://github.com/ExponentialML/AnimateDiff-MotionDirector).",
"markdown",
""
],
"color": "#223",
"bgcolor": "#335",
"shape": 1
},
{
"id": 207,
"type": "KSampler Adv. (Efficient)",
"pos": [
1455,
1460,
-2190
],
"size": {
@@ -2030,12 +1862,180 @@
"bgcolor": "#333355",
"shape": 1
},
{
"id": 548,
"type": "BatchValueScheduleLatentInput",
"pos": [
2057,
-2119
],
"size": {
"0": 352.79998779296875,
"1": 140
},
"flags": {},
"order": 33,
"mode": 0,
"inputs": [
{
"name": "num_latents",
"type": "LATENT",
"link": 1006
}
],
"outputs": [
{
"name": "FLOAT",
"type": "FLOAT",
"links": [
998
],
"shape": 3,
"slot_index": 0
},
{
"name": "INT",
"type": "INT",
"links": null,
"shape": 3,
"slot_index": 1
},
{
"name": "LATENT",
"type": "LATENT",
"links": null,
"shape": 3
}
],
"properties": {
"Node name for S&R": "BatchValueScheduleLatentInput"
},
"widgets_values": [
"0:(1.3)",
true
]
},
{
"id": 552,
"type": "ADE_AnimateDiffLoRALoader",
"pos": [
2603,
-1261
],
"size": {
"0": 316.65606689453125,
"1": 82
},
"flags": {},
"order": 20,
"mode": 4,
"inputs": [
{
"name": "prev_motion_lora",
"type": "MOTION_LORA",
"link": null
}
],
"outputs": [
{
"name": "MOTION_LORA",
"type": "MOTION_LORA",
"links": [
1007
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "ADE_AnimateDiffLoRALoader"
},
"widgets_values": [
"400_woman_dancing_temporal_un222et.safetensors",
0
]
},
{
"id": 536,
"type": "ADE_AnimateDiffLoRALoader",
"pos": [
3000,
-1268
],
"size": {
"0": 308.66558837890625,
"1": 82
},
"flags": {},
"order": 25,
"mode": 0,
"inputs": [
{
"name": "prev_motion_lora",
"type": "MOTION_LORA",
"link": 1007
}
],
"outputs": [
{
"name": "MOTION_LORA",
"type": "MOTION_LORA",
"links": [
1004
],
"shape": 3,
"slot_index": 0
}
],
"properties": {
"Node name for S&R": "ADE_AnimateDiffLoRALoader"
},
"widgets_values": [
"400_woman_dancing_temporal_unet.safetensors",
0.3
]
},
{
"id": 551,
"type": "Note Plus (mtb)",
"pos": {
"0": 3001,
"1": -1142,
"2": 0,
"3": 0,
"4": 0,
"5": 0,
"6": 0,
"7": 0,
"8": 0,
"9": 0
},
"size": {
"0": 322.51995849609375,
"1": 163.89112854003906
},
"flags": {},
"order": 21,
"mode": 0,
"inputs": [],
"outputs": [],
"title": "Note+ (mtb)",
"properties": {},
"widgets_values": [
"## You can add Motion LoRAs above\n<br>\nThese are great for complex movements. Just un-bypass the nodes. You can learn more about training them [here](https://github.com/ExponentialML/AnimateDiff-MotionDirector).",
"markdown",
""
],
"color": "#223",
"bgcolor": "#335",
"shape": 1
},
{
"id": 473,
"type": "BatchCreativeInterpolation",
"pos": [
-271,
-608
-260,
-651
],
"size": {
"0": 378.3703308105469,