BF is a video manipulation tool that can:
- Make motion interpolated videos (increase a video's frame rate by rendering intermediate frames based on motion using a combination of pixel-warping and blending).
- Make smooth motion videos (do simple blending between frames).
- Leverage interpolated frames to make fluid slow motion videos.
BF works by rendering intermediate frames between existing frames using a process called motion interpolation. Given two existing frames, A
and B
, this program can generate frames C.1
, C.2
...C.n
positioned between the two. In contrast to other tools that can only blend or dupe frames, this program warps pixels based on motion to generate new ones.
The addition of interpolated frames gives the perception of more fluid animation commonly found in high frame rate videos, an effect most people know as the "soap opera effect".
Besides creating motion interpolated videos BF can leverage interpolated frames to make fluid slow motion videos:
In these examples BF slowed a 1sec
video down by 10x
. An additional 270
frames were interpolated from 30
original source frames giving the video a smooth feel during playback. The same video was slowed down using FFmpeg without any filters, but because it dupes frames and can't interpolate new ones, the video has a noticeable stutter (shown on the right-hand side).
Important: BF only works on 64-bit systems.
macOS: With Homebrew,brew install brewsci/science/butterflow
.- Windows 10 (Portable): Download:
- Preview: butterflow-0.2.4.dev0.7z
- Sha256: 683a4c759fdce5fe4eab9a8f07700e5ee97468343e9692dbf1e0171cedccf235
- Stable: butterflow-0.2.3.7z
- Sha256: 1e138b7d88154bed7150a0a155843832cba8d38be07b80bedee9f625c5fa0cc0
- Preview: butterflow-0.2.4.dev0.7z
- Arch Linux: A package is available in the AUR under
butterflow
. - From Source:
- macOS and Linux: Refer to the Install From Source Guide for instructions.
- Windows: See Install on Windows Guide.
Note: No setup is necessary on macOS. Read this if you run into a problem with OpenCL.
BF requires no setup to use but it's too slow out of the box to do any serious work. To take advantage of hardware accelerated methods that will make rendering significantly faster you must set up a functional OpenCL environment on your machine.
See: Setting up OpenCL for details on how to do this.
Run butterflow -h
for a full list of options. See: Example Usage for typical commands.
Check the docs folder.