Bug 157806

Summary: [aplay] Warning: rate is not accurate (requested = 44100Hz, got = 48000Hz)
Product: [Fedora] Fedora Reporter: Dave Maley <dmaley>
Component: system-config-soundcardAssignee: Martin Stransky <stransky>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-05-20 14:36:23 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Dave Maley 2005-05-16 01:42:41 UTC
Description of problem:
When trying to play a wave file using aplay on FC4test3 I get the following
warning/error.  This isn't a bogus warning/error - the wave truely doesn't play
at the correct sample rate.

[dave@maggie tmp]$ file test.wav
test.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, stereo
44100 Hz
[dave@maggie tmp]$ aplay test.wav
Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Warning: rate is not accurate (requested = 44100Hz, got = 48000Hz)
         please, try the plug plugin (-Dplug:default)


arecord is also exhibiting the same problem so I'm guessing there's something
wrong w/ the alsa config, but I haven't yet been able to figure it out.

[dave@maggie tmp]$ arecord -f cd foo.wav
Recording WAVE 'foo.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Warning: rate is not accurate (requested = 44100Hz, got = 48000Hz)
         please, try the plug plugin (-Dplug:default)
Aborted by signal Interrupt...


And when I try what's suggested in the warning message it records at 8bit/8KHz:

dave@maggie tmp]$ arecord -Dplug:default foo.wav
Recording WAVE 'foo.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
Aborted by signal Interrupt...
[dave@maggie tmp]$ aplay foo.wav
Playing WAVE 'foo.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
aplay: set_params:857: Sample format non available



Version-Release number of selected component (if applicable): alsa-utils-1.0.9rc2-1


How reproducible:
Every time


Steps to Reproduce:
1. use aplay to play wave file
2.
3.

  
Actual results:
played at wrong sample rate, warning/error message


Expected results:
played correctly


Additional info:
[dave@maggie ~]$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: I440MX [Intel 440MX], device 0: Intel ICH [Intel 440MX]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Modem [Intel 440MX Modem], device 0: Intel ICH - Modem [Intel 440MX
Modem - Modem]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
[dave@maggie ~]$ 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
}
cards 'cards.pcm'
front 'cards.pcm.front'
rear 'cards.pcm.rear'
center_lfe 'cards.pcm.center_lfe'
side 'cards.pcm.side'
surround40 'cards.pcm.surround40'
surround41 'cards.pcm.surround41'
surround50 'cards.pcm.surround50'
surround51 'cards.pcm.surround51'
surround71 'cards.pcm.surround71'
iec958 'cards.pcm.iec958'
spdif 'cards.pcm.iec958'
modem 'cards.pcm.modem'
dmix 'cards.pcm.dmix'
dsnoop 'cards.pcm.dsnoop'
default {
        type hw
        card 0
}
[dave@maggie ~]$lsmod
Module                  Size  Used by
nfs                   219049  0
lockd                  63209  1 nfs
tun                    11457  0
parport_pc             28933  0
lp                     13001  0
parport                40585  2 parport_pc,lp
autofs4                29253  1
rfcomm                 42333  0
l2cap                  30661  5 rfcomm
bluetooth              56133  4 rfcomm,l2cap
sunrpc                167813  3 nfs,lockd
orinoco_cs             10825  1
orinoco                53965  1 orinoco_cs
hermes                  7233  2 orinoco_cs,orinoco
pcmcia                 28897  5 orinoco_cs
dm_mod                 58101  0
video                  15941  0
button                  6609  0
battery                 9413  0
ac                      4805  0
md5                     4033  1
ipv6                  267969  10
pcspkr                  4253  0
yenta_socket           21449  3
rsrc_nonstatic         12737  1 yenta_socket
pcmcia_core            50909  4 orinoco_cs,pcmcia,yenta_socket,rsrc_nonstatic
uhci_hcd               34641  0
snd_intel8x0m          19589  0
i2c_piix4               8657  0
i2c_core               21569  1 i2c_piix4
snd_intel8x0           34689  2
snd_ac97_codec         75961  2 snd_intel8x0m,snd_intel8x0
snd_seq_dummy           3653  0
snd_seq_oss            37057  0
snd_seq_midi_event      9153  1 snd_seq_oss
snd_seq                62289  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device          8781  3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss            51185  0
snd_mixer_oss          17857  2 snd_pcm_oss
snd_pcm               100169  4
snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd_timer              33605  2 snd_seq,snd_pcm
snd                    57157  12
snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
soundcore              10913  2 snd
snd_page_alloc          9669  3 snd_intel8x0m,snd_intel8x0,snd_pcm
e100                   47297  0
mii                     5441  1 e100
ext3                  132553  3
jbd                    86233  1 ext3
[dave@maggie ~]$ lspci
00:00.0 Host bridge: Intel Corporation 82440MX Host Bridge (rev 01)
00:00.1 Multimedia audio controller: Intel Corporation 82440MX AC'97 Audio
Controller
00:00.2 Modem: Intel Corporation 82440MX AC'97 Modem Controller
00:07.0 Bridge: Intel Corporation 82440MX ISA Bridge (rev 01)
00:07.1 IDE interface: Intel Corporation 82440MX EIDE Controller
00:07.2 USB Controller: Intel Corporation 82440MX USB Universal Host Controller
00:07.3 Bridge: Intel Corporation 82440MX Power Management Controller
00:12.0 Ethernet controller: Intel Corporation 82557/8/9 [Ethernet Pro 100] (rev 09)
00:13.0 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus
Controller (rev 02)
00:13.1 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus
Controller (rev 02)
00:14.0 VGA compatible controller: ATI Technologies Inc Rage Mobility P/M (rev 64)
[dave@maggie ~]$ sudo lspci -vv
00:00.0 Host bridge: Intel Corporation 82440MX Host Bridge (rev 01)
        Subsystem: Fujitsu Limited.: Unknown device 107f
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort+ >SERR- <PERR-
        Latency: 64

