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