Commit Graph

1034 Commits

Author SHA1 Message Date
Jeff Brown
241e70d607 Add glance sensor for doze mode.
Change-Id: I66d11a1f032017b16d3f57fa60699a02d67ad5f1
2014-07-17 18:19:53 -07:00
Zhijun He
d1d2d43fc0 Merge "Camera2: partialResultCount should be optional" into lmp-dev 2014-07-17 21:09:48 +00:00
Zhijun He
1420de4162 Camera2: partialResultCount should be optional
Change-Id: Iacd2b5e8f388c18cbff0f1cefdb5c10812ae751e
2014-07-17 17:45:54 -07:00
Zhijun He
83159151f6 Camera2: replace partial quirks with normal partial result
Change-Id: I56550748478bf0aa1a7bf9a350b4fdc7bbd6af86
2014-07-17 20:08:32 +00:00
Michael Wright
c39d47a8e7 Add MediaProjection APIs.
The new MediaProjection infrastructure allows the system to hand out
tokens granting the ability to capture the screen's contents, audio,
etc. at a granular level. It's intended to be used both for screen
casting, via the cast APIs, as well as screen sharing via third party
applications.

The screen sharing case is implemented, but all of audio capturing
is still forthcoming.

Change-Id: I4b24669bed7083e11413c10ed8d6b025f5375316
2014-07-17 14:30:19 -07:00
destradaa
6ccb5f894e Merge "Fix exceptions in ActivityRecognition platform stack." into lmp-dev 2014-07-17 18:11:21 +00:00
destradaa
3b0224dc3c Fix exceptions in ActivityRecognition platform stack.
b/16348349

Change-Id: I1f85283c86130b86389a1be7da49904658b0558c
2014-07-17 11:09:46 -07:00
Eino-Ville Talvala
7040e9f7fe Merge "Add PackageManager features for differentiating camera2 devices" into lmp-dev 2014-07-17 02:40:09 +00:00
Eino-Ville Talvala
611fecec08 Add PackageManager features for differentiating camera2 devices
Also rename DNG capability to RAW.

Bug: 15415688
Change-Id: I1ea9f65b03c4fa06a5004f9d1d485935742001c8
2014-07-17 10:58:16 -07:00
Ruben Brunk
40001f5dac camera2: Fix swapped Face detection commands.
Bug: 16343647
Change-Id: I06186b1d6a2ef5d73d2e22759e947156d43cab3f
2014-07-17 18:04:42 +00:00
Sandeep Siddhartha
e6cd2476aa Add recognition modes to the enrollment metadata
This will be used by the Voice interaction service to determine what type of recognition may be run
on the DSP. e.g. If the DSP supports voice trigger only for the given keyphrase,
the voice interaction service may want to perform user identification at its end.

Also support keyphrase metadata for all keyphrases and locales.
In case the enrollment app supports open-ended keyphrases, it can leave the keyphrase text
to be empty
similarly, if the enrollment app supports all locales, it can leave the supported locales
attribute to be empty,

Change-Id: I782a17a877fc79ed569fa7c3a81697641182590b
2014-07-16 22:03:03 -07:00
Sandeep Siddhartha
a433af6b73 Add code for isKeyphraseActive and some logging to help debug issues
Change-Id: I89f2090be5a5fe5f7c0da1648a0d46a093893fe2
2014-07-16 19:52:32 -07:00
Sandeep Siddhartha
8ecaf5f5cf Hook in startRecogniton call
Add required info to the sound model database: users & recognition modes

Change-Id: I6e12cbc6342a2767c0e3d8328c0a3be899ac9952
2014-07-15 18:36:09 -07:00
Ruben Brunk
d1f113d0f0 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
2014-07-16 01:23:39 +00:00
Igor Murashkin
cc542a4e74 camera2: Fix available keys to filter to only supported keys
The following functions are affected:
* CameraCharacteristics#getKeys
* CameraCharacteristics#getAvailableResultKeys
* CameraCharacteristics#getAvailableRequestKeys

