Commit Graph

971 Commits

Author SHA1 Message Date
Igor Murashkin
df6242e374 camera2: Add crop region support and some other AE tags to legacy
Change-Id: If7a87b210a57ea13d6329bb363b1c7ecdadc52e8
2014-07-02 16:38:28 -07:00
Jinsuk Kim
160a6e5b99 Add setOption for HdmiControlService
Bug: 15845304
Change-Id: I96b285ae3938aeecdd44b2c08a178def33bd2bf2
2014-07-02 17:16:45 +09:00
Ruben Brunk
4a61a86b36 camera2: Update camera metadata with legacy mode enum.
Bug: 15116722

- Adds enum for a device running in compatibility mode.  When running
  in compatibility mode, the Camera2 API is emulated using the
  deprecated Camera API, and many capabilities will not be supported.

Change-Id: I94f31775699447a82d53b7f2a6f9fbdc0a5afb3f
2014-07-01 23:59:23 +00:00
Ruben Brunk
3c8fa3b356 camera2: Fix configured surface check in Legacy shim.
Bug: 15116722

- Switch to checking IBinder pointer when making sure
  requested output surface has been configured (same as
  the camera service).
- Needed to use TextureView in TestingCamera2.

Change-Id: If8831a9b2f9ec3e81cc8348e067a57cca2d46440
2014-07-01 23:55:42 +00:00
Jungshik Jang
a13da0d591 Add api, setArcMode, used to turn on/off ARC.
Usual TV can switch on and off of ARC feature in its settings page.
Along with it, removed locking block from the code,
because arc flags are accessed by actions and internal services.

Change-Id: I737ac0c2671b537551eaac202d2065cc99c6d0a0
2014-07-01 17:25:06 +09:00
Jinsuk Kim
92b77cf9cb Refactor handling sequences in HdmiControlService
- Rewrote some methods to match more closely to the handling
  sequences in guideline
- Added setControlEnabled() API in the aidl
- Handled <Routing Control> command
- Handled some scenarios invoking RoutingControlAction

Change-Id: I5db0c6fc775cef709c2e0f338b85937deebf2a54
2014-07-01 07:28:41 +09:00
Jinsuk Kim
a09489c39e Merge "Handle incoming active source-related commands for HdmiControlService" 2014-06-24 01:52:26 +00:00
Jinsuk Kim
8333571bd5 Handle incoming active source-related commands for HdmiControlService
Handles incoming commands <Active Source>, <Inactive Source>, <Request
Active Source> that concern the active source update/report.

Defined mPrevPortId which is used to allow switching back to the input
set previously by <Active Source> or deviceSelect() when receiving
<Inactive Source>.

Also fixed a bug sending <Active Source> with wrong parameters.

Change-Id: I47fd804755c5c6beca38ddb21bb388a455d74f63
2014-06-27 07:06:33 +09:00
Zhijun He
e040418f47 Camera2: Add high speed video support
Below tags are added/updated:
- Add HIGH_SPEED_VIDEO in android.control.sceneMode
- android.control.availableHighSpeedVideoConfigurations

Change-Id: Ice2497c81d9feead7519f5d11f2bd5598093b4bc
2014-06-26 20:34:56 +00:00
Yin-Chia Yeh
0cd62d65dc Camera2: Add 3A maxRegions tag to legacy device
Change-Id: I8ab4164a7f4c6f210b000cb623cbc686e0e79a35
2014-06-26 18:26:17 +00:00
Zhijun He
ed2fdb5656 Merge "Camera2: update supportedHardwareLevel" 2014-06-25 17:34:05 +00:00
Zhijun He
28288ca72c Camera2: update supportedHardwareLevel
Make the full hardware supportedHardwareLevel more accurately reflect the
spec requirement. Also fixed some other minor spec issues.

Change-Id: I7b55be03dcdeface15e73eff098f690f4f99a23f
2014-06-25 15:49:13 -07:00
Igor Murashkin
dcad4f8a6a Merge "camera2: Fix maxNumOutputs CTS test on Legacy devices" 2014-06-25 17:34:05 +00:00
Igor Murashkin
e1968f6f9d camera2: Fix maxNumOutputs CTS test on Legacy devices
Change-Id: Ice2ee8490438b84d9a99d6179dca248491557694
2014-06-25 14:04:26 -07:00
Ruben Brunk
ef14da3280 camera2: Fix handling for abandoned bufferqueues.
Bug: 15116722

- Adds exception handling utility for legacy device.
- Skip/ignore abandoned surfaces in legacy camera.

Change-Id: Id4de587779d3bc2415e22b10bcc841cc46ac5f1d
2014-06-25 13:00:50 -07:00
Igor Murashkin
5096defdaa camera2: (legacy) Write the JPEG size as part of the blob transport
This fixes StillCaptureTest#testStillPreviewCombination

