History log of /packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
dad39b12816f05468476804b7caf3ef39a4aa682 28-May-2015 Sascha Haeberling <haeberling@google.com> Add logging for when a session knowingly failed.

Bug: 21169512

Change-Id: Ic1dc499785a97f7344e517f555fa5f7b3a1c7ea9
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
646e84f85a3f463ce094ad5a9caca261277f0d0e 28-May-2015 Paul Rohde <codelogic@google.com> Log capture session canceled events.

This will handle the edgecase where capture sessions may be
canceled inbetween the time the button is pressed and the capture
actually starts so that it is possible to subtract these cases
out of the unsaved image data.

Bug: 21169512
Change-Id: Ie226d81bb10acd90dc1297230d4b024b7cd2d4d6
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
231b1c0679892e431bac9fe4461d5fb235e362b1 16-May-2015 Paul Rohde <codelogic@google.com> Log capture started and bytes on disk

Change-Id: I3a62aed33f55b396b4940a7bc9e5da5131616890
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
37036186326fb68c27063f97305405d3667a5eb3 25-Mar-2015 Sascha Haeberling <haeberling@google.com> Change CaptureSession.saveAndFinish to return a future for the URI.

Bug: 19665531

Most callers of saveAndFinish never provided the callback. In addition
it's unclear on what thread the callback is called. This cleans this up
a bit and moves the responsibility to the caller to decide on which
thread the URI should be received. Callers that don't care don't have to
do anything.

Also fixes a bug where we wouldn't even supply a URI for when there was
no placeholder.

Change-Id: I1a186b470d2cca8f34a674e9eb5c533fc01a4409
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
976bba4cfffb0089d4b7c61e16b90f506dbf1a2b 20-Mar-2015 Sascha Haeberling <haeberling@google.com> Rename CaptureSession#finalize to not collide with Object#finalize.

Bug: 19855781

Change-Id: Ie32024a9d2b7c04a27cc1ff7eee62df0e6857031
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
e7c53cc907f5bb40c8d112830d12ac494e4c68c5 12-Mar-2015 I-Jong Lin <ijonglin@google.com> Add PhotoCaptureEvent to Capture Module

Adds a CaptureSession collector class so that
we can combine stats information from both the
CaptureModule and ImageBackend to create a
complete PhotoCaptureDone event.

Bug: 19035503
Change-Id: Ide5f708c5f3efb710fa704f3f30c52ac7a8c3fe4
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
0460ef28c6970d646260584b7df0b2b3157a67ee 07-Mar-2015 Sascha Haeberling <haeberling@google.com> CaptureSession passes on message IDs instead of strings.

Bug: 18867164

Change-Id: Ie601a0fbaf64873c56c6a9b2767a2fa6a04a11d9
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
698e271d2b263778bfa73d1e67d6e2cd2783c89e 04-Mar-2015 zafir <zafir@google.com> Added more error handling for camera access and picture storage issues.

Implemented onFailure() method in the OpenCallback interface and
onPictureTakingFailed() in the PictureCallback interface.
OnFailure() routes through showErrorAndFinish() in the AppController.

Bug: 19452391

Change-Id: I3c19a274cc7664f7d1834899a486c57d0585dc9a
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
e48cd5405840c530d4beefca84674c4919a77edb 04-Mar-2015 Sascha Haeberling <haeberling@google.com> Make sure we don't start sessions on long-press if no burst is taken.

Bug: 19602850

Change-Id: Ia49e508811ca145e93d1f7e2df83100ba3fa1816
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
995083b53be47e1e27133e403da0b63a03d07ea7 20-Feb-2015 Alan Newberger <alann@google.com> Reduce memory footprint of session bitmap cache.

Convert storage bitmap cache to an LRU cache to have a fixed
upper bound on usage. Evict bitmaps after a session is complete.

Bug: 19124117
Change-Id: I4a5dd9f15c3b986601c4a92477edf9346f190de1
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
636bce5ed9771df424a5ca46586648a11018179b 14-Feb-2015 Sascha Haeberling <haeberling@google.com> Allow for the thumbnail to be updated and refreshed.

Bug: 19325176

Change-Id: Icc0f08b4c8b20e1b6d3e66fa420efea9e24faf73
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
6dd5840e86bffecba8a7f52327b9c1085caeb7d2 10-Feb-2015 Sascha Haeberling <haeberling@google.com> Route all thumbnail updates through CaptureSession

Bug: 19326495
Bug: 19310525

This removes the thumbnail ready callback that was hooked directly into
the ImageBackend from the CaptureModule before since it's now
unnecessary.

Client of CaptureSession can no optionally specify whether the updated
thumbnail is to be used to update the capture indicator. Default is
'yes' so that Lens Blur, Photo Sphere and HDR+ don't need to change.

Change-Id: I94adb50f875ccee214492f03f00ed2a67d400da1
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
63a8c9467824ef8aa2039b7e27831b0533d8e5d9 29-Jan-2015 Sascha Haeberling <haeberling@google.com> Only create temp session file when necessary.

Bug: 19148484

This also removes the IOException that could happen when a new session
is created and moves it to where a module actually needs the temporary
output file.

Change-Id: Ifc1f1ba2735557580c1302f8658a07bb13cc3c3e
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
abf1e994d236a65180eecfcb6997003ab12795df 21-Jan-2015 Sascha Haeberling <haeberling@google.com> CaptureSession can now be started with an empty placeholder.

Bug: 19014774
Bug: 18853119
Bug: 18979823

Being able to start with an empty placeholder and then updating that
placeholder allows us to add a visual entry to the filmstrip early on.

