History log of /frameworks/av/services/camera/libcameraservice/Camera2Client.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
4865c526e681366481b0ab242ffa1ead57bb02cc 02-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Synchronize mode changes and triggers

Make sure that changes to various parameters have reached the HAL
before triggering asynchronous events like autofocus or precapture
metering.

Bug: 7107220
Change-Id: I3c50038de1671968eb32004ce538435121934e7e
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
ecf17e82505fdb60d59e00b6dd59036df93de655 03-Oct-2012 Igor Murashkin <iam@google.com> Camera2: Handle client processes dying by closing camera resources

CameraService now subscribes to binder death notifications
for each client, and disconnects the client if the death happened
without cleanly shutting down the client first.

Bug: 7258314
Change-Id: I7803836b589fd8f0dfe00f6c28a707b82012e751
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
73bbd1f1c493835f191ea2b0b72439292496b40a 26-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Refactor preview/recording management to separate class.

Untangle preview/recording management from main class to simplify
callpaths; in preparation for fixing several HAL/app interactions
bugs.

Bug: 7172543
Bug: 7159577
Bug: 7107220
Change-Id: Iab5503f66b35d88a1524111536a484c9e33fd934
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
5a4f93eaaab7518fd734fdc9f0f686d632f31a59 30-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Use the recordingHint parameter.

Use recordingHint to create recording and still capture streams up
front, and to use the recording template when doing preview.

Bug: 6243944

Change-Id: Ifeb624794849f734784b53a1a10ff2bfe8f1a357
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
609acc0c96bc2aedd42246862b537e045f5184b6 07-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Play shutter and recording sounds.

Bug: 6987540

Change-Id: Icd441a757c4b68fc4988b3bfbef428adb8d1ba28
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
da6665cbd06ca58d3357c3002b7366d13e23f152 30-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Basic ZSL and precapture trigger support.

- Add capture sequencer to control still image capture process
- Use precapture trigger for standard capture in sequencer
- Add infrastructure for reprocessing streams
- Add ZSL processor to maintain ZSL queue
- Add ZSL capture sequence to sequencer

This patch sets up ZSL mode and precapture triggers.

For now, to enable zsl mode, set the system property camera.zsl_mode
to 1.

Bug: 6243944

Change-Id: Icf8cb1a83a7c11a152a11007c8f3c54f8ea1c70c
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
d86a6880fe86bda21a9b53b240996fc410a512a5 28-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Move preview callback processing to its own thread.

To reduce delays for HAL callbacks, manage preview callbacks in their
own thread.

Bug: 6243944
Change-Id: I7bef56949ac889ffce4e031bf40291a771a46f3e
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
ea0d51b5ed0b474433b02414f9133b835f972569 28-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Move still capture processing to separate thread.

To avoid stalling HAL when it queues up new buffers for still capture,
process still captures in a separate thread. Also move Camera2Heap to
its own class so it can be used by the CaptureProcessor.

Bug: 6243944
Change-Id: Id38e2a52367c0985812fcd4fd9af3ef90beef43f
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
a16733eeb9c40db4793bec408f29b4204e5f23b1 28-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Factor out FrameProcessor.

Move FrameProcessor to its own file, add necessary interfaces to
Camera2Client.

Bug: 6243944
Change-Id: I8d1b8280a65d2822461ebe6b6c9de17992b34276
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
2e19c3c02957208371cdd491e6342ea7ddb440d9 26-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Factor out Camera2Client::Parameters

Move the parameter structure and the various utility methods using it
to its own class. Rename LockedParameters to SharedParameters to match
the Mutex naming convention.

Also move CameraMetadata to camera2 directory for organization.

No functional changes.

Bug: 6243944
Change-Id: Ie60b535936ecfda9bf23361d52604abf515c83d0
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
f17b6cf6aa7548ca82e7fed96d71db7821103e57 26-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Fix metering/focusing region coordinates, minor bugs

- Use active pixel array-based coordinates instead of the normalized
camera API coordinates for ae/awb/af regions
- Fix calculation of UV stride for YV12 format

Bug: 6243944
Change-Id: I80cbd989858b0a3cb75c6f536c145e16e44fdb25
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
c8474b68e435cd840ba66791fb09e3da59f1d93c 25-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Move frame processing to its own thread.

To avoid blocking the HAL on possibly long-running binder calls,
move frame receiption and processing to its own thread.

Bug: 6243944
Change-Id: I6385be4410b2f68e2331755027afc10c342187cf
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
cab96a4a7a2900fa991ab77ae45ba8d4be97e054 24-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Use CameraMetadata wrapper class.

Wrap the use of the camera_metadata library inside a CameraMetadata
class to avoid memory leaks, improve code clarity, and increase type
safety.

Bug: 6243944
Change-Id: I90ca592b5875e27e4c58ea1ca680582dc3c3b56a
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
30e65e7e2ec01e13e45b5e38552a34d2fbb3f866 21-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Replace MediaConsumer with BufferItemConsumer.

Get rid of MediaConsumer, which was largely duplicated code, and
replace it with the simpler BufferItemConsumer.

Bug: 6243944
Change-Id: I242d80c5fe39f2ee581ec8bb46f362997d994b0a
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
228a53805808a24cb19fcf13b1f0bdc2ed89bbe1 13-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Add support for preview callbacks

- Move camera overall state enum to be part of parameters
- No longer use ICameraLock to guard access to overall state enum
- Add callback flag management
- Add callback stream and management

Bug: 6243944

Change-Id: Ideb3dc523a23c05e440e429ebf838b1900a96573
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
8ce89d9e2b132bf58a030acec88acf0a998926a1 10-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Skeleton for output frame processing, plus face detect

- Plumbing for processing output metadata frames from the HAL
- Support for passing face detection metadata from said frames
to the application.
- Switch calls on ICameraClient interface to use separate mutex to
avoid deadlock scenarios with messages being communicated from the
HAL to the camera user while calls from the user to the service are
active.

Bug: 6243944

Change-Id: Id4cf821d9c5c3c0069be4c0f669874b6ff0d1ecd
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
174181eec57c963a2a17bd156d81c3f18b3ba75c 03-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Add trigger support, and implement autofocus

- Add skeletons for all triggering actions into Camera2Device
- Add support for AF triggers to HAL
- Add support for AF notifications from HAL

Bug: 6243944
Change-Id: I21025440849ae41f7083e1dcb72c99f8e5b2d5f7
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
8da4cd7d706d9f551bf2d08cd8b61907a10cd38d 05-Aug-2012 James Dong <jdong@google.com> Fix a deadlock in commandSetVideoBufferCountL()

o The lock to be acquired in recordingEnabled() has aleady been acquired in sendCommand()
before the call to commandSetVideoBufferCountL().

Change-Id: I664d51ef449c9eb3576d5d56f73f29c98444ff3f
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
160d4af9d933fe9461bb213e5876fc5c8c2178c2 03-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Add notification handling skeleton.

Wire up skeleton methods for handling all currently defined
notifications.

Bug: 6243944
Change-Id: I84b3f60111416ba6fbcdb086f1310225142e2b70
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
36cdfb185877a7f573621d19ed2b2e1cac13d62e 03-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Break out individual commands

- List all commands that need implementing in sendCommand
- Write skeleton methods for each one
- Implements playRecordingSound command
- Partially implements enableShutterSound command

Bug: 6243944
Change-Id: I7866df75adca09483f407d3a4f630e847dbc7721
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
983cf231ab2d176a14595cdae46ff1b0c239af47 02-Aug-2012 James Dong <jdong@google.com> Dynamically configure the number of video buffers used by camera source, if supported

o related-to-bug: 6920805

Change-Id: I413bb50954cc84e32ed40bcb713842dc7b58e2b6
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
3a609147811105d40766f8f8f5904bf71cb123cb 31-Jul-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Check PIDs to ensure camera exclusive access.

Bug: 6243944
Change-Id: I4b36af2c92b7266a4aa896a2b048c56b6406cb9a
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
836b81f3c5a5bacb800f698f90ded6bd6e6bc5ce 27-Jul-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Improve threading safety

Merge mutex lock for accessing internal parameters with the parameter
structure, forcing a lock to be held before the parameters can be accessed.

Bug: 6243944
Change-Id: I86e44f395de0d80ff7c3ff3530f25b60015512d2
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
803cbf6190f16f7b2c43cbc51d0df21ec888abdd 26-Jul-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Use more buffers for video encoding.

To avoid starvation, set the number of simultaneously available buffers
to the encoder to 8.

Bug: 6243944
Change-Id: I6d0e9f3c0426d62d374c0ae0d427bf5189141adf
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
78822d73af1e7f6b8b297fc7f98ef7f8257cc10a 19-Jul-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Revamp recording support to allow opaque formats.

- Avoid memcpy of buffer data by using metadata mode
- Temporarily add MediaConsumer BufferQueue class

Bug: 6243944
Change-Id: I7a8c4222b7dbd14f1b1d86fda06d38eb640e87c1
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
9cca4c6d976d2d4127286e9eaa54d1b99880c25c 16-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Add recording support

