| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| | |
Change-Id: I4730ac7849e915e88d3b8fc8aa869f53a8242501
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Give up on current approach of writing out consistent FPS values
into parameters that will be read back by the app.
- Preserve app's latest set parameters exactly, and compare against
them when detecting if a new FPS range or single FPS value has been
selected.
- Since get() returns exactly what was set(), it doesn't matter if the
app calls getParameters() before its next setParameters(), in terms
of retriggering FPS selection logic. Before, the behavior varied
depending on whether the app re-read the parameters.
- As before, if app changes both range and single FPS in a single set
call, the range set wins. Otherwise, the value that has changed more
recently is used.
Bug: 11570973
Change-Id: I72b5e60c3f60e88d55127dd1bda87e26eaf929c6
|
|
|
|
|
|
|
|
|
| |
- Camera3Device: Include requestId in partial 3A results
- FrameProcessorBase: Add support for partial result listeners
- CameraDeviceClient: Listen and forward partial results to client
Bug: 11115603
Change-Id: If1cc6bbc32932742ac142c058688761ebf6a8024
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Camera2Client:
- Detect partial result quirk
- Camera3Device:
- Accumulate all partial results together
- Fire off 3A-only result once all 3A states are available
- FrameProcessorBase:
- Filter out partials, don't send to listeners
- FrameProcessor:
- Skip face detect on partials
- Make sure to only handle a 3A update for a given frame once
- Trigger AF notifications when AF mode or trigger changes, to
properly detect all AF transitions.
Bug: 11115603
Change-Id: Iea8aa73c568701562a46071f7ea100624251d10b
|
|
|
|
|
| |
Bug: 11324229
Change-Id: Ic920e170a8f5a389fc139bbf5416c0e3186c7fb6
|
|
|
|
|
|
|
| |
Only use camera.disable_zsl_mode to control disable/enable ZSL.
Bug: 11258054
Change-Id: Ibf10b959d0913f7dedb59d89b571e9bf66fe978a
|
|
|
|
|
|
|
|
|
|
|
| |
process capture request thread, process capture result and setParameter
binder threads can run into circular locking situation when acquiring
StreamingProcessor lock, Camera3Stream lock, and bufferQueue lock.
Releasing the Camera3Stream lock briefly in process capture request
thread getbuffer call can break this deadlock.
Bug: 11016037
Change-Id: If08d4b134c26be26039b1d5363759e60f911bad6
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Skip AE precapture when AE is already converged for still capture use case. This
could save still capture latency 6-7 frame time for AE already converged case.
Bug: 10712902
Change-Id: Ie5512618b76e5d87c62c57c3d96d2004c604e29e
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- AF state
- Async autofocus completion
- Async takePicture completion
- Stages of takePicture
Bug: 10570497
Change-Id: Ida9fedd81aa4ee3ae3fb8dfada858a3bc3c213a3
|
|/
|
|
|
|
|
|
|
|
| |
Move the latest request signal call right before submitting request to HAL,
which avoids unnecessary 1 frame time wait.
Also fix request status constructor issue, and the log tag for Camera2Client.
Bug: 10570497
Change-Id: I0b1818658bee9983b117e49a5a00f1aab515c567
|
|\ |
|
| |
| |
| |
| |
| | |
Bug: 11095203
Change-Id: Icfb31e1719634b62004d6c15a95a9316e9642e4c
|
|/
|
|
|
|
|
|
| |
- Handle binder connection drops (DEAD_OBJECT) for streams
- Just log an error, don't go to an error state when queue/dequeue fails
Bug: 10347526
Change-Id: Ib463ffe15d58db444cf5d8cad176a201c7d1facc
|
|\ |
|
| |
| |
| |
| |
| | |
Bug: 9758581
Change-Id: I1d7135cd0932bd6b453acabfeb9a553985c887bc
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
|
|
|
|
| |
This effectively disables the camera2 APIs for HAL2.x or lower HAL device.
Bug: 10360518
Change-Id: I0f374ac533468c6181f5672c75088b7144b9c53d
|
|
|
|
|
|
|
|
|
|
| |
Sometimes, when preview size is changed and preview callback is enabled, stale
callback buffer from previous size could be delivered to callback processor
because stop preview doesn't guarantee consumer side buffers are properly
cleaned up. We need drop these buffers to avoid sending wrong data to app side.
Bug: 11009183
Change-Id: If9281e8c02481f883872ce58dfd8660a06d56a47
|
|
|
|
|
|
|
| |
Make default thumbnail size match the default still capture size aspect ratio.
Bug: 10885012
Change-Id: If46da9508d3b71992f0e14a35c600b7e8d347f4e
|
|
|
|
|
|
|
|
| |
Until a cleaner solution is implemented, force buffer queues to
consumers that set USAGE_HW_TEXTURE usage to be asynchronous.
Bug: 10949105
Change-Id: I69e6b02b773831396767c282ce8c5936c5d41f03
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Bug: 10904541
Bug: 10360518
Change-Id: Ie9ca6b3b0b5f2fe529e6b0decc193096e770a017
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| | |
Bug: 10860639
Change-Id: I39be64abaf79b49b2d1f74e1c2ab2adf718ae701
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The camera1 API allows for either setPreviewFrameRate or
setPreviewFPSRange, so both values may or may not change in a single
setParameter call.
The disambiguation of which setting has been changed since the last
setParameter() call was not fully correct, so a sequence of changes
that only changed setPreviewFPSRange or didn't change either could be
interpreted as as a change to setPreviewFrameRate.
Bug: 10842868
Change-Id: I40baeced80a58f09f8a1742ece8dd5e141e9c1e3
|
|/
|
|
|
|
|
|
|
|
| |
Instead of using the application-selected preview FPS range for still
captures, select the widest FPS range advertised by the device and use
it for still captures instead, to give the HAL the widest range of exposure
values to choose from possible.
Bug: 10842868
Change-Id: I0e24f5eb713a4f8df116cd5979a84390cc0974d7
|
|
|
|
|
|
|
|
| |
- Also use android.sensor.orientation to set the right transform
flags automatically.
Bug: 10804238
Change-Id: I10caf8331f19e107c461696963cc10f597c91d83
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is to work around HAL implementations that expect to see an
ID for every trigger.
Use a dummy trigger ID of 1, since 0 has special meaning for older
HALs.
Bug: 10720617
Change-Id: I9cb1b8dbcb113cb9e737e5adb04032fd61a54c12
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Calling setCallBackWindow without checking the previewCallbackSurface could make
the stream to be deleted during callback stream operation, which is bad because
the preview is still active and the delete fails.
Bug: 10730496
Change-Id: I8addac25e5aa7901bf200d730c749bee2c088090
|
|/
|
|
|
| |
Bug: 10749544
Change-Id: I6096effde03e18ee1b8c63cf3b36dce0344054c5
|
|
|
|
|
|
|
|
|
|
|
| |
The ANDROID_SCALER_AVAILABLE_PROCESSED_SIZES can provide sizes as large
as jpeg sizes, which could cause potential issues when trying to do
full size still capture and full size preview. This is not supported
by many devices due to hardware limitation. This change limits the
preview (as well video) size to no more than 1080p.
Bug: 10625115
Change-Id: I9467ab843553ec06e8249b4a17c0ecf4c6d6f04e
|
|\ |
|
| |
| |
| |
| |
| | |
Bug: 10606535
Change-Id: I0dd5ca3e09f45701659ab9ebd3b51939a2f6e6ba
|
| |
| |
| |
| |
| | |
Bug: 10604704
Change-Id: I223ac5d200eb6439c08955fb7ad586592099fbae
|
|/
|
|
|
| |
Bug: 9924539
Change-Id: Ief39eff79c31f2c2aa5df2fe1a0f04c4afc74690
|
|\
| |
| |
| | |
stopPreview()." into klp-dev
|
| |
| |
| |
| |
| | |
Bug: 10414772
Change-Id: I928cb3935afb101da8a7931f88c27dccdb03b4a9
|
|/
|
|
|
|
| |
Bug: 10620944
Change-Id: I44c0d09a3d313ae8f724fbe61fa5f36cf5b38b6d
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, we only wait 200 ms for the HAL to switch to the precapture
state. This is insufficient at low preview frame rates (dark
conditions, ~10 fps), where a 3-request-deep HAL pipeline will take
300 ms to produce a precapture trigger output. In those cases, we
would prematurely skip the precapture sequence, causing bad quality
pictures.
Since this is a fallback timeout to prevent deadlock in case of a bad
HAL or framework implementation, increase the timeout to 1 second. Has
no impact on correctly-working implementations
Bug: 10430191
Change-Id: I08e99f8e7f3beb8f15dcee32632cdebfe3dca8b3
|
|\
| |
| |
| | |
klp-dev
|
| |
| |
| |
| |
| | |
Bug: 10552448
Change-Id: Ie93ba744ae6705aa657f980ae8e08ec624feeb39
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
RequestThread's internal busy flag (mPaused) was not being immediately
set when new work was submitted to it. This allowed for a race
condition where a capture() followed by an immediate
waitUntilDrained() would immediately return from the wait.
Set the mPaused flag to false immediately in capture() and
setStreamingRequest() to avoid this, instead of waiting until the end
of the next RequestThread iteration.
Bug: 10531739
Change-Id: I54a79fe5361d527ec717f41ad805e9b319a48cd8
|
|
|
|
|
|
|
|
| |
- On HAL2 devices, fall back to wait until idle
- On HAL3 devices, call HAL flush method
Bug: 9758581
Change-Id: Ie1c570a15f6590a1ee6c271e3b989c48079b468a
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Use the controlledByApp flag to make sure application-bound
preview buffer queue is asynchronous as before
- Remove setPreviewDisplay in service, since it is no longer in
the binder interface
- Rename setPreviewTexture to setPreviewTarget, to make it clear it's
the only game in town now. Rename only on the binder level and service
for now.
Bug: 10312644
Change-Id: Icd33a462022f9729a63dc65c69b755cb7969857e
|
|
|
|
|
|
|
|
| |
Bug: 10361136
-Connect calls now return status_t error flags.
Change-Id: Idca453b111e5df31327f6c99ebe853bb2e332b95
|
|
|
|
|
| |
Bug: 9265647
Change-Id: Iefabc11e4bd2e2e8ffd31160476c450affe6629c
|