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

Reply
 
Thread Tools Display Modes
Old 10-03-2022, 01:26 PM   #1081
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,416
Default

Quote:
Originally Posted by glitched View Post
I'm so happy I found ReaPack, JSFX, and your plugins!
It's like Christmas, everyday.

Two bugs (I'm not sure if they've been reported):
Partials doesn't allow parameter modulation of the model type via Reaper's "parameter modulation" function. Rather, the range is limited to the first two models. The plugin responds to parameter changes in the track envelope, though.

Phase Mangler's nodes only change in in the positive direction. When attempting to automate the parameters, values below the yellow line are not possible.

I notice that the plugin's internal scale goes from -0.5 to +0.5, but Reaper goes from 0 to 1.0.
Thanks for the heads up on those bugs. They should be fixed now
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]
sai'ke is offline   Reply With Quote
Old 10-04-2022, 03:23 AM   #1082
chuckwood
Human being with feelings
 
Join Date: Oct 2013
Posts: 89
Default

Hey sorry to mention the drum synth thing again but I just noticed MPL has been developing a new version of his awesome RS5K manager that will allow dropping JS plugins onto the individual pads. Could be a great combo with individual drum modules instead of requiring a full-blown multi voice drum machine. Just thought I would mention it for your future reference if you ever pick up that trail again
chuckwood is offline   Reply With Quote
Old 10-04-2022, 06:24 PM   #1083
glitched
Human being with feelings
 
Join Date: Mar 2012
Posts: 16
Default

Those bugs are fixed!
I'm having great fun and making some really nasty stuff with Yutani and especially the Multiband Ravager.
glitched is offline   Reply With Quote
Old 10-05-2022, 11:04 AM   #1084
glitched
Human being with feelings
 
Join Date: Mar 2012
Posts: 16
Default

Speaking of Yutani and Ravager...

If I put Ravager at the end of an efx chain, with Yutani, I get aliasing sweeps after audio has been recorded, but not during monitoring.

I have oversampling at x8 on Yutani and the amp envelope as short as it can be. I have tried all the filters...but I'm not sure about the oscs.

Because Ravager is supposed to basically pull everything up from way low, do you think this artifacting can be helped?
glitched is offline   Reply With Quote
Old 10-05-2022, 12:28 PM   #1085
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,416
Default

Quote:
Originally Posted by glitched View Post
Speaking of Yutani and Ravager...

If I put Ravager at the end of an efx chain, with Yutani, I get aliasing sweeps after audio has been recorded, but not during monitoring.

I have oversampling at x8 on Yutani and the amp envelope as short as it can be. I have tried all the filters...but I'm not sure about the oscs.

Because Ravager is supposed to basically pull everything up from way low, do you think this artifacting can be helped?
That it's different during recording than during monitoring makes me wonder whether it's clipping at the output?

Do you have an example of a recording? Does it happen with just Yutani and Ravager without other effects in the middle?

If it's indeed due to ravager pulling too much up, you could play with the gate a little bit. Placing the gate a bit higher will silence ravager at some point.
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]
sai'ke is offline   Reply With Quote
Old 10-05-2022, 07:30 PM   #1086
glitched
Human being with feelings
 
Join Date: Mar 2012
Posts: 16
Default

Apologies, but there was another plugin before the end of the chain that seemed to be causing the aliasing (zipper, sweeping) noise.

I have found that putting a gate between that plugin and Ravager mitigates the issue. I did write a bug report to them; however, as the artifacts can be as "high" as -60dbFS.

Last edited by glitched; 10-05-2022 at 08:51 PM.
glitched is offline   Reply With Quote
Old 10-06-2022, 04:53 AM   #1087
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 3,965
Default

Quote:
Originally Posted by chuckwood View Post
Awesome, the drums sound great on that! I would love a JSFX drum synth or drum modules so looking forward to that day.
I wrote something about Microtonic modeling in the past, there is a model (open source I guess) for it for linux. saike could take it to the next level, for sure, as always.
TonE is offline   Reply With Quote
Old 10-07-2022, 02:48 AM   #1088
chuckwood
Human being with feelings
 
Join Date: Oct 2013
Posts: 89
Default

Quote:
Originally Posted by TonE View Post
I wrote something about Microtonic modeling in the past, there is a model (open source I guess) for it for linux. saike could take it to the next level, for sure, as always.
Sounds interesting, do you have a link?
chuckwood is offline   Reply With Quote
Old 10-07-2022, 06:37 PM   #1089
Ears
Human being with feelings
 
Join Date: Sep 2022
Posts: 90
Default

Amazing plugins!

I've been using Amaranth, Reflectosaurus (probably my favourite so far), Lava Verb and SEQS almost every time I start a reaper session.

My favourite-favourite thing to do is automate different parameters in Amaranth, feed my sound the "Dark Tides" preset in Reflectosaurus, hit print, and then spend hours exploring the different worlds inside the sound file.. My hard drives hate me..

Thank you for creating and sharing them.
Ears is online now   Reply With Quote
Old 10-09-2022, 02:38 AM   #1090
Tapio
Human being with feelings
 
Join Date: Jul 2021
Posts: 62
Default

Quote:
Originally Posted by sai'ke View Post
Some of the newer ones should scale, but the older ones might not. Which ones are giving you trouble? I can see if I can add some scaling to them.
Sorry for replaying late!

The FM Filters, Mono Bass, Partials, SEQS... TBH all of your plugins. All have super tiny fonts... I wonder how they'd look on a 4k monitor. I'm only on 2560x1440. If there was a scaling option and now it's 10ß%, I'd probably set it 150..200%

I have a question: Is it an error on my side or doesn't FM Filter 2 come with presets? (FM 1 has some)
Tapio is offline   Reply With Quote
Old 10-09-2022, 02:52 AM   #1091
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 3,965
Default

