I'm playing with the new aucat. Or rather, running it, since unlike
every other soundserver it doesn't require endless tweaking to just
work. There is one issue I'm having, and I'm not sure if it's on
purpose or not. Whenever (say) pidgin (or anything else) plays sound
my music dims in volume. It makes sense the clients have to be turned
down so two playing at 100% don't blow the speakers, but the trouble
is the dip in sound is -really obvious-.

I found
     -v volume
             Software volume attenuation of the playback stream.  The value
             must be between 1 and 127, corresponding to -42dB and -0dB atten-
             uation.  In server mode, clients inherit this parameter.  Reduc-
             ing the volume in advance reduces a client's dynamic range, but
             allows client volume to stay independent from the number of
             clients as long as their number is small enough.  A good compro-
             mise is to use -4dB attenuation (12 volume units) for each addi-
             tional client expected (115 if 2 clients are expected, 103 for 3
             clients, and so on).
which I interpret as saying that if I run aucat as "aucat -l -v 50" it
should predim the volume of any client that connects so that the dip
doesn't happen. If I'm right about that (which I'm not at all sure
that I am) then aucat is behaving badly because I even tried giving
"-v 1" and heard no change at all.


OpenBSD 4.5-current (GENERIC.MP) #80: Mon Apr 20 12:59:56 MDT 2009
    dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC.MP
