Asrc: Refactor the clock recovery to use HCI Read Clock information as source of truth
The previous solution using LE Credit Ind acknowledgments for ASHA clock estimation fails when multiple audio frames are sent in the same LE connection event, which is a possibility allowed by the specification. This means that neither HCI Number of Completed packets nor LE Credit Ind acknowledgments can be used as reliable source for the BT clock estimation. Instead the command HCI Read Clock is regularly scheduled during streaming to measure the local clock (Which_Clock = 0), and the measurements sub-sampled then filtered to obtain a clean time translation. Bug: 292195353 Bug: 321057945 Bug: 312273987 Test: manual; ASHA streaming test, validate stability after >1H of streaming Test: manual; LE audio streaming test, validate stability after >1H of streaming Test: m com.android.btservices Change-Id: If5596456945adb49aebf491aeb0dbd5f5c3ce9a4
Loading
Please register or sign in to comment