Quote:
Originally Posted by chuckwood View Post
Sounds interesting, do you have a link?
https://schollz.com/blog/microtonic/
https://schollz.com/blog/supertonic/
https://github.com/schollz/supercollider-microtonic

Last edited by TonE; 10-09-2022 at 02:58 AM.
TonE is offline   Reply With Quote
Old 10-09-2022, 06:04 AM   #1092
todd_r
Human being with feelings
 
todd_r's Avatar
 
Join Date: Nov 2006
Posts: 831
Default

Ooh, that does sound close
todd_r is offline   Reply With Quote
Old 10-09-2022, 02:13 PM   #1093
glitched
Human being with feelings
 
Join Date: Mar 2012
Posts: 16
Default

Yes! One can never have enough synth-drums, and with Saike's awesome analog-modeled oscs and filters, it would be so good.
As an aside: Has anyone ported the "AI Drummer" engine to VST or JSFX? The scripts are all right there. I wonder what it would take.
glitched is offline   Reply With Quote
Old 10-10-2022, 06:14 AM   #1094
chuckwood
Human being with feelings
 
Join Date: Oct 2013
Posts: 89
Default

Thanks, there's some pretty cool stuff there
chuckwood is offline   Reply With Quote
Old 10-11-2022, 03:20 AM   #1095
Timangust
Human being with feelings
 
Timangust's Avatar
 
Join Date: May 2017
Posts: 30
Default

Squashman is awesome! Thank you! Better UI and it will be perfect!
Timangust is offline   Reply With Quote
Old 10-15-2022, 02:14 PM   #1096
fotisandstuff
Human being with feelings
 
Join Date: Aug 2020
Location: Greece
Posts: 43
Default

I tested the new Glottis oscillators in Yutani and found a bug. When you load the plugin in its default state and change both oscillators from Saw to Glottis, Yutani stops outputting sound. You have to tweak the little knob between Amplitude and Semitones until the oscillators start working again.
fotisandstuff is offline   Reply With Quote
Old 10-15-2022, 02:28 PM   #1097
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,416
Default

Quote:
Originally Posted by glitched View Post
Those bugs are fixed!
I'm having great fun and making some really nasty stuff with Yutani and especially the Multiband Ravager.
Coolcool

Quote:
Originally Posted by Ears View Post
Amazing plugins!

I've been using Amaranth, Reflectosaurus (probably my favourite so far), Lava Verb and SEQS almost every time I start a reaper session.

My favourite-favourite thing to do is automate different parameters in Amaranth, feed my sound the "Dark Tides" preset in Reflectosaurus, hit print, and then spend hours exploring the different worlds inside the sound file.. My hard drives hate me..

Thank you for creating and sharing them.
Awesome. I sometimes like making ambient soundscapes with those as well. Have you tried Swellotron? It pairs well with them if you want some smoother evolving sounds.

Any cool bits you feel like sharing?

Quote:
Originally Posted by Tapio View Post
Sorry for replaying late!

The FM Filters, Mono Bass, Partials, SEQS... TBH all of your plugins. All have super tiny fonts... I wonder how they'd look on a 4k monitor. I'm only on 2560x1440. If there was a scaling option and now it's 10ß%, I'd probably set it 150..200%

I have a question: Is it an error on my side or doesn't FM Filter 2 come with presets? (FM 1 has some)
I remember adding retina support to some of them, but you're right, seems I forgot a lot of the recent one. I just added retina support to the FM Filters, Yutani (Mono Bass), Partials and SEQS.

I didn't do any presets for FM Filter 2. I will see if I find some time to make a few.

In other news, been hacking away at Partials and Yutani this weekend. Changelog below:

- Partials: Added a legato/glide mode.
This allows you to slide from one note to the next. This was more involved than I initially expected, since it required some trickery to not get artefacts in STFT mode. Hopefully you find some enjoyment in it. Example here:

https://github.com/JoepVanlier/Audio...lidey_test.mp3

And you know what they say: "We don't do things because they are easy, we do them because we thought they would be easy".

- Partials: Support MIDI passthrough.
This will allow you to add other effects after Partials that respond to MIDI. One combination that I think sounds pretty cool is to put FM Filter 2 behind it, and have some modulation on the filter frequency like here:

https://github.com/JoepVanlier/Audio...ith_filter.mp3
https://github.com/JoepVanlier/Audio...th_filter2.mp3

I'm actually considering adding a filter with modulation as a feature on Partials, so that some of these kind of sounds can be captured in presets.

- Yutani: Add glottis waveform.
This is a saw-like waveform that is frequently used in primitive voice synthesis algorithms. I quite like how it sounds combined with the ladder filter.

Demos:
https://github.com/JoepVanlier/Audio...ormal_filt.mp3
https://github.com/JoepVanlier/Audio...mal_filt_b.mp3
https://github.com/JoepVanlier/Audio...ottis_warm.mp3

Other stuff:
- Partials: Fixed a bug in playmode which resulted in impulses being played over the incoming audio in a mode where that shouldn't be the case.
- Reflectosaurus: Added second frequency shifter as insert effect.
- Phase Mangler: Fixed small threading issue that could lead to graphical glitches.
- Yutani: Add more descriptive labels.
- Yutani: Fixed bug where hardsync could still be enabled for "special waveshapes" where this should not be allowed (since anti aliasing cannot be guaranteed for those).
- Partials: Add play mode with continuous noise for legato play.
- Partials: Fix scrollbar issue not showing the entire range.
- FM Filter / FM Filter2 / SEQS / Yutani / Partials: Add support for high DPI screens. Please let me know if this works satisfactorily, since I don't have one to test on.
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]

Last edited by sai'ke; 10-15-2022 at 02:44 PM.
sai'ke is offline   Reply With Quote
Old 10-15-2022, 02:37 PM   #1098
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,416
Default

