Change how the remote audio submix is handling piping audio
through the pipe:
- use a MonoPipe as audio sink for blocking writes,
- use a MonoPipeReader as audio source for non blocking reads,
and keep track of when recording started to align the
time at which the in_read() call should return with the
projected time of the recording duration.
Change-Id: I8b0f8c56a0486806101e272dfbf9c6d2d1c11112
Until all HAL implementations move to the new gralloc format selection
scheme, define FORMAT_ZSL for indicating ZSL streams.
Bug: 6243944
Change-Id: I90249beaaca5da80c9464eedd6aa9d3648bb56cc
Neither write nor read are blocking, but write simulates
timing by checking the clock between two writes and
computing how long the next sleep should last.
Change-Id: I495ae6d44b0cf75a24fe4b70662cfac679049c67
Changed audio device API version to 2.0 because of
new enums for audio input and output devices.
Removed implementations of get_supported_devices() in
stub and usb audio modules.
Change-Id: I09345d38929d931e5015e36d18259f5a5f950298
New definitions of audio devices for remote submix: one representing
a sink for writing the audio buffers that won't be played directly
locally, another representing the audio source that can be read from
to obtain the audio mix.
New audio hardware module encapsulating the submix loop functionality.
Create a Pipe to serve as non-blocking audio ring buffer between
the output device (the sink) and the input device (the source).
Change-Id: I527f4721a69ced0430a99ebba3b4db7d419f2bb2
More dependent projects than I realized
This reverts commit 7fa4a7e706cd8da0a4fd6722ff3b00b8088a01ae
Change-Id: I813ffde0f8d602fd6d75186bf82e93c7ffed9a9a
Align camera2's management of platform-opaque formats with rest of
framework. Instead of using CAMERA2_PIXEL_FORMAT_OPAQUE, use
HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED as the format for both the
camera HAL and for gralloc, and depend on the gralloc usage flags to
let the gralloc module select the appropriate real format for specific
stream endpoints.
Add a new gralloc usage for ZSL mode, where the camera service will
hold a streaming circular buffer of opaque full-resolution images
during camera preview. Since this is an opaque format that needs to be
optimized for 30fps operation, need gralloc to be aware of this use
case.
Bug: 6243944
Change-Id: If7f2516649381ce9bcffe4e319b63cbc068f643f
Disallow modification to static characteristics structure, and clarify
ownership and lifetime of the structure.
Also update test code accordingly.
Bug: 6243944
Change-Id: I6921d6889937212867efb99aa3881ab3ffc4f6f9
Needs a third change that's not yet done with review.
This reverts commit c9ec8a656b59912f496880d3a63c0decd490f09d
Change-Id: Ic3e465e1308cbf107a250ec17b73a59a35e52f9f
Disallow modification to static characteristics structure, and clarify
ownership and lifetime of the structure.
Also update test code accordingly.
Bug: 6243944
Change-Id: Ib8de5e9d6580187b21a5ae9a28a3d24f1d083f7b
During the HWC 0.x evolution, some fields were left optional or
organized strangely to avoid breaking backwards compatibility. Since
we're breaking it in the transition to HWC 1.0 anyway, we can clean
these up a little.
* The current callbacks are now registered immediately after the
device is opened and guaranteed to be present, so the implementation
can rely on them being present.
* The hwc_methods_t structure is gone, with its two methods folded
into the main hwc_composer_device_1_t.
* All methods and callbacks are now required except dump(). New
methods and callbacks we add in the future will still be optional
for backwards compatibility.
Change-Id: I5d58774a5144016993c12df3dd6ad2a5d746bee9
Change the documentation of the blank function in the hw composer to
specify that the screen state transition must be complete when the
function returns.
Change-Id: Ibd0a9cdef13991c36cabada5fc0e4f7bb8fa7af9
Check the key values of successful attempts.
For imported keys, the key values should match the
input values when they're returned.
For generated keys, the modulus size should be correct and the public
exponent should be correct.
(cherry-pick of 280dbc7e691304cccb2a32683d1a5a13cc188e41)
Bug: 6736252
Bug: http://code.google.com/p/android/issues/detail?id=34212
Change-Id: Ieaf922ec83e0b81feb08f6ac3977e4aabd09ce14
These APIs are needed to allow the bluetooth chip to be put into DUT
mode so that RF/BB BQB tests can be run
Change-Id: I0b01943256bb77ad7924bf67cabfc468662a2299
- Add CAMERA2_HAL_PIXEL_FORMAT_ZSL
- Add CAMERA2_TRIGGER_CANCEL_AUTOFOCUS
- Add documentation to describe how AUTOFOCUS and CANCEL_AUTOFOCUS
triggers interact with AF state, mode, and notifications.
- Other minor edits
Bug: 6243944
Change-Id: I679c40cfe08e62d3a5851839f748fe2292bbfae7
Check the key values of successful attempts.
For imported keys, the key values should match the
input values when they're returned.
For generated keys, the modulus size should be correct and the public
exponent should be correct.
Bug: 6736252
Bug: http://code.google.com/p/android/issues/detail?id=34212
Change-Id: I37ed97d36ebfbe4301b43426129928bcb53c39f8
Documentation updated for semantic changes vs. HWC 0.x:
* Prepare won't be called with NULL pointers. This used to be used to
disable hardware composition, though that wasn't documented. Now
we'll call prepare with non-NULL pointers but the layer list will
have zero layers.
* Set won't be called with NULL pointers. This used to cause the
display to turn off; that is now done by calling the blank() method,
which is no longer optional.
Change-Id: I9c69dc34f64e499a5ba5f8729836e7c216f8c733