Change-Id: Ifbaae7828b2efcc1a768c77ce50718abd7f691d0
2014-06-24 18:29:18 +00:00
Igor Murashkin
a296fece2b camera2: Fix cts test StillCaptureTest#testTakePicture
* Introduce 'fake' metadata for 3A+flash (hardcoded to support nothing)
(will be removed in a later release)

* Open the camera1 device in its own thread, so that the looper it
captures is also our own (and not the main looper)

* Set the picture size based on the size of the JPEG surface outputs

Change-Id: Iaeb5031c6b352115b73d2261a39d65347d75fdc8
2014-06-24 10:56:26 -07:00
Ruben Brunk
ed81ebc3c5 Merge "camera2: Fix frame ID returned by legacy mode shim." 2014-06-20 21:00:34 +00:00
Ruben Brunk
53284d5816 camera2: Fix frame ID returned by legacy mode shim.
Bug: 15116722
Change-Id: I59e9ac43b192c41f83fe350a93aa860b2619dfe5
2014-06-23 11:36:10 -07:00
Ruben Brunk
91b9aabc9f camera2: Switch to using YV12 for ImageReader.
Bug: 15116722

- Also fixes incorrect frame number for single captures.

Change-Id: I8552124d18ad176e6724f089a1e3a3f49a5eeec4
2014-06-20 15:59:00 -07:00
Ruben Brunk
5776aafc7e camera2: Add AE antibanding + fps range metadata.
Bug: 15116722
Change-Id: I627748e162f26c42f6bbcfc21ee4b1081e1f25ad
2014-06-19 19:20:36 -07:00
Igor Murashkin
49b2b13510 camera2: Fix deadlocks in shim #close and make #testInvalidCapture pass
* Also fixes configureOutputs to allow it to unconfigure
* Adds IAE checks in a few spots to validate surfaces aren't null

Bug: 15116722
Change-Id: I9ec88bccb3600eb12747d84436ead27952e87646
2014-06-19 17:36:07 -07:00
Jungshik Jang
ea67c183fe Add for System Audio Mode
Note that this is skeleton change and do not merge
till get full review from outside of CEC team.

This change introduce four apis for System Audio Mode

1. boolean canChangeSystemAudioMode()
  -  Whether to change system audio mode or not.

2. setSystemAudioMode(boolean enabled, IHdmiControlCallback callback);
  - Change system audio mode.

3. add/removeSystemAudioModeChangeLister.
  - Register/deregister listner for AudioModeChange.

4. getSystemAudioMode()
  - Whether to system audio is enabled or not.

Change-Id: I1e82365155a9f7f6c3ac5d9db4871cf6bad46865
2014-06-23 13:32:43 +09:00
Ruben Brunk
5e6421bd8f Merge "camera2: Switch to using YV12 for ImageReader." 2014-06-20 20:43:34 +00:00
Igor Murashkin
60679f6b7d Merge "camera: Get detailed error reporting from api1 Camera if open fails" 2014-06-20 18:26:34 +00:00
Igor Murashkin
a1d662716b camera: Get detailed error reporting from api1 Camera if open fails
* Also maps camera2 open errors the same for shim/nonshim paths

Change-Id: I08d9d1e30e72025c41bd54b702d7ae95b32257be
2014-06-20 11:26:39 -07:00
Eino-Ville Talvala
15d0f97473 Merge "Camera2: Call onCaptureSequenceAborted when appropriate" 2014-06-20 02:04:45 +00:00
Igor Murashkin
1788b0466b camera2: Shim fix hwLevel and minimumFocusDistance
Change-Id: Ie4ab330a738ac4c8e465eacade1bbc39bdb776fe
2014-06-20 13:45:46 -07:00
Eino-Ville Talvala
ee37e30c22 Camera2: Call onCaptureSequenceAborted when appropriate
Bug: 15524101
Change-Id: I4615d0b4ae3cae80609586f7dfa8373691a9e384
2014-06-20 17:24:40 +00:00
Zhijun He
6e335c44c6 Merge "Camera: Implement HAL1 and higher HAL API coexistence" 2014-06-19 20:37:59 +00:00
Zhijun He
4c91380114 Camera: Implement HAL1 and higher HAL API coexistence
A higher hal version device like HAL3.2 can be opened as HAL1.0 device
if HAL supports it. This only applies to camera API1.

Change-Id: I4ae9f59f4317158cc1bd7ed7726e4032cdd1fa07
2014-06-19 15:46:02 -07:00
Ruben Brunk
3e4fed203f camera2: Add shim frame duration and stall characteristics.
Bug: 15116722
Change-Id: Ief8b05d46fa12f63cf6a5d41e312c94d5a033553
2014-06-19 14:50:45 -07:00
Jinsuk Kim
a062a9339a Implement portSelect/sendKeyEvent for HdmiControlService
TIF (TV Input Framework) uses these API to switch inputs, send
keys for selected device on CEC bus. Also renamed getActiveInput
to getActivePortId to use a unified term for port/input.

Change-Id: I8196825c0d960988cc1c0bb58a628ccd8ab1957e
2014-06-18 03:53:16 +00:00
Ruben Brunk
d85e1a6ced camera2: Adding legacy mode support for teeing to Video.
Bug: 15116722

