Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Riku7

macrumors regular
Original poster
Feb 18, 2014
208
95
I'd like to occasionally use my G4 for musical drafting. I put an SSD into the iMac recently, but haven't updated the RAM from the 1GB it has now. I probably will eventually, but somehow it feels like it's not the culprit, or that it's not the only culprit to the issue.

The issue is that even if I have a new or otherwise very minimal project in GarageBand and no third-party plug-ins installed, when I try to record in some MIDI data, the latency is so great that even if I'd actually played it on the beat, the resulting recorded MIDI clip will have the notes all over the place and out of time. It's practically unusable. I'm aware of the buffer size setting but it doesn't seem to do enough in this case. So back in the day, how did people actually manage do any music stuff on the iMac G4? Surely it was powerful enough for the basic stuff?

My hunch here is that I might need an external Firewire audio interface (the USB ports assumedly being too slow), but is that actually the case, and what does it do in terms of MIDI, actually?
It feels insane to come to think about an audio interface as late as now, because I started dabbling with music when I got my first personal Mac that was a G5, and that iMac nor any of my Macs that followed ever required an external audio interface in order to simply get some audio and MIDI in. On my main computer, I've always just taken MIDI directly from a controller to the computer's USB port and it's been fine.
Sure, the old iMacs I had would struggle to play back complex projects with too many tracks in them but that was a very understandable issue that could be managed with some workarounds. Now it just seems so confusing that this iMac can't even manage a very simple project at its early stages, and the only envelope data is the sustain pedal, if anything.
 
MIDI shouldn't be too taxing - the Atari ST didn't have trouble with it, and that was on a par with the original Mac, CPU-wise. Could it be that you have a duff MIDI interface? I have an old EMU four-port MIDI interface that works intermittently and isn't fast enough for SYSEx, so I replace it with a Roland UM-ONE, which was superb. Until I broke it.

As mentioned on my blog I recently bought an old MOTU 828 FireWire interface for my Mac Mini, but I also tried it with my PowerBook:
5E5W0730.jpg


If you're using internal instruments without external audio it probably won't help. In the following clip I'm running Logic Express 9 on a 1.67ghz PowerBook G4 with the 828, processing a stereo audio channel from the Odyssey, and playing back two simple software synthesisers and two channels of the most perfunctory drum loops in the world, and it only uses about half the CPU power:


