Go Back   Cockos Incorporated Forums > REAPER Forums > ReaScript, JSFX, REAPER Plug-in Extensions, Developer Forum

Reply
 
Thread Tools Display Modes
Old 02-15-2019, 10:35 PM   #1
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default MPL Dump Retrospective Record log (no JSFX required)

UPD 08.04.23: the script is no longer supported, since REAPER has this feature natively.




================================================== =============
Concept: dump all incoming MIDI events into project MIDI data without actully recording it.

Before 2021 it was implemented using custom JSFX tracker.
After 2021 REAPER 6.39+ has native way to do this.

Instructions: 1) play something on your MIDI device connected to REAPER, 2) run script. Result: incoming MIDI is inside selected track new take at edit cursor.

Here is bunch of scripts from ReaPack:

Free version: mpl_Dump Retrospective Record log (old version). No dependencies and mostly built around Justin`s code.
Paid version:
  • mpl_Dump Retrospective Record log.lua kinda general script, uses optimized settings, including breaks to not get previous added data and obey looped recordings as multiple takes
  • mpl_Dump Retrospective Record log (notes only).lua
  • mpl_Dump Retrospective Record log (only data at playing).lua - event put into their played positions
  • mpl_Dump Retrospective Record log (only data at stop).lua - start from edit cursor to a event list length
  • mpl_Dump Retrospective Record log (everything recorded from last REAPER start).lua - collect everything without any filters
  • mpl_Dump Retrospective Record log (everything from last 5 minutes).lua - ignore break, dump everything based on time limit
  • mpl_Dump Retrospective Record log (everything from last 10 minutes).lua
  • mpl_Dump Retrospective Record log (everything from last 30 minutes).lua
  • mpl_Dump Retrospective Record log (everything from last hour, obey stored data break).lua

These scripts use VariousFunctions package 2.62+ from my repository (which is paid).
They have different (better) way of handling/sorting data, also they are easier to extend so any suggestions welcome.




old post:


Eugen made previously a JSFX writing MIDI data during playing project, and the script dumping this data as new item.

gmem API allows to share memory across JSFX and Reascript, so what I did is easier to think through and code.

Here are parts of making this real:
  • RetrospectiveRecord_tracker.jsfx is a JSFX sitting at some fixed track FX Chain to receive MIDI data for further translating it into ReaScript.
  • mpl_Prepare selected track for RetrospectiveRecord tracker.lua
    Eugen`s script search for track where tracker is inserted and add/hide it automatically if not found. I personally don`t like such things, so I made this action going manual. The script add RetrospectiveRecord tracker, disable parent send, enable monitoring, record arm, set input to all channels all MIDI devices, disable record). You can hide this track, add to default project template and forget.
  • mpl_Dump RetrospectiveRecord tracker log to selected track.lua 1) dump raw MIDI log into new item/take on selected track at edit cursor. Since tracker write system timestamps (not related to playing state), script just put whole buffer data as is, not syncronized to project, if you played while playing project; 2) reset buffer data.

Buffer is limited to 3.500.000 messages (it wraps if buffer filled).

Requirements:
Require REAPER 5.97+.
ReaPack 1.2+
Download: ReaPack.com (MPL`s repository is embedded into default ReaPack configuration)

Install:
  • run ActionList > ReaPack: Browse packages...
  • navigate and install Various_functions.lua, RetrospectiveRecord_tracker.jsfx, mpl_Prepare selected track for RetrospectiveRecord tracker.lua, mpl_Dump RetrospectiveRecord tracker log to selected track.lua packages

Last edited by mpl; 04-08-2023 at 05:17 AM.
mpl is offline   Reply With Quote
Old 02-16-2019, 06:11 AM   #2
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 13,333
Default

Wow, what a cool script. Thank you!
vitalker is online now   Reply With Quote
Old 02-16-2019, 07:27 AM   #3
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
Default

