Hi folks,
The "deprecated" OSS issue needs some clarification. It's just the
OSS/Free drivers that are still hanging around in the kernel. that are
depracated. They are based on 10 years old version of the OSS
architecture and lack all the improvements and features added during
past years.
However the real OSS by 4Front Technoliges is there to stay. While OSS
is "binary only" at this moment the situation is changing. We are about
to release OSS 4.0 under some open source license. We still need to
decide the exact license (GPL, CDDL, BSD or some combination of them)
before releasing the sources but that should happen in the near future
(maybe weeks or months).
The whole "OSS is depracated" issue is just marketing propaganda used
to enforce application developers to jump to the ALSA API. Without this
developers would stick with OSS which is several magnitudes easier API
to use.
OSS and ALSA are very different APIs. OSS is designed for professional
software developers who should get their job done within tight
schedules. For this reason it has strong device abstraction. Everything
that could be automated has been automated. ALSA in turn is designed for
hackers (in the 1st place) who like to tweak every possible detail of
the hardware. This means there is practically no device abstraction and
the application should be more or less aware of the capabilities of the
hardware. Which API works better depends on the nature of the
application. This decision should not be driven by some political issues
as today.
My message is that if you prefer OSS over ALSA then there is no need to
convert the code. OSS has been in the shadows during past couple of
years. However it will be back, We are working on an OSS version that
makes it possible to ALSA and OSS to co-exist. Both OSS and ALSA will be
_native_ code (no emulation). In this way all Linux audio applications
will work regardless of which API they use.
Best regards,
Hannu
lemmel wrote:
Le mercredi 01 novembre 2006 16:51, Kjetil S.
Matheussen a écrit :
Only the oss modules in the linux kernel are
deprecated. Programs using
the OSS api will still continue to work, currently most importantly
because of the oss emulation module in alsa.
I knew that the oss module was deprecated, and I infered that using the OSS
mecanism was too deprecated :-P. Are sure [1]?
If you should choose between alsa and oss, and the
oss version works
just as well, or better than the alsa version, choose oss, because its a
more portable API than alsa.
What do you mean by "the oss version works just as well, or better than the
alsa version" ?
However, if I were you, I would use sndlib,
portaudio, jack, or some other
higher level audio input/output library instead of oss or alsa.
Well, all the files, that I will play, will have the same charactistics, do I
really need to bother with an hi-level API [2] ?
[1] I noticed that a lot of applications still use OSS, and I thought it was
because the migration to ALSA was too complex.
[2] Futhermore I am afraid that an hi-level API will produce time drifts in
the playing.