Bug: 15116722
- This was causing the preview counter to double decrement
for requests where the jpeg callback was executed first.
Change-Id: I6bfdaa7da7f68e86e05dc7ac60ceb3c8d5a0104a
Bug: 15116722
- Add CaptureCollector class to accumulate buffer timestamps
and manage lifecycle callbacks for each request.
- Set correct timestamps for buffers, results, and callbacks.
Change-Id: I75fa1049cf100d9d14c5ba8992be93ba1048df19
This change makes it convenient to get the HDMI port ID from the device
info without having to look it up through a separate HdmiPortInfo, which
happens in many places.
Also removed port information lookup loop by introducing two maps variable
in Control Service: port path ->port ID, and port ID -> port info.
Bug: 16547583
Change-Id: Ibfff722a16b626230766058efcc819e9c8ca0663
Add new interface, IHdmiRecordCallback, in order to handle
result of all recording features, One Touch Record and
Timer Recording.
HdmiRecordCallback is clientside interface which uses
RecordSource as return of getOneTouchRecordSource,
instead of raw byte array.
Along with it, add TimerRecordingAction.
Bug: 16160962
Change-Id: If0ed7abc5f45b020b39555cac585becbe8ee7da4
In addition to it, add api for clearTimerRecording as well.
Separately, I will replace logic for notifying message with callback
interface.
Bug: 16160962
Change-Id: I2368f7c697eb44ed4542c0ec4412c63a6ae41a5c
- Remove CloseableLock use; looks to be incompatible with invocations during callbacks
- Replace with basic interface lock to be thread-safe
- Add intermediate callback thread to legacy mode to match cross-process one-way Binder
semantics
Change-Id: Iecd4ff6cf260c5a13bd11b850177ccea93e25933
In order to support timer recording we need separate API,
startTimerRecording. Also added HdmiTimerRecordingSources
which is used to help creating timer recording information
such as timing information and program information.
Besides, in order to distinguish one touch record
and timer recording, rename startRecord with startOneTouchRecording.
Bug: 16160962
Change-Id: I8c3d4034665a2f84ddf07135aee73e17ac17cd82
Added setDozeScreenState() and setDozeScreenBrightness() methods to
DreamService. The values specified here only take effect once
startDozing is called and can be changed while dozing.
This required some significant rework of the display power controller
but the result seems quite nice and better represents the policy
we want to apply.
Changed the test dream a little bit to make it flash the screen
every minute using the new functions.
Bug: 15903322
Change-Id: I83bcc34503f1b87727d2b2b3c0ef08507f9f0808
ActivityView does not create callbacks for the VirtualDisplay. This
leads to setting Looper.myLooper() from a Binder thread which
leads to NPE when trying to dereference its message queue.
Fixes bug 16386002.
Change-Id: I12760a22075ed4770f3fe960763e0135fe095cfe
This change introduces new two apis for one touch record.
1. setRecordRequestListener
It's used to get notified when a recorder device initiates
"one touch record". As return of callback, client should
generate "record source" and return it.
2. startRecord
It's used to initiate "one touch record" from Tv.
Along with this, add HdmiRecordSources which is a helper
class assisting buidling byte array form from the given
record source information.
Bug: 16160962
Change-Id: I403d37b752c9b7f799c6d8188a071ef420fe8ac2
- Remove unnecessary recognition status from AlwaysOnHotwordDetector
- Remove unnecessary recognition started callback from IRecognitionStatusCallback
- Fix a bug around the fact that we weren't picking up enrollment at runtime because
we were storing the availability at instantiation time.
- Handle 0-length arrays in SoundTrigger classes while parceling/unparceling
- Fix issue in SoundTrigger helper where we were not comparing binders for start/stop calls
- Unload the previous model when starting a new recognition
- Add more debug logging
Change-Id: Icc56d7f3dd1ffa49a8cfeea49080e3ab4d342c32
- 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
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
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
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
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
__
||
||
||
||---____-----+
|| \_/ |
|| /. .\ |
|| ||---|| |
|| |___| |
|| | | |
||---____-----+
||
||
||
_____________||_________________
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