DO NOT MERGE - Merge pie-platform-release (PPRL.190705.004) into master

Bug: 136196576
Change-Id: I77c591fd4d7f2774c864c1dfd1529b5d1265a86d
gugelfrei
Xin Li 5 years ago
commit 72d6973d3d

@ -646,6 +646,14 @@ camera_status_t ACaptureSessionOutputContainer_remove(
* target combinations with sizes outside of these guarantees, but this can only be tested for
* by attempting to create a session with such targets.</p>
*
* <p>Exception on 176x144 (QCIF) resolution:
* Camera devices usually have a fixed capability for downscaling from larger resolution to
* smaller, and the QCIF resolution sometimes cannot be fully supported due to this
* limitation on devices with high-resolution image sensors. Therefore, trying to configure a
* QCIF resolution stream together with any other stream larger than 1920x1080 resolution
* (either width or height) might not be supported, and capture session creation will fail if it
* is not.</p>
*
* @param device the camera device of interest.
* @param outputs the {@link ACaptureSessionOutputContainer} describes all output streams.
* @param callbacks the {@link ACameraCaptureSession_stateCallbacks capture session state callbacks}.

@ -3157,6 +3157,12 @@ typedef enum acamera_metadata_tag {
* IMPLEMENTATION_DEFINED | same as YUV_420_888 | Any |</p>
* <p>Refer to ACAMERA_REQUEST_AVAILABLE_CAPABILITIES for additional
* mandatory stream configurations on a per-capability basis.</p>
* <p>Exception on 176x144 (QCIF) resolution: camera devices usually have a fixed capability for
* downscaling from larger resolution to smaller, and the QCIF resolution sometimes is not
* fully supported due to this limitation on devices with high-resolution image sensors.
* Therefore, trying to configure a QCIF resolution stream together with any other
* stream larger than 1920x1080 resolution (either width or height) might not be supported,
* and capture session creation will fail if it is not.</p>
*
* @see ACAMERA_INFO_SUPPORTED_HARDWARE_LEVEL
* @see ACAMERA_REQUEST_AVAILABLE_CAPABILITIES
@ -5154,7 +5160,7 @@ typedef enum acamera_metadata_tag {
* <li><code>LEVEL_3</code> devices additionally support YUV reprocessing and RAW image capture, along
* with additional output stream configurations.</li>
* <li><code>EXTERNAL</code> devices are similar to <code>LIMITED</code> devices with exceptions like some sensor or
* lens information not reorted or less stable framerates.</li>
* lens information not reported or less stable framerates.</li>
* </ul>
* <p>See the individual level enums for full descriptions of the supported capabilities. The
* ACAMERA_REQUEST_AVAILABLE_CAPABILITIES entry describes the device's capabilities at a

@ -68,7 +68,7 @@ struct TWGraphicBufferProducer : public BASE {
Return<void> requestBuffer(int32_t slot, HGraphicBufferProducer::requestBuffer_cb _hidl_cb) override {
sp<GraphicBuffer> buf;
status_t status = mBase->requestBuffer(slot, &buf);
AnwBuffer anwBuffer;
AnwBuffer anwBuffer{};
if (buf != nullptr) {
::android::conversion::wrapAs(&anwBuffer, *buf);
}
@ -89,15 +89,15 @@ struct TWGraphicBufferProducer : public BASE {
uint32_t width, uint32_t height,
::android::hardware::graphics::common::V1_0::PixelFormat format, uint32_t usage,
bool getFrameTimestamps, HGraphicBufferProducer::dequeueBuffer_cb _hidl_cb) override {
int slot;
int slot{};
sp<Fence> fence;
::android::FrameEventHistoryDelta outTimestamps;
status_t status = mBase->dequeueBuffer(
&slot, &fence, width, height,
static_cast<::android::PixelFormat>(format), usage, nullptr,
getFrameTimestamps ? &outTimestamps : nullptr);
hidl_handle tFence;
HGraphicBufferProducer::FrameEventHistoryDelta tOutTimestamps;
hidl_handle tFence{};
HGraphicBufferProducer::FrameEventHistoryDelta tOutTimestamps{};
native_handle_t* nh = nullptr;
if ((fence == nullptr) || !::android::conversion::wrapAs(&tFence, &nh, *fence)) {
@ -144,8 +144,8 @@ struct TWGraphicBufferProducer : public BASE {
sp<GraphicBuffer> outBuffer;
sp<Fence> outFence;
status_t status = mBase->detachNextBuffer(&outBuffer, &outFence);
AnwBuffer tBuffer;
hidl_handle tFence;
AnwBuffer tBuffer{};
hidl_handle tFence{};
if (outBuffer == nullptr) {
LOG(ERROR) << "TWGraphicBufferProducer::detachNextBuffer - "
@ -185,7 +185,7 @@ struct TWGraphicBufferProducer : public BASE {
Return<void> queueBuffer(
int32_t slot, const HGraphicBufferProducer::QueueBufferInput& input,
HGraphicBufferProducer::queueBuffer_cb _hidl_cb) override {
HGraphicBufferProducer::QueueBufferOutput tOutput;
HGraphicBufferProducer::QueueBufferOutput tOutput{};
BGraphicBufferProducer::QueueBufferInput lInput(
0, false, HAL_DATASPACE_UNKNOWN,
::android::Rect(0, 0, 1, 1),
@ -246,7 +246,7 @@ struct TWGraphicBufferProducer : public BASE {
producerControlledByApp,
&lOutput);
HGraphicBufferProducer::QueueBufferOutput tOutput;
HGraphicBufferProducer::QueueBufferOutput tOutput{};
std::vector<std::vector<native_handle_t*> > nhAA;
if (!::android::conversion::wrapAs(&tOutput, &nhAA, lOutput)) {
LOG(ERROR) << "TWGraphicBufferProducer::connect - "
@ -320,11 +320,11 @@ struct TWGraphicBufferProducer : public BASE {
status_t status = mBase->getLastQueuedBuffer(
&lOutBuffer, &lOutFence, lOutTransformMatrix);
AnwBuffer tOutBuffer;
AnwBuffer tOutBuffer{};
if (lOutBuffer != nullptr) {
::android::conversion::wrapAs(&tOutBuffer, *lOutBuffer);
}
hidl_handle tOutFence;
hidl_handle tOutFence{};
native_handle_t* nh = nullptr;
if ((lOutFence == nullptr) || !::android::conversion::wrapAs(&tOutFence, &nh, *lOutFence)) {
LOG(ERROR) << "TWGraphicBufferProducer::getLastQueuedBuffer - "
@ -346,7 +346,7 @@ struct TWGraphicBufferProducer : public BASE {
::android::FrameEventHistoryDelta lDelta;
mBase->getFrameTimestamps(&lDelta);
HGraphicBufferProducer::FrameEventHistoryDelta tDelta;
HGraphicBufferProducer::FrameEventHistoryDelta tDelta{};
std::vector<std::vector<native_handle_t*> > nhAA;
if (!::android::conversion::wrapAs(&tDelta, &nhAA, lDelta)) {
LOG(ERROR) << "TWGraphicBufferProducer::getFrameTimestamps - "
@ -365,7 +365,7 @@ struct TWGraphicBufferProducer : public BASE {
}
Return<void> getUniqueId(HGraphicBufferProducer::getUniqueId_cb _hidl_cb) override {
uint64_t outId;
uint64_t outId{};
status_t status = mBase->getUniqueId(&outId);
_hidl_cb(static_cast<int32_t>(status), outId);
return Void();

Loading…
Cancel
Save