On Thu, 2014-01-16 at 10:17 +1100, James Bunton wrote: > --- > src/modules/bluetooth/module-bluez5-device.c | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) Thanks for the patch! What's the background here? Are there products on the market that send invalid SBC data? It seems that we update timing stuff before the decoding is done, which means that with your change the timing information behaves as if we received valid data, but the audio stream from the source doesn't actually progress. To fix this mismatch, I think you should move the timing updates to happen after successful decoding, or alternatively we should replace the invalid data with a matching amount of silence. (Something to note about the timing code is that it's currently actually very broken, because "u->read_index += (uint64_t) l" in a2dp_process_push() treats l as if it referred to the length of the decoded PCM data, while in reality it refers to length of the RTP header + SBC data.) If this change is justified, the same change should be done in module-bluez4-device.c too. -- Tanu