[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ALSA / DMIX



First, why use xmms when Alsaplayer is so cool? Its really good IMHO. Alsa is great, especially if you are a musician or work with midi or such. Nothing beats it.

For mplayer, hmm... mine works and is self compiled, make sure you have your kernel source compiled and supposedly it will detect alsa headers and such. Even if if has to use oss fallback that should still work ok.

It took me some tinkering around to get alsa working on my system but it is definately superior to anything else around. If it even works at all then thats a real good sign.

Tip: try killing esd if its running, there's some bug with it that it grabs /dev/dsp and locks it so it really screws up alsa apps.

Tip2: compile your kernel with static sound, (no modules), debian alsa will grumble a bit about no modules found but it all should work. A static kernel sometimes isn't a bad idea for a laptop since your hardware is known and immutable. I usually build all static support for laptop internal devices and modules for pluggable things like USB, serial, parallel, etc.

- Doug



Nicolás Velásquez O. wrote:

Hello there,

My system:
- Dell, Inspiron 5100
- Debian sarge
- snd_intel8x0
- Self compiled kernel 2.6.7

I've had not so nice experiences (neither dmix nor asym) with it:
- Using xmms, if there is a lot of disk usage, audio will stop playing.
- Using (self compiled) mplayer, the audio won't play well.

Solutions: (better solutions are welcome!!!!!!)
- xmms, use xmms through arts (and arts through alsa)
- MPlayer, give cache to the default alsa device.

Solutions drawbacks:
- xmms, arts ain't that good, some audio files will play lossy.
- MPlayer, none.

Links:
http://alsa.opensrc.org/index.php?page=DmixPlugin
http://alsa.opensrc.org/index.php?page=asym



My /etc/asound.conf:
#asym fun start here. we define one pcm device called "dmixed"
pcm.dmixed {
      type dmix
      ipc_key 1025
      slave {
               pcm "hw:0,0"      # you cannot use a "plug" device
						#here,darn.
               period_time 0
               period_size 1024  # must be power of 2
               buffer_size 8192  # dito. It
               #format "S32_LE"
               #periods 128      # dito.
               #rate 8000        # with rate 8000 you *will* hear,
                                 # if ossmix is used :)
      }
      bindings {
              0 0
              1 1
      }
}

#one called "dsnooped" for capturing
pcm.dsnooped {
       ipc_key 1027
       type dsnoop
       slave.pcm "hw:0,0"
}

#and this is the real magic
pcm.asymed {
       type asym
       playback.pcm "dmixed"
       capture.pcm "dsnooped"
}

#a quick plug plugin for above device to do the converting magic
pcm.pasymed {
       type plug
       slave.pcm "asymed"
}

#a ctl device to keep xmms happy
ctl.pasymed {
       type hw
       card 0
}

#for aoss:
pcm.dsp0 {
       type plug
       slave.pcm "asymed"
}

ctl.mixer0 {
       type hw
       card 0
}

# alsa default card
pcm.!default {
      type plug
      slave.pcm "asymed"
}
#done


El Vie 09 Jul 2004 18:37, Chris Metcalf escribió:
Has anybody had a good experience getting the Dmix plugin working
well with ALSA?

I'm trying to get my laptop (Thinkpad X31 using the snd_intel8x0 ALSA
module) to be able to play more than one wave channel at once, but
I'm not having much success.

Any helpful direction (howtos, good/bad experiences, alternate
methods) would be appreciated.

Thanks,
--
Chris Metcalf
chris@chrismetcalf.net
http://chrismetcalf.net




Reply to: