History log of /frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
b8d6efba8b87e6eeb049651cb67f9827198e658e 25-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Don't hold locks while waiting to sync.

Bug: 7409877
Change-Id: Ia3a0bc4f0ab4e19fca868ba04a870cf8e8ee7adb
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
43b7ac6bd1a949ecb8ffc7e50d0a2f01a6258034 23-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Increase mode update timeout.

During camera startup, it might take a few hundred milliseconds before
requests start to be dequeued by the HAL. Increase the timeout for
synchronizing mode changes and triggers so that triggers near startup
don't time out.

Bug: 6970465
Change-Id: I9dc35378e8018ec18ae31be874fcb094f8a9a0e9
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
f1945f0435e431fab2e6b83337a1ffe71a8df28c 18-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Fix potential deadlock

setPreviewWindow was holding a lock during long-lasting HAL calls
which may cause deadlock if the HAL calls back into the service during
the call. Stop holding the lock during these calls, since it's not
essential to do so.

Bug: 7320517
Change-Id: I4a35703d751e22ac32979b5a1288e291610576e7
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
ac0cd56627b121081308213d5a327cfbae410f4d 16-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Improve quirks focusing behavior.

- When scene mode is set and the AF quirk is in use, don't change AF
mode and then cancel when AF cancel is received. Just change mode
since that also implies a cancel.

- Only trigger quirks switch when a focusing area is set.

Bug: 7318812
Change-Id: I28d8755553bd78052e774701210cb94d84ee2046
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
d6cc4a62f3d94cad4dd36bd0a844ba8764177d26 16-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: When focus is already locked in CAF mode, do not trigger HAL.

In HAL2 CAF modes, once focus is locked by an AF trigger, additional
triggers will not cause AF notifications, since the state will not
change again until a cancelAutofocus call.

Since the old API still expects to see a notification, short-circuit
this at the service and send an immediate success notification.

Bug: 7318298
Change-Id: Ib209a24eaf2a35a247d06aea671efe80a33d751e
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
a14be59340219c47639ec77a352d2af362551a6f 11-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Don't error out of startPreview when already recording.

Bug: 7327474
Change-Id: I603da5b8bd58e5a700d7ae0b3d34bd89bbcb1d53
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
907e5651c18d0e25073743a49a685fe1a385939a 11-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Don't let unlocks happen during recording.

Bug: 7309020
Change-Id: I6e66809b868d2e8f47f71e6f8752b44ec06dfb17
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
c03792041b9dd6f7f54abd6c82bd6c755a336cd8 10-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera: Limit valid caller PIDs for camera clients.

Narrow down on PID checks to avoid cases where service can access the
camera even though it shouldn't be able to, per API semantics.

Bug: 6970469

Change-Id: Ic468a31949c28ef978b6ed48a70e4601c7ced684
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
5f0714eb039c07554bef6ec289c70ed1164fdf52 09-Oct-2012 Igor Murashkin <iam@google.com> Camera2: Call onAutoFocus immediately for fixed-focus cameras

Bug: 7311578
Change-Id: Ib8a8ea1f5fc269abdd24ed1e0370dc9b87b284ee
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
d5087f91357a9218580596b466926ab750bc8ea7 05-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: On stopping preview, wait until captures are completed.

If preview is stopped while a still capture or a video snapshot is
underway, wait until the capture completes before stopping preview.

Also use the same behavior for disconnect - do not shut down the
camera device until captures are complete.

This works around HAL implementations which report to be done
(get_in_progress_count returns 0) even when a capture is still
outstanding.

Bug: 7276954

Change-Id: I66290acf1740cc330eadecbcded0c59fa9c5d2fd
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
f6e09d200c3e043737adcdadd52310ebbd1b19da 05-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Unconditionally shut down streams on disconnect.

stopPreviewL may do nothing in certain states. Stop streams directly
to avoid those failures, so that we always maintain the HAL interface
invariant that streams referenced by in-flight requests are never
deleted.

Bug: 7276954
Change-Id: Ic4cffc43036f4944684d941981a43d6dd1dce7af
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
7373cbe85e617345f7002256a4be389fe62af913 29-Sep-2012 Igor Murashkin <iam@google.com> Camera2: Fix metering regions to take into account the current zoom/crop region

Also adds a quirk to disable this fix to work around for incompliant HALs

Bug: 7246065
Change-Id: I80bad25e56ba59149270238e5639bb33cae495ae
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
95069fefbdf54d87a624c2ac73727fce1c38545e 04-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Use the triggerAfWithAuto quirk

When this quirk is set, and a scene mode is enabled, do AF calls with
AF mode AUTO instead of whatever the scene more override AF mode is.

Bug: 7159577
Change-Id: I3ea6b8386abc0968047fc9bba3a35c5db5bdcfd3
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
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.cpp
22d58d37db6b5f48a10b3a19f69ffda09943c125 03-Oct-2012 Igor Murashkin <iam@google.com> Camera2: Don't change state when reconnect is called

Bug: 7252802
Change-Id: Ibed4f59a96bef75bf84b1aaf1235fb87e94102ef
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
e382ee28709b83264a46b09e8f766c5ef42efa35 03-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Use ZSL format quirk.

Switch service to using HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED,
unless ZSL quirk is set.

This is important for compatibility across multiple implementations.

Bug: 6243944
Change-Id: Iea74671cbb44890a07e4f99cd757b0a5423d447a
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
8a42dd8cd1a245d844f96cfd67dc342d7937e353 02-Oct-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Use scene mode override parameter

- Read in SCENE_MODE_OVERRIDES static parameter if available.
Use it to select AF/AE/AWB modes when a scene mode is set.
- Add quirks structure to parameters; not yet used
- Fix desynchronization between range and single FPS value.
Still need to sort out best way to convert from one to another.

Bug: 7259959
Bug: 7159577
Bug: 7172543

Change-Id: I0d07c31d5f21fbc4b0ec2fa23f7f778073d2d6e0
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
77449ada4b5ca73a948aa4fef9aafe3079a66d61 27-Sep-2012 Alex Ray <aray@google.com> Camera2: Re-entering preview state on v2 Device

Bug: 7240891
Change-Id: I6a01b27197b4ee89a68f06f4375d315a716b67ae
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
4bb8118816874c696d9f1adab48490df1da365f7 24-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Debug and logging fixes.

- Fix LOG_TAGs to work with standard logcat filtering.
- Add ATRACE to Camera2Device
- Shorten thread names to fit in 16 characters
- Remove some ATRACEs to avoid flooding trace unnecessarily

Bug: 7220520
Change-Id: Ief8d677b5c8bb35d94e0f21b11b86505e83169ea
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
98bb82d1bf7c94240956426812de6593801faad4 20-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Clean up startup/shutdown sequences.

- Close camera device on startup errors

- Make sure all threads are shut down and the device is closed before
returning from ICamera::disconnect.

Bug: 7172680
Change-Id: I98611448ec5f2311e6604fa8ee5f9dde7bfdd988
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
97b38a81ac989ccba02d726011a82541f14166df 18-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: ZSL: Do regular capture if AE is not satisfied.

- Check the AE state of the selected ZSL buffer; if it's not reporting
as CONVERGED or LOCKED, fall back to normal capture sequence
- Add more debugging for the ZSL queue.

Bug: 6910087
Change-Id: I77a4287580aa9ddbd58438477c40ce829555d0ca
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
b075252349a4b40ddda791f2e1221ae0ce7e4cd1 12-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Configure ZSL at the right time.

ZSL enable was too early in the camera startup sequence, resulting it
being turned off most of the time.

Bug: 7148012
Change-Id: Ie144dd960d018a34b0bc77c88208ca22b7112772
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
14fe42d8d8d622f6fcdbd83df5f3932e24cd896e 11-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Temporarily stop pre-allocation of recording stream.

When recordingHint is set, don't pre-allocate recording stream on
preview start.

Bug: 7137947
Change-Id: I06b5f6d7dbb21d4d0747974ba001b0c8929a0b02
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
10894e509f777c6bd7e408a57f5cf21ee2b36a96 08-Sep-2012 James Painter <jpainter@google.com> Fix build

Change-Id: Ia4bebc4ecc850b42ebd4edd1ffed07e9bc2ec300
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
e538206d15282afbc5b168d60b1026a5dfcd13c0 06-Sep-2012 James Painter <jpainter@google.com> Camera2: Add a burst mode skeleton.

Bug: 6243944
Change-Id: I7f496ca1051571c68fdd99a6f85bf6a908a4e29a
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
cf70d3469332445dc3ffd09729da3538612b1bb2 06-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Delete all streams and stop all threads during shutdown.

Bug: 6243944
Change-Id: If13a1f91e8a07c1ec4f91183d1a4b261ec4f6d52
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
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.cpp
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.cpp
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.cpp
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.cpp
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.cpp
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.cpp
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.cpp
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.cpp
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.cpp
76dc8dacbb3e2a8c91cb526293270f9093cf8f8b 22-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Ignore NOT_FOUND errors for face detect mode on frame receipt.

Reduce log spamming due to incomplete implementations.

Change-Id: I6eb9d657591bd5f1476dd8c96e4a00b8a03e2a5e
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
3cc89794d92b833feff15ca76dfa196cc886e43f 17-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Fix SCENE_MODE

Now can set scene mode back to auto.

Bug: 7001465

Change-Id: Ia25ba54d13de662bef5bf79957987513a7313c18
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
603b12efa16e7afb4e6c75f6b353216c83e8e135 08-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Swap AF notification order, minor bug fix.

In continuous AF modes, when an AF trigger/cancel is received in the
middle of a passive AF scan, we want to send both an AF move stop
callback and an AF done callback. Swap the order of sending to
simplify life when the app just wants to pay attention to the AF done
callback during an active AF trigger.

Bug: 6243944
Change-Id: I127d1675bc37ef828ef89c70b8cfab75f9428a2f
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
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.cpp
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.cpp
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.cpp
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.cpp
d6f8e08a9ca7f2fe41717acd351426a7ecb0c175 03-Aug-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Fix exposure compensation step value.

Fix floating-point divide error.

Change-Id: I61b140c1090d6773b9b530d19a2ec03cf784b85e
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
428b77a2b94b74665a47375b3fdb893b98d71269 30-Jul-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Improve formatting of debugging dump

Bug: 6243944
Change-Id: Id8730357f3adcd96923132f9f702e296e0dfd357
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
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.cpp
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.cpp
2267106c98f461b730c772a913da946c391a178c 21-Jul-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Stop preview: Wait until HAL is drained

Once camera returns from stopPreview, all preview activity needs to
have stopped. So wait until that's true.

Bug: 6243944
Change-Id: Ifa6cf171bd69015883e26dafb1e49e5ac098025a
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
9e4c3db01ba4eb1e5acbed113f78a31374900df6 20-Jul-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Add more verbose logging

Until ATRACE works in emulator, add more verbose logs to help debugging

Bug: 6243944
Change-Id: Ic5fbf764f2717e5edd05d37e0f7d826f1d494179
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
898a9a9b867e5d209671feee4c92266f90a55aa3 20-Jul-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Fix recording bugs

- Release recording stream on shutdown
- Return recording gralloc buffers to queue when they are received by
camera service after recording has been stopped (which is normal
behavior thanks to pipeline latencies in camera pipelines)

Bug: 6243944
Change-Id: Ia13a501c726613fd1e404733456dbd10d7b00132
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
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.cpp
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.cpp
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.cpp
3297daae9681004775012faba9181d65e097e00c 14-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Add more dump information, connect HAL device dump

Bug: 6243944
Change-Id: I79a302f68786d815b9ab9984dbb31d237522416b
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
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.cpp
bd47b7bcfe7f5a97fef81143f4282c41590626fe 07-Jun-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Minor bugfixes and cleanup

- Use CameraParameter-defined enum strings instead of writing our own
- Remember last window binder sent properly

Bug: 6243944
Change-Id: I68b1d042becaa6ebb4776fd2865dc0a29db7b87e
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
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.cpp
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.cpp
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.cpp
a189097d0c96fac9afa86e644312ffbb0027b124 31-May-2012 Eino-Ville Talvala <etalvala@google.com> Camera2: Switch to using ATRACE

Bug: 6243944
Change-Id: Ib2aa1875c72b20ae764d9de95b4122b736738df2
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
611f61998863d3a3ffae4e5f2b723b7319c59ddf 31-May-2012 Eino-Ville Talvala <etalvala@google.com> Add basic Camera2Client dump, minor fixes to CameraService dump.

Bug: 6243944
Change-Id: I52caaa6146050c38976768e99b0eeea1d13a3f51
/frameworks/av/services/camera/libcameraservice/Camera2Client.cpp
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.cpp
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.cpp