Johan & All, Following recent mailing list discussions, i decided to implement some of the ideas that have been suggested recently. :-) So i heavily modified the A2DP streaming part of the pcm plugin The user-visible features of this patch: * much reduced latency (You should love this one Frederic) * supports headsets that are unable to throttle the data flow and that play too fast or drop packets or whatever (Marcel, could you please confirm that fixes the issues you had with some headsets ?). This patch is fairly intrusive, and removes some code that i judjed useless now, like the bandwidth measurement stuff, and has greatly simplifyed transfer loop for avdtp (see comments in the code for the justifications) It brings in a thread that has for only reponsibility to increment the so called hardware pointer (which doesn't point to anything in our case), and notify the application trough writing in a pipe that some room is available (virtual room again), so that it could send more data. The attached file details the tests i've run to check i didn't break anything. All is conclusive except playing with XMMS that goes underrun for a reason i haven spotted yet. Apart from that aplay, mplayer, gstreamer are fine. I'm looking forward for any questions you have on the patch. Nest step would be to fix the SCO part of the plugin, but this one is looks harder as i think it will require tweaking the kernel SCO part. Regards, Fabien