carrus2049 / reaper_SM_tweaker

GNU General Public License v3.0
0 stars 0 forks source link

Adding slope adjustment 0.0.4.1 #11

Open carrus2049 opened 3 months ago

carrus2049 commented 3 months ago

Assumed slope behavior. Known issue is that when prev rate is not zero, the slope adjustment will reset the start of slope to 0, doubt that it's the desired behavior and the formula is kinda tricky. https://github.com/carrus2049/reaper_SM_tweaker/assets/70931300/8aa5eedf-752e-4981-80d8-fd178f9e8043

antonjazzsax commented 3 months ago

Oh yeah man. that's exactly what we want to avoid for this use case

carrus2049 commented 3 months ago

Took awhile to figure that out. Plz check if them works as expected! And some minor(I assume) is stated at changelog

antonjazzsax commented 3 months ago

Hi. Thanks a lot! Seems to be working properly now. So maybe could be moved on the zoom dependant actions for slope adjustment as well now? I would then test it all together thoroughtly in different scenarios.

carrus2049 commented 3 months ago

Glad to know it's working! zoom deps and two way API is added in 0.0.4.3. Note that step size and zoom lamdba is separated in configs.lua It's copied from SM API and not tested so as well feel free to post if anything goes wrong!

antonjazzsax commented 3 months ago

Hi. Thank you very much. Right now testing it.

  1. Can you please add 2 way actions for the slope actions, both absolute and zoom dependant?

  2. I will keep testing the slope behaviour, especially with regards to the issue of slope/stretch state being reset, or adjusted wrongly. It's a bit tricky, as you mentioned earlier. But I will make my observations and will try to suggest the behavior. Thank you.

carrus2049 commented 2 months ago

Hi, I think the two way and zoom dep action is added at here and here ;)

antonjazzsax commented 2 months ago

Oh. Sorry. Did i miss those? Thanks. I'll test out the rest today then

antonjazzsax commented 2 months ago

there is a missing dot in the file name of one of those 2way actions though, which prevented it from loading into reaper. Should be 2way.lua , not 2waylua

antonjazzsax commented 2 months ago

OK. I've tried out the slope actions now. Here is what worked: Slope adjusters abs_val forward and backward work ok to the point. What is good is that slope ratio at the end point of the slope matches the stretch ratio (which remain without the slope for the rest of the region on the right from the SM). This is the kind of behavior that should be for the slope actions.

What doesn't work

  1. That same stretch factor , which remains neutral slope-wise for the remaining portion of the region starts going off relative to slope end point ratio (on the left) once the slope has crossed some invisible threshold. I think I understand why it happens and it looks related to the issues bellow.

  2. The region should get longer (due to changed slope and stretch factors) as the slope is being adjusted. Currently it cuts of the portion of the region at the end and one needs to manually pull the missing portion of the region out at the end. Which doesn't work well too because of the issue below.

  3. Basically looks like scripts creates some 'ghost' stretch markers at the end of the region, which in itself is not bad, it is how Stretch markers work in reaper. However, it seems to populate dozens of those 'ghost' stretch markers, which then seem to mess the whole relation between slope end point and the stretch point behind it (as described in issue 1). Also even if the dissapeared region has been retrieved, those numerous ghost stretch markers at the end defeat the purpose, as they completely mess the very end of the region. My suggested solution for issues 2,3 would be to try to ensure that:

    • the region end always moves with the stretched region, instead of being swollen out, due to the length of the region being preserved.
    • there is only one 'ghost' marker at the very end and it is the very last thing of that region that moves with the stretch, so that nothing is getting messed up with those numerous auto generated 'ghost' stretch markers. If that is possible.
  4. Zoom dependant actions for slope adjustement don't work in a sense that the right hand portion of the region does not at all follow the stretch factor of the end point of the slope (similar to issue 1).

  5. 2way Actions for slope adjustment (both abs_val and zoom_dependant) don't work as per desired behavior either. The slope gets adjusted, but the stretch factor of the remaining portion of the region on the right does not follow the stretch factor of the slope end point.

Hope that description is understandable. If not I can try to screen capture something. Just not used to it .

Please let me know, if it's possible to correct. Thank you

carrus2049 commented 2 months ago

there is a missing dot in the file name of one of those 2way actions though, which prevented it from loading into reaper. Should be 2way.lua , not 2waylua

Ahh my bad for that, I'll take a look into those issues and fix this along the way!

carrus2049 commented 2 months ago
  • the region end always moves with the stretched region, instead of being swollen out, due to the length of the region being preserved.
  • there is only one 'ghost' marker at the very end and it is the very last thing of that region that moves with the stretch, so that nothing is getting messed up with those numerous auto generated 'ghost' stretch markers. If that is possible.

Those are added in 0.0.4.4. Plz take a look and see if they're done right and other behaviors, thanks!

antonjazzsax commented 2 months ago

Hi. Thank you very much for the update! I was away for couple of weeks but now came back and tested your new version. The behaviour was adjusted well now and that is great. Here are three main issues I've found though. There were few other smaller bugs in behaviour, but these are the most important ones. Please download videos for illustration: https://mega.nz/folder/bgk0nISI#SYNj06R-7EIvsDVGNhLlWQ

  1. SM action does correctly adjust , both "legs" now, but as soon as another one is created along the way, the slope factor starts slowly drifting apart between SM sides, creating uneven stretch at the sm point.
  2. It would be great if I could go back to the earlier stretch markers and that they would still adjust the slope in the same way as per desired behaviour. That would mean the right hand portion moves altogether, with the rates being preserved at the later SMs but the slope is being adjusted accordingly at the SM point being currently moved.
  3. Zoom dependant slope actions don't seem to follow the correct behaviour like the abs val. actions do.

Please let me know, if you could look at those as these are still crucial for the workflow.

carrus2049 commented 1 month ago

Oh hi, sry for the late update, been quite busy in august.

For the first issue, I tested on REAPER 7.06 and found it behaves quite different in 7.15 which I developed on. Would you take a look at 7.15 and see if the issue still exists? And if 7.06 is a must in your current workflow, plz let me know and I'll furthur look into it.

And I'll look into issue 2 and 3 just in these couple of days.

antonjazzsax commented 1 month ago

Thanks so much for comming back to me. Yes after I've updated reaper issue 1 is solved. Thanks so much. It's slowly getting there! becoming the best tool for this niche kind of job for analogue tape drift correction. ! And really the best way to work with it. Now really the only major issues 2 - 3 are left.

antonjazzsax commented 1 week ago

Hello How are you doing? Just wanted to nudge a bit and ask how is it going with the remaining two issues for the slope actions for you?

carrus2049 commented 1 day ago

Sry for the late update again. In v0.0.4.5dev I tried to solve issue 2 and it seems causing new bugs regarding slope value in the multiple markers on righthand portion of adjusted marker. And now I'm back from national day vacation and ready to look into it again.

For issue 2 I made a version that looks clean to me, though kinda losing track of the expected behavior regarding multiple right hand markers, plz take a look at the latest version and see if it behaves correctly as

That would mean the right hand portion moves altogether, with the rates being preserved at the later SMs but the slope is being adjusted accordingly at the SM point being currently moved.

And if not, plz provide some project with manually adjusted stretch marker, or screen recording if it's convenient.

And for issue 3, according to the screen recording, I think this script should be executed to test slope zoom dep function, which seems not binded to a shortcut in the video. Plz check that and see if it works.

Thanks for your patience!