This avoid jarring effects where after taking many apid fire shots and
going to filmstrip, the entries are appearing one after the other.
This was caused by sessions only getting started when the thumbnail was
produced, which can take a while when multiple shots are in the
encoding pipeline.

Also contains changes that make CaptureSession testable.

Change-Id: I3d44704099be81524f8e165f3f09de6eebfc147b
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
3830d419691ef865f01b362fee9618bac2aa8888 20-Dec-2014 Sascha Haeberling <haeberling@google.com> Store ZSL images in correct orientation and show progress in filmstrip.

Added an ImageRotationCalculator which calcuates the image rotation
based on camera characteristics and the device orientation at the time
of the shot.

Also moves the image backend code into its own sub-package.

Change-Id: I4b6b83e3e3cebece83215c19d0aff826ff853352
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
24069e7a9cc9b4f908f18a71301285ccf5e164f6 09-Dec-2014 Sascha Haeberling <haeberling@google.com> Adding stack support and hooking SmartBurst up to the new API.

Change-Id: Icc023aed65e1e31f0b808de648067b3628fff838
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
8111aa0a298688da560dcac6bc4c3f92b878dbc7 09-Oct-2014 Sascha Haeberling <haeberling@google.com> Make temp session directory creation more robust and efficient.

Also rename some methods for clarity.

Change-Id: Ic6d3e7902ae5396f33231f1471df9eae89234132
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
57bcd92f39d85427102f30be2c749c4a7bd4be96 01-Aug-2014 Sascha Haeberling <haeberling@google.com> [OC] Refactoring the session API before intgrating GCam into OneCamera

Bug: 16654225

Change-Id: I3fe6f46847ed6424310a81722c93c63be8b807a3
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
4a400d7f09ea0655d4730e904892e3a9d96993eb 21-Mar-2014 Sascha Haeberling <haeberling@google.com> Processing service needs to start in foreground.

Bug: 13575616

This moves the notification logic into the processing service as we
anyway only have one notification.

Change-Id: I267966a0e34028cb72be373031562e9e9bc89bbb
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
571a8c389798bd3f01429f6be34cd3e606ab34df 13-Mar-2014 Angus Kong <shkong@google.com> Refactor data model.

bug:13176987
bug:13410244

This refactor is to make the relationship between Controller, Model and View
clearer. Now controller (CameraActivity in our case) takes the full
responsibility to add/remove data. The model (CameraDataAdapter, LocalData and
its subclasses) is only responsible to store the data with correct types and
data structures. The view (Filmstrip) is a totally passive component who takes
care of how the data is presented and define how the user can interactive with
it.

The session API should not be exposed to the filmstrip MVC architecture and
instead we should make them as independent as possible. The controller should
maintain the logics of how to interact between these components.

Major changes in this CL:
1. ImageData.getContentUri() -> getUri(). The Uri is no longer a content Uri.
2. LocalDataAdapter: addNewSession() and finishSession() removed. We don't
assume the session concept in data adapters anymore.
3. LocalDataAdapter: addPhotoData() removed.
4. LocalDataAdapter: addData() added (original private in CameraDataAdapter)
5. LocalDataAdapter.Listener: onNewDataAdded() removed (since it's actually
triggered by the caller who is adding the data.)

Session API change:
CaptureSession.onPreviewUpdated() is changed to onPreviewAvailable. The module
now should decide the timing to notify the availability of the preview through
it.
CaptureSession.updatePreview(String path) is added. Not all the module can have
a preview when the session is created. Panorama/PhotoSphere creates the preview
after a background processing. The preview is stored as a file and should be
update to the internal preview storage through CaptureSession.updatePreview().

Change-Id: Id73c8f289bd4b3c13149da1b72c99fc6bab5849e
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
93c6b617868b73b73199cf93216fec7002290f55 13-Mar-2014 Seth Raphael <magicseth@google.com> Allow a session to know its content uri

Bug: 13442744

Change-Id: I8ec870ae81cf70dbdf6cab9295a4556cf9f66179
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
597c1a093f840af3c42e00af05da01ef124dc846 06-Mar-2014 Sascha Haeberling <haeberling@google.com> Support for capture session errors.

Bug: 13026663

Change-Id: I3713440483aa4732f94aff9eaff2fc34a04c0427
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
93be42a997b008fbd098ce8ad8e8bf1eb775b3f6 06-Mar-2014 Sascha Haeberling <haeberling@google.com> Change session API to support location inside a task.

Bug: 13325568

Change-Id: I72f69803ab304d198e8c74c194a36bd0820ac187
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
298c06604bbf390da2fe1775f5ed834a592d5bb0 21-Dec-2013 Sascha Haeberling <haeberling@google.com> Two new getters for the session API.

Bug: 12236950

Change-Id: I1ac8809688e48ffa4cbde16c212fb90e1a1e5c01
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
14ff6c8df2924ccad083591c0fc873322c6828c0 13-Dec-2013 Sascha Haeberling <haeberling@google.com> Add placeholder image support.

Bug: 12132677

Change-Id: I2add5837f82a956901c132cacae71b193007d482
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java
a63dbb6231f06031204fe20b19a87d0440bd1661 22-Nov-2013 Sascha Haeberling <haeberling@google.com> Add a capture-session API to be used by all modules.

Bug: 11747284

This refactors the way we think of sessions. Instead of
having multiple session and notification APIs being used
by different modules, we create on central capture session
API to be used by all modules.

This also adds a first implementation of a Memory API which
tells modules about the current memory situation.

Change-Id: I7f030e32fc2f70f4007825ba7bbbdce9521a2bd9
/packages/apps/Camera2/src/com/android/camera/session/CaptureSession.java