On The Inside

On The Inside

Friday, November 20, 2015

Technics 1200s, the Last Repair

If you DJ, and you play with vinyl, then you've probably had to deal with the annoying repair of the RCA cables that are permanently attached. I've repaired these numerous times for friends. Recently, my own 1200's started developing cable problems that can't be fixed by just wiggling the cable a little bit :)

I don't enjoy this type of repair, and I don't think that it should be necessary, so I decided to just modify my decks to not have to deal with this ever again. In the process, I switched my decks to self grounding via the signal connector. This is a potential safety and noise issue, but with how we're using decks these days, I'm not convinced that either are really relevant. That said, I like to live dangerously, "you" shouldn't do this without consulting your lawyer, your city or county building codes, an electrician, your grandmother, a priest, and perhaps a fortune teller just to be on the safe side.

Basically, I'm going to add some jacks to my turntables so that I can just use any set of RCA cables, and in the process, I'm going to eliminate the ground wire.  If you take your decks apart, you will find the tonearm area underneath a steel cover. It's removed here, and I have the new cover with the jacks and wires soldered in place.

The steel cover could be modified, but I think that this is neater.
I used a scrap piece of PC-Board material to make the replacment cover, and drilled a couple of holes to mount the RCA jacks. Pay attention to the positioning, you don't want to bump into the circuit board or any of the tonearm metal. The lines on the plate were to help me position the holes. The circle is drawn with the plate and bottom cover in place.

In the next picture you can see the plate bolted into place. Remember kids, red is right, everything else is left. You want to mark them to avoid strange phasing issues later when you're using two decks. It doesn't really matter much otherwise. 

With the back cover in place, I hope that you can appreciate the wisdom of taking the time to mark the opening.  It's working perfectly, no more dropouts or mysterious hum in the middle of a session.  Cables may still go bad, but now it won't take the better part of an afternoon to repair them, just unplug, toss, and replace.

Thursday, October 8, 2015

Reaktor 6 Blocks - Multi BreakPoint EG

I'm really enjoying a lot about Reaktor 6. The new Blocks format is, on the one hand limiting because they are monophonic, is still a lot of fun and great for rapid instrument prototyping. They do remind me a lot of working with the Nord Modular.

In Reaktor 5 one could do reasonably rapid prototyping with one of two macro collections provided by NI. Both the building blocks collection and the classic modular collection of macros behaved similarly to blocks, they just aren't quite as sexy looking, or sounding.

Since blocks are new, there's still a lot of room for improvement in the diversity of available tools. For example, there were some very flexible and complex tools in the aforementioned collections. One that comes immediately to mind is Erik Weigand's multi breakpoint envelope.

I converted this macro to blocks format, which wasn't too bad since most of the heavy lifting in Erik's macro is done in a core cell. However, it's no small task to get all of the bits of the new user interface elements lined up, something that I wish NI would work on improving.

I've added modulatable time scale and shape factor, added switchable velocity sensitivity, and change the color scheme to be similar to the bento blocks. 

It's free for Reaktor users and you can get it in NI's User Library. Please feel free to leave any comments or feedback, bugs, issues, feature requests, either in a comment here, the user library, or in NI's Reaktor forum.

Sunday, August 30, 2015

Getting Started with High Level Plugin Design: Synthmaker/Flowstone, Synthedit, Max for Live, or Reaktor?

A lot of people are interested in getting started with synthesizer programming but are unsure about how to get started. I'm a computer scientist by training and have no problems using low level languages like C or C++. However, even for the experienced, that can be time consuming. For the initial high level prototyping, I tend to still prototype in Reaktor.  I don't think that there's a better choice for this kind of work. If you want to consider some basic idea for a plugin, you can probably find the pieces of that idea already in the library. You can also integrate various testing tools into the prototype environment itself. If you choose to start with Reaktor, then I think that the most direct comparison and simplest transition is to Synthedit. You will find the environments similar on a basic level. An advantage of Synthedit is that building externals is fairly straightforward.  This combination gives you a fairly nice path as follows:

