Ardour vs. ALSA?

Ubuntu 7.04 fully up-to-date, standard kernel
Ardour 0.99.3-1
Jackd 0.102.20-1
nvidia PCI card using irq20
realtek ACL861/ATI SB450 onboard audio using irq20

Using default setup in Ardour, no fooling with Jack connections.

I get a huge amount of crackle/pop when recording and in playback. By turning off the “front” channel in alsamixer I seem to be able to eliminate the noise during record. But, I cannot playback with “front” disabled. If I enable it I get the terrible crackle and stutter.

I’ve exported the recording as a .wav and it sounds okay from another audio playback client. In fact all other audio playback sounds great on this system. Its just the Ardour record/playback that has the interference.

Ideas? IRQ conflict? If so is there a way to put audio and/or video on its own IRQ?

I used to have this I recall. Was an odd thing. It seemed to crackle, etc. on when I was running at a sample rate of 441000 but worked perfect on 48000. So maybe try that?

Changed the sample rate as suggested - it did not solve the problem.

Update: I also removed the nvidia card and tried just using the onboard AT Radeon XPress 200 video. That seemed to reduce the crackling and popping a bit, but it is still unacceptable.

Further update. I installed the realtime-lsm module as documented here:

This went about 90% of the way toward solving the problem, but I still get a few pops and crackles during both recording and playback. I wish I wish I knew how to elimimate this.

Increase the buffer size in jackd. I also recommend qjackctl for launching jackd and an update to Ardour2 and Ubuntustudio (where a proper realtime-enabled kernel is included).

qjackctl is being used - an excellent tool. I have fooled with the “Frames/Period”, which seems to correspond to “Buffer size” in the qjackctl Status display. I have found that values in the 128-256 range provide the cleanest, albeit unacceptable, sound. Values higher and lower cause more breakup. I don’t have a dedicated digital audio workstation, so I don’t think I can move to UbuntuStudio wholesale.
It seems like I am missing something simple here, IRQ conflict, ALSA setting? My machine should have the horsepower (Intel 2.8GHz cpu, 1GB RAM) necessary to do at least minimal DAW processing.

1 Like

please stop thinking of “minimal DAW processing” as requiring horsepower. it does not require much horsepower at all - a 400MHz machine is quite adequate.

what it does require is correctly designed and operating hardware and carefully tuned software. you appear to have problems in one or more of those areas, alas i can’t predict which precisely.

the reason that horsepower is not involved is that the problems with realtime audio come from the overal system response to “events” being too slow, which is not caused by CPU speed but by system design (at the h/w and s/w levels).

It might also be worth replacing the onboard audio with a higher quality sound card. I got one of those Ubuntu Dells, installed Ubuntu Studio and the low-latency kernel and figured I’d try the onboard audio first and it was just awful, plus I couldn’t really get that low of a latency.

When I finally got around to installing my 1010LT everything worked much better. Moving to the realtime kernel (there’s a Ubuntu Studio repository for it I think) and setting up the priorities correctly of jackd and the IRQ for your sound card goes a long way.

I had this problem in Ubuntu Studio, until I booted with the low-latency kernel. It went away immediately and my audio is perfectly clean now on:

Athlon 2600+ w/ 512MB RAM
320GB SATA Disk
M-Audio Delta 1010LT Card@ 96kHz

Also, make sure Jack starts in Realtime mode ( -R on the CLI ) or check the box in qjackctl. It may also help to disable as many unnecessary services in your Ubuntu installation as possible. I know that most people do not need to be running half of the services that start by default. The less crap you have trying to get a slice of kernel time, the better.

Oh, and one more thing you might do (advanced) is to renice the ardour and jackd processes to something like -5. That will give them higher kernel priority, which may help if you do not have a low latency or realtime kernel running.

Hope this helps