History log of /packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7e39f8b015985fc0e539e14c193286065b5e51d4 09-May-2015 Pengchong Jin <pengchong@google.com> WAR of the face detection failure

This patch gives a work-around of the face detection failure that
occurs when the ZSL camera is used. It forces to request a preview
frame followed by a 5-frame ZSL burst before requesting the repeated
preview and ZSL streams. It also hides the first preview frame in order
to avoid potential janks. We do this only for L, Nexus 6 and Haleakala.

Bug: 20724126

Change-Id: I40b7861e07570ed53135b2d8d182b65c5799adac
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
5f1f618eb3df6b9a2f8554e97e8410467b642653 15-Apr-2015 Paul Rohde <codelogic@google.com> Send a warmup burst to the camera before attaching the preview.

This reduces startup jank by submitting a warmup burst of n
frames to the camera before the preview surface is attached to
the camera. This ensures the large internal buffers are
allocated by the HAL before the preview stream is attached. The
change will delay the preview by n frames in exchange for a
smoother preview once the preview is actually shown.

Bug: 19076469

Change-Id: I5abb8b49a64c35686c014001a45239f4eccfe34d
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
ffae1b53110ddae98b810bdb9a5c9dc210d96551 01-Apr-2015 Paul Rohde <codelogic@google.com> Defer the ZSL stream by 500 ms

This forces the preview to start before the ZSL stream is
attached, and then attaches the ZSL stream to the repeating
request after a 500ms delay to give the system time to allocate
the underlying buffers for the ZSL image readers.

Bug: 19076469
Change-Id: I75ea28ead5b009e0f65f5f00c0522bcb2219cb22
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
36a1ad23bead41193e22442d3196e93a01ec7fe6 31-Mar-2015 Puneet Lall <puneetl@google.com> Add support for dynamic ring-buffer max size

Enables specifying a maximum ring-buffer size.
Setting the ring-buffer size to a value smaller than
ImageReader#getMaxImages reduces the number of android.media.Images held
open at a steady-state at application startup.

Because ImageReader images are allocated on-demand, this mitigates
stuttering in the preview-stream caused by massive allocations that
would otherwise occur as the ring buffer expands.

Bug: 19989536
Change-Id: I5623d0cd0da6542599f430f0dcbf97d581ec8df1
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
a1a76c8ae8a0c6f0ffca427758c771ee77af2c59 30-Mar-2015 Paul Rohde <codelogic@google.com> Collect and log jank statistics in the Camera.

This detects and logs sequences of camera timestamps where the
delta between the the current and last frame exceeds the
previous delta by a percentage threshold. This should only occur
when there are visible janks in the camera preview.

Bug: 19987252

Change-Id: Icced48be8232bba625aa501b2b1f5c111dbb5573
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
3bc38870104d065beb667f2c1274efea26fbc3af 28-Mar-2015 Paul Rohde <codelogic@google.com> Detect jank in the preview by measuring sensor timestamps.

This detects frames dropped by the camera (Which results in a
preview that skips and jitters) by tracking the delta between
frames and logging when that delta increases by more than 120%.

Bug: 19076469
Change-Id: Icc9f08174097587c850c06ae88007ce784775851
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
5ca7d2642881f3cf06adb2532e0d5950524a34f4 07-Mar-2015 Puneet Lall <puneetl@google.com> Optimize ZSL for auto-flash mode

Cache the most recent converged AE state to enable more
auto-flash pictures to be taken with zero shutter lag.

Bug: 19151363
Change-Id: I7d4bd5a67d4cddb7a1f733844e1a080acfacf7f4
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
c44b7c47dbb8f53a6401285c4ca9218326d21a7e 10-Mar-2015 Puneet Lall <puneetl@google.com> Reset existing AF scan upon tap-to-focus

* Interrupts existing, in-progress AF scans upon tap-to-focus
(triggerFocusAndMeterAtPoint).
* Removes pending delayed-af-resets upon subsequent tap-to-focus
to fix the case in which a user triggers AF twice within <3 seconds
which previously resulted in the AF mode returning to
continuous_picture shortly after the second AF scan.
* Removes dependencies on CameraUtil and static Settings3A
methods, and refactors FrameServerImpl to enable unit-testing.

Bug: 18935538
Change-Id: I0c2d5d92d2b07efdc11de8388e42b931d3ea89d0
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
ccb0c17a104801a994c901d1c89c9d99005782ed 06-Mar-2015 Puneet Lall <puneetl@google.com> Fix ready-state issue when commands are queued

Ensure that the FrameServer is marked as unavailable if a command is
queued, waiting to acquire access.

