Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER General Discussion Forum

Reply
 
Thread Tools Display Modes
Old 02-23-2019, 11:48 AM   #361
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 523
Default

Quote:
Originally Posted by daeavelwyn View Post
So ctrl+mousewheel doesn't seem to affect space between object, only object are scaled.
True, I'm not scaling padding and spacing by the global zoom level.


Quote:
Originally Posted by daeavelwyn View Post
Actually, I got a good result tweaking values you mentioned, but can't reduce the gaps shown here
Those values are the tpadding and bpadding I mentioned earlier for the bank header. Paste me your version of this line?
tack is offline   Reply With Quote
Old 02-23-2019, 11:52 AM   #362
daeavelwyn
Human being with feelings
 
daeavelwyn's Avatar
 
Join Date: Dec 2014
Posts: 180
Default

Yep, here is the code :
bank.vbox:add(bank.heading, {lpadding=5, tpadding=#reabank.banks > 0 and 40 or 20, bpadding=5}
daeavelwyn is offline   Reply With Quote
Old 02-23-2019, 12:00 PM   #363
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 523
Default

Quote:
Originally Posted by daeavelwyn View Post
Yep, here is the code :
bank.vbox:add(bank.heading, {lpadding=5, tpadding=#reabank.banks > 0 and 40 or 20, bpadding=5}
Try:

Code:
bank.vbox:add(bank.heading, {lpadding=5, tpadding=#reabank.banks > 0 and 0 or 0, bpadding=0}
tack is offline   Reply With Quote
Old 02-24-2019, 07:06 AM   #364
daeavelwyn
Human being with feelings
 
daeavelwyn's Avatar
 
Join Date: Dec 2014
Posts: 180
Default

Wonderfull !! :-D

I've just also have a look at flexrouter, damned Jason, you are a code producer machine gun !!! X-D

You should think about putting a link to a patreon or a buy me a coffee on your websites, as I'm sure lots of people would pay you a coffee (or a beer )
daeavelwyn is offline   Reply With Quote
Old 02-24-2019, 07:50 AM   #365
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Posts: 1,771
Default

@Tack, I really hope that you are not demotivated. A lot of people are using Reaticulate, even if they are not posting in this thread. And it really rocks! Your GUI screenshot looks very promising.

Expression Maps has some nice approaches but I was never a huge fan of it, way too complicated to handle and it was not touched again since version 6, I think.
__________________
My Reascripts forum thread | My Reascripts on GitHub | Stephan Römer - film composer
If you wish to donate for my scripts: please consider an organization like: animal shelter, doctors without borders, UNICEF, etc...
_Stevie_ is online now   Reply With Quote
Old 02-24-2019, 08:29 AM   #366
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 523
Default

Quote:
Originally Posted by daeavelwyn View Post
I've just also have a look at flexrouter, damned Jason, you are a code producer machine gun !!! X-D
Perhaps a bit more like a trebuchet: it may take me a while, but eventually I deliver a payload.


Quote:
Originally Posted by daeavelwyn View Post
You should think about putting a link to a patreon or a buy me a coffee on your websites, as I'm sure lots of people would pay you a coffee (or a beer )
For people who are so inclined to part with money to reward me for my work, I always ask instead that they donate to a secular charity instead (I like Doctors Without Borders and the EFF) and then let me know about it.

Part of the reason is that my day job pays pretty well, and said day job has a pretty strict intellectual property policy. I have to go through approvals to ensure my public OSS projects are counted as what's legally called an excluded development. That's generally not been an issue since the projects I like to work on in my free time don't overlap with my employer's line of business, but having said that my employer's line of business is pretty broad. I like to be able to say I'm not profiting at all commercially from my personal projects.

But at the end of the day, I'm not wanting for money, and I do these things for fun (and to further benefit the other things I do for fun, like music) so don't feel any desire to profit from them.

Although if I were retired, I can totally imagine myself slutting around my paypal address.

Quote:
Originally Posted by _Stevie_ View Post
@Tack, I really hope that you are not demotivated. A lot of people are using Reaticulate, even if they are not posting in this thread. And it really rocks! Your GUI screenshot looks very promising.
Thanks Stevie. It's not that I'm demotivated, happily, it's more that it comes down to where I want to invest my limited free time. What project gets my attention this week. A bit of community activity on something like Reaticulate that makes me switch over to look at something rekindles my interest, and motivates me to invest that time. So it's less about being demotivated and more about reinvigorating my interest.

It doesn't help that I suffer from an incurable and dangerous form of Squirrel Syndrome.

Last edited by tack; 02-24-2019 at 08:36 AM.
tack is offline   Reply With Quote
Old 02-25-2019, 12:33 AM   #367
Swi
Human being with feelings
 
Join Date: Apr 2018
Posts: 214
Default

I'm with Stevie on this. I never really liked expression maps. It is super simplified but equally binding. I love reaticulate and find it to be fast and beautiful.
I am converting my friends to Reaper with this tool. Please forge ahead. We stand on your shoulders.
Swi is online now   Reply With Quote
Old 02-25-2019, 12:29 PM   #368
Vagalume
Human being with feelings
 
Join Date: Nov 2015
Posts: 391
Default

@Tack, I really hope that you are not demotivated. A lot of people are using Reaticulate, even if they are not posting in this thread.


++++1
Vagalume is offline   Reply With Quote
Old 03-01-2019, 04:38 PM   #369
TimDudd
Human being with feelings
 
Join Date: Jun 2008
Location: UK
Posts: 4
Default Too Quick for Miroslav / SampleTank?

Hi Tack - first off, thank you for such an awesome tool, it's a joy to use.

I've noticed an issue with Miroslav Philharmonic (CE in my case, but I suspect it would be the same with the full version.) which from the brief tests I've carried out suggests that Reaticulate might be sending keyswitch notes to MP too quickly for it to process!

Let me expand ... (apologies in advance for the length of this! ...)

I created a simple Bank for a single MP keyswitch patch ("14 Violins Multi") covering all of the articulations available. When triggering articulations using a connected MIDI keyboard both Reaticulate and MP were correctly detecting the keys and showing the change of articulation appropriately - so all was good there and it confirmed that my Bank definition was correct.

However, selecting an articulation in the Reaticulate GUI did not change the articulation in MP.

I created a simple midi media item which did the following:
1) issue Bank/Program Change for Reaticulate to catch and convert to 'Sustain A' articulation keyswitch;
2) play a note (in my case, note 62 - within the range of the patch);
3) issue keyswitch to select 'Sustain A' articulation (note 24);
4) play note 62 again;
5) issue Bank/Program Change for Reaticulate to catch and convert to 'Tremolo' articulation keyswitch;
6) play note 62 again;
7) issue keyswitch to select 'Tremolo' articulation (note 40);
8) play note 62 again.

