increase frame rate check margin as there is no guarantee that the specified frame rate can be achieved.
Change-Id: Ia2157364891268c79bae1f5be136601dc8d67f1b
diff --git a/tests/tests/hardware/src/android/hardware/cts/CameraTest.java b/tests/tests/hardware/src/android/hardware/cts/CameraTest.java
index 217042d..1bb8bc1 100755
--- a/tests/tests/hardware/src/android/hardware/cts/CameraTest.java
+++ b/tests/tests/hardware/src/android/hardware/cts/CameraTest.java
@@ -1689,28 +1689,30 @@
// variance is averaged out.
// Check if the frame interval is too large or too small.
- double intervalMargin = 30; // ms
+ // x100 = percent, intervalMargin should be bigger than fpsMargin considering that
+ // fps will be in the order of 10.
+ double intervalMargin = 0.9;
long lastArrivalTime = mFrames.get(mFrames.size() - 1);
double interval = arrivalTime - lastArrivalTime;
if (LOGV) Log.v(TAG, "Frame interval=" + interval);
assertTrue("Frame interval (" + interval + "ms) is too large." +
" mMaxFrameInterval=" + mMaxFrameInterval + "ms",
- interval < mMaxFrameInterval + intervalMargin);
+ interval < mMaxFrameInterval * (1.0 + intervalMargin));
assertTrue("Frame interval (" + interval + "ms) is too small." +
" mMinFrameInterval=" + mMinFrameInterval + "ms",
- interval > mMinFrameInterval - intervalMargin);
+ interval > mMinFrameInterval * (1.0 - intervalMargin));
// Check if the fps is within range.
- double fpsMargin = 0.05;
+ double fpsMargin = 0.5; // x100 = percent
double avgInterval = (double)(arrivalTime - mFrames.get(0))
/ mFrames.size();
double fps = 1000.0 / avgInterval;
assertTrue("Actual fps (" + fps + ") should be larger than " +
"min fps (" + mMinFps + ")",
- fps >= mMinFps * (1 - fpsMargin));
+ fps >= mMinFps * (1.0 - fpsMargin));
assertTrue("Actual fps (" + fps + ") should be smaller than " +
"max fps (" + mMaxFps + ")",
- fps <= mMaxFps * (1 + fpsMargin));
+ fps <= mMaxFps * (1.0 + fpsMargin));
}
// Add the arrival time of this frame to the list.
mFrames.add(arrivalTime);