Old 03-15-2021, 12:38 PM   #1
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default Midi Rhythm Trainer - a new JSFX plugin

Hi,

This is my first plugin. It's a midi tool for improving your sense of rhythm.



I put it in ReaPack, and in:
https://github.com/erangithub/eran_reaper_jsfx/releases

I put up a tutorial:

https://youtu.be/cifj6eh_LF0

Enjoy,
Eran
Attached Images
File Type: png mrt.png (25.7 KB, 2815 views)

Last edited by etalmor; 03-16-2021 at 07:24 AM.
etalmor is offline   Reply With Quote
Old 03-15-2021, 01:14 PM   #2
daniellumertz
Human being with feelings
 
daniellumertz's Avatar
 
Join Date: Dec 2017
Location: Brazil
Posts: 2,026
Default

wow this is great for teaching music perception thanks thanks!!
daniellumertz is offline   Reply With Quote
Old 03-15-2021, 01:19 PM   #3
todd_r
Human being with feelings
 
todd_r's Avatar
 
Join Date: Nov 2006
Posts: 861
Default

Very accomplished script, well done! I'll give it a try
todd_r is offline   Reply With Quote
Old 03-15-2021, 04:02 PM   #4
gxray
Human being with feelings
 
Join Date: Dec 2020
Location: Miami, FL USA
Posts: 396
Default

Holy shit, this is incredible! Well done mate!

I'm learning basic music (theory/composition, from Daniel actually!) and I will absolutely get a ton of use out of this -- thank you!
__________________
Seasoned codemonkey
Dunno a thing about making music (here to learn!)
gxray is offline   Reply With Quote
Old 03-15-2021, 04:33 PM   #5
beingmf
Human being with feelings
 
beingmf's Avatar
 
Join Date: Jul 2007
Location: Jazz City
Posts: 5,086
Default

Such a great idea! Poly features are incredible, really! Finally a way to practice (and get a grasp first) of n-tuplets. 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 offline   Reply With Quote
Old 03-15-2021, 04:36 PM   #6
bucca
Human being with feelings
 
bucca's Avatar
 
Join Date: Mar 2016
Location: near my POB
Posts: 396
Default

yapp, splendid idea [and the making too].
don't need it, but know a few who do .

gonna spread the links.
__________________
who's gonna water my plants ... if not you
bucca is offline   Reply With Quote
Old 03-15-2021, 10:09 PM   #7
JamesPeters
Human being with feelings
 
Join Date: Aug 2011
Location: Near a big lake
Posts: 3,943
Default

Quote:
Originally Posted by bucca View Post
don't need it, but know a few who do .
Hey! I resemble that remark!
JamesPeters is offline   Reply With Quote
Old 03-16-2021, 12:26 AM   #8
Pink Wool
Human being with feelings
 
Pink Wool's Avatar
 
Join Date: Apr 2020
Posts: 1,642
Default

Seems like a really cool tool! Thanks! 👌
Pink Wool is offline   Reply With Quote
Old 03-16-2021, 04:17 AM   #9
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 10,016
Default

Hi !


Very interesting ! Any pitch training in mind ? :P



I think reapack sharing would work better than github releases, it will be faster to update for everyone
X-Raym is offline   Reply With Quote
Old 03-16-2021, 06:13 AM   #10
souk21
Human being with feelings
 
souk21's Avatar
 
Join Date: Mar 2021
Posts: 502
Default

Great job! Thanks a lot for sharing.
I agree X-Raym, you should try to share it via Reapack
souk21 is offline   Reply With Quote
Old 03-16-2021, 07:23 AM   #11
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default

Quote:
Originally Posted by X-Raym View Post
Hi !


Very interesting ! Any pitch training in mind ? :P



I think reapack sharing would work better than github releases, it will be faster to update for everyone
I almost ashamed to admit I didn't know about reapack.
Awesome repo. I have put it up there!
etalmor is offline   Reply With Quote
Old 03-17-2021, 02:46 AM   #12
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default

Quote:
Originally Posted by souk21 View Post
Great job! Thanks a lot for sharing.
I agree X-Raym, you should try to share it via Reapack
Thank you! done - it's on ReaPack
etalmor is offline   Reply With Quote
Old 03-17-2021, 04:06 AM   #13
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 10,016
Default

@etalmor
Where ? don't see an index.xml file on your repo
X-Raym is offline   Reply With Quote
Old 03-17-2021, 09:31 AM   #14
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default

Quote:
Originally Posted by X-Raym View Post
@etalmor
Where ? don't see an index.xml file on your repo
Should be there:

https://github.com/ReaTeam/JSFX/blob/master/index.xml

Look for "erantalmor_MIDI Rhythm Trainer" (line 131?)
etalmor is offline   Reply With Quote
Old 03-17-2021, 09:45 AM   #15
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 10,016
Default

