Drop frames to speed up / reduce size

Let's say I have a GoPro3, recording at 120fps 720p h.264 to have the option to do slow motion. Most of the time I don't want to. How do I drop 75% of the frames from the portion of the video I want to play normally, and leave in all the frames in the slow motion portion, and render the whole thing to play at 30fps?

The goal is to get a video which plays at normal speed, is nearly 25% the size as the original, but has a chunk that plays at 1/4 speed for slow motion effect.


What happens when you render your video to a project that has 30fps setting ? Surely this drops the frames for you ?

What happens when you apply the speed effect on 120fps video and slow it down?

You would think that in theory this would all work fine.

I get a single frame that doesn't do anything. I don't know if I have the project settings or the render settings wrong, or what. I can't seem to do anything with the test clip.

I know I can watch/read/follow the tutorials to learn a lot about kdenlive. I'll do that. But without this basic simple functionality, I'm never going to bother.
I want to import clip, cut off the junk, and export to something that's only got 30ish video frames for every second that plays, and to choose whether I want to keep all 120 frames for each second of recording or only keep 30 frames for every second of recording. Once I can do that, I can jump into the tutorials and actually learn the NLE features, enhancements, and filters and really get into the power of the software.

BTW, I appreciate your time helping me get started. I don't know why, but it's always been a hurdle getting started with video stuff. Everything else in linux comes easy for me it seems. Just not this stuff (with any editor. pitivi, kdenlive, cinelerra, mencoder, whatever).

I still see many problems with the clip speed effect in my projects: corrupted frames, erratic frames, clip duration miscalculation, et cetera. This is an area where mlt seem to be buggy for quite some time despite many reports about such issues. I'm still looking for a solution to what you want to achieve. So far, I had only filmed with 25fps, that is, my final frame rate. But I'm now starting to film certain sequences in 50fps or better ... but at the moment I have to way to process such material with Linux video tools..

do you mean "but at the moment I have No way to process such material with Linux video tools.."

ups, yes, you are right: I've no way to process such materials. Probably ffmpeg would be the right tool, but I have no idea how to achieve this.

Would a transcode job do the job for you?


It uses ffmpeg to change video formats.

If you just want to throw out the additional frames then these transcode menu options should do the job fine.

But I don't see how this should work for the second item, the time lapse use case, where the number of frames is kept but the duration between frames is increased. Somehow this would need a separate set of transcode parameters, as the menu just offers the final resolution and fps parameters, not any speed down information.

And unfortunately, mlt still has these annoying speed up and speed down bugs. Otherwise, this would have been a logical and straightforward way to do it through the clip effects.

I wonder if Granjows Slowmo video application works in this situation http://slowmoVideo.granjow.net

Yes, it does. But it requires a large amount of resources, both computational as well as on disk. It disassembles the source clip into its individual frames which it stores on disk. It then runs its calculations on them when rendering a completely new clip, where you can specify the frames per second as you like.

But that's not a road you want to travel just for changing a clip from 50fps or 100fps to 25fps.

Yeah I was just thinking the transcode job to change the frame rate in the section of the video running at 1X and use the Slowmo video application for the slow motion parts. But yes indeed it would be good if mlt/ffmpeg/kdenlive would handle the high frame rate and slow mo it properly with the existing interface.

Hi there.

There was a bug in handling 100fps NTSC footage from GoPro cameras.
Unfortunately, if you don't want to re-take that footage at a different framerate, your options are limited.
If you have ffmpeg installed already, it's possible to speed up and slow down footage with the command line.

I wrote a small piece on it while I was waiting for the bug to be fixed in kdenlive


If you are able to pull kdenlive and mlt from git, you should be able to directly edit your footage. Just rendering to a certain framerate will throw out the extra frames, and slowing down the footage will use those extra frames to get smooth motion in slomo.

There is a quick test to show what I am talking about.

Evert, many thanks for sharing the ffmpeg method! This is what I was looking for. I still have to wait for a new ppa svn build ... the ppa packages are horribly broken all these days.