From: bsdbeliever on

i'm using xmms... and after doing a cvsup/rebuild from (8.0-release)
to:

FreeBSD elhdt.hoe 8.1-PRERELEASE FreeBSD 8.1-PRERELEASE #3: Sat Jun 12
15:39:04 PDT 2010 root(a)elhdt:/usr/obj/usr/src/sys/GENERIC i386

xmms nolonger works... and i think that problem is that 8.1-pre-
release can now
see additional sound devices that weren't seen before... my problem,
is how do i get
xmms working again (i think, rebind the /dev/dsp device?)

how to bind /dev/dsp to a different beast....

elhdt# ls -l /dev/dsp
crw-rw-rw- 1 root wheel 0, 117 Jun 18 13:07 /dev/dsp

elhdt# ls -l /dev/dsp*
crw-rw-rw- 1 root wheel 0, 111 Jun 17 15:41 /dev/dsp0.0
crw-rw-rw- 1 root wheel 0, 117 Jun 18 13:07 /dev/dsp0.1
crw-rw-rw- 1 root wheel 0, 90 Jun 17 15:41 /dev/dsp1.0
crw-rw-rw- 1 root wheel 0, 89 Jun 17 15:41 /dev/dsp2.0
crw-rw-rw- 1 root wheel 0, 88 Jun 17 15:41 /dev/dsp3.0
crw-rw-rw- 1 root wheel 0, 87 Jun 17 15:41 /dev/dsp4.0

hmm...

clearly, devfs is synthesizing the response to the stat for /dev/dsp
by the first ls -l, and the second shows that /dev/dsp is not really
there, (the shell expansion of '*' doesn't see it) - so /dev/dsp is
probably
some sort of artificial virtual object synthesized by devfs.

my problem is this. i want to bind to the dsp3.0 (pcm3) equivalent
device, and
not the pcm equivalent device (i think). how can i do this ?

any help or suggestions would be appreciated!

elhdt# cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 32bit 2009061500/i386)
Installed devices:
pcm0: <HDA ATI R6xx HDMI PCM #0 HDMI> (play) default
pcm1: <HDA Realtek ALC892 PCM #0 Analog> (play/rec)
pcm2: <HDA Realtek ALC892 PCM #1 Analog> (play/rec)
pcm3: <HDA Realtek ALC892 PCM #2 Digital> (play)
pcm4: <HDA Realtek ALC892 PCM #3 Digital> (play)
From: Patrick Lamaizière on
bsdbeliever :

> my problem is this. i want to bind to the dsp3.0 (pcm3) equivalent
> device, and not the pcm equivalent device (i think). how can i do this ?

> pcm0: <HDA ATI R6xx HDMI PCM #0 HDMI> (play) default

man snd(4):

hw.snd.default_unit
Default sound card for systems with multiple sound cards. When
using devfs(5), the default device for /dev/dsp. Equivalent to a
symlink from /dev/dsp to /dev/dsp${hw.snd.default_unit}.

See also the manual page of snd_hda.

From: bsdbeliever on
On Jun 18, 3:01 pm, Patrick Lamaizière <adre...(a)est.invalid> wrote:
> bsdbeliever :
> > my problem is this.   i want to bind to the dsp3.0 (pcm3) equivalent

> man snd(4):
>
>      hw.snd.default_unit
>              Default sound card for systems with multiple sound cards.  When


RTFM!!! excellent answer!!
(everything now works)
thanks much for the help!!

now... if i could just get squeezeboxserver working....
From: Christian Weisgerber on
bsdbeliever <elhosots(a)gmail.com> wrote:

> xmms nolonger works... and i think that problem is that 8.1-pre-
> release can now
> see additional sound devices that weren't seen before... my problem,
> is how do i get
> xmms working again (i think, rebind the /dev/dsp device?)

Apart from hw.snd.default_unit, you can also configure XMMS to use a
specific device:

Preferences
-> Audio I/O Plugins
-> Output Plugin: OSS Driver 1.2.11 [libOSS.so]
-> Configure
-> Devices
-> Audio Device:

--
Christian "naddy" Weisgerber naddy(a)mips.inka.de