CameraITS: ensure min yuv format is landscape for tests

Change-Id: I73c9bfa0087e574a299dc2337a190536fb622f38
diff --git a/apps/CameraITS/pymodules/its/objects.py b/apps/CameraITS/pymodules/its/objects.py
index a8b1535..0883482 100644
--- a/apps/CameraITS/pymodules/its/objects.py
+++ b/apps/CameraITS/pymodules/its/objects.py
@@ -265,7 +265,7 @@
     return req, out_spec
 
 
-def get_smallest_yuv_format(props):
+def get_smallest_yuv_format(props, match_ar=None):
     """Return a capture request and format spec for the smallest yuv size.
 
     Args:
@@ -275,7 +275,7 @@
         fmt:    an output format specification, for the smallest possible yuv
         format for this device.
     """
-    size = get_available_output_sizes("yuv", props)[-1]
+    size = get_available_output_sizes("yuv", props, match_ar_size=match_ar)[-1]
     fmt = {"format":"yuv", "width":size[0], "height":size[1]}
 
     return fmt
diff --git a/apps/CameraITS/tests/scene1/test_auto_vs_manual.py b/apps/CameraITS/tests/scene1/test_auto_vs_manual.py
index 89fb04f..849c720 100644
--- a/apps/CameraITS/tests/scene1/test_auto_vs_manual.py
+++ b/apps/CameraITS/tests/scene1/test_auto_vs_manual.py
@@ -38,10 +38,12 @@
 
         # Converge 3A and get the estimates.
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
         sens, exp, gains, xform, focus = cam.do_3a(get_results=True)
         xform_rat = its.objects.float_to_rational(xform)
         print "AE sensitivity %d, exposure %dms" % (sens, exp/1000000.0)
diff --git a/apps/CameraITS/tests/scene1/test_black_white.py b/apps/CameraITS/tests/scene1/test_black_white.py
index 0cdf54c..e2de71e 100644
--- a/apps/CameraITS/tests/scene1/test_black_white.py
+++ b/apps/CameraITS/tests/scene1/test_black_white.py
@@ -36,10 +36,13 @@
                              its.caps.per_frame_control(props))
 
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
+
         expt_range = props['android.sensor.info.exposureTimeRange']
         sens_range = props['android.sensor.info.sensitivityRange']
 
diff --git a/apps/CameraITS/tests/scene1/test_ev_compensation_advanced.py b/apps/CameraITS/tests/scene1/test_ev_compensation_advanced.py
index 0537b25..d355cd8 100644
--- a/apps/CameraITS/tests/scene1/test_ev_compensation_advanced.py
+++ b/apps/CameraITS/tests/scene1/test_ev_compensation_advanced.py
@@ -42,10 +42,12 @@
                              its.caps.ev_compensation(props))
 
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         ev_compensation_range = props['android.control.aeCompensationRange']
         range_min = ev_compensation_range[0]
diff --git a/apps/CameraITS/tests/scene1/test_ev_compensation_basic.py b/apps/CameraITS/tests/scene1/test_ev_compensation_basic.py
index a67c342..9992667 100644
--- a/apps/CameraITS/tests/scene1/test_ev_compensation_basic.py
+++ b/apps/CameraITS/tests/scene1/test_ev_compensation_basic.py
@@ -42,10 +42,12 @@
                              its.caps.ae_lock(props))
 
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         ev_per_step = its.objects.rational_to_float(
                 props['android.control.aeCompensationStep'])
diff --git a/apps/CameraITS/tests/scene1/test_exposure.py b/apps/CameraITS/tests/scene1/test_exposure.py
index 3cdfaf7..26e3f4d 100644
--- a/apps/CameraITS/tests/scene1/test_exposure.py
+++ b/apps/CameraITS/tests/scene1/test_exposure.py
@@ -52,10 +52,12 @@
                              its.caps.per_frame_control(props))
 
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         e,s = its.target.get_target_exposure_combos(cam)["minSensitivity"]
         s_e_product = s*e
diff --git a/apps/CameraITS/tests/scene1/test_linearity.py b/apps/CameraITS/tests/scene1/test_linearity.py
index 9e9f1cc..9de1af3 100644
--- a/apps/CameraITS/tests/scene1/test_linearity.py
+++ b/apps/CameraITS/tests/scene1/test_linearity.py
@@ -51,10 +51,12 @@
                              its.caps.per_frame_control(props))
 
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         e,s = its.target.get_target_exposure_combos(cam)["midSensitivity"]
         s /= 2
