Commit Graph

286 Commits

Author SHA1 Message Date
zhangweiwei
c8ce2b26b1 Camera: Vts: Fix missing session close am: d21dd860ce
am: 7e49059a05

Change-Id: Iac501001a108f60f7734d5e0a0076d0aa95b49aa
2019-07-08 17:33:17 -07:00
zhangweiwei
d21dd860ce Camera: Vts: Fix missing session close
Test: vendor testing, Camera VTS on Pixel
Bug:135898951
Change-Id: I61f5a90d62732a00d0bc9abad05db0a1a9cc2b63
2019-07-08 08:45:18 -07:00
Emilian Peev
2d0100e36f Merge "Camera: VTS: Don't access invalid resources" into qt-dev am: d016fd7949
am: 137f202385

Change-Id: I54725456629d1cfcbb79027a151d336cd43b2479
2019-07-01 15:40:33 -07:00
Emilian Peev
fd4ce7e76a Camera: VTS: Don't access invalid resources
There is no guarantee that the static metadata
pointer passed in the "DeviceCb" contructor will
be valid after the call completes.  The device
callback instance is expected to be active until
the camera session is open. Clone the required
metadata in "DeviceCb" and manage the lifetime
appropriately by using the "CameraMetadata"
wrapper.

Bug: 135976837
Test: CameraHidlTest#processCaptureRequestPreview
Change-Id: Idd3c6c8c2e5a3fc44a49712e25a04009cbd471b1
2019-06-28 17:03:12 +00:00
Shuzhen Wang
43975af52c Merge "Camera: VTS: Allow unsupported logical/physical combination" into qt-dev am: d4686a1a06
am: 0414e504d0

Change-Id: I6b4202980b9bcebcf4065e237aa9d9856dc3af5a
2019-06-26 09:06:15 -07:00
TreeHugger Robot
d4686a1a06 Merge "Camera: VTS: Allow unsupported logical/physical combination" into qt-dev 2019-06-26 15:42:57 +00:00
Shuzhen Wang
fa2a909836 Camera: VTS: Allow unsupported logical/physical combination
Multi-camera API requirement is relaxed to allow camera device not
support physical stream combinations. Adjust the test accordingly.

Test: processMultiCaptureRequestPreview
Bug: 135688720
Bug: 135728906
Change-Id: I8c5269c5d3fd7f6eef440c818706629af2233196
2019-06-24 11:30:00 -07:00
Yin-Chia Yeh
80962f507e Merge "Camera: fix unknown bufId issue" into qt-dev
am: 981693f6ff

Change-Id: Idda1d94fd32ec3feb2e3929362ff3880c692fc6a
2019-06-19 19:02:59 -07:00
Yin-Chia Yeh
aba88c6cbc Camera: fix unknown bufId issue
It's legit to have bufId 0 in processCaptureResult with HAL buffer
manager, but not for returnStreamBuffers.

Test: the failed test can now pass
Bug: 135565913
Change-Id: I05947bc159bb9ba00a670b98d4622f685b4ac760
2019-06-19 11:51:48 -07:00
Shuzhen Wang
d31d87a4d0 Merge "Camera: Add support for IMapper 3.0" into qt-dev
am: 057de3759f

Change-Id: I27626fd07bd275d28a14eeee332e9498a85e9673
2019-05-20 21:56:22 -07:00
Shuzhen Wang
915115e381 Camera: Add support for IMapper 3.0
Use IMapper 3.0 if available. Otherwise, fall back to IMapper 2.0.

Test: Update camera VTS test passes
Bug: 128013727
Change-Id: I9bb54bbc290f1b90ef593dee9796b22b0dd49671
2019-05-14 10:39:25 -07:00
Steven Moreland
99712c08cc Update hidl makefiles for bpfmt
hidl-generated makefiles are now generated such that bpfmt(file) == file.

Bug: 67417008
Test: enable bpfmt hook
Change-Id: I53e5bf67a0d314e1b10c0ba0c7172a7af358ddcc
2019-04-18 18:13:05 -07:00
Steven Moreland
6d494b2346 Merge "Update hidl makefiles for bpfmt" am: ff0bd741ca
am: 96f40f7b02

Change-Id: Idbf030e4993067bdb8181321bca2de00c9b6f7ef
2019-04-18 14:34:45 -07:00
Steven Moreland
1ae4615d9f Update hidl makefiles for bpfmt
hidl-generated makefiles are now generated such that bpfmt(file) == file.

