| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Memory allocation for AudioTrack fails because the heap gets
fragmented and free chunks of the size requested are not available.
- Increase the current heap size to 4 MB to ensure that there is
always a free chunk to accommodate the requested size.
Change-Id: Idf0d3e6c2abbf2f0fa048885acb3200d2a7c16b7
|
| |
| |
| |
| |
| |
| |
| | |
Warn allocation failures explicitly rather than crash
trying to access unallocated memory
Change-Id: Ie86c3ac130917e1f4030eb8207ac8350cba7711d
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add support for QTI audio resampler
audio: Audio resampler support for 192Khz playback
Change-Id: Ia8f24a0874ebf6e16ef7bd1f2759a14f47149875
audio: Add audio mixing support for qti resampler
Change-Id: Ib657aa12b2a72323564148c302ff8891e1bb7433
AudioMixer: Extend use of QTI resampler for 44.1Khz sampling rate
Change-Id: I2a819dbc9f1e3e280cb4fa79328e331883a3e981
AudioMixer: fill 0s at right place when no more buffers available
Change-Id: I50504c5a02eb0c69abfc9b047792b0f6f85b9ce8
audioflinger: add channel count check to use QTI resampler
Change-Id: I8f76dd82b72a0dd8b77343e77e0d0545e1be2114
Change-Id: Ia8f24a0874ebf6e16ef7bd1f2759a14f47149875
|
| |
| |
| |
| |
| |
| | |
- add support for effects on direct pcm output
Change-Id: I2fbac63c623bf51a03e5e91828369739d33329f3
|
| |
| |
| |
| |
| |
| | |
allow effects in case outout is direct pcm
Change-Id: I2ad7eacf11642a4ca9f892b61124293d0dc503a9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Playback of 24 bit 192kHz clips fails during device switch
between wired headset and BT when repeat track is enabled.
- Memory allocation for AudioTrack fails because the heap gets
fragmented and free chunks of the size requested are not available.
- Increase the current heap size to 2MB to ensure that there is
always a free chunk to accommodate the requested size.
CRs-Fixed: 855910
Change-Id: I2eb18b15557fa264fb66ff282746cad4e6c718f7
|
| |
| |
| |
| |
| |
| |
| | |
-dumpsys logs show unknown format for PCM offload playback.
-Add PCM offloading formats for logging.
Change-Id: I4dbb8721c7e1d1f9d51bb1f964648046e7c09875
|
| |
| |
| |
| |
| |
| |
| |
| | |
Effect command doesn't necessarily fill cmd return code into &cmdStatus,
so we should initialize cmdStatus to avoid uninitialized value propagates
to upper stack caller.
Change-Id: I5694616c9d3d66071241958f54a03b8d3b9d881e
|
| |
| |
| |
| |
| |
| |
| | |
-Offload track invalidation is needed during SSR
to switch from Offload to deep buffer playback.
Change-Id: I728cfcadc8cd734914b94000a711d1e86bcfad9d
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This increase is needed to accommodate higher sampling rate clip
playback over devices like BT and to support gapless playback with
larger buffer sizes. In both cases, the cblk memory allocated for a track
can be high enough that a new allocation (either due to restoreTrack_l or
opening a new track) can fail.
Change-Id: I96f674706184f029259802d5552f5ceeebc689c1
CRs-Fixed: 768106
|
|/
|
|
|
|
|
|
|
|
|
| |
-Clear effect buffers in threadloop_mix() in case audio
effects enabled when output threads are not ready
-Also clear mix buffers in threadLoop_sleepTime()when tracks
are not ready
CRs-Fixed: 765749
Change-Id: I475d42ac0cc68e4856002a9bd4c6c256a6fca70c
|
|
|
|
|
|
|
| |
If no data, should return 0 frame count and NULL ptr.
Bug: 23293002
Change-Id: Ib5364e5bceb15c2dddc4a16e85299b409cf4e137
|
|
|
|
|
|
|
|
|
|
|
| |
Add a bit to tell the HAL that the PCM data is really encoded audio
wrapped in a data burst.
Otherwise the device may try to play the encoded data directly
which will sound like modulated white noise.
Bug: 22576112
Change-Id: Ib140da96876e849023858fe2510612310501d1ee
Signed-off-by: Phil Burk <philburk@google.com>
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
and small buffer size. Also:
Pull out the magic number "12 ms" to a named constant.
Remove obsolete AudioFlinger::mPrimaryOutputSampleRate.
Bug: 22662814
Change-Id: I261f75a222c4505a84aad2493d251bd2dea59f68
|
|/
|
|
|
| |
Bug: 22173057
Change-Id: I8f5056ff5a1252c71a3d3b354440551bcd9fd466
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The AudioFlinger kept pausing the audio when playing compressed AC3 or DTS.
This caused pause/resume loops that were hard to break out of.
The AudioFlinger was thinking that the compressed audio was PCM
because the HAL was in PCM mode playing SPDIF data bursts.
It also thought that EAC3 was at 192000 Hz instead of 48000
Hz because the data bursts are played at a higher rate.
This CL adds more calls to the shim that separates the AudioFlinger.
Now the AudioFlinger gets information about the HAL sample rate,
channel masks and format from the shim instead of calling the HAL directly.
The AudioFlinger now uses a different threshold for detecting
underruns when the audio is compressed.
Bug: 19938315
Bug: 20891646
Change-Id: Ib16f539346d1c7a273ea4feb3d3afcc3dc60237d
Signed-off-by: Phil Burk <philburk@google.com>
|
|\
| |
| |
| | |
mnc-dev
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Send flush command to the audio HAL when transtioning to
next track on direct output thread, even if both tracks are in the
same audio session.
Commit 43b4dcc to fix issue 21145353 did only flush the HAL if the
audio session was different for the new track because the logic was
copied from the offload thread.
Bug: 22019044.
Change-Id: I89b217580023ed7449a58e9bf3dc068ce7a84487
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- audio policy:
Force device change to ensure new audio patch creation
upon first track activity on a given output.
Fix function device_distinguishes_on_address() which could mistake
some output device with remote submix input device.
- audio flinger:
Reduce number of binder calls upon new client registration by only
sending ioConfigChanged() callbacks to newly registered client.
Fix first patch after output thread creation not triggering an
ioConfigChanged() callback.
-audio system:
Force client registration upon routing callback installation to force
new ioConfigChanged() callback from audio flinger.
Bug: 22381136.
Change-Id: Ieb0d9f92f563a40552eb31bc0499c8ac65f78ce4
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The HAL does not reset the frame position on standby().
But applications expect the frame position to be reset.
So we subtract the position at standby from the current position.
Bug: 21724210
Bug: 21930805
Change-Id: I0c4520ba1c6c06a580f45f6bafc8cf1d56969f07
Signed-off-by: Phil Burk <philburk@google.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
PatchPanel::clearPatchConnections deletes PatchRecord before
the peer PatchTrack is stopped. This can cause an access to already
free'ed memory leading to a crash in PatchTrack::getNextBuffer.
Fix is to delete PatchRecord and PatchTrack only after removing
both of them from active tracks list
Bug: 22304526.
Change-Id: I7003756d3d2dd8912ce5e3b2fc31f5e82f455888
|
|/
|
|
|
| |
Bug: 22068684.
Change-Id: Idde0eaf7121d2e43f32eee3e6b10e99d8cff4912
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reduce the number of audio port, audio patch and
IO config changed binder calls from mediaserver to
client processes:
- Do not call IO config changed callback if selected
device is the same as previously selected one on a given
audio flinger playback or capture thread.
- Do not call the audio port or audo patch list update
callback on a client if this client as no listener registered.
Bug: 22045560.
Change-Id: If780e105404de79b7cb5c80c27b793ceb6b1c423
|
|\
| |
| |
| | |
into mnc-dev
|
| |
| |
| |
| |
| |
| |
| | |
Centralized validation code
bug: 20701446
Change-Id: I9d9941c7639c05b2afe069ff4f858c693c910bfe
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | | |
Bug: 21959591
Change-Id: Ia3351ea5644b36852a1f0dad1314beac97d840e1
|
|\ \ \ |
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | | |
This may prevent corrupt data from reaching the AVR.
Bug: 19604395
Change-Id: I3dbdd002326917b9f14dda46a3e5170e1ec799bb
Signed-off-by: Phil Burk <philburk@google.com>
|
|\ \ \
| |_|/
|/| |
| | | |
into mnc-dev
|
| |/
| |
| |
| |
| | |
Bug: 20706338
Change-Id: I7e3ab0da96901870cc57fbe2e79163bc81157465
|
|/
|
|
|
| |
Bug: 21858740
Change-Id: I8f291b64c1033867bb57ffceaa3b7d94aa998715
|
|\ |
|
| |
| |
| |
| |
| | |
Bug: 11671194
Change-Id: Id48350264f8b5ce53bf7ce2b308bf4ba21e59241
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
For direct threads, when recycling a stream, perform a flush so
that the frame position is reset.
Bug: 21145353
Change-Id: I08611cd64bb249a9659c44f9e4c47e7455f4838f
Signed-off-by: Phil Burk <philburk@google.com>
|
|/
|
|
|
|
| |
Bug: 21375533
Bug: 21721483
Change-Id: I1ccd5d1d68a25f415dc4a62bf7a44d9db12a256b
|
|\
| |
| |
| | |
into mnc-dev
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This helps prevent underruns with NuPlayer and other applications
which set up buffers that are close to minimum size or use deep
buffers, and rely on a double-buffering sleep strategy to fill.
Enabled by default. Disabled by setting af.thread.throttle 0
Bug: 19062223
Bug: 21198655
Change-Id: Ia52b48e0c99588af5db53c43fede2afd775b8899
|
| |
| |
| |
| | |
Change-Id: I4d1e396d812b6a22087d35156633451d5c1c36bc
|
|/
|
|
| |
Change-Id: I3cafd70b7770c7e4b578d39a8d570572829f2c59
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I08553f0e94d0a0931ccf98ee04f53686b96c8b03
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Effects path is always stereo, and it should be initialized as thus even
if the source is mono. Fixed condition check before initialization.
bug: 18157592
Change-Id: Idd7241931e4ba6085fd804345128d898c8511e11
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add suffix to clarify units for the following variables:
standbyTime -> mStandbyTimeNs
standbyDelay -> mStandbyDelayNs
activeSleepTime -> mActiveSleepTimeUs
idleSleepTime -> mIdleSleepTimeUs
sleepTime -> mSleepTimeUs
Change-Id: I7f5d602c39e0ef3f6fe9ef99eaf1b351c7bd4fc3
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If a direct output supports pause, pause the stream
instead of placing it into standby when the audio track
underruns. This will avoid resetting the presented frame count
and preserve A/V sync.
Bug: 21437855.
Change-Id: I598346edb62a1864126acdb1d9a937c82eac2191
|