Support

If you have a problem or need to report a bug please email : support@dsprobotics.com

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

NEW REGISTRATIONS - please contact us if you wish to register on the forum

Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright

Simple Ruby DJ controller plate / Turntable

Post any examples or modules that you want to share here

Simple Ruby DJ controller plate / Turntable

Postby primate » Thu Jun 04, 2015 11:08 am

Here's a ruby module for input from a turntable / plate on a dj mixer controller.

simple turntable 4.fsm
(43.02 KiB) Downloaded 1170 times


It outputs whether the plate is pressed, relative position, velocity forwards and backwards, position relative to 360 degrees of rotation for a rotating image and has a sensitivity modifier for the amount of effect that rotation has on the turntable. It also shows raw MIDI input, to easily identify cc and note number from the hardware controller plate.

It will probably need setting up for the cc input from controller movement and the MIDI note on and off from when the plate is pressed. It's currently set to the left turntable of a Numark Mixtrack Pro.

The standard .png that i've used for the plate is pretty ugly, but keeps the size down, I had a beautiful image made up, but it multiplies the file size by 10. :roll: . would probably be better to render the plate in ruby with an optional image where the record label would be.

Not included here are some experiments where I've had it set up to a timer giving fake PPQ which turns the platter as the PPQ progresses, pauses when the plate is pressed and modifies when it moves. I've also made some routines to simulate real turntable behaviour, like differentiating between using movement to change absolute position (scratching) and to speed up or slow down play (tempo nudging) by either flicking or holding a button or by turning the platter without pressing it and making optional tempo curves for stop and start.

I don't really use flowstone for sound :shock: (just MIDI), so if somebody is interested in integrating this with sound in some way please let me know, I'd love to collab on getting a serato like VST up and running. Is this even possible with flowstone? :?:

Any suggestions as to what else it could be used for or how the code could be improved please let me know! Gimme some feedback folks! 8-)
primate
 
Posts: 22
Joined: Thu Dec 19, 2013 10:42 pm

Re: Simple Ruby DJ controller plate / Turntable

Postby tulamide » Sat Jun 06, 2015 1:03 am

Hey primate,

I took the time to arrange the code a bit. Nothing spectacular, but you should use indentation, if you want others to be able to follow the program flow ;)
Also, I re-arranged the conditionals. Before, each incoming event had to be checked 4x with 4 conditions each. Now they only get deeper into the conditional structure, if they met the conditions part after part. This saves some cpu cycles per event (not that it matters much, but hey :mrgreen: ).
Finally I made an attempt at realtime drawing the circle. It isn't very detailed, just to give you a start.

Hope it helps.
Attachments
simple turntable 4 (tula).fsm
(134.15 KiB) Downloaded 1100 times
"There lies the dog buried" (German saying translated literally)
tulamide
 
Posts: 2714
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: Simple Ruby DJ controller plate / Turntable

Postby primate » Sun Jun 07, 2015 10:04 am

Thanks man! I really appreciate that.

I think that all of the ruby I've put in my VSTs has conditionals done how I'd done them in this example, so it's a great insight to know that I can go back and make it all more efficient.

Everything is certainly easier to follow and generally leaner and meaner. Thanks a lot mate.

I'm going to have a bash at getting it combined up with the wav player, if I make any useful progress I'll put it up.
primate
 
Posts: 22
Joined: Thu Dec 19, 2013 10:42 pm


Return to User Examples

Who is online

Users browsing this forum: No registered users and 21 guests