Giter Site home page Giter Site logo

butterflow's Introduction

Butterflow

Butterflow is an easy to use command-line tool that lets you create fluid slow motion and motion interpolated videos.

It works by rendering intermediate frames between existing frames. For example, given two existing frames A and B, this program can generate frames C.1, C.2...C.n that are positioned between the two. This process, called motion interpolation, increases frame rates and can give the perception of smoother motion and more fluid animation, an effect most people know as the "soap opera effect". butterflow takes advantage of this increase in frame rates to make high speed and slow motion videos with minimal judder.

In this example, butterflow slowed down a 1s video down by 10x. An additional 208 frames were interpolated from 30 original source frames giving the video a smooth feel during playback. The same video was slowed down with ffmpeg, but because it dupes frames and can't interpolate new ones the video has a noticeable stutter.

Here is another example where the frame rate has been increased from 30fps to 60fps with butterflow. The video has been slowed down to make the interpolated frame (marked Src: N) between original source frames more apparent. Playing it back in full speed would produce a "soap opera effect".

See the In Action page for more demonstrations.

Installation

OS X:

With homebrew:

brew install homebrew/science/butterflow

Arch Linux:

A package is available in the AUR under butterflow.

From Source:

Refer to the Install From Source Guide on the wiki.

Setup

After installing the package, you still need to install at least one vendor-specific implementation of OpenCL that supports your hardware. No setup is necessary on OS X because support is provided by default. See Suggested OpenCL Packages for some options.

When finished, you can run butterflow -d to print a list of all detected devices.

For additional information on how to satisfy the OpenCL requirements, please read How to set up OpenCL in Linux. If you're on Arch Linux, have a look at their GPGPU wiki page.

Usage

Run butterflow -h for a full list of options and their default values.

See Example Usage for typical commands.

butterflow's People

Contributors

dthpham avatar

Watchers

 avatar  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.