[alsa-devel] Application hangs with different period sizes

anuj aggarwal anuj.aggarwal at gmail.com
Thu Jul 3 09:19:41 CEST 2008


My audio driver supports buffer sizes from 128 to 32768 and period sizes
from 8 to 2048. I am trying to set the period size as 1030 (just a random
number between 8 & 2048, but not multiple of 2^n) and buffer size as
16*buffer_size (i.e. 16480). The output is as follows:

Buffer size range from 128 to 32768
Period size range from 8 to 2048
Request period size 1030 and got 1030
Plug PCM: Hardware PCM card 0 'TWL4030' device 0 subdevice 0
Its setup is:
  stream       : PLAYBACK
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 44100
  exact rate   : 44100 (44100/1)
  msbits       : 16
  buffer_size  : 16480
  period_size  : 1030
  period_time  : 23356
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 1030
  start_threshold  : 16480
  stop_threshold   : 16480
  silence_threshold: 0
  silence_size : 0
  boundary     : 1080033280

The problem with this setup is the application just hangs without playing
anything. If I use period size as 2048, the app plays the song but clips the
last part of it. If I use 1024/512, it works fine.

I have tried alsa lib version 1.0.15 & 1.0.16 but the problem persists. Is
there anything wrong with my app or audio driver?

Please help.

Thanks in advance,
Anuj Aggarwal


More information about the Alsa-devel mailing list