Bug: 67417008
Test: enable bpfmt hook
Change-Id: I1f69d292bc23a7cc293a66110cb02d597e1019ad
2019-04-17 09:38:50 -07:00
TreeHugger Robot
7ffb10cd86 Merge "Camera: require torch API support for Android Q" into qt-dev 2019-04-11 22:04:52 +00:00
Yin-Chia Yeh
51ea7c984b Camera: require torch API support for Android Q
Torch API was mandated on legacy libhardware camera module 2.4.
We kept the option of not supporting this API because the first
HIDL legacy wrapper needs to also support libhardware camera
module 1.0 + HAL1.0. Now that HAL 1.0 is no longer supported,
we can reenforce the torch API being supported by camera HAL as
this is critical to power usage of flashlight usecase.

Test: adb shell VtsHalCameraProviderV2_4TargetTest
--hal_service_instance=android.hardware.camera.provider@2.4::ICameraProvider/legacy/0
Bug: 113336515

Change-Id: I0dcf2e7a5cddadcd097caf6913625d8a607065f8
2019-04-11 10:35:17 -07:00
Emilian Peev
70eae1d3f0 Camera: Set buffer request stream id
Additionally fix a possible issue with the buffer request index
and variable shadowing.

Bug: 129090247
Test: adb shell
/data/nativetest64/VtsHalCameraProviderV2_4TargetTest/VtsHalCameraProviderV2_4TargetTest
--hal_service_instance=android.hardware.camera.provider@2.4::ICameraProvider/legacy/0

Change-Id: I34ab0285e59233c1b6d276f9167372ef3b0bbd0b
2019-04-04 13:22:25 -07:00
Shuzhen Wang
7788df304e Camera: Update VTS test for revised multi-camera requirement
Test to make sure logical multi-camera device support
isStreamCombinationSupported() for 3.5 and above devices.

Test: VtsHalCameraProviderV2_4TargetTest
Bug: 119325664
Change-Id: I734278799f10ed215ceb5dd108ac7f722f7f7925
2019-03-21 17:32:21 -07:00
Eino-Ville Talvala
ee2fb713b7 Merge "Camera: Centralize OWNERS" 2019-03-14 17:13:47 +00:00
Eino-Ville Talvala
d1ce4e664a Camera: Centralize OWNERS
Test: Builds
Change-Id: I9b8d1675566db44b959c633c25ceaf61a6dc08db
2019-03-13 15:15:45 -07:00
Yin-Chia Yeh
c2707ebcc7 resolve merge conflicts of 00236ffa71 to master
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I07e452ffd8dbe4492489d47459eb3662c76b78dd
2019-03-12 15:32:31 -07:00
Emil Jahshan
00236ffa71 Merge "VTS tests to work with depth Y16" into pie-vts-dev am: 0e802961e2
am: cbeda28395

Change-Id: Iac2b34c3ede77f1919ddce045a92f70991ae26e9
2019-03-12 14:43:32 -07:00
Steven Moreland
b91ac5c6a0 Update makefies: no 'types' internal
Bug: 123976090
Test: N/A
Change-Id: I84b659b163b63d39535b462a3df8a9c19f680976
2019-03-04 14:09:25 -08:00
Emil Jahshan
b8524954e6 VTS tests to work with depth Y16
modified VTS tests functions to work with the Y16 format with the correct dataspace.
Y16 changes are in this patch: 847192

Test: ran and tested on intel depth camera D415 and a regular RGB camera

Change-Id: Ie40347d58d4f72ed2fc9676bdaab2d1dca5dc5bc
Signed-off-by: Emil Jahshan <emil.jahshan@intel.com>
2019-02-24 09:40:24 +00:00
Emilian Peev
22eac5f667 Camera: Enable session parameter reconfiguration queries
Check with Hal whether stream reconfiguration is required
in case of session parameter updates.

Bug: 122609098
Test: Manual using application,
vts-tradefed run commandAndExit vts --skip-all-system-status-check
--skip-preconditions --module VtsHalCameraProviderV2_4Target -l INFO
Change-Id: Ic02525871aa079393b28b2da53764093f95f881d
2019-02-12 14:54:00 -08:00
Eino-Ville Talvala
fbb176e069 Merge changes from topic "camera-provider-2.5"
* changes:
  Camera: Add default 2.5 provider for legacy and external webcam HALs
  Camera: Restructure default camera.provider 2.4
  camera.provider: Add @2.5 to support notifyDeviceStatusChange
2019-02-11 01:22:52 +00:00
Eino-Ville Talvala
aa04b3ba10 Camera: Add default 2.5 provider for legacy and external webcam HALs
Add 2.5 implementations, which do not support passthrough mode and
therefore doesn't need the HIDL_Fetch methods or a specially-named
-impl library in the /hw directory.  Instead, the service directly
instantiates the necessary service.

