xbox360
28th July 2011, 13:08
Hi how can I for example take a video & speed up certain frames & leave other frames untouched ? like frame 0 to 5000 is normal then 5001 to 1001 is sped up & the rest plays at normal speed.
Chikuzen
28th July 2011, 14:47
This is an ancient user script introduced with avisynth.info (http://www.avisynth.info/?ChangePlaySpeed).
AVISource("foo.avi")
Trim(0, 5000) ++ \
Trim(5001, 10000).ChangePlaySpeed(3.0) ++ \
Trim(10001, 0)
function ChangePlaySpeed(clip clip, float speed, float "fps", bool "pitch") {
fps = default(fps, -1.0)
pitch = default(pitch, false)
clip = pitch ? clip.TimeStretch(rate=100.0*speed) : \
clip.TimeStretch(tempo=100.0*speed)
rate = clip.Framerate()
clip = fps == 0.0 ? clip.AssumeFPS(rate*speed) : \
fps < 0.0 ? clip.AssumeFPS(rate*speed).ChangeFPS(rate) : \
clip.AssumeFPS(rate*speed).ChangeFPS(fps)
return clip
}
you will get a clip which speed up to 3.0 times between from 5001 to 10000.
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.