Great work (as always) mpl, but man, wouldn't it be so much easier if this was just built into Reaper, no fussing with JSFX or anything?
EvilDragon is online now   Reply With Quote
Old 02-16-2019, 07:28 AM   #4
Breeder
Human being with feelings
 
Breeder's Avatar
 
Join Date: Nov 2010
Posts: 2,436
Default

Does it work if playback is NOT engaged? Previous version by Eugen requires playback to be active. Just yesterday I wanted to point this out in another thread and now you post this! Awesome work - I'm gonna test this immediately!

Edit: YES IT WORKS EVEN WHEN PLAYBACK IS NOT ENGAGED. AWESOME!!!

So, I put JSFX in input FX chain in all of my track templates now and it all works. Thank you MPL - you just made my day! No more losing best performances!

Last edited by Breeder; 02-16-2019 at 07:51 AM.
Breeder is offline   Reply With Quote
Old 02-16-2019, 08:14 AM   #5
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

Quote:
Originally Posted by EvilDragon View Post
Great work (as always) mpl, but man, wouldn't it be so much easier if this was just built into Reaper, no fussing with JSFX or anything?
Absolutely agree. This one was made only as a temporary solution. I remember I asked Justin for having global incoming MIDI data log as accessible text (like OSC messages log in OSC setup window). Not sure is that so complex to implement (probably because of MIDI control/input data handling difference) on the Reaper side though.
mpl is offline   Reply With Quote
Old 02-16-2019, 09:52 AM   #6
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Pretty cool mpl, what a masterpiece!

Two things:

- in case of recording during playback, would it be possible to create the item at the start time of the playback, instead of the edit cursor location?

- often, I'm doing overdubs, like doing a 2nd pass for the CCs. Would it be possible to merge the CC item with the pre-existing item? Maybe as a preference. Not sure if everyone would like that behavior. But to me it would absolutely make sense to merge the recording with the underlaying item.
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 02-16-2019, 01:41 PM   #7
Breeder
Human being with feelings
 
Breeder's Avatar
 
Join Date: Nov 2010
Posts: 2,436
Default

Quote:
Originally Posted by _Stevie_ View Post
- often, I'm doing overdubs, like doing a 2nd pass for the CCs. Would it be possible to merge the CC item with the pre-existing item? Maybe as a preference. Not sure if everyone would like that behavior. But to me it would absolutely make sense to merge the recording with the underlaying item.
Just glue them together!
Breeder is offline   Reply With Quote
Old 02-16-2019, 01:57 PM   #8
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Yeah, but cumbersome when retro-Recording in the MIDI editor.
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 02-16-2019, 02:22 PM   #9
foxAsteria
Human being with feelings
 
foxAsteria's Avatar
 
Join Date: Dec 2009
Location: Oblivion
Posts: 10,252
Default

Audio still not a possibility?
__________________
foxyyymusic
foxAsteria is offline   Reply With Quote
Old 02-16-2019, 02:34 PM   #10
Breeder
Human being with feelings
 
Breeder's Avatar
 
Join Date: Nov 2010
Posts: 2,436
Default

Quote:
Originally Posted by _Stevie_ View Post
Yeah, but cumbersome when retro-Recording in the MIDI editor.
So create a macro and put in on the MIDI toolbar. You can run main actions from the MIDI editor using scripts. I have a bunch of EEL scripts made for MIDI editor just for that. Here are a few examples:

Code:
function Main ()
(
	Main_OnCommand(41144, 0); // FX: Set MIDI learn for last touched FX parameter
);

Main();
function NoUndoPoint ()(abs(0)); // Makes sure there is no unnecessary undo point created, see more
defer("NoUndoPoint()");          // here: http://forum.cockos.com/showpost.php?p=1523953&postcount=67
Code:
function Main ()
(
	Main_OnCommand(NamedCommandLookup("_BR_SAVE_CURSOR_POS_SLOT_16"), 0); // SWS/BR: Save edit cursor position, slot 16
);

