[
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