[ALSA - utils 0001304]: Speaker test hangs

bugtrack
2005-08-04T18:21:54Z

Last Modified: 08-04-2005 20:21 CEST
======================================================================
Summary: Speaker test hangs
Description:
After applying the patch to the library that took out the check for a
proper "start_threshold" (file .../alsa-lib/src/pcm/pcm.c around lines 834
or so), I attempted to try a speaker test again. It hung right after
outputting "0 - Front Left". I did an strace and the results are included
in the file attached. I attempted to vary the sample rate (to 44.1 kHz)
with little luck. The wierd thing is that I can execute 'aplay' (with the
default device) and get a '.wav' file to play nicely. I can even get a
multi-channel (4 to be exact) ".wav" file to go thru 'aplay'. Why
speaker-test doesn't work is beyond me. The problem is that I appear to
use similar techniques in my own programming as speaker-test, and my
program doesen't do that well. Being as how speaker-test IS part of ALSA,
I thought I would submit the bug report against it.

If other tests need be preformed, I'd be VERY happy to do them.
======================================================================

----------------------------------------------------------------------
jcdutton - 08-04-05 14:10
----------------------------------------------------------------------
This looks like a bug in the period/buffer size setting.
Buffer size range from 16 to 32768
Period size range from 8 to 16384
Periods = 4
Buffer time size 2525
To choose buffer_size = 15052
To choose period_size = 3763
was set period_size = 3764
was set buffer_size = 15052

Does not make valid sense.
If there are 4 periods, with period size of 3764, the buffer size should
be 15056 and not 15052.

Do you have similar problems with the other sound card?
E.g.
Card 0
speaker-test -c2 -Dplug:front:0
Card 1
speaker-test -c2 -Dplug:front:1

----------------------------------------------------------------------
herby - 08-04-05 20:21
----------------------------------------------------------------------
It seems that the problem is only on the Revolution 7.1 card, since it
hangs, and the motherboard audio (Via 8235) can generate the audio.
Results of the tests:
<<<Revo 7.1 card test (card #0)>>>
[tsw ~]$ speaker-test -c2 -Dplug:front:0

speaker-test 0.0.8

Playback device is plug:front:0
Stream parameters are 48000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 16 to 32768
Period size range from 8 to 16384
Periods = 4
Buffer time size 2525
To choose buffer_size = 15052
To choose period_size = 3763
was set period_size = 3764
was set buffer_size = 15052
0 - Front Left
<<<Hangs, aborted by interupt>>>

<<<Test using the Motherboard audio, card #1>>>
[tsw ~]$ speaker-test -c2 -Dplug:front:1

speaker-test 0.0.8

Playback device is plug:front:1
Stream parameters are 48000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 16 to 16384
Period size range from 8 to 8192
Periods = 4
Buffer time size 2525
To choose buffer_size = 15052
To choose period_size = 3763
was set period_size = 3763
was set buffer_size = 15052
0 - Front Left
1 - Front Right
Time per period = 5.649717
0 - Front Left
1 - Front Right

<< >>

Maybe it is the interaction between the Revo 7.1 driver and the speaker
test. Any more test to be run??