The above keys will now only return keys whose tags are set in
android.request.available{Characteristics,Result,Request}Keys

This change makes it possible to detect if a key is guaranteed to be
available at a granular basis (without querying hardwareLevel or
capabilities).

Change-Id: Iaa34e8c24100339c215604ff49035527fae467cd
2014-07-16 00:18:12 +00:00
Ruben Brunk
28c49c9d20 camera2: Update shader scaling matrix for legacy mode.
Bug: 15116722
Change-Id: Idaa4311dfd027b2d2b8ea5e2c6cba2da5779d753
2014-07-14 22:57:07 +00:00
Eino-Ville Talvala
b942b05093 Deprecate android.hardware.Camera
__
             ||
             ||
             ||
             ||---____-----+
             ||    \_/     |
             ||   /. .\    |
             ||  ||---||   |
             ||   |___|    |
             ||    | |     |
             ||---____-----+
             ||
             ||
             ||
_____________||_________________

Replaced by android.hardware.camera2

- Also deprecate MediaRecorder#setCamera
- Also deprecate all Camera inner classes
- Update reference documentation in various classes to point to camera2
- Add note to camera API guide that it uses the old API
  (until a new guide is available)
- Remove old hidden raw sensor format; superceded by RAW_SENSOR.

Change-Id: I3d839765fc9b9aae906751ee32d6956ef40451ce
2014-07-13 21:45:57 -07:00
Lajos Molnar
5d2fa0e0b5 Fix build
Change-Id: Ic06f633e5d57b28260fa94914e2a0daccdaa1a14
2014-07-12 15:34:51 -07:00
destradaa
a4fa3b5aa5 Add support in the platform for Activity Recognition Hardware.
Change-Id: I7c4fff3526583475a5edf1f4ba8fede4e9419ead
2014-07-11 15:58:36 -07:00
Igor Murashkin
396532ffb8 camera2: (LEGACY) Update flash modes to fix #testFlashControl CTS
Change-Id: I9b66a2b4393f4bc2272ecc94cd9a5c6273f3de59
2014-07-11 14:08:42 -07:00
Igor Murashkin
49a1d7b7de camera2: (legacy) Fixes for CaptureRequestTest#testAeModeAndLock
Change-Id: I5c1008cf34a9d98f67c36966e7cbf1c312979f97
2014-07-11 12:59:50 -07:00
Igor Murashkin
3e280b4bb2 camera2: (Legacy) Implement ae compensation step ranges and ae/awb locks
Characteristics:
* control.aeCompensationRange
* control.aeCompensationStep

Request/Result:
* control.aeExposureCompensation
* control.aeLock
* control.awbLock

Change-Id: I911616c9cf3e0e9a03a0cb383bcf232cab8ca772
2014-07-11 12:59:50 -07:00
Igor Murashkin
7ee78d1ee3 camera2: (legacy) Implement AF/AE regions for request and result
* Also stop lying about max AE regions (now reports the truth)

Change-Id: I567a1e6c58ed0bfb77cc09787393ea18eba5d613
2014-07-11 12:59:49 -07:00
Sandeep
d701820031 Always on hotword changes
Add model management API skeleton to VoiceInteractionManagerService
Add an "interactor" for all always-on APIs

- The VoiceInteractionService will get an interactor for the given
  keyphrase and locale.
- It can then check the availability and call methods to start and
  stop recognition on this interactor.

- Add a common class to deal with SoundTrigger APIs

- Cleanup the keyphrase representation:
  We now have separate representations for the keyphrase metadata and
  a keyphrase being used for recognition.
  This'll also help us to handle custom keyphrases in the
  future easily.
  This also ensures that for use within the framework,
  we rely on the ID of the KeyphraseInfo rather than comparing the
  text everytime.

Add a callback for the AlwaysOnHotwordDetector