Quote:
Originally Posted by fotisandstuff View Post
I tested the new Glottis oscillators in Yutani and found a bug. When you load the plugin in its default state and change both oscillators from Saw to Glottis, Yutani stops outputting sound. You have to tweak the little knob between Amplitude and Semitones until the oscillators start working again.
Wow, that was fast

Thanks! Fixed!
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]

Last edited by sai'ke; 10-15-2022 at 02:45 PM.
sai'ke is offline   Reply With Quote
Old 10-15-2022, 03:09 PM   #1099
fotisandstuff
Human being with feelings
 
Join Date: Aug 2020
Location: Greece
Posts: 43
Default

Quote:
Originally Posted by sai'ke View Post
Wow, that was fast

Thanks! Fixed!
Awesome, thank you!!!
fotisandstuff is offline   Reply With Quote
Old 10-15-2022, 05:25 PM   #1100
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 3,965
Default

Last glottis example sounds great. Thanks for all the great news and your wonderful sharings, dear saike! Thanks my friend.
TonE is offline   Reply With Quote
Old 10-16-2022, 03:12 AM   #1101
fmL
Human being with feelings
 
Join Date: Aug 2022
Posts: 195
Default

i am having scaling issues and some gui overlap issues on my M1 macbook/monterey. some plugins i stretch all the way across the screen and they wont show the whole interface. any suggestions? they werre working fine before i updated yesterday.
__________________
❑❑❑
fmL is offline   Reply With Quote
Old 10-16-2022, 04:25 AM   #1102
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,416
Default

Quote:
Originally Posted by fmL View Post
i am having scaling issues and some gui overlap issues on my M1 macbook/monterey. some plugins i stretch all the way across the screen and they wont show the whole interface. any suggestions? they werre working fine before i updated yesterday.
Argh, thanks for letting me know. Could you check FM Filter / FM Filter2 / SEQS / Yutani / Partials and let me know if all of these are affected in the same way?

I've just pushed what I hope to be a fix for those 5. Unfortunately, I don't have a mac or a retina display to test on. Please let me know if there are issues with it and if so, which ones are affected. Thank you.
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]
sai'ke is offline   Reply With Quote
Old 10-17-2022, 02:11 AM   #1103
Tapio
Human being with feelings
 
Join Date: Jul 2021
Posts: 62
Default

Quote:
Originally Posted by sai'ke View Post
Argh, thanks for letting me know. Could you check FM Filter / FM Filter2 / SEQS / Yutani / Partials and let me know if all of these are affected in the same way?
For me there is no changes in the UI elements size, is there any keyboard shortcut? Still most is really small on my 2k screen. Is there a keyboard shortcut? I remember there is some plugin of you which had a shortcut for UI size (but unfortunately forgot the size after reload). Can't remember which one.
Do you use FHD or even lower?
Attached Images
File Type: png Screenshot 2022-10-17 111331.png (174.5 KB, 88 views)
Tapio is offline   Reply With Quote
Old 10-17-2022, 12:09 PM   #1104
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,416
Default

Quote:
Originally Posted by Tapio View Post
For me there is no changes in the UI elements size, is there any keyboard shortcut? Still most is really small on my 2k screen. Is there a keyboard shortcut? I remember there is some plugin of you which had a shortcut for UI size (but unfortunately forgot the size after reload). Can't remember which one.
Do you use FHD or even lower?
Ah, that top text is not really meant to be read. The tooltips should be readable though.

That said, partials may be a bit too sensitive to width. I really designed it towards having only one row of controls, and maybe that´s backfiring a bit.
Maybe I should switch to a two row / more rectangular model.

I'm on 1920x1080 fwiw, but the UIs should scale if you enlarge the window (see below):

https://i.imgur.com/jli4eaZ.gif
https://i.imgur.com/dFbXUKf.gif

I probably also don't notice this as much because I tend to use these plugins undocked from the track thingy.

That said, ideally, it should be readable on most common resolutions.

EDIT: remove obnoxiously big GIFs
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]

Last edited by sai'ke; 10-17-2022 at 12:36 PM.
sai'ke is offline   Reply With Quote
Old 10-18-2022, 03:18 AM   #1105
Tapio
Human being with feelings
 
Join Date: Jul 2021
Posts: 62
Default

Quote:
Originally Posted by sai'ke View Post
I'm on 1920x1080 fwiw, but the UIs should scale if you enlarge the window (see below):
OMG, I'm feeling incredibly stupid now. Have seen on many occasions that plugins inside that frame do not scale (Reaper just add more border) - so I didn't even try
Thx Saike
EDIT: But I fount those mouseover hints do not necessarily scale with the UI. Super tiny mouseover text e.g. in Lava Reverb - and it's important there. Personally I'd prefer a traditional UI there (having Valhalla in mind), because I always have to look for the meanings of the rings... but that's just me.

Small problem. IMO when dealing with your plugins internal modulation, the pulsating of the rings is contradicting the modulation visualization. (I mean, because the rings are also showing the amount of modulation at the moment - this pulsating effect is counter productive there). In FM2 that is.

Last edited by Tapio; 10-18-2022 at 03:36 AM.
Tapio is offline   Reply With Quote
Old 10-19-2022, 03:57 AM   #1106
fmL
Human being with feelings
 
Join Date: Aug 2022
Posts: 195
Default

Quote:
Originally Posted by sai'ke View Post
Argh, thanks for letting me know. Could you check FM Filter / FM Filter2 / SEQS / Yutani / Partials and let me know if all of these are affected in the same way?

I've just pushed what I hope to be a fix for those 5. Unfortunately, I don't have a mac or a retina display to test on. Please let me know if there are issues with it and if so, which ones are affected. Thank you.
ok, got a chance to update and test.

nostalgizer - "Advanced" is partially cut off at the "d".

4 pole bandsplitter and phase matcher - '700 and '900'1k overlap when scaling down.

