I've spent most of the last couple of days trying to get this to work the way I want, without success. So, again, I appeal to the list for help. System particulars appear at the end.
I'm trying to use ALSA on an HP Omnibook 800CT with the snd-es18xx driver. Although sound samples play intelligibly, the sound quality is not as good as the kernel-supplied OSS driver ('sb' in this case). There appear to be three primary problems: o Straight sample playback using 'aplay' has pops/clicks at regular intervals. o At the very end of a sound sample, 'aplay' will "hiccup", replaying a previous segment of the sample before exiting. o Though coming out of both speakers, playback is monaural. It sounds like left and right channels are being mixed together, and the result played out both speakers. It also sounds like it's being low-pass filtered, but I can't verify that. 'xmms' doesn't appear to suffer from the pop/click or "hiccup" problems, but definitely has the monaural issue. (This is using the ALSA driver support module for 'xmms'.) All of the above were performed using native ALSA tools; the OSS compatibility modules were not loaded or used. I've pored over all the available documentation, and tried fiddling with everything available in 'alsamixer', to no avail. I can control volume levels, but I can't obtain stereo separation or make the "muffling" of the sound go away. Further, if you enable 'mmap mode' in the ALSA XMMS plugin, a number of error dialogs pop up reading, "mmap_commit: Unknown error 332". If you ignore enough of these messages, XMMS will eventually lock up and need to be killed from a shell. Turning 'mmap mode' off will get rid of the errors, but XMMS will be more prone to garbled sound when performing other CPU-intensive tasks. 'aplay -L' outputs a load of gobbledegook I don't understand. I've also appended it below in case anyone does. By contrast, the 'sb' kernel/OSS driver plays stereo fine, and does not pop/click using SOX's 'play' command, but the "hiccup" is still there. 'xmms' playback is flawless in all cases. Here are the options for the 'sb' module: options sb irq=5 dma=1 dma16=5 io=0x220 mpu_io=0x330 Much of my guidance on configuring sound for the HP Omnibook came from MobiliX's Web page on the subject: http://mobilix.org/hp800e.html Since I have sound working using the old, decrepit OSS drivers, this isn't a big deal for me, but I'd like to see ALSA working at least as well as the old stuff. Any and all hints greatly appreciated. Schwab ---- The System ---- Machine: HP Omnibook 800CT laptop Distro: Debian 3.0r0 (woody) Kernel: 2.4.18; DEVFS enabled Sound chip: ESS1887/1888 ---- ALSA Info ---- Version: 0.9.0rc6 Configuration: ./configure --prefix=/usr/local --with-isapnp=yes --with-oss=yes --with-cards=es18xx,es1688 ---- XMMS Info ---- Version: 1.2.7 ALSA Plugin version: 0.9.7 ---- /proc/modules ---- snd-es18xx 16168 1 snd-pcm 53344 0 [snd-es18xx] snd-mpu401-uart 2624 0 [snd-es18xx] snd-rawmidi 11584 0 [snd-mpu401-uart] snd-opl3-lib 5344 0 [snd-es18xx] snd-seq-device 3696 0 [snd-rawmidi snd-opl3-lib] snd-hwdep 3424 0 [snd-opl3-lib] snd-timer 9280 0 [snd-pcm snd-opl3-lib] snd 23912 1 [snd-es18xx snd-pcm snd-mpu401-uart snd-rawmidi snd-opl3-lib snd-seq-device snd-hwdep snd-timer] serial_cs 5440 0 (unused) ds 6720 2 [serial_cs] i82365 22416 2 pcmcia_core 41408 0 [serial_cs ds i82365] apm 8912 2 (autoclean) sr_mod 13528 0 (autoclean) (unused) nvram 3752 0 (unused) msr 1184 0 (unused) af_packet 11464 0 (unused) rtc 5528 0 (autoclean) ---- /etc/modutils/alsa ---- ## ALSA Native parms alias char-major-116 snd options snd cards_limit=1 alias snd-card-0 snd-es18xx options snd-es18xx port=0x220 mpu_port=0x330 irq=5 dma1=1 dma2=5 isapnp=0 ## OSS Emulation parms alias sound-slot-0 sound-card-0 # Map OSS slot 0 to ALSA card 0 alias sound-service-0-0 snd-mixer-oss alias sound-service-0-1 snd-seq-oss alias sound-service-0-3 snd-pcm-oss alias sound-service-0-8 snd-seq-oss alias sound-service-0-12 snd-pcm-oss ---- /proc/asound/cards ---- 0 [ES1887 ]: ES1887 - ESS AudioDrive ES1887 ESS AudioDrive ES1887 at 0x220, irq 5, dma1 1, dma2 5 ---- /proc/asound/devices ---- 0: [0- 0]: ctl 8: [0- 0]: raw midi 16: [0- 0]: digital audio playback 24: [0- 0]: digital audio capture 33: : timer ---- /proc/asound/pcm ---- 00-00: ES1887 : ESS AudioDrive ES1887 : playback 2 : capture 1 ---- /proc/asound/timers ---- G0: system timer : 10000.000us (10000000 ticks) P0-0-0: PCM playback 0-0-0 : SLAVE P0-0-1: PCM capture 0-0-1 : SLAVE P0-0-2: PCM playback 0-0-2 : SLAVE ---- /proc/asound/version ---- Advanced Linux Sound Architecture Driver Version 0.9.0rc6. Compiled on Nov 25 2002 for kernel 2.4.18 with versioned symbols. ---- Output from 'amixer' ---- Simple mixer control 'Master',0 Capabilities: pvolume pswitch cswitch cswitch-joined cswitch-exclusive Capture exclusive group: 0 Playback channels: Front Left - Front Right Capture channels: Mono Limits: Playback 0 - 63 Mono: Capture [off] Front Left: Playback 54 [86%] [on] Front Right: Playback 54 [86%] [on] Simple mixer control 'PCM',0 Capabilities: pvolume cvolume Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: Playback 0 - 15 Capture 0 - 15 Front Left: Playback 8 [53%] Capture 0 [0%] Front Right: Playback 8 [53%] Capture 0 [0%] Simple mixer control 'PCM',1 Capabilities: pvolume Playback channels: Front Left - Front Right Limits: Playback 0 - 15 Front Left: Playback 8 [53%] Front Right: Playback 8 [53%] Simple mixer control 'FM',0 Capabilities: pvolume cvolume Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: Playback 0 - 15 Capture 0 - 15 Front Left: Playback 8 [53%] Capture 0 [0%] Front Right: Playback 8 [53%] Capture 0 [0%] Simple mixer control 'Line',0 Capabilities: pvolume cvolume cswitch cswitch-joined cswitch-exclusive Capture exclusive group: 0 Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: Playback 0 - 15 Capture 0 - 15 Front Left: Playback 0 [0%] Capture 0 [0%] [off] Front Right: Playback 0 [0%] Capture 0 [0%] [off] Simple mixer control 'CD',0 Capabilities: pvolume cvolume cswitch cswitch-joined cswitch-exclusive Capture exclusive group: 0 Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: Playback 0 - 15 Capture 0 - 15 Front Left: Playback 0 [0%] Capture 0 [0%] [off] Front Right: Playback 0 [0%] Capture 0 [0%] [off] Simple mixer control 'Mic',0 Capabilities: pvolume cvolume cswitch cswitch-joined cswitch-exclusive Capture exclusive group: 0 Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: Playback 0 - 15 Capture 0 - 15 Front Left: Playback 0 [0%] Capture 0 [0%] [off] Front Right: Playback 0 [0%] Capture 0 [0%] [off] Simple mixer control 'Mic Boost (+26dB)',0 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'Mic Master',0 Capabilities: cswitch cswitch-joined cswitch-exclusive Capture exclusive group: 0 Capture channels: Mono Mono: Capture [off] Simple mixer control 'Mic1',0 Capabilities: cswitch cswitch-joined cswitch-exclusive Capture exclusive group: 0 Capture channels: Mono Mono: Capture [off] Simple mixer control 'PC Speaker',0 Capabilities: pvolume pvolume-joined Playback channels: Mono Limits: Playback 0 - 7 Mono: Playback 4 [57%] Simple mixer control 'Aux',0 Capabilities: pvolume cvolume Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: Playback 0 - 15 Capture 0 - 15 Front Left: Playback 0 [0%] Capture 0 [0%] Front Right: Playback 0 [0%] Capture 0 [0%] Simple mixer control 'Mono',0 Capabilities: pvolume cvolume Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: Playback 0 - 15 Capture 0 - 15 Front Left: Playback 0 [0%] Capture 0 [0%] Front Right: Playback 0 [0%] Capture 0 [0%] Simple mixer control 'Capture',0 Capabilities: cvolume cswitch cswitch-joined Capture channels: Front Left - Front Right Limits: Capture 0 - 15 Front Left: Capture 15 [100%] [off] Front Right: Capture 15 [100%] [off] Simple mixer control 'Mix',0 Capabilities: cswitch cswitch-joined cswitch-exclusive Capture exclusive group: 0 Capture channels: Mono Mono: Capture [on] Simple mixer control 'AOUT',0 Capabilities: cswitch cswitch-joined cswitch-exclusive Capture exclusive group: 0 Capture channels: Mono Mono: Capture [off] Simple mixer control 'Hardware Master',0 Capabilities: pvolume pswitch Playback channels: Front Left - Front Right Limits: Playback 0 - 63 Front Left: Playback 54 [86%] [on] Front Right: Playback 54 [86%] [on] Simple mixer control 'Hardware Master Volume Split',0 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [off] Simple mixer control 'Record Monitor',0 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [off] ---- Output from 'aplay -L' ---- PCM list: hw { @args.0 CARD @args.1 DEV @args.2 SUBDEV @args.CARD { type string default { @func getenv vars { 0 ALSA_PCM_CARD 1 ALSA_CARD } default { @func refer name 'defaults.pcm.card' } } } @args.DEV { type integer default { @func igetenv vars { 0 ALSA_PCM_DEVICE } default { @func refer name 'defaults.pcm.device' } } } @args.SUBDEV { type integer default { @func refer name 'defaults.pcm.subdevice' } } type hw card $CARD device $DEV subdevice $SUBDEV } plughw { @args.0 CARD @args.1 DEV @args.2 SUBDEV @args.CARD { type string default { @func getenv vars { 0 ALSA_PCM_CARD 1 ALSA_CARD } default { @func refer name 'defaults.pcm.card' } } } @args.DEV { type integer default { @func igetenv vars { 0 ALSA_PCM_DEVICE } default { @func refer name 'defaults.pcm.device' } } } @args.SUBDEV { type integer default { @func refer name 'defaults.pcm.subdevice' } } type plug slave.pcm { type hw card $CARD device $DEV subdevice $SUBDEV } } plug { @args.0 SLAVE @args.SLAVE { type string } type plug slave.pcm $SLAVE } shm { @args.0 SOCKET @args.1 PCM @args.SOCKET { type string } @args.PCM { type string } type shm server $SOCKET pcm $PCM } tee { @args.0 SLAVE @args.1 FILE @args.2 FORMAT @args.SLAVE { type string } @args.FILE { type string } @args.FORMAT { type string default raw } type file slave.pcm $SLAVE file $FILE format $FORMAT } file { @args.0 FILE @args.1 FORMAT @args.FILE { type string } @args.FORMAT { type string default raw } type file slave.pcm null file $FILE format $FORMAT } null { type null } default { type plug slave.pcm { type hw card { @func getenv vars { 0 ALSA_PCM_CARD 1 ALSA_CARD } default { @func refer name 'defaults.pcm.card' } } device { @func igetenv vars { 0 ALSA_PCM_DEVICE } default { @func refer name 'defaults.pcm.device' } } subdevice { @func refer name 'defaults.pcm.subdevice' } } } cards 'cards.pcm' front 'cards.pcm.front' rear 'cards.pcm.rear' center_lfe 'cards.pcm.center_lfe' surround40 'cards.pcm.surround40' surround51 'cards.pcm.surround51' iec958 'cards.pcm.iec958' spdif 'cards.pcm.iec958' ------------------------------------------------------- This SF.NET email is sponsored by: FREE SSL Guide from Thawte are you planning your Web Server Security? Click here to get a FREE Thawte SSL guide and find the answers to all your SSL security issues. http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0026en _______________________________________________ Alsa-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-user