This callback should be passed in by the VoiceInteractionService and is used to notify it
of recognition events.

Change-Id: I26252298773024f53a10cdd2af4404a4e6d74aae
2014-07-10 18:32:37 -07:00
Eino-Ville Talvala
e1f57d6f44 Camera2: Add CPU/GPU overhead measurement to legacy mode
Dumps GL and CPU processing duration and frame timestamps to a file,
whenever the device is closed or the stream configuration is changed.

- Add PerfMeasurement class to legacy mode
- Wire up minimal usage to SurfaceTextureRenderer

Change-Id: Ic9d74ca26f706780b746175aa615c7aae4ae52e7
2014-07-10 23:49:07 +00:00
Ruben Brunk
47e91f2095 DNG: Implement remaining interface methods.
Bug: 15112503
Bug: 16206973
Bug: 15748139

- Adds remaining write methods.
- Adds GPS and description convenience methods.
- Unhides convenience methods.

Change-Id: I9535b21261027f6c06a041c1621de8f865a0ad32
2014-07-10 23:17:35 +00:00
Jinsuk Kim
c068bb5a04 Support HdmiControlService.sendKeyEvent for both TV/playback device
Added another parameter deviceType for HdmiControlService to
run the specified local device for sendKeyEvent.

Bug: 15844076
Change-Id: I598ef320ae94bba0ace38701ae0ca12fd0625559
2014-07-11 06:59:26 +09:00
destradaa
1c52d02679 Merge "Mark FLP constants as public, so they can be consumed by geofencing." 2014-07-10 21:14:09 +00:00
destradaa
17ff2b2b3a Mark FLP constants as public, so they can be consumed by geofencing.
Change-Id: I6e73692064a9f58eeac6ba1118c37ac500df0d9f
2014-07-10 12:41:11 -07:00
Ruben Brunk
52842e7a6f camera2: Add BlackLevelPattern class.
Bug: 15448889

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

Change-Id: I5d3393f4a1695664bc5315eb592fb0a4e154d22e
2014-07-10 19:57:16 +00:00
Eino-Ville Talvala
08bc3b0f02 Camera2: Update capabilities metadata
Change-Id: Ic2dc18f535cbc34a1504a6a746e7f7303fa6e839
2014-07-10 17:06:59 +00:00
Eino-Ville Talvala
5228dcdc82 Merge "camera2: Document CameraCaptureSession behavior given 0 Surfaces" 2014-07-10 00:35:26 +00:00
Sol Boucher
edeab40338 camera2: Document CameraCaptureSession behavior given 0 Surfaces
Clarify that this will cause an IllegalArgumentException to be thrown

Change-Id: Ifabfed6d8d46492c4ca45bbbed599ded5260b099
2014-07-09 18:36:28 -07:00
Yuncheol Heo
75a77e7d6c Add HdmiCecMessageValidator to verify the incoming messages.
- Remove all param's length-check-logics in the package.

Bug: 16051295, Bug: 16117332, Bug: 15841545
Change-Id: If48ad9731f4f4613fd22aa3d9ada7ba3142bc999
2014-07-10 10:16:05 +09:00
Ruben Brunk
7f3c084c95 camera2: Add NoiseProfile HAL tag.
Change-Id: Iac1b5b7708222b00a9eb1fb1adc85f0d0a7912cb
2014-07-09 22:47:45 +00:00
Ying Wang
fa68c30bbd Fix System API build.
Change-Id: Iece27eb0be2a83a468fbf6584a1170ec9e20f803
2014-07-09 12:08:02 -07:00
Zhijun He
a05e59d12b Camera2: Add aberration correction control
Change-Id: I0a3530ee8d5550f0f2a58c4d7af284821d87cb4d
2014-07-09 01:33:54 +00:00
Eino-Ville Talvala
a8c5badec4 Merge "Camera2: Hide all the deprecated methods and interfaces" 2014-07-08 22:56:18 +00:00
Eino-Ville Talvala
0a160acf29 Camera2: Hide all the deprecated methods and interfaces
Leave them in for now until bundled clients complete updating

