Kosinkadink / ComfyUI-AnimateDiff-Evolved

Improved AnimateDiff for ComfyUI and Advanced Sampling Support
Apache License 2.0
2.3k stars 177 forks source link

Usage of PIA #411

Open WainWong opened 1 week ago

WainWong commented 1 week ago

Hello, thank you for your hard work, I noticed that you have added new PIA related features, I would like to ask, what is the difference between "Load PIA model directly as an animation model" and "Inject animation model using PIA"? How do you recommend using PIA, I don't see any significant advantage of running animations in PIA at the moment?

WainWong commented 1 week ago

image And how to use ADE_InjectPIAIntoAnimateDiffModel correctly, at the moment I'm using it like this and I don't feel like it's taking effect

Kosinkadink commented 1 week ago

Do not use Inject Animation Model using PIA node. As the test tube in the name and the fact it's located under "experimental" in PIA submenu suggests, this is not how PIA is intended to be used and is merely an extra node.

You just need to load the PIA model via Load AnimateDiff Model node, then connect it to the Apply AnimateDiff-PIA Model node.

WainWong commented 1 week ago

Thank you, that was a timely reply, I understand

WainWong commented 1 week ago

I have another question, I now realize that when the generated animation is larger than 16 frames, the video effect after 16 frames is very poor, is there any kind of context mode needed? Or is it just the way it is

Kosinkadink commented 1 week ago

For PIA, when context windows are active (more frames than context length in Context Options), the values provided by PIA Input [Research Presets] will not work very well or at all beyond certain parts of the animation. This is because these are the values I pulled from the PIA researcher's diffusers code, and their paper did not cover the scope of contexts.

You'll need to experiment with inputting custom values via PIA Input [Multival] node, or whatever I called it. PIA seems to like values that change across a context window, so the best bet would be try out values that oscillate with a period of context_length (values go up and back down every context_length frames).

WainWong commented 1 week ago

Ok,i will try ,thanks

WainWong commented 1 week ago

I wonder if you have time to give me an example of using InputPIA_MultivalNode? I've looked at the code and issue and can't figure out how to implement multivalued input ...... Thanks!