Bug: 19367334
Change-Id: Id7b1639c6c3a7e65c75002b9f6f8f24c7515e932
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
259ef720650f3d4e77dd381167ed12cdfd489403 09-Mar-2015 Shashi Shekhar <shashishekhar@google.com> Fix zoom for burst.

Instead of passing the root request builder, use the request builder
configured by the Camera factory.

BUG: 19637871

Change-Id: Ibae1a85c47b0b31e07c91c4a15ec138ad021449e
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
66b942a3d20aac65454961ef2bc219ca560b9fba 03-Mar-2015 Puneet Lall <puneetl@google.com> Add error handling for repeating preview workaround

Adds error handling to show a dialog if the workaround for the repeating
preview (bug: 19061883) fails.

Bug: 19565931
Change-Id: Iabc3b4fdbc6977b0e1828243e80138385a3ef522
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
81308a22b0f64c6667f6c23adee9da520415bcb6 03-Mar-2015 Puneet Lall <puneetl@google.com> Filter out duplicate calls to ready state listener

* Adds a FilteredCallback to filter out callback invocations with
duplicate values.
* Simplifies ready-state calculations.

Bug: 19535852
Change-Id: I8376c13f24ff7a4f6f2d347f363746c2a6466601
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
9b2e78294a9dc91e871b8363e521250efbc3a20a 24-Feb-2015 Andy Huibers <andyhuibers@google.com> Log API2 preview repeat failures.

Bug: 19061883
Change-Id: I45a361169e27bc22b5fe36f5d54810fe2abcf6e5
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
8f51086c8177056345de996963515c4bd3415254 19-Feb-2015 Sascha Haeberling <haeberling@google.com> Centralize logic for Camera API feature determination.

Bug: 19179276

This captures camera capabilities in a centralized class and allows
them to be overridden by GServices in the field or using adb.

Since this is not it's own class it would be trivial to create another
instance for testing and pass that into CameraActivity or even to change
these values using a UI before the actual Activity is started.

Change-Id: I74262c8467f631c7b5e42b02d269d5f401d4e9e7
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
0db8a2fd5cc02753d42f34a1c858b980c6c277bb 20-Feb-2015 Paul Rohde <codelogic@google.com> HDR Scene mode support for CaptureModule.

Bug: 18622877 N4 HDR Scene support.
Bug: 19269257 HDR+ flash setting persistance.

Change-Id: Ibac3d6513a1e14d8a2ffaf6208509133d31a8fb8
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
270990a7e3fcd1cf71b652c9ad1cc46598ddf4b3 19-Feb-2015 Puneet Lall <puneetl@google.com> Reset the camera after detecting repeated failure

Bug: 19061883
Change-Id: I913334e19fc248010bdeb2dab4ae1a6d05427f40
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
b6c4a314d0a0a185e6d987298ef9b7f4db8a6a2f 11-Feb-2015 Senpo Hu <senpo@google.com> Enable exposure compensation in CaptureModule.

* Expose camera exposure compensation capabilities in OneCameraCharacteristics.
* Turn off exposure compensation on Nexus 6 (API level 21).

Bug: 18523154
Change-Id: I551f19945f5a64a09a76b3a0777664d16a9b2ba2
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
401990916915791be14c65694ce3507eac3ec82d 17-Feb-2015 Paul Rohde <codelogic@google.com> Merge "Read focus range from CameraCharacteristics." into ub-camera-haleakala
aca904e29aea542b6e6a4fcc837759a57a270a49 12-Feb-2015 Paul Rohde <codelogic@google.com> Read focus range from CameraCharacteristics.

- Remove hardcoded focus range values.
- Explicitly provide a lens range and range checks.

Bug: 19356651

Change-Id: Ied2513b5a654a00af07e76a66e72aac50ffc9c42
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
b4b27f2c7738cd5e3f31a281d66a33f4698810b3 16-Jan-2015 Shashi Shekhar <shashishekhar@google.com> Port burst to use FrameServer.

Port burst to frameserver
- simplifies burst interfaces
- removes burst methods from OneCamera.
- locks orientation when burst is running.
- Deletes most old code for burst integration.
- Removes frame distributor preview forwarding, instead frames are
streamed using a surface texture the Surface for which is passed
as a output target to the create capture session.
- Deletes FrameDistributor, now the low-res frames are streamed to a new
surface specifically setup for burst.

Change-Id: I50f2955bb48610a7e284f9609cd70b8e4e1f1059
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
adf3b29e69726175761fa2a5558c545822024bed 06-Feb-2015 Puneet Lall <puneetl@google.com> Minor cleanup

Change-Id: I1c8a953762fc51ddaabd0b3b0a82ec2a95e4757d
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
63204dc989dbd0eba56f65086fde0ebe29ed6bdb 31-Jan-2015 Puneet Lall <puneetl@google.com> Implement ready state

