The Future of Linux Audio Driver Supportby Dave Phillips
If the present trends continue the future of Linux sound driver support looks very good. Manufacturers are beginning to notice Linux, for many reasons: popular soundcard manufacturers see a market in the expanding appeal of Linux on the desktop, while the makers of professional digital audio boards are attracted by the system's robust performance and by the very low latencies possible from a simple patch to the kernel (see my article Achieving Low-Latency Response Times Under Linux for more information regarding the low-latency patches).
The continuing production of higher-quality Linux games is certainly a driving force behind greater mass-market acceptance. Excellent commercially available games such as those produced by Loki Software will broaden the Linux user base, and those users will want more and better support for more (and better) soundcards.
Creative Labs has already demonstrated hardware-accelerated OpenAL, a cross-platform API for 3D audio, and the company has already established a method for working in-hand with the Linux development community. Other soundcard manufacturers will likely recognize and follow Creative's initiative as a logical way into the Linux market.
Curiously, acceptance of Linux by the major manufacturers of high-end audio boards has been hampered by the "chicken and egg" scenario: manufacturers have been unwilling to supply Linux drivers (or their technical specifications and documentation) until they saw more professional-grade audio software for the system, but that software could not be written until the higher-quality hardware became available. That situation is changed now by the presence of Linux support for the RME Hammerfall and the development of software such as Ardour and jMax.
|The Linux Soundcard Driver|
The eventual adoption of the ALSA API into the Linux kernel will signal another great advance in the area of Linux sound support. Current ALSA status is very near a 1.0 release, and the presence of an advanced sound API included with the kernel sources will certainly attract more applications developers.
The impact of the USB interface cannot be assessed at this time. It is too new, and there are too few Linux-friendly USB audio devices to allow any predictions. However, the audio card industry is most definitely gearing for USB, and we will surely see future development in the Linux USB audio arena.
As you have seen in this article, the Linux sound driver has gained solid ground since the first appearance of the SoundBlaster driver in 1992. Expect to see more cards supported, better installation procedures, and more powerful applications software. Given these trends, the future of the Linux audio driver is looking great. Or perhaps I should say it's sounding better all the time.
I would like to thank Andy Lo A Foe for his example code and his advice on the technical aspects of this article. Remaining errors are of course my own. I would also like to thank Hannu Savolainen, Thomas Sailer, Alan Cox, Paul Davis, and Jaroslav Kysela for their tremendous work on the Linux sound system. Without their contributions Linux users would have a mighty but mute operating system.
- 4Front Technologies - Home for the OSS/Linux drivers
- ALSA - home site for the Advanced Linux Sound Architecture project
- The Linux Sound System - Alan Cox's page dedicated to the OSS/Free kernel sound drivers
- Writing A Linux Device Driver - good brief tutorial from Aditya Kulkami
- Write a Linux Hardware Device Driver - An excellent tutorial from Andrew O'Shaughnessy
- Matia, Fernando. "Writing a Linux Driver." Linux Journal, April 1998, 44-50
- Rubini, Alessandro. "Driving One's Own Audio Device." Linux Journal, September 1998, 70-73
- Rubini, A. Linux Device Drivers, Sebastopol, CA: O'Reilly & Associates, Inc., 1998
- Rubini, A. "Miscellaneous Character Devices." Linux Journal, July 1998, 50-52
- Tranter, Jeff. Linux Multimedia Guide, Sebastopol, CA: O'Reilly & Associates, Inc., 1996