Main();
function NoUndoPoint ()(abs(0)); // Makes sure there is no unnecessary undo point created, see more
defer("NoUndoPoint()");          // here: http://forum.cockos.com/showpost.php?p=1523953&postcount=67
edit:
I still can't come to my senses from using MPL's awesome script. I literally cannot describe the joy and wonder I feel every time I press the shortcut to load my precious retrospectively recorded MIDI data. MPL, you literally save my newborn babies every time I use it. May you have everything Valhalla offers and then some more, but in this life time! xd

Last edited by Breeder; 02-16-2019 at 03:03 PM.
Breeder is offline   Reply With Quote
Old 02-16-2019, 02:37 PM   #11
Vagelis
Human being with feelings
 
Vagelis's Avatar
 
Join Date: Oct 2017
Location: Larisa, Greece
Posts: 3,795
Default

Awesome!! I wonder why a feature like this isn't yet natively implemented in Reaper.

Last edited by Vagelis; 02-16-2019 at 02:43 PM.
Vagelis is offline   Reply With Quote
Old 02-16-2019, 03:04 PM   #12
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Hey Breeder!

Ah no, I meant something else. Executing the script from the MIDI editor isn't the issue.
The issue is, that a separate item is created and I would like to immediately see the CC and the notes in the editor. But I have to exit and then glue both items to do so.
_Stevie_ is offline   Reply With Quote
Old 02-16-2019, 03:17 PM   #13
Breeder
Human being with feelings
 
Breeder's Avatar
 
Join Date: Nov 2010
Posts: 2,436
Default

Quote:
Originally Posted by _Stevie_ View Post
Hey Breeder!

Ah no, I meant something else. Executing the script from the MIDI editor isn't the issue.
The issue is, that a separate item is created and I would like to immediately see the CC and the notes in the editor. But I have to exit and then glue both items to do so.
Create a macro that select them both (this is where have to get a bit creative on how to determine what to select), glues them and then opens them in the MIDI editor xd

There's also an option to overdub into existing MIDI item so if you already know what you're doing and are engaging record then you can use that
Breeder is offline   Reply With Quote
Old 02-16-2019, 04:14 PM   #14
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

Quote:
Originally Posted by _Stevie_ View Post
- in case of recording during playback, would it be possible to create the item at the start time of the playback, instead of the edit cursor location?

- often, I'm doing overdubs, like doing a 2nd pass for the CCs. Would it be possible to merge the CC item with the pre-existing item? Maybe as a preference. Not sure if everyone would like that behavior. But to me it would absolutely make sense to merge the recording with the underlaying item.
Yes, would really love these two things as well.

Thanks so much for the fantastic work!
Klangfarben is offline   Reply With Quote
Old 02-18-2019, 06:19 AM   #15
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

Quote:
Originally Posted by _Stevie_ View Post
- in case of recording during playback, would it be possible to create the item at the start time of the playback, instead of the edit cursor location?
added for 1.02

Quote:
Originally Posted by foxAsteria View Post
Audio still not a possibility?
Probably required testing AudioWriter APIs by Xenakios (is that SWS thing?) and additional tracker (to not reduce maximum buffer length for current MIDI tracker), but seems possible.
Ask someone clever to code it, pretty easy to do.

Last edited by mpl; 02-18-2019 at 06:30 AM.
mpl is offline   Reply With Quote
Old 02-18-2019, 11:20 AM   #16
foxAsteria
Human being with feelings
 
foxAsteria's Avatar
 
Join Date: Dec 2009
Location: Oblivion
Posts: 10,252
Default

Quote:
Originally Posted by mpl View Post
Ask someone clever to code it, pretty easy to do.
Well hey mpl, you're a pretty clever guy...
__________________
foxyyymusic
foxAsteria is offline   Reply With Quote
Old 02-18-2019, 12:55 PM   #17
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 4,031
Default