cpu0: Intel(R) Core(TM)2 CPU U7600 @ 1.20GHz ("GenuineIntel" 686-class) 1.20 GHz
cpu0: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,EST,TM2,CX16,xTPR
real mem  = 1064202240 (1014MB)
avail mem = 1020690432 (973MB)
mainbus0 at root
bios0 at mainbus0: AT/286+ BIOS, date 10/30/07, BIOS32 rev. 0 @
0xfcb25, SMBIOS rev. 2.4 @ 0xec000 (40 entries)
bios0: vendor TOSHIBA version "Version 1.50" date 10/30/2007
bios0: TOSHIBA PORTEGE R500
acpi0 at bios0: rev 0
acpi0: tables DSDT FACP SSDT APIC MCFG HPET TCPA SLIC SSDT SSDT
acpi0: wakeup devices USB1(S3) USB3(S3) USB4(S3) EHCI(S3) GLAN(S4)
WLAN(S4) LID_(S4) PWRB(S4) HS87(S4) HS86(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: apic clock running at 133MHz
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Core(TM)2 CPU U7600 @ 1.20GHz ("GenuineIntel" 686-class) 1.20 GHz
cpu1: 
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,EST,TM2,CX16,xTPR
ioapic0 at mainbus0: apid 1 pa 0xfec00000, version 20, 24 pins
ioapic0: misconfigured as apic 0, remapped to apid 1
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 3 (PCIB)
acpiprt2 at acpi0: bus 1 (PEX1)
acpiprt3 at acpi0: bus 2 (MPEX)
acpitz0 at acpi0: critical temperature 102 degC
acpicpu0 at acpi0
acpicpu1 at acpi0
acpibtn0 at acpi0: LID_
acpibat0 at acpi0: BAT1 model "G71C00086210" serial 0000000796 type
Li-ION   oem "0"
acpibtn1 at acpi0: PWRB
acpiac0 at acpi0: AC unit offline
acpidock at acpi0 not configured
acpivideo at acpi0 not configured
bios0: ROM list: 0xc0000/0x10000 0xe0000/0x10000!
cpu0: unknown Enhanced SpeedStep CPU, msr 0x060b090e0600090e
cpu0: using only highest and lowest power states
cpu0: Enhanced SpeedStep 1200 MHz (924 mV): speeds: 1200, 800 MHz
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
extent `pciio' (0x0 - 0xffff), flags=0
     0xaf10 - 0xaf1f
     0xaf24 - 0xaf2f
     0xaf34 - 0xaf9f
     0xafe0 - 0xbfff
     0xcff8 - 0xcfff
extent `pcimem' (0x0 - 0xffffffff), flags=0
     0x0 - 0x9ffff
     0xe0000 - 0x3fffffff
     0xe0000000 - 0xefffffff
     0xfec00000 - 0xfec17fff
     0xfec20000 - 0xfec27fff
     0xfed00000 - 0xfed003ff
     0xfed14000 - 0xfed19fff
     0xfed1c000 - 0xfed8ffff
     0xfeda0000 - 0xfedbffff
     0xfee00000 - 0xfee00fff
     0xff600000 - 0xff8fffff
     0xff980000 - 0xffbfffff
     0xffc3b800 - 0xffffffff
pchb0 at pci0 dev 0 function 0 "Intel 82945GM Host" rev 0x03
vga1 at pci0 dev 2 function 0 "Intel 82945GM Video" rev 0x03
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
intagp0 at vga1
agp0 at intagp0: aperture at 0xe0000000, size 0x10000000
inteldrm0 at vga1: apic 1 int 16 (irq 10)
drm0 at inteldrm0
"Intel 82945GM Video" rev 0x03 at pci0 dev 2 function 1 not configured
azalia0 at pci0 dev 27 function 0 "Intel 82801GB HD Audio" rev 0x02:
apic 1 int 22 (irq 11)
azalia0: codecs: Realtek ALC262
audio0 at azalia0
ppb0 at pci0 dev 28 function 0 "Intel 82801GB PCIE" rev 0x02
pci1 at ppb0 bus 1
extent `ppb0 pciio' (0x0 - 0xffff), flags=0
     0x0 - 0xafff
     0xbfe0 - 0xffff
extent `ppb0 pcimem' (0x0 - 0xffffffff), flags=0
     0x0 - 0xff7fffff
     0xff8e0000 - 0xffffffff
em0 at pci1 dev 0 function 0 "Intel PRO/1000MT (82573L)" rev 0x00:
apic 1 int 16 (irq 10), address 00:15:b7:43:a0:f2
ppb1 at pci0 dev 28 function 2 "Intel 82801GB PCIE" rev 0x02
pci2 at ppb1 bus 2
extent `ppb1 pcimem' (0x0 - 0xffffffff), flags=0
     0x0 - 0xff6fffff
     0xff7ff000 - 0xffffffff
wpi0 at pci2 dev 0 function 0 "Intel PRO/Wireless 3945ABG" rev 0x02:
apic 1 int 18 (irq 11), MoW1, address 00:1c:bf:78:7f:04
uhci0 at pci0 dev 29 function 0 "Intel 82801GB USB" rev 0x02: apic 1
int 23 (irq 11)
uhci1 at pci0 dev 29 function 1 "Intel 82801GB USB" rev 0x02: apic 1
int 19 (irq 11)
uhci2 at pci0 dev 29 function 2 "Intel 82801GB USB" rev 0x02: apic 1
int 18 (irq 11)
uhci3 at pci0 dev 29 function 3 "Intel 82801GB USB" rev 0x02: apic 1
int 16 (irq 10)
ehci0 at pci0 dev 29 function 7 "Intel 82801GB USB" rev 0x02: apic 1
int 23 (irq 11)
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
ppb2 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0xe2
pci3 at ppb2 bus 3
extent `ppb2 pcimem' (0x0 - 0xffffffff), flags=0
     0x0 - 0xff5fffff
     0xff6f8000 - 0xff6fbfff
     0xff6ff700 - 0xffffffff
cbb0 at pci3 dev 11 function 0 "TI PCIXX12 CardBus" rev 0x00: apic 1
int 21 (irq 255)
"TI PCIXX12 FireWire" rev 0x00 at pci3 dev 11 function 1 not configured
sdhc0 at pci3 dev 11 function 3 "TI PCIXX12 Secure Data" rev 0x00:
apic 1 int 23 (irq 11)
sdmmc0 at sdhc0
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 4 device 0 cacheline 0x8, lattimer 0x20
pcmcia0 at cardslot0
ichpcib0 at pci0 dev 31 function 0 "Intel 82801GBM LPC" rev 0x02: PM disabled
ahci0 at pci0 dev 31 function 2 "Intel 82801GBM AHCI" rev 0x02: apic 1
int 19 (irq 11), AHCI 1.1
scsibus0 at ahci0: 32 targets
sd0 at scsibus0 targ 0 lun 0: <ATA, TOSHIBA MK1637GS, DL03> SCSI3 0/direct fixed
sd0: 152627MB, 512 bytes/sec, 312581808 sec total
usb1 at uhci0: USB revision 1.0
uhub1 at usb1 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb2 at uhci1: USB revision 1.0
uhub2 at usb2 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci2: USB revision 1.0
uhub3 at usb3 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb4 at uhci3: USB revision 1.0
uhub4 at usb4 "Intel UHCI root hub" rev 1.00/1.00 addr 1
isa0 at ichpcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
mtrr: Pentium Pro MTRR support
umass0 at uhub0 port 4 configuration 1 interface 0 "TOSHIBA Optical
Drive Controller" rev 2.00/0.00 addr 2
umass0: using ATAPI over Bulk-Only
scsibus1 at umass0: 2 targets, initiator 0
cd0 at scsibus1 targ 1 lun 0: <MATSHITA, DVD-RAM UJ-844S, 1.03> ATAPI
5/cdrom removable
ugen0 at uhub2 port 1 "AuthenTec Fingerprint Sensor" rev 1.10/c.10 addr 2
softraid0 at root
root on sd0a swap on sd0b dump on sd0b

-Nick

p.s. I know the manpage suggests sharing the sound device is a bad
plan but I just have a simple home system and I'd like to know if
aucat gives me the freedom to run multiple users against it (I could
come up with lots of justifications, like letting the daemons we
summon speak, but really it's just curiousity). It seems like all it
would take is redirecting libsndio to point at the right socket, but
because the socket is in /tmp/aucat-$USER_ID/ I don't see how this is
possible. Can libsndio be told what socket to use?

Reply via email to