By
Jamon
Sat Jan 07, 2012 6:59 am
I started with 100% software in the '90s, and am familiar with the problems. There are some methods to minimize latency getting in the way of composition.
If you use a high sampling rate, and the minimum soundcard buffers, in something fast like PCI bus, along with MIDI interface with optimized low-latency drivers, then you can get the latency down as low as possible.
In case someone doesn't know, the latency in this situation is the time it takes from the moment your finger triggers the pad or key, until sound is coming out the soundcard outputs.
Last I checked, there is a built-in latency in the OS itself, that is currently impossible to bypass for this purpose, so even if you can get the MIDI interface latency down, and the audio interface latency down, you still have to add some other factor to those two. No matter what, you're probably going to have milliseconds of latency even with the best setup available.
Then, there's also a kind of fluid feel, where latency isn't exactly the same all the time. There's a utility you can download to test the baseline, and it's a coin toss whether or not your system is stable or not. Some have more inherent latency than others, and some shift around. It's not much, but there appears to be a lot of variables, and working entirely in software with external controllers can often feel like walking on a waterbed, but it's subtle.
The bounciness is the biggest problem, because with something that is solid, like playing guitar in front of an amp across the room, you can adjust. But not only isn't the latency absolutely solid to begin with, but you often have to increase buffers once you've overloaded a project with too many instruments and effects, so then you have to readjust to a whole new feel.
What I used to do, is freeze tracks. First get the latency down as tight as possible, then setup your virtual instrument without any effects. You record MIDI, which then triggers the instrument when you replay. Whenever you're recording a performance, you want to minimize the signal chain, so it only goes through the sequencer and single dedicated instrument.
After you have the MIDI, you're no longer performing, so latency doesn't matter. Now you can add effects, and tweak it as much as you want, even increasing the buffers if it crackles when you play. Once you get that track how you want it, freeze it. Some sequencing software have built-in buttons on the tracks, to automatically record the signal chain to a .wav, and unload the plugins from memory. You can unfreeze any time you want to tweak it, then refreeze.
If you don't have a freeze button, then you can use a recording VSTi. Place it last in the chain, and it will record to a .wav file when you play the project. Then you can mute that track, and play the one with the .wav file, which brings you back to having no processor-intensive plugins being used.
Now you can repeat for more tracks, and no matter how many effects or intense instruments you use, you're just going to have .wav files playing as you perform the next track. This allows you to always use your minimum latency settings, and depending on the software instrument, it can feel workable.
If using a sampler, with MIDI pads, don't use effects in the sampler during performance. Then all it will do is trigger .wav files, which is fast. Once you've recorded the MIDI, you can add effects, and then freeze. Depending on your setup, you may have to then load another instance of the sampler into the next track to continue using it, but when the other one is frozen and muted it won't utilize that instance's resources.
With this approach, you can build up complex projects, with minimum latency problems. You can even skip some of the best practices, and begin adding things like automation and global effects, and it'll probably still be lightweight enough not to overload your minimum buffer setting. But if it does, back off, and wait until the project doesn't need anymore more performance data.
Once everything is performed, you can max out your buffers, and it doesn't matter anymore. Even if it takes seconds before your project begins to play after hitting the play button, it still is synced and you're not performing so don't need immediate feedback.
This works, good enough, to compose complete projects, start to finish, in pure PC software, with nothing but controllers.
But I didn't like it anymore. Which is one reason why I bought self-contained hardware like the MPC. There's still latency in synths and samplers, but the hardware was designed not to go out of its limits, so I never have to hear my audio crackling. Mostly that problem disappears from awareness, and you can get on with more important things.
PC software is actually way better in regards to recorded latency. Even if your performance latency is seconds, so you hit a pad and it takes seconds before you hear the sound, the software still can compensate for that if you set it up correctly. Then when you play it back, the stuff you recorded will align like you heard it with the playing back tracks.
But with all digital hardware multitrack recorders, there's no latency compensation, so when you record track 1, then play that back while recording track 2, they will play back out of sync slightly. I was disappointed, that when I use JJOS like I did PC multitrack software, the AUDIO tracks have a random and large amount of delay at the start. So even with hardware synths and real instruments, that have lower performance latency than PC MIDI, the tracks that play back aren't in perfect sync, because of uncompensated recording latency.
Nothing is perfect.
The MPCR is an integrated solution that bundles controller, audio interface, and software into one, which doesn't change anything about the way that setup functions. If anything, latency will be higher than it could be, because you're not selecting a special and costly set of tools that are as optimized as possible. But even if they did optimize it beyond what you could do with a modular approach, it is going to have performance latency.
If you use it like I see many videos showing, like in the MPCR and MPC 500 promos, then it probably won't be much of an issue. It seems like many people simply load up straight samples, and hit the pads, recording with quantization. Triggering .wav files, without intense effects, is something even a mobile phone can do. There is probably more latency between the time you hit the pad and hear the sound than in a self-contained MPC, but, most people probably won't notice, and maybe can't.
If however you intend to setup lots of effects on multiple pads and tracks, maybe even some VSTi synths, then you're going to need to increase buffer bucket sizes, to fill more stuff, and like it takes longer to fill a bigger jug with a hose, it's going to take longer to hear that audio dump out. It could get to the point that it's irritating and interfering with your rhythm. Especially if you're a talented drummer, with tight timing.
But we don't know yet. It might be, that even if you don't use lots of effects, that the setup Akai ships has an innate latency minimum that's already high enough to feel. Even with a blank project and fast computer, it's possible you could hit a pad and notice a tiny delay. You could wear headphones, and maybe that'd get rid of it enough. Or maybe it's tight, and you just have to wait to add effects until you've completed the project's performance and composition.
It's not something I'm eager to have to worry about again. Even though my hardware synth is digital and has some latency, and the MIDI between it and the MPC has some tiny, and the MPC itself when recording audio tracks has some latency, and the sound coming from my monitors to ears has some latency, it still ends up feeling solid enough not to have to think about it constantly. With PC audio, it was something I was managing frequently, and having to base my workflow around.
But there's advantages to the PC route, and disadvantages to the dedicated hardware. So, who knows, I might even end up with something like the MPCR if they did it right.
To test for latency, you need other equipment you can trust. You need a way to record the time it takes from the moment you strike the pad, until sound comes from the outputs. If someone wants to test this with the MPCR, and compare it to the MPC editions using AkaiOS and JJOS, then we'd know for sure just how big of an issue it is. For all you know, the 1000 with JJOS has more latency than MPCR. Then all this stuff people are saying about the MPC having super tight response is false. Like the myth of the "MPC swing". Beliefs color what we hear and experience in the audio realm, you can't trust it, so measure it.
It'll be nice to see the first measurements of the MPCR latency. It'd be even nicer if a representative of Akai could let us know. People disrespected Beat Kangz about the Beat Thang, but Aja told me the latency of their hardware. That counts for something. If Akai won't tell, what's that say? They said they don't think it's a limitation to build the MPC around the PC without its own brain. So show us. Measure both the MPC and MPCR response times and let's have some facts to base our decisions on.
It's probably low enough, where most people won't care. But it'd be good to know the specifics.