Hello Android

run cts -m CtsCameraTestCases -t android.hardware.cts.CameraTest#testPreviewFpsRange

팔콘알파 2019. 11. 5. 15:31

[CTS][Android 9.0]

run cts -m CtsCameraTestCases -t android.hardware.cts.CameraTest#testPreviewFpsRange 

testPreviewFpsRange junit.framework.AssertionFailedError

 

 

/media/pastime0/hellob/sources/pie/cts/cts/tests/camera/src/android/hardware/cts/CameraTest.java

1
2
3
4
5
6
7
8
9
10
11
        // Test if the list is properly sorted.
        for (int i = 0; i < fpsList.size() - 1; i++) {
            int minFps1 = fpsList.get(i)[Parameters.PREVIEW_FPS_MIN_INDEX];
            int maxFps1 = fpsList.get(i)[Parameters.PREVIEW_FPS_MAX_INDEX];
            int minFps2 = fpsList.get(i + 1)[Parameters.PREVIEW_FPS_MIN_INDEX];
            int maxFps2 = fpsList.get(i + 1)[Parameters.PREVIEW_FPS_MAX_INDEX];
 
            assertTrue(maxFps1 < maxFps2
                    || (maxFps1 == maxFps2 && minFps1 < minFps2));
        }
 

 

  

위 소스 코드의 assertTrue 에서 faill 발생

fps 배열을 정렬해 주어야 한다. 

 

mm-camera/mm-camera2/media-controller/mct/pipeline/mct_pipeline.c

mct_util_sort_fps_entries 함수를 이용하여 hal table 을 정렬

1
2
3
4
5
6
7
8
9
10
11
static boolean mct_pipeline_fill_dimensions_snapshot (
  mct_pipeline_t *pipeline,
  const int32_t snap_sensor_width, const int32_t snap_sensor_height )
{
/*
...
...
*/
  mct_util_sort_fps_entries(hal_data->fps_ranges_tbl, hal_data->fps_ranges_tbl_cnt);
 
}