Commit graph

44 commits

Author SHA1 Message Date
Eino-Ville Talvala
cd86b0ddcc Camera3: Add camera device HAL v3.4
- Few additional mandatory static metadata fields
 - Different dataspace encoding than HAL v3.3
 - A few additional general-use metadata fields

Bug: 27344373
Change-Id: I218cc9fa70d1227cd96155e126edcf9be699ea2d
2016-03-09 14:54:38 -08:00
Eino-Ville Talvala
85fdb3ff7d Camera3: Document behavior of flush() corner cases.
Document how HAL should operate when process_capture_request is
called while a flush() call is active.

Bug: 21506384
Change-Id: Ic1842add68123432e49914e83d8f7d5c13d6650d
2015-06-10 14:58:32 -07:00
Chien-Yu Chen
bbbcd516a3 Merge "Camera3: SHUTTER event for reprocessing" into mnc-dev 2015-06-01 17:25:43 +00:00
Chien-Yu Chen
73b49ebbf4 Camera3: SHUTTER event for reprocessing
Clarify that the SHUTTER event should be sent when HAL
start processing a reprocess request but the timestamp
should be the input image's start of exposure.

Bug: 21112186
Change-Id: I5bd32b749adc5e82e9a311ec4b123fd807a30d36
2015-06-01 10:21:16 -07:00
Zhijun He
21126b78e3 camera3: add camera3 stream configuration mode
This will be used for creating high speed capture session.

Bug: 21442271
Change-Id: I51feaec83de3d402decca7e4da79be85844536b4
2015-05-28 15:24:56 -07:00
Yin-Chia Yeh
5407ef1ec2 Camera: Fix tests per camera service interface change
Also clarify rotation field has no meaning and will always be 0
for a input stream.

Change-Id: I0f4343a0bfa7bf09ba887c78a1da1c08daa35333
2015-03-16 13:11:11 -07:00
Yin-Chia Yeh
e004208025 Camera3: Add rotation field to camera3_stream_t
This allows application or framework request HAL to perform a
rotation of 0, 90, 180 or 270 degrees counterclockwise. Currently
there is no plan to support arbitrary rotation angles.
HAL should return -EINVAL if the requested rotation cannot be
supported.

Change-Id: I8bde2bcfd797c408db4d5b391b170a4e856ec2d0
2015-03-12 13:34:42 -07:00
Eino-Ville Talvala
453c790395 Camera3: Add dataspace to camera HAL device stream configuration
The dataspace field communicates extra context about the requested
stream configuration. For most graphics formats, the dataspace
indicates the desired colorspace out of the output buffers.  For some
formats, the dataspace may indicate that depth output is requested
instead.

Change-Id: I6746d9097b4dc36af0a63ca88df75f32a77db90b
2015-03-09 12:54:15 -07:00
Zhijun He
ebdf1286e7 camera3: update reprocessing spec
Also bump the HAL version to 3.3 for reprocessing spec update

Change-Id: I37eda90970eace23c42ba9106d4db1587df8d1b4
2015-01-29 16:42:23 -08:00
Zhijun He
b2bc0e5182 camera3: update ZSL spec
INPUT stream is not used by framework-implemented ZSL (HAL3.2), the sample
use case description is incorrect.

Bug: 19197776
Change-Id: I247ad8755b2197c2a62cc109c151749b42a4bd49
2015-01-29 14:44:37 -08:00
Eino-Ville Talvala
b545983975 Camera HALs: Promote device HAL v3.2
And deprecate older HALs.

Bug: 17445920
Change-Id: I37a5e53fda3c93080e37ec848f84c702a2c9120b
2014-09-10 11:13:16 -07:00
Zhijun He
52a188993a camera3: fix some spec issue related with input/bidrectional stream
Bug: 13934977
Change-Id: Ibccb80e69ac9da153de6378f1e3b0f00527ce4c9
2014-07-08 13:59:41 -07:00
Zhijun He
1ab5c5e037 camera3: Update FULL/LIMITED operational modes
Change-Id: I2a76361868a2ab3cc1dafb08905d5f5d53052a6d
2014-05-28 15:25:42 -07:00
Zhijun He
f1ee67e1ea camera3: Update the HAL spec for raw cropping behavior
Bug: 15168075

