It looks like that the capture direction receives an interrupt before the >capture pointer has reached the period size boundary. You can increase the >insterrupt delay, something like this:
i'll check on that, but i don't think thats what happened above. this should make it clearer (i processed the log this time): ---------------------------------------------------------------------- elapsed msecs interval cycle event usecs counter ----------------------------------------------------------------------- 2.644553 1171.313 5043063 trident interrupt chn = 0x40000000 capture interrupt discarded as spurious (but history is not shown) 2.671316 26.762 5055106 trident interrupt chn = 0x80000000 2.686758 15.442 5062055 wakeup stream playback with 66 (since capture wake: 644915) only playback woken, capture is still sleeping 2.704093 17.336 5069856 playback poll 2601: avail = 66 2.712380 8.287 5073585 capture poll 2679: avail = 2 2.841204 128.824 5131556 capture poll 2680: avail = 2 4.150211 1309.007 5720609 trident interrupt chn = 0x80000000 next period, interrupt received, for playback only 4.166867 16.656 5728104 wakeup stream playback with 130 (since capture wake: 1310964) 4.186267 19.400 5736834 trident interrupt chn = 0x40000000 capture interrupt received, but discarded as spurious (too close to last interrupt (16+19 = 35usecs or 1.54 samples)). capture stream not woken. 5.568176 1381.909 6358693 trident interrupt chn = 0x80000000 next period, playback interrupt received 5.584111 15.936 6365864 wakeup stream playback with 193 (since capture wake: 1948724) wake up playback 5.603336 19.224 6374515 trident interrupt chn = 0x40000000 capture interrupt received (matches previous playback interrupt?) 5.621320 17.984 6382608 wakeup stream capture with 66 (since capture wake: 1965468) this time, its 17+19 = 36 usec later ... hmm, this is still on 1.55 samples, so how come it succeeds at waking up the capture stream instead of being discarded? ---------------------------------------------------------------------- i'll have to add some more tracing code to make sure i see all the discards. right now, i'm infering them from the code logic, but apparently something else can happen. --p _______________________________________________ Alsa-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-devel