Le sens de la période d'ALSA

Je suis en utilisant ALSA pour et application audio sur Linux, j'ai trouvé beaucoup de docs d'expliquer comment l'utiliser : Un et cette une. bien que j'ai quelques problèmes pour comprendre cette partie de l'installation :

 /* Set number of periods. Periods used to be called fragments. */ 
if (snd_pcm_hw_params_set_periods(pcm_handle, hwparams, periods, 0) < 0) {
  fprintf(stderr, "Error setting periods.\n");
  return(-1);
}

ce qui signifie un nombre de période où je suis en utilisant le mode de LECTURE
et :

/* Set buffer size (in frames). The resulting latency is given by */
/* latency = periodsize * periods /(rate * bytes_per_frame)     */
if (snd_pcm_hw_params_set_buffer_size(pcm_handle, hwparams, (periodsize * periods)>>2) < 0) {
  fprintf(stderr, "Error setting buffersize.\n");
  return(-1);
}

et la même question ici à propos de la latence , comment dois-je le comprendre?

OriginalL'auteur Engine | 2014-06-04