adev->voice_device_set flag is to indicate voice call
device routing update from policymanager to HAL. It is
set to true in voice_start_call and reset in update_calls()
which causes mismatch in flag update during back to back
voice calls scenario. Update adev->voice_device_set flag
in voice_stop_call instead of update_calls(). Rename
voice_device_set flag to in_call for readability.
Change-Id: Ie07105671f254899890bdb4c0635c7dc1f55dbff
- Add flac in supported codecs list
- Set FLAC codec specific parameters
- Set fragment size based on bit width and sampling rate
for flac
- Configure backend to 24/16 bit based on the current
usecases running
Change-Id: If013078e277fd3053fba6489345803f8f58bd86d
ADSP supports Fluence Broadside algorithm in Speaker Phone mode
for voice call and audio recording usecases. Add support for
the same in audio HAL.
Change-Id: Iaa6c2c4621bf0b93b9be92748f70a0fc33a74a90
- If pcm_start fails for any reason, hfp ignores the failure.
- This could lead to issues as the failures are not handled.
- Return appropriate error and break execution when pcm_start fails.
CRs-Fixed: 684608
Change-Id: Iad43b3d3e3e71e7191d41bbea317f2079d57784a
In APQ8084, Audio HAL needs to update voice call rx and tx
devices in csd client before call start otherwise csd client
sends default devices to MDM. Fix to update csd client devices.
Change-Id: I0a5a1689a92475f052d80a92003e3eacb68d2051
- Adding support for WB audio with BT devices
- Deprecate bt_samplrate" keyvalue pair which was
used earlier to determine wide band speech useCase.
Change-Id: Idc766dc4d8ecf25818f16bccc48c6740b0dfce65
-This change adds DSDA support for APQ based targets
where external modem is used for voice calls.
-Add new CSD API to support local call hold.
Change-Id: I7743a1df43dc1abac4e325ff104ec1bb64c9e12b
Stream was null causing data abort when speaker
protection is enabled. Set it to primary_output in case
of playback and set device in case of recording.
Change-Id: I4b532ad7d76adab75e1ef0719eaba197eb3d9379
We don't need to dereference out stream in case of playback.
So move it down so that it gets de-referenced only when needed.
Change-Id: I162346395f4bbb9b3ba04a8fc4b9f3433096ab1a
Speaker protection module should acquire the device lock for all global
operations. This change will ensure that the pre-conditions required for
calibration will be met and if any audio/voice usecase is started when
speaker calibration is being done,speaker protection thread should
cancel the calibration.
Change-Id: I0d5fa23657161ec971e851944a0045a01d8248ea
CRs-fixed: 688972
Audio hal maintains link list that contains all active audio/voice
usecases. When usecase is being started it shoule be be added to
list and removed when usecase is disabled.
Speaker protection usecases were not being added to the list which was
causing the speaker calibration pre-emption to fail. Change updates the
usecase list and ensures that device lock is not acquired when
calibration is being pre-empted
CRs-fixed: 688972
Change-Id: I377346243ceaaebfcf80673f367dbd8bb83d5381
- Update Dolby EAC3 audio format enum to
AUDIO_FORMAT_E_AC3.
- This new format is introduced in AOSP code
Change-Id: Id1f524b430b086b881c74f6cb91c9823439a251a
The device switch from speaker to earpiece or vice versa fails
during a QQ voip call. Currently, we use the same devices for
all usecases as that of voice/voip call and avoid switching the
same for other usecases when a voip/voice call is active. At
times, voip call has primary output which uses deep buffer path.
With current design in place, we do not permit device switch on
deep buffer path since voip call is active despite the rx on
primary output.
Do not select voip usecase devices if the output stream uses
primary output or in effect permit switching.
Change-Id: Ie61a7d7d8f27d55a393d173a724697045f66e1d6
CRs-Fixed: 685222
- Same TX device would be seleted in camcorder and voice call.
- SND_DEVICE_IN_VOICE_SPEAKER_DMIC would be used for speaker mode when
in call, which was same as camcorder used.Thus, the tuning updation
in camcorder stereo recording would affect voice call performance.
- Fix by selecting SND_DEVICE_IN_HANDSET_STEREO_DMIC as input devices
in camcorder, only when the fluence type is dual mic and the channel
count is 2.
CRs-Fixed: 685263
Change-Id: Iba521f13a3d51e99f0f8ba4d8d4fd721975bc5ae
- add support for time stamp error propagation
to frameworks on compress driver error
- close active compress session on SSR
Change-Id: I9cbd3a6c271097b81c9b79e71573fda8d78c7dbf
The mtp 8939 hardware has a bug due to which the primary
mic is the top mic.
The change chooses the right mixer paths which takes care
of swapping the mics which uses the bottom mic for
primary mic.
Change-Id: I370268e98178acc8a41bc733d2df83def227c1fc
If a audio/voice usecase is active, hal should re-try the speaker
calibration.Speaker portection mutex was not being unlocked for this
usecase which causes ANR.Change unlocks the mutex which fixes the issue.
CRs-fixed: 671620
Change-Id: Ic29697e29e96dba784941f4e29664b8c10f51e84