History log of /frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
de62d84eb9dbcd43c4db3100a3cd80209b04cd2f 23-Mar-2017 Emilian Peev <epeev@google.com> Camera: Initial support for vendor tag caches

Vendor tag cache will be used alternatively to the regular
Vendor tag descriptor. The caches can support multiple vendor
tag providers at the same time. The native metadata along with
the requests/results/characteristics will store vendor specific
information that will be used to indentify the respective
descriptor.

Bug: 34275821
Test: Complete Camera/Camera2 CTS tests
Change-Id: I50b7cf9aa5575944fde7673a1728869690b2ce0d
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
08e6c34cf72acbffd560fab21dc6ecf351aaf61b 17-Feb-2017 Andreas Gampe <agampe@google.com> Camera: Make CameraMetadataNative compile-time initializable

Ensure that all static initializer code can be executed in the
compiler. Move native field caching into the native method
registration function.

Saves up to 10ms on N6P zygote initialization.

Bug: 34956610
Test: m
Test: Device boots (N6P)
Test: Can take pictures and videos (N6P)
Change-Id: I481dfd3aa8dc3cc5a5c31eedad31390d8afda897
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
d00847992067eab6d871a0110af01c0d7a788b8e 31-Jan-2017 Emilian Peev <epeev@google.com> Camera2: Check for valid GPS timestamp before usage

CaptureResult.JPEG_GPS_TIMESTAMP' queries can
return null Long objects. The conversion to
seconds should happen only in cases where we have
non-null objects.

BUG: 34835263
Change-Id: I1251fad55b2a671928839725123adedfb12fe53a
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
8f240961cc4f57bee94373de0c8da39f4662c4ae 26-Jan-2017 Emilian Peev <epeev@google.com> Camera2: Correct EXIF GPS timestamp

GPS 'Location' expects timestamps in milliseconds
however the camera metadata uses seconds for it.
An additional conversion is needed to take care
of this mismatch.

BUG: 32593275
Change-Id: I636060aac2177ae9818af32d677292f1eb76d97e
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
5d2d7788f1759b0f3d2c057af0b3ea61b0354fee 18-Dec-2015 Eino-Ville Talvala <etalvala@google.com> Camera2: Switch to auto-gen C++ binder interfaces

- Move camera AIDL files to frameworks/av
- Update makefiles to point to new AIDL locations
- Adjust camera2 implementation to match modifications to AIDL needed
for native AIDL auto-generation
- Move Surface.aidl to frameworks/native to allow use in
native AIDL. Use android::view::Surface in Surface JNI to
serialize Surface objects to ensure parceling compatibility.
- Adjust service binder tests to new interface

Bug: 25091611
Change-Id: I85b817374b34a4540fa145328dbe4bbf7f746baf
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
c620eb7e864e5505f5a6f867223fa8e525669d0b 30-Jul-2015 Ruben Brunk <rubenbrunk@google.com> Make vendor keys visible in Camera2 java APIs.

- Add vendor keys to getKeys() calls for CameraCharacteristics,
CaptureRequest, and CaptureResult.
- Vendors can specify whether custom keys show up by listing
visible keys in the REQUEST_AVAILABLE_RESULT_KEYS field.
- Vendor key types are always treated as a primitive (or Rational)
array type corresponding to one of the valid types for
a camera metadata entry.

Bug: 22067625
Change-Id: I6e7dd3db7a8bf533c2ec15ff69ca38824134e971
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
0819c75680c81a4e9c8a1ec518ac62cceccf3f56 17-Jun-2015 Eino-Ville Talvala <etalvala@google.com> Camera2: Remove HIGH_RESOLUTION level and modify FULL requirements

- Reword requirements for FULL level
- Remove HIGH_RESOLUTION level
- Add StreamConfigurationMap#getHighResolutionOutputSizes
- Clean up StreamConfigurationMap implementation
- Add 5-argument HashCodeHelper

Bug: 20945581
Change-Id: I75ad4b23e902192c96ed501e10c7d55fc0ad72a6
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
a78791f22af6c6985d186494737468bb19b69540 01-Jun-2015 Eino-Ville Talvala <etalvala@google.com> Camera2: Remove isLoggable

Change-Id: I83b2c8321ab6b48cf68ef7a4d724559ead1a1790
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
0a551f1487e00a598b20b1bc58a1ccd7226e7091 04-Apr-2015 Chien-Yu Chen <cychen@google.com> camera2: add reprocess format map

Add reprocess format map to StreamConfigurationMap and add support
for ImageFormat.PRIVATE.

Change-Id: I5dd8ecbbb63231574a9ca4bf27c374b4a220e0ed
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
456432ead7e262f72565d02ac46fd5e498844b92 06-Mar-2015 Eino-Ville Talvala <etalvala@google.com> Camera2: Wire depth formats into StreamConfigurationMap

