Looper's Delight Archive Top (Search)
Date Index
Thread Index
Author Index
Looper's Delight Home
Mailing List Info

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Date Index][Thread Index][Author Index]

Re: Laptop Looping



Quoting midifriedchicken@comcast.net:
>
> Audiomulch seems to be PC only, correct? Ive come to the conclusion   
> that working with music on a laptop isnt for everybody. The constant  
>  fear of upsetting the great and almighty CPU is very frustrating.   
> Everything you could ever  want is soooo close, but just out of   
> reach. Heaven forbid you ask too much of the great overlord CPU. You  
>  are then punished with a mighty CRACK, BUZZ, SNAP!
>
This email is about my battle with CRACK, BUZZ, and SNAP and what I am  
doing to win the battle!  Hope this isn't too long-winded -- I hope  
this saves someone some frustration.  Here is my tale:

1) Choose a laptop

Well, I don't know much about laptops and PC's however I had heard  
that for audio applications, get as fast a CPU and as much RAM as you  
can.  So, I found me a nice laptop with a 3.2Ghz Pentium 4 and  
upgraded it to 2gig.  And when I added a Presonus Firepod and Cubase  
SX3 and had it working nicely up over 60 tracks with no glitch, I felt  
like I had ARRIVED.  I dutifully used the MSCONFIG utility to turn off  
non-essential services (don't need to run a virus checker while music  
making, etc).

2) The harbinger of interesting things to come

All was working well.  I did a multi-track project with a stereo mix  
-- even used VST plugin compressor and reverb.  The only problem was  
an occasional pop during playback while sizing windows.  Not really a  
problem -- a minor annoyance.

3) What you don't know will hurt you

Confident of my equipment, I applied for a performance slot at the  
electro-music festival.  I decided to delve into surround sound, so I  
purchase two additional rear monitors.  After all, my Firepod has  
plenty of outputs and Cubase SX3 has a surround bus.  I'm cookin' now!  
  And, I decided to include a couple of works that utilize live  
looping!  Oh... what I got myself into!

There were plenty of things just waiting to BITE me!

4) Live-looping and latency

I created a work that included some pre-recorded tracks to play in  
sync with loops (provided by a number of VST delay lines).  Now I am  
getting a lot of pops, and crackles.  And... I couldn't seem to play  
in time!  No matter what I did, my rhythm was SLOP.  I thought to  
myself, "Jeez -- my computer is crackling and I can't play."  And I  
was kinda torqued because I had tons of memory and CPU power and a  
firewire port to boot!  Why is the darned thing crackling?

Well, I did some experimenting and found out that the reason for the  
sloppy rhythm was system latency.  And, I found out that the pops were  
due to an incompatability between the Firepod and my video chipset!

5) Throw money at the problem

... the American way!  An friend on the electro-music forum suggested  
that I purchase an RME800.  Well, I did and have never regretted it.   
No more clicks and pops and latency below 10 milliseconds.  Now I'm  
smiling.

6) Well, I auditioned for Y2K7 and promised a live-looping set with no  
pre-recorded elements.   Emboldenned by the Electro-music experience,  
I incorporate more hardware fx into my sonic repertoire and tie up  
some more inputs on the RME800.  And, much to my chagrin I have to  
increase the buffer sizes (and thus the system latency) to avoid  
crackles and pops.  Of course, the rhythm goes to mush with over 10ms  
of latency.  I thought to myself, "Dang it!  I thought I had this  
problem licked!"

7) Finally, learned more about the PCI bus.  We have all heard of PCI  
cards, etc.  Well, it turns out that the Firewire port is connected to  
the PCI bus, along with a lot of other things.  Thus, the cpu and  
memory may show little utilization however the PCI bus may be  
straining under the load.   The solution was to create a seperate  
hardware profile wherein I disable anything connected to the PCI bus  
that is non-essential.  For instance, I disabled the modem, wireless  
internet card, ethernet card, internal soundcard, and a few other  
things.  Also, I reduced my video bit depth to reduce the demands on  
my meager video card's memory.  Now I can work at latencies <10ms  
without any glitches.  *whew!*

8) Enlightenment (for the moment)

A firewire port has a tremendous amount of bandwidth and obviously a  
CPU that runs at over 3Ghz with 2Gig ram should handle a lot.   
However, the PCI bus can get overloaded.  Not all drivers and chipsets  
are created equal.  For instance, the Video chipset in my computer (a  
Toshiba P35) has limited memory compared to to others and it tends to  
hog the PCI bus.  Also, the less expensive Presonus unit apparently  
does more work in the driver than more expensive units that do more of  
their work in their firmware.  Also, some devices violate PCI  
standards which can wreak havoc with high-throughput real-time  
applications such as audio.

The latency thing?  Well, in multi-track recording, the application  
(Cubase in my instance) compensates for the latency.  The only time  
one notices any latency is if one is monitoring from the computers  
output stream (the analogy would be to monitor a recording from the  
playback head).  (Zero latency monitoring bypasses the computer  
processing).

Live looping is an application where you are both monitoring the  
output data and playing in sync with the computer.  So, the latency  
that is unnoticable in a recording situation becomes a big factor for  
live looping.

9) Moral to the story

There are many potential bottlenecks as data travels through a  
computer and a computer system has numerous devices that compete for  
resources.  We tend to think of CPU speed, memory, and  
disk-throughput.   The PCI bus is fast, however beware of devices that  
are robbing the PCI bus of bandwidth.  In fact, it doesn't hurt to  
"shop the application" -- that is, choose your software and hardware  
interface first, check the documentation for known incompatabilities  
(such as the video chipset), then choose a computer that does the job.

10) to be continued

I'm sure there will be more chapters to this saga yet to be experienced.  
:)

-- Kevin