ramon buckland was once rumoured to have said:
> Ah beautiful topic..
> 
> Problem: Trying to install a standard sound system
>       (got some apps that require OSS) under debian.
> 
> Quesion: What's the status of Linux and Sound, is there a standard
>       or many projects saying they are trying to be standard ?

There's both.  At the moment, sound is in a light state of flux.

> (now read what fun Ive had - suggestions comments)
> 
> I'm using Debian Woody, I have a bog standard Vibra16C snd card.
> 
> My understanding of Sound under Linux is
> * ALSA
> * OSS - is OSS a standard and ALSA supports it??
> * sndconfig - The Redhat one (where the heck does that fit in? It worked i
> know it's redhat)

Uh, no:

There are 3 sets of drivers:
  * OSS/Free[1] - the standard kernel sound support.
  * ALSA - the Advanced Linux Sound Architecture
  * OSS - Open Sound System (Commercial Drivers)

sndconfig is just a front end on redhat systems to configure the
OSS/Free support.

Both OSS and OSS/Free use the same interfaces to grant software access
to the sound hardware.  ALSA uses a somewhat different interface, but
has modules that let software use the OSS ones.

First of all, forget ALSA unless you know how to build your own
kernels and modules, because it all gets fiddly.

Also, because you only have a Vibra16C, there is no point in using
ALSA since OSS/Free supports supports the 16C just as well as ALSA
does.

Now, in order to configure OSS/Free support on Debian, I'll assume you
have all the sound modules built.  the Vibra16C family is supported by
the 'sb' driver.

*** NOTE: This is the highly manual way, I'm sure there are much
***       better ways to do this, but this works.

If your Vibra16C is configured via PnP, use[2]:

   pnpdump > /etc/isapnp.conf

to generate a PnP config file, edit it and comment out *ONE* set of
settings for each device in the file, making sure they don't clash
with anything.  Typical settings would be Port 0x220, IRQ 5 and DMAs 1
and 5.

Finally, to activate this PnP config, run:

   isapnp /etc/isapnp.conf

Now, edit your /etc/modutils/sound (creating it if necessary), and add
the line:

options sb io=<base address> irq=<irq> dma=<8bit dma> dma16=<16bit dma>

and then

  /sbin/update-modules

to update your /etc/modules.conf

now, run:

  modprobe sb

to load the sb module and make sure you have everything properly
configured.

If loading sb succeeds, then you can add the line 'sb' to your
/etc/modules, so debian will autoload the module at boot-time, and
you'll be set.

Of course, for PCI cards, this is simply a case of finding which
driver supports your PCI card, and sticking it in /etc/modules so the
driver gets loaded.  Fortunately ISA won't be sticking around for too
much longer if the motherboard vendors have their way.

To punctuate the difference, to get a SBLive running under OSS/Free,
its a simple case of loading the driver with:

modprobe emu10k1

or for the SBLive's elcheapo cousin, the SB ES1371, its:

modprobe es1371

and once you've tested that it works, adding the module's name to
/etc/modules.

As you can see, much simpler than stuffing about with the debian
modules.conf system and ISAPnP.

C.

[1] Or whatever its called now.  I keep on forgetting.

[2] I still use isapnptools when possible.  I'm sure people will say
    there are "better" ways, but I prefer actually having control
    since I know whats going on.  You might actually be able to skip
    the ISAPnP step with 2.4 since it has some internal isapnp
    support.  Does anybody who still uses ISAPnP SB16s like to
    comment?
-- 
--==============================================--
  Crossfire      | This email was brought to you
  [EMAIL PROTECTED] | on 100% Recycled Electrons
--==============================================--
-- 
SLUG - Sydney Linux User's Group - http://slug.org.au/
More Info: http://lists.slug.org.au/listinfo/slug

Reply via email to