- Support startRecording/stopRecording
- Support lock/unlock/connect
- Some rearrangement of class definitions for clarity/consistency

Bug: 6243944

Change-Id: I00c600a798572d2f69bb3f2bab3d79e4bd9a91e5
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
c94cd19694ea0befe2eb22735c50b00070f006d9 15-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Handle preview orientation changes.

- Process sendCommand(CAMERA_CMD_SET_DISPLAY_ORIENTATION)

Bug: 6243944
Change-Id: I92d3bb13312d475703325230487d660a1cb7e0e5
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
be0573b93e2d6fa133579c885583af9ed16bc29d 15-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Connect camera parameters to HAL request entries.

- All fields in Camera.Parameters are mapped to HAL2 entries, and
communicated to the HAL.

- Preview stream properly updated on parameter changes

- Slight code rearrangment for improved clarity

Bug: 6243944
Change-Id: I2a1db5c148809a62ba3524fb659dd6065affff8e
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
11b7cdef9726f8270f12f6c393600e8fb3c469de 15-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Minor parameter restructuring

Will make it easier to update HAL-level parameters.

Bug: 6243944
Change-Id: I3acac3c532de440d46755ce3e1d819ad5ed2e106
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
4ecfec32aca8749baeb634f7c961f804cb1e8f3e 13-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Improve error checking and debug logs.

Bug: 6243944
Change-Id: Ie61d89b733af7d1f653443bf64b767456127a455
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
d4bcfde6bf3e7b28e36f6ec66e6d9e5adebfa949 08-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Still image support

- Add stream / request creation for still image capture
- Add takePicture call
- Add callback handler
- Fix shutdown bugs (wait until requests have drained)

Bug: 6243944

Change-Id: Id73eb7090e61b40b90348d1eb262f641ea5f3229
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
6861a4e9f929c2cb4a3131244e01e676c5b28f55 07-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Add setParameters call

- Validate new parameters and transfer to internal parameters

- Add several utility functions to convert between CameraParameter
strings and camera2/internal parameter enums

Bug: 6243944
Change-Id: I323798dbfa028066f4963a6357766a781dde7cb6
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
ac45eb3dfa7347f7b8c98be1111b2a5f9e344c46 07-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Add basic concurrency guards.

- Serialize access through ICamera interface
- Serialize access to internal parameter structure

Bug: 6243944
Change-Id: I82c9811c1d059b2bca5cca7e3d73890120dbbe59
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
7f61084a428a5c7afbeff2fa9e9839baf9018020 07-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Add internal parameter state to dump.

Bug: 6243944
Change-Id: Id02943001ef92a9c5717b295eb4af1a18669b08b
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
3cca136b73b0f4d058019230eb2070cc23e2bbb0 07-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Use new param structure, improve static camera info queries

- Stop using CameraParameters for internal parameter storage, use a
straightforward structure instead.

- Improve querying for camera static characteristics for creating
defaults for API-facing CameraParameters.

Bug: 6243944

Change-Id: I965cdca7b242ef10ac1be931ebe7c186f997bb63
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
6db981c45a964f0d9df4c3451f064dff7954d78e 22-May-2012 Eino-Ville Talvala <etalvala@google.com> Camera service: Minimally functional preview for camera 2 devices.

- Camera app starts up
- Basic preview operation with defaults
- Shutdown sequence is very minimal

Bug: 6243944

Change-Id: I67673b7c1fc08956d218d99f9171e74a7a82bf07
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
f69c70ded4316ea3ee504ac779bd024433ed4ef7 21-May-2012 Eino-Ville Talvala <etalvala@google.com> Camera service: Initialization for camera2 clients and devices

- Refactor initialization code to hide device type from CameraService
- Add metadata queue class to Camera2Device
- Initialization of Camera2Device, Camera2Client
- Conversion from HAL2 device static metadata to camera API
parameters.

Bug: 6243944
Change-Id: I524145b45438e906d8493dae202704ce8f090aeb
/frameworks/av/services/camera/libcameraservice/Camera2Client.h
61ab9f93315ea817cd1ac110e2a95da4dab6b4d1 17-May-2012 Eino-Ville Talvala <etalvala@google.com> Camera service: Add skeleton support for camera2 devices.

- Add Camera2Client, which maps the current android.hardware.Camera
API to the new camera2 semantics
- Add Camera2Device, a C++ wrapper for the HAL camera 2 device

No functionality besides create/destroy; all client methods return
error or null.

Bug: 6243944
Change-Id: I6bd5136fa1efd8279b8cd2d9847d9b0bb2862294
/frameworks/av/services/camera/libcameraservice/Camera2Client.h