Quote:
Originally Posted by EvilDragon View Post
... but man, wouldn't it be so much easier if this was just built into Reaper, no fussing with JSFX or anything?
Of course, but imagine Reaper would be Krüppelmididaw Ableton Live or Steinzeitdaw Cubase, no extension at all, here users have unlimited scripting options, lua, python, autohotkey, actually you can use any programming language which can work on audio or midi, just trigger that tool via python. I gave autohotkey because of this as one example. I mean really, full autohotkey scripts triggered as Reaper actions, full reaper actions. Something like:
PHP Code:
reaper action python triggering autohotkey script result is anything what is possible with autohotkey 
What for example? Also crazier stuff, like pixelsearch, then moving the mouse there, doing something there. Or switching to reaper forum, writing a post, coming back to reaper. Or doing OCR, then typing in required numbers for freeing plugins which try to put limitations like Venom VB-303 in midi mode. Or anything what is normally not possible but somehow possible using some tricks.

https://www.youtube.com/watch?v=ZDipw_F-VD8
TonE is offline   Reply With Quote
Old 02-22-2019, 07:26 AM   #18
HammyHavoc
Human being with feelings
 
HammyHavoc's Avatar
 
Join Date: Jun 2018
Location: Liverpool, United Kingdom
Posts: 58
Default

This works flawlessly. Superb work.
__________________
Hammy Havoc | Split An Atom
HammyHavoc is offline   Reply With Quote
Old 02-22-2019, 09:43 AM   #19
mccrabney
Human being with feelings
 
mccrabney's Avatar
 
Join Date: Aug 2015
Posts: 3,668
Default

mpl, thanks and great work on retrospective record.

apologies for the off topic, but i see possible similarities here and this has been a FR of mine for a long time:

FR - could elements from this script be used in a sister script that [does stuff] to most recently recorded midi?

example:
1- toggle RECORD ON.
2- engage script
3- record midi into an item
4- toggle RECORD OFF.
5- script selects midi data recorded between steps 1 and 4
__________________
mccrabney scripts: MIDI edits from the Arrange screen ala jjos/MPC sequencer
|sis - - - anacru| isn't what we performed: pls no extra noteons in loop recording
| - - - - - anacru|sis <==this is what we actually performed.
mccrabney is online now   Reply With Quote
Old 02-22-2019, 09:55 AM   #20
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,621
Default

Ooohh...that's nice
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...
Meo-Ada Mespotine is offline   Reply With Quote
Old 02-24-2019, 08:02 AM   #21
beingmf
Human being with feelings
 
beingmf's Avatar
 
Join Date: Jul 2007
Location: Jazz City
Posts: 5,065
Default

MPL! You did it again. Awesome script - I just keep the JS in the input fx section of my Instrument Track template. Works a charm, thanks a lot!
__________________
Windows 10x64 | AMD Ryzen 3700X | ATI FirePro 2100 | Marian Seraph AD2, 4.3.8 | Yamaha Steinberg MR816x
"If I can hear well, then everything I do is right" (Allen Sides)
beingmf is online now   Reply With Quote
Old 03-02-2019, 10:08 PM   #22
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

In version 1.02, the retro record while playback doesn't work here.

Steps to reproduce:

- press play
- play notes on MIDI keyboard
- press dump retro record
= no item is created

It works, when the transport is stopped, though.
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 03-03-2019, 11:00 AM   #23
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Okay, it's different, the item is created but it's moved to a complete different position.
My projects start always with a timecode of 10:00:00:00, could this be the culprit? In this particular case, the item was moved to 19:27:33:19, whereas I recorded at around 10:09:53:XX.

EDIT: oh an the new item gets automatically looped, if we enlarge it. On purpose?

EDIT: the memory is not cleared, when pressing play, e.g. when I dump the content to a track, all the noodling that happened before pressing play is also included.
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom

Last edited by _Stevie_; 03-03-2019 at 11:32 AM.
_Stevie_ is offline   Reply With Quote
Old 03-06-2019, 03:15 AM   #24
matthias.matthias
Human being with feelings
 
Join Date: Jun 2010
Posts: 194
Default Project start time offset

Similar problems here when using a project start time offset.

A 10 minute offset causes the notes to be inserted 20 minutes later than expected.

A typical 10 hour offset...

Great script already, would even better with that bug fixed.


Quote:
Originally Posted by _Stevie_ View Post
In version 1.02, the retro record while playback doesn't work here.

Steps to reproduce:

- press play
- play notes on MIDI keyboard
- press dump retro record
= no item is created

It works, when the transport is stopped, though.
matthias.matthias is offline   Reply With Quote
Old 03-06-2019, 06:31 AM   #25
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Thanks for confirming Matthias!
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 03-06-2019, 07:03 AM   #26
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

Quote:
Originally Posted by _Stevie_ View Post
the memory is not cleared, when pressing play, e.g. when I dump the content to a track, all the noodling that happened before pressing play is also included.
Memory cleared only after dumping log to the track.
I can add a cleaning buffer action, so you can make a cycle ction:
1) clear buffer
If stopped
2a) transport play
Else
2b) transport stop/pause

For 1.03 fixed issue with project offset and looping for new item.

Last edited by mpl; 03-20-2019 at 10:11 PM.
mpl is offline   Reply With Quote
Old 03-06-2019, 12:14 PM   #27
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Thanks mpl! Clear buffer action would be great!
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 03-06-2019, 12:40 PM   #28
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

The clear buffer on transport start would be really great. There is never a situation where I want to include both data from when transport is stopped AND when transport is playing. It will always be one or the other. I'm pretty sure that would be the consensus for anyone using it. The resulting combined midi item would just never make any sense.

If this can't be implemented for some reason, could you perhaps split it into two scripts? One for retro recording when transport stopped, and one for retro recording when transport is playing? Then at least there could be two separate shortcuts to trigger and stopped retro record data would never be combined with transport playing retro record data.

And thank you very much. I donated!
Klangfarben is offline   Reply With Quote
Old 03-06-2019, 01:22 PM   #29
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Quote:
Originally Posted by Klangfarben View Post
The clear buffer on transport start would be really great. There is never a situation where I want to include both data from when transport is stopped AND when transport is playing. It will always be one or the other. I'm pretty sure that would be the consensus for anyone using it. The resulting combined midi item would just never make any sense.
Word!
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 03-06-2019, 01:31 PM   #30
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

As I said before, the buffer are simply MIDI Messages + system timestamps pairs without any additional info (otherwise it would require smaller buffer size). I added mpl_Clear RetrospectiveRecord tracker log.lua to my repo. It reset buffer, but to make it properly working you have to import something like this into Cycle Action Editor:

Last edited by mpl; 12-06-2022 at 11:30 PM.
mpl is offline   Reply With Quote
Old 03-06-2019, 03:36 PM   #31
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Thanks mpl, donation sent as well.

Unfortunately, the offset still doesn't work.
Here's a gif:

https://i.imgur.com/gib9e8T.gif
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom

Last edited by _Stevie_; 03-09-2019 at 01:03 PM.
_Stevie_ is offline   Reply With Quote
Old 03-06-2019, 03:37 PM   #32
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

Quote:
Originally Posted by mpl View Post
As I said before, the buffer are simply MIDI Messages + system timestamps pairs without any additional info (otherwise it would require smaller buffer size).
Honestly, I really think you should just incorporate it directly into the retrorecord script. Normal usage would always be to capture while stopped or capture while playing. I don't think anyone would ever want to play notes while stopped, then start transport play, then play a part in and retrorecord everything into one item. Just in terms of working to a tempo map, the data captured while stopped would have no relation to the tempo map at all.

Anyone else care to chime in on this?