1) Develop ideas using high level prototyping in Reaktor
2) Build prototype of fixed idea in Synthedit
3) Build externals for each of the components in your synthedit prototype.
4) Merge previous externals into a single synthedit "synth/effect" external.
5) Transition to SDK using your synthedit synth/effect external as a starting point.

You could skip right to step 2, but, I find Reaktor so much more immediate and complete, that I find early stage prototyping less annoying in Reaktor. You will also find that Reaktor is fantastic just to have as an effect and synth plugin. Really, for anyone that creates music and wants to go down this path, I think Reaktor is THE starting point. The reason that you don't skip right to step 4 from 2 is that the existing modules in Synthedit allow you to add your C/C++ code one module at a time. For example, if you're building a synth, after you get it working fairly close to your goal, maybe you want to build a specific filter. You can develop this module while keeping all of the standard Synthedit modules in place. You can release this at any time, of course, choosing to incrementally develop more and more of your synth in C/C++. When you have the core developed, you can then transition to a cross platform version of your synth.

Synthmaker: I like synthmaker, it has become Flowstone. Synthmaker/Flowstone will get you to a nice looking plugin much faster than synthedit. You can have something to upload and give away with a weekend's worth of work.  Underneath the hood, however, it's quite a bit more complicated and it doesn't have the nice path that synthedit does to creating a C++ plugin. That said, it has a very nice DSP language that you can use to code up blocks and I've found this helpful for algorithm experimentation. It's often much more immediate at a low level than Reaktor because you don't have to drag a bunch of blocks around in order to add two numbers. Is it worth the price of entry?  For most people, I don't think so. On the other hand, If you don't want to learn C++, you do want to create 3d modeled looking synths with a minimal of effort, and you are willing to accept the stock controls, synthmaker is the fastest way to get to a good looking windows plugin.  If you want to go beyond that, you should measure its utility by asking whether what it does well is worth it to you for some part of your process. If you want to get the basic feel of Synthmaker, then you can get SynthMakerCM from most issues of computer music magazine. It has many demo-ish limitations, but, it's cheap and you can see what it can do at a basic level. IIRC, you can generate a VST with SynthmakerCM as long as you don't mind the UI having a SynthMakerCM logo on the front.

Max: I love MFL (max for live) primarily because it allows me to build user interfaces that work in the live environment. If you already own and use live and want to upgrade to suite, then this is probably worth the investment. There are quite a few practical elements in the MFL library so it's not bad for that first prototype, but, it doesn't translate as well to synthedit as Reaktor does as there are quite a few work/thought-flow differences.  If you have full blown Max there is a feature similar to synthmaker called GEN that allows you to write modules in a terse DSP like language. I tend to prefer Max+Gen, as opposed to SynthMaker, for this kind of experimentation now, but this doesn't come with MFL and I don't know if you can buy just the Gen license to add to MFL. In any case, it's an expensive route and I think Max has quirks that are in some ways more difficult to master than Reaktor/Synthedit; granted, some things are decidedly easier.  Max does allow you to use externals so it can be a bridge to coding your own fully C/C++ plugins, although for me, it's not quite as straightforward as Synthedit.

Pd: Pd is just open source max with a lot less of some stuff and some more of other stuff. If you think that you might get on with Max or MFL, download Pd first, it's free.

tl;dr: Reaktor is the place to start, Synthedit provides the most straightforward natural path from "Reaktor idea" to "C++ plugin." SynthMaker provides the shortest path to released plugin that looks good, but it doesn't provide a natural path to C/C++. Max/MFL/Pd are cut from the same cloth, they have a different thought/work flow, some say higher learning curve, MFL is a natural fit for Live users and these tools provide some path to C++ plugin development, but it's not as straightforward as Reaktor+Synthedit.