Open Sound System (OSS) is the first attempt in unifying the digital audio architecture for UNIX. OSS is a set of device drivers that provide a uniform API across all the major UNIX architectures. It supports Sound Blaster or Windows Sound System compatible sound cards which can be plugged into any UNIX workstation supporting the ISA or PCI bus architecture. OSS also supports workstations with on-board digital audio hardware.
Traditionally, each UNIX vendor has provided their own API for processing digital audio. This meant that applications written to a particular UNIX audio API had to be re-written or ported, with possible loss of functionality, to another version of UNIX. Applications written to the OSS API, need to be designed once and then simply re-compiled on any supported UNIX architecture. OSS is source code compatible across all the platforms.
Most UNIX workstations, thus far, have only provided support for digital audio sampling and playback (business audio). OSS brings the world of MIDI and electronic music to the workstation environment. With the advent of streaming audio, speech recognition/generation, computer telephony, Java and other multimedia technologies, applications on UNIX can now provide the same audio capabilities as those found on Windows NT, OS/2, Windows 95 and the Macintosh operating systems. OSS also provides synchronized audio capabilities required for desktop video and animation playback.
It's a driverset. not much else :P
it is very good though, i use it myself
Supported cards: (updated on b1013 only)
- Added a comment to synctest.c.
- Bugfix to ossrecord (to prevent unnecessary open of the audio device when the program is killed). Also fixed up wave file header problem in Vista.
- Updated ossxmix to the latest version from v4.1. Previous version doesn't work properly with multiple devices.
- Added some private ioctl calls for Sun to soundcard.h (playback device selection).
- Changed SNDCTL_MIX_NREXT to support device number -1 (I may revert this change in the future).
- Added more features to AES16 mixer.
- Moved mixgen.c to utils and modified Makefile/README to mention it. Fixed compile warnings in readtimings.c.
- Freeman's fix to ossdrv_getinfo() in Solaris for Zones bug.
- Added HDA support for Travelmate 4060 contributed by Paulo Matias
- Changed copyright year to 2008 in sndstat.
- Changed some MIXT_ONOFF controls created by ossusb.c and ac97_ext.inc to use maxvalue=1 instead of maxvalue=2.
- Fixed a typo in vmix_core.c.
- Solaris9 has an obsolete GTK2 version so changed the build system to force GTK1.