[alsa-devel] Still have choppy audio using 1.0.17

stan ghjeold_i_mwee at cox.net
Tue Jul 15 23:31:59 CEST 2008


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.


More information about the Alsa-devel mailing list