Scratching began as a practical means by which DJs could cue records. (So say originators like Grandmaster Flash; if you’re interested in the history, check out the fantastic documentary Scratch — trailer above.) But something about the gesture, the mechanical feeling of scratching, and all that history has made the turntable compelling as a controller. It’s even taught as an instrument at Berklee.

So, what if you want to scratch for purposes other than conventional DJing?

Getting at Timecode

image Digital vinyl systems like Serato Scratch LIVE and Native Instruments Traktor Scratch are designed for DJs. Part of the whole advantage is that you get an integrated system with vinyl, decoding capability, audio interfacing with the computer, and software for DJ functions. If you want to take the turntable to other frontiers, you have to find a way to get the timecode data from the vinyl directly and do something different with it, like control an instrument or scratch visuals. (Only recently did a big-name, mainstream DVS, Serato, take on visuals, as seen on Create Digital Motion, and even then it makes some assumptions about what you want to do.)

We’ve seen a few examples of how to do this:

  • Ammobox, an open-sourced, free Reaktor ensemble from Nathan Ramella, breaks the rules of how timecode decoding is supposed to work in a wonderful way, enabling something he calls "polyphonic scratching." Since it sends MIDI, you can control other stuff with it, and since it’s built in Reaktor, you can customize the workings of the ensemble or integrate it into your own creations.
  • Ms. Pinky vinyl comes with a Max/MSP external for use in patches. The object also works with Torq vinyl; see comments. And talk about non-conventional DJing: the tech has produced art installations made with turntables in tree trunks and turntable-controller vibrating furniture, pictured top right. (Does anyone know if it’s possible to port the Ms. Pinky object to Pd as well as Max?)
  • xwax is an open-source, Linux-based vinyl emulation software. Unlike the other two options here, it is actually intended for emulating digital vinyl systems on Mac and Windows; there are even open source drivers for Rane and Stanton audio interfaces. But to many of us, that isn’t nearly as interesting as doing something different with the vinyl.

A New External for Digital Vinyl in Max, Pd

image Niklas Klügel writes to let us know he has a new alternative. He’s done a "quick hack" of wrapping the timecode-decoding code in xwax for Max/MSP and Max’s open-source cousin, Pure Data (Pd), for support on Mac, Windows, and (Pd only) Linux. The ability to support both Max and Pd comes from a helpful cross-platform development layer for C++ programmers called flext.

The result: you’ve got an object you can use in your Max and Pd patches that supports Serato (2nd edition) and Traktor Scratch vinyl. You get output for pitch and relative position.

Decoding timecode is a non-trivial problem in a number of ways, so there are some glitches — Niklas reports some trouble determining the start point of a record. (He explains, "I do not exactly know whether all vinyls start with the same timecode; I could have hardcoded it into the application (taking that from the one I have) but on the other hand you have a tad more freedom regarding the resolution of the positioning.")

But since part of the idea is to change the way the vinyl works, that may be okay. And if you do start the record at the beginning to get the start point, absolute-style positioning seems to work, as well. Niklas says the idea of this, far from emulating existing DJ systems, was to make an expressive controller. He writes:

I wrote the external to have control over the pitch and stretching/interpolation of samples to do glitchy sounds using the turntables while having somehow accurate instant control. It works surprisingly well. It’s somehow funny to see/hear when simple things turn out to be very expressive – musically.

This is a first hack, not an official solution, so part of why I bring it up is I hope the CDM Army will go out and test the thing, particularly on the just-released Max 5. Coders, you may want to have a look at xwax’s timecoder, too; it apparently works very well, and fits sveltely in about 600 lines of code.


But is it Legal?

A number of readers wondered about the implications of an announcement this week that Native Instruments had settled a patent dispute and would officially acknowledge and license N2IT’s vinyl technology. (N2IT originated the FinalScratch digital vinyl system, later marketed by Stanton with software from Native Instruments.) Will N2IT decide to protect its patent with open source projects like xwax, or competing vinyl systems like Serato Scratch LIVE? Honestly, I don’t know, and anyone who does know is unlikely to say anything given the possibility of ongoing legal action. N2IT did sue Native Instruments, even though NI has built its current Traktor Scratch on a new codebase and with a different system for vinyl timecode, so I would suspect it’s possible someone like Serato could wind up with a case of their own.

The difference with xwax and Ammobox, however, is that these systems are simply decoding information already printed on the vinyl. vinylcontrol~ and Ammobox just do the decoding, so they really aren’t complete digital vinyl systems — part of what I find appealing, for different kinds of projects. With other projects that decode vinyl (PCDJ and Deckadance, for instance), my guess would be that decoding solutions are relatively safe. But I’m not a patent lawyer, and I don’t know what N2IT is planning.

Go Ahead, Touch It

In the meantime, though, what’s exciting here is to create new projects that do things with vinyl that haven’t been done before. After all, experimentation and rule-breaking (don’t touch the records!) is how scratching got started in the first place.

Vibrating furniture, anyone?

  • Also worth noting: M-Audio's Torq digital DJ system licenses Ms. Pinky technology, so the Torq records work with the Max/MSP external.

  • Good call, Jesse. I did think there were some subtle differences, though, in Torq's vinyl, i.e., they changed something when they licensed it … but it still works as-is with the external?

  • tobamai

    "The Torq vinyl is almost identical to the Ms Pinky Generation 4 vinyl. The only difference is that the digital position values encoded on the Torq vinyl are scrambled relative to the digital values on the Ms Pinky Generation 4 Vinyl."

    – from the pinkstah over on the ms pinky forum

    My experience is that torq vinyl works fine as gen 4 vinyl in relative mode (obviously, if the timestamps are scrambled, it won't work right in absolute mode)

  • Ah, I couldn't remember, but that sounds right.

    And, of course, for a lot of these kinds of applications you don't really care about absolute positioning, because you're turning the turntable into a controller. Then again, the vinyl isn't expensive, so it could be worth picking up a couple of actual Ms. Pinky records. (Plus then they can be pink.)

  • I still remember the first time I saw the EJ MIDI turntable (developed at MIT by Justin Kent and Nate Janos, among others) – it used an optical system, with crazy black-and-white custom vinyls, to scratch Quicktime movies. I thought to myself, "Awesome, but too bad it doesn't work with my regular records somehow".

    I've been following the digital vinyl scene ever since (Ms. Pinky, Final Scratch, Serato, Torq), and was always a bit put off by the fact that they all required this layer of timecode interpretation – always seemed inefficient to me.

    Just recently I saw a Numark product that perked my interest again – the X2 hybrid turntable. It's a fully functional vinyl turntable, that also uses the platter as a control device for CDs.

    When someone makes a working turntable that also outputs control data (such as MIDI) directly from the hardware (platter speed / direction, tonearm position, etc.) – I'll be first in line to buy one. Finally, I will have the ability to mix, pitch, and scratch my existing records and simultaneously send control data to computers / video / what-have-you.

  • beatfix, I believe with this max/pd app this might be close to what you're looking for. Of course it's not a self contained piece of hardware, but you might be tempted to forget that once you see the results.

    Aesop Rock's dj had a routine scratching video samples on ace's last tour. It was really fun (scratching an old 50's coffee commercial).

    Also, isn't there some kind of DVD faxcimile of CD decks that puts out video? I'm pretty sure that might get close to what you want- google around.

  • Wallace Winfrey

    Re: Torq vinyl, I believe that support for all iterations of MsPinky vinyl, including Torq, is included in the Max objects, even for absolute mode. Full support for the Torq vinyl is also present in the SDK.

    "Only recently did a DVS, Serato, take on visuals…"

    Actually, Peter, I believe MsPinky was scratching visuals with MaxiPatchAV from the get-go…so technically scratching visuals with DVS has been around almost as long as DVS itself 🙂

  • nkem


    you want what?!

    You want a turntable that sends midi data to the computer based on "the hardware (platter speed / direction, tonearm position, etc.)" regardless of what the vinyl is doing? This doesn't make any sense to me.

    You don't cue a record with the platter… and you certainly don't scratch with a platter. Some djs only change the speed of a record with the platter & speed controls, but every dj has to touch teh vinyl at some point or another… some more than others.

    Never heard anyone with such a request before.

  • @nkem – You're right, instead of "platter" I should have said record. It just kills me that there's no way to read and interpret vinyl control techniques while using real records.

    The Numark X1 is interesting in that it uses a special spindle and "control platter" to allow for vinyl-style scratching of CDs, but it's not the same thing as scratching a regular record, and there's no obvious way to do it. Clearly we need smarter people than me working on this issue… 🙂

  • Wallace, true … we've mentioned Ms. Pinky ad infinitum. I should have said "mainstream DVS." Of the sort of major packages, Serato was the first. Even they're doing it as a plug-in, though, so I don't know whether that "counts" or not.

  • Regarding other vinyls than finalscratch and serato: Most vinyls I have seen use a 1khz wave with a phase-difference of 90 deg on the channels. So determining the direction is a matter of comparing which waveform on the respective channel is leading. Determining the pitch is comparable to comparing the zero-crossings to the ones expected on the original waveform at 1khz – repectively at 33rpm. So the only parameters for pitch detection are: phase of the waveform (starting either at 0 or 180 deg) and the frequency of it. So I'd be surprised if exact pitch information couldn't be extracted from any of the available timecoders regardless of the used timecode-vinyl by adjusting the input channels/exchanging them and multiplying the decoded pitch by a constant factor. Regardless of this, I am interested to see how the timecode for the other vinyls is encoded.

  • ChuckEye

    I'm not certain, but I believe one incarnation of Laurie Anderson's magnetic tape violin bow used control code instead of audio. Odd to think it's taken this long to do it with turntables…

  • Hi Guys,

    the MIDI OUT paradigm hahahahahaha:

    About Hybrid x2 or Gemini CDT-05 I have some ideas to how to transform into vinyl vector Translator. (hardware)

    If you are interested please contact me:

    skype: Davidradionica.

    Video Turtablism is older than Ms. Pinky (five or six years old) Serato are stable products but not innovative… Vestax has the c-one family midi IN (useless for scratch recognition use)

    And there is OUT THERE a appz which could translate this vector into a TTM (Turntable Transcription Method):

    I need some help if you want to play all these things without sell your "oldfashioned" (rock) turntables…

    davidradionica (skype)

  • John Cabot

    Peter: An interesting twist is that the Traktor Scratch timecode works the same way as the Serato timecode. They're both LFSR-based using different seeds, and one is at 2 kHz instead of 1 kHz.

    If N2IT got Native Instruments to settle, I don't see why they couldn't get Rane to settle as well. (Perhaps the regions where the patents have been granted have something to do with it.)