This is pretty dissapointing, I'd expect any Pulse Audio developer to
be better informed.

When I was watching Freenode's Arch Linux channel, someone mentioned
that OSS4 would probably replace ALSA one day. I eventually took a
look at it, and was suprised at how good its driver support was.
hda_intel device's mic ports rarely worked out of the box with ALSA
for me, but were flawless in OSS4. OSS4 is a very nice system,
although I wish more applications supported 24 bit audio with it, and
that it had a nicer build system.

I am building an Arch Linux fork called Icadyptes, and OSS4 is now the
exclusive audio system :-). It does not even have ALSA modules
anywhere in the repository; not much reason to have them in my
opinion.

Cheers,
Teran (sega01)

PS: It would be nice if ossplay had its stdin support documented
(currently not in the man pages or ossplay -h).

On Fri, Sep 26, 2008 at 04:52, Lyvim Xaphir <[EMAIL PROTECTED]> wrote:
> This shit really, really really pisses me off.
>
> LX
>
>
>
> On Wed, 2008-09-24 at 21:07 -0700, Dev Mazumdar wrote:
>> Yair K. wrote:
>> > On Thursday 25 September 2008 01:02:31 SeaJey wrote:
>> >> 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?
>> >
>> > It's pretty inaccurate FUD (From the URL address - it's Pulseaudio's 
>> > author, right? I'd have expected him to know better). He's basically 
>> > judging OSS per the old OSS/Free drivers, which is like 5 years ago, and 
>> > even that he does wrong.
>> > First, *all* current implementations/emulations of OSSv3 do sample 
>> > conversion. It's not even a property defined by the API but by the 
>> > underlying drivers.
>> > Second, even OSSv3 supported surround, USB cards, etc.
>> > Third, arguing that "it cannot be virtualized" is disproven by the amount 
>> > of emulations and alternative implementations existing out there and 
>> > working in practice. (The main difficulty is mmap() API, which is very 
>> > rarely used anyway, and even that can be done with, say, oss2pulse).
>> > Fourth, complaining about OSS API being awkward, is... well, awkward when 
>> > you compare it to ALSA API, if you could compare it, since most ALSA API 
>> > isn't documented.
>> > It's kinda funny he advocates using ALSA API (not in the quoted part 
>> > above, but last time I read his blog he suggested it). Actual ALSA devs 
>> > advocate against it, but using a sound library with multiple backends[1].
>> >
>> > [1] e.g. http://www.archivum.info/linux.kernel/2006-01/msg02687.html
>> >
>> > P.S. Most modern soundcards I've seen do "S16LE" and nothing else, 
>> > unfortunately.
>> > _______________________________________________
>> > oss-devel mailing list
>> > oss-devel@mailman.opensound.com
>> > http://mailman.opensound.com/mailman/listinfo/oss-devel
>> >
>>
>>
>> Hi,
>>
>> I've already sent Lennart a note.....here's his response.
>>
>> The biggest piece of BS:  OSS also doesn't support surround sound and
>> other functionality of modern sounds systems properly. ...
>>
>> regards
>> Dev
>>
>> -------- Original Message --------
>> Subject: Re: [alsa-devel] Guide to Linux Sound APIs
>> Date: Thu, 25 Sep 2008 02:35:21 +0200
>> From: Lennart Poettering <[EMAIL PROTECTED]>
>> Organization: Red Hat, Inc.
>> To: Dev Mazumdar <[EMAIL PROTECTED]>
>> References: <[EMAIL PROTECTED]>
>> <[EMAIL PROTECTED]>
>>
>> On Wed, 24.09.08 16:05, Dev Mazumdar ([EMAIL PROTECTED]) wrote:
>>
>>  > How did you decide for all the Linux community that Open Sound System
>>  > should not be used for any new programs?.
>>
>> I did not "decide" anything. I just wrote up a guide that gives
>> recommendations.
>>
>> I gave quite a few reasons why I think noone should write new
>> Linux applications for the OSS API:
>>
>> <snip>
>> ... 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 user-space
>> 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 or 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. ...
>> </snip>
>>
>> Sure, some of the issues pointed out here may have been fixed in
>> OSS4. But OSS4 is irrelevant on Linux. Also we don't need two APIs
>> that have the same purposes. That's why this guide recommends ALSA and
>> not OSS.
>>
>>  > We have been telling our customers quite the contrary to go with
>> GStreamer
>>  > rather than use Pulse Audio.
>>
>> You seem to confuse things here. GStreamer and PulseAudio solve
>> completely different problems and have almost nothing in common. It's
>> like recommending to go with a window instead of a dog. ;-)
>>
>>  > I think you may have completely underestimated the practicality and the
>>  > robustness of Open Sound.
>>
>> Hehe, that doesn't change the fact that OSS3 is obsolete and OSS4 plays
>> no role on Linux and the API is generally questionnable.
>>
>> Lennart
>>
>> --
>> Lennart Poettering                        Red Hat, Inc.
>> lennart [at] poettering [dot] net         ICQ# 11060553
>> http://0pointer.net/lennart/           GnuPG 0x1A015CC4
>>
>>
>
> _______________________________________________
> oss-devel mailing list
> oss-devel@mailman.opensound.com
> http://mailman.opensound.com/mailman/listinfo/oss-devel
>
_______________________________________________
oss-devel mailing list
oss-devel@mailman.opensound.com
http://mailman.opensound.com/mailman/listinfo/oss-devel

Reply via email to