- Select intermediate GL texture size based on available
  preview dimensions.
- Fixes for configure deadlock.
- Fixes for jpeg capture.

Change-Id: I3f665230defdad718de40494dd67fda5ea432bfb
2014-06-17 22:56:36 +00:00
Igor Murashkin
4961bc88d7 camera2: Map camera characteristics in the managed layer
Change-Id: Ic86c8df3d703e7cf89caa856387e2c0a1b977401
2014-06-17 22:55:16 +00:00
Jinsuk Kim
0d3985a977 Added an argument isPressed to HdmiControlService#sendKeyEvent
sendKeyEvent requires additional argument isPressed to handled
both up/down key event.

Change-Id: I0080adc72920dd7ae4e4dae041781f76a6658f9b
2014-06-16 17:26:10 +09:00
Jinsuk Kim
6d97f5b91c A few more APIs for HdmiControlService
Added following APIs in HdmiControlService:

- portSelect
- sendKeyEvent
- getPortInfo
- addDeviceEventListener

Some are not fleshed out yet. Will work on it in a follow up CL.

Change-Id: Ia8c635176c0378f6e8db589bf714d82bf21ce85d
2014-06-16 14:01:45 +09:00
Zhijun He
5eaf6d2161 Merge "Camera2: Add timestampCalibration tag" 2014-06-13 21:09:46 +00:00
Zhijun He
45fa43a181 Camera2: Add timestampCalibration tag
Also update the video/optical stabilization docs.

Change-Id: I444cc8d46c0a460bc4311e58bf6166b5c6dbfd14
2014-06-13 18:29:37 -07:00
Eino-Ville Talvala
5ae1ca5b69 camera2 docs: Fix instructions for using SurfaceView.
Bug: 15597178
Change-Id: I802369e61725451ddd8df855c384608c80e12693
2014-06-12 17:02:17 -07:00
Sol Boucher
b8cee5175d camera2: Remove stray </p> in CameraDevice#createCaptureSession
This was causing strange indentation.
The change also clarifies how to get the supported output sizes in the
ImageReader flow: Although the doc (correctly) instructed the developer to use
StreamConfigurationMap#getOutputSizes(int) with an ImageReader, this instruction
appeared after the bulleted list of output types. Since all other items in that
list specify that getOutputSizes(Class<?>) should be used, the reader shouldn't
be expected to read beyond the list only in this specific case.

Bug: 15574400
Change-Id: Id952b46ae52322d75abbcaffea678d5ba50b22a5
2014-06-12 17:39:11 +00:00
Zhijun He
0cb41fd5ad Merge "Camera2: Add rollingShutterSkew tag" 2014-06-13 21:09:46 +00:00
Zhijun He
0bda31afe0 Camera2: Add rollingShutterSkew tag
Change-Id: Icbedaeda9fc64a9dda509493ad9d14569c56cd18
2014-06-13 14:38:39 -07:00
Eino-Ville Talvala
c5c363f0ff am 14b5f131: Merge "camera2 docs: Fix instructions for using SurfaceView." into lmp-preview-dev
* commit '14b5f131c7118d58a6215e1f6d877d5cd31de54c':
  camera2 docs: Fix instructions for using SurfaceView.
2014-06-13 00:35:59 +00:00
Aravind Akella
221748039c Merge "Add java APIs for Sensor reportingMode." 2014-06-12 03:30:50 +00:00
Jinsuk Kim
0340bbc89f RoutingControlAction for HdmiControlService
Routing control action is initiated in various cases, such as manual
TV input port switching, routing change of a different CEC switch,
and so on. The action determines the device to be a new active source.

Change-Id: I1efcd6ff1919dd94d6fa0e0ffa6e430c48d4e9c6
2014-06-12 23:40:05 +00:00
Jinsuk Kim
a6ce7708d6 DeviceSelectAction for HdmiControlService
DeviceSelectAction is the main handler for the API deviceSelect() which is
used to choose a new active source among logical devices on the bus.

Change-Id: I77582a1f873423fc316d89f67a89a867461a76b2
2014-06-12 23:06:29 +00:00
Sol Boucher
a13697f68d am 85d82c70: camera2: Remove stray </p> in CameraDevice#createCaptureSession
* commit '85d82c70e1766c5a38c65fdfda8304aefcaa6576':
  camera2: Remove stray </p> in CameraDevice#createCaptureSession
2014-06-12 22:31:01 +00:00
Eino-Ville Talvala
bb373e601f am e941070b: Merge "Camera2: Misc + enum value documentation updates" into lmp-preview-dev
* commit 'e941070bd7ab910b558bbace38e2ff813fa0327c':
  Camera2: Misc + enum value documentation updates
2014-06-12 16:53:54 +00:00
Eino-Ville Talvala
486ed08899 Merge "Camera2: Misc + enum value documentation updates" into lmp-preview-dev 2014-06-11 08:41:11 +00:00