Change-Id: I035fc833cb122a7caa4cf47a1d5be574d4727345
2014-05-22 17:48:51 -07:00
Zhijun He
44a8915187 camera3: Update camera3_jpeg_blob_t for max jpeg size change
We no longer have a single max jpeg size for all resolution jpeg streams.

Bug: 14288983
Change-Id: I2c96d7c473901d7f419d0da9c2947fec095834a9
2014-04-28 11:33:23 -07:00
Ruben Brunk
2d96c743e6 hal3: Update documentation regarding hardware block operating modes.
Change-Id: I27987a75cb80c67f7e9ae71c116a26963b25eccb
2014-03-27 17:56:17 -07:00
Eino-Ville Talvala
d3dead483c Merge "camera3: Docs updates to line up with metadata changes" 2014-02-11 17:53:40 +00:00
Eino-Ville Talvala
c5bff0d955 camera3: Docs updates to line up with metadata changes
Change-Id: I3065c9f1d905a4e7d0bb6eef2b4556c81a0788fe
2014-02-10 16:43:26 -08:00
Zhijun He
06da1b3745 camera3: fix typo in camera open KPI
Change-Id: Ieefdc5a0f5159a3053e141075e71d268499746ed
2014-02-10 16:04:23 -08:00
Zhijun He
ceac9e3651 camera3: Add input buffer field in capture result
For HAL3.2 or above, the HAL must return the input buffer in capture result
rather than capture request.

Change-Id: I0108cda1cdf51556d7273b2c3cfbaf0e6ecd1d76
2014-02-07 14:47:25 -08:00
Zhijun He
bc35868a6f camera3: update BIDIRECTIONAL and INPUT stream specs
Also add the manual template to the version history.

Change-Id: I0a516ccbbd3600d69217502e19b267e2d3aa60e8
2014-02-04 17:05:56 -08:00
Zhijun He
06c72f6bd7 Merge "camera3: Update flush HAL API spec" 2014-02-04 01:04:16 +00:00
Zhijun He
2020ee299c camera3: Add camera close KPI
Change-Id: I265750ade49c63beedd3d9d0f2b8e7b3d19cc38f
2014-02-03 13:21:13 -08:00
Zhijun He
5a5fbf489e camera3: Update flush HAL API spec
Change-Id: I4e36dcc4445c2fae71fe4ce22a0f3b9a28abe1c0
2014-02-03 13:04:05 -08:00
Igor Murashkin
5df2f622b9 camera3: Add partial result processing in HAL3.2
Change-Id: I665cf1191a1c7510671b3c171b47c167530c1067
2014-01-17 18:26:59 -08:00
Igor Murashkin
78aa126e23 camera3: deprecate register_stream_buffers in hal 3.2
Change-Id: I7efabcba9b47846e831ffdf75ba1ea3c7e5ff629
2014-01-17 17:05:11 -08:00
Zhijun He
709e5878b8 camera3: wording fix for KPI
Change-Id: I4172fcdda3452eced663e332d509dea2594c1710
2014-01-17 15:25:21 -08:00
Zhijun He
2dde4685c2 Camera3: Add performance KPI requirement
Change-Id: I2133736b9e00b170200308982e591f311e1f04f7
2014-01-17 15:17:40 -08:00
Ruben Brunk
61cf9eb920 camera3: Update vendor tag spec for HAL 3.2.
- Deprecates vendor tag specification in camera3 device.
- Moves vendor tag ops declaration to camera metadata library and
  cleans up definitions.
- Updates the example HAL.

Change-Id: Ifb16bb0d4bbc896bc32d33dd150e7e174af57dad
2014-01-16 18:27:08 -08:00
Zhijun He
b0c939fb6b camera3: Add manual control template
Bug: 12134077
Change-Id: I0681f881f41dd3ab8acab400f84c2568a97e06bc
2013-12-13 15:56:33 -08:00
Eino-Ville Talvala
4d45d30d4e Camera3: Add PASSIVE_UNFOCUSED AF state and clean up INACTIVE
Needed to support the real case of continuous focus giving up on a
scene for a while (say, a blank wall), during which we shouldn't claim
the lens is in motion.

Also add new states for INACTIVE to clarify it as the starting state
after mode transitions or enabling AF/AE/AWB.

Bug: 10860639
Bug: 10446772

