problem with delay on MIDI controller keyboard

  • Thread starter Thread starter nicklikesfood
  • Start date Start date
N

nicklikesfood

New member
When I hit the keys on my M-Audio Radium61 MIDI Controller, there is a significant delay before I hear the sound coming out of my computer's speakers. What's going on? There is an option called "Aftertouch," but turning it up or down has no effect. Help!
 
well, it depends on many factors like...
1) Soft synth heaviness (how big are the samples)
2) CPU speed
3) Amount of RAM
4) RPM of Hard Drive

This info might help finding the weakest link.
 
I don't know about soft synth heaviness, how can I found this out? Other than that: 1.15 GHz CPU, 768 MB RAM, 5400 RPM on the hard drive. Hope this helps you help me :D
 
RPM is a bit off base there. Some of the factors he mentions might affect whether or not the softsynth would work at all, but not the symptoms that you describe.

Your issue is latency of the sound card. This is significant if you are playing a DXi or VSTi soft-synth from a host program like SONAR or Cubase, and don't have low-latency WDM or ASIO drivers for the sound card. Once a MIDI track is recorded it would play back OK, but you can't effectively play a softsynth in real time through a host without WDM or ASIO drivers.
 
Some of the factors he mentions might affect whether or not the softsynth would work at all, but not the symptoms that you describe.
Which factors?
1) If the samples are too big, most of them will have to be on the hard drive (instead of RAM), which creates delays or problems with sound.
2) With slow CPU it's kinda hard to quickly react to midi messages. But still, it only creates problems or delays. It can work.
3) RAM is the same problem as with big samples. Also the speed of bus matters a little.
4) RPM of hard drive is very much factor for VSTi/DXi (especially when they're big). It can also slow down work, but will work.

Your issue is latency of the sound card.
And that's what i really doubt, since latency is usually related to the audio signal and we're talking about midi signal. Midi is about 3-4 kb/s transfer rate, any card should handle it fine, and have no problem... It doesn't matter where midi comes from, the cable or a track. But problem occurs somewhere after the midi signal is received. Playback of audio samples that is. You think it can really depend on the card's latency? I doubt it.
 
1) If the samples are too big, most of them will have to be on the hard drive (instead of RAM), which creates delays or problems with sound.

Perhaps... but this is the same issue with recording tracks while playing back others, already recorded, so if the drive keeps up with that, there should be no noticeable delay in playing a softsynth.

With slow CPU it's kinda hard to quickly react to midi messages. But still, it only creates problems or delays. It can work.

Since when? My old 66 MHz 486 had no trouble at all quickly reacting to MIDI messages. MIDI messages are certainly not the logjam. It's the time it takes the software to create the WAV data for the note you're trying to play that causes a delay. With older MME drivers, the delay is so bad that you simply cannot play such a synth in real-time. You need special drivers -- ASIO, WDM, GigaStudio drivers -- for this latency to be small enough to be acceptable.

And that's what i really doubt, since latency is usually related to the audio signal and we're talking about midi signal. Midi is about 3-4 kb/s transfer rate, any card should handle it fine, and have no problem... It doesn't matter where midi comes from, the cable or a track. But problem occurs somewhere after the midi signal is received. Playback of audio samples that is. You think it can really depend on the card's latency? I doubt it.

