Gustavo da Silva Serra wrote: >> _______________________________________________ >> > It silences a whole period because the pointer inside aloop behaves like > that. Logging the pointer inside aloop I discovered that it is > incremented so fast inside timer function that when pointer function is > called, the pointer is not being incremented anymore. It is like a > concurrency issue: first the pointer will be incremented many times, > after that, the pointer function will be called many times with the same > pointer value. Later, the pointer will be incremented some more, and so > on... > I wonder if this is not the problem, logging the pointer for my sound > card I see a different behavior: the pointer function return offset > between two periods. > _______________________________________________ Sounds like this is a critical section that has no protection. So the sequence is messed up. In the regular sound card, there must be a semaphore or block to prevent this kind of behavior. You could probably add the logic from the regular card to the aloop function and fix it. _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel