I have video-only (i.e., no audio) MP4 files of various resolutions that I want to splice and edit so that playback speed slows down around key marks and speeds up around others (a.k.a. time-stretching or time-warping). Full-featured video editors like Adobe Premier are unnecessarily and hopelessly complicated for this sort of task.

What software would be suited to this particular editing task? (The less ancillary features and cost the better.)

3 Answers 3


A new player to the windows world is kdenlive, a non-linear video editor which fits your requirements of being zero cost, as well as supporting speed change effects.

This wiki page references the feature allowing one to vary the speed of a clip, and cautions that the audio will be muted during speed changes. This is typical of any video editor, and based on your requirements, not a factor.

A caution is made in the wiki post regarding a type of video unsuitable for speed changes, but mp4 is not the one noted.

If an easily understandable GUI is your focus, this program fits the bill. There are many YouTube video tutorials covering the linux version and the two versions are nearly identical, differing perhaps only in the file management aspects of the operating systems.

  • I tested this and while it allows the speed to be changed by a fixed amount (slower or faster) for an entire clip, it doesn't appear to support "time-warping" or smooth speed modulation within a clip.
    – feetwet
    Commented Jul 26, 2017 at 15:52

I would suggest taking a look at Python + MoviePy (MoviePy downloads and installes FFMPEG for you the first time that you use it).

  • Cost $0.00 - all free, gratis & open source software.
  • Frills none - not even a GUI
  • Power Lots thanks to FFMPEG
  • Ease of use - quite high.
  • Size Tiny - FFMPEG installed < 150 MB, Python installer < 34 MB, MoviePy + dependencies 12 MB

The process would be to make a note of the exact times of each section and whether each is a speed-up or slow-down, and by how much, in the example below I have done a factor of 5 for both.

Then in python terminal, (or ipython is better), you can do the following:

from moviepy.editor import *
clips = []  # Storage for the clips
master =  VideoFileClip("name_of_input_file.mp4") # Edit name to real one

clips.append(master.subclip(0, 20).speedx(5))    # First 20 seconds at x5
clips.append(master.subclip(20, 25).speedx(0.2)  # Next 5 at 1/5 speed
#clips.append(...  # However many others you need

final = concatenate_videoclips(clips) # Add them all together
final.write_videofile("timeplay.mp4") # Save to a file go and have a coffee 

Obviously you can skip &/or repeat sections, etc. and there are a lot of other cool tricks that you can do with MoviePy.


I found a brilliant open-source project that does nothing but time-warping called slowmoVideo. It includes:

  • Ability to run smoothed transitions between speed rates
  • Interpolation for upsampling frames where desired output has been slowed beyond the source video
  • Optional blurring effects on downsampled segments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.