Hi,

I think that I got around understanding snd_pcm_update_hw_ptr_interrupt() now.
The reason of my enquiries is that I get a very strange behaviour while playing
back audio on a sound card: the playback_copy() function is called too many
times before audio is actually played out, thus overwriting the buffer. For
instance, with 2 periods of 160 bytes (buffer_size = 320):

playback_prepare() on sound dev0
snd_pci2103_mode() on sound dev0,  bsize:320  psize:160  pnsam:160
playback_prepare() on sound dev0
playback_copy() on sound dev0,  pos:0 ->160
    from d0865000 to c19e0000: ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ
card 0: Sending Audio_Data  fmt:1  cnt:160 (160 bytes)  last:0  pos:160
tasklet: send 24 bytes of dataPayload (including 0 bytes of mmTags)
tasklet: send 160 bytes of extPayload from c19e0000 to 800020a0
    ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ
playback_pointer() on sound dev0,  last:160  pos:160  ptr:160
playback_prepare() on sound dev0
playback_copy() on sound dev0,  pos:160 ->320
    from d0865000 to c19e00a0: g ÿ ÿ ÿ ÿ ÿ ÿ ÿ
playback_pointer() on sound dev0,  last:160  pos:320  ptr:160
playback_copy() on sound dev0,  pos:0 ->160
    from d0865000 to c19e0000: g g [ [ [ S S S
playback_prepare() on sound dev0
playback_copy() on sound dev0,  pos:160 ->320
    from d0865000 to c19e00a0: g g [ [ [ S S S
playback_pointer() on sound dev0,  last:160  pos:320  ptr:160
playback_copy() on sound dev0,  pos:0 ->160
    from d0865000 to c19e0000: Û ç ç ç ÿ ÿ ÿ g
playback_prepare() on sound dev0
playback_copy() on sound dev0,  pos:160 ->320
    from d0865000 to c19e00a0: Û ç ç ç ÿ ÿ ÿ g
playback_pointer() on sound dev0,  last:160  pos:320  ptr:160
playback_copy() on sound dev0,  pos:0 ->160
    from d0865000 to c19e0000: Ó Û Û Û Û Û Û Û
playback_prepare() on sound dev0
playback_copy() on sound dev0,  pos:160 ->320
    from d0865000 to c19e00a0: Ó Û Û Û Û Û Û Û
card 0: Sending Audio_Data  fmt:1  cnt:160 (160 bytes)  last:160  pos:320
tasklet: send 24 bytes of dataPayload (including 0 bytes of mmTags)
tasklet: send 160 bytes of extPayload from c19e00a0 to 80002220
    Ó Û Û Û Û Û Û Û
playback_pointer() on sound dev0,  last:320  pos:320  ptr:0


This is puzzling, and the fact that I moved from ALSA rc1 to rc2 at the same
time that I was changing some aspects of the driver make it more difficult to
trace where the error comes from. Can any of you make something out of that
log?

Guilhem.


__________________________________________________
Do You Yahoo!?
Yahoo! Health - Feel better, live better
http://health.yahoo.com


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to