Merge "Fix Tv source audio device adjust volume, and audio is breaks up intermittently." am: 67dccd5e64

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1008694

Change-Id: If4c87a590bb8545f4e91061389569bd45ddefbe5
This commit is contained in:
Treehugger Robot
2021-10-26 07:35:56 +00:00
committed by Automerger Merge Worker

View File

@@ -1075,17 +1075,22 @@ class TvInputHardwareManager implements TvInputHal.Callback {
}
if (shouldRecreateAudioPatch) {
mCommittedVolume = volume;
if (mAudioPatch != null) {
mAudioManager.releaseAudioPatch(mAudioPatch);
}
mAudioManager.createAudioPatch(
// only recreate if something was updated or audioPath is null
if (mAudioPatch == null || sinkUpdated ||sourceUpdated ) {
if (mAudioPatch != null) {
mAudioManager.releaseAudioPatch(mAudioPatch);
audioPatchArray[0] = null;
}
mAudioManager.createAudioPatch(
audioPatchArray,
new AudioPortConfig[] { sourceConfig },
sinkConfigs.toArray(new AudioPortConfig[sinkConfigs.size()]));
mAudioPatch = audioPatchArray[0];
if (sourceGainConfig != null) {
mAudioManager.setAudioPortGain(mAudioSource, sourceGainConfig);
mAudioPatch = audioPatchArray[0];
}
}
if (sourceGainConfig != null) {
mAudioManager.setAudioPortGain(mAudioSource, sourceGainConfig);
}
}