Source: http://0pointer.de/blog/projects/guide-to-sound-apis
Quote:
<skip>
OSS
    The Open Sound System is a low-level PCM API supported by a variety of 
Unixes including Linux. It started out as the standard Linux audio system and 
is supported on current Linux kernels in the API version 3 as OSS3. OSS3 is 
considered obsolete and has been fully replaced by ALSA. A successor to OSS3 
called OSS4 is available but plays virtually no role on Linux and is not 
supported in standard kernels or by any of the relevant distributions. The OSS 
API is very low-level, based around direct kernel interfacing using ioctl()s. 
It it is hence awkward to use and can practically not be virtualized for usage 
on non-kernel audio systems like sound servers (such as PulseAudio) or 
userspace sound drivers (such as Bluetooth or FireWire audio). OSS3's timing 
model cannot properly be mapped to software sound servers at all, and is also 
problematic on non-PCI hardware such as USB audio. Also, OSS does not do 
sample type conversion, remapping of resampling if necessary. This means that 
clients that properly want to support OSS need to include a complete set of 
converters/remappers/resamplers for the case when the hardware does not 
natively support the requested sampling parameters. With modern sound cards it 
is very common to support only S32LE samples at 48Khz and nothing else. If an 
OSS-client assumes it can always play back S16LE samples at 44.1Khz it will 
thus fail. OSS3 is portable to other Unix-like systems, various differences 
however apply. OSS also doesn't support surround sound and other functionality 
of modern sounds systems properly. OSS should be considered obsolete and not 
be used in new applications. ALSA and PulseAudio have limited LD_PRELOAD-based 
compatibility with OSS.

Are the things so bad or this is kind of rant?
_______________________________________________
oss-devel mailing list
oss-devel@mailman.opensound.com
http://mailman.opensound.com/mailman/listinfo/oss-devel

Reply via email to