It is the issue. The MIDI message is not the bottleneck, as you point out now (despite your comment in #1), it's the time it takes the engine of the softsynth to get the MIDI message, do what it needs to do to create the sound it's called on to create, and get it into the WAV stream. Latency is absolutely the issue here, and I'll bet my boots it's source of nicklikesfood's problem. Low-latency drivers enable input monitoring after plug-in effects get applied and real-time responsiveness for softsynths.
Read http://www.musictec.net/softsynth.html

Do a search on "latency and soft synths" and you'll find more info...
 
this is the same issue with recording tracks while playing back others, already recorded
The difference here is in the filesizes. Playing a few long continuous files together, or searching for a needed sample, and playing only this little piece, - it's a big difference for hard drive. You might've noticed the time difference between copying large amount of small files, or one large file. Same here, but now it copies to RAM.

It's my fault about CPUs. I phrased it wrong. When i mentioned the slow CPUs, i didn't mean the midi itself. I meant the process of searching, alternating, and playing the samples. You said
the time it takes the software to create the WAV data
. Well, ain't we mean CPU when we say "software"? So, yeah, the reaction of the CPU to midi is fast, but processing samples takes up a whole lot from CPU. Even the CPU monitor in Sonar clearly shows that. But another thing that I really doubt, is that drivers anyhow care about that. Drivers only contribute when the time comes to play the finished sample, which is, like playing back any audio track, shouldn't be a problem for any soundcard and its drivers. Their efficiency doesn't affect the midi data exchange at all. According to this, one of the elements that i listed creates this problem. And for example "The Grand" from Steinberg requires 512 ram and 1Ghz CPU to use its best sample pack. It means, that if Nick uses anything of this sort, his CPU might be not good enough. Or he loads it with other effects too much in addition to the synth.
 
Drivers only contribute when the time comes to play the finished sample, which is, like playing back any audio track, shouldn't be a problem for any soundcard and its drivers. Their efficiency doesn't affect the midi data exchange at all.

Drivers contribute all the time. Drivers are the means by which the hardware on the card communicates with the computer's operating system.

WDM drivers incorporate advances in driver architecture that essentially reduced some of the overhead inherent in the methods used by the operating system to communicate with the hardware, making it possible (much as the third-party ASIO architecture does) for low enough latency that real-time softsynth and plug-in effect monitoring can be achieved. This is not possible with MME drivers.

If nicklikesfood has MME drivers, he is going to have that delay he describes, period, regardless of how much memory he has, how fast his CPU is, and how fast his hard drive spins.

The system he describes should be perfectly capable of performing well with ASIO or WDM drivers.
 
Under Device Manager my sound controller shows up as VIA AC'97 Enhanced Audio Controller (WDM). It's onboard sound. So how can I get these WDM and ASIO drivers?
 
That is a WDM driver. Maybe it's simply a matter of configuring its buffer sizes. Maybe it's just a really shitty driver.

You can only get new drivers from the manufacturer of the device. It sounds like it might be an on-board sound chip, integrated into the motherboard. So the motherboard manufacturer, or the chip manufacturer, might have a newer driver on their website. (But there's probably not an ASIO driver for it.)

What software are you using, and what operating system is it running under? DO you know what's providing the MIDI sounds? (I'm willing to bet it's the Microsoft WaveTable Synth. I'm not sure if you can use that effectively even with WDM drivers -- it's not a DX or VST instrument.)

Oh, I realize I never addressed part of your question:

There is an option called "Aftertouch," but turning it up or down has no effect.

Aftertouch is a type of MIDI message that can be sent by MIDI keyboards. It means that when you press down on the keys (after you strike the note and before you release it), the pressure applied is mapped to an aftertouch message. Often synths have a vibrato or filter sweep mapped to these messages, so depending on how hard you pressed down on the notes after striking them, the vibrato or sweep would kick in to some degree.
 
Drivers contribute all the time. Drivers are the means by which the hardware on the card communicates with the computer's operating system.

Of course. My point was that any drivers, MME, WDM, or ASIO will greatly work with the midi itself, but they will make difference (contribute) somewhere else. Ok... Now,
the difference in those drivers' speed is the latency of monitoring. Monitoring is getting audio data in, and playing it right away, with all the effects. However, in case of midi, there's no incoming audio data. There's only a very speed-consuming process of searching, alternating, and playing samples, which requires much of pc resources. It is performed by the synth, not by the driver. And it utilizes hard drive, RAM, and CPU. Drivers only get their turn in the game when midi is taken in, and when the prepared samples played out. The toughest job is done without them, by the synth itself. Synth doesn't care what drivers are installed. Therefore, there should be bigger chance that he has insufficient system resources. Moreover, he already has WDM, and it doesn't help.
 
I'm using the program Finale 2003 and Windows XP Professional. When I go to MIDI Setup I have the choice between Default MIDI Player and Micrsoft GS WaveSynth, but the only way I can hear the sounds is using MIDI Thru, which doesn't tell the output device.

Can you recommend a few sound cards?

Neon, if it isn't the drivers, do you know what it could be instead?

Thanks
 
Well, first, seems like you've got a crappy sound card. :) Regular MS WaveSynth wouldn't need much cpu and ram. So, if you're not going for professional level, then some new kick-ass sound blaster will be fine. You can also play games better. If you're serious about sound, but still on a budget, get some card like Delta 1010lt, or Audiophile (both M-Audio). I suggest M-Audio coz i use their equipment, and it works great for me. There's also chance that time has come to reinstall your operating system completely. I mean, if you've got toooo much junk stuck in your computer, spyware, processes running, other annoying things, they might slow everything down. And another thing. I would really suggest to get 7200RPM HDD (or better), and use it as your main system hard. You can still leave your second 5200 hard for storage. You don't have to do everything i suggested in order to solve the problem. Start with things that cost the least. Good luck.
 
Finale, eh?... it might be that Finale does not support WDM drivers -- that is, it doesn't use the newer DirectX code that enables the drivers to work at their lowest latency, but rather uses the older MME code that hooks to the WDM drivers through an emulation interface.

Did you try Finale's tech support?

If Finale does support either DXi or VSTi, consider getting a decent softsynth. One like the Roland Virtual Sound Canvas (the DXi version) or VSampler are good values; VSampler can be loaded up with many formats of sample soundsets, including Sound Fonts, good ones of which are available cheap or even free on the 'net. That would be the single cheapest solution to your problem. You could do all the things that Neon Glow suggests and, if my feelings about it are correct, the problem will still exist...
 
Ok, well maybe my suggestion is a bit too overwhelming :), and it's really better to do what AlChuck suggests first. But the thing about cleaning up your system is really worth doing, that's for sure ;).
 
Yeah, I've actually formatted my hard drive and re-installed Windows pretty recently (and de-fragged, and run Anti-Virus, etc.) Thank you both very much for your help! I really appreciate it and I'll start looking into all this stuff.

Now. I'm hoping you guys can continue to help me. What exactly is a softsynth and how would I use it? With Finale 2003 I notate music, either with the mouse or with my MIDI keyboard, and then edit it and whatnot and play it back (or print it, or burn it, etc). The sounds that it uses for playback are the 130 or so General MIDI (these are stored on my sound card, is that right?). So if I buy or download or whatever some soft synths, will I then have higher-quality (and hopefully more realistic)-sounding sounds? My M-Audio Radium that I got recently also uses the GM sounds; would I be able to use soundsynths through it? By the way, the only way I can actually hear what I'm playing on the Radium is when I have Finale open. Is there another way to do this? I'll go to the Finale website and see what I can find out there as well, but I want to see if this is something I want to (and am able to) get into to make better sounding music.

Thanks again ~
 
Last edited:
Back
Top