Merge "AudioService: fix step rescaling."
This commit is contained in:
@@ -1582,12 +1582,13 @@ public class AudioService extends IAudioService.Stub
|
|||||||
setMicrophoneMuteNoCallerCheck(currentUser);
|
setMicrophoneMuteNoCallerCheck(currentUser);
|
||||||
}
|
}
|
||||||
|
|
||||||
private int rescaleIndex(int index, int srcStream, int dstStream) {
|
private int getIndexRange(int streamType) {
|
||||||
int srcRange =
|
return (mStreamStates[streamType].getMaxIndex() - mStreamStates[streamType].getMinIndex());
|
||||||
mStreamStates[srcStream].getMaxIndex() - mStreamStates[srcStream].getMinIndex();
|
}
|
||||||
int dstRange =
|
|
||||||
mStreamStates[dstStream].getMaxIndex() - mStreamStates[dstStream].getMinIndex();
|
|
||||||
|
|
||||||
|
private int rescaleIndex(int index, int srcStream, int dstStream) {
|
||||||
|
int srcRange = getIndexRange(srcStream);
|
||||||
|
int dstRange = getIndexRange(dstStream);
|
||||||
if (srcRange == 0) {
|
if (srcRange == 0) {
|
||||||
Log.e(TAG, "rescaleIndex : index range should not be zero");
|
Log.e(TAG, "rescaleIndex : index range should not be zero");
|
||||||
return mStreamStates[dstStream].getMinIndex();
|
return mStreamStates[dstStream].getMinIndex();
|
||||||
@@ -1598,6 +1599,17 @@ public class AudioService extends IAudioService.Stub
|
|||||||
/ srcRange;
|
/ srcRange;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private int rescaleStep(int step, int srcStream, int dstStream) {
|
||||||
|
int srcRange = getIndexRange(srcStream);
|
||||||
|
int dstRange = getIndexRange(dstStream);
|
||||||
|
if (srcRange == 0) {
|
||||||
|
Log.e(TAG, "rescaleStep : index range should not be zero");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return ((step * dstRange + srcRange / 2) / srcRange);
|
||||||
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// IPC methods
|
// IPC methods
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
@@ -1774,7 +1786,7 @@ public class AudioService extends IAudioService.Stub
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// convert one UI step (+/-1) into a number of internal units on the stream alias
|
// convert one UI step (+/-1) into a number of internal units on the stream alias
|
||||||
step = rescaleIndex(10, streamType, streamTypeAlias);
|
step = rescaleStep(10, streamType, streamTypeAlias);
|
||||||
}
|
}
|
||||||
|
|
||||||
// If either the client forces allowing ringer modes for this adjustment,
|
// If either the client forces allowing ringer modes for this adjustment,
|
||||||
|
|||||||
Reference in New Issue
Block a user