Oh ok it is on this repo ! nice ! Thx for your contribution. It is good way to be sure lots of people will have access to it easily.
X-Raym is offline   Reply With Quote
Old 03-17-2021, 11:30 AM   #16
Fabian
Human being with feelings
 
Fabian's Avatar
 
Join Date: Sep 2008
Location: Sweden
Posts: 7,478
Default

!WoW!

What a great tool.

Thanks for sharing.
__________________
// MVHMF
I never always did the right thing, but all I did wasn't wrong...
Fabian is offline   Reply With Quote
Old 03-17-2021, 01:21 PM   #17
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default v1.02 - some polishing

Hi,

A few improvements:

>> Improved Swing and Phase handling:
* Double click to reset
* Added "angle" value alongside decimal fraction
* Control-drag in jumps of 30 degrees (==1/12 == 0.08333)
* Swing range expanded to -0.92 => +0.92 (-330 => 330 degress)

>> Fixed a glitch playing double clicks when enabling the click.

>> Mouse wheel also control click on/off.

Enjoy!,
Eran
etalmor is offline   Reply With Quote
Old 03-18-2021, 01:52 PM   #18
gwok
Human being with feelings
 
gwok's Avatar
 
Join Date: Jun 2010
Location: canada
Posts: 3,396
Default

awesome! thank you!
gwok is offline   Reply With Quote
Old 03-24-2021, 02:04 PM   #19
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default

Hi folks

Added "Probability Density" Curves which show you where you are usually hitting the the grid. (Per lane)
This gives you a detailed picture of accuracy and variance accumulated over time,
(e.g. "I see my right hand is usually early on the 3rd grid line").

Enjoy!
Eran

Attached Images
File Type: png mrt2.png (31.0 KB, 2056 views)
etalmor is offline   Reply With Quote
Old 03-24-2021, 03:19 PM   #20
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 10,016
Default

Probability density ! Wow, it is getting really advanced !!
X-Raym is offline   Reply With Quote
Old 03-24-2021, 03:30 PM   #21
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 13,338
Default

Thanks! I'll have to start learning playing.
vitalker is offline   Reply With Quote
Old 03-24-2021, 03:57 PM   #22
souk21
Human being with feelings
 
souk21's Avatar
 
Join Date: Mar 2021
Posts: 502
Default

Nice update!
souk21 is offline   Reply With Quote
Old 03-24-2021, 10:04 PM   #23
daniellumertz
Human being with feelings
 
daniellumertz's Avatar
 
Join Date: Dec 2017
Location: Brazil
Posts: 2,026
Default

Woo excelente for microtiming training
daniellumertz is offline   Reply With Quote
Old 03-25-2021, 02:10 AM   #24
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 4,047
Default

Looks wonderful, thanks for sharing my friend.
TonE is offline   Reply With Quote
Old 03-25-2021, 02:30 AM   #25
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default Thank you dear forum members

I'm new in this forum and I find it very welcoming - I highly appreciate it - so thank you :-).
It's really fun writing the tool for myself and sharing it with others.
For drawing the "Probability Density" (or is it "Density Estimation") I have used FFT and convolution, which I haven't done ever since the university (that is, long ago) - nice to brush off some rust.

Any idea where I might spread the word beyond this forum?

Cheers,
Eran
etalmor is offline   Reply With Quote
Old 03-25-2021, 05:35 AM   #26
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 10,016
Default

Quote:
Any idea where I might spread the word beyond this forum?
Try the usual suspect,
Twitter, Facebook (and groups), Reddit (reaper section), youtube, Instagram...
X-Raym is offline   Reply With Quote
Old 03-25-2021, 01:25 PM   #27
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 4,047
Default

Did not try it yet, but it might be a fun addition if it could be gamified somehow, giving some scores, so you could play with friends, trying to beat each other or so. The higher difference the less score or the more negative score. Just an idea. Maybe you know Synthesia, which is another great midi based piano learning software. I shared there Hanon and Czerny some years ago as well, see its forum.
TonE is offline   Reply With Quote
Old 03-26-2021, 11:45 PM   #28
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default New Video is out!

Probability Densities and a tribute to Adam Neely's Offbeat Triplets video
https://youtu.be/E7nta-m94Xg
etalmor is offline   Reply With Quote
Old 03-27-2021, 02:34 PM   #29
Coachz
Human being with feelings
 
Coachz's Avatar
 
Join Date: Oct 2010
Location: Charleston, SC
Posts: 12,919
Default

Can you guys tell me what the applications of this tool are please ? Thanks !
Coachz is offline   Reply With Quote
Old 03-27-2021, 02:38 PM   #30
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 13,338
Default

Quote:
Originally Posted by Coachz View Post
Can you guys tell me what the applications of this tool are please ? Thanks !
There is a video in the first post.
vitalker is offline   Reply With Quote
Old 03-27-2021, 03:14 PM   #31
Coachz
Human being with feelings
 