diff --git a/apps/CameraITS/tests/scene1/test_param_color_correction.py b/apps/CameraITS/tests/scene1/test_param_color_correction.py
index ba00ec0..4ce8933 100644
--- a/apps/CameraITS/tests/scene1/test_param_color_correction.py
+++ b/apps/CameraITS/tests/scene1/test_param_color_correction.py
@@ -42,10 +42,12 @@
 
         # Baseline request
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         e, s = its.target.get_target_exposure_combos(cam)["midSensitivity"]
         req = its.objects.manual_capture_request(s, e, 0.0, True, props)
diff --git a/apps/CameraITS/tests/scene1/test_param_exposure_time.py b/apps/CameraITS/tests/scene1/test_param_exposure_time.py
index 527349c..fafde9d 100644
--- a/apps/CameraITS/tests/scene1/test_param_exposure_time.py
+++ b/apps/CameraITS/tests/scene1/test_param_exposure_time.py
@@ -38,10 +38,12 @@
                              its.caps.per_frame_control(props))
 
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         e,s = its.target.get_target_exposure_combos(cam)["midExposureTime"]
         for i,e_mult in enumerate([0.8, 0.9, 1.0, 1.1, 1.2]):
diff --git a/apps/CameraITS/tests/scene1/test_param_flash_mode.py b/apps/CameraITS/tests/scene1/test_param_flash_mode.py
index 1339b0c..2d8c678 100644
--- a/apps/CameraITS/tests/scene1/test_param_flash_mode.py
+++ b/apps/CameraITS/tests/scene1/test_param_flash_mode.py
@@ -38,10 +38,12 @@
         # it should be obvious whether the flash fired or not, and use a
         # linear tonemap.
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         e, s = its.target.get_target_exposure_combos(cam)["midExposureTime"]
         e /= 4
diff --git a/apps/CameraITS/tests/scene1/test_param_sensitivity.py b/apps/CameraITS/tests/scene1/test_param_sensitivity.py
index 4f9d880..32b764d 100644
--- a/apps/CameraITS/tests/scene1/test_param_sensitivity.py
+++ b/apps/CameraITS/tests/scene1/test_param_sensitivity.py
@@ -40,10 +40,12 @@
                              its.caps.per_frame_control(props))
 
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         expt,_ = its.target.get_target_exposure_combos(cam)["midSensitivity"]
         sens_range = props['android.sensor.info.sensitivityRange']
diff --git a/apps/CameraITS/tests/scene1/test_param_tonemap_mode.py b/apps/CameraITS/tests/scene1/test_param_tonemap_mode.py
index b392346..1229f90 100644
--- a/apps/CameraITS/tests/scene1/test_param_tonemap_mode.py
+++ b/apps/CameraITS/tests/scene1/test_param_tonemap_mode.py
@@ -42,10 +42,12 @@
                              its.caps.per_frame_control(props))
 
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         e, s = its.target.get_target_exposure_combos(cam)["midExposureTime"]
         e /= 2
diff --git a/apps/CameraITS/tests/scene1/test_tonemap_sequence.py b/apps/CameraITS/tests/scene1/test_tonemap_sequence.py
index f2cce57..2b5f094 100644
--- a/apps/CameraITS/tests/scene1/test_tonemap_sequence.py
+++ b/apps/CameraITS/tests/scene1/test_tonemap_sequence.py
@@ -36,10 +36,12 @@
                              its.caps.per_frame_control(props))
 
         debug = its.caps.debug_mode()
+        largest_yuv = its.objects.get_largest_yuv_format(props)
         if debug:
-            fmt = its.objects.get_largest_yuv_format(props)
+            fmt = largest_yuv
         else:
-            fmt = its.objects.get_smallest_yuv_format(props)
+            match_ar = (largest_yuv['width'], largest_yuv['height'])
+            fmt = its.objects.get_smallest_yuv_format(props, match_ar=match_ar)
 
         sens, exp_time, _,_,f_dist = cam.do_3a(do_af=True,get_results=True)