My understanding is that GarageBand uses the same basic audio engine as Logic Express (LE has all of GarageBand's instruments). I didn't notice anything untoward when I entered the MIDI data with a USB-connected mini-keyboard, albeit that there are only eighteen notes.
 
Yep, you want to use a firewire audio interface. Motu is great. For simplicity, may I suggest a presonus Firebox. Had one for years that I ran with a gen1 intel white iMac. They’re intuitive, great I/o options, portable & cheap nowadays - stout little plug n play boxes.

Definitely worth the 30-40 bucks you’ll pay for one.
 
It sounds like the interface is being problematic or it could be an issue with the driver. I’ve had plenty of G3s and earlier handle near zero latency midi I/O over USB 1.1 - midi was designed in a time of limited hardware resources and as @AshleyPomeroy states, the Atari ST was a capable Midi workstation and that was running at something like 8MHz with 1MB of RAM or (often) less.

——

Edit: Also something to consider; check your MIDI input is not set to quantize on record, this could account for recording timing to be different to what you are playing.
 
@Riku7 how were you getting midi into a imac g4 without some sort of interface? usb keyboard? Or are you saying that you create a midi instrument in software and use the command-K keyboard to play it and that is generating latency?

But to answer your original question, to optimize any DAW, I max the ram and build around whatever technology has the fastest throughput which on these old PPCs is usually firewire 400 or 800.
 
Last edited:
  • Like
Reactions: AphoticD
Thanks to everyone's input and sorry that it took me ages to respond – had things to attend to, then I forgot, and it took some time to get back to what is essentially a hobby.

Could it be that you have a duff MIDI interface?
I have tried the typing keyboard to play, as you can do in GB and Logic; Bad delay. And I have tried an actual musical keyboard, using this very simple MIDI interface. I've owned it for a long time and never had issues with it. I noticed that it might be somewhat related to the instrument: Some instruments seem to have more delay than others, even if they are the only track in the project and I haven't recorded any regions in yet!

Yep, you want to use a firewire audio interface. Motu is great. For simplicity, may I suggest a presonus Firebox. Had one for years that I ran with a gen1 intel white iMac. They’re intuitive, great I/o options, portable & cheap nowadays - stout little plug n play boxes.

Definitely worth the 30-40 bucks you’ll pay for one.
I took this advice and found one, but unfortunately now I think that the latency and responsiveness is even much worse than it was with the earlier simple USB MIDI interface! If I try to play a steady rhythm of a single chord while using the default stock piano sound, I can't even get it to reproduce that steady rhythm; The notes are constantly stumbling, coming late or being missed. How can it possibly be worse than the USB one? 😨

It sounds like the interface is being problematic or it could be an issue with the driver. I’ve had plenty of G3s and earlier handle near zero latency midi I/O over USB 1.1 - midi was designed in a time of limited hardware resources and as @AshleyPomeroy states, the Atari ST was a capable Midi workstation and that was running at something like 8MHz with 1MB of RAM or (often) less.

——

Edit: Also something to consider; check your MIDI input is not set to quantize on record, this could account for recording timing to be different to what you are playing.
I know how you quantize stuff on record in Logic, but I don't think I've ever seen such a feature in GarageBand. Does it actually exist, and would it be enabled by default?

Macs are always plug and play, no drivers needed; Are there some additional drivers that I could try regardless?
@Riku7 how were you getting midi into a imac g4 without some sort of interface? usb keyboard? Or are you saying that you create a midi instrument in software and use the command-K keyboard to play it and that is generating latency?

But to answer your original question, to optimize any DAW, I max the ram and build around whatever technology has the fastest throughput which on these old PPCs is usually firewire 400 or 800.
Please see what I responded to the first quote in this message, it pretty much also answers your questions. At this point I only know that RAM is one thing that I at least can increase, it's just 1GB now. But it still seems weird that I can't play anything even into an empty project by using that Firewire interface because of some bottleneck!
 
As an Amazon Associate, MacRumors earns a commission from qualifying purchases made through links in this post.
Hmm I am unsure what interface you have but I would take a look at the interface driver & make sure it’s the correct version. It’s my understanding that midi timing is taken from the instruction provided by the audio interface drivers. This is how your MIDI instrument and Audio sync in a DAW, so if your driver is incorrect, that could produce significant lag.
 
Hmm I am unsure what interface you have but I would take a look at the interface driver & make sure it’s the correct version. It’s my understanding that midi timing is taken from the instruction provided by the audio interface drivers. This is how your MIDI instrument and Audio sync in a DAW, so if your driver is incorrect, that could produce significant lag.
This and now this too. The Presonus offered a firmware update which I did, but it didn't change anything. The other one really is just plug and play, I've never noticed that there would be any specific drivers.
 
Ahh nice choice on the firebox - love those. Since it’s impacting both usb & FW hardware, it makes sense to check your DAW config. What’s your buffer set at?
 
There's exactly two buffer sizes in that GB: one "optimized for minimal lag when playing live" and one "optimized for playback without dropouts".

Actually now that I powered up the machine, I am getting the keyboard to play without lag! I don't know why. However, it doesn't come without problems: Firstly, the Firebox causes a lot of interference just by being plugged in; The computer is making a kind of screeching noise, and if you have the ApplePro speakers plugged in like I do, they will further amplify the sound by playing it back from the speakers as well. I could not imagine working while hearing that noise. I didn't test if it would get transferred to (noise cancelling) headphones too but I sure would want to cancel out that noise somehow. Is the interference noise there because of the Firewire connection itself, or could it be because the vicinity of the actual Firebox device? Because (in hindsight), a 30cm Firewire cable is very short, it's stiff and won't really even allow a nice placement of the device.

The other issue is the workflow in terms of getting started. Like on the first time, it seemed like a complete mystery to me, what the order of setting things up should be. My keyboard doesn't have an on/off button and under normal circumstances it's bus-powered, but since with the iMac G4 you can't rely on it to power such devices, I power the keyboard from its USB port to a regular plug in the wall, and then use a MIDI cable into the Firebox, to transmit the actual messages. I just feel like, when I plug it in and it gets powered, and GB then asks me if I want to use Firebox, the keyboard should become available as a MIDI input device. Yet it doesn't, GB's settings still say "0 MIDI input devices available". On the first time I absolutely couldn't figure out what the logic was to getting the keyboard to be accepted as an input device, I just did all sorts of random stuff; When I use the M-Audio UNO, a simple MIDI to USB device to play into GB, it simply recognizes it immediately and hello, you're ready to play. Now I had to go to Utilities > Audio Midi Setup, and Rescan for MIDI devices. This feels like a very cumbersome thing to do every single time. Is it really this complicated? Or is there some specific order in which I should do things so I wouldn't have to manually force this recognition?

I also strongly dislike the way how – when GarageBand asks if you want to use Firebox and you say yes – it automatically also changes the audio output to the Firebox! All I want is to use it to handle the MIDI, but I wouldn't want to change the computer's system audio output setting. Is that just an annoying feature that can't be bypassed? I'll always have to go back to the settings and change the system audio output back to what it was.
 
There's exactly two buffer sizes in that GB: one "optimized for minimal lag when playing live" and one "optimized for playback without dropouts".

Actually now that I powered up the machine, I am getting the keyboard to play without lag! I don't know why. However, it doesn't come without problems: Firstly, the Firebox causes a lot of interference just by being plugged in; The computer is making a kind of screeching noise, and if you have the ApplePro speakers plugged in like I do, they will further amplify the sound by playing it back from the speakers as well. I could not imagine working while hearing that noise. I didn't test if it would get transferred to (noise cancelling) headphones too but I sure would want to cancel out that noise somehow. Is the interference noise there because of the Firewire connection itself, or could it be because the vicinity of the actual Firebox device? Because (in hindsight), a 30cm Firewire cable is very short, it's stiff and won't really even allow a nice placement of the device.

The other issue is the workflow in terms of getting started. Like on the first time, it seemed like a complete mystery to me, what the order of setting things up should be. My keyboard doesn't have an on/off button and under normal circumstances it's bus-powered, but since with the iMac G4 you can't rely on it to power such devices, I power the keyboard from its USB port to a regular plug in the wall, and then use a MIDI cable into the Firebox, to transmit the actual messages. I just feel like, when I plug it in and it gets powered, and GB then asks me if I want to use Firebox, the keyboard should become available as a MIDI input device. Yet it doesn't, GB's settings still say "0 MIDI input devices available". On the first time I absolutely couldn't figure out what the logic was to getting the keyboard to be accepted as an input device, I just did all sorts of random stuff; When I use the M-Audio UNO, a simple MIDI to USB device to play into GB, it simply recognizes it immediately and hello, you're ready to play. Now I had to go to Utilities > Audio Midi Setup, and Rescan for MIDI devices. This feels like a very cumbersome thing to do every single time. Is it really this complicated? Or is there some specific order in which I should do things so I wouldn't have to manually force this recognition?

I also strongly dislike the way how – when GarageBand asks if you want to use Firebox and you say yes – it automatically also changes the audio output to the Firebox! All I want is to use it to handle the MIDI, but I wouldn't want to change the computer's system audio output setting. Is that just an annoying feature that can't be bypassed? I'll always have to go back to the settings and change the system audio output back to what it was.


Hmm, in regards to the noise, I had to replace about $15.00 worth of caps in my first firebox after about 10+ years of perfect functionality. Noise was what preceded capacitor failure. Sounds like your elderly FB is potentially in need of some TLC. I assume you have swapped other common sources of interference like cables, no flourescents, old building wiring etc.

GB (or any daw for that matter) not auto detecting Midi instruments is not unheard of but I do not recall experiencing recuring issues with connectivity with mine. Once you config the FB in sys pref, then GB & rescan for midi devices, it should stay there. My use was primarily in a permanent set up (my studio) so a series of 5pin midi keyboards stayed connected, the firebox in line with other gear connected to my imac with it driving 2 monitor sets. I did use it for a mobile rig too without issue FWIW. Anyhow, once it was set, it stayed that way for the most part. One thought is older keyboards (think 5pin) if they are programmable, may need to be reset to factory. If old settings are stored from a prior interface, this can effect how they plug & play in other configurations.

GB is a shrunk down version of Logic for beginners, and with that, most beginners are using one box for input and output to their monitors - no voodoo and limited to no understanding of how a DAW is set up or works. Considering GB's target audience, that makes great sense to me that GB is designed in this plug & play way.
 
  • Like
Reactions: dextructor
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.