6c2f7aeb10fb2050c27afa0212a1e167ca2809ec |
|
21-Jun-2017 |
Shuzhen Wang <shuzhenwang@google.com> |
Camera: Add debug messages for camera latency Log latency histogram of: - processCaptureRequest call, - dequeueBuffer call, and - waiting time for handout count fall below max_buffers Test: Camera CTS Bug: 62651109 Change-Id: I5ee1cdb4139fa359f0887d6f6871884e28739340 (cherry picked from commit 686f644f981badd481d8781bf80b221544df7b1f)
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
08dd245c7c30900637197065213fbaa2b2a5c1ee |
|
06-Apr-2017 |
Emilian Peev <epeev@google.com> |
Camera: Make device related code version agnostic Camera device related code should be agnostic w.r.t. device version as much as possible. Specifically the following requirements must hold true: - Since support for devices 3.0&3.1 is deprecated "ANDROID_QUIRKS_USE_PARTIAL_RESULT" is no longer considered. - "ANDROID_SCALER_AVAILABLE_STREAM_CONFIGURATIONS" is always used instead of the deprecated "ANDROID_SCALER_AVAILABLE_JPEG_SIZES". - Buffer manager for camera streams is used for dynamic buffer allocation. - "flush" is always used instead of waiting for buffers to drain. - Similar to "flush" stream "tearDown" is always available. - Dead code handling buffer registration is removed. Bug: 34392075 Test: Manual using camera application Change-Id: If1b215f785ba61c6991fdf163d4eb18733690471
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
be83fa713da45b1c751d33ad69ce0017ebe9f707 |
|
30-Mar-2017 |
Yin-Chia Yeh <yinchiayeh@google.com> |
Camera: add buffer freed notification interface To cleanup caches of obsolete buffers. This CL addressed the input stream bit, the output stream hook will be a followup CL. Also cleanup some dead API in CameraDeviceBase.h Test: fix CTS ReprocessCaptureTest Bug: 34461678 Change-Id: I801cd81c29becaa45630ed0a5c2dab8df1278a6a
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
bee0f0a5e7aa19aa7c59de03b508985b68bc6b5e |
|
24-Jan-2017 |
Shuzhen Wang <shuzhenwang@google.com> |
Camera: Rework StreamSplitter for camera use cases - Merge notifyRequestedSurfaces into getBufferLocked, so that during getBufferLocked, the stream splitter gets to know which outputs the current request is on. - Reserve buffer slot in the output queue during getBufferLocked instead of during onFrameAvailable. So if there is no slot/buffer available, no new request is sent to HAL. This aligns with current cameraservice logic. Do not hold the lock while calling attachBuffer to output queue because it could block for a slow consumer. - Instead of setting the consumer buffer count of input buffer queue to maximum of all shared outputs, set it to sum of them. By doing this, In the case of a slow consumer, other consumers sharing the same stream won't be impacted. - Handle the case where onBufferReleased not being fired for buffer replaced by attachBuffer/queueBuffer. - Add function to check the return value of onFrameAvailable so that when output is abandoned, the error code is propagated back to queueBuffer. Test: Camera CTS, and CTS with StreamSplitter enabled for all implementation defined use cases. Bug: 33777818 Change-Id: I863f501d5283bbe70c71e66b4d37d690484b90fa
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
0b1cb14c804d7d4343fe91c78578da8db9a678d5 |
|
20-Dec-2016 |
Eino-Ville Talvala <etalvala@google.com> |
Camera: Update camera service to use new HIDL HALs, part 2 - Use string for device ID in Camera3Device - Remove camera3_device_t parameter from Camera3Stream::finishConfiguration - Disables ability for the stream to register buffers - This means device HALv3.0 and v3.1 are no longer supported - Add HIDL support to Camera3Device: - Add HalInterface class to abstract whether legacy or HIDL HAL is in use - TODO - CameraHardwareInterface - Switch to using HIDL definitions instead of camera3.h definitions in main body of code Test: Compiles Bug: 30985004 Bug: 32991422 Change-Id: I9c3c0f7b7ea5d1d74e14b1d882779e3b9445da69
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
5d677d1f0879d5101e38df480a38228a64d63959 |
|
30-May-2016 |
Zhijun He <zhijunhe@google.com> |
Camera3: add deferred surface support Initial native implementation and aidl changes for surfaceless support. Bug: 28323863 Change-Id: Id6634c3ef2ecc84422a88f63de0a19a0cb496e96
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
e8c535e833ed135895e99ca81aa3b85d80d7cf3c |
|
14-Apr-2016 |
Chien-Yu Chen <cychen@google.com> |
Camera: Stop repeating request if its output is abandoned Stop repeating request if any of its output stream is abandoned. Add a callback to notify the repeating request has been stopped with frame number of the last frame. Update NDK with the new callback and behavior. Bug: 21270879 Change-Id: I3553775c7807a77104aa1650609480ca3321310c
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
e02e932d2210bd513bb8283840bbe24b58d28620 |
|
12-Apr-2016 |
Chien-Yu Chen <cychen@google.com> |
Camera: Keep a list of outstanding buffers Keep a list of outstanding buffers in Camera3Stream so that it won't return invalid buffers or the same buffers twice back to the buffer queue. Bug: 27894484 Change-Id: I9f96629b4f531778433c2e1ec32a142f2040832b
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
02bf03287652923b5bb5316667b065423565d6b4 |
|
18-Feb-2016 |
Eino-Ville Talvala <etalvala@google.com> |
Camera: Clean up warnings and set -Werror - Also fix error logging template inconsistency - Also add a few error handling cases into camera2 NDK to deal with previously-ignored error codes Bug: 27149500 Change-Id: I8f1f4c72252dd48d652f24b595b642199f20c327
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
125684aba1a11b7adbf5f9d607ee2bcc9449081c |
|
27-Dec-2015 |
Zhijun He <zhijunhe@google.com> |
Camera3: add camera3 buffer manager support * Add camera buffer manager for buffer allocation and sharing management across multiple streams. Only gralloc v0 implementation is done, v1 implementation is pending. With this, the max mem footprint for multiple streams in the same stream set will be the max buffer count x max buffer size. * API1 client will still use the old bufferQueue code path, buffer manager is only targeting at API2 clients. * Prepare and teardown should work with buffer manager. * Some existing code typo fix and cleanup (to fix the compiling warnings). Bug: 25088440 Change-Id: I68b246faa43080302acd02a8e976384bd3e26a23
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
c78ac26e3a65328fc0118f16ee76a800d0687eb7 |
|
14-Aug-2015 |
Ruben Brunk <rubenbrunk@google.com> |
Add experimental camera session prepare API. Bug: 18949148 Change-Id: I8f73e68ea2e3acc60d98954106f364d13f439a82
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
b25e3c87724b6147ed1da7c1d6617c39bfce2fbf |
|
16-Jul-2015 |
Eino-Ville Talvala <etalvala@google.com> |
Camera: Add hidden experimental tearDown method. Bug: 18949148 Change-Id: Ie86ec7d1ec3db54e1154563b2339a208a935f849
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
4d44cad22ea925a651463f2d51d6586c14d4b787 |
|
11-Apr-2015 |
Eino-Ville Talvala <etalvala@google.com> |
Camera2: Add prepare for output streams The prepare call asynchronously pre-allocates buffers for a given output stream, and then fires the onPrepared callback. Not implemented for Camera2Device or used in Camera2Client. Change-Id: I1cccdfff846dd6985133c591dbdceed823929ade
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
618ff8a48a0c895a78f91f5692510c2a809425c3 |
|
13-Mar-2015 |
Chien-Yu Chen <cychen@google.com> |
camera2: add reprocess support Add support to create input stream, submit reprocess capture requests, and receive reprocess capture results. Change-Id: Iee2d4313f3d52616a484eaea7a28f5ef9d8a674b
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
b97babb8c08969b55af3b6456d15f764c8873d3f |
|
12-Mar-2015 |
Yin-Chia Yeh <yinchiayeh@google.com> |
Camera: plumbing rotation field through Change-Id: I0f4343a0bfa7bf09ba887c78a1da1c08daa35333
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
3d82c0d9ed2b3e956ad699a9ca2c8a70c9d24678 |
|
24-Feb-2015 |
Eino-Ville Talvala <etalvala@google.com> |
Camera: Wire up dataSpace, clean up ICameraDeviceUser - Remove unused arguments from ICameraDeviceUser::createStream - Add dataSpace as a stream parameter, plumb it through everything Change-Id: I608cafe694785d1c512276e71b2016f8ac3b0ccb
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
1754351d9199721e7e7943461689e399ef015260 |
|
06-Aug-2014 |
Eino-Ville Talvala <etalvala@google.com> |
CameraService: Correct API2 error handling - Add more error codes to the binder camera2 callbacks - Translate HAL errors to callback errors - When flushing, report failures for queued requests - Treat stream config failure as nonfatal - Send request errors when buffers aren't available for captures Bug: 15524101 Bug: 14448494 Bug: 11272459 Bug: 17160301 Change-Id: I81aa54e805a9cce1cb8a6a9374549daa7666deb2
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
f0d962a6737eb8eec002d6804d9ffbe7bee672a0 |
|
30-Jun-2014 |
Zhijun He <zhijunhe@google.com> |
Camera3: fix ZSL processor3 issues - Return input buffer in capture result. Per hal3.2 spec, we should return the input buffer in process capture result rather than immediately after process capture request. - Make the depths of mZslQueue and mFrameList the same. It doesn't make sense mFrameList depth is larger than mZslQueue depth. - Set the depths of mZslQueue and mFrameList based on pipelineMaxDepth. - Clear result queue while clearing zsl buffer queue. - Hook up camera3 buffer listener with ZslProcessor3, make sure that adding the same listener multiple times has no effect. - Remove flush call in pushToReprocess, it is a guaranteed deadlock once camera3 buffer listener is hooked up. Change-Id: I285155ab4241e827145855d628f8e98b881c01d5
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
6adc9ccb2948d9421a0ed4b74f52b909bcec2037 |
|
15-Apr-2014 |
Zhijun He <zhijunhe@google.com> |
Camera3: block until get an available buffer Camera3Stream shouldn't error out when the max number of buffers are already dequeued. It should block until next buffer returned from camera device. Bug: 11595505 Change-Id: If65a70c29cb04219e14ded0744059c0ab783444b
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
13d315eb8c0848ea0584b9fb1d27bab55bc8158b |
|
04-Apr-2014 |
Igor Murashkin <iam@google.com> |
camera3: Remove register_stream_buffers for HAL 3.2+ Use 'setprop camera.dev.register_stream 1' to skip the fatal NULL check - This property will be removed before shipping L Bug: 13301331 Bug: 13435680 Change-Id: I16aacd7b22e0a10b34f6fb8501be0256170a8cd5
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
f1e98d857ec377f2c9b916073d40732e6ebb7ced |
|
06-Sep-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Camera API 2, Device 2/3: Implement idle and shutter callbacks - Update callback Binder interface - Rename frameId to be requestId to be consistent and disambiguate from frameNumber. - Implement shutter callback from HAL2/3 notify() - Add in-flight tracking to HAL2 - Add requestId to in-flight tracking - Report requestId from shutter callback - Implement idle callback from HAL3 process_capture_result - Add new idle tracker thread - Update all idle waiting to use the tracker - Add reporting from request thread, all streams to tracker - Remove existing idle waiting infrastructure Bug: 10549462 Change-Id: I867bfc248e3848c50e71527e3561fe92dc037958
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
b2f5b19e5b6e1408a259add23dba91037756a943 |
|
30-Jul-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Camera3: Provide consumer usage flags to HAL for each stream At stream configure time, pass on the stream's consumer usage flags to the HAL, to speed up final hardware configuration. Bug: 9592202 Change-Id: Ie467be053be36a09e482f5f05cad65df42d66476
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|
7b82efe7a376c882f8f938e1c41b8311a8cdda4a |
|
26-Jul-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Camera: Rename new API to camera2, rearrange camera service - Support API rename from photography to camera2 - Reorganize camera service files - API support files to api1/, api2/, api_pro/ - HAL device support files into device{1,2,3}/ - Common files into common/ - Camera service remains at top-level Change-Id: Ie474c12536f543832fba0a2dc936ac4fd39fe6a9
/frameworks/av/services/camera/libcameraservice/device3/Camera3Stream.h
|