Comment 66 for bug 996906

Revision history for this message
In , Rkfg (rkfg) wrote :

I've found that 16000 buffer time with 4000 period time doesn't underrun while if I change the period time to 1000 or 2000 it underruns pretty quickly. Lower buffer times underrun regardless of the period time it seems.

16000/4000 shows these params:

> aplay -D hw:0,0 -v --buffer-time=16000 --period-time=4000 /tmp/fr025.wav
Playing WAVE '/tmp/fr025.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Hardware PCM card 0 'HDA Intel PCH' 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 : 768
  period_size : 192
  period_time : 4353
  tstamp_mode : NONE
  period_step : 1
  avail_min : 192
  period_event : 0
  start_threshold : 768
  stop_threshold : 768
  silence_threshold: 0
  silence_size : 0
  boundary : 6917529027641081856
  appl_ptr : 0
  hw_ptr : 0

16000/2000 is like this:

> aplay -D hw:0,0 -v --buffer-time=16000 --period-time=2000 /tmp/fr025.wav
Playing WAVE '/tmp/fr025.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Hardware PCM card 0 'HDA Intel PCH' 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 : 672
  period_size : 96
  period_time : 2176
  tstamp_mode : NONE
  period_step : 1
  avail_min : 96
  period_event : 0
  start_threshold : 672
  stop_threshold : 672
  silence_threshold: 0
  silence_size : 0
  boundary : 6052837899185946624
  appl_ptr : 0
  hw_ptr : 0
underrun!!! (at least 2.587 ms long)
Status:
  state : XRUN
  trigger_time: 4380.16449247
  tstamp : 4380.19033473
  delay : 0
  avail : 761
  avail_max : 761
^CAborted by signal Interrupt...