In the above, I was expecting MP to play the notes at steps (2) and (4) as 'Sustain A', and the notes at steps (6) and (8) as 'Tremolo'. It didn't. It played the note at step (2) in whatever articulation was last used, the notes at step (4) and step (6) as 'Sustain A', and the note at step (8) as 'Tremolo'. In other words, it was ignoring the Reaticulate steps.

I then recorded the output of this track to a new track and looked at the MIDI item recorded. When looking in the Event view of the MIDI Editor I found that the Note On events issued by Reaticulate at steps 1 and 5 above was identical to the corresponding keyswitches issued at steps 3 and 7 respectively - the difference being that the Event viewer was showing that the lengths of the notes corresponding to steps 1 and 5 were both 0.0.00, and the lengths of those for steps 3 and 7 was 0.0.25. (see attachment).

This would appear to be an issue with the IK Multimedia VSTs which are not catching the keyswitches because they are too fast(!). To overcome this is there any way to extend the time between Reaticulate issuing Note On and Note Off MIDI events for 'note' output events?

(Incidentally, I get the same results regardless of whether using the MP library through the IK Multimedia 'Miroslav Philharmonik' interface or from within SampleTank 3.)
Attached Images
File Type: jpg MIDI Item Event View.JPG (29.6 KB, 10 views)
TimDudd is offline   Reply With Quote
Old 03-01-2019, 05:17 PM   #370
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 523
Default

Quote:
Originally Posted by TimDudd View Post
This would appear to be an issue with the IK Multimedia VSTs which are not catching the keyswitches because they are too fast(!). To overcome this is there any way to extend the time between Reaticulate issuing Note On and Note Off MIDI events for 'note' output events?
Hm, that's unfortunate. And problematic.

