| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
Change-Id: Ib6a1aa4cee00e0449da30ae158d71403d6236487
|
| |
| |
| |
| |
| |
| | |
Bug: 24310423
Change-Id: Iebcfc58b447f925ec2134898060af2ef227266a3
(cherry picked from commit 8dde7269a5356503d2b283234b6cb46d0c3f214e)
|
|\ \
| |/
| |
| |
| |
| |
| | |
hit fatal error -- DO NOT MERGE" into lmp-dev
* commit 'fecbc5da64a992f91f74ef6c67a7e247b0da7777':
do not dequeue from native window after we hit fatal error -- DO NOT MERGE
|
| |
| |
| |
| |
| |
| | |
bug: 22845824
Change-Id: I8c375790c697e02b6ab3ea54b84d3f70d5e78141
(cherry picked from commit 346de3c26a8fbd0fa0c8102f4a21ea4dcee4432a)
|
|\ \
| |/
| |
| |
| | |
* commit '578d5b66fc9f5e36ca0cb19b21771aa85ec131ee':
Fix crash on malformed id3
|
| |\
| | |
| | |
| | |
| | | |
* commit 'd6ea7f65dd31d5dacf497cc3c494d4fa3910f7c3':
Fix crash on malformed id3
|
| | |\
| | | |
| | | |
| | | |
| | | | |
* commit 'f26400c9d01a0e2f71690d5ebc644270f098d590':
Fix crash on malformed id3
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Bug: 22954006
Change-Id: I488cb1e2c69fc7043b6040481b30fa866000515d
|
| | |\ \
| | | |/
| | | |
| | | |
| | | |
| | | |
| | | | |
detect malformed MPEG4 nal sizes" into klp-dev
* commit '7acac10aae34da5ae4d628c5a270e7e3e94f7598':
DO NOT MERGE: Add AUtils::isInRange, and use it to detect malformed MPEG4 nal sizes
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
nal sizes
Bug: 19641538
Change-Id: I5aae3f100846c125decc61eec7cd6563e3f33777
|
|\ \ \ \
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | | |
malformed MPEG4 nal sizes" into lmp-dev
* commit 'c531d9956513b9b82dad84aeb507b866e6b3951a':
Add AUtils::isInRange, and use it to detect malformed MPEG4 nal sizes
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Bug: 19641538
Change-Id: I5aae3f100846c125decc61eec7cd6563e3f33777
|
| |\ \ \
| | |/ /
| | | |
| | | |
| | | |
| | | |
| | | | |
bound array size in queryDefaultPreProcessing
* commit '99370d2da54d7537ffda7fef1f6ef36f8b690321':
IAudioPolicyService: bound array size in queryDefaultPreProcessing
|
| | |\ \
| | | |/
| | | |
| | | |
| | | |
| | | |
| | | | |
in queryDefaultPreProcessing
* commit 'ae6965ae7664aaea489a8d58358035610075c9af':
IAudioPolicyService: bound array size in queryDefaultPreProcessing
|
| | | |\
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
queryDefaultPreProcessing
* commit '3aef35600523eb6b4ccc8086a8913e80701a031a':
IAudioPolicyService: bound array size in queryDefaultPreProcessing
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Bug: 18226810.
Change-Id: Ib8e2bfe835a8681aac50bf23161db14e50c9a124
(cherry picked from commit 74adca9ad30b7f8a70d40c5237bade0d16c4ea58)
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Hold a wakelock while paused in audio offload mode, until audio
teardown event is received, or pause is canceled.
Since ARM cores are sleeping, the delayed AMessage will not be
received, and the audio output driver will not be closed.
This blocks XO shutdown.
Bug: 19297092
Change-Id: I3d11fef633e3f2783f4aa31e71285e2fa09d234c
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Use software renderer if codec cannot support flex-YUV on a surface
Bug: 17906609
Change-Id: I3d0e3ff5fee7d7b3e2416892968fa18f6139598a
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Bug: 17906609
Change-Id: I14116796eaa94aa8ae62dcc29f67cb7d2c060d34
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Bug: 19110889
Change-Id: Ia8dbe1b77aaac421ec9415884e1248b9b68168dc
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Bug: 17883772
Change-Id: I05f674c33522eec0e6ceeece88dd800b1857b3ab
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | | |
bug: 18916274
Change-Id: I23f096b51433bf18a10dc5fe6dc6b75c3881c340
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Bug: 18691591
Change-Id: Icc402d6ea9b0de4ac642c3b403fb64e865481b2e
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- move logic to set encoder parameters to common encoder class
(similarly to what was done for decoders)
- set compressed buffer size based on frame size and compression ratio,
and codec-specific minimum size
- set raw buffer size based on frame size and metadata mode
- do not set stride and slice height on compressed ports
- advertise only QCIF support for google H263 encoder
- set large-enough input size for video decoders to support adaptive
playback
- do not change input buffer size on output port reconfiguration, as
no input buffer reallocation takes place
- do not return empty buffers with EOS after EOS has been signaled
Bug: 18513091
Bug: 18639027
Change-Id: Ib13492ef66adf331aa4572c67d2b283ea020cb41
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Add binder calls to register and unregister dynamic mixes
to AudioPolicyManager.
Bug: 16009464.
Change-Id: I4ef38166d0cfc88c984970969380d0cd6eb083ac
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Add support for custom mixes in AudioPolicyManager.
Two methods are added to register or unregister a list of custom mixes
with their attributes and format.
getOutputForAttr() and getInputForAttr() first look for a match in
registered mixes before defaulting to normal output/input selection
Remote submix device connection disconnection now takes address into
account to identify the correspnoding custom mix.
Bug: 16009464.
Change-Id: I3f1c2a485a0fb71b1f984ed0adc9b68aa971e408
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Some flags are only set in configure, and get lost when output
format changes.
Bug: 17383204
Change-Id: I2011bce70920c4ee46fccc378da3b428f3395c11
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Added AudioRecord constructor with audio attributes.
Replaced AudioPolicymanager::getInput() by getInputForAttr().
No new functionality for now.
Also:
- Fixed warnings in AudioPolicyManager
- Allocate audio session ID before calling getOutputForAttr() in
AudioTrack.
Bug: 16006090.
Change-Id: I15df21e4411db688e3096dd801cf579d76d81711
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Update getOutputForAttr() prototype and group all logic
dealing with audio attributes to stream type conversion in
audio policy manager.
getOutputForAttr():
- specifies the audio session (for future use)
- returns a status code
- receives either stream type (for legacy) or audio attributes
- returns an updated streamtype
Remove logic dealing with legacy stream types to attributes conversion
from AudioTrack.
Use correct type for audio sessions in other APIs (startOutput() ...).
releaseOutput() specifies the audio session (for future use).
Bug: 18067208.
Change-Id: I1bfbe9626c04c7955d77f8a70aecfad2cb204817
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Do not hold gLockAPS when calling
AudioPolicyService::registerClient() in get_audio_policy_service().
registerClient() will need to acquire the AudioPolicyService mutex and
if at the same time a method called from AudioPolicyService
(with mutex held) calls back into AudioSystem and get_audio_policy_service()
a cross deadlock occurs.
Same preventive fix for get_audio_flinger().
Use a separate mutex for notification client list in AudioPolicyService.
This prevents deadlocking if registerClient() is called as a consequence of
AudioFlinger calling back into AudioPolicyManager while executing a method
with AudioPolicyService locked
Bug: 18403952.
Bug: 18450065.
Change-Id: Ia832e41aede8bc6c843fc615508fbdd74e0863b5
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fix cross deadlock with AudioFlinger by adding
a dedicated mutex to protect access to cached output list
and parameters.
Bug: 18410728.
Change-Id: Ia31283b1972d8865a46e84e63695173c187eb781
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
It is safer to query the output sampling rate once the output
have been acquired by calling getOutputForAttr().
Bug: 16009464.
Change-Id: Ib561facd19fba5359a6b837d75f1a1cd2dc51b29
|
|\ \ \ \ \ \ |
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Bug: 18285408
Change-Id: I56346f4652b2c5f7ef5fa3003fd8676051339384
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Async mode reduces the number of messages posted between
MediaCodec and MediaCodecSource. This reduces thread
wakeups and helps reduce CPU utilization.
Bug: 18246026
Change-Id: I4b0837f309fdd12e323c1dfa72525f5a31971a03
|
|\ \ \ \ \ \ |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
1. Fix race condition in handling of binder death notifications.
AudioSystem has a mixture of APIs for both ordinary app clients,
and the AudioFlinger and AudioPolicy services within mediaserver.
Due to this mix of uses, it is possible for there to be "surprising"
sequences of calls on the call stack.
Previously, we used a single mutex for all global variables, but
this caused a deadlock. To avoid the deadlock, we unlocked the mutex
during the critical sequence of calls. But this was a a
crucial place where it should have stayed locked;
see Change-Id I315c1c5066f62b05e1c13b04fae1272b5fbce977
Now we use separate mutexes for the AudioFlinger, AudioPolicy, and audio port
related global variables. This allows us to correctly hold each mutex
throughout the atomic region, even when AudioFlinger calls AudioPolicy
via AudioSystem, or vice-versa.
2. AudioSystem::clearAudioConfigCache now clears the IAudioFlinger reference.
3. Make AudioSystem::get_audio_policy_service more like get_audio_flinger.
Bug: 18242291
Change-Id: I9761443d8337df5bf66d4ca2316a9fd0bd11be94
|
|\ \ \ \ \ \ \ |
|
| |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Passes the BufferItem for the queued buffer to the onFrameAvailable
callback so the consumer can track the BufferQueue's contents.
Bug: 18111837
Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
|
| |/ / / / /
|/| | | | |
| | | | | |
| | | | | |
| | | | | | |
Bug: 18067208.
Change-Id: I9bbf9088485f5162c765ca504d9b784b956234c6
|
|\ \ \ \ \ \ |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Change-Id: I56cd557ce3525fe625db8c312d2557d3c8b51101
related-to-bug: 16034599
|
|\ \ \ \ \ \ \
| |/ / / / / / |
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
b/18053197
b/18076411
Change-Id: I923dc893d48c70bf17980007b32f0ac5dfd22896
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | | |
Bug: 18226810.
Change-Id: Ib8e2bfe835a8681aac50bf23161db14e50c9a124
|
|/ / / /
| | | |
| | | |
| | | |
| | | | |
Bug:18120688
Change-Id: Ia66dcfc3fd2d67d1ceba9808d21e0120cc8691d6
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
into lmp-dev
|