Simple Ruby DJ controller plate / Turntable
Posted: Thu Jun 04, 2015 11:08 am
Here's a ruby module for input from a turntable / plate on a dj mixer controller.
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.
. 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
(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!
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.
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
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!