Also add VTS tests for the new notification

Test: Verify device state changes are logged by HAL
Test: Camera starts as usual with both 2.4 and 2.5 providers on
      walleye.  Camera CTS completes.
Test: New VTS tests pass
Bug: 121379978
Change-Id: I0fc99379eb7e01c5b2efb20afb5753bb6ce8b627
2019-02-07 16:30:14 -08:00
Eino-Ville Talvala
2951804146 Camera: Restructure default camera.provider 2.4
To allow for implementation inheritance of @2.4 legacy wrapper and
@2.4 external webcamera HALs in the @2.5 implementations, restructure
the existing default provider to separate the service interface into a
thin shim that calls the implementations.

Test: Camera starts as usual after refactor, VTS tests pass
Bug: 121379978
Change-Id: Id40790ed4fb495577fd2b885c706b2ed7a96d64e
2019-02-07 16:20:35 -08:00
Eino-Ville Talvala
918a7de8d5 camera.provider: Add @2.5 to support notifyDeviceStatusChange
Sometimes, the camera service needs to notify a camera HAL that the
overall device physical state has changed, so that the HAL can
properly remap how it handles logical multicamera devices or similar.

Test: Builds, new VTS tests pass
Bug: 121379978
Change-Id: I0982fdecaf53a0529289d63c08c5a31264ee7ec7
2019-02-07 16:20:11 -08:00
Shuzhen Wang
e7b88b706b Merge "Camera: Add HAL interface change for HEIC" 2019-02-07 19:15:34 +00:00
Shuzhen Wang
55386823a3 Camera: Add HAL interface change for HEIC
- Add new usage flag to indicate the consumer of the buffer is HEIC
encoder.
- Add new data space to indicate that the BLOB buffer is HEIC encoded.
- Add new BlobId to specify JPEG APPs segments.

Test: testHeic CTS test
Bug: 79465976
Change-Id: Iaa6a1d017223e84fc1c5dd0a9d90d9f09240e827
2019-02-04 16:44:16 -08:00
TreeHugger Robot
0a742a0409 Merge "Camera: support libhardware camera device 3.6" 2019-01-30 19:24:31 +00:00
Yin-Chia Yeh
c2d3d1ddb5 Camera: support libhardware camera device 3.6
Add buffer management API support.

Test: VTS to be written. Need Pixel device impl to verify.
Bug: 120986771
Change-Id: Icdbc621f8cd17aa0868d3ac361867c44793a268c
2019-01-28 11:22:15 -08:00
Emilian Peev
5f103998ff Camera: Add dynamic depth tags and dataspace
Add necessary metadata tags for supporting dynamic depth
streams.
Includes minor gfx fix which should help eliminate build
errors after HIDL header autogen.

Bug: 109735087
Test: vts-tradefed run commandAndExit vts --skip-all-system-status-check
    --skip-preconditions --module VtsHalCameraProviderV2_4Target -l INFO
Change-Id: Ia476b195095ae7a29bc740174331dfbfdaa6d320
2019-01-27 20:06:11 -08:00
TreeHugger Robot
8c2c8d9657 Merge "Camera: Enable external camera handling in default provider." 2019-01-26 13:39:00 +00:00
Shik Chen
758f4bb127 Camera: Enable external camera handling in default provider.
* The sCameraDeviceStatusChange() callback might be fired between
  initialize() and setCallback(), which can be easily triggered if there
  is an external camera connected at the boot time.

* The external cameras need to be excluded in the getCameraIdList().

Bug: 77833131
Bug: 122800852
Test: Reboot with an external camera is connected, and see the
      camera list is corrected probed in
      $ android-sh -c 'dumpsys media.camera'
      The testing device is Nautilus (Samsung Chromebook Plus).

Change-Id: I5cec6732ce4e26632f1bb5186331b7ce7a94a0b3
2019-01-26 05:18:46 +08:00
Shuzhen Wang
4ee03d1ba7 Merge "Camera: Add ACTIVE_PHYSICAL_ID metadata for logical camera" 2019-01-24 01:55:27 +00:00
Pierre Lee
62da080e00 Merge "The test failed when one of the three cameras was configured with a maximum android.scaler.availableStreamConfiguration size of 1600*1200" am: ac6175ee79 am: cb516f7cca
am: 556b049596

