[alsa-devel] A question about period

Yu-hsuan Hsu yuhsuan at google.com
Fri Aug 3 08:28:37 CEST 2018


Hi all,

I have a question about the period we set in hw_params. I found different
boards may have different explanations about it. I have two guesses about
its meaning.

1. The period_size is the size of each hardware's consumption. If we set
period size to N, the pcm will consume N frames each time.

2. The period_size is the size to control when hardware call interrupt. If
we set period size to N, the pcm consume frames in its step. When the
number of frames it consumes more than N, it will call interrupt.

We can use snd_pcm_avail function to check the real available frames in
the device. If guess 1 is correct, the size of consumption should be fixed.
Else, setting period_size is nothing to do with hardware's
consumption. I've checked some boards and found that each board has
different behavior (Most of them meet guess 2). I'm confuse which one is
correct. Thanks!


More information about the Alsa-devel mailing list