| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
AsyncCallbackThread must check for any condition that
has already been satisfied before waiting.
Bug: 11824817
Change-Id: Ic8c2090d521ecd6a30b76ee75635258d35eb1eff
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I158f147295eebcea96e4047d7618069bc48bdd7d
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Commit 9da3d95 surfaced a problem caused by the use of a raw
pointer to a track in offload thread implementation.
Pointers to tracks should always be weak or strong pointers.
Bug: 11708529.
Change-Id: Ic48632532d186c9be8261f73cefdf824b9fbbd2b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make sure that when transitioning from one active
offloaded track to the next we flush DSP content
if both tracks are not on the same audio session.
This happens when switching between two applications
playing the same type of content (e.g MP3, stereo, 44.1).
In this case, we reuse the same output thread because the track
formats are compatible.
Bug: 11247103.
Change-Id: I2b9031591149adeb70766da5e0d21ff2933a37e8
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When pausing and resuming during the drain,
the drain sequence number shuold not be modified
otherwise the drain callback will be ignored.
This causes failure to notify end of stream to audio
player and transition to next song.
Bug: 11247103.
Change-Id: I2a35c5cc3fd6aa667cdd257f9e9cc8715cef5159
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- 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
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Underruns on tracks handled by a direct or offloaded
threads were not properly reported to the applications
causing a failure to automatically recover.
Bug: 11535001.
Change-Id: I7a8696b4d646f78b16710addfe7c108d0dd0038d
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Commit fd47797 fixing issue 11247103 introduced a regression
where the duplicating thread does not exit standby state as
expected. This in turn prevents the tracks sending audio to
other threads to complete their activity cycle normally.
The fix conists in clearing mStandby state also in the specialized
threadLoop_write() method of DuplicatingThread subclass.
Bug: 11451415.
Change-Id: Ie8a92c819a56a2834ea25fa70a8b7b2125721775
|
|\ \ \
| | | |
| | | |
| | | | |
dumpsys" into klp-dev
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Bug: 11324229
Change-Id: Ic920e170a8f5a389fc139bbf5416c0e3186c7fb6
|
|\ \ \ \
| |_|/ /
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This fixes a bug where effects were not properly reenabled after
being moved from one playback thread to another. The effect
is enabled but the audio policy manager sees it as disabled.
Bug: 11181933.
Change-Id: I19cac7acbaf61c546e667fd85ed7d4eda1c716d8
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
mStandby being false was not a reliable indication that
something had been written to audio HAL.
Considering the last track in mActiveTracks vector as the
latest activated track was wrong as this is a SortedVector.
Bug: 11247103.
Change-Id: I397d011c5afcdd779def3fe25aaae7669a472cfc
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Set a work source for the playback wakelock, so that playback is
counted against the requesting app instead of the media server.
Cherrypicked from master.
b/9464621
Change-Id: I7329f88a288a95a582a78005a1c3d16a5a611e31
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
After AudioTrack start checks for pending flush,
allow releaseBuffer on any previously obtained buffer.
For example, this can happen if the resampler has obtained
a buffer but not released the whole buffer yet.
Note that the resampler will be reading obsolete data.
Bug: 11285590
Change-Id: I0614fbb62e43604aac3089cce4b7797c87a306b5
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When a track is terminated before any audio was written,
we should not send a drain request to the HAL. The drain
will be ignored and we will wait the async callback for ever.
Also fix a potential deadlock by not deleting a track with the
thread mutex held: mPreviousTrack changed from a sp to a raw pointer.
Bug: 11247103.
Change-Id: I0a4b47b099204c7c326d45d700234ab8f72d8eae
|
| |/
|/|
| |
| |
| | |
Bug: 11259166
Change-Id: I72526cdfd4e3ff4b06e6a317e577f57cc285205d
|
| |
| |
| |
| |
| |
| |
| | |
Only use camera.disable_zsl_mode to control disable/enable ZSL.
Bug: 11258054
Change-Id: Ibf10b959d0913f7dedb59d89b571e9bf66fe978a
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These wakelocks now show up in the client process, where they
might cause wakelock overflows if AudioFlinger threads die often.
The client process should be agnostic of audio flinger threading,
so don't make the wakelock names rely on audioflinger thread names.
Wakelock names now depend only on the audio flinger thread type, and
not the ID itself.
bug: 11200551
Change-Id: Ia1f71b569cb7502d617b77596abc245f461a6ec0
|
|
|
|
|
|
|
|
|
|
|
| |
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: 10888816
Change-Id: I84897dd7d30b370640b54e928f230604b873cb68
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If a pause/flush/resume sequence is fast enough, resume is received while
we are still in PAUSING state in which case it is a NOP. If this happens,
flush is still forwarded to the audio HAL but is not preceeded by a pause
which can cause problems to the audio DSP.
It is necessary to preserve the flush as this sequence is typical to a seek.
The fix consists in forcing a pause/resume when a flush request must be
executed and the audio HAL has not been paused previously.
Bug: 11081559.
Change-Id: Ib84ed26d503a61c05933b923ec556b10cedfe140
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Commit e14a5d6 introduced a bug in ThreadBase::acquireWakeLock() where
the wake lock acquisition return code is not initialized before
being checked causing the wake lock token to be sometines not set
and potential failure to release the wake lock later.
Bug: 10985160.
Change-Id: Iffd40e773ae3bcfec3c148a844d5dbebbf474eaf
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | | |
Bug: 9758581
Change-Id: I1d7135cd0932bd6b453acabfeb9a553985c887bc
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Count wake lock use against the app that initiated the recording,
not against the media server.
b/10985160
Change-Id: Iae6e6c030b7f1c6081d9c79725d6990f60dadaaa
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- 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
|
|\ \ \ \
| |/ / /
| | | |
| | | | |
klp-dev
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
Make default thumbnail size match the default still capture size aspect ratio.
Bug: 10885012
Change-Id: If46da9508d3b71992f0e14a35c600b7e8d347f4e
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Volume: add a method to wake up the mediaserver playback
thread when a volume command is received on an offloaded track.
Effects: call effect chain process on offloaded playback threads
asynchronously from writes to allow effect state updates while
waiting for async write callback.
Bug: 10796540.
Change-Id: Id2747ae88783575d1d7ffd6fc86fbd054ab2c739
|
|\ \
| | |
| | |
| | | |
klp-dev
|