Log in

View Full Version : accelerate video - blend frames


karasu
7th September 2013, 16:02
I made timelapses using a Gopro. The standard method is to take a picture every x seconds and then create a video from theses pictures.

I use a different approach, instead of stills, I use 25fps videos. The idea is not to drop frames when speeding up the video, but to "blend" them to achieve some kind of long exposure effect.
Currently I use Slowmo Video (http://slowmovideo.granjow.net) who compute the optical flow and let me set the shutter speed. That way I can have a nice timelapse of a place, with smooth moving clouds and people movement appearing as ghostly trails.

Slowmo is a bit of an overkill in my case, and needs Teras of disk space.

Is there another way to speed up a video by blending frames using Avisynth, ffmpeg or another similar tool ? (running under linux is a plus)

thank you.

Asmodian
7th September 2013, 20:40
You could try playing with CovertFPS (http://avisynth.org/mediawiki/ConvertFPS) (at the bottom of the page). Maybe a combination of ChangeFPS and ConvertFPS would work?

karasu
8th September 2013, 00:11
Thank you Asmodian, I'll try that.

raffriff42
8th September 2013, 02:03
Inspired by this post from Gavino (http://forum.doom9.org/showthread.php?p=1642519#post1642519): AssumeFPS(Framerate * 16)
Merge(SelectEven(), SelectOdd()) ## divide framerate by 2, blending frames
Merge(SelectEven(), SelectOdd()) ## ditto...
Merge(SelectEven(), SelectOdd())
Merge(SelectEven(), SelectOdd())

StainlessS
8th September 2013, 18:13
Perhaps this of interest (ClipBlend) (would require 2nd pass, SelectEvery to reduce frame count):
http://forum.doom9.org/showthread.php?p=1632542#post1632542

Also see thread that prompted it:
http://forum.doom9.org/showthread.php?t=168001

EDIT: This may also provide amusement (RgbAmplifier, has temporal average function):
http://forum.doom9.org/showthread.php?t=168293
Maybe something like (unlikely to play in real time, but more precise blending, can lose half a bit at each merge):

Avisource("D:\avs\test.avi")
ConvertToRGB()
AssumeFPS(Framerate * 25)
RGBAmplifier(Radius=13,multiplier=0.0) # Can add Precise=True to use Double Precision float calcs
SelectEvery(25,12)