control vinyl to MIDI?
Home 2023 › Forums › Digital DJ Gear › control vinyl to MIDI?
- This topic has 11 replies, 1 voice, and was last updated 12 years, 8 months ago by
nem0nic.
-
AuthorPosts
-
July 15, 2013 at 6:32 pm #42225
nem0nic
ParticipantNot sure what the point would be, unless you’re trying to use it in a non-DJ program. DJ software typically supports some kind of DVS operation, and that support is usually pretty optimized and compelling. MIDI jog support, on the other hand, is usually pretty lackluster. So turning the timecode around into MIDI for use in a DJ program would likely be a pretty big downgrade in performance.
July 16, 2013 at 4:45 am #42235DJ Vintage
ModeratorYeah, a bit more info on the reason behind what you are trying to accomplish technically would be good. Easier for us to yell something relevant.
Greetinx,
C.July 17, 2013 at 7:38 pm #42319Andrew Batz
ParticipantThe reason I’m asking, is because I’m finally getting some olde fashioned turntables, which I’ve wanted for a while.
I use Serato DJ with a DDJ WeGO currently, and while Scratch Live and DJ share a library and all of that, I don’t have the money or desire to get a RANE/serato interface.
I want to, if possible, use a vinyl timecode to core MIDI that I could use as an additional Serato control. (not for the track, but for FX among other things.) The big reason I want timecode to MIDI is that it would let me use the vinyl to control Logic Pro 9 (can’t afford that Version X yet) and Reason with this giant 12 inch dial. (I plan on using this for some mathematical based sound engineering involving the vinyl spin rate and external forces using geometry and physics.)
Does anybody have any luck taking a timecode vinyl for Traktor or Serato or some other program and using it as core MIDI?July 17, 2013 at 8:16 pm #42322DJ Vintage
ModeratorPretty much you are asking if there is a way to translate the AUDIO timecode and turn it into a midi CONTROL LANGUAGE-stream? I am not sure that is technically doable. I am trying to think what kind of midi code you’d need. Obviously it is possible to translate the movement of a platter on a controller to midi. But that is because midi understands things like direction (value increasing/decreasing) and speed (velocity). I don’t think midi has a way to determine position (other that the normal fader/knob/touchstrip/whatever value between 0 and 256, which would be way to low a resolution for a timecode record).
The entire trick here being that midi is a control language, increase value A by 5 with a speed (velocity) of Y. Timecode is still audio. Transferred from analogue to digital in a soundcard and then processed in the DJ software to provide the necessary parameters (moving forward, backwards and how fast, but also WHERE on the record is my needle). I just don’t think that midi has a way of providing that. Even if it did, you’d have to have a digital audio stream to midi conversion program which, to the best of my knowledge, doesn’t exist.
In Serato and Traktor DJ the signal is not midi either I think. It’s a separate piece of code (this is why DVS version are more expensive!) in the software that “listens” to the timecode and translates that to the aforementioned parameters. I’m pretty sure it doesn’t convert it to midi.
I am very interested to see if anyone has a different take on this and/or knows of way to accomplish this.
Greetinx,
C.July 18, 2013 at 6:49 am #42350Terry_42
KeymasterNope not doable. If you want to control stuff with vinyl you need a certified soundcard at least.
July 18, 2013 at 1:08 pm #42364D-Jam
ParticipantDeckadance originally tried to be an “all in one” solution where you could use timecodes from other companies. They never could get it to fully work. I remember they worked best with Ms Pinky (not even sure if it’s around) and had spotty success with the old Stanton Final Scratch.
I’m with others…if you want to use vinyl emulation, then buy a setup like Serato Scratch Live or Traktor Scratch. My personal choice is Traktor because you can use the software either with their timecode or with midi controls. I know Rane is working to unify Scratch Live with ITCH, but I’m not sure if they are there yet.
July 18, 2013 at 1:50 pm #42368nem0nic
ParticipantLet’s pump the brakes on the misinformation and get some facts straight here.
Pretty much you are asking if there is a way to translate the AUDIO timecode and turn it into a midi CONTROL LANGUAGE-stream?…..I don’t think midi has a way to determine position (other that the normal fader/knob/touchstrip/whatever value between 0 and 256, which would be way to low a resolution for a timecode record).
The OP wants to change timecode into MIDI – full stop. There’s no such thing as a special “control language” or “MIDI code”. And MIDI is just a protocol – a language. It isn’t sentient, and it doesn’t “understand” anything.
Now let’s talk theory for a sec. MIDI does actually have a way to “determine position”. That would be an absolute CC message. A 7 bit absolute CC message has 128 steps (0-127, not 256). And yes, this would be a low resolution message to pair with a DJ platter. In contrast, a 7 bit relative CC message can have extremely high resolution, because it sends a message “per tick” of your control. So if you designed your platter to have 3000 ticks per single rotation, it will send 3000 relative messages per rotation. This is why most dj products use a relative MIDI message for their platters. So if you wanted to have a very high resolution platter that also tracked absolute position, you could have it send both a relative message and an absolute message (this is also how DVS timecode works BTW). You could also use a 14 bit absolute CC message. Or just count ticks from the platter (since the resolution is known). There are other ways as well.
The entire trick here being that midi is a control language….Even if it did, you’d have to have a digital audio stream to midi conversion program which, to the best of my knowledge, doesn’t exist.
There is indeed an A/D conversion. From there the software’s timecode processing code calculates things like play position, velocity, direction, etc. But this takes time and uses resources. The great thing about the potential of controllers is that they can eliminate that part of the processing. They already transmit that data in a digital format.
So, why is this “theory”? Because (A) the OP wants to use it to control Logic and doesn’t need a high resolution message or absolute position tracking, and (B) because I don’t know of any DJ software that actually makes use of MIDI platter data more sophisticated than a basic relative CC message.
So what we’re looking for is something that can convert timecode into a MIDI CC message that can be used in other software. I don’t know of any “off the shelf” solutions, but I know it can be done. If I were the OP, I would look at the MAX/MSP community. I’m sure many people have figured out how to do what you want, and I’ll bet some of them even have off the shelf code ready to use. Another programming environment you might want to look at is Reaktor. Those guys can be very clever as well.
And with these solutions, you won’t need to buy a certified audio interface.
July 18, 2013 at 2:28 pm #42370DJ Vintage
Moderatornem0nic, post: 42525, member: 5286 wrote: Let’s pump the brakes on the misinformation and get some facts straight here. …
Didn’t mean to me misinforming and stand corrected where necessary. Thanks for the clear explanation. Learned a few more things, yet again. Not bad at my age :-).
Greetinx,
C.July 19, 2013 at 7:02 am #42398Terry_42
Keymaster(B) because I don’t know of any DJ software that actually makes use of MIDI platter data more sophisticated than a basic relative CC message.
You are actually wrong there. If you have good software integration with your controller non of the highend softwares (Traktor, VDJ, Serato) actually use MIDI for their platters. They use full resolution (whatever that word means) HID protocol to get around the lack of position data in MIDI. This is also why they insist to use their timecode with their certified gear to work as the whole timecode – soundcard – software thing has most of the time nothing to do with MIDI.
So to translate the quite complex timecode into MIDI is not an easy task. However there may be some old timecode solutions around that might do the trick and as far as I can tell VDJ’s solution seems to be the most simple up to date solution.July 19, 2013 at 2:11 pm #42417nem0nic
ParticipantIf you have good software integration with your controller non of the highend softwares (Traktor, VDJ, Serato) actually use MIDI for their platters.
Actually yes, they do. The NS7 is a great example.
They use full resolution (whatever that word means) HID protocol to get around the lack of position data in MIDI.
There is no such thing as “full resolution HID”. HID is a protocol all it’s own, and the beauty of HID is (among other things) that instead of being forced into either a 7 bit or 14 bit message, HID allows you to define things like message resolution to specifically match your controls.
And no, the reason they use HID IS NOT to get around the lack of position data in MIDI. Because again, an absolute CC message gives position data. Hardware developers use HID because it allows them much more flexibility in the data output. Being able to (for instance) drive RGB LEDs is tricky with MIDI. You could use a SYSEX message, but not all DJ software uses SYSEX. You could use 3 messages (one for each color) to drive each led, but that would be 3 different messages taking up 9 bytes. With HID, you could send button state and RGB color with 4 bytes. I’ll add a caveat here and say that it isn’t quite as cut and dried as this, and there are often times that MIDI is actually less bandwidth intensive than HID. But the gist of it is that HID is very flexible.
This is also why they insist to use their timecode with their certified gear to work as the whole timecode – soundcard – software thing has most of the time nothing to do with MIDI.
Manufacturers insist on use of their own interfaces because it allows them to optimize performance by limiting the hardware they work with. It is also an effective way to deal with software theft.
So to translate the quite complex timecode into MIDI is not an easy task.
Timecode is no mystery. It’s been used for years, and there are MANY people who have managed to write software to interpret it for use with other things. That includes translating it into MIDI.
However there may be some old timecode solutions around that might do the trick and as far as I can tell VDJ’s solution seems to be the most simple up to date solution.
VDJ’s solution has absolutely NOTHING to do with the OP’s desire to convert timecode into MIDI. So I’m not sure why you’re even bringing it up. This isn’t a thread about “what’s your favorite DVS” – it’s asking how someone could translate timecode data into MIDI data.
July 19, 2013 at 7:43 pm #42423nem0nic
ParticipantIf you have good software integration with your controller non of the highend softwares (Traktor, VDJ, Serato) actually use MIDI for their platters.
Actually yes, they do. The NS7 is a great example.
They use full resolution (whatever that word means) HID protocol to get around the lack of position data in MIDI.
There is no such thing as “full resolution HID”. HID is a protocol all it’s own, and the beauty of HID is (among other things) that instead of being forced into either a 7 bit or 14 bit message, HID allows you to define things like message resolution to specifically match your controls.
And no, the reason they use HID IS NOT to get around the lack of position data in MIDI. Because again, an absolute CC message gives position data. Hardware developers use HID because it allows them much more flexibility in the data output. Being able to (for instance) drive RGB LEDs is tricky with MIDI. You could use a SYSEX message, but not all DJ software uses SYSEX. You could use 3 messages (one for each color) to drive each led, but that would be 3 different messages taking up 9 bytes. With HID, you could send button state and RGB color with 4 bytes. I’ll add a caveat here and say that it isn’t quite as cut and dried as this, and there are often times that MIDI is actually less bandwidth intensive than HID. But the gist of it is that HID is very flexible.
This is also why they insist to use their timecode with their certified gear to work as the whole timecode – soundcard – software thing has most of the time nothing to do with MIDI.
Manufacturers insist on use of their own interfaces because it allows them to optimize performance by limiting the hardware they work with. It is also an effective way to deal with software theft.
So to translate the quite complex timecode into MIDI is not an easy task.
Timecode is no mystery. It’s been used for years, and there are MANY people who have managed to write software to interpret it for use with other things. That includes translating it into MIDI.
However there may be some old timecode solutions around that might do the trick and as far as I can tell VDJ’s solution seems to be the most simple up to date solution.
VDJ’s solution has absolutely NOTHING to do with the OP’s desire to convert timecode into MIDI. So I’m not sure why you’re even bringing it up. This isn’t a thread about “what’s your favorite DVS” – it’s asking how someone could translate timecode data into MIDI data.
-
AuthorPosts
- The forum ‘Digital DJ Gear’ is closed to new topics and replies.