Coachz's Avatar
 
Join Date: Oct 2010
Location: Charleston, SC
Posts: 12,919
Default

Quote:
Originally Posted by vitalker View Post
There is a video in the first post.
Yeah I watched some of it and it seem like using it as a metronome.
Coachz is offline   Reply With Quote
Old 03-27-2021, 03:20 PM   #32
vitalker
Human being with feelings
 
vitalker's Avatar
 
Join Date: Dec 2012
Posts: 13,338
Default

Quote:
Originally Posted by Coachz View Post
Yeah I watched some of it and it seem like using it as a metronome.
Yeah, kind of.
vitalker is offline   Reply With Quote
Old 03-27-2021, 03:23 PM   #33
daniellumertz
Human being with feelings
 
daniellumertz's Avatar
 
Join Date: Dec 2017
Location: Brazil
Posts: 2,026
Default

hey @etalmor by any chance were you in NIME 2019 in Brazil, I think I meet someone close to you there, don't know if it were you xD
daniellumertz is offline   Reply With Quote
Old 03-27-2021, 03:53 PM   #34
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default

Quote:
Originally Posted by daniellumertz View Post
hey @etalmor by any chance were you in NIME 2019 in Brazil, I think I meet someone close to you there, don't know if it were you xD
Nope - not me, though I wish I was :-)
Though, I do have co-workers in Belo in my day job.

Last edited by etalmor; 03-27-2021 at 04:03 PM.
etalmor is offline   Reply With Quote
Old 03-27-2021, 04:02 PM   #35
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default

Quote:
Originally Posted by Coachz View Post
Yeah I watched some of it and it seem like using it as a metronome.
Yes, it has the same purpose as a metronone - that is practicing rhythm. But the main difference is that this plugin gives you very detailed feedback about your performance. A metronome doesn't give you feedback at all.

For instance - since it filters out inaccurate notes, if you hear what your playing then you know you're playing it accurately. (Target accuracy is also controlled by "Error Bound"). And then there's the very detailed visual feedback.
etalmor is offline   Reply With Quote
Old 03-27-2021, 04:29 PM   #36
Coachz
Human being with feelings
 
Coachz's Avatar
 
Join Date: Oct 2010
Location: Charleston, SC
Posts: 12,919
Default

Quote:
Originally Posted by etalmor View Post
Yes, it has the same purpose as a metronone - that is practicing rhythm. But the main difference is that this plugin gives you very detailed feedback about your performance. A metronome doesn't give you feedback at all.

For instance - since it filters out inaccurate notes, if you hear what your playing then you know you're playing it accurately. (Target accuracy is also controlled by "Error Bound"). And then there's the very detailed visual feedback.
That makes total sense and sounds like a great tool. Thanks for the explanation!
Coachz is offline   Reply With Quote
Old 03-27-2021, 04:52 PM   #37
daniellumertz
Human being with feelings
 
daniellumertz's Avatar
 
Join Date: Dec 2017
Location: Brazil
Posts: 2,026
Default

Quote:
Originally Posted by etalmor View Post
Nope - not me, though I wish I was :-)
Though, I do have co-workers in Belo in my day job.
ohh ok! hahaha Is that I meet one guy that looked like you from Israel in the event...
daniellumertz is offline   Reply With Quote
Old 04-05-2021, 06:42 AM   #38
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default Version 1.13

Minor but useful changes:

* Keep state of training graph and probability densities between plays ("clear" clears both)
* Right click + drag to quickly mask on / off multiple grid lines.

Thanks,
Eran
etalmor is offline   Reply With Quote
Old 06-05-2021, 06:37 AM   #39
etalmor
Human being with feelings
 
Join Date: Jul 2009
Location: Israel
Posts: 19
Default Version 1.14 with error bound in milliseconds

Hi everyone -
Upon user request, added display of error bound in milliseconds,
e.g. Error bound 35% = +-87ms

This in effect translates the current bound to absolute time units, taking into account pattern length (beats), maximum divisions, and tempo.

Fetch version 1.14 from reapack or from my personal github.

Hope you find it useful.

Thanks
Eran
etalmor is offline   Reply With Quote
Old 06-20-2021, 12:18 PM   #40
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 4,047
Default

Wonderful, thanks for sharing. Now we need another one for singing monophonic pitch. There is already a pitch follower jsfx by saike, using yin algorithm. This could be a starting point. Then anyone could train rhythm, or pitch. In a few years someone will make this as well, I hope.

Especially I like how you added the scoring mechanism, gamifying it a bit. With pitch I was thinking mainly loading some reference singing audio file. You would listen to it over headphone maybe, then sing a long, and see how close you come to its pitch line. Again you would be scored how well you did.
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 11:12 AM.


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