Change-Id: I40eb4709eaea843a06222c20baec61c150d5e3f5
2019-01-21 20:29:42 -08:00
Pierre Lee
6f6fe9a5e2 The test failed when one of the three cameras was configured with a maximum android.scaler.availableStreamConfiguration size of 1600*1200
VTS gets the name of all the cameras in the machine and check each camera, When traversal to the configuration reference of 1600*1200 camera, the outputPreviewStreams variable does not clear, save the value of the Previous camera
The outputPreviewStreams variable needs to be cleared when check next camera

Bug: 122806546
Test: ConfigureStreamsWithSessionParameters can pass when one of the three cameras was configured with a maximum android.scaler.availableStreamConfiguration size of 1600*1200
Change-Id: Ia4845d43871730e14b5ba1411ce72f8c4bb69042
Merged-In: Ia4845d43871730e14b5ba1411ce72f8c4bb69042
2019-01-22 04:13:52 +00:00
Shuzhen Wang
cc266b1699 Camera: Add ACTIVE_PHYSICAL_ID metadata for logical camera
And update VTS test for the new tag.

Test: Compile
Bug: 77915333
Change-Id: Ib0f1d54965047c5d20bf0c6f90ddb07225d8a328
2019-01-18 00:21:10 -08:00
Pierre Lee
f234e45b20 The test failed when one of the three cameras was configured with a maximum android.scaler.availableStreamConfiguration size of 1600*1200
VTS gets the name of all the cameras in the machine and check each camera, When traversal to the configuration reference of 1600*1200 camera, the outputPreviewStreams variable does not clear, save the value of the Previous camera
The outputPreviewStreams variable needs to be cleared when check next camera

Bug: 122806546
Test: ConfigureStreamsWithSessionParameters can pass when one of the three cameras was configured with a maximum android.scaler.availableStreamConfiguration size of 1600*1200
Change-Id: Ia4845d43871730e14b5ba1411ce72f8c4bb69042
2019-01-18 11:12:37 +08:00
Emilian Peev
338a5559f3 resolve merge conflicts of fe57c318d3 to
master

Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: Ibe64d18c0637f22032a5aedc74da5cd0a0141e2a
2019-01-14 12:33:59 +00:00
Yin-Chia Yeh
fe57c318d3 Merge "Camera: fill in bufferSize correctly" into pie-vts-dev am: d04f64ef24
am: 31ad8ce667

Change-Id: I4d560b783331836629aa57827c6391261a826504
2019-01-14 04:13:39 -08:00
Yin-Chia Yeh
dbb2211d32 Merge "Camera: fill in bufferSize correctly" into pie-vts-dev
am: d04f64ef24

Change-Id: I33583bbfda0b8f1a480df6a2fe7c88bdf504d493
2019-01-14 04:06:37 -08:00
Yin-Chia Yeh
9d4ff706e1 Camera: fill in bufferSize correctly
Test: partner testing
Bug: 118724188
Change-Id: If21762467e6458f923d7f9b7eeef41d987c196a1
2019-01-14 10:54:11 +00:00
Peter Kalauskas
0b35cb2591 Add new lazy service target to default camera HAL
Test: On walleye_svelte, reboot device and check that camera HAL is not
      running until camera app is opened
Bug: 79374634
Change-Id: Ib9968c899ce8be5a68a28b4decf0a52f96b20ec5
2018-12-07 15:43:11 -08:00
Keun Soo YIM
68ae05dd2d pack VTS cc_test binaries as general-tests
Test: make general-tests
Bug: 120093339
Merged-In: I363450d205868f900e4925ccff1430e2a569f2a4
Change-Id: I363450d205868f900e4925ccff1430e2a569f2a4
2018-12-07 10:49:56 -08:00
Emilian Peev
40a8c6ed51 Camera: Add support for stream combination query
Camera devices 3.5 and later can optionally support
stream combination queries. These use the regular
'StreamConfiguration' structure however in contrast
to normal stream configuration, the query will be
much faster and will not cause any HW/SW side effects.
Additionally it will be possible to run stream
combination queries at any time after the camera
device is open.
Implement stream combination query for the external
camera provider.

Bug: 111593096
Test: vts-tradefed run commandAndExit vts --skip-all-system-status-check
--skip-preconditions --module VtsHalCameraProviderV2_4Target -l INFO
Change-Id: I59ec936d17dabc89ba49407a750df1cd2e61b145
2018-11-29 16:40:36 +00:00
TreeHugger Robot
ee0ba36773 Merge "Camera: update VTS for new useHalBufManager feature" 2018-11-29 13:08:24 +00:00
TreeHugger Robot
0396331a72 Merge "Camera: Fix MONO and NIR enumeration version" 2018-11-29 06:38:47 +00:00