← All ideas
  • Published 29 Oct 2017

mixed framerate support in VSE

Blender cannot mix frame rates. If you have some clips at 25 fps and some clips at 29.97 fps, you must convert them on your own, outside of Blender. It would be nice to mix frame rates within Blender VSE.

100%

Development Status: Open

Upvote 1 Downvote 0
notklaatu
29 Oct 2017

4 Comments

Whoops, should really have found this before I posted... I've done some work on making mixed-fps workflow better, details here: rightclickselect.com/p/sequencer/Ppbbbc/vse-playback-rate-control

1
pauloup

I'll not down vote this, since I agree that it should be a better way to do that, but you can convert framerates inside Blender with a Speed effect:

  • Add a Speed effect to your source strip
  • Select the source strip and in the Length field do "original length / 25 * 29.97"
  • You can actually type the equation and Blender will calc the result
  • For instance, to convert an original movie of 5432 frames @ 25fps in a 29.97fps project, type "5432 / 25 * 29.97". It'll give you 6512 frames, which is the correct length.

If the original movie has audio, you can also add an Speed effect and stretch the video strip to fit the audio strip length, without doing any math.

jason

Should this all happen transparently or should there be some kind of visual cue in the VSE that lets users know that the video they're editing isn't using the same framerate as what's set in Render Properties?

3pointedit

Given that Blender can only change speed with a speed effect strip, I guess it would be obvious if there are a bunch of effect strips added onto every other strip. But how would Blender discover that the frame rates don't match? Currently it cannot be aware until after import (by difference with the audio length).

It could be a 2 step process of stretching the video clip to match the length of the audio strip. Which is all fine of you are importing an original length clip, but if VSE metadata (keywords and in/outs) are implemented as outlined in another RCS entry, then you wouldn't know what the frame rate is.

I guess you would have to lean on other features of ffmpeg (if there is one).