Bug: 18934542

Change-Id: I1dc27eb3f8fb1ef156ae8643b2b5e92f013c4e4b
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
529f3777bf514020de0455820639bb32cd1631a6 30-Jan-2015 Puneet Lall <puneetl@google.com> Merge "Fix bug in counting open images" into ub-camera-haleakala
1738db31add0aea5a6a6f2c137ca6fc476a10237 30-Jan-2015 Puneet Lall <puneetl@google.com> Fix bug in counting open images

Bug: 19156045

AndroidImageReaderProxy previously would return an instance of itself
via onImageAvailable. This caused a problem because it bypassed the
LoggingImageReaderProxy and CloseWhenDoneImageReaderProxy decorators.

This change also includes additional minor fixes for potential issues,
specifically, it also synchronizes access to each android.media.Image
and ImageReader because they are not thread-safe.

Change-Id: I0d76c07ae37b09cdec40f7d7789b49f7397fb414
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
6c3a702472798d446049bd6241851f3ae8775b57 27-Jan-2015 Puneet Lall <puneetl@google.com> Fix flash implementation

Bug: 19132962
Change-Id: Ifdf4c9694bc503c8b902386f380ae1a39e7824d0
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
1e123ea83881996b6c5ac3e29702050cc42d43ad 28-Jan-2015 Paul Rohde <codelogic@google.com> Convert Logger from a class to an interface.

This set of changes makes it easier to insert any Logger implementation into a method and to ask for instances during object creation so that objects that require logging and testing can be easily tested.

- Add Loggers for individual Logger types.
- Add static methods for existing TagLogger.
- Add NoOp logger implementation.

Change-Id: I30c03667c88214cff03521d0a1f6fa3b00851a68
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
3c2c50c761de241085c81886b21575cfdec169b8 27-Jan-2015 Puneet Lall <puneetl@google.com> Change/fix flash behavior when taking photos

* Ignore ZSL images when flash is ON (Bug: 19151455)
* Ignore AE state when flash is OFF (Bug: 19151502)

Change-Id: I2e27eb9b7573beab352fba89c02805447d009c80
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
a8c94d5c059db2598caca676f0cab47a997ef631 23-Jan-2015 Puneet Lall <puneetl@google.com> Enable testing of ZslSharedImageReaderFactory

* Migrate from CloseableHandlerThread to HandlerFactory to remove all
direct dependencies on the platform.

Change-Id: I3d6aca94cd6f9559596d157b86c174bfb8801f90
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
b8397360d318edf3093b20b2b102207d76730e1b 14-Jan-2015 Puneet Lall <puneetl@google.com> Close ImageReaders after the camera is closed

Bug: 18841114
Change-Id: Ifc0b79e70059efd8f8ace2c29243406b524ad918
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
9a034a1119fbba2fa82362de74dcb671d2ce6c19 16-Jan-2015 I-Jong Lin <ijonglin@google.com> Framerate fix for ZSL Nexus 5, Redux

Screwed up the merge last time. Need to redo this fix.

Bug: 19017062
Change-Id: I52b5bb71dea71f52c7c5d3379df798931b1976c5
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
78276fbe6c30265d5e52df9ececb275ce898e684 16-Jan-2015 I-Jong Lin <ijonglin@google.com> Revert "Optimize Framerate Workaround for ZSL on Nexus 5"

This reverts commit 3ec132c4429683871ffd652e2563459e5c866065.

Change-Id: I269f26ce801dc730055307226479af1d6f6effd5
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
3ec132c4429683871ffd652e2563459e5c866065 16-Jan-2015 I-Jong Lin <ijonglin@google.com> Optimize Framerate Workaround for ZSL on Nexus 5

Through experimentation, we have found that the framerate range
[7,29] does NOT reproduce the preview jank, but still allows
ZSL to be run.

Bug: 19017062
Change-Id: I99f71385640f103a05f86d7a194f36712b1841d8
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
386c5b885b99f67f9c0a7380f4be153f28333089 09-Jan-2015 Puneet Lall <puneetl@google.com> Apply flash setting changes to the AE mode

Bug: 17216526

Change-Id: If6c03102f04ad2ba54e1a045a3ab7445aaa5b595
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
4961ad31d9a877e3a68566fb5d4b33b7f79ce44e 08-Jan-2015 Puneet Lall <puneetl@google.com> Filter ZSL images based on frame metadata

Introduces a new metadatasynchronizer package with functionality for
retrieving metadata (TotalCaptureResults) for images which have been added to
the zsl ringbuffer.

To enable unit-testing, proxy objects for CaptureRequest, CaptureResult,
and TotalCaptureResult have been added, so they can now be mocked.

Bug: 18964540

