Hello,

I was assuming that using poll (snd_pcm_wait), with the
alsa-lib/test/latency.c program would have snd_pcm_read
return period size samples at a time, but this is not
the case.

As far as I understand, the problem is that in the following
code:

        val = !block ? 4 : snd_pcm_hw_params_get_period_size(params, NULL);
        if (tick_time_ok > 0)
                val = 16;
        err = snd_pcm_sw_params_set_avail_min(handle, swparams, val);

val = 4, instead of snd_pcm_hw_params_get_period_size(params, NULL);
(because with poll, block = 0)

Is there any reason for this? Wouldn't it make more sense to
simply do

        val = snd_pcm_hw_params_get_period_size(params, NULL);
        err = snd_pcm_sw_params_set_avail_min(handle, swparams, val);

So, is my assumption wrong, or is the code wrong? If my assumption
is wrong, could you explain me why it is better/more logical that
the latency test is polling for very small buffers, instead of the
latency?

Maarten



_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to