OSS/Linux Sound Driver
So for $20 you get a single machine license for a sound driver that is compatible with the one in the Linux kernel, a play command for playing sound files and the soundon and soundoff scripts for loading and unloading the driver. Included are two years of technical support and five years of software upgrades. Documentation is essentially some README files covering installation, but more information, including the sound application programming interface, is available on the vendor's web site.
What advantages does OSS/Linux have over the free sound driver in the kernel? Technical support is one advantage which may be important to you if you are using the Linux sound driver in a commercial setting. The package does appear to be easier to install and configure, automatically detecting the card settings in most cases. It also offers support for a few more sound cards (e.g., the SoundBlaster AWE32) and has better Plug-and-Play support than the free driver. It seems to be fully compatible with any applications written for OSS/Free.
On the negative side, there is a cost involved, albeit a small one compared to most commercial software. Of more concern is the fact that you don't get the source code. This means that you can't fix bugs or modify or enhance the code yourself. It also makes the software more sensitive to different kernel versions. You may have to periodically download a new sound driver from the vendor's web site when you upgrade your kernel, although a “wrapper” program called sndshield that you can compile is provided to help get around these problems most of the time.
When using the free kernel driver, I like the fact that it can be automatically loaded and unloaded on demand using kerneld. The OSS/Linux driver, while it uses modules, unfortunately doesn't seem to support this. Having to log in as root and run a command to load the driver is cumbersome, although most users would probably know enough to put it in a system startup script like rc.local.
The package doesn't come with any value-added sound applications (except a simple “play” program). The sound driver on its own isn't very useful. If it was to come bundled with some of the existing Linux sound applications, less experienced users could make better use of the driver right away. The way to package the product, in my opinion, would be as a CD-ROM that came with a number of sound applications, sound files, and programming documents, precompiled for Linux systems. This would turn it into a more useful product, especially for beginners.
If your sound card works fine with the free driver in the kernel and you aren't interested in SoftOSS, then you probably won't see this product as adding much value.
If you've fought unsuccessfully to get your sound card to work under Linux, particularly if it's a Plug-and-Play model, then you should give this product a try. You can get a free trial copy and it's well worth the cost. If you have a non-wavetable sound card and are intrigued by SoftOSS, then you may also be interested in this product.
Finally, the OSS product is also offered for a number of other Unix-compatible systems. For years Unix systems have had no clear standard for sound programming. 4Front Technologies is hoping that the OSS API will become a de facto standard for Unix systems. If successful, this will be an ironic example of the tail wagging the dog—Unix systems striving to be compatible with Linux. It also means that sound applications written for Linux will have the opportunity to run on a wider variety of Unix platforms, expanding their scope.
Jeff Tranter has been using and writing about Linux for about four and a half years. He's the author of the Linux Sound and CD-ROM HOWTO documents, and the book “Linux Multimedia Guide” published by O'Reilly and Associates. When not playing with computers, he enjoys ham radio, playing guitar and cross-country skiing. He can be reached via e-mail at firstname.lastname@example.org
|Non-Linux FOSS: libnotify, OS X Style||Jun 18, 2013|
|Containers—Not Virtual Machines—Are the Future Cloud||Jun 17, 2013|
|Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer||Jun 12, 2013|
|Weechat, Irssi's Little Brother||Jun 11, 2013|
|One Tail Just Isn't Enough||Jun 07, 2013|
|Introduction to MapReduce with Hadoop on Linux||Jun 05, 2013|
- Containers—Not Virtual Machines—Are the Future Cloud
- Non-Linux FOSS: libnotify, OS X Style
- Validate an E-Mail Address with PHP, the Right Way
- RSS Feeds
- Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer
- Introduction to MapReduce with Hadoop on Linux
- Help with Designing or Debugging CORBA Applications
- New Products
- Returning Values from Bash Functions
- Linux Systems Administrator
- notifier shortcomings
16 min 44 sec ago
1 hour 53 min ago
- Android User
1 hour 55 min ago
- Reply to comment | Linux Journal
3 hours 48 min ago
6 hours 37 min ago
- This is a good post. This
11 hours 50 min ago
- Great, This is really amazing
11 hours 52 min ago
- These posts are really good
11 hours 54 min ago
- It’s a really great site you
11 hours 56 min ago
- Beautiful ... I love your
12 hours 22 min ago
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?