Change-Id: I9046b60dca83d090efd9c74c98bfdfebdeae8751
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
d47699a47a77781c8883f31c48ffae88ba878cf8 28-Aug-2014 Yin-Chia Yeh <yinchiayeh@google.com> Camera2: Remove spurious warnings

It is valid if all compenents of a synthetic key are null.
Don't warn in that case.

Bug: 17300101

Change-Id: Ifacf2fb56d1272b33a2b1ae377a85c9011e22b24
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
0a1ef4dbf39aa3dfae1a91daf972ae3457ce27fe 01-Aug-2014 Igor Murashkin <iam@google.com> camera2: (LEGACY) Add face detection support and vstab modes

Also work-around CTS freezing forever in Camera#setPreviewTexture

* Set preview texture to null after unconfiguring (Camera#stopPreview)
* Remove all uses of recording hint

(Some devices disable face detection unconditionally when recording is not
using HDR mode; recording hints will be introduced after we add
capture intent support)

Change-Id: I2f0a80f1d580af214cb0f53abcbf33c7391790f1
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
8f8141e24f4d890b4281b8c558ecc60efe5831c4 19-Jul-2014 Yin-Chia Yeh <yinchiayeh@google.com> Merge "Camera2: add highSpeedVideoConfig wrapper and APIs" into lmp-dev
12da140082323d9aa048b3e928505a0a2adfdda7 15-Jul-2014 Yin-Chia Yeh <yinchiayeh@google.com> Camera2: add highSpeedVideoConfig wrapper and APIs

- Add wrapper class for highSpeedVideoConfiguration.
- Add APIs to query high speed video recording configurations in
StreamConfigurationMap
- Fix ColorSpaceTransform unit test in CameraMetadataTest
- Fix a bug in HashCodeHelper

Change-Id: I192e57f6ab5dfbba6d958571352f067a9eaec7b2
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
40001f5dac10c8b71af5ef051dc1a95d58bea743 17-Jul-2014 Ruben Brunk <rubenbrunk@google.com> camera2: Fix swapped Face detection commands.

Bug: 16343647
Change-Id: I06186b1d6a2ef5d73d2e22759e947156d43cab3f
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
d1f113d0f0ce5099f8efba40a88398f7945bb5e0 11-Jul-2014 Ruben Brunk <rubenbrunk@google.com> DO NOT MERGE: camera2: Performance potpourri.

Bug: 16208403
Bug: 15116722

Fixes many of the performance issues in the Camera2 API and
LEGACY mode CPU path, including:
- Only call getParameters/setParameters when the request has changed.
- Cache Request/Result objects.
- Cache object hashes for long-lived CameraMetadata, TypeReference,
and Key objects with frequently used hash methods.
- Switch to Command pattern instead of repeated if/equals calls.
in frequently hit CameraMetadata get/set methods.
- Move string construction for logging behind flags to avoid extra
StringBuilder calls in frequently acquired lock methods.
- Cache results from frequently used JNI calls in object Builders.

Change-Id: I77bc4a023d4fe8bc46efcf771ff18ee268dcb9a9
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
52842e7a6f0e922185db04ae8b91c776a234acf1 05-Jun-2014 Ruben Brunk <rubenbrunk@google.com> camera2: Add BlackLevelPattern class.

Bug: 15448889

- Adds BlackLevelPattern class and marshaller.
- Updates BlackLevelPattern tag to use this class.

Change-Id: I5d3393f4a1695664bc5315eb592fb0a4e154d22e
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
5743868e15c88d2886915163652a1571a218bf39 30-May-2014 Igor Murashkin <iam@google.com> camera2: Change android.lens.focusRange to Pair<Float,Float>

Since the focus range is defined in diopters (1/distance), it just so
happens that in a range [near, far] near >= far which is against the
android.util.Range contract.

Change it to pair instead.

Also adds a marshaler for Pairs since they didn't have one before
(and aren't parcelable).

Bug: 15335269
Change-Id: If2f3259aeec072438a1c18c1b9728a4c81e92a40
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
574936894d3044445a272b39f2d925af40ece5d8 28-May-2014 Ruben Brunk <rubenbrunk@google.com> camera2: Update native/managed key mappings.

Switches to using managed value classes for the following keys:
- android.sensor.info.sensitivityRange
- android.sensor.info.exposureTimeRange
- android.jpeg.gpsCoordinates
- android.jpeg.gpsTimestamp
- android.jpeg.gpsProcessingMethod
- android.statistics.lensShadingMap
- android.lens.info.shadingMapSize
Also fixes a minor bug in LensShadingMap

Bug: 14628001
Change-Id: Ia0f541242f529ab9ba3111db799306b198f2b40b
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
8490ace76fd350e53de9554c11fca715c5a37aaf 27-May-2014 Yin-Chia Yeh <yinchiayeh@google.com> Camera2: switch API interface to java classses

android.sensor.info.physicalSize: float[] -> SizeF
android.statistics.hotPixelMap: int[] -> Point[]
android.tonemap.curve[Red|Green|Blue]: float[] -> TonemapCurve

Bug: 14628001
Change-Id: I1e085f5e640a059852fcb504b6dd5f884039e653
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
78712a8bd7275542013ba099f33536eead0167fb 28-May-2014 Igor Murashkin <iam@google.com> camera2: Add new metadata keys, change types for existing range keys

Also adds the following keys:
* android.control.maxRegionsAe
* android.control.maxRegionsAwb
* android.control.maxRegionsAf
* android.request.maxNumOutputRaw
* android.request.maxNumOutputProc
* android.request.maxNumOutputProcStalling

Changes the following keys' type
generations:
* android.control.aeTargetFpsRange
* (Range<Integer>)
* android.control.aeAvailableTargetFpsRanges
* (Range<Integer>[])
* android.control.aeCompensationRange
* (Range<Integer>)
* android.lens.focusRange
* (Range<Float>)

Bug: 14628001
Change-Id: I141847dffc4b0d89cea37c19a54d6d5faf24a9bb
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
d6d65154e55612b489aae95b60f3145f3b81f3b4 20-May-2014 Igor Murashkin <iam@google.com> camera2: Refactor CameraMetadata.Key out into 3 key classes

Before:
* CameraMetadata.Key<T>

After:
* CameraCharacteristics.Key<T>
* CaptureResult.Key<T>
* CaptureRequest.Key<T>

CameraMetadata#get has been removed (each metadata subclass has
its own #get now) due to java generic limitations (in particular
a type bound <T1<T2> extends Key<T2>> is an illegal bound).

CameraMetadataNative gets a new #dumpToLog function to dump the native
metadata to logcat.

Bug: 15091017
Change-Id: Ic56c54c0d184e209e20de374dc8a6d79527c209f
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
feb50af361e4305a25758966b6b5df2738c00259 10-May-2014 Ruben Brunk <rubenbrunk@google.com> camera2: Add HAL1 compatibility shim skeleton.

This adds basic support for running the Camera2 API on a device running
a camera HAL version lower than CAMERA_MODULE_API_VERSION_2_0.

This CL includes support for:
- N-way preview output streams
- N-way jpeg output streams
- CameraDevice emulation at the binder interface
- Basic camera metadata querying in the CameraManager

Bug: 15117269
Bug: 15116722

Change-Id: I8322955034c91f34bb348d4b28c2b774dbef38f6
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
72f9f0a96e4476ef231d5001cb30521ad4ce5b1e 15-May-2014 Igor Murashkin <iam@google.com> camera2: Move parameters around to different packages

* Camera-specific params to android.hardware.camera2.params
* Remove android.hardware.camera2.Size
* Move Rational to android.util

Bug: 14628001
Change-Id: Ie7a82bf9f4a0d8c18e0dc3a1581123c0d95da3f0
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
9c595174ccaaf3d36315c4a100e47ee4369073f6 12-May-2014 Igor Murashkin <iam@google.com> camera2: Use StreamConfigurationMap for format/size/duration lookup

* Also @hide/@deprecate a bunch of other keys
* Move some classes into android.hardware.camera2.params

Bug: 14628001
Change-Id: I2db490a0849680a133a901403477a147b004fb28
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
3c40a046cf0ea7b6af01ec93e5276eccb3234bfe 23-Apr-2014 Igor Murashkin <iam@google.com> camera2: Update native<->managed camera metadata marshalers

* Improve existing marshalers:
- each managed/native type combination can be queried marshal support
- marshalers can recursively call other marshalers for nested types
- support marshaling/unmarshaling generic classes by using super type tokens

* Add new marshalers for:
- ColorSpaceTransform
- MeteringRectangle
- Parcelable
- Range<T>
- ReprocessFormatsMap
- RggbChannelVector
- SizeF
- StreamConfiguration
- StreamConfigurationDuration

Batteries included; so are unit tests.

Bug: 14628001
Change-Id: I38d3e646ccfb3953898cd6f750c33e4097328482
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
8d637b819b23d0fcca87a39d26d0350e062852f4 09-Apr-2014 Zhijun He <zhijunhe@google.com> Camera2: Fix the JPEG format issues

Also add unit test.

Bug: 13836016

Change-Id: I0af4bfe299f99c99e70faf5d3159eb0cbcc147eb
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
85c4388de1fea3d45783f07895c2b113c4cc1ba5 22-Feb-2014 Ruben Brunk <rubenbrunk@google.com> camera3: Pass vendor tags through binder.

Bug: 12134423

Change-Id: Icef3fe9e67160767bdb8244ac49c85b68b497123
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
2f1680be3d5963dc1026c8e5bcda491b77d71734 13-Nov-2013 Zhijun He <zhijunhe@google.com> Camera2: Fix metadata unit test failures

The get/set override for special cases broke the metadata unit test, add proper
handling to fix the test failures.

Also make the key equals check both names and types.

Bug: 11259962
Change-Id: I00ff53115e7043212035cc4306e0481f9d113747
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
844b3520cc31dbca40f282e5a0e3e6d442d4c686 17-Oct-2013 Zhijun He <zhijunhe@google.com> Camera2: filter bad faces

Filter bad face score and ids.

Bug: 11257538
Change-Id: I9beb042e8c0d2f08a3efcd2877deee036b80482f
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
58216c2650c9536f93467d6ab347ca3f7720dedd 15-Oct-2013 Zhijun He <zhijunhe@google.com> Camera2: return CaptureResult.STATISTICS_FACES

Changes included in this CL:

- remove the WAR for face detect mode null case.
- make the sanity check assert to warnings.
- make number of faces to be the minimal length of face metadata array length to
avoid out of bound access, since we relax the sanity check.

Bug: 11206459
Change-Id: Ifd9f7f79617039c1b3ad631f202b48076d775e09
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
615b75f3351065845f95f6a2339461813f530ae9 15-Oct-2013 Eino-Ville Talvala <etalvala@google.com> Camera2: Fix face rectangle coordinate mapping, and use Key.equals

- Faces are reported differently from other rectangles, so the mapping
has to be specialized for them

- Use Key.equals for key comparison.

Bug: 11206459
Change-Id: I9a2a408dad981c2911048191ec30977020953146
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
e37885a8a319165592350e4c46df03c3544a7dc1 08-Oct-2013 Igor Murashkin <iam@google.com> camera2: Workaround for null FACE_DETECT_MODE crashing

Bug: 11118679
Change-Id: Id9b055744f6a2f502857b4cc0c5badb46b44a1f8
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
b7bfdc7cf7f45805e8e7ebea77a15051b8ad3e8d 02-Oct-2013 Zhijun He <zhijunhe@google.com> Camera2: add metadata override

There are interface difference between managed and native side for some
metadata, like Face and JPEG format. we need override them when they are set/get
between native and managed sides.

Also fix some issues in the CameraMetadataTest.

Bug: 10406212

Change-Id: Ibd8be0415968445e711b3ea89f45e1edfa193ee2
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
227c09f998a79ea4baf1fe178297ef6347e05e0a 05-Oct-2013 Eino-Ville Talvala <etalvala@google.com> Fix build.

Change-Id: I1c3537d936fd467014b966179f5ed2a8c6a696da
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
51ca8d6bc031313e5040c716cc207c8f62a68891 04-Oct-2013 Eino-Ville Talvala <etalvala@google.com> Camera2: Verbosity is verboten.

Bug: 10360518
Change-Id: I155effad61099535bee77cc0d0e380420d96770d
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
e841d4e16526a2e466f662305682aa3459d07c15 05-Sep-2013 Eino-Ville Talvala <etalvala@google.com> Camera2: Implement idle callbacks

- Rework camera callback binder interface
- Connect up idle, disconnect callbacks
- A few unit tests for shutter firing and idle use

Bug: 10549462
Change-Id: I8455a8a0561e366b7edeef6b101682be2ec44d79
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
68f40066c914aefc1f88819dd46dd1135fb9f5bc 10-Sep-2013 Igor Murashkin <iam@google.com> camera2: Rename CameraProperties to CameraCharacteristics

Bug: 10360518
Change-Id: I8667bdcc8c9528ace96dc675585f923004932641
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
7a36a0fbb0a5f14047a3680668da954beca05dcb 11-Sep-2013 Igor Murashkin <iam@google.com> camera2: Add key enumeration functionality to CameraMetadata

* Add a way to enumerate all currently set keys in CameraMetadata
* Add a way to enumerate all available keys for CaptureRequest
* Add a way to enumerate all available keys for CaptureResult
* No way to enumerate all keys for CameraProperties, since it would be
identical to all the currently set keys.

Bug: 10360518
Change-Id: I3a90f8cc385db14a675e4ff876ae93d906ff06bf
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java
70c2207c34cf0e6b3b383b1b1500ff5385aa51a6 27-Aug-2013 Eino-Ville Talvala <etalvala@google.com> Camera2: Immutable metadata

Make all camera metadata immutable once created; requests are
created using CameraRequest.Builder.

- Separate CameraMetadata implementation from interface
- Implement deep copying of metadata
- Requests/results/properties have-a native implementation

Bug: 10360518
Change-Id: Ia6300c237219d39f70c63156fa9ca666d951a36e
/frameworks/base/core/java/android/hardware/camera2/impl/CameraMetadataNative.java