Change-Id: Ibd0fc971258ce6b649000c48dd7a6716f1ab91d4
2014-07-06 17:31:14 -07:00
Igor Murashkin
a242d220f1 Merge "camera2: Legacy, lie about AE/AF regions (reported as 0)" 2014-07-08 18:08:48 +00:00
Igor Murashkin
d25388c155 camera2: Legacy, lie about AE/AF regions (reported as 0)
* Temporary work-around for passing CTS tests

Change-Id: Icbfe5309b3c500bb089553fbc57272936be6100f
2014-07-07 15:29:28 -07:00
Igor Murashkin
df6242e374 camera2: Add crop region support and some other AE tags to legacy
Change-Id: If7a87b210a57ea13d6329bb363b1c7ecdadc52e8
2014-07-02 16:38:28 -07:00
Eric Laurent
013f66b92d SoundTrigger: update API
class Keyphrase: replaced number of users by list of user IDs.
class RecognitionEvent: added capture preamble duration.
class KeyphraseRecognitionEvent: add keyphrase ID and explicit list of
user ID/confidence level pairs.
startRecognition(): takes a RecognitionConfig specifying the list of
keyphrases to listen to as well as for each keyphrase the recognition mode,
users and min confidence levels for each user.

Bug: 12378680.
Change-Id: I57036cc83b5d9e90512b8bb3f951af3a4a74c0ce
2014-07-08 11:48:44 -07:00
Sandeep Siddhartha
d4233c68fc Initial code for listing/storing sound models
- We use a DB to store and persist the sound models.
- This'll be used by SoundTriggerModelManager, a service that lists,
  deletes and registers new models. This'll be used by the enrollment
  client to enroll and unenroll users.

- This needs the unique identifiers for sound model & keyphrases to be
  present in the respective data structures

This is very early stage so please point out any concerns.

Change-Id: I82962895bf326167458f20e6ba995295551de025
2014-07-08 09:36:51 -07:00
Jinsuk Kim
c7eba0f1db Intent definition for HdmiControlService for OSD display
Intent action/extra for TV app to show a message on screen about events
HdmiControlService need to report for user's attention. The app
needs system permission HDMI_CEC to receive the intent.

Change-Id: I4fbe4621efa20a17ca64a3ca8f2df64bee03c51b
2014-07-08 14:02:38 +09:00
Jinsuk Kim
119160a681 Add vendor-specific command API for HdmiControl
Vendor-specific commands are not handled by the service. This CL
opens an API for vendors to implement customized handling of
CEC commands specific to their needs.

Change-Id: I8bfa3b891bd7994a903b3b41d7c2b27464167afa
2014-07-08 04:46:05 +00:00
Ruben Brunk
7f2372bd85 camera2: Update LEGACY mode video handling.
Bug: 15116722

- Change FPS preview setting handling for video modes.

Change-Id: Idba2162979db93a0483480ea256cbab85c1bd182
2014-07-07 22:55:40 +00:00
Jinsuk Kim
fca826de37 Merge "Update HdmiControlService.deviceSelect()" 2014-07-02 20:35:42 +00:00
Jinsuk Kim
b38cd68b24 Update HdmiControlService.deviceSelect()
The device selection action should have stopped if
TV's own power goes to standby in the middle. This CL
implements the right behavior.

Some TODO's about OSD banner were removed as they
can be handled in caller (TV app) when invoking the API
or upon receiving the callback based on the result. One
more callback result constant was added accordingly.

Bug: 15843137
Bug: 15844312
Bug: 15845651

Change-Id: Ib118fd6e80e9abdfb531e3f321d8db1c9cec45bd
2014-07-07 16:03:40 +09:00
Jinsuk Kim
4ab7606f32 Merge "Removed class HdmiCec" 2014-07-02 19:52:36 +00:00