GithubHelp home page GithubHelp logo

bennyface / comfyui-dream-video-batches Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alt-key-project/comfyui-dream-video-batches

0.0 0.0 0.0 95 KB

ComfyUI nodes supporting video generation in batch flows (SVD & AnimateDiff)

License: MIT License

Python 100.00%

comfyui-dream-video-batches's Introduction

Dream Project Video Batches

This is a custom node pack for ComfyUI, intended to provide utilities for other custom node sets for AnimateDiff and Stable Video Diffusion workflows.

I produce these nodes for my own video production needs (as "Alt Key Project" - Youtube channel). However, I think the nodes may be useful for other people as well.

I also run a separate Youtube channel for "Dream Project", where any videos related to my AI art generation will appear, including tutorials for my node packs (this one and the older "Dream Project Animation Nodes"). Currently, there are no videos for for "Dream Project Video Batches" but that is only a question of time.

Installation

Simple option (soon)

You should soon be able to install Dream Project Video Batches node pack using the ComfyUI Manager.

Manual option

Run within (ComfyUI)/custom_nodes/ folder:

Then, if you are using the python embedded in ComfyUI:

  • (ComfyUI)/python_embedded/python.exe -s -m pip install -r requirements.txt

With your system-wide python:

  • pip install -r requirements.txt

Finally:

  • Start ComfyUI.

Also install

As mentioned, this node pack is intended to support other node packs. A few worth mentioning are:

  • ComfyUI Frame Interpolation (by Fannovel16)
  • AnimateDiff Evolved (by Kosinkadink)
  • ComfyUI-VideoHelperSuite (by Kosinkadink)
  • ComfyUI Stable Video Diffusion (by thecooltechguy)

Concepts

Frame Set

A Frame set is a number of images (in a batch), with frame indices and a frame rate. Most nodes in this node pack work with frame sets.

Camera

The camera nodes in the node pack are always animating cropping tools - the output should always be smaller in size than the input (to allow for camera "movement").

The Nodes

Blended Transition [DVB]

Fades from one frame set to another over a specified number of overlapping frames.

Calculation [DVB]

Maths node providing arithmetic operators and most common mathematical functions (as defined in Python math module).

Create Frame Set [DVB]

Creates a frame set from an image batch and a specified frame rate.

Divide [DVB]

Simple division of float or int.

Fade From Black [DVB]

Adds fade-in from black at beginning of frame set.

Fade To Black [DVB]

Adds fade-out to black at end of frame set.

Float Input [DVB]

User input node for float values.

For Each Done [DVB]

File iteration (finalizer for use with 'For Each Filename')". This is used to process all files in a directory matching a pattern. This node marks a filename as "processed" and should typically be added very late in the workflow.

For Each Filename [DVB]

File iteration. This is used to process all files in a directory matching a pattern. This provides the next file path to process.

Frame Set Append [DVB]

Appends a frame set to another.

Frame Set Frame Dimensions Scaled [DVB]

Recalculates frame dimensions of a frame set with a factor. Useful to calculate intermediate step sizes.

Frame Set Index Offset [DVB]

Offsets frame indices in frame set.

Frame Set Merger [DVB]

Merges two frame sets. Conflicting indices will be prioritized from either set based on the arguments.

Frame Set Reindex [DVB]

Reindexing of frames in frame set (replacing all existing indices).

Frame Set Repeat [DVB]

Repeats a frame set multiple times. Useful for instance to quickly create alonger animation from a loop or single image.

Frame Set Reverse [DVB]

Reverses the frames of an animation (index flip). The flip is done in index order but will otherwise disregard indexing (such as gaps).

Frame Set Split Beginning [DVB]

Splits a frame set into a part of specified length (in existing frames) at the beginning and the following frames.

Frame Set Split End [DVB]

Splits a frame set into a part of specified length (in existing frames) at the end and the previous frames.

Frame Set Splitter [DVB]

Splits a frame set into two evenly sized sets (based on number of existing frames). Useful to divide work (reduce memory requirements in some cases).

Generate Inbetween Frames [DVB]

Simple utility for quickly adding inbetween frames (filling gaps) in frame set.

Int Input [DVB]

User input node for float values.

Linear Camera Pan [DVB]

Cropping utility to perform a camera constant velocity pan within a frame set. Outputs a frame set of smaller frame size.

Linear Camera Roll [DVB]

Rolls the camera along z axis.

Linear Camera Zoom [DVB]

Linear (constant velocity) zoom through crop.

Load Image From Path [DVB]

Loads a single image file from a path.

Multiply [DVB]

Simple multiplication node.

Sine Camera Pan [DVB]

Cropping utility to perform a camera pan within a frame set. Outputs a frame set of smaller frame size. Sine oscillation.

Sine Camera Roll [DVB]

Rolls the camera along z axis - sine oscillation.

Sine Camera Zoom [DVB]

Oscillating (sine wave) zoom through crop.

String Input [DVB]

User input node for string values.

Text Input [DVB]

User input node for text(string) values.

Unwrap Frame Set [DVB]

Extracts contents of frame set (required for use with other custom node packs and/or output nodes).

comfyui-dream-video-batches's People

Contributors

mojote avatar alt-key-project avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.