History log of /frameworks/base/core/java/android/hardware/camera2/marshal/MarshalRegistry.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
4a2c7c55492d2fcae1d8bdbf169d4c4fb710e800 09-Jun-2016 Eino-Ville Talvala <etalvala@google.com> Camera2: Protect MarshalRegistry against concurrent access

Multiple CameraMetadataNative objects could be reading and writing
to the metadata marshaler registry simultaneously.

This can lead to an infinite loop in the HashMap in the worst case,
so add synchronization against this.

Bug: 29043079
Change-Id: Ic5e9e58a9333b99b4bea87bf790c9fbfadfbbea9
/frameworks/base/core/java/android/hardware/camera2/marshal/MarshalRegistry.java
2cdfa261f44182292d07b7b3b1e9fce8376e4df5 11-Jul-2014 Ruben Brunk <rubenbrunk@google.com> 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/marshal/MarshalRegistry.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/marshal/MarshalRegistry.java