summaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* am 06f99521: am 2aa82e78: Merge "MediaCodecList: handle binder death" into ↵Lajos Molnar2014-12-151-0/+6
|\ | | | | | | | | | | | | lmp-mr1-dev * commit '06f9952190357426445344090b4e20b8758a118a': MediaCodecList: handle binder death
| * MediaCodecList: handle binder deathLajos Molnar2014-12-121-0/+6
| | | | | | | | | | Bug: 18691591 Change-Id: Icc402d6ea9b0de4ac642c3b403fb64e865481b2e
* | resolved conflicts for merge of 6571ed31 to lmp-mr1-dev-plus-aospLajos Molnar2014-12-111-0/+6
|\ \ | |/ | | | | Change-Id: Ibaea3a0766f75a61964615482a9ef28651a42b37
| * stagefright: misc fixes to software video encoders (and decoders)Lajos Molnar2014-12-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* | Merge commit 'f5a968a0' into mmGlenn Kasten2014-12-102-0/+6
|\ \ | |/ | | | | Change-Id: Ifd30546c11def40ad483f27c9d7baa4008fcbac3
| * audio policy: binder calls for dynamic audio policy mixesEric Laurent2014-12-092-0/+6
| | | | | | | | | | | | | | | | | | Add binder calls to register and unregister dynamic mixes to AudioPolicyManager. Bug: 16009464. Change-Id: I4ef38166d0cfc88c984970969380d0cd6eb083ac
* | am c49d9cda: am 2dda40d6: Merge "audio policy: add support for custom mixes" ↵Eric Laurent2014-12-102-1/+83
|\ \ | |/ | | | | | | | | | | into lmp-mr1-dev * commit 'c49d9cda49dab8b7dd0376cf56476b3e1895d5c6': audio policy: add support for custom mixes
| * audio policy: add support for custom mixesEric Laurent2014-12-092-1/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | am 6874ed79: am a9d2f9fb: Merge "stagefright: preserve output format flags ↵Lajos Molnar2014-12-081-0/+1
|\ \ | |/ | | | | | | | | | | on format change" into lmp-mr1-dev * commit '6874ed79fd525cf5d6ec8a953475c14f5a185cb4': stagefright: preserve output format flags on format change
| * stagefright: preserve output format flags on format changeLajos Molnar2014-12-051-0/+1
| | | | | | | | | | | | | | | | Some flags are only set in configure, and get lost when output format changes. Bug: 17383204 Change-Id: I2011bce70920c4ee46fccc378da3b428f3395c11
* | am 390ef843: am f20c4356: Merge "AudioRecord: use audio attributes instead ↵Eric Laurent2014-11-273-13/+18
|\ \ | |/ | | | | | | | | | | of audio source." into lmp-mr1-dev * commit '390ef84373b7edd1397381f780ca235326357094': AudioRecord: use audio attributes instead of audio source.
| * AudioRecord: use audio attributes instead of audio source.Eric Laurent2014-11-253-13/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | am bf14c62e: am 72bf901c: Merge "audio policy: new getOutputForAttr() ↵Eric Laurent2014-11-264-21/+83
|\ \ | |/ | | | | | | | | | | prototype." into lmp-mr1-dev * commit 'bf14c62e7973ed793a3b00c2c67beca4484c1c7a': audio policy: new getOutputForAttr() prototype.
| * audio policy: new getOutputForAttr() prototype.Eric Laurent2014-11-254-21/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | am f8c2d166: am a7cf01da: Merge "Fix missing loop count for static tracks." ↵Glenn Kasten2014-11-211-1/+8
|\ \ | |/ | | | | | | | | | | into lmp-mr1-dev * commit 'f8c2d1665393d8e0620a7129ef3865f34489e6ef': Fix missing loop count for static tracks.
| * Merge "Fix missing loop count for static tracks." into lmp-mr1-devGlenn Kasten2014-11-201-1/+8
| |\
| | * Fix missing loop count for static tracks.Andy Hung2014-11-181-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | StaticAudioTrackServerProxy::framesReady() previously returned only the contiguous frames, update to return the total available frames. This resolves short-count looping in SoundPool for FastTracks. Also (1) Removes the racy condition of reading two variables and (2) Fixes buffer->mNonContig to return the correct value and (3) Restores behavior that loop count of 1 goes back to loopStart once during playback. Bug: 11830751 Bug: 12070295 Bug: 17456842 Change-Id: I64906e6036bb00a1d7375b03efe6deb69d6478ca
* | | am 568689b1: am 3a2a32b5: Merge "AudioSystem: fix cross deadlock" into ↵Eric Laurent2014-11-211-2/+2
|\ \ \ | |/ / | | | | | | | | | | | | | | | lmp-mr1-dev * commit '568689b169d8b0ae2cc252b88602db5e5acaa604': AudioSystem: fix cross deadlock
| * | AudioSystem: fix cross deadlockEric Laurent2014-11-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | am 902dc42d: am 07715ac3: Merge "C++11 compatibility."Dan Albert2014-11-201-4/+5
|\ \ \ | | | | | | | | | | | | | | | | * commit '902dc42d79b075395d484ce1c71f215b199aaa2a': C++11 compatibility.
| * | | C++11 compatibility.Dan Albert2014-11-201-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix string literal concatenation to not be interpreted as UD literals. * Add constexpr compatibility for non-integral static members. * Use __typeof__ instead of typeof (should become decltype once this actually becomes C++11). * Add an appropriate cast for atomic_uintptr_t, since moving to C++11 means moving from <stdatomic.h> to <atomic>, which has better typechecking (hooray for not macros!). Bug: 18466763 Change-Id: I9561dcb2526578687819ff85421ba80d8e1a9694
* | | | am 4fd641be: am bbda5ce4: Merge "AudioSystem: Add mutex for output cache" ↵Eric Laurent2014-11-191-4/+5
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | into lmp-mr1-dev * commit '4fd641be9fed70743ca4fe823b69e74c258ce275': AudioSystem: Add mutex for output cache
| * | | AudioSystem: Add mutex for output cacheEric Laurent2014-11-191-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix cross deadlock with AudioFlinger by adding a dedicated mutex to protect access to cached output list and parameters. Bug: 18410728. Change-Id: Ia31283b1972d8865a46e84e63695173c187eb781
* | | | am d86450b9: am c80b9b83: Merge "Fix struct vs. class mismatches"Chih-hung Hsieh2014-11-171-1/+1
|\ \ \ \ | | |/ / | |/| | | | | | | | | | * commit 'd86450b93ab3960ccd68aed14563aaa76b43ce9b': Fix struct vs. class mismatches
| * | | Fix struct vs. class mismatchesBernhard Rosenkränzer2014-11-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix something being declared a struct and forward-declared a class and vice versa. gcc doesn't care, clang complains about the mismatch. Change-Id: I7a7a8e9040e3c86fa1d73eb112631ea140861657 Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
| * | | am af238382: Merge "Fix VideoFrame class layout for 64/32 bit" into lmp-devMarco Nelissen2014-10-091-1/+4
| |\ \ \ | | | | | | | | | | | | | | | | | | | | * commit 'af238382e33a027494a53556e6104b7245e7213f': Fix VideoFrame class layout for 64/32 bit
| * \ \ \ am 584c14c3: Merge "stagefright: do not allocate output buffers for tunneled ↵Rachad2014-10-071-0/+2
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | playback" into lmp-dev * commit '584c14c370f141685b7e8963a13ed91584383ca1': stagefright: do not allocate output buffers for tunneled playback
| * \ \ \ \ am 57c27c55: am dc28fa7e: Merge "Add missing #includes"Dan Albert2014-10-044-2/+7
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '57c27c55006f0137a8ad5a87ec62eb89084dcdc6': Add missing #includes
* | \ \ \ \ \ am 990dad99: Merge "remove AudioSystem::getOutputSamplingRateForAttr()" into ↵Eric Laurent2014-11-141-2/+0
|\ \ \ \ \ \ \ | | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lmp-mr1-dev automerge: 0e8a328 * commit '0e8a3284c6828e561f58e66a014c3b7ee37325cf': remove AudioSystem::getOutputSamplingRateForAttr()
| * | | | | | Merge "remove AudioSystem::getOutputSamplingRateForAttr()" into lmp-mr1-devEric Laurent2014-11-141-2/+0
| |\ \ \ \ \ \
| | * | | | | | remove AudioSystem::getOutputSamplingRateForAttr()Eric Laurent2014-11-121-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is safer to query the output sampling rate once the output have been acquired by calling getOutputForAttr(). Bug: 16009464. Change-Id: Ib561facd19fba5359a6b837d75f1a1cd2dc51b29
* | | | | | | | am 41907c44: am cede28e2: Merge "stagefright: add runtime debug support" ↵Lajos Molnar2014-11-142-0/+66
|\ \ \ \ \ \ \ \ | |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into lmp-mr1-dev * commit '41907c44a597ceb258495715d3dd391fef2907e3': stagefright: add runtime debug support
| * | | | | | | Merge "stagefright: add runtime debug support" into lmp-mr1-devLajos Molnar2014-11-142-0/+66
| |\ \ \ \ \ \ \ | | |_|_|_|_|_|/ | |/| | | | | |
| | * | | | | | stagefright: add runtime debug supportLajos Molnar2014-11-122-0/+66
| | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 18285408 Change-Id: I56346f4652b2c5f7ef5fa3003fd8676051339384
* | | | | | | am 08961d0b: am 97e6ca1a: Merge "Stagefright: use MediaCodec in async mode ↵Chong Zhang2014-11-141-4/+0
|\ \ \ \ \ \ \ | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for recording" into lmp-mr1-dev * commit '08961d0b57f33e0486db2ff135f0f7fa4b1a8c58': Stagefright: use MediaCodec in async mode for recording audio policy: move intializations to onFirstRef()
| * | | | | | Merge "Stagefright: use MediaCodec in async mode for recording" into lmp-mr1-devChong Zhang2014-11-131-4/+0
| |\ \ \ \ \ \ | | |/ / / / / | |/| | | | |
| | * | | | | Stagefright: use MediaCodec in async mode for recordingPraveen Chavan2014-11-121-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | | | am b177468b: Merge "Improve AudioTrack recovery from mediaserver death" into ↵Glenn Kasten2014-11-071-1/+4
|\ \ \ \ \ \ \ | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lmp-mr1-dev automerge: e662cd5 * commit 'b177468bb1647c79ba48cd0a172cf3306b31ad69': Improve AudioTrack recovery from mediaserver death
| * | | | | | Merge "Improve AudioTrack recovery from mediaserver death" into lmp-mr1-devGlenn Kasten2014-11-071-1/+4
| |\ \ \ \ \ \
| | * | | | | | Improve AudioTrack recovery from mediaserver deathGlenn Kasten2014-11-051-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | | | | am 034d6747: am 1609e451: Merge "Add a BufferItem parameter to ↵Dan Stoza2014-11-072-2/+2
|\ \ \ \ \ \ \ \ | |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | onFrameAvailable" into lmp-mr1-dev * commit '034d674721029e3b7e34fe30ee31814c521b62bf': Add a BufferItem parameter to onFrameAvailable
| * | | | | | | Merge "Add a BufferItem parameter to onFrameAvailable" into lmp-mr1-devDan Stoza2014-11-072-2/+2
| |\ \ \ \ \ \ \
| | * | | | | | | Add a BufferItem parameter to onFrameAvailableDan Stoza2014-11-042-2/+2
| | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | | | | am 7e88fac0: Merge "AudioSystem: remove obsolete method." into lmp-mr1-dev ↵Eric Laurent2014-11-071-2/+0
|\ \ \ \ \ \ \ \ | |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | automerge: c339a92 * commit '7e88fac080e3bb1cdc95667f82727ea6c19fb173': AudioSystem: remove obsolete method.
| * | | | | | | AudioSystem: remove obsolete method.Eric Laurent2014-11-061-2/+0
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 18067208. Change-Id: I9bbf9088485f5162c765ca504d9b784b956234c6
* | | | | | | am e0e8223c: am 1cf9ad1a: Merge "Pass resolution to Crypto plugin on format ↵Jeff Tinker2014-11-061-1/+2
|\ \ \ \ \ \ \ | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | change" into lmp-mr1-dev * commit 'e0e8223c10e051b73fdcbed4fc67a69df2655c56': Pass resolution to Crypto plugin on format change
| * | | | | | Merge "Pass resolution to Crypto plugin on format change" into lmp-mr1-devJeff Tinker2014-11-061-1/+2
| |\ \ \ \ \ \
| | * | | | | | Pass resolution to Crypto plugin on format changeJeff Tinker2014-11-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I56cd557ce3525fe625db8c312d2557d3c8b51101 related-to-bug: 16034599
* | | | | | | | am 7ed62fb4: am 19a3f69d: Merge "Add missing secure stop methods" into ↵Jeff Tinker2014-11-061-1/+2
|\ \ \ \ \ \ \ \ | |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lmp-mr1-dev * commit '7ed62fb4a7401adc3e8b4e082bcfa21de443ebbe': Add missing secure stop methods
| * | | | | | | Merge "Add missing secure stop methods" into lmp-mr1-devJeff Tinker2014-11-061-1/+2
| |\ \ \ \ \ \ \ | | |/ / / / / /