Install this extension via the ComfyUI Manager by searching
for ComfyUI-Keyframed
1. Click the Manager button in the main menu
2. Select Custom Nodes Manager button
3. Enter ComfyUI-Keyframed in the search bar
After installation, click the Restart button to
restart ComfyUI. Then, manually
refresh your browser to clear the cache and access
the updated list of nodes.
Visit
ComfyUI Online
for ready-to-use ComfyUI environment
ComfyUI-Keyframed integrates the [a/keyframed](https://github.com/dmarx/keyframed) library into ComfyUI, enabling users to define and manipulate parameter curves through a ComfyUI interface, facilitating parameter and prompt keyframing.
ComfyUI-Keyframed Introduction
ComfyUI-Keyframed is an extension designed to enhance the capabilities of ComfyUI by allowing you to create animations with dynamic prompts and parameters. This extension leverages the keyframed library to provide a user-friendly interface for defining and manipulating parameter curves within ComfyUI. By using this extension, AI artists can create more complex and expressive animations without needing to delve deeply into technical notation systems.
How ComfyUI-Keyframed Works
At its core, ComfyUI-Keyframed works by allowing you to define "keyframes" for various parameters and prompts. A keyframe is a specific point in time where a parameter or prompt has a defined value. Between these keyframes, the extension interpolates values to create smooth transitions. Think of it like setting key points in an animation timeline, where the software fills in the gaps to create fluid motion.
For example, if you want a prompt to gradually change from "a sunny day" to "a rainy night" over the course of an animation, you can set keyframes at the start and end of the animation with these prompts. The extension will handle the transition between these states, creating a seamless animation.
ComfyUI-Keyframed Features
Curve Constructors
Curve From String: Allows you to create curves using commonly used notation. This is useful for those familiar with tools like Deforum and FizzNodes.
Curve From YAML: Supports creating curves using YAML notation, which is more structured and readable.
Constant-Valued Curve: Generates a curve that maintains a constant value over time. This is useful for parameters that should remain unchanged.
Entangled Curves: Creates multiple sine wave curves that are phase-offset to ensure their sum is always 1. This is useful for creating complex, interleaved prompt transitions.
Curve Operators
Evaluate Curve At T: Evaluates the value of a curve at a specific time.
Apply Curve To Conditioning: Applies the value of a curve to a conditioning parameter, useful for batch processing.
Curve Arithmetic Operators: Allows for arithmetic operations on curves, such as addition and multiplication.
Scheduling
Schedule Prompt: The main node for creating prompt schedules. It combines multiple prompts into a single schedule that transitions over time.
Keyframed Condition: Attaches a conditioning value to a keyframe, allowing for complex transitions.
Set Keyframe: Adds a keyframe to a schedule.
Evaluate Schedule: Evaluates the schedule at a specific time to extract the appropriate conditioning.
ComfyUI-Keyframed Models
ComfyUI-Keyframed does not introduce new models but rather enhances the functionality of existing models by allowing for dynamic parameter and prompt changes over time. This means you can use your existing models in more creative and flexible ways.
What's New with ComfyUI-Keyframed
Version 1.0.0
Initial release with support for keyframed parameters and prompts.
Integration with the keyframed library for curve manipulation.
Basic curve constructors and operators.
Scheduling nodes for creating complex prompt transitions.
Troubleshooting ComfyUI-Keyframed
Common Issues and Solutions
Curves Not Interpolating Correctly:
Ensure that your keyframes are set correctly and that the interpolation method is appropriate for your needs.
Check for any typos or errors in your curve definitions.
Prompt Transitions Are Not Smooth:
Verify that the keyframes are spaced appropriately and that the transition methods are set correctly.
Experiment with different interpolation methods to achieve the desired effect.
Errors When Applying Curves to Conditionings:
Make sure that the conditioning parameters are compatible with the curves you are applying.
Check the batch sizes and ensure they match the expected input sizes.
Frequently Asked Questions
How do I create a simple animation with changing prompts?
Use the Schedule Prompt node to define your prompts and set keyframes at the desired times. The extension will handle the transitions.
Can I use this extension with other ComfyUI nodes?
Yes, ComfyUI-Keyframed is designed to integrate seamlessly with other ComfyUI nodes, allowing for complex and customized workflows.
Learn More about ComfyUI-Keyframed
For more detailed tutorials, documentation, and community support, you can explore the following resources:
FizzNodes Wiki for additional resources and examples.
By leveraging these resources, you can unlock the full potential of ComfyUI-Keyframed and create stunning, dynamic AI art animations.