summaryrefslogtreecommitdiff
path: root/camera/provider/2.4/default/CameraProvider.cpp
AgeCommit message (Collapse)Author
2019-02-07Camera: Restructure default camera.provider 2.4Eino-Ville Talvala
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-01-30Merge "Camera: support libhardware camera device 3.6"TreeHugger Robot
2019-01-28Camera: support libhardware camera device 3.6Yin-Chia Yeh
Add buffer management API support. Test: VTS to be written. Need Pixel device impl to verify. Bug: 120986771 Change-Id: Icdbc621f8cd17aa0868d3ac361867c44793a268c
2019-01-26Camera: Enable external camera handling in default provider.Shik Chen
* 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
2018-09-27Camera: new buffer management HIDL APIsYin-Chia Yeh
No actual implementations yet. Test: compile, new VTS to be written Bug: 109829698 Change-Id: Ibe509dd743a84b147fdfed6599d8f066adb8793b
2018-09-13Camera: Add support for physical camera characteristics queryShuzhen Wang
- Add version 3.5 for ICameraDevice for physical camera characteristics query. - Add version 3.5 for ICameraDeviceSession to work around HIDL versioning bug. Test: Camera CTS Bug: 79523700 Change-Id: I8df6cdd4ee6ac5755758510c0dc1ea1cec31aa73
2018-04-12Add "vendor." prefix to ro.camera.wrapper.hal3TrebleMinorVersionJaekyun Seok
Vendor-specific property should have "vendor." prefix. Bug: 36513925 Test: succeeded building and tested with taimen Change-Id: I80f17fb6b8017a761122ddd2f8863e63c72e5623
2018-01-23Merge "Camera: Add external camera provider"Yin-Chia Yeh
2018-01-23Merge "camera: add support for camera removal" am: cf99978291 am: 040c21f6c8Guennadi Liakhovetski
am: 3724fbedef Change-Id: Ic32fd930f90515a74d1e44e4a3e932d20d7970ff
2018-01-22Camera: Add external camera providerYin-Chia Yeh
Bug: 64874137 63873538 Change-Id: I4309874a7dedd3dd71d4bd0c2004d460421db679
2018-01-22camera: add support for camera removalGuennadi Liakhovetski
Add camera removal support to CameraProvider and CameraModule. Change-Id: I047e486d1665ba9e0b1455f77a7bbbb5e0d66653 Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@intel.com>
2018-01-18Merge "Camera: Fix hotplug" am: d7a0f2984d am: 78d88380d3Guennadi Liakhovetski
am: 99aaf673c5 Change-Id: I3e9566c4960c9f11376c7b0c8f377f9ccc1ac1ac
2018-01-04Camera: Fix hotplugGuennadi Liakhovetski
According to the camera_module_t::get_number_of_cameras() description in camera_common.h, it should only return the number of "fixed" cameras, i.e. cameras, facing to the front and to the back. Any cameras, with the facing value of "external," i.e. externally connected cameras, should not be reported by it, instead they should later be reported, using the camera_module_callbacks_t::camera_device_status_change() callback. However, this doesn't work. When a camera is reported this way, it is ignored as unknown. Fix this by adding a new camera, when its status change is reported. Change-Id: I18874ed005f477e32fb723c00c16b67a81cde6ce Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@intel.com>
2017-12-20Camera: Bump device version to 3.4Emilian Peev
Camera devices supporting version 3.4 will be able to receive session parameters during the stream configuration phase. Bug: 64450664 Test: Camera CTS run commandAndExit vts --skip-all-system-status-check --skip-preconditions --primary-abi-only --module VtsHalCameraProviderV2_4Target -l INFO Change-Id: Ifd83bfe0e512fe75b63602b4aba98f4cc1cdeb53
2017-09-15Camera: Add default implementation of camera.device@3.3Eino-Ville Talvala
Inherit as much as possible from camera.device@3.2 - Refactor CameraDeviceSession@3.2 implementation to separate out the HIDL session interface from the main implementation object. This avoids multiple inheritance issues - Create CameraDeviceSession@3.3 with support for the new overrideDataspace field - Add virtual factory method for CameraDevice to create the right version of Session. - Create CameraDevice@3.3, which overrides createSession to return a CameraDeviceSession@3.3. - Add system property to override selection of which minor HIDL version is used for legal HAL version 3.x; set the default to the newest available minor version. Test: Camera CTS passes on device using @3.3. Bug: 62358514 Change-Id: I497e4bc0de798b56ecdb2ea6467b79afccaf89f7
2017-05-08Camera: Clean up TODOs that aren't going to be addressed.Eino-Ville Talvala
These TODOs aren't in scope for the wrapper libraries. Leave the few TODOs that have bugs tracking them, and the ones that are from autogenerated metadata. Test: Builds Bug: 34108979 Change-Id: Ib28467a4fbcfaab4a0809334bc62eabb9290797a
2017-04-25CameraProvider: Check camera device versionEmilian Peev
Make sure we are working with supported devices. Bug: 34392075 Test: Manual using application Change-Id: I834612303f3e02e79924efbdcc25cff890defefb
2017-04-05CameraProvider: Refactor legacy name regex codeAndreas Gampe
The match will use iterators that will be invalidated when the used string input goes out of scope. Refactor the API to return the two components of the match. Bug: 36871785 Test: m && m SANITIZE_TARGET=address Change-Id: I2418541234a09e53856ea61e0fbc4b67d8036308
2017-03-15Camera: Provider: Set up vendor tag before getDeviceVersionShuzhen Wang
getDeviceVersion calls get_camera_info, which could contain vendor tags. As a result, we need to set up vendor tag before that. Test: Verify vendor tag in static metadata works. Bug: 33641150 Change-Id: Id4cfea52235542b19170a757b4c6bea3ad1d190d
2017-03-01Camera: default implementation of device 1.0Yin-Chia Yeh
Also some updates to HIDL interface: - Add releaseRecordingFrameHandle to ICameraDevice for native handle metadata recording mode - Add handleCallbackTimestamp to ICameraDevieCallback for native handle metadata recording mode - Add missing face detection metadata to ICameraDeviceCallback::dataCallback - Instead of passing native handle, pass buffer ID in dequeueBuffer/enqueueBuffer/cancelBuffer in ICameraDevicePreviewCallback - Add CameraFrameMetadata in types.hal for face metadata Test: Camera CTS passing (except FlashLightTest) on Angler Bug: 30985004 Change-Id: Idf72a4b5f4c934845ac698f0b13536608ffd0100
2017-02-10Merge "Camera: fix open_legacy crash"TreeHugger Robot
2017-02-10camera.provider default: Don't stop init if vendor tags are bad.Eino-Ville Talvala
And definitely don't stop init if there are no vendor tags defined at all. Instead, just log about it. Test: gce camera HAL init succeeds; no regression to sailfish camera Bug: 35036220 Change-Id: I7f4481d7ec1a88df0c67a66c364f351b3321b221
2017-02-09Camera: fix open_legacy crashYin-Chia Yeh
If the torch callback is fired during CameraProvider constructor, the sp will cause it being deleted when the callback returns. Test: fix the crash Bug: 35216523 Change-Id: I133d866ed603d6c7e549b57d20a911af7a7e0698
2017-02-01Merge "Camera: add a missing hidl_cb call"Yin-Chia Yeh
2017-01-31Camera: call setCallback before open_legacyYin-Chia Yeh
Some open_legacy implementations require a valid callback. Test: the failing open_legacy call succeeds Bug: 34854786 Change-Id: I461c7622bdf46a7cb7febfb7eeeb083288b4af03
2017-01-31Camera: add a missing hidl_cb callYin-Chia Yeh
Test: no fatal error from calling get_device_1_0 Bug: 30985004 Change-Id: I6f1cfce903773d22ff5bb21a6db98d3f4ffa0697
2017-01-20Camera: binderize camera halYin-Chia Yeh
Test: running marlin in binderized mode Bug: 30985004 Change-Id: I9c3ab3c445e437a8a8b6f271f3c475f60563f488
2017-01-05Camera: patching treble camera HALYin-Chia Yeh
Bug fixes like deadlock resolution, wrong enum usage etc. Bug: 30985004 Test: run Camera2 API CTS tests on Angler Change-Id: I661fa9197f66344ddecca8f68d343c891806eca1
2017-01-05Camera: Add default camera provider 2.4Yin-Chia Yeh
Supports legacy camera HAL modules; also exports ICameraDevice instances. Test: compile Bug: 30985004 Change-Id: I2b9624a412de95dd43979a5e6650b170010c577a