Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 8965cb59 authored by Pavan Chikkala's avatar Pavan Chikkala
Browse files

alsa_sound : porting audio changes from 2.5

-Proxy buffering can overflow if BT playback setup takes a lot of
 time
-Fix this by increasing the proxy buffer size so that
 we will end up buffering the additional data that can come
 in during this time. CRs-Fixed: 514100

-There were glitches heard at times when listening to music over
 Bluetooth
-The issue was that due to slight scheduling delays when the
 proxy read thread in the HAL wakes up there could be more
 than one period size worth of data in the proxy. This would
 result in the proxy copying out only one period but
 incrementing the buffer by whatever thats available.
 This resulted in a glitch
-Fix this, we have to make sure that the pointer is incremented
 only by the amount of data thats actually read from the
 proxy. CRs-Fixed: 514100

-There are instances when delays in the system setup causes
 buffering to fill up in Proxy. This results in Proxy buffers
 being very close to full leading to choppy audio.
-To fix this we need to flush the data in the proxy whenever the
 high water mark is reached. The water mark is set to 40000 frames
 for now. This can be changed by changing the
 AFE_PROXY_HIGH_WATER_MARK_FRAME_COUNT. CRs-Fixed: 514100
 CRs-Fixed: 499841

-When touch tone plays for the first time while music playback is
 going on, a short break in music happens.
-In checkDeviceMuteStrategies whenever there is a change in device
 on an output, tempMute is set. However the same tempMute is used to
 decide whether to mute an already existing session on a different
 output irrespective of the current active device on that output. Due to
 this mute and unmute happens even when there is no real change in
 device on a particular output which might cause a short break in
 playback.
-Add check to ensure that active streams are temporarily muted only
 in case of a change in device on that particular output.CRs-Fixed: 495009

- Volume is not applied if playback is done on direct output
  with stream as VOICE_CALL and mode value set to MODE_NORMAL
- Voip volume is not applied in HAL if mode is not set
- Set voip volume explicitly in HAL everytime. CRs-Fixed: 493282

- Voip volume is not applied on direct output and as a result
  volume cannot be adjusted for some voicemail applications
  which opens direct output stream with mode set to IN_CALL
- Voice volume is applied only for primary output and volume
  command is not sent to HAL for direct output
- Call voice volume api for direct output as well from policy
  manager. CRs-Fixed: 493282

-While switching from Headset to speaker during FM play,
 stream is unmuted because of less latency time
-Increased temp mute time to ensure unmute after device switch
 CRs-Fixed: 493180

-When switching between headset and speaker, stream is not muted,
 which needs more time to route proper device.
-Fixed by adding IsFMEnabled from getParameters() to maintain fm
 device status,in order to Increased temp mute time to ensure more
 mute time when switch. CRs-Fixed: 493180

-Crash is observed when Hungouts and Gtalk start running
 simultaneously
-Dirver does not support multiple instances of voip call.
-Avoid creating multiple voip session if mVoipStreamCount
 is already 2. CRs-Fixed: 440160

Change-Id: I2e6dc0e7f5b49aab6350332dbdf0632b6b4e1a6c
parent 66c22114
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment