[PATCH 0/7] android: Audio improvements

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Here are few patches which should further improve our audio HAL. I've had
them in my tree for couple of weeks and didn't notice any problems with
streaming (tested on Nexus 4 and 5).

Patches 1-3 are simple fixes/cleanup.

Patch 4 changes L2CAP socket used in audio HAL to non-blocking (with
proper polling on socket state) which enables more sophisticated
audio stream handling introduced in subsequent patches.

Patch 5 changes way in which socket congestion (due to any reason) is
handled by simply skipping some audio data instead of trying to send
data indefinitely. This helps to maintain synchronization between audio
clock and data sent which is crucial for sleeping code to work properly.

Patches 6 and 7 enables dynamic audio quality control (for SBC it's
just bitpool adjustment) which enchances patch 5, i.e we not only skip
audio data but also reduce audio quality and effectively reduce stream
bandwidth which makes more possible that streaming will be smooth.

Patches 4-7 are inspired by current PulseAudio implementation.



Andrzej Kaczmarek (7):
  android/a2dp: Prefer master role on incoming connections
  android/hal-audio: Remove preset with 48000 frequency
  android/hal-audio: Add resume_endpoint helper
  android/hal-audio: Make audio socket non-blocking
  android/hal-audio: Resync audio when lagging too much
  android/hal-audio: Add support to control audio quality
  android/hal-audio: Adjust audio quality automatically

 android/a2dp.c      |   1 +
 android/hal-audio.c | 320 +++++++++++++++++++++++++++++++++++++---------------
 2 files changed, 232 insertions(+), 89 deletions(-)

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux