Any tool for OFS to modify speed of a script section?

I write my own scripts and I don’t always sync them to a video necessarily. Right now I often run into a situation where I have a good pattern going but I’d like to make a part of it faster or slower by like 10-20%. If this moves the points and shortens/lengthens the script, its not an issue. But so far I havent found any tool that can do this, couldnt find one from searching here either. I know multifunplayer can modify the speed of a script, but sadly it only works on the entire script so it doesnt work for what i need. Does anyone know if a tool exists for OFS (or even elsewhere) that can let me tweak just a section of the script in this way?

Yes a very easy one. For a part mark it select lower or upper and use shift-arrow

The thing you replied to here moves them up or down though, what I’m trying to do is stretch/condense that part to make it slower or faster. For example imagine a pattern thats at 100bpm hitting bottom points at 5 and top points at 80 and is 10 seconds long, if I want to make it 20% faster then it should increase to 12 seconds in length at 120bpm with the top and bottom points still at 5 and 80 with no change. Except that unlike this simple example my patterns are really complex so I need a tool that can just stretch/condense it automatically.

That is no so difficult to make. I will take a look at this.

1 Like

Ah OK for PWM not for accurate endpoints.

Just uploaded an OFS extension that can do this.

Installation instructions:

-open OFS

  • extensions->extension directory
  • in …/OFS3_data/extensions create a folder “Timing”

open the mega link, and download “main.lua” from mega folder “Timing”
Copy “main.lua” into the …/extensions/Timing folder of your OFS installation

in OFS: Extensions->Timing check “Enabled” and “Show window”

Then fill in a stretch factor, select the part of the script you want to stretch, and click “Stretch Selection”.

4 Likes

Thank you! Works great :slight_smile:

Thanks for the quickfix! I’ve had situations where a video is somehow stretched out more than the script and this can be helpfil.

Does this solve the fps change problem with a specific factor?

Could be used for that if you select the whole script.

Cool we would need the factor that fps stretches the video to misfit the script.

For stretching a whole script to fix sync issues you can also use the “Adjust Sync” button. This works by selection exactly two points, first one near the start of the script, and second one near the end. Place the cursor to the correct frame in the video where the second point should be, and click “Adjust Sync”. Then selected second point moves to that frame, and all other points are scaled proportionally. No need to figure out a stretch factor.

Yeah seems I cant use that macro well. If a factor would be known it would be more exact and easier no? Mark all, enter factor, done.

One more thing about this extension - do you think it would be possible to add an option to gradually increase speed of a section? For example from factor 1 at the start to factor 0.5 at the end (doubled speed) and it linearly increases slowly from start to end? Would be super useful to not have to select small sections one at a time and increase by like 1.05, 1.1, 1.15 etc

Updated the Timing script to add a “Gradual Stretch Selection” button.
Enjoy.

2 Likes

Thanks :slight_smile:

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.