| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
See https://android-git.corp.google.com/g/156016
Bug: 5449033
Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
|
|\ |
|
| |
| |
| |
| | |
Change-Id: Icf23f7f90fdeb660f4015f22cf239e6d05f5d03c
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Renamed audio effect library interface command for audio format
configuration from EFFECT_CMD_CONFIGURE to EFFECT_CMD_SET_CONFIG.
This makes the naming more consistent with other exixsting commands
and allow adding a new command to get the configuration (EFFECT_CMD_GET_CONFIG).
Same change for reverse channel configuration renamed from
EFFECT_CMD_CONFIGURE_REVERSE to EFFECT_CMD_SET_CONFIG_REVERSE.
Implemented EFFECT_CMD_GET_CONFIG in exisitng effect libraries.
Change-Id: Ia7b1c620f13797fe5aceb3b0b4acbacce09fb067
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: If820dfd58b6df258570750610a07af99598d9e53
|
|\ \ \ \
| |/ / /
|/| | | |
|
| | |/
| |/|
| | |
| | | |
Change-Id: Ib8ce72028a7ea30e82baa518e381370e820ebbd0
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Replace series of if/then/elses by easier-to-read switch. Also return
void instead of status_t, since callers weren't checking it. Assert on
bad input parameters.
Change-Id: Ie1f0a297977b28501d20e1af819afed9b4750616
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
This is safe, as the input parameter is always track->name(),
which must be valid.
Change-Id: Iea8ea3a5706c27026335526ba8851030d00681f8
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Return void, not status_t, from setActiveTrack and setBufferProvider.
These methods returned status_t, but the callers never checked the
return value. Since these aren't externally visible APIs, they now
return void, and assert on bad input parameters.
Change-Id: I530ed29484596ae41e8659826ca425149c51c2a1
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | | |
The MIXING enum isn't needed, and now returns void instead of status_t.
Change-Id: Ibe4ec24081d75ad4ab78b9c7191fc9077959c4e9
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A Vector of pointers is risky, as there is no ownership (and the
ThreadBase destructor was not deleting them, so if there were any left
over at end it would leak). Replaced by a Vector of values.
Change-Id: Iddde72dc30134adfcf724dec26cbe0a742509b8c
|
|\ \ \
| |_|/
|/| | |
|
| |/
| |
| |
| | |
Change-Id: Iab3f9abbdab617dc5a599e657ec46a0b0a002eef
|
|\ \ |
|
| |/
| |
| |
| |
| |
| | |
Use git diff -w to verify.
Change-Id: Ib65be0a1ecf65d6cad516110604e3855bf68a638
|
|\ \ |
|
| |/
| |
| |
| | |
Change-Id: I8ce9aff4038cd7fa0067600faa8080b137db1939
|
|\ \ |
|
| |/
| |
| |
| | |
Change-Id: I47e3849f048d4d990c9634f9c8a2ca2de0339e93
|
|\ \ |
|
| |/
| |
| |
| | |
Change-Id: I84906ebb9dfcfa5b96b287d18364b407f02a30c1
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| | |
Use const char [] instead of const char * to eliminate unnecessary pointer.
Make the array audio_interfaces also const, in addition to the strings.
Change-Id: I31f33d1dcb9a657ee136f4280fd2d46492496831
|
|\ \ |
|
| |/
| |
| |
| | |
Change-Id: I48d3f29c37228b5d03189e4c9600824c9360cac9
|
|\ \ |
|
| |/
| |
| |
| | |
Change-Id: Ie5e4e63cbc8fa85ef50451dddf8f149fa864b132
|
|/
|
|
|
|
|
|
|
|
|
| |
Remove unused #include dlfcn.h
Add #include String8.h
Forward class declaration is only for references and pointers.
In this case, we need the full class declaration,
and were incorrectly depending on another header file to do it.
Change-Id: Iff65cceb3982698cc1ebaeec405695fc190c03ff
|
|\
| |
| |
| |
| |
| |
| | |
into ics-mr1
* commit '5433e25f6ce013860ff2a074ad8d1158cc39ab91':
audioflinger: fix audio skipping over A2DP
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The maximum sleep time allowed in the mixer thread when audio tracks
are enabled but not ready for mixing is derived from the latency
reported by the output stream.
This does not work for A2DP where the latency also reflects encoding, decoding
and transfer time.
Modified activeSleepTimeUs() to take A2DP case into account.
Issue 5682206.
Change-Id: I3784ac01fb6f836b5a6ce6f764fb15347586de35
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | | |
bug:5534973
Change-Id: Iaadcb2738ad040f94849be30ee531326f6199431
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| | |
underrun" into ics-mr1
* commit 'f6422f5f5d04aab47f8f36a0ea92e2140bed0105':
audioflinger: reduce sleep time to avoid underrun
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Progressively reduce the sleep time applied in MixerThread::threadLoop()
in case of consecutive application underruns to avoid starving the audio HAL.
As the default sleep time is longer than the duration of an audio buffer
we ended up writing less data than needed by the audio HAL if
the condition persisted.
Issue 5553055.
Change-Id: I2b23ee79c032efa945025db228beaecd1e07a2e5
|
| |
| |
| |
| |
| |
| |
| | |
PIE did not work together with inlining. This change combines (almost
all of) the performance benefits of ARM optimizations together with PIE.
Change-Id: I4594d33ae5a0a7bac327ae08e30fb35343a06256
|
|\ \
| |/
| |
| |
| |
| |
| | |
next song" into ics-mr1
* commit '25924f8f6c0a4ca4a2eb257b72d9625f69d2525e':
audioflinger: fix noise when skipping to next song
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When audio effects are enabled, a noise can be heard at the
beginning of the new song when skipping to next song in music app.
This is because some effects (especially virtualizer) have a tail.
This tail was not played when previous song was stopped because effects were
not processed when no tracks were present on a given session. This is to
reduce CPU load when effects are enabled but no audio is playing.
The tail was then rendered when the new song was started.
Added a delay before stopping effect process after all tracks have been removed from a session.
Issue 5584880.
Change-Id: I815e0f7441f9302e8dfe413dc269a94e4cc6fd95
|
|\ \
| |/
| |
| |
| |
| |
| | |
ics-mr1
* commit 'db7d79e6f1e1860a9bfe4756a03c753435fd0ddf':
Fix regression for SoundPool playback
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Commit 19ddf0eb introduced a problem with applications (like SoundPool)
relying on an underrun condition to detect end of playback instead of
stopping the track when all data is written.
AudioFlinger would keep waiting for new data in case of partial buffer
filling and never reach the underrun condition.
Added a mechanism to wait no more than once if not enough frames are present
in the track buffer.
Issue 5585490.
Change-Id: I131e605ff6070831a01ddf734e68459e3bf2354b
|
|\ \
| |/
| |
| |
| | |
* commit 'f3a892ab9347ce733b81ccb4913a91c586f8f367':
AudioFlinger: mix track only when really ready
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The addition of low power audio playback mode made that audio buffer consumption
by audio HAL can now happen in bursts. This makes that requesting audio data
from an AudioTrack for mixing can happen at much shorter intervals than before.
This revealed an existing problem where AudioFlinger would consider a track ready
for mixing although not enough frames were ready to completely fill one output buffer,
thus creating short periods of silence.
The fix consists in waiting for enough frames to be ready in AudioTrack buffer before
declaring a track ready for mixing. This minimum is not applied when the track is stopped
to allow the buffer to be emptied completely.
Change-Id: I6d04f9b65db5af85b0b53f0a5674be7ec02f9e9f
|
| |
| |
| |
| | |
Change-Id: I21d91d7a24df7bb6e7fc3d0fbc4786d55391fc0e
|
|/
|
|
|
|
|
| |
See https://android-git.corp.google.com/g/#/c/143865
Bug: 5449033
Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
|