Currently note-offs are sent about (at most) 50 ticks after note-ons, which is fast to be sure (0.001s at 48kHz) but I haven't run into any VSTis that had problems with that. IK Mulitmedia's is the first.

I say this is problematic because the Reaticulate's design currently doesn't support buffering note-offs. I may support it in the future, particularly to support negative delay compensation for articulations, which is on my TODO list, but right now output events are emitted in a single block. I can't span the note-on and subsequent note-off across blocks without said buffering.

So I may not have a fix for this without a pretty invasive design change that's not likely to happen in the short term.

One experiment worth trying, just to further prove the finding, is to tweak this line in the Reaticulate.jsfx file by increasing the value from 50 to 500 and see if that has any effect? I'm curious to see if higher values work. And if that doesn't work, change "mpos + 1" on the line above to 0, to force the maximum possible distance between note-on and note-off (at least within that same block).

If this assumption is true -- that keyswitch notes need to be held for a good amount of time before they register -- this obviously means the keyswitch event can't occur at the same MIDI position as the note it intends to effect. This is a workflow issue IMO and I'd be inclined to report that to IK Multimedia.

BTW, what audio buffer size are you running at?
tack is offline   Reply With Quote
Old 03-07-2019, 11:43 AM   #371
woodslanding
Human being with feelings
 
woodslanding's Avatar
 
Join Date: Mar 2007
Location: Denver, CO
Posts: 300
Default

I started this discussion over at VI, but I am moving it here, as it seems a little more reaper-specific than VI specific.

I wanted to use reaticulate as a way to select presets for live use from a touchscreen or midi controller.


Tack very quickly responded that indeed you can, and you just need to set up your reabank files like so:

Code:
//! colors=strings=#883333,keys=#2f809b

[...]

//! c=keys   i=note-whole  o=program:0
0 Piano
//! c=strings   i=tremolo  o=program:1
1 Strings Ensemble
[...]
So if anyone else thinks they might use reaticulate this way, I have my first small hack.

This is an alternate articulations.png file that just contains the numbers 1 through 148, as the original icon set is not really helpful for this purpose.

Next, I'm going to try to modify (mpl's?) lua script for creating a reabank file to add the necessary lines of reaticulate code. It doesn't work for a lot of vsts, but it will be a start.

[EDIT: actually, the mpl script does not seem to work for any vst I regularly use, so nevermind. It gets the first couple, and then the vst falls behind. Even reaktor which changes patches very quickly.
More on this at this thread:
https://forum.cockos.com/showthread....06#post2104506

If anyone knows how to use win32 code to get text from the preset dropdown menu, please let me know...]

cheers!
-e
Attached Files
File Type: zip articulations.zip (6.9 KB, 9 views)
__________________
e moon
http://ericmoonmusic.com
>>{ Very Stable Genius }<<

Last edited by woodslanding; 03-07-2019 at 12:13 PM.
woodslanding is offline   Reply With Quote
Old 03-07-2019, 11:57 AM   #372
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 523
Default

