Post processing for OFS MTFG (lua script)

“Repeat pattern” works like a charm. Will use this one often for sure. “Fill at” is understood but I dont get adjust at. Can you show an example?

“Adjust at” example:
Place the cursor close to a point in the selection range that needs a small adjustment. In this example place the cursor at the time in the video where the top should be.

After clicking “Adjust at”:

  1. The point is moved to the cursor
  2. The first and last top points stay where they are
  3. All other top points are also shifted proportionally

This works the same for the bottom points (by placing the cursor close to a bottom point), and for the first and last point of the selection range.

By placing a few points in the range at the right time, the points in between will also be moved very close to the correct point in time.

OK great so this is the same as select peaks top or bottom and move them with shift-arrow right or left? That could work for MTFG captures where you can only track other parts and the main action gets a delay in the curve. Easier names to understand would be good. “Fill at” could be named “fill gap”? The other two I also don’t connect the names with the action. I have no better idea though.

Quickfix do you have a solution for converting a script that has been scripted at 30fps low res to a higher res 60fps? The scripts gets fubar for the highres60 as it seems the frames are shifted exponentially. Its not just move all points three clicks right. Can you think of a conversion way by lua script?

This is an example
https://discuss.eroscripts.com/t/community-event-jenni-lee-manojob-8th-place/169351

was scripted at 30frames lowres and just all points off at 4K 60

Sorry for offtopic

AFAIK the actions in a funscript are defined as actual time in ms. These times are not related to the framerate. Could it be that there is a small speed difference between the 30 and 60 fps movie?

Videos have same length and the script is shifted exponentially more and more. I have no idea how this happens but if you load the 30fps Jenni video it fits spot on. Load the 60fps as use different media and the script is shifted a bit at the beginning and a lot at the end. I have the feeling you could make a macro that moves all dots correctly if you find out the calculation?

I opened a help topic here

I could make an OFS extension where you manually move two script points to the correct time in the video, and all other points get adjusted accordingly.

Sent you message to test if you see it as possible. Repeat Pattern is it possible to leave the top and bottom points where they are? It seems they are moved when repeat pattern is applied?

The top points should stay where they are, the bottom points are discarded and replaced by the pattern.

Can the bottom points also stay? Possible to code? As copy pattern between the endpoints that stay in place?

“Adjust Point” seems invisible when you set the points? What about putting a bookmark when a point has been chosen? Message when adjustment has been done possible? I feel quite blind in this extension and don’t see when something is happening.

Besides waiting for help on the Timing macro/adjust point I have another idea. As minmax makes the script monotone buts its the only way to level the script with camera movements without extreme work and its all about the endpoints, it would be nice to go through the top points and low points only to correct each height quickly. This would need a key though you can set like T for top and L for low or so. This way you could skip through the tops and adjust their height with arrow up down quickly. Same with the lows.

No, it is not the same. The closest point moves to the cursor, and the end points of the selection do not move. The points in between move a little when close to the end of the selection, and move more when closer to the cursor. Like if they are on a rubber band that is being stretched.

Great and how do I use the timing macro? Its the only macro of yours I dont get.

Use of “Timing” extension:

This extension works on the whole script, only if one or two points are selected, to move or stretch the script

One point selected:

  1. Select one point using the mouse
  2. Using left add right arrow keys, move the cursor to the correct point in the video

  1. Click “Adjust point”

The whole script moves so the selected point is at the right time.

Two points selected

  1. Select the first point like above
  2. Select a second point while holding the “control” key; then the first point also remains selected.
  3. Using the left/right arrow keys move the cursor to the right point in the video

  1. Click “Adjust point”

Now the closest selected point moves to the cursor, setting that to the correct time in the video. The other selected point stays in place (that was already set correctly before).

All unselected points get stretched out proportionally hopefully placing those also at the correct point in time.
This corrects a time shift between the script and the video.

This will correct a sync error that increases or decreases towards the end of the script.

1 Like

Ah yes OK now its clear, its rubber banding the script into one direction if two points are chosen. Yes this should stretch or compress a script if an upscale did the same to the movie.

What about this one? I find myself correcting each low point as you move it when you add the pattern.

Yes, that should also be possible. I can maybe look into that later this week.

1 Like

I have a hard time marking the range of dots correctly outcome often looks like this:

Any chance you can exclude points that cause this? In this particular case I can not find the points I need to mark so it works.

Edit: ah you need to mark also before the thing you want top repeat. Then it works fine.

image

It uses the first point of the selection range as a reference. Then it scans the points before this point until it finds a point with exactly the same position. All the points in between these two points are copied. So, you should place the first point of the selection range at for instance 90, making sure it is a peak, then go to the first point of the pattern that should be copied and place that at 90 also. Then press “repeat pattern”.

1 Like