AudioService: fix CTS verifier for stream mute
When changing volume, only change the mute state when the device for which the volume is being changed, is the current device the stream alias is routed to. Bug: 264013194 Test: CTS Verifier Ringer Mode Tests Change-Id: I45e54db86dbfd8a8cbb307e74f7452cf6bbfaf58
This commit is contained in:
@@ -3603,9 +3603,11 @@ public class AudioService extends IAudioService.Stub
|
||||
setRingerMode(getNewRingerMode(stream, index, flags),
|
||||
TAG + ".onSetStreamVolume", false /*external*/);
|
||||
}
|
||||
// setting non-zero volume for a muted stream unmutes the stream and vice versa,
|
||||
// setting non-zero volume for a muted stream unmutes the stream and vice versa
|
||||
// (only when changing volume for the current device),
|
||||
// except for BT SCO stream where only explicit mute is allowed to comply to BT requirements
|
||||
if (streamType != AudioSystem.STREAM_BLUETOOTH_SCO) {
|
||||
if ((streamType != AudioSystem.STREAM_BLUETOOTH_SCO)
|
||||
&& (getDeviceForStream(stream) == device)) {
|
||||
mStreamStates[stream].mute(index == 0);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user