FM filter - selection border is too small for "MIDI SIN, SQR and Self Abs", same on FM filter 2 - too small for anything longer than "MS-20A". maybe highlighting them would be better than putting the border/box aroumd them.

midi arp does not resize.

monitor routing utility - right side monitoring channels overlap output boxes slightly, "swap L-R" does not fit in box (L-R) is cut off. Head phone does not fit in box. "phone" is cut off. "t" on "DAW input" is overlapped by dB knob.

ravager - same issue as 4 pole bandsplitter.

not OTT - same issue as 4 pole bandsplitter.

pitch shifter - light blue text on white background is hard to see.

SEQS - only scales to 2 sizes. so doesnt scale smoothly. says "beta" 3 times, over record sample, play sample and frequency shifter. overlaps record sample and frequency shifter.

SEQS - Tools/reajs_compatibility/SequencedFX_compat.jsfx scales proplerly.

spectral analyzer (alt) - text is too small to read.

spectral analyzer (beta) - overlapping issues. 0dB is under "freeze". Hz numbers are acting wonky. first number is overlapped by "Sc, 5000" and some of the adjacent numbers disappear when scaling down, 20kHz is overlapped by channels when they go vertical.

swellotron does not scale properly. cuts off params when scaling down.

Tools/partials/partials_dependancies/logo.bin
Tools/partials/partials_dependancies/saike_female_vowel_data.bir
Tools/partials/partials_dependancies/saike_vowel_data.bin all show up in JS menu.

saike tools/reajs_compatibility/nott_compat.jsfx - same issue as 4 pole band splitter and numbers on left side are half cut off.

same with Ravager_MB_compat.

Squashman_compat - frequencies jump around and overlap when scaling down and "Master/Over" still overlaps the other param boxes. Modulation section does not scale properly. cuts off gui rather than scale down.

Yutani scales properly but again the box doesnt fit anything bigger than "MS20A".

some of these are minor nit picks but wanted to give you a thorough report on what im seeing on my M1/Monterey retina.
__________________
❑❑❑
fmL is offline   Reply With Quote
Old 10-19-2022, 08:00 AM   #1107
Tapio
Human being with feelings
 
Join Date: Jul 2021
Posts: 62
Default

In FM Filter 2, Cutoff LFOs rate in Hz does always display 0.0 Hz.
Tapio is offline   Reply With Quote
Old 10-22-2022, 02:56 PM   #1108
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 3,965
Default

Can we set pitchbend range for Yutani? For example to 2 semitones or 12 semitones. A range between 0..24 semitones would be nice. As an example you can check Synth1 and how it behaves for incoming midi pitchbend events.
TonE is offline   Reply With Quote
Old 10-23-2022, 09:32 AM   #1109
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,416
Default

Quote:
Originally Posted by Tapio View Post
OMG, I'm feeling incredibly stupid now. Have seen on many occasions that plugins inside that frame do not scale (Reaper just add more border) - so I didn't even try
Thx Saike
No problem

Quote:
Originally Posted by Tapio View Post
EDIT: But I fount those mouseover hints do not necessarily scale with the UI. Super tiny mouseover text e.g. in Lava Reverb - and it's important there.
I've made some modifications to allow them to scale. They should scale now.

Quote:
Originally Posted by Tapio View Post
Personally I'd prefer a traditional UI there (having Valhalla in mind), because I always have to look for the meanings of the rings... but that's just me.
That's fair. I was hoping the symbols would intuitive as to their function, but some were admittedly hard to come up with a proper icon for.

Quote:
Originally Posted by Tapio View Post
Small problem. IMO when dealing with your plugins internal modulation, the pulsating of the rings is contradicting the modulation visualization. (I mean, because the rings are also showing the amount of modulation at the moment - this pulsating effect is counter productive there). In FM2 that is.
Hmm. Personally, I find that slow pulsating relaxing, but yeah, it shouldn't interfere too much. Maybe I'll make the pulsating a little bit more dim in the future. For now, if it bothers you, you can edit the file /Yutani_Dependencies/Saike_Yutani_widgets.jsfx-inc and change the line that reads:
Code:
    cy = 0.3 + .2*sin(offset + 4*render_time);
to:
Code:
    cy = 0.3;
That'll get rid of it entirely. You'd have to do it again whenever you update though.

Quote:
Originally Posted by fmL View Post
ok, got a chance to update and test.
Oh wow, that's quite the list. Thank you. I will fix some of them. Considering that ysfx is now a thing, the compat ones have low priority to me, so I'll do those at a later date.

Quote:
Originally Posted by fmL View Post
nostalgizer - "Advanced" is partially cut off at the "d".
Should hopefully be fixed now.

Quote:
Originally Posted by fmL View Post
4 pole bandsplitter and phase matcher - '700 and '900'1k overlap when scaling down.

ravager - same issue as 4 pole bandsplitter.

not OTT - same issue as 4 pole bandsplitter
I rolled out an attempt at fixing this. It should omit labels that would end up overlapping.

Quote:
FM filter - selection border is too small for "MIDI SIN, SQR and Self Abs", same on FM filter 2 - too small for anything longer than "MS-20A". maybe highlighting them would be better than putting the border/box aroumd them.
Yutani scales properly but again the box doesnt fit anything bigger than "MS20A".

monitor routing utility - right side monitoring channels overlap output boxes slightly, "swap L-R" does not fit in box (L-R) is cut off. Head phone does not fit in box. "phone" is cut off. "t" on "DAW input" is overlapped by dB knob.
Yeah, this is difficult for me to solve since I don't have a system where I can nicely test fixes I make to these. I do like the box around them when it works. The thing that surprises me is that it is problematic, since I expected the font I use (Arial) to also be available on Mac. Maybe it is slightly different somehow. I could probably downscale them based on an expected size on my machine.

Could you link me a screenshot of what the monitoring utility and FM filter 2 look like?

Quote:
midi arp does not resize.
This should be fixed now.

Quote:
pitch shifter - light blue text on white background is hard to see.
Made it a little darker.

Quote:
SEQS - only scales to 2 sizes. so doesnt scale smoothly. says "beta" 3 times, over record sample, play sample and frequency shifter. overlaps record sample and frequency shifter.
Should be fixed now. The multiple BETAs were actually intentional, they referred to the fact that those effect rows were still heavily being tested. I removed them now though, since they've been in there for a while and haven't caused issues.

Quote:
spectral analyzer (alt) - text is too small to read.
This thing is discontinued and superseded by the beta one.

Quote:
spectral analyzer (beta) - overlapping issues. 0dB is under "freeze". Hz numbers are acting wonky. first number is overlapped by "Sc, 5000" and some of the adjacent numbers disappear when scaling down, 20kHz is overlapped by channels when they go vertical.
I tried fixing a few of the overlapping issues, but the code for this thing has turned into a monstrosity. There may be side effects.

Quote:
swellotron does not scale properly. cuts off params when scaling down.
Unfortunately, this is by design. The only "scaling" swellotron does when downscaling X is go to a two row mode. Is it unusable?

Quote:
Tools/partials/partials_dependancies/logo.bin
Tools/partials/partials_dependancies/saike_female_vowel_data.bir
Tools/partials/partials_dependancies/saike_vowel_data.bin all show up in JS menu.
So, funny thing, .bin was hidden from that list on windows, but apparently not on mac. I renamed the files again, this time to .dat, which hopefully hides them on all OSes.

Quote:
Squashman_compat - frequencies jump around and overlap when scaling down and "Master/Over" still overlaps the other param boxes. Modulation section does not scale properly. cuts off gui rather than scale down.
I'm saving this one for another day.

Quote:
some of these are minor nit picks but wanted to give you a thorough report on what im seeing on my M1/Monterey retina.
Appreciated.

Quote:
Originally Posted by Tapio View Post
In FM Filter 2, Cutoff LFOs rate in Hz does always display 0.0 Hz.
Good catch. Should be fixed in both FM Filter 2 and Yutani now.

Quote:
Originally Posted by TonE View Post
Can we set pitchbend range for Yutani? For example to 2 semitones or 12 semitones. A range between 0..24 semitones would be nice. As an example you can check Synth1 and how it behaves for incoming midi pitchbend events.
You can now. I just added this feature for you. It's added to the options on the lower right. Range is 0-12 semitones, but this can be modified if needed.

In other news, I added the ability to visualize the current signal levels in FM Filter 2 to hopefully make tweaking those envelopes a bit easier.



I also added an RMS mode which turns the filter into a follower. In this mode you set two thresholds. The lower threshold is mapped to zero while the upper threshold maps to maximum envelope. The shape parameter defines whether it's a fast start or fast end.


Hope it's useful and see you next time.
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]
sai'ke is offline   Reply With Quote
Old 10-23-2022, 10:27 PM   #1110
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 3,965
Default

Thanks dear saike for the pitchbend addition. Tested with your aparker127's MIDI Pitch Follower, set also to same pitchbend range, for example 2 semitones in both, and it seems to work correctly. Thanks a lot. Now we can let Yutani follow any audio we want, cool. No matter if vocal or anything. Wonderful.

For trying this in future quickly created an fx chain as follows:
- MIDI Pitch Follower
- switchable MIDI transpose (for setting two octaves lower for example, going into bass range)
- Yutani Mono Bass Synth
- ReaComp (22:1, Auto make-up on, Limit output on)
- ReaComp (1.25:1, Auto make-up on, Limit output on)

Then having fun with Yutani sounds. Thanks again dear saike, our master genius. As a human, and not only coding. Have a nice day my friend.

Last edited by TonE; 10-24-2022 at 11:45 AM.
TonE is offline   Reply With Quote
Old 10-24-2022, 12:17 AM   #1111
fmL
Human being with feelings
 
Join Date: Aug 2022
Posts: 195
Default

Quote:
Originally Posted by sai'ke View Post
Could you link me a screenshot of what the monitoring utility and FM filter 2 look like?
yep i will try to do that tmw. or i can email some screenshots to you if you want to pm me your email.

Quote:
Made it a little darker.
both are still showing up on the menu. the darker text version is much easier to see so i think that should be the prefered version.

-pitch shifter and pitch shifter [ReaJS-Compatibility] are both present on fx menu. not sure of this is intentional but figured i'd mention it.

other than that after this last update everything seems to be working/looking good. but i have a handful of screenshots to send your way. or i can upload and link them. either way.
__________________
❑❑❑
fmL is offline   Reply With Quote
Old 10-24-2022, 06:14 AM   #1112
juan_r
Human being with feelings
 
juan_r's Avatar
 
Join Date: Oct 2019
Posts: 1,032
Default

Quote:
Originally Posted by TonE View Post
Tested with your MIDI Pitch Follower, set also to same pitchbend range, for example 2 semitones in both, and it seems to work correctly.
Sai'ke pitch follower? Where is that?

Quote:
Originally Posted by TonE View Post
For trying this in future quickly created an fx chain as follows:
- MIDI Pitch Follower
- switchable MIDI transpose (for setting two octaves lower for example, going into bass range)
- Yutani Mono Bass Synth
- ReaComp (22:1, Auto make-up on, Limit output on)
- ReaComp (1.25:1, Auto make-up on, Limit output on)
Why two ReaComps, and why the squasher first? Is it used as just a peak shaver/limiter? Curious...

Quote:
Thanks again dear saike, our master genius. As a human, and not only coding. Have a nice day my friend.
Can't agree more. This stuff is premium level, and Saike's kindness and patience (and efficiency!) when dealing with bugs and feature requests are rare to say the least. Thank you!
__________________
My ReaPack repository: https://github.com/juanriccio/Reaper...ster/index.xml
juan_r is offline   Reply With Quote
Old 10-24-2022, 11:30 AM   #1113
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 3,965
Default

Quote:
Originally Posted by juan_r View Post
Sai'ke pitch follower? Where is that?
Checked quickly his github, it seems he did not add it there, probably he posted it in the forum then, I guess he implemented quickly the YIN algorithm. In stash maybe? Here:

PHP Code:
descMIDI Pitch Follower (Non-Polyphonic)

// pitch-detection algorithm adapted (bastardized) from:
// http://recherche.ircam.fr/equipes/pcm/cheveign/pss/2002_JASA_YIN.pdf

//To-Do
// White noise to optional channel when no pitch detected

slider1:20<10,100,1>Window (ms)
slider2:80<10,4000,1>Min Freq (Hz)
slider3:800<10,4000,1>Max Freq (Hz)
slider4:0<0,1,{LeftRight}>Analysis Channel
slider5
:3<0,11,{A,A#/Bb,B,C,C#/Db,D,D#/Eb,E,F,F#/Gb,G,G#/Ab}>Key Center
slider6:0<0,6,{Ionian (Major),Dorian,Phrygian,Lydian,Mixolydian,Aeolian (Minor),Locrian}>Mode
slider7
:2<0,24,0.5>Pitch Bend (Semitones)
slider8:0<0,1,0.02>White Noise (Channels 3/for Vocoderizing)
slider9:0<0,1,{OffOn}>-Show CMND (Debugging)

options:no_meter

@init
spos 
0//storage of samples in buffer ["sample position"]
freq 0;

function 
avg(imin imax//max non-inclusive
(
  
num 0;
  
sum 0;
  
loop(imax-imin,
    
sum += imin[num];
    
num += 1;
  );
  
sum / (imax-imin);
);

function 
round(num)
(
  
num >= ? (
    
mult 1;
  ) : (
    
mult = -1;
  );
  
abs(num) - floor(abs(num)) >= 0.5 ? (
    
ret mult ceil(abs(num));
  ) : (
    
ret mult floor(abs(num));
  );
  
ret;
);

function 
d(tau istart iwinend//Difference Function (YIN eq. 6)
(
  
sum 0;
  
i_d 0;
  
loop(iwinend+1-istart-tau,
    
sum += sqr(istart[i_d]-istart[i_d+tau]);
    
i_d += 1;
  );
  
sum;
);

function 
cmnd(tau istart iwinend//Cumulative Mean Normalized Difference
// (YIN eq. 8)
(
  
dbufstart 127127;
  
0;
  
loop(tau 1,
    
dbufstart[i] = d(iistartiwinend);
    
+= 1;
  );
  
tau == ? (
    return = 
1;):(
    return = 
dbufstart[tau] / avg(dbufstartdbufstart+tau+1);
  );
  return;
);

function 
parab(iclosest)
(
  
x1 iclosest 1;
  
y1 x1[0];
  
x2 iclosest;
  
y2 iclosest[0];
  
x3 iclosest 1;
  
y3 x3[0];
  
  
denom = (x1 x2) * (x1 x3) * (x2 x3);
  
= (x3 * (y2 y1) + x2 * (y1 y3) + x1 * (y3 y2)) / denom;
  
= (x3*x3 * (y1 y2) + x2*x2 * (y3 y1) + x1*x1 * (y2 y3)) / denom;
  
//c = (x2 * x3 * (x2 - x3) * y1 + x3 * x1 * (x3 - x1) * y2 + x1 * x2 * (x1 - x2) * y3) / denom;
  
-/ (2*a);
);

function 
findMin(istart iend)
(
  
1;
  
thresh 0.15;
  
rmin thresh// "running min"
  
return_ind = -srate;
  
loop(iend-istart-10,
    
istart[i] < rmin ? (
      
rmin istart[i];
      
return_ind istart i;
    );
    
istart[i] > thresh ? (
      
rmin thresh ? (
        
rmin = -10;
      );
    );
    
+= 1;
  );
  
minLook parab(return_ind)-istart;
);



@
slider
slider2 
1000/slider1 ? (
  
slider2 1000/slider1);
slider3 slider2 ? (
  
slider2 slider3);
ch slider4;
maxF slider3;
minF slider2;
keyShift slider5;
modeShift slider6;
pitchBend slider7;
noiseFactor slider8;
showCMND slider9;
winSamples floor(slider1*srate*0.001);
maxLook floor(min(srate/slider2,winSamples)); //from MinFreq
minLook floor(srate/slider3); //from MaxFreq
dpos winSamples 100//start of cmnd buffer, "difference position"
cmndpos dpos maxLook 100;
cmndpos[0] = 1;
modepos cmndpos*2;
modepos[0] = 2;
modepos[1] = 2;
modepos[2] = 1;
modepos[3] = 2;
modepos[4] = 2;
modepos[5] = 2;
modepos[6] = 1;
keyNamePos modepos 10;
selectPos keyNamePos 10;
graphpos selectPos 10;
memset(graphpos, -1320);

//freembuf(winSamples*2 + 1);

///////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////

@sample
spl2 
0;
spl3 spl2;
trot 1.05946309436//Twelfth Root of Two
ch == ? (spl0):(spl1);
spos[] = s;
spos += 1;
spos winSamples ? (
  
spos 0;
  
0;
  
loop(maxLook minLook 1,
    
dpos[i] = d(minLook+isposspos+winSamples);
    
+= 1;
  );
  
1;
  
loop(maxLook minLook 1,
    
cmndpos[i] = dpos[i]/(avg(dposdpos+i+1));
    
+= 1;
  );
  
avg(dposdpos+maxLook-minLook) > 0.00001 ? (
    
freq srate/findMin(cmndposcmndpos+1+maxLook-minLook);
  ) : (
    
freq 0;
  );
  
graphpos[0] = freq;
  
graphpos += 1;
  
graphpos modepos 10 319 ? (
    
graphpos modepos 10;
  );
  
  
m_last m;
  
c_last cents;
  
freq ? (
    
selectFreq 3520*(trot^keyShift);
    while(
      
selectFreq /= 2;
      
selectFreq freq;
    );
    
selectPos[0] = selectFreq;
    
selectMin abs(freq selectFreq);
    
select_i 0;
    
interv_i modeShift;
    
1;
    
loop(7,
      
selectFreq *= trot^modepos[interv_i];
      
selectPos[i] = selectFreq;
      
abs(freq selectFreq) < selectMin ? (
        
selectMin abs(freq selectFreq);
        
select_i i;
      );
      
+= 1;
      
interv_i += 1;
      
interv_i ? (interv_i 0);
    );
    
12 log10(selectPos[select_i]/440)/log10(2) + 69 //round?
    
fm = (^ ((m_last-69)/12))*440;
    
cents 1200 * (log10(freq/fm)/log10(2));
    
abs(cents) > pitchBend*100 ? (
      
fm = (^ ((m-69)/12))*440;
      
cents 1200 * (log10(freq/fm)/log10(2));
    ) : (
      
m_last;
    );
  ) : (
    
0;
  );
  
  
!= m_last ? (
    
midisend(0$x80m_last127);
    
? (
      
midisend(0$x90m127);
    );
  );
  
cents != c_last ? (
    
cBits round((cents/(pitchBend*100))*8191) + 8192;
    
cLSB cBits 0x7F;
    
cMSB = (cBits >> 7) & 0x7F;
    
midisend(0$xE0cLSBcMSB);  
  );
);

freq == ? (
  
spl2 = (rand(2) - 1)*noiseFactor;
  
spl3 spl2;
);


///////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////

@gfx 640 400
keyNamePos
[0] = "A";
keyNamePos[1] = "B";
keyNamePos[2] = "C";
keyNamePos[3] = "D";
keyNamePos[4] = "E";
keyNamePos[5] = "F";
keyNamePos[6] = "G";
vscale gfx_h/(log(maxF)-log(minF));
vadj = -log(minF)*vscale;
gfx_h-log(freq)*vscale-vadj;
trot 1.05946309436//Twelfth Root of Two

gfx_r 0.05;
gfx_g 0.05;
gfx_b 0.05;
bgfreq 55;
loop(48,
  
gfx_line(0,gfx_h-log(bgfreq)*vscale-vadj,gfx_w,gfx_h-log(bgfreq)*vscale-vadj0);
  
bgfreq *= trot;
);

gfx_r 0.3;
gfx_g 0.3;
gfx_b 0.3;
bgfreq 55*(trot^keyShift);
mode_i modeShift;
loop(28,
  
gfx_line(0,gfx_h-log(bgfreq)*vscale-vadj,gfx_w,gfx_h-log(bgfreq)*vscale-vadj0);
  
bgfreq *= trot^modepos[mode_i];
  
mode_i += 1;
  
mode_i ? (mode_i 0);
);

gfx_r 0.65;
gfx_g 0;
gfx_b 0;
bgfreq 55*(trot^keyShift);
loop(4,
  
gfx_line(0,gfx_h-log(bgfreq)*vscale-vadj,gfx_w,gfx_h-log(bgfreq)*vscale-vadj0);
  
bgfreq *= trot^12;
);

gfx_r 0.6;
gfx_g 0.6;
gfx_b 0.6;
bgfreq 55;
mode_i 5;
note_i 0;
loop (28,
  
gfx_x 3;
  
gfx_y gfx_h-log(bgfreq)*vscale-vadj-3;
  
gfx_drawstr(keyNamePos[note_i]);
  
gfx_drawnumber(floor(log(bgfreq)/0.6932)-4,0);
  
gfx_drawstr("  ");
  
//gfx_drawnumber(bgfreq,0);
  
bgfreq *= trot^modepos[mode_i];
  
note_i += 1;
  
note_i ? (note_i 0);
  
mode_i += 1;
  
mode_i ? (mode_i 0);
);

gfx_r 0;
gfx_g 1;
gfx_b 0;
gfx_x gfx_w 2;
graphpos[0] > ? (
  
gfx_y gfx_h-log(graphpos[0])*vscale-vadj;
):(
  
gfx_y gfx_h-log(graphpos[-1])*vscale-vadj;
);
loop(320,
  
graphpos[0] > ? (
    
gfx_lineto(gfx_x 2gfx_h-log(graphpos[0])*vscale-vadj1);
  ):(
    
gfx_x -= 2;
    
gfx_y gfx_h-log(graphpos[-1])*vscale-vadj;
  );
  
graphpos -= 1;
  
graphpos modepos 10 ? (
    
graphpos modepos 10 319;
  );
);
showCMND == ? (
  
gfx_x 0;
  
gfx_y gfx_h-cmndpos[1]*gfx_h*0.5;
  
gfx_r 0;
  
gfx_g 0;
  
gfx_b 1;
  
1;
  
loop(maxLook-minLook-1,
    
gfx_lineto(gfx_x+1gfx_h cmndpos[i]*gfx_h*0.5);
    
+= 1;
  );
  
gfx_x 5;
  
gfx_y 10;
);
gfx_r 1;
gfx_g 1;
gfx_b 1;
gfx_y 10;
freq ? (
  
gfx_x gfx_w-50;
  
gfx_drawnumber(freq,1);
  
gfx_x gfx_w-50;
  
gfx_printf("\n");
  
gfx_drawnumber(selectPos[select_i],2);
  
gfx_x gfx_w-50;
  
gfx_printf("\n");
  
gfx_drawnumber(m,0);
  
gfx_x gfx_w-50;
  
gfx_printf("\n");
  
gfx_drawnumber(fm,0);
  
gfx_x gfx_w-50;
  
gfx_printf("\n");
  
gfx_drawnumber(cents,2);
); 
see https://stash.reaper.fm/v/30507/pitch-follower
Sorry it seems this is not from saike, but aparker127 instead, thanks aparker127. But I guess saike tried also something with YIN I remember somehow... not sure.

Last edited by TonE; 10-24-2022 at 11:35 AM.
TonE is offline   Reply With Quote
Old 10-24-2022, 11:40 AM   #1114
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 3,965
Default

Quote:
Originally Posted by juan_r View Post
Why two ReaComps, and why the squasher first? Is it used as just a peak shaver/limiter? Curious...
Just experimented with this: https://forum.cockos.com/showthread....28#post2607528
TonE is offline   Reply With Quote
Old 10-24-2022, 03:32 PM   #1115
juan_r
Human being with feelings
 
juan_r's Avatar
 
Join Date: Oct 2019
Posts: 1,032
Default

Thanks for your replies, @TonE! My computer can't keep up with the pitch follower, unfortunately. Something happened with the one of the latest Windows updates and now it's seriously crippled for realtime audio processing. I'll check it out on another system as soon as I get a chance.
__________________
My ReaPack repository: https://github.com/juanriccio/Reaper...ster/index.xml
juan_r is offline   Reply With Quote
Old 11-26-2022, 06:04 AM   #1116
PitchSlap
Human being with feelings
 
PitchSlap's Avatar
 
Join Date: Jan 2008
Location: Vancouver, BC
Posts: 3,654
Default

So many amazing gems that really go beyond what I thought JS could do!

I pretty much install them all even when I have no clue what they do.
Btw is there a description for Ripple anywhere?
It looks pretty cool
__________________
FRs: v5 Media Explorer Requests, Global Quantization, Session View
Win10 Pro 64-bit, Reaper 6(x64), AMD 3950x, Aorus X570 Master, 64GB DDR4 3600, PowerColor Red Devil 5700XT, EVO 970 2TB, 10TB HD, Define R6
PitchSlap is offline   Reply With Quote
Old 12-02-2022, 02:56 PM   #1117
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 3,965
Default

Dear saike,

while looking at SEQS image on your github I just thought:
if those 1 number in any cell/slot could be set between 0..1 while mouseovering and mousewheeling over that cell/slot/step, and its effect would be a probability applied to the triggering of that step. How cool would that be? I read the feature list, and its seems this is not available, afai could read. Maybe interesting also for you and not too difficult to implement.

Happy Reapering or saikeing, friends.
TonE is offline   Reply With Quote
Old 12-08-2022, 02:44 PM   #1118
gapalil001
Human being with feelings
 
gapalil001's Avatar
 
Join Date: May 2016
Location: Kyiv, Ukraine
Posts: 520
Default

man i am really feel high about your plug-ins. discovering one after one and excited AF! you are some kind of genius or creative god i guess. there is nothing more to say from my side
gapalil001 is offline   Reply With Quote
Old 12-09-2022, 05:00 PM   #1119
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,416
Default

Quote:
Originally Posted by fmL View Post
yep i will try to do that tmw. or i can email some screenshots to you if you want to pm me your email.


both are still showing up on the menu. the darker text version is much easier to see so i think that should be the prefered version.

-pitch shifter and pitch shifter [ReaJS-Compatibility] are both present on fx menu. not sure of this is intentional but figured i'd mention it.

other than that after this last update everything seems to be working/looking good. but i have a handful of screenshots to send your way. or i can upload and link them. either way.
Sorry for getting back so late to this. Linking would be most convenient (if the issues still exist).

Quote:
Originally Posted by gapalil001 View Post
man i am really feel high about your plug-ins. discovering one after one and excited AF! you are some kind of genius or creative god i guess. there is nothing more to say from my side
I'm glad you're enjoying them.

Quote:
Originally Posted by PitchSlap View Post
So many amazing gems that really go beyond what I thought JS could do!
Thank you

Quote:
I pretty much install them all even when I have no clue what they do.
Btw is there a description for Ripple anywhere?
It looks pretty cool
Ripple is not much more than a sequencer where you can pick a scale and have it play notes. It's a pretty simple thing. It kind of got superseded by MIDI ARP, which I think is a bit more flexible.

Quote:
Originally Posted by TonE View Post
Dear saike,

while looking at SEQS image on your github I just thought:
if those 1 number in any cell/slot could be set between 0..1 while mouseovering and mousewheeling over that cell/slot/step, and its effect would be a probability applied to the triggering of that step. How cool would that be? I read the feature list, and its seems this is not available, afai could read. Maybe interesting also for you and not too difficult to implement.

Happy Reapering or saikeing, friends.
Cool idea yeah. It would mean quite a bit of extra data to store for the patterns. Also, one would have to deal with the blocks that already have numbers with their own meaning (such as retrigger). It's not as easy as it might seem at first glance because of how things are set up, but I'll think about it.
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]
sai'ke is offline   Reply With Quote
Old 12-10-2022, 12:00 PM   #1120
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 3,965
Default

Quote:
Originally Posted by sai'ke View Post
Cool idea yeah. It would mean quite a bit of extra data to store for the patterns. Also, one would have to deal with the blocks that already have numbers with their own meaning (such as retrigger). It's not as easy as it might seem at first glance because of how things are set up, but I'll think about it.
Regarding numbers already avaiable, maybe following implementation strategy could be interesting:
1- keeping all numbers as it is now (trigger numbers 1 or 0)
2- adding probability numbers as smaller red number in right bottom corner (Example: 0.78, or shorter saving some space .78, two decimals after comma should be enough for the probability precision I guess)
3- if probability is set to 1, this small number should not be displayed
4- implementation could use a multiplicative form current number (current_number: 1 or 0 only I guess, current_number * probability, if probability is not 1)
5- for saving strategy of those numbers, I am sure master saike, you will find best way (some multi-dimensional state-array maybe?)
TonE 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 12:01 AM.


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