Quote:
Originally Posted by woodslanding View Post
This is an alternate articulations.png file that just contains the numbers 1 through 148, as the original icon set is not really helpful for this purpose.
I'm curious to know if others find this useful. It'd be easy enough to have special note icon names that:
  1. Showed the slot position of the articulation (offset from 1)
  2. Adapted to the output event (probably based on the last output event if there are multiple) to show either the note name (e.g. C#4) or program or CC number (e.g. 5) which would be useful in your case)

This could possibly be overridden at the track configuration level as well, so you can assign a bank to the track but override the icons to always show e.g. note names.

Interested to know if others would benefit.
tack is offline   Reply With Quote
Old 03-08-2019, 12:41 AM   #373
woodslanding
Human being with feelings
 
woodslanding's Avatar
 
Join Date: Mar 2007
Location: Denver, CO
Posts: 300
Default

There are plenty of folks who have complained about Reaper's preset management.

Here are a few links
https://forum.cockos.com/showthread.php?t=207947
https://forum.cockos.com/showthread.php?t=180660
https://forum.cockos.com/showthread.php?t=125832
https://forum.cockos.com/showthread....09#post2104809

But I'm not sure articulations are on their radar at all. I certainly didn't consider it something that would help me with that....
__________________
e moon
http://ericmoonmusic.com
>>{ Very Stable Genius }<<
woodslanding is offline   Reply With Quote
Old 03-09-2019, 03:45 PM   #374
Hamrock
Human being with feelings
 
Join Date: Aug 2017
Posts: 3
Default

Quote:
Originally Posted by tack View Post
Perhaps a bit more like a trebuchet: it may take me a while, but eventually I deliver a payload.

Thanks Stevie. It's not that I'm demotivated, happily, it's more that it comes down to where I want to invest my limited free time. What project gets my attention this week. A bit of community activity on something like Reaticulate that makes me switch over to look at something rekindles my interest, and motivates me to invest that time. So it's less about being demotivated and more about reinvigorating my interest.

It doesn't help that I suffer from an incurable and dangerous form of Squirrel Syndrome.
Another vote of confidence to you, Jason. Keep up the good work, you are solving a problem a lot of us have suffered with for a long time!
Hamrock is offline   Reply With Quote
Old 03-14-2019, 06:12 PM   #375
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 523
Default

I've pushed a new prerelease version 0.2.91, which you can download with this Reapack:

Code:
http://reaticulate.com/prerelease.xml
More detailed download instructions here.

This should be the last prerelease before 0.3.0 which I hope to have out in a few days (barring a protracted convalescence required from St Paddy's). I'd appreciate extra eyeballs willing to test it out.

No bank editor GUI yet, sorry, but it does have several new requested features.

New Features
  • When the js_ReaScriptAPI extension is installed (recommended):
    • You can now pin the Reaticulate window when floating
    • Much improved focusing behavior
  • New action "Focus articulation filter" (which works best when the js_ReaScriptAP extension is installed)
  • New action "Activate articulation slot number by CC on default channel" which can be used to activate articulations based on their position in the bank list (#58)
  • New action to insert the last activated articulation into MIDI item at edit cursor (same behavior as right clicking the articulation)
  • Various new actions to select but not activate articulations, plus an action to activate currently selected articulation (#59)
    • Running the action to activate currently selected articulation twice in rapid succession will cause it to insert into MIDI item
  • On pages that scroll, scrollbars will appear when the mouse hovers toward the right edge

Bug Fixes


Here are the changes from previous prereleases (specifically 0.2.90) since the last major release (which is 0.2.0 released on 2018-07-02):

New Features
  • Activating an articulation now scrolls it into view in the GUI (#50)
  • Articulations are now fed back to control surface (#48)
    • CC0/32 bank select indicates bank for articulation
    • Articulations can be expressed either as native program change events or custom CC events
  • Improve First Run experience (especially for portable Reaper installations) (#46)
  • Minor cosmetic improvements with drag-and-drop to reorder banks on the track configuration page

Bug Fixes
  • Ensure articulations on same MIDI tick as notes are processed before the notes (#53)

Last edited by tack; 03-14-2019 at 06:24 PM.
tack is offline   Reply With Quote
Old 03-15-2019, 04:59 AM   #376
daeavelwyn
Human being with feelings
 
daeavelwyn's Avatar
 
Join Date: Dec 2014
Posts: 180
Default

I just installed the pre-release via reapack, works great
daeavelwyn is offline   Reply With Quote
Old 03-15-2019, 08:34 AM   #377
daeavelwyn
Human being with feelings
 
daeavelwyn's Avatar
 
Join Date: Dec 2014
Posts: 180
Default

Question : Is there a way to assign a channel for every CC message / keyswitch ?

I'd like reaticulate to listen only on chan16, is it possible to assign this as a global parameter and how ?

thks
daeavelwyn is offline   Reply With Quote
Old 03-15-2019, 09:01 AM   #378
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 523
Default

Quote:
Originally Posted by daeavelwyn View Post
Question : Is there a way to assign a channel for every CC message / keyswitch ?

I'd like reaticulate to listen only on chan16, is it possible to assign this as a global parameter and how ?
You mean on the output events that Reaticulate sends when an articulation is activated?

This can be done either at the track level, by assigning the destination channel of the bank to channel 16, or at the bank level, by hardcoding the output events' destination channel to specifically to channel 16, e.g.

Code:
o=note@16:23
In terms of only responding to program changes on channel 16 (if that's maybe what you meant) you can do this in the track configuration to specify the source channel to be channel 16 instead of omni.
tack is offline   Reply With Quote
Old 03-18-2019, 06:58 AM   #379
daeavelwyn
Human being with feelings
 
daeavelwyn's Avatar
 
Join Date: Dec 2014
Posts: 180
Default

Ok, I wanted to assign a global chan (16) to an entire instrument.

Here is my reabank file for OT Berlin Strings extra stuff :

Code:
//! g="Orchestral Tools/Berlin Strings" n="Extra-Art"
//! m="CC messages like con sordino, legato..."
Bank 1 126 OT-BS - Extra Art
//! c=art1 i=legato g=1 o=cc:30,127
1 Legato On
//! c=art1 i=legato g=1 o=cc:30,0
2 Legato Off
//! c=art2 i=con-sord g=2 o=cc:16,127
3 Con Sordino On
//! c=art2 i=con-sord g=2 o=cc:16,0
4 Con Sordino Off
//! c=art3 i=crescendo g=3 o=cc:52,127
5 Niente On
//! c=art3 i=crescendo g=3 o=cc:52,0
6 Niente Off
//! c=art4 i=fx g=4 o=cc:53,127
7 Soft Layer On
//! c=art4 i=fx g=4 o=cc:53,0
8 Soft Layer Off

//! g="Orchestral Tools/Berlin Strings" n="Extra-Art 2"
//! m="CC messages like con sordino, legato..."
Bank 1 125 OT-BS - Extra Art 2
//! c=art5 i=fx o=cc:54,127
9 Cutoff Filter On
//! c=art5 i=fx o=cc:54,0
10 Cutoff Filter Off
I'd like all this articulation works in Chan16. So I wonder if there is an easy way to assign chan16 to Extra Art definition directly (bank level ?) instead of per program change. But in the documentation it seems clear that o=@16 only works for program lines, not instrument line, am I right ?
daeavelwyn is offline   Reply With Quote
Old 03-18-2019, 09:04 AM   #380
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 523
Default

Quote:
Originally Posted by daeavelwyn View Post
I'd like all this articulation works in Chan16. So I wonder if there is an easy way to assign chan16 to Extra Art definition directly (bank level ?) instead of per program change. But in the documentation it seems clear that o=@16 only works for program lines, not instrument line, am I right ?
Right, you can't specify a default channel for all output events at the Bank definition. You would have to specfiy @16 in each individual output event in the articulations.

Alternatively, you can leave out the explicit channel on the output events and when you assign the bank to a track, you configure the destination channel of the bank to channel 16.

tack is offline   Reply With Quote
Old 03-18-2019, 11:37 AM   #381
daeavelwyn
Human being with feelings
 
daeavelwyn's Avatar
 
Join Date: Dec 2014
Posts: 180
Default

hmmmm...ok, I think the main problem is the logic I'm using to create instruments and articulations....So, is there a way to create separators in a list of articulation ?

For example :

Code:
1- sustain
2- sustain soft
3- pizz
4- stacc
5- port long
----separator----
6- legaton On
7- Legato Off
8- Con sordino On
9- con sordino off
---separator---
10- extra stuff 1
11-extra stuff 2
daeavelwyn is offline   Reply With Quote
Old 03-18-2019, 11:45 AM   #382
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 523
Default

Quote:
Originally Posted by daeavelwyn View Post
hmmmm...ok, I think the main problem is the logic I'm using to create instruments and articulations....So, is there a way to create separators in a list of articulation ?
That's not currently possible, no. Although that wouldn't have any bearing on the destination channel for output events.
tack is offline   Reply With Quote
Old Yesterday, 04:52 AM   #383
daeavelwyn
Human being with feelings
 
daeavelwyn's Avatar
 
Join Date: Dec 2014
Posts: 180
Default

Quote:
Although that wouldn't have any bearing on the destination channel for output events.
Yes, I know, it's more about the way I organize my articulation list

But nevermind, will think in a better way to use reaticulate

thks !
daeavelwyn 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 04:24 PM.


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