Also, and I think Stevie might have asked for this. Would there be any way to have an option that if a retrorecorded midi item overlaps an existing midi item that it automatically merges/glues the two midi items? With the ability to switch between it 1) not merging/gluing when the retrorecord midi item overlaps an existing midi item and 2) it merging/gluing?

Thanks so much for your consideration and your work. I would definitely donate again for those things.
Klangfarben is offline   Reply With Quote
Old 03-06-2019, 03:42 PM   #33
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Yes, I concur what Klangfarben wrote.

I can't think of any case where it would make sense to keep "both" buffers (stop and playback), because they will have different tempos.
Recording while transport is stopped will always be "free tempo", whereas during playback, it will always be the tempo that the click provides.

And yes, merging would be amazing. mpl, I could make a short GIF to explain, if you want.

If this is feasable, I'd also gladly donate again.
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 03-06-2019, 03:52 PM   #34
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Here's the thing:

- I press play in the MIDI editor
- during playback I use the mod wheel
- I press my shortcut for retrospective record and a new item is created
- now, I have to leave the MIDI editor, glue both items and enter the MIDI editor again to see both, notes and mod wheel

Would the following be possible?
- if there's an existing item under the play/edit cursor, dump everything
in this item.

https://i.imgur.com/6YWqIdN.gif
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom

Last edited by _Stevie_; 03-09-2019 at 01:03 PM.
_Stevie_ is offline   Reply With Quote
Old 03-06-2019, 07:58 PM   #35
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

Quote:
Originally Posted by _Stevie_ View Post
Unfortunately, the offset still doesn't work.
Attach simple project to reproduce the issue.
And please use links to GIFs or smaller GIFs. I hate Reaper5 forum theme and my Reaper3 forum view is awfully wide with such GIFs.

Last edited by mpl; 03-06-2019 at 08:05 PM.
mpl is offline   Reply With Quote
Old 03-06-2019, 08:03 PM   #36
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

Quote:
Originally Posted by Klangfarben View Post
Just in terms of working to a tempo map, the data captured while stopped would have no relation to the tempo map at all.
That is why I built this script. Many users asked to have a possibility to hold their improvisations without any relation to playing state. If you strongly want it to work only while playing, you can use Eugene's version (see link in first post).
mpl is offline   Reply With Quote
Old 03-06-2019, 08:04 PM   #37
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,054
Default

Quote:
Originally Posted by mpl View Post
Attach simple project to reproduce the issue.
There you go:
https://www.dropbox.com/s/ta94nlnpnz...dTest.rar?dl=0
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 03-07-2019, 10:51 AM   #38
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

Quote:
Originally Posted by mpl View Post
That is why I built this script. Many users asked to have a possibility to hold their improvisations without any relation to playing state. If you strongly want it to work only while playing, you can use Eugene's version (see link in first post).
Sorry, I must not be doing a very good job of explaining myself. I should probably just let Stevie handle it lol.

I don't want it to work only while playing. I would like it to do both - retrorec while stopped and retrorec while playing. But just never have stopped data combined with data while playing. Hence, the request for the automatic clearing of the buffer.

If it's too much trouble, I'll make a cycle action. I appreciate your consideration.
Klangfarben is offline   Reply With Quote
Old 03-07-2019, 09:44 PM   #39
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

Quote:
Originally Posted by Klangfarben View Post
If it's too much trouble, I'll make a cycle action. I appreciate your consideration.
You don't need to make it, I posted above ready-to-go CA, you just have to import it. In my case (way I built JSFX) it is better to use additional action for cleaning buffer rather than adding an option to JSFX.
mpl is offline   Reply With Quote
Old 03-08-2019, 09:04 AM   #40
Klangfarben
Human being with feelings
 
Join Date: Jul 2016
Location: Los Angeles, CA
Posts: 1,701
Default

Got it. Thank you for the explanation!
Klangfarben is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 05:08 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.