|
|
|
03-18-2007, 07:24 AM
|
#1
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
JS effect bundle
Update: Here is a midi quantizer plugin and here is a plugin that puts note names in the Reaper midi editor and here is a plugin for writing text notes into a project. Those plugins are VSTs, not JS plugins.
----
Here are some JS effects.
- midi_humanizer
- midi_program_trigger
- midi_examine
- soft_clipper
- clip_alarm
- gaussian_noise_generator
- midi_humanizer adds a user-defined amount of normally distributed error to the velocity and timing of a piano-rolled midi performance. (This effect is in the installer, but the version here includes a midi channel selection slider.)
- midi_program_trigger sends program change messages when you hit keys on the number pad.
- midi_examine dissects and reports the various pieces of any midi message received. Can be used like midi-ox to figure out what a control surface is doing. Also useful as a midi JS plug tutorial.
- soft_clipper is modeled after the soft-clipping stage in this popular unit, which as it turns out is really just a low threshold brick wall limiter that is all knee. This is a very simple but effective way to boost the final output signal of a mix without adding too much color.
- clip_alarm prevents unnoticed clips on a track being recorded by playing a customizable alarm sample when a monitored track clips at the input. The alarm is played only at the master, even if the clipping input audio is not being monitored on hardware at all, and the clipping input is not affected.
- gaussian_noise_generator makes gaussian noise using an algorithm of the user's choice. The algorithms are listed roughly in order of quality and CPU cost. This effect may be useful as a building block.
Last edited by schwa; 08-09-2007 at 08:11 PM.
Reason: added link to notepad VST
|
|
|
03-18-2007, 01:29 PM
|
#2
|
Human being with feelings
Join Date: Jul 2006
Posts: 20,859
|
schwa, is midi_keymap_file_reader just a work around for presets in midi_note_mapper? i played around with it but i must be doing something wrong. i created custom_keymap.txt in data/keymaps and changed the note numbers, line by line. midi_keymap_file_reader remaps on it's own until i press record. is midi_keymap_file_reader used in conjunction with midi_note_mapper? i'm lost. should i place one before the other and do i change any settings in midi_note_mapper?
|
|
|
03-18-2007, 06:33 PM
|
#3
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
Oh fer fark's sake. Apparently JS clears the effect buffer when you start recording, which means the effect can't preserve any state behind the interface. And I don't see any way for the effect itself to know whether or not you are recording so it can try to recover its state.
This is lovely stuff this effect scripting language but it seems designed to foil anyone trying to implement any sort of user defined mapping.
I'll try to think of some workaround.
|
|
|
03-18-2007, 07:11 PM
|
#4
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
I think I have a workaround for the keymap file reader (updated above).
This effect doesn't need to be used with the note mapper. All it does is read the keymap file you create (details in the readme) and remap notes accordingly. Hopefully, now it remaps even after you start recording...
|
|
|
03-18-2007, 07:14 PM
|
#5
|
Human being with feelings
Join Date: Jul 2006
Posts: 20,859
|
i wish i knew what all the gibble gobble in the effects means (i'd like to lend a hand in helping). i don't so you the man schwa.
|
|
|
03-18-2007, 07:14 PM
|
#6
|
Human being with feelings
Join Date: Jul 2006
Posts: 20,859
|
Quote:
Originally Posted by schwa
I think I have a workaround for the keymap file reader (updated above).
This effect doesn't need to be used with the note mapper. All it does is read the keymap file you create (details in the readme) and remap notes accordingly. Hopefully, now it remaps even after you start recording...
|
checking it out now. brb!
|
|
|
03-18-2007, 07:22 PM
|
#7
|
Human being with feelings
Join Date: Jul 2006
Posts: 20,859
|
it works! thanks much schwa. you the man! and all that other good stuff.
thanks.
some mention of the keymap file reader might pull in some users of bfd, ezdrummer, natural studio kit, etc. i'm not sure if any of the drum software plugins have remapping abilities yet.
Last edited by brainwreck; 03-18-2007 at 07:43 PM.
|
|
|
03-18-2007, 09:36 PM
|
#8
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
I think maybe midi note remapping is less exciting than you think. I know BFD can remap keys. All drum trigger hardware can remap keys. Midipipe, on Macs, can remap any midi passing through the computer. And this remapper here is hardly an out-of-the-box solution because it requires the user to hand-create a keymap file.
But it's nice of you to say.
|
|
|
03-19-2007, 12:57 PM
|
#9
|
Human being with feelings
Join Date: Jan 2007
Posts: 578
|
I'm sure that things such as these will end up on one of those updates like it was nothing else!
|
|
|
03-19-2007, 01:28 PM
|
#10
|
Human being with feelings
Join Date: Sep 2006
Location: Indiana
Posts: 1,716
|
i'm still trying to wrap my pea brain around this, so please forgive a couple dumb questions...
- Humanizer actually modifies an existing midi part (like a quantize feature)? Or does it leave the part intact and randomly adjusts it on playback/render? In other words, will i get different results every time?
Either way... very cool!
- Keymap is for labeling the piano roll to match whatever VSTi or soundfont you're using? Or am i way off?
teej
__________________
It may be the devil, or it may be the Lord, but you're gonna hafta serve somebody.
__________________
|
|
|
03-19-2007, 01:47 PM
|
#11
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
Humanizer un-quantizes (and un-machineguns) in realtime, and you will get a different result every time. Of course you can render the humanized output to freeze it.
Personally I am a heavy user of humanizing. I piano-roll drum parts to get them just so, then I slop them up a bit. I think you can make a really convincing performance this way.
Keymap doesn't add text labels to anything, that's not something you can do from within JS. It just allows to you save a particular mapping where say you want to press C4 and have some effect receive F#5 instead, or transpose everything in octave 0 up to octave 4 without changing anything else, or whatever random remapping you want to do.
|
|
|
03-19-2007, 01:52 PM
|
#12
|
Human being with feelings
Join Date: Sep 2006
Location: Indiana
Posts: 1,716
|
gotcha.. thanks for explaining. and thanks for making them available! seems like they'll be real handy.
teej
__________________
It may be the devil, or it may be the Lord, but you're gonna hafta serve somebody.
__________________
|
|
|
03-19-2007, 01:54 PM
|
#13
|
Human being with feelings
Join Date: Jul 2006
Posts: 20,859
|
midi_keymap_file_reader allows you to remap keys to desired note numbers. for example, your drum vsti uses C5 for triggering the kick sample. you can remap the kick to the key of your choice.
i don't have a need for the humanizer plugin so i haven't used it yet. as long as it's inserted on a track i would think that it would function on both the input and the recorded midi clip. if you want consistency you should be able to use it during recording and turn if off at playback.
btw schwa, i experienced a problem with midi_keymap_file_reader last night. i remapped my keys and recorded a midi clip fine. some where in the middle of playback (about a minute into it) the remapping started to scramble up. the ride became the snare and a couple of other hits went weird. it's not consistent though. i'll try to narrow down the problem and report back.
Last edited by brainwreck; 03-19-2007 at 01:58 PM.
|
|
|
03-20-2007, 06:14 AM
|
#14
|
Human being with feelings
Join Date: Aug 2006
Posts: 399
|
How do I name notes to kik snare etc. in the named notes editor?
|
|
|
03-20-2007, 06:40 AM
|
#15
|
Human being with feelings
Join Date: Aug 2006
Posts: 399
|
I put these into the plugins folder but can't find them.
What are they called?
|
|
|
03-20-2007, 08:59 AM
|
#16
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
These are Jesusonic effects, not VSTs. They can go in REAPER/Effects/MIDI.
There is currently no named notes editor in Reaper. Accomplishing this either requires somebody writing (or finding) a VSTi, or Justin adding the feature to Reaper. One of those things will happen eventually.
|
|
|
03-21-2007, 01:45 PM
|
#17
|
Human being with feelings
Join Date: Jul 2006
Posts: 20,859
|
Quote:
Originally Posted by brainwreck
btw schwa, i experienced a problem with midi_keymap_file_reader last night. i remapped my keys and recorded a midi clip fine. some where in the middle of playback (about a minute into it) the remapping started to scramble up. the ride became the snare and a couple of other hits went weird. it's not consistent though. i'll try to narrow down the problem and report back.
|
seems i was leaving the keymap reader on after recording sometimes. that was the problem. the plugin works fine.
Quote:
Originally Posted by smasha
I put these into the plugins folder but can't find them.
What are they called?
|
check in preferences to find out where reaper is looking for the jesusonic plugins. where ever that is, that's where you should put these plugins.
|
|
|
03-27-2007, 12:10 PM
|
#18
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
added a soft clipper
I added a soft clipper effect, which is a nice way to get a little extra final output boost for a mix without adding too much color. Try it out, I'd really appreciate any feedback.
|
|
|
03-28-2007, 05:09 AM
|
#19
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
BTW 1.831 added the action "Apply FX to items as new take (MIDI output)". This means you can apply a midi effect like humanization, remapping, etc one time and freeze the result, just as if the effect were a Reaper built-in action.
|
|
|
03-30-2007, 09:27 PM
|
#20
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
Added midi_examine effect to the package.
Added midi_examine effect to the package.
|
|
|
03-31-2007, 06:07 AM
|
#21
|
Human being with feelings
Join Date: Feb 2007
Posts: 632
|
I wish I could understand how you're doing your timing changes for humanise both before and after adjustments.
I looked at your code but started to get a headache.
Regards
Caleb
__________________
Happiness is the hidden behind the obvious.
|
|
|
03-31-2007, 02:12 PM
|
#22
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
I appreciate someone taking the time to read the code that closely! This gets a bit technical/boring for a forum conversation, but the character of min_pos and max_pos (which define the range over which the timing is allowed to vary) depend on whether the user has chosen to delay the output or not. The possible timing range is either a small fixed sample block that the input note falls somewhere inside, or it's some programmer-defined maximum number of samples that the input note defines the center of. Things can be factored in various ways but I try to keep all the programmer defined constants exposed for what they are. The only other thing I'd note is that z1, z2 are gaussians. Yadda yadda yadda.
... actually I think you are maybe looking at an older version of the plugin? I updated this a week or so ago, Ix may not have updated the one that's bundled with his stuff.
|
|
|
04-06-2007, 10:03 PM
|
#23
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
Added gaussian noise generator effect
Added gaussian noise generator effect.
|
|
|
06-17-2007, 06:52 PM
|
#24
|
Human being with feelings
Join Date: May 2007
Posts: 130
|
is the most recent version of these found by clicking the link in the first message (which seems to be a particular attachment, not a link to a perm location)? Or should I be looking somewhere else?
|
|
|
06-17-2007, 07:24 PM
|
#25
|
Administrator
Join Date: Mar 2007
Location: NY
Posts: 15,819
|
The attachment in the first post should have the most recent versions of everything.
|
|
|
10-08-2007, 02:13 AM
|
#26
|
Human being with feelings
Join Date: Jan 2007
Location: Austria
Posts: 136
|
first of all: thanks for your great humanizer plugin schwa...it is easy to use and exactly what i looked for
from 2.0 beta rc3
* JS: added pdc_midi=1 for letting JS effects send midi with lookahead
does this mean that your humanizer plugin could work now with more extreme settings without loosing sync to other audio?
greetings,
fegi
|
|
|
03-16-2010, 04:29 PM
|
#27
|
Human being with feelings
Join Date: Mar 2010
Posts: 10
|
mapping dtxpress to ezdrummer
Quote:
Originally Posted by schwa
Update: Here is a midi quantizer plugin and here is a plugin that puts note names in the Reaper midi editor and here is a plugin for writing text notes into a project. Those plugins are VSTs, not JS plugins.
----
Here are some JS effects.
- midi_humanizer
- midi_program_trigger
- midi_examine
- soft_clipper
- clip_alarm
- gaussian_noise_generator
- midi_humanizer adds a user-defined amount of normally distributed error to the velocity and timing of a piano-rolled midi performance. (This effect is in the installer, but the version here includes a midi channel selection slider.)
- midi_program_trigger sends program change messages when you hit keys on the number pad.
- midi_examine dissects and reports the various pieces of any midi message received. Can be used like midi-ox to figure out what a control surface is doing. Also useful as a midi JS plug tutorial.
- soft_clipper is modeled after the soft-clipping stage in this popular unit, which as it turns out is really just a low threshold brick wall limiter that is all knee. This is a very simple but effective way to boost the final output signal of a mix without adding too much color.
- clip_alarm prevents unnoticed clips on a track being recorded by playing a customizable alarm sample when a monitored track clips at the input. The alarm is played only at the master, even if the clipping input audio is not being monitored on hardware at all, and the clipping input is not affected.
- gaussian_noise_generator makes gaussian noise using an algorithm of the user's choice. The algorithms are listed roughly in order of quality and CPU cost. This effect may be useful as a building block.
|
will this fix help with mapping the correct edrum pads to ezdrummer in Reaper. Some of the pads are mapped incorrectly, e.g. when i trigger the kick drum it sounds a snare in ezdrummer, the snare trigger sounds open high hats, etc..
thanks
jpg
|
|
|
03-17-2010, 08:59 AM
|
#28
|
Human being with feelings
Join Date: Aug 2009
Location: NYC
Posts: 1,805
|
Quote:
Originally Posted by jpg
will this fix help with mapping the correct edrum pads to ezdrummer in Reaper. Some of the pads are mapped incorrectly, e.g. when i trigger the kick drum it sounds a snare in ezdrummer, the snare trigger sounds open high hats, etc..
thanks
jpg
|
If you notice, this message thread is nearly 3 years old, and a lot of the stuff mentioned is now common place in Reaper. However, the mapping of kit specific sounds to notes is something you'll have to do yourself. There is no automatic function for this.
Comfort
|
|
|
02-16-2016, 01:15 AM
|
#29
|
Human being with feelings
Join Date: Jul 2015
Posts: 76
|
Hello !
What kind of distribution have midi_humanizer ? Gaussian or basic random noize ? What means "normally distributed" ? Do humanizer in reaper it's the same algo that the JS plug-in ? Timing humanizer ?
Sorry for my bad english
Last edited by Noirceur; 02-16-2016 at 01:21 AM.
|
|
|
04-10-2020, 10:54 AM
|
#30
|
Human being with feelings
Join Date: Oct 2018
Posts: 367
|
Quote:
Originally Posted by Noirceur
What kind of distribution have midi_humanizer ? Gaussian or basic random noize ?
|
It's gaussian, it uses the central limit theorem method.
Quote:
Originally Posted by Noirceur
Do humanizer in reaper it's the same algo that the JS plug-in ?
|
That's a good question, I'd also like to know that.
|
|
|
04-10-2020, 10:59 AM
|
#31
|
Human being with feelings
Join Date: Oct 2018
Posts: 367
|
With midi_humanizer beware that high values of "Timing Humanization Level" start to skew the distribution real bad. On my machine with a sample rate of 48000 the timing shifts are capped to -5.4 ms and 10.6 ms, so you end up with a lot more values farther to the right.
^ EDIT: I guess the actual boundaries depend on where your notes are, but anyways large values for timing humanization will introduce skew.
Besides this, it's also skewed to the right for all values of "Timing Humanization Level" because of the nature of how it gets blocks of data to work with, if it's supposed to shift to the left but you're at the start of a block then it won't shift at all. As a result you have many more positive shifts than negative shifts.
Last edited by pandabot; 04-10-2020 at 09:04 PM.
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 11:49 AM.
|