On Wed, 28 Nov 2001, Paul Davis wrote:

> after hacking both the kernel driver and alsa-lib, this is the view
> from user-space. each block between "----" is single return from
> poll(2). i added code to print the values of the hw_ptr and appl_ptr
> from within alsa-lib.
>
> -----------------------
> hwptr = 65 apptr = 0
> hwptr = 128 apptr = 64
> hw avail: c:64 p:66
> this time = 64
> hwptr = 128 apptr = 64
>         contiguous = 64
> -----------------------
> hwptr = 128 apptr = 64
> hwptr = 193 apptr = 128
> hw avail: c:65 p:65
> this time = 64
> hwptr = 193 apptr = 128
>         contiguous = 64
> -----------------------
> hwptr = 193 apptr = 128
> hwptr = 193 apptr = 192    <=== THIS
> hw avail: c:1 p:66
> this time = 0
>
> the line marked THIS seems impossible to me. we've returned from
> poll(2), but only one hwptr has changed since the last time. i just
> don't understand how this can happen. unless its an xrun, but that

Note that IRQ acknowledge differs for playback and capture streams for the
Trident hardware. So it is possible, that one stream is acknowledged
before other and the hw pointer is updated only inside IRQ routine.

                                                Jaroslav

-----
Jaroslav Kysela <[EMAIL PROTECTED]>
SuSE Linux    http://www.suse.com
ALSA Project  http://www.alsa-project.org


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

Reply via email to