Merge "DWB Bias splines ignore default ambient CCT" into qt-r1-dev am: 3c19edaec6
am: d691ea0c4f
Change-Id: I713fac567d9652c0bf1cee757c4c4128fc77cda9
This commit is contained in:
@@ -356,13 +356,15 @@ public class DisplayWhiteBalanceController implements
|
||||
|
||||
float ambientBrightness = mBrightnessFilter.getEstimate(time);
|
||||
|
||||
if (mLowLightAmbientBrightnessToBiasSpline != null) {
|
||||
if (ambientColorTemperature != -1.0f &&
|
||||
mLowLightAmbientBrightnessToBiasSpline != null) {
|
||||
float bias = mLowLightAmbientBrightnessToBiasSpline.interpolate(ambientBrightness);
|
||||
ambientColorTemperature =
|
||||
bias * ambientColorTemperature + (1.0f - bias)
|
||||
* mLowLightAmbientColorTemperature;
|
||||
}
|
||||
if (mHighLightAmbientBrightnessToBiasSpline != null) {
|
||||
if (ambientColorTemperature != -1.0f &&
|
||||
mHighLightAmbientBrightnessToBiasSpline != null) {
|
||||
float bias = mHighLightAmbientBrightnessToBiasSpline.interpolate(ambientBrightness);
|
||||
ambientColorTemperature =
|
||||
(1.0f - bias) * ambientColorTemperature + bias
|
||||
|
||||
@@ -359,6 +359,33 @@ public final class AmbientLuxTest {
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLowLight_DefaultAmbient() throws Exception {
|
||||
final float lowerBrightness = 10.0f;
|
||||
final float upperBrightness = 50.0f;
|
||||
setBrightnesses(lowerBrightness, upperBrightness);
|
||||
setBiases(0.0f, 1.0f);
|
||||
|
||||
DisplayWhiteBalanceController controller =
|
||||
DisplayWhiteBalanceFactory.create(mHandler, mSensorManagerMock, mResourcesSpy);
|
||||
final float ambientColorTemperature = -1.0f;
|
||||
setEstimatedColorTemperature(controller, ambientColorTemperature);
|
||||
controller.mBrightnessFilter = spy(controller.mBrightnessFilter);
|
||||
|
||||
for (float t = 0.0f; t <= 1.0f; t += 0.1f) {
|
||||
setEstimatedBrightnessAndUpdate(controller,
|
||||
mix(lowerBrightness, upperBrightness, t));
|
||||
assertEquals(controller.mPendingAmbientColorTemperature, ambientColorTemperature,
|
||||
0.001);
|
||||
}
|
||||
|
||||
setEstimatedBrightnessAndUpdate(controller, 0.0f);
|
||||
assertEquals(controller.mPendingAmbientColorTemperature, ambientColorTemperature, 0.001);
|
||||
|
||||
setEstimatedBrightnessAndUpdate(controller, upperBrightness + 1.0f);
|
||||
assertEquals(controller.mPendingAmbientColorTemperature, ambientColorTemperature, 0.001);
|
||||
}
|
||||
|
||||
void mockThrottler() {
|
||||
when(mResourcesSpy.getInteger(
|
||||
R.integer.config_displayWhiteBalanceDecreaseDebounce)).thenReturn(0);
|
||||
|
||||
Reference in New Issue
Block a user