Commit Graph

15 Commits

Author SHA1 Message Date
Changyeon Jo
339f0aca20 Explicitly type cast a variable
Fix: 217126594
Test: Successful build aosp_x86-eng target
Change-Id: I8b9b4051c4296fd3ecf0b89b1d1352020db02d5a
2022-01-30 22:28:43 -08:00
Changyeon Jo
33ba66bba7 Update a default HIDL EVS HAL implementation
This CL modifies a default implementation of HIDL EVS HAL v1.1 to
properly emulate IEvsCamera and generate a test pattern (SMPTE color
bars) on the cuttlefish.

Bug: 147743625
Test: launch_cvd --gpu_mode=gfxstream && atest VtsHalEvsV1_1TargetTest
Change-Id: I36b141c250efcc27e9a455d504fe897c69349ad9
2022-01-30 16:46:24 -08:00
Changyeon Jo
3e69744f0f User allocated EVS camera capture buffers
This change introduces a new API to import frame capture buffers
allocated by the clients.

Bug: 152493110
Test: m -j and run /system/bin/evs_app --test --extmem
Change-Id: I679c61719e4d0e3a7d0c41110afe66e0a4ccb305
2020-03-31 17:45:22 -07:00
Changyeon Jo
93594abef3 Add the camera extended info getter/setter methods
This change declares and implement newer version of methods to
manage vendor-defined camera extended information.

Bug: 142888670
Test: m -j android.hardware.automotive.evs@1.1-service
Change-Id: If6baf9cea7eefd13fd269ca8bb5af715cc3a8bab
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-02-17 15:05:45 -08:00
Changyeon Jo
043a7a027f Add a method to support multi-display usages
- Add getDisplayIdList() and openDisplay_1_1() to IEvsEnumerator.
- Add getDisplayInfo_1_1() to IEvsDisplay.
- Update CameraToDisplayRountTrip test case to use new methods.
- Update default implementation.

Bug: 141886260
Bug: 146567078
Bug: 147553536
Test: VtsHalEvsV1_1TargetTest
Change-Id: I3c17aecc482770074159f7ccaf8e00cadf711e76
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-02-16 05:56:10 -08:00
Changyeon Jo
6caf74b061 Implement getPhysicalCameraInfo() method
This change adds a new method, getPhysicalCameraInfo(), to IEvsCamera
interface, implements it in the default implementation, and update
corresponding VTS test cases.

Bug: 142275664
Test: VtsHalEvsV1_1TargetTest
Change-Id: Ic993d5670c34f05ef8d807708f27dec75008b04b
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-01-04 09:56:06 -08:00
Changyeon Jo
56c9b37795 Prerequsite changes for EVS multi-camera support
This change modifies existing methods and data types for upcoming EVS
multi-camera support.
- deliverFrame_1_1() and doneWithFrame_1_1() are modified to take
  multiple buffer descriptors.
- setIntParameter() and getIntParameter() are changed to return multiple
  parameter values.
- Device ID and timestamp fields are added to BufferDesc.
- EvsEvent is renamed as EvsEventDesc and Device Id is added.

Bug: 142275664
Test: VtsHalEvsV1_1TargetTest
Change-Id: I0415b2cb0642d1377f4d23a4e154080a66c81187
Signed-off-by: Changyeon Jo <changyeon@google.com>
2020-01-04 09:56:06 -08:00
Changyeon Jo
c6fa0abf51 Revert "Revert "Revert "Revert "Extend EVS interfaces and data types""""
This reverts commit 468cc1d476.

Change-Id: If7e80111213ba02bf2c49f17f9880cd9cd14429e
2019-10-12 05:25:49 -07:00
Changyeon Jo
468cc1d476 Revert "Revert "Revert "Extend EVS interfaces and data types"""
This reverts commit 47b45af32c.
2019-10-12 05:18:16 -07:00
Changyeon Jo
47b45af32c Revert "Revert "Extend EVS interfaces and data types""
This reverts commit 1b73d28c04.
2019-10-11 14:00:36 -07:00
Changyeon Jo
1b73d28c04 Revert "Extend EVS interfaces and data types"
This reverts commit e6976fce80.
2019-10-11 10:13:38 -07:00
Changyeon Jo
e6976fce80 Extend EVS interfaces and data types
This change extends the definition of CameraDesc with the additional
camera metadata field that various camera module informaiton will be
stored.

IEvsEnumerator is extended with three new methods:
    - getCameraList_1_1() returns a list of new camera descriptors
    - openCamera_1_1() tries to open a camera device with a given
      stream configuration.

IEvsCameraStream has below changes:
    - deliverFrame_1_1() method is added to handle a frame in new
      BufferDesc.
    - Rename notifyEvent() as notify().

IEvsCamera also has below new methods:
    - getCameraInfo_1_1() returns a new camera descriptor.
    - getParameterList() returns a list of camera control parameters
      supported by the camera device.
    - getIntParameterRange() returns a valid range of parameter values.
    - Parameter setter and getter methods are renamed.

VTS test cases are updated to use new methods and below test cases are
added to validate their behaviors:
    - CameraUseStreamConfigToDisplay verifies end-to-end video stream
      with a stream configuration it finds from CameraDesc's metadata.
    - MultiCameraStreamUseConfig verifies two clients can start and
      stop video streams on the same underlying camera with same stream
      configuration.

Bug: 128851019
Test: VtsHalEvsV1_1Target
Change-Id: Ia6b0b94aff869129cb400d0a4c4df91e72682784
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-10-11 04:41:25 -07:00
Changyeon Jo
0d0228de5a Add a method to override a master
EVS considers the client, which owns the display, as the high priority
client and allows it to steal a master role from existing master that
does not own the display.

Bug: 139536751
Test: VtsHalEvsV1_1Target
Change-Id: Idecaeedd90f187de57de912a09f4782bfb81a996
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-08-19 10:59:31 -07:00
Changyeon Jo
d2a82466d8 Add methods to get or set camera parameters
This change adds new methods to set and get camera parameters.  As the
vendor may handle a parameter set request with invalid value, a set
method returns an effective value with a status code.

Bug: 138328396
Test: VTS
Change-Id: I278dad6c285fb9b341be3517cde09359da14cda6
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-08-16 04:48:21 -07:00
Changyeon Jo
2400b69b85 Add EVS v1.1 interface
Extends existing v1.0 interfaces to support more functionalities and
adds corresponding test cases.

Bug: 135472573
Test: VTS
Change-Id: I5245238e6a18ddc2c0451aaa21a9cce55c6207eb
Signed-off-by: Changyeon Jo <changyeon@google.com>
2019-07-31 07:54:25 -07:00