Change-Id: I8374350e09d33f54ff241f23fd005013ed26dab0
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
8a09cc29b273e35128a03794e82dd4f329d35cc9 08-Jan-2015 Puneet Lall <puneetl@google.com> Change ImageSaver interface to support processing bursts and thumbnails

Bug: 18908116

Change-Id: I14863011de5c3a575bfb54758824ccfaa04cf200
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
593a03b147a0388530cc63ca83e23fea6107693f 12-Jan-2015 I-Jong Lin <ijonglin@google.com> Enable ZSL for Nexus 5 Back Camera, 1 of 2, Redux

Allow ZSL implementation to be used with Nexus 5. We still
need to drop the frame rate, if the current camera is facing back.

Screwed up last submission. Will always build locally next time
no matter how small the change.

Bug: 18964282
Change-Id: I975129d7262b904f8b0b31a4cdbe95526e88a521
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
5aa7eb2930b813c97f3754d93fe7fa978651887b 08-Jan-2015 Senpo Hu <senpo@google.com> Instantiate a ImageSaver.Builder in CaptureModule.

We will need different image savers for capture intent.
Since we plan to create a separate module for capture intent,
this change allows modules to be able to choose a different builder.

Bug: 18726217
Change-Id: I5871263123b06958d902cc8e3a4d911f14c83e66
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
d8463954727c9f8b688e69476439830cadb7b45a 30-Dec-2014 Puneet Lall <puneetl@google.com> Refactor camera factories to reduce code duplication

Change-Id: I5f5c899f595dbbaa9fa181c5caa092d4bad69f07
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
6a4a38d2320ab4e840cf4ad2ffb9714b0d7c1539 31-Dec-2014 Paul Rohde <codelogic@google.com> Detect slow frames and provide smoothed preview FPS.

Change-Id: Ie1a8feeb8d69f213791cd8b86e0f2e10e5b8cc08
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
9ad0984f36ff9cd133c61c4e979032988b77a995 31-Dec-2014 Puneet Lall <puneetl@google.com> Replace Pollable with Guava Supplier

Change-Id: Ibd4359cf5f0c7dbacb534dcb098d77a1f2f36133
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
49b177beff5ed10e04f90c7615c273496fd3ba9b 30-Dec-2014 Puneet Lall <puneetl@google.com> Merge "Rename to RequestTemplate" into ub-camera-haleakala
0cd4a4481272ff00780291410237bcddd31c96a6 30-Dec-2014 Puneet Lall <puneetl@google.com> Simplify ImageSaver interface

Change-Id: I92bdade418f39d852e972f18f58e5620d38067aa
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
7f4a37d1885b2652b569291661120c1c1d415fe2 29-Dec-2014 Puneet Lall <puneetl@google.com> Rename to RequestTemplate

Change-Id: I4f1dd9ac41d8c35c50eaead4be211d3bb108bc73
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.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/one/v2/ZslOneCameraFactory.java
30ccdac56450e5b1927e14a6eede2b86a30c42eb 19-Dec-2014 I-Jong Lin <ijonglin@google.com> Full end-to-end integration for ZSL

Full end-to-end functionality using the ZSL integrated with
the ImageBackend. Still some outstanding issues regarding image
orientation, but the full pipeline is plumbed for ZSL.

Change-Id: I636944fbd57e7d1bf6b1ef24e1e2c1317afdd28d
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
71a42845d8b7302325abfc4e1314d099f7df9e00 20-Dec-2014 Puneet Lall <puneetl@google.com> Merge "Implement callbacks for focus indicator on zsl" into ub-camera-haleakala
0e08cd20de04edc8ad8a8aa7f677b7cc708f21d3 20-Dec-2014 Puneet Lall <puneetl@google.com> Implement callbacks for focus indicator on zsl

Change-Id: I5348192a76222ac41923b680acb58ac6480affcf
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
c57c79fccfedeeaf34c1847861464fb041260ddc 19-Dec-2014 Puneet Lall <puneetl@google.com> Enable AE and fix metering regions for ZSL camera

Change-Id: Icaf3bfe9b004e032e43ae600fb3e10ce201ce545
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
48fbf15e2c8806fc518f4c881ab17b1b548887d9 19-Dec-2014 Puneet Lall <puneetl@google.com> Fix bug in which double close() increased ticket count

Change-Id: Ic534cb436755cbb3fada8769e0f7f81e6167eb5f
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java
12f608f3d2089439a108788a1908941eea4277b9 11-Dec-2014 Puneet Lall <puneetl@google.com> Added zero-shutter-lag capture implementation over the FrameServer

Change-Id: Ia01244dba7013c5f81152dd90adc8d87e7004dd2
/packages/apps/Camera2/src/com/android/camera/one/v2/ZslOneCameraFactory.java