At Home With AV Linux
The Live Sessions
Some random observations made during my initial live sessions :
The system recognized my dual-core CPU, and by default set the CPU scaling governor's mode to "on-demand". Ardour doesn't particularly like that setting, so I switched the governor to its "performance" mode. The default mode runs my laptop's AMD Turion X2 CPU at 500 MHz, the performance mode set it to 2 GHz, the processor's maximum speed.
As noted earlier, AV Linux sets up JACK with conservative values that should work with most hardware. However, you'll definitely want to change those values for the best performance from your equipment. Here's what the system started with :
44.1 kHz sampling rate, 1024 frames/period, 2 periods/buffer
These values yielded a latency of 46.4 milliseconds, not useful for professional work. I changed those settings to these values :
48 kHz sampling rate, 256 frames/period, 2 periods/buffer
Latency dropped to 10.7 milliseconds with those values. Not a super-low figure, but that's probably about as good as I'll get from my laptop's audio hardware, nVidia's spin on the ubiquitous Intel HDA chipset. It performs well enough for lightweight realtime Csound output or for auditioning pre-recorded tracks in Ardour. Of course, better external hardware should handle heavier loads without xruns or shutdowns.
I ran uname -a and discovered this information about the default AV Linux kernel :
Linux 220.127.116.11.avl.1 #1 SMP PREEMPT Thu June 2 23:59:52 EDT 2011 i686 GNU/Linux
As I mentioned, the Control Panel includes a neat audio system analysis utility to help determine where you can optimize your system for best audio/video performance. I noticed that the tool indicated that the default AV Linux kernel is not patched for realtime with Ingo Molnar's revisions. A patched realtime kernel can be installed if you feel the need, but it seems that for most normal work the default PREEMPT-enabled kernel will perform adequately in realtime with JACK.
The Hard Decision
After working with the Live mode for a while I decided to install AV Linux on my laptop. The system's installer worked well, I had no troubles during the installation process, but during the basic configuration I discovered that the installer had ignored the settings for its failsafe mode, which meant that I faced again the previous problem at the log-in. Fortunately that was easily dealt with by adding the nomodeset option to my boot command.
Unfortunately I also discovered a new problem while configuring the video driver (version 270.40.19, for those who must know). Its installation was no problem, but performance was unreliable - the entire system would lock up after a while and required a manual shutdown (I had to hold down the power button until the system closed). Eventually I found the cause of this rather serious problem - the laptop's nVidia 8200M video chipset is incompatible with an MSI-enabled kernel. Again, a simple addition of pci=nomsi to my boot command has resolved that issue.
I have a single remaining problem, minor but annoying, and I welcome any advice for its resolution. After settling the video issues I found that shutdown occasionally didn't, i.e. the system wouldn't power down until I pressed the laptop's on/off button. On advice from "somewhere on Google" I added the acpi=off option to my boot command parameters. Alas, the system randomly powered off until I removed the option. Apparently something in the machine wants the option activated. I no longer have the random shutdowns, but I still have the occasional hang-up when I close the system. As I said, suggestions for fixture are welcome.
Here's the current options collection for my boot command :
threadirqs quiet nomodeset pci=nomsi
With these settings - and the settings for JACK shown above - I now have a stable and smooth-running system. I'm able to run AVSynthesis, my personal benchmark application for testing the system's graphics and sound capabilities. The latest incarnation of AVSynthesis requires JOGL2, the most recent development of the Java/OpenGL software, which in turn requires the hardware accelerated graphics provided by the nVidia chipset and driver. Realtime audio in AVSynthesis is handled by Csound 5.13, built for double-precision numerics and support for a Csound/Java interface wrapper (among other useful options). The combination of high-quality realtime audio I/O and 3D graphics transformation hits the system resources heavily, and I'm pleased to report that AV Linux bears the stress with ease.
The AV Linux Web page notes that the system is also developer-friendly. The autotools software is all there, along with scons, git, and many other utilities for retrieving and building from source code. Python 2.6 is there, and an up-to-date Java JRE (from Sun) is installed. Alas, I needed the full SDK, but hey, no problem - the Synaptic package manager helped me find the right package, and after a few keystrokes I had my up-to-date complete Java 1.6 SDK.
On Quirks And Quiddities
I want to emphasize that the problems I encountered during my tests were due to a conflicting combination of hardware peculiarities and system defaults. AV Linux is configured to fit most use-cases, but no Linux distribution can guarantee flawless performance on any and all hardware. Motherboards vary in the quality of their manufacture, and of course proprietary binaries are always suspect (though I remain a satisfied user of nVidia products). Nevertheless, all significant problems have been solved, and AV Linux is humming along nicely here now. I haven't been tempted to boot into the Ubuntu partition on the same box for a while, so it looks like AV Linux has a new home here at Studio Dave (Figure 3).
Figure 3. My AV Linux at work ("Rui at large"). (Full-size)
Now that I'm satisfied that my personal requirements can be met by the system I plan to look further into its installed goodies. The audio and video applications menus are filled with well-known and not-so-well-known items, and the demos include some packages I've heard about but haven't had the time to look into. I've little excuse for ignoring them now.
As I surf various Linux audio-related blogs, forums, and mail-lists I see many recommendations for AV Linux, especially to newbies who want to sample the variety of audio/video software packages available to Linux-based sound & music people. The system is stable, and I suspect that most hardware avoids the issues I encountered. If you have problems, check out the manual and/or head for the excellent AV Linux forum. You'll find project designer/maintainer Glen Macarthur, a.k.a. Gmaq, along with other developers and users who can help you out of your troubles.
I look forward to future releases of AV Linux. According to the grapevine, version 5.0.2 will expand the system's video support and resolves a few issues nagging 5.0.1, and I suspect I'll see some new audio softs in the apps stack. By the way, AV Linux is a labor of love, but love alone won't put food on the table. Donations are welcome, and I urge all AV Linux users to show a little pecuniary affection for the project. Glen is committed to producing the highest quality Linux distribution optimized for audio and video production, his efforts are surely worth some community coin.
Next up, a look at what's happening these days in the world of Pd. Exciting stuff, don't miss it.
Similis sum folio de quo ludunt venti.
Webinar: 8 Signs You’re Beyond Cron
11am CDT, April 29th
Join Linux Journal and Pat Cameron, Director of Automation Technology at HelpSystems, as they discuss the eight primary advantages of moving beyond cron job scheduling. In this webinar, you’ll learn about integrating cron with an enterprise scheduler.Join us!
|Play for Me, Jarvis||Apr 16, 2015|
|Drupageddon: SQL Injection, Database Abstraction and Hundreds of Thousands of Web Sites||Apr 15, 2015|
|Non-Linux FOSS: .NET?||Apr 13, 2015|
|Designing Foils with XFLR5||Apr 08, 2015|
|diff -u: What's New in Kernel Development||Apr 07, 2015|
- Drupageddon: SQL Injection, Database Abstraction and Hundreds of Thousands of Web Sites
- Play for Me, Jarvis
- Non-Linux FOSS: .NET?
- Designing Foils with XFLR5
- Not So Dynamic Updates
- Flexible Access Control with Squid Proxy
- New Products
- diff -u: What's New in Kernel Development
- Users, Permissions and Multitenant Sites