00:00.1 Multimedia audio controller: Intel Corporation 82440MX AC'97 Audio
Controller
        Subsystem: Fujitsu Limited.: Unknown device 10d0
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
        Latency: 0
        Interrupt: pin B routed to IRQ 9
        Region 0: I/O ports at 1000 [size=256]
        Region 1: I/O ports at 1400 [size=64]

00:00.2 Modem: Intel Corporation 82440MX AC'97 Modem Controller (prog-if 00
[Generic])
        Subsystem: Fujitsu Limited.: Unknown device 10d1
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
        Latency: 0
        Interrupt: pin B routed to IRQ 9
        Region 0: I/O ports at 2000 [size=256]
        Region 1: I/O ports at 1800 [size=128]

00:07.0 Bridge: Intel Corporation 82440MX ISA Bridge (rev 01)
        Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 0

00:07.1 IDE interface: Intel Corporation 82440MX EIDE Controller (prog-if 80
[Master])
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 64
        Region 4: I/O ports at 14a0 [size=16]

00:07.2 USB Controller: Intel Corporation 82440MX USB Universal Host Controller
(prog-if 00 [UHCI])
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 64
        Interrupt: pin D routed to IRQ 15
        Region 4: I/O ports at 1480 [size=32]

00:07.3 Bridge: Intel Corporation 82440MX Power Management Controller
        Control: I/O+ Mem+ BusMaster- SpecCycle+ MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-

00:12.0 Ethernet controller: Intel Corporation 82557/8/9 [Ethernet Pro 100] (rev 09)
        Subsystem: Fujitsu Limited.: Unknown device 1070
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr-
Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 66 (2000ns min, 14000ns max), Cache Line Size 08
        Interrupt: pin A routed to IRQ 9
        Region 0: Memory at fc020000 (32-bit, non-prefetchable) [size=4K]
        Region 1: I/O ports at 1440 [size=64]
        Region 2: Memory at fc000000 (32-bit, non-prefetchable) [size=128K]
        Capabilities: [dc] Power Management version 2
                Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA
PME(D0+,D1+,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=2 PME-

00:13.0 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus
Controller (rev 02)
        Subsystem: Fujitsu Limited.: Unknown device 10e6
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping+ SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
        Latency: 168
        Interrupt: pin A routed to IRQ 9
        Region 0: Memory at 10000000 (32-bit, non-prefetchable) [size=4K]
        Bus: primary=00, secondary=01, subordinate=04, sec-latency=176
        Memory window 0: 10400000-107ff000 (prefetchable)
        Memory window 1: 10800000-10bff000
        I/O window 0: 00004000-000040ff
        I/O window 1: 00004400-000044ff
        BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt+ PostWrite+
        16-bit legacy interface ports at 0001

00:13.1 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus
Controller (rev 02)
        Subsystem: Fujitsu Limited.: Unknown device 10e6
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping+ SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
        Latency: 168
        Interrupt: pin B routed to IRQ 9
        Region 0: Memory at 10001000 (32-bit, non-prefetchable) [size=4K]
        Bus: primary=00, secondary=05, subordinate=08, sec-latency=176
        Memory window 0: 10c00000-10fff000 (prefetchable)
        Memory window 1: 11000000-113ff000
        I/O window 0: 00004800-000048ff
        I/O window 1: 00004c00-00004cff
        BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt+ PostWrite+
        16-bit legacy interface ports at 0001

00:14.0 VGA compatible controller: ATI Technologies Inc Rage Mobility P/M (rev
64) (prog-if 00 [VGA])
        Subsystem: Fujitsu Limited.: Unknown device 1103
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping+ SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
        Latency: 66 (2000ns min), Cache Line Size 08
        Interrupt: pin A routed to IRQ 9
        Region 0: Memory at fd000000 (32-bit, non-prefetchable) [size=16M]
        Region 1: I/O ports at 2400 [size=256]
        Region 2: Memory at fc021000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [5c] Power Management version 1
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

[dave@maggie ~]$

Comment 1 Dave Maley 2005-05-16 03:47:12 UTC
correction, when I pass the suggested plugin (-Dplug:default) and the correct
format (-f cd) it plays correctly:

[dave@maggie tmp]$ aplay -Dplug:default -f cd test.wav
Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Aborted by signal Interrupt...
[dave@maggie tmp]$


Not sure why this is needing to be specified now ... didn't need to under FC3.

Comment 2 Martin Stransky 2005-05-16 12:24:17 UTC
It will work properly if you remove /etc/asound.conf file. I have to
fix system-config-soundcard, it writes only simple configuration now.

Comment 3 Dave Maley 2005-05-16 17:59:35 UTC
Martin - you're exactly right, removing the /etc/asound.conf did the
trick here.

Looks like the config generated by S-C-S was quite close to being
correct.  Just needed to replace "!default" with "intel8x0" globally.

Thanks!

Comment 4 Martin Stransky 2005-05-17 07:27:34 UTC
The problem is here:

default {
        type hw
        card 0
}

ALSA has his own configuration for Intel ICH, but S-C-S bypasses it
with hw device.

Comment 5 Dave Maley 2005-05-19 03:00:52 UTC
So I guess this should turn into a S-C-S bug ...