bf39f791ab7c79457de2c2f21ac2260a6754c029 |
01-Mar-2017 |
Sheng-Hao Tsao <shenghao@google.com> |
Fix the bug that camera can't open again after disconnected Reproduce steps: 1. Open android default camera 2. Open chrome camera app 3. Close chrome camera app 4. Android camera app is disconnected. Close it. 5. Open android camera app again. It can't open camera anymore. The root cause is that camera state is set to invalid after getting an exception in step 4. We should not invalidate the camera. BUG=35411023 TEST=In samus, verify that camera can be opened after the above steps Change-Id: I63bcc3587d1c7970c1bad8bffa628fa579f831ef (cherry picked from commit a822d5c3528473582de6b2f9db0bee3ea2a18190)
x/camera2/portability/AndroidCameraAgentImpl.java
|
7921659d7096a618634153ca7fed88e8563e03f5 |
02-Mar-2017 |
Sheng-hao Tsao <shenghao@google.com> |
Revert "Fix the bug that camera can't open again after disconnected" This reverts commit 03e6dacb31332de191a1190a6b6f7d948f6536ef. Change-Id: I469085d6993a6005f3487a3a33327bdaac498993
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraStateHolder.java
|
03e6dacb31332de191a1190a6b6f7d948f6536ef |
23-Feb-2017 |
Sheng-Hao Tsao <shenghao@google.com> |
Fix the bug that camera can't open again after disconnected Reproduce steps: 1. Open android default camera 2. Open chrome camera app 3. Close chrome camera app 4. Android camera app is disconnected. Close it. 5. Open android camera app again. It can't open camera anymore. The root cause is that camera state is set to invalid after getting an exception in step 4. We should allow opening camera even if the state is invalid. BUG=35411023 TEST=In elm, verify that camera can be opened after the above steps Change-Id: Ie9e64cf826a3510b5fa76b14f7f4110e5a015b64 (cherry picked from commit 5d61737fe19ad69d41d94e2660053e82d0aa3dc5)
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraStateHolder.java
|
5f82a7e40f93cf9ae70ba1dacb61e907b8bdcc83 |
20-Jul-2015 |
Charles Zhang <ZhangCharles518@gmail.com> |
fix a mistake in AndroidCameraCapabilities.buildWhiteBalances(). 1.fix a mistake in AndroidCameraCapabilities.buildWhiteBalances(). 2.add White Balance Parameter setting in applySettingsToParameters(). Change-Id: Ic74493026ebfa09e27f7c3ea83fee300f751c5c1
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/AndroidCameraCapabilities.java
|
c5effbd8ffed05f6c5142c1c8d491c398194bf5b |
05-Dec-2014 |
Eino-Ville Talvala <etalvala@google.com> |
Camera2: Portability: Remove HDR hack. Bug: 18640480 Change-Id: I8f0b42cbb05c6881fbc32664ce9e2b97a0ef5db3
x/camera2/portability/AndroidCamera2Capabilities.java
x/camera2/portability/AndroidCamera2Settings.java
x/camera2/portability/LegacyVendorTags.java
|
25b78c8a18327bd73c3d4d34887dd63953aeaa8c |
04-Nov-2014 |
Alan Newberger <alann@google.com> |
Ensure default handler always is set if no other error handler registered To avoid memory leaks we set the error handler to null in activity onDestroy. But, the agent may receive callbacks after this, so ensure at minimum that we set the default logging handler to default handle errors post activity destroy. Bug: 18200874 Bug: 18202261 Change-Id: Ie7251a149ab02c474d8affd15af6b9ea48c2cdc0
x/camera2/portability/AndroidCameraAgentImpl.java
|
c15ddae4862bb9a10b0142fac9558a5f899b1a21 |
27-Oct-2014 |
Alan Newberger <alann@google.com> |
Ensure agent error handler is always non-null Create a dummy placeholder handler which logs warnings, which can be replaced by app if desired. This makes various assumptions valid that this is non-null. Bug: 18137167 Change-Id: I0f508dff3cfe766ccc5a3c5a26c6196f4fb31e04
x/camera2/portability/AndroidCameraAgentImpl.java
|
733ca8dfa76ac34d1f9caff8798d01a4a8f44002 |
14-Oct-2014 |
Senpo Hu <senpo@google.com> |
Return more detailed debugging info for logging purposes. Change-Id: If71afbf8029e9e4d5560eb6a655ece990cf19a19
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraExceptionHandler.java
x/camera2/portability/HistoryHandler.java
|
318eeb225f4567a8c2a6fe14baa06e8923ebe622 |
11-Oct-2014 |
Senpo Hu <senpo@google.com> |
Cleanup: handle API 1 error callback in CameraExceptionHandler. Portability API used to expose setErrorCallback call which is API 1 only. The new CameraExceptionHandler should be the centralized place to handle different camera errors. Bug: 17931297 Change-Id: I0212f96a98e0caca64aca0f947b991b895d8d56b
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraActions.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraExceptionHandler.java
|
2d01b8e2b5ad30ce3c442799cad4c3d26607fc6f |
06-Oct-2014 |
Senpo Hu <senpo@google.com> |
Overhaul error handling in AndroidCameraAgentImpl. DispatchThread could throw RTE when timeout (2500 ms). This CL extends it to 3500 ms and also re-route the exception to the proper exception callback instead of surfacing that up to the app. Since a lot of try-catch block is added, CameraExceptionHandler class is added to keep CameraAgent.java clean. The portability layer should ensure the proper use of Camera API 1. With this assumption, any run time exception thrown by the framework should be considered fatal. Once it happened, CameraAgent/CameraProxy should be invalidated. Any subsequent camera commands should be gated as no-ops to prevent HAL hanging symptom. Users should be guided to exit the app and recover from the camera error. Design Doc: https://docs.google.com/a/google.com/document/d/1t0sEPwGgc387XcoCVC7kT9Y_RSZPxcayla03M4bdn0U/edit Corresponding CL for the app layer: ag/562383 Bug: 16189216 Change-Id: I33e69aeff0c8e4211e82e0e83133915700c4eb8f
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraExceptionHandler.java
x/camera2/portability/CameraStateHolder.java
|
90e75d1f90b85e11f6905966ea28d59916935c68 |
05-Oct-2014 |
Alan Newberger <alann@google.com> |
Check isZoomSupported before any zoom ratio calculations. Per API doc, isZoomeSupported should be checked before calling getZoomRatios or getMaxZoom. Moving zoom calculation into isZoomSupported check fixed crash in front camera with no zoom support, where a HAL/fwk returns a null list of zoom ratios. Bug: 17863266 Change-Id: I80b5f7a431e7bbe4d50e5d062628e38eda3fd0a6
x/camera2/portability/AndroidCameraCapabilities.java
|
698997b9ef47f215350f03c0289f291846cd3604 |
03-Oct-2014 |
Puneet Lall <puneetl@google.com> |
Add null check for exif thumbnail size Bug:17790747 Change-Id: I758bb217d0a76093d8e4bb1832cc7ab6907235ee
x/camera2/portability/AndroidCamera2Settings.java
|
1c1d1afb5701b78fcdf09969bba1c20eb591bccf |
30-Sep-2014 |
Alan Newberger <alann@google.com> |
Remove default thumbnail size setting in portability lib Settings thumbnail size to (0,0) suppresses thumbnail generation. The Camera app did not set to (0,0) explicitly, but when porting Camera.Parameters to CameraSettings this crept in. Causes issue on Nakasi and no reason to suppress thumbnails in general. Bug: 17700333 Change-Id: I486e560bc9aaf05daf019a3aad8de78ee306f21b
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraSettings.java
|
70a82d9d9a59c2a0b9241fdb0b8b0f1a61d0d5a0 |
24-Sep-2014 |
Senpo Hu <senpo@google.com> |
Add null check in AndroidCameraSettings. Check Camera.Parameters is null in AndroidCameraSettings ctor. This should also fix the NPE bug b/17620440. Bug: 17555612 Change-Id: Iee5f41b5d47eced3155e31c09f267eaa61c7de39
x/camera2/portability/AndroidCameraSettings.java
|
2eed7ab0e5d81c0025737c6ce9931f3d8b57b418 |
23-Sep-2014 |
Alan Newberger <alann@google.com> |
Merge "Specify Locale.US for stringification of enums" into lmp-dev
|
1bd78b36e275371eff1ec1d07c9c1f93f63f5c39 |
23-Sep-2014 |
Alan Newberger <alann@google.com> |
Specify Locale.US for stringification of enums For machine-readable enum translation, use Locale.US which will preserve english enum casing and is recommended in Locale docs. Bug: 17557568 Change-Id: I40274bccdb593889c8ded003a5fb731f45892d7b
x/camera2/portability/CameraCapabilities.java
|
bad9708bd92213e65bfc9761ce3e69f8a59e1483 |
23-Sep-2014 |
Alan Newberger <alann@google.com> |
Add error log to API1 CameraAgent Right when an error occurs, log it before doing further error handling. Bug: 17555612 Change-Id: I23c828f3ff0749643e490a431b71318004c6d692
x/camera2/portability/AndroidCameraAgentImpl.java
|
06b23bb5cbddfed587a6f0d75636734862b49a1e |
10-Sep-2014 |
Eino-Ville Talvala <etalvala@google.com> |
Merge "Camera2: Update for camera2 API changes" into lmp-dev
|
9f57c438ea0c7f02d0e86ade6a5e36c8993dd9fc |
09-Sep-2014 |
Rachad Alao <rachad@google.com> |
Merge "portability: Fix a bug where long AF callbacks caused ISE timeouts" into lmp-dev
|
25ee73acd2dbd6f60deef5306994fbf3a7997936 |
09-Sep-2014 |
Senpo Hu <senpo@google.com> |
Let CameraProxy support setJpegOrientation. When device is locked in portrait, JPEG orientation and preview orientation might be different. Bug: 17360176 Change-Id: I16ee937c4d930e5f02a3e703dffd3bdd63e0e367
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraActions.java
x/camera2/portability/CameraAgent.java
|
6a9babad6eb8ac3e79a5e036d878ed7408e79f26 |
09-Sep-2014 |
Igor Murashkin <iam@google.com> |
portability: Fix a bug where long AF callbacks caused ISE timeouts Bug: 17403384 Change-Id: I2f452f79ffb4c0c3327ea5bf7db3f9d26e98ff51
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraActions.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraStateHolder.java
|
ca507f86d3d5e4f16ebd666a2b42664e5178eceb |
09-Sep-2014 |
Alan Newberger <alann@google.com> |
Merge "Log null returns from Camera.getParameters" into lmp-dev
|
171362f843c1e7623f29db1781176f85b1f74815 |
09-Sep-2014 |
Eino-Ville Talvala <etalvala@google.com> |
Camera2: Update for camera2 API changes Add frame number to CaptureCallback#onCaptureStarted Bug: 17421092 Change-Id: I8ffc0c7c22a5f3a25e923aaf1ecf166c7a264508
x/camera2/portability/AndroidCamera2AgentImpl.java
|
d5205c2648ba1213f28a232379d10b07a7ee9bdc |
06-Sep-2014 |
Igor Murashkin <iam@google.com> |
Merge "portability: Fix incorrect comparison between int and Integer" into lmp-dev
|
bb013aa3e197e881756be5ad13e6ad30bfb4aeff |
04-Sep-2014 |
Eino-Ville Talvala <etalvala@google.com> |
Camera2: Renames for API consistency - Listener -> Callback - add/remove callbacks -> register/unregister Bug: 17389922 Change-Id: I6e162ae18447b5a4fcabc17d17b1341f341fc47d
x/camera2/portability/AndroidCamera2AgentImpl.java
|
dc05ed7a8443af7c1a7b1bb39519d09d79284e42 |
05-Sep-2014 |
Igor Murashkin <iam@google.com> |
portability: Fix incorrect comparison between int and Integer Bug: 17405119 Change-Id: Ic4828b5ddee2b11fa9886506e48c640a4c5ad3ef
x/camera2/portability/AndroidCamera2Settings.java
|
3b7da912d573f358fd217f6d9b569cca648efe02 |
04-Sep-2014 |
Ruben Brunk <rubenbrunk@google.com> |
ex: Avoid exception if HDR_SCENE_MODE name changes. Bug: 17353543 Change-Id: I31448687a69afc66e93f4360e8a3186ff8ad6235
x/camera2/portability/LegacyVendorTags.java
|
9fb7e16061ae2f3d3b059952706a1e1a1b439d6b |
30-Aug-2014 |
Ruben Brunk <rubenbrunk@google.com> |
Merge "camera2: Add HDR vendor tag for legacy mode." into lmp-dev
|
58774cf3543e06c4b51a54bccd603a2cbcd7a816 |
30-Aug-2014 |
Igor Murashkin <iam@google.com> |
Merge "camera2-portability: Touch-to-focus accounting for effective crop" into lmp-dev
|
2569329d6cff25bfe9941df539df14a0aeb4c4f4 |
29-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Touch-to-focus accounting for effective crop This fixes the calculation of API 2 focus and metering rectangles to account for the effective crop region (after the framework has performed automatic cropping to match the requested output aspect ratio). It also guards against and prints warnings when changing the resolution after having configured the session and surfaces; before, this was merely a silent no-op. Bug: 17187095 Change-Id: I3243bea24d6936d1bba5d556b3846d172ad0defe
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCamera2Settings.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/AndroidCameraSettings.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraSettings.java
|
54c8f898815a233ba6478630940432ddafdb4314 |
28-Aug-2014 |
Ruben Brunk <rubenbrunk@google.com> |
camera2: Add HDR vendor tag for legacy mode. Bug: 17072609 Change-Id: Iebb97d12fc62986ad389460c253cfc504a68ad7f
x/camera2/portability/AndroidCamera2Capabilities.java
x/camera2/portability/AndroidCamera2Settings.java
x/camera2/portability/CameraCapabilities.java
x/camera2/portability/LegacyVendorTags.java
|
f73c6cf2f04451ba4517abccd36a114667c69ae3 |
28-Aug-2014 |
Andy Huibers <andyhuibers@google.com> |
Add ability to reset focus and metering regions using API1. Bug: 17286539 Change-Id: Id75bfc594f9fb6a08bb187d053ae99a85e7d9d42
x/camera2/portability/AndroidCameraAgentImpl.java
|
415cf3ee18640ad0799e5c9a738afd1d19c14883 |
28-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Allow disabling the shutter sound on API 2 Because the camera2 API doesn't play shutter sounds at all, the portability layer does it directly. Consequently, it is trivial to skip that step. Bug: 17303595 Change-Id: I303696906902c2d8af58baedf27f6e20f34772f1
x/camera2/portability/AndroidCamera2AgentImpl.java
|
47a01cf05c1e22e76bdf3182461dcfeb71b960bb |
27-Aug-2014 |
Sol Boucher <solb@google.com> |
Merge "camera2-portability: Fix and document obscure state machine bug" into lmp-dev
|
7d71703202c2fba36653293eba2772745db46c00 |
27-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Fix camera2 takePicture AE regression This fixes a regression introduced by 984a086412a94ebea1bd9af8cd8bbf4afab38034 that resulted in captures sometimes hanging until the AE state changed. It includes explanatory comments to guard against this sort of error in the future. Bug: 17302778 Change-Id: I668f5a5470a0ae7712f62c7574d18360d47e410b
x/camera2/portability/AndroidCamera2AgentImpl.java
|
772fcce3e51a9c7d33df6a9c278a908ac6902880 |
27-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Fix and document obscure state machine bug The numeric state codes defined by the camera2 implementation were incompatible with the StateHolder class's wait interface; thus, blocking operations didn't always behave as expected. Bug: 17300466 Change-Id: I54f462d5de876c9dcf99b2a4c7ae79879cc0eca2
x/camera2/portability/AndroidCamera2AgentImpl.java
|
7c8d6957b96c75ce11f7373f4ab2451ee4666360 |
27-Aug-2014 |
Sol Boucher <solb@google.com> |
Merge "camera2-portability: Fix zoom occasionally not working" into lmp-dev
|
80cda8dae801f09c2ce928d0f3feb8a569939fc2 |
27-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Fix zoom occasionally not working Cache the last valid CameraSettings object The camera2 implementation of CameraProxy#getSettings() now returns the most recent valid CameraSettings object that was provided to it (or the template if no valid cached instance is available). This more closely mimics the camera1 implementation's behavior, and resolves issues where the app relies on finding recent settings there in corner cases. Bug: 17016658 Change-Id: I057feec3f857428dd210300a05f22cafa9f5ba34
x/camera2/portability/AndroidCamera2AgentImpl.java
|
984a086412a94ebea1bd9af8cd8bbf4afab38034 |
25-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Optimize out some camera2 AE precaptures If it's already converged and the flash isn't being forced on, there's no need to force the precapture routine, which would delay our capture significantly. Also use onCaptureProgressed() instead of onCaptureCompleted() when possible. Change-Id: I0bb7956498b0070382cd5b39b7ccdc0cc0765913
x/camera2/portability/AndroidCamera2AgentImpl.java
|
f27e71f979e803a3ac00f4057eb909886d957a3e |
23-Aug-2014 |
Sol Boucher <solb@google.com> |
Merge "camera2-portability: Switch to ratio-based zoom interfaces" into lmp-dev
|
336f88ed91a43eb4d1d67fb805171433676279e3 |
23-Aug-2014 |
Sol Boucher <solb@google.com> |
Merge "camera2-api: Tag camera2 JPEGs with any provided location" into lmp-dev
|
d6a52ce7b43f15fc931038133b4fea821e9f3b9f |
23-Aug-2014 |
Sol Boucher <solb@google.com> |
Merge "camera2-api: Work around invalid camera2 API focus modes" into lmp-dev
|
d0185cc2f5786571565f01b26e1143ce0099bdc8 |
23-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-api: Tag camera2 JPEGs with any provided location Bug: 17027000 Change-Id: I311028b9df4d74268fb415c163f7e6a2d2505dff
x/camera2/portability/AndroidCamera2Settings.java
x/camera2/portability/CameraSettings.java
|
f2b5a976bb1c30f83682a996ce9289a973c88784 |
23-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-api: Work around invalid camera2 API focus modes The validation routine now changes the focus mode to FIXED if the requested one is unsupported. This is to work around devices whose templates erroneously specify unsupported focus modes. Bug: 17177436 Change-Id: If9b679510e0c232453dd0a77dbdd2e0ec713ac12
x/camera2/portability/CameraCapabilities.java
|
aa907a3b6637b4f95dbf572d0cf790a70ba3aeb0 |
22-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Play shutter sound for camera2 captures Bug: 17109582 Change-Id: I73321cdbb2972b2d1e9bc2de93192fbb506347e7
x/camera2/portability/AndroidCamera2AgentImpl.java
|
9d8668449376fa47bc6528c7a61b04d6a0f691b3 |
20-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Switch to ratio-based zoom interfaces This eliminates the deprecated index-based CameraSettings zoom methods in favor of floating-point ratio based versions, and includes the plumbing to make those work for both the camera1 and camera2 underlying framework APIs. Bug: 17016658 Change-Id: I0567a53cd57bfa6d53604e3c5457a39ef49e3cb4
x/camera2/portability/AndroidCamera2Capabilities.java
x/camera2/portability/AndroidCamera2Settings.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/AndroidCameraCapabilities.java
x/camera2/portability/AndroidCameraSettings.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraCapabilities.java
x/camera2/portability/CameraSettings.java
|
e4094bd3b85ce20e81a1677319192ed2274d0525 |
20-Aug-2014 |
Alan Newberger <alann@google.com> |
Log null returns from Camera.getParameters There is some evidence that we may be getting null parameters on N10. Specfically, AndroidCameraProxyImpl.getParameters is returning null, and from analysis the only two options are that the API1 returns null, or our synchronous waiting for threads is compromised and we are returning without error too fast. The latter would presumably show up on many devices, but we are only seeing an issue on N10, so I suspect an API/HAL issue. Adding logging and a thrown exception, and cleaning up GET_PARAMETERS message creation slightly to make more consistent with other invocations. Bug: 17109801 Change-Id: I1705345d03ed16ef22b170a11fcaf0c6fb2a2c4d
x/camera2/portability/AndroidCameraAgentImpl.java
|
489e29ecbfd2ffe10ebd199204f3ee242b1bd1f8 |
18-Aug-2014 |
Alan Newberger <alann@google.com> |
Merge "Add exception logging to CameraDeviceInfo retrieval failure" into lmp-dev
|
eb07f0c4c693566f6f258e84426f518e90513c11 |
16-Aug-2014 |
Alan Newberger <alann@google.com> |
Add exception logging to CameraDeviceInfo retrieval failure camera1 CameraAgent returns null CameraDeviceInfo if the underlying camera device is broken. see b/16982203, this caused issues but was invisible in logs. Adding logging to document true root cause of any device info failures stemming from an underlying failure. Bug: 16982203 Change-Id: I8a48714e1ddbde8b8eac35f149136d19efce5fb8
x/camera2/portability/AndroidCameraAgentImpl.java
|
8447d2276441983d88e8315ffa79a16a90b3d4bb |
15-Aug-2014 |
Alan Newberger <alann@google.com> |
Consolidate parameter caching in camera1 portability agent The existing implementation of the AndroidCameraAgentImpl uses a 'mParamsToSet' upon which is projects requested settings changes in applySettings(). But, this mParamsToSet is initialized only upon camera open! So 'hidden' parameters like video-size are stuck in the value upon open. Instead, they should be current to the last call to refreshSettings. To simplify, removed this and another copy of parameters (mParameters), introduced one cache class, and use it throughout the agent. Tested and app seems to work OK in general with the change, and specifically confirmed that video size parameters are not reverted after start, as was observed before the change. Bug: 16991558 Change-Id: I8f2749b8ab2ccc2cb858b8cd844330c5a482f79c
x/camera2/portability/AndroidCameraAgentImpl.java
|
d0e873ab838702c69ddbe4ca9523949348f3ea47 |
16-Aug-2014 |
Alan Newberger <alann@google.com> |
Merge "Consolidate parameter caching in camera1 portability agent" into lmp-dev
|
182acbc3f78ea6c6edd6bd5d67c62188b4079243 |
16-Aug-2014 |
Sol Boucher <solb@google.com> |
Merge "camera2-portability: Provide preview transformation matrix" into lmp-dev
|
f9feab9a826e5b33d811e757bdfdbfa0738fcfa5 |
12-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Provide preview transformation matrix Applying this transform to the Surface on which the stream is displayed results in a correctly rotated image. For API 1, the rotation is actually performed by the Camera class and the returned matrix is an identity matrix; however, for API 2, the transformation is responsible for proper orientation. Bug: 16875535 Change-Id: I044ffbd1095bd1a9792c899b792129cc94c7c916
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/CameraDeviceInfo.java
|
b2df32dd892ae8076714b7ebd33c715378c4c730 |
16-Aug-2014 |
Sol Boucher <solb@google.com> |
Merge "camera2-portability: Make factory offer choice of backing API" into lmp-dev
|
50f5b019ba3f333a09a1beb9667fd7290082dc31 |
05-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Make factory offer choice of backing API This allows apps using the library to decide whether to jump to the new API. Users of the library may choose to use the Camera class, the camera2 API, or have the choice made automatically based on the device's API level. The choice may also be globally overridden by means of a system property. Bug: 16875535 Change-Id: I92e4be96fbd04057be61ceb8a0c58935770022f6
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraAgentFactory.java
x/camera2/portability/util/SystemProperties.java
|
3d6e5018ff8d64ac1815477fe0172f62f91727a2 |
15-Aug-2014 |
Sol Boucher <solb@google.com> |
Merge "camera2-portability: Improve capability conversions' null-safety" into lmp-dev
|
bc9c0e2cb071b085ecc5646751fb59f5145d51b1 |
13-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Improve capability conversions' null-safety This makes it harder for unexpected nulls in CaptureRequest templates to cause exceptions while unboxing Integer wrappers. Such crashes were observed on some devices while running on the legacy layer, especially with scene modes. Change-Id: I0cae95534f138e97f2c589d15e81f77b4f2141f7
x/camera2/portability/AndroidCamera2Settings.java
|
c6344faeff899655abd60b3bf4cd638e58bcc3d7 |
13-Aug-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Report correct sizes for preview and capture This reports JPEG capture sizes instead of YUV ones, and ensures that preview sizes match TextureView, not SurfaceView. Change-Id: I2963ee1741156cc2a29e2e65308bd14dd145e4c8
x/camera2/portability/AndroidCamera2Capabilities.java
|
47497bee8a3550af79f9a32c9362d7ee78364a71 |
08-Aug-2014 |
Alan Newberger <alann@google.com> |
Merge "Fix missing zoom fields in copy constructor of CameraCapabilities" into lmp-dev
|
4ecb0ad6d1d5dc6b12f998bf694877df06a77890 |
08-Aug-2014 |
Alan Newberger <alann@google.com> |
Fix missing zoom fields in copy constructor of CameraCapabilities These fields are deprecated but while we have them, should copy them in the constructor. This contributes to a zoom bug in the app, since ratios and indices are dropped upon copy. Bug: 16527845 Change-Id: I008384faa77e0c13a2790e095fa311909c1e9b44
x/camera2/portability/CameraCapabilities.java
|
de48004068f8c16f9a56c60b0ed2485a67687b4b |
23-Jul-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Support photo capture using camera2 API This implements JPEG capture, including an autoexposure precapture sequence. There are many changes to AndroidCamera2Capabilities and AndroidCamera2Settings to support the representation of modes (e.g. flash modes) whose flags do not map trivially between the API implementations. Part of this work is the conversion of AndroidCamera2AgentImpl to use and store a Camera2RequestSettingsSet instead of a bare API 2 CaptureRequest.Builder. Change-Id: I03f9f98c954a7b0c140ac8d80161878c92ef65d2
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCamera2Capabilities.java
x/camera2/portability/AndroidCamera2Settings.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/AndroidCameraSettings.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraCapabilities.java
x/camera2/portability/CameraDeviceInfo.java
x/camera2/portability/CameraSettings.java
|
15773a64b42023e31e2aade23ae44273862a9c04 |
31-Jul-2014 |
Alan Newberger <alann@google.com> |
add TORCH support to camera1 portability library In the move to the portability library, TORCH mode got dropped. Bug: 16680156 Change-Id: I3878c2399246bdb5cc80311c49533971c0c4c3d2
x/camera2/portability/AndroidCameraCapabilities.java
|
a97b7d1192e246a5f738991adca37cce282e1382 |
09-Jul-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Add focus locks and touch-to-focus for API 2 This implements focus locks very simply using only camera2 API requests: the lens is locked on autoFocus() and unlocked on cancelAutoFocus(), as with the existing legacy API--backed implementation. Both passive and active focus modes ares supported, with and without positional focusing. Change-Id: I26b1866539807fd3d64189923871443056a166af
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCamera2Capabilities.java
|
7e0d39bf7b6e0f0df606e3f6c15f673f70fed3f7 |
16-Jul-2014 |
Sol Boucher <solb@google.com> |
DO NOT MERGE: Fix oversight while refactoring CameraStateHolder The base class still (redundantly) defined states, and AndroidCameraStateMachine was overriding methods with a verbatim copy of their implementations. Change-Id: I0e6361417edb159f91b89409058ee9a73b1101d9 (cherry-picked from commit dbc457417c581c21b5d49539325b1b152dc1baba)
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraStateHolder.java
|
a0842b40441db5332a5290f941021636b1182761 |
09-Jun-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Add support for previews using the camera2 API At the moment, only SurfaceTextures (and not SurfaceViews/SurfaceHolders) are supported. The tests still only cover Stringifier and IntegralStringifier. Change-Id: Ie643c58f8383cd3b9f59c16e0b79239df0ca068d
x/camera2/portability/AndroidCamera2AgentImpl.java
x/camera2/portability/AndroidCamera2Capabilities.java
x/camera2/portability/AndroidCamera2Settings.java
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/AndroidCameraCapabilities.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraAgentFactory.java
x/camera2/portability/CameraCapabilities.java
x/camera2/portability/CameraCapabilitiesFactory.java
x/camera2/portability/CameraSettings.java
x/camera2/portability/CameraStateHolder.java
x/camera2/portability/DispatchThread.java
x/camera2/portability/Size.java
|
b30d2c670f1262f0d60181e40dad33f2151fee4a |
19-Jun-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Remove Camera.CameraInfo accessor This removes the CameraDevice#getCameraInfos() call that provided direct access to this API 1 type, replacing it with another accessor returning individual instances of the new wrapper type CameraDevice.BasicCharacteristics . It also gives CameraProxy a method for getting instances of this wrapper. Change-Id: I0c72ffe71817b8acf1cc5a01f1565ec4e0e97e7d
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraDeviceInfo.java
|
01e7c02174ef268b6d6daaa5a5bb4f752d55964c |
18-Jun-2014 |
Angus Kong <shkong@google.com> |
Add various supports in settings and capabilities. 1. View angles in capabilities. 2. Preview formats setting. 3. Photo formats setting. 4. Recording hint for video recording preview setting. 5. JPEG thumbnail size setting. Change-Id: Ib8e33cf838859ae76a662fffcc496250ad85c203
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/AndroidCameraCapabilities.java
x/camera2/portability/AndroidCameraSettings.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraCapabilities.java
x/camera2/portability/CameraSettings.java
|
d61058f788eae0805bb20c4f68874f0f6caef423 |
18-Jun-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Fix the rest of the 'Andorid' typo This resolves build breakage. Change-Id: I3cab88fdee5f86d183b1307dac714466336fc476
x/camera2/portability/CameraAgentFactory.java
|
4f425ba476d62b4be7078f2084af37cf306b31c6 |
18-Jun-2014 |
Sol Boucher <solb@google.com> |
camera2-portability: Rename CameraManager to CameraAgent This resolves a naming clash with a class in the new camera2 framework API. Change-Id: Id53aa3e0bbe9e9edaa82b0aec695fd835c3d0ef9
x/camera2/portability/AndroidCameraAgentImpl.java
x/camera2/portability/AndroidCameraManagerImpl.java
x/camera2/portability/CameraAgent.java
x/camera2/portability/CameraAgentFactory.java
x/camera2/portability/CameraManager.java
x/camera2/portability/CameraManagerFactory.java
x/camera2/portability/CameraStateHolder.java
|
f07afbbde040b9578bc7f188016c3960e8616ab0 |
13-Jun-2014 |
Angus Kong <shkong@google.com> |
Don't pass empty list of areas. Some devices won't work well if we pass in an empty list of focusing or metering areas. Change-Id: Iff6bfd37a7d551b12c43e88cf8d4934472837257
x/camera2/portability/AndroidCameraManagerImpl.java
|
8097973089420749dcd1ab4974a629c2466b31cc |
11-Jun-2014 |
Angus Kong <shkong@google.com> |
Refactor out Camera.Parameters. Change-Id: Ibc1ddac509381530e887b7491069e6367e9a6088
x/camera2/portability/AndroidCameraCapabilities.java
x/camera2/portability/AndroidCameraManagerImpl.java
x/camera2/portability/AndroidCameraSettings.java
x/camera2/portability/CameraActions.java
x/camera2/portability/CameraCapabilities.java
x/camera2/portability/CameraManager.java
x/camera2/portability/CameraSettings.java
x/camera2/portability/Size.java
|
cef46862d6937bc98bf1a6b087c5daa22b5239f3 |
09-Jun-2014 |
Sol Boucher <solb@google.com> |
Refactor CameraManager hierarchy to support new implementations This relocates several components of the implementation class AndroidCameraManagerImpl to higher levels in the inheritence hierarchy, where they can be reused by other implementations of the CameraManager interface: - AndroidCameraManager.DispatchThread is moved into its own file - The core (history-tracking) pieces of CameraManager.CameraHandler are moved into their own HistoryHandler class, which the former is made to inherit - The constants defined in AndroidCameraManagerImpl for use in its nested CameraHandler class are moved into a separate class called CameraActions - AndroidCameraManagerImpl.CameraStateHolder is moved into its own file - Those CallbackForward classes that aren't tied to Android's Camera1 API are moved directly into the CameraManager interface Change-Id: I5f3e1eb72039a0018ce2277e3ec6289bfa4ccec3
x/camera2/portability/AndroidCameraManagerImpl.java
x/camera2/portability/CameraActions.java
x/camera2/portability/CameraManager.java
x/camera2/portability/CameraStateHolder.java
x/camera2/portability/DispatchThread.java
x/camera2/portability/HistoryHandler.java
|
da52dbdc5ffc76c1c875229086e91475eb150090 |
24-May-2014 |
Erin Dahlgren <edahlgren@google.com> |
Timeout on wait lock and throw exception to prevent ANR. Change-Id: I5b0d2b8c0384d32ed0d870e5db6003991524fc38
x/camera2/portability/AndroidCameraManagerImpl.java
|
7e6c76ef7faf26aa1060b4abc1c65934b4e45338 |
13-May-2014 |
Angus Kong <shkong@google.com> |
Handle error getting camera info. bug:13877028 Change-Id: Iff0353738de3290244092076b2f955f0d7d57408
x/camera2/portability/AndroidCameraManagerImpl.java
x/camera2/portability/CameraDeviceInfo.java
x/camera2/portability/CameraManager.java
|
742beb4e81cfcdfa9d4f7d3252be7be797a1e462 |
12-May-2014 |
Sascha Haeberling <haeberling@google.com> |
Don't use stale parameters for capabilities. Bug: 14823111 Change-Id: I524de9a6dd774c3aa8b6c47092657d66447565bc
x/camera2/portability/AndroidCameraManagerImpl.java
|
c36e3c983c232dc45ed31f3d8e98d8cdd7ac14ba |
23-Apr-2014 |
Angus Kong <shkong@google.com> |
First Step: CameraCapabilities intead of Parameter To get rid of Camera.Parameters, we need to provide our own interfaces. Camera.Parameters actually consists of 2 parts: capabilities and settings. We'll provide two interfaces and will just use Camera.Parameters inside of CameraManager implementations. Change-Id: I53922b6d740835412d74365374a6a0382129564e
x/camera2/portability/AndroidCameraCapabilities.java
x/camera2/portability/AndroidCameraManagerImpl.java
x/camera2/portability/CameraCapabilities.java
x/camera2/portability/CameraCapabilitiesFactory.java
x/camera2/portability/CameraManager.java
|
60520c4df78e595964605cf8acfa21bbafaeba84 |
01-May-2014 |
Angus Kong <shkong@google.com> |
Cancel onResumeTask when the app is paused. Also change the camera closing conditions to force close all camera before killing the handler thread. bug:14190951 bug:14441425 Change-Id: Ic752b0678530b34eb3710bd7796cb17d15452013
x/camera2/portability/AndroidCameraManagerImpl.java
x/camera2/portability/CameraManager.java
|
b00b7a67213ee6868eb792b2a63ba0dca888a01f |
25-Apr-2014 |
Angus Kong <shkong@google.com> |
Add history info for camera open failure log. bug:14365703 Change-Id: I4b2259e12121cac5b8165f5c5dbacf9cb3a936a6
x/camera2/portability/AndroidCameraManagerImpl.java
x/camera2/portability/CameraManager.java
|
d3865a20b022f6d54fe7ac052768a7ff0710017f |
26-Apr-2014 |
Doris Liu <tianliu@google.com> |
Bring back video snapshot Bug: 14220490 Change-Id: Ibf20d169aae9de4eb9c1e2151d9c7335bcf7b3a3
x/camera2/portability/AndroidCameraManagerImpl.java
|
bdaaaf5f0257168590fa8965e4d59b054636e6df |
21-Apr-2014 |
Angus Kong <shkong@google.com> |
Create cameradevice package for camera management. Change-Id: I73c69a70736b0b0eb0ef069a7876cf75fee91262
x/camera2/portability/AndroidCameraManagerImpl.java
x/camera2/portability/CameraManager.java
x/camera2/portability/CameraManagerFactory.java
|
f7a80d935f2e40383237ad4c163b85047f95dc9c |
09-Apr-2014 |
Alan Newberger <alann@google.com> |
Add logging override helper This CL removes compile-time log suppression with a runtim override. With a runtime override we can custom configure logging with a single level, not quite as flexible as a boolean per level but should suit our needs. Compile-time log pruning could be done with proguard if desired. Bug: 13737123 Change-Id: I8bdcaca44b4dc5c7eab8ef2f74e5181bcacd2727
x/camera2/portability/debug/Log.java
x/camera2/portability/debug/LogHelper.java
|
b52fe84c71ddcf1313c4112393bb4936442d9f13 |
08-Apr-2014 |
Alan Newberger <alann@google.com> |
Replace isDebugging compiletime logging override with runtime property This CL accomplishes the same goal as the compile-time isDebuggable, with a runtime property check. This is useful so that we opt in to logging everything at a given level with one setprop line. Note that either with this new runtime property or with isDebuggable, the Log proxy wouldn't log if a particular Configuration value is false, since that level is instead routed to SILENT_LOGGER. Bug: 13737123 Change-Id: I78ce629620f420a08a2cc013865847674941fb9b
x/camera2/portability/debug/Log.java
|
102540727e51003c352e82349c339929a0c4be7e |
29-Mar-2014 |
Sascha Haeberling <haeberling@google.com> |
If debug is on, log everything. Change-Id: I706874c9ea1b03c2fd9f987cda9581f72883c914
x/camera2/portability/debug/Log.java
|
b35ea0d2d494ba7668b0183dfc906cde0708bc55 |
12-Mar-2014 |
Angus Kong <shkong@google.com> |
Use debug.Log instead of android.util.Log. see http://ag/438423, merge conflicts solved. 1. Change to use com.android.camera.debug.Log instead of android.util.Log. 2. Add DebugCameraProxy to support more detailed debug info. 3. Add CameraErrorCallback in CameraManager. 4. Support posting to a specific handler for CameraErrorCallback. 5. Trim down some TAGs to match the framework tag length limit. 6. Remove some unused codes in CameraSettings. bug:13324870 Change-Id: I8c20a8a0d11cfd50b6e199b03cbc88d3c4ad2ceb Conflicts: src/com/android/camera/data/LocalMediaData.java src/com/android/camera/data/RotationTask.java src/com/android/camera/widget/FilmstripView.java
x/camera2/portability/debug/Log.java
|