Change-Id: Ie4c1ac73e5a9eb6d1894d83dbded49a2767a8ffd
2013-09-20 18:02:06 -07:00
Eino-Ville Talvala
9d51856d71 Camera: Add new 3.1 device version
- Add new definition to camera_common
- Update comment in camera3.h

Change-Id: I9d8c594cfdaff40c543e8f9017091b0c06bbf022
2013-07-30 15:03:50 -07:00
Alex Ray
5f2fd854b3 camera3: Add flush
Flush is used to quiesce a camera device as quickly as possible, which
can be used to deal with a pathological client (requests a frame
duration of hours then dying) as well as speed up stream configuration
changes when the outstanding requests data isn't required.

Change-Id: Ie822efae8c705bd64d63c0eab7e9c291ecb570ef
2013-06-24 14:01:00 -07:00
Alex Ray
2ce219a746 camera3: Pass consumer information in configure_streams
HALs seem to need to know the gralloc usage flags of the opposite
endpoint (producer/consumer) of a stream at configure time.
Instead of adding another call to pass stream information, we just
pass the usage flags in the existing usage field.

Change-Id: I745baf2c4dd9123273d811b9bd52ae68c854b70c
2013-06-20 18:28:57 -07:00
Eino-Ville Talvala
73dba5e043 Camera3: Document missing AF transitions.
Bug: 9075581

Change-Id: I7688cee904987f404b4ab7ff0e5212182f85a271
2013-05-21 16:31:27 -07:00
Eino-Ville Talvala
b605944f0a Camera3: Document cropping behavior
Redefined somewhat from HAL2, to be simpler for everyone.

Bug: 8756080
Change-Id: I6b7608c74c06cc6a0bfe07997444e3b07c3edb10
2013-05-01 15:23:21 -07:00
Eino-Ville Talvala
71af102b48 Camera3: Clarify SHUTTER timing, ownership of request contents
- Clarify ownership of fence file descriptors, including in case of
  errors.

- Make it clear notify SHUTTER must be called before the first
  process_capture_result.

Change-Id: I644054a7a055c2e8a6a164c5ab6439ef2a0d1df1
2013-04-22 14:19:21 -07:00
Eino-Ville Talvala
7c9416b188 Camera3: Allow many calls to process_capture_result per request
Allow the HAL to split the capture result across multiple calls to
process_capture_result, so that when the sync framework cannot be
used, some output buffers can still be returned later than others.

Change-Id: Iea7f77a3d28daac3a94045ab4566f677aa53a7f9
2013-04-08 17:08:00 -07:00
Eino-Ville Talvala
acbc451e92 Camera3: Documentation additions
- Detailed documentation of the 3A state machines
  (autofocus, autoexposure, auto-whitebalance)
- Add error return value for out-of-sequence device calls
- Spelling fixes

Change-Id: Icc4e1980b1ff058425a42bc665d345070944b173
2013-03-29 17:14:18 -07:00
Eino-Ville Talvala
2f8cf5cb46 Camera: Minor fixes to camera3 HAL interface
- Add explicit status to buffer, to allow simple reporting
  of buffer filling failures.
- Clarify error management wording
- Clarify close() preconditions

Change-Id: I1660103aa1822d194ec0afab44e09554c1ac0782
2013-03-11 14:25:52 -07:00
Eino-Ville Talvala
3a6e6b4432 Camera: Fix incorrect pointer types
- Array of streams given to configure_streams() must be an array of
  pointers to streams, to allow framework to fulfill stream structure
  lifetime guarantees.

- buffer_handle_t needs extra level of indirection to match HAL1 & 2.

Change-Id: Iee071da39218a748933c3dfa7bccb66fe92c05f1
2013-03-06 13:21:11 -08:00
Alex Ray
d5ddbc9f7a camera3: remove redundant hardware error condition
Change-Id: I8cc538f82cf42972cc4d7cb155539222c41b4e0a
2013-02-15 13:47:24 -08:00
Eino-Ville Talvala
7effe0ce84 Camera: Minor cleanup to HAL 3.0 header
Change-Id: I64c61687cbf5850341d9e528c47b7b4dca773546
2013-02-15 12:09:48 -08:00
Eino-Ville Talvala
d2a877536a Camera device HAL 3.0
- High-level behavior is identical to device HAL 2.0
- Interface is cleaned up and simplified greatly

Change-Id: Ia867bbf9484be2256470f4acfab7fc3d47e408f4
2013-02-15 19:47:45 +00:00