6dc6c38b63b0ec5a72bd956c4821b9d00d3ab123 |
06-Feb-2015 |
Eric Laurent <elaurent@google.com> |
DO NOT MERGE - audio policy service: fix possible memory overflow Add limit on number of audio ports and patches requested by listaudioPorts() and listAudioPatches(). Bug: 19261727. Change-Id: I21dfdf11cf805734cc3b7b2a85762c5598f60580 (cherry picked from commit 1d670b11313250442455a22f1056ad649d607fb2)
AudioPolicyService.cpp
|
c447ded04f11169e9b96b31cd196b2c4ffa9f31c |
06-Jan-2015 |
Eric Laurent <elaurent@google.com> |
fix record from default input source Commit caf7f48a0e broke capture from default input source on some devices: the input source is now specified as part of the audio attributes and the default source was not remapped to mic source. Bug: 18736417. Change-Id: I3f5da33cdb56f959aaef68ed1952342babc63aa0
udioRecord.cpp
|
d1f69b0b17acbd96987ecb2f3378abd394d05903 |
15-Dec-2014 |
Eric Laurent <elaurent@google.com> |
audioflinger: implement pause/resume for direct outputs Extend pause/resume support to direct output threads (was only for offload threads). If the HAL implements pause/resume, track pause/resume is forwarded to the HAL. Pause, flush, resume sequence is respected by executing the HAL calls in the playback thread (same as offload). Make sure the track flags on client side are consistent with the flags on server side. Bug: 17883772. Change-Id: I89b360d69818f7a9204bd36e3ec63a79e106ecf1
udioTrack.cpp
|
baac183f3808d7b68f184647a97bd381620415fe |
02-Dec-2014 |
Eric Laurent <elaurent@google.com> |
audio policy: binder calls for dynamic audio policy mixes Add binder calls to register and unregister dynamic mixes to AudioPolicyManager. Bug: 16009464. Change-Id: I4ef38166d0cfc88c984970969380d0cd6eb083ac
udioSystem.cpp
AudioPolicyService.cpp
|
275e8e9de2e11b4b344f5a201f1f0e51fda02d9c |
01-Dec-2014 |
Eric Laurent <elaurent@google.com> |
audio policy: add support for custom mixes 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
ndroid.mk
udioPolicy.cpp
udioTrack.cpp
|
82a69ea8b090d57bff5e02774688b546a711bbb8 |
07-Nov-2014 |
zunkyu.lee <zunkyu.lee@lge.com> |
Prevent ANR when AudioTrack is paused or re-routed If ClientProxy was interrupted by AudioTrack::pause() just before futex syscall() in obtainBuffer() was called, It will not call releaseBuffer to wake up AudioTrackThread. It puts the AudioTrackThread to sleep and then a deadlock occurs. In this case, CBLK_INTERRUPT flags can't prevent a deadlock, so this patch set mFutex to FUTEX_WAKE during interrupt() to avoid deadlock. A similar problem could occur due to re-route or recovery after mediaserver death. Bug: 18641665 Change-Id: I66fcae43af9a91eb55f6cdb52c644ee6c0999772
udioTrackShared.cpp
|
be837c328ae1ea2b193d05aaa3d4214c263b5b77 |
22-Nov-2014 |
seunghak.han <seunghak.han@lge.com> |
Track volume should be maintained even if track is restored If track is restored when it set its volume to a non-unity value (such as mute), the volume was forced to unity again. Now, the previous volume is restored. Bug: 18570664 Change-Id: I79f34c6c7d6f535baba813fd3b8ba8e55cac8ad7
udioTrack.cpp
|
caf7f48a0ef558689d39aafd187c1571ff4128b4 |
26-Nov-2014 |
Eric Laurent <elaurent@google.com> |
AudioRecord: use audio attributes instead of audio source. 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
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioPolicyService.cpp
|
72bf901ca905ce154fe7866f06d25a01aadcf974 |
26-Nov-2014 |
Eric Laurent <elaurent@google.com> |
Merge "audio policy: new getOutputForAttr() prototype." into lmp-mr1-dev
|
d325005e4a3be45c57e950f8c18b329c968602ce |
26-Nov-2014 |
Andy Hung <hunga@google.com> |
Merge "Fix AudioTrack loop mode to play audio from buffer start" into lmp-mr1-dev
|
e83b55dc29ca16092ba02f36f55fa6e0e37fd78c |
14-Nov-2014 |
Eric Laurent <elaurent@google.com> |
audio policy: new getOutputForAttr() prototype. 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
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioPolicyService.cpp
|
680b795435a5a501a56610258dce5eda40a1725d |
12-Nov-2014 |
Andy Hung <hunga@google.com> |
Fix AudioTrack loop mode to play audio from buffer start Bug: 18217633 Change-Id: Ica77acf0a32832d9b04eb657ef2f4f5329f8fbda
udioTrack.cpp
udioTrackShared.cpp
|
223fd5c9738e9665e495904d37d4632414b68c1e |
11-Nov-2014 |
Eric Laurent <elaurent@google.com> |
audio: new routing strategies and stream types Added new routing strategies and stream type for internal use by audio policy manager and audio flinger: - One for accessibility to allow different routing than media - One for re-routing (remote submix) in preparation of dynamic policies - Added stream type for "internal" audio flinger tracks used for audio patches and duplication. Bug: 18067208. Change-Id: I88f884b552e51e4a49c29125e5a1204cf58ff434
udioTrack.cpp
|
a7cf01da547bad8d4e66e3e4570eddeac98b6b05 |
20-Nov-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix missing loop count for static tracks." into lmp-mr1-dev
|
0ebd5f95b68a3a5c9e5509f21938c9e51e74d71b |
20-Nov-2014 |
Eric Laurent <elaurent@google.com> |
AudioSystem: fix cross deadlock 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
udioSystem.cpp
|
bbda5ce4782b20f3ed75482e5f73b8d999223438 |
19-Nov-2014 |
Eric Laurent <elaurent@google.com> |
Merge "AudioSystem: Add mutex for output cache" into lmp-mr1-dev
|
f6778fd0c72ab54328f0e9f5ecf0017b73e99dd8 |
19-Nov-2014 |
Eric Laurent <elaurent@google.com> |
AudioSystem: Add mutex for output cache Fix cross deadlock with AudioFlinger by adding a dedicated mutex to protect access to cached output list and parameters. Bug: 18410728. Change-Id: Ia31283b1972d8865a46e84e63695173c187eb781
udioSystem.cpp
|
cb2129b3b568a4e31bcbda3545a468024bc972fe |
11-Nov-2014 |
Andy Hung <hunga@google.com> |
Fix missing loop count for static tracks. 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
udioTrackShared.cpp
|
29e6cecdd8562700ab625c5645ddd6a7753789f1 |
14-Nov-2014 |
Eric Laurent <elaurent@google.com> |
audio policy: do not prevent routing to A2DP when suspended. Allow A2DP sink selection even if A2DP is suspended. It is not because use of A2DP is temporarily disabled by SCO selection that the policy rule routing a given use case to A2DP should be altered. The source will be routed to A2DP but it will remain silent until suspend condition is cleared which is the purpose of suspend mode. Also make sure that accessibility prompts are audible while in call by forcing stream type to STREAM_VOICE_CALL. Fix inconsistent logic between AudioTrack::setStreamTypeFromAttributes() and AudioPolicyManager::getStrategyForAttr() Bug: 18095151. Change-Id: I1c75dd8288ed3dd494eb942060eac9c9660dca50
udioTrack.cpp
|
0d6db582f2ccc9f8943c5f3965e2994b7d137158 |
13-Nov-2014 |
Eric Laurent <elaurent@google.com> |
remove AudioSystem::getOutputSamplingRateForAttr() It is safer to query the output sampling rate once the output have been acquired by calling getOutputForAttr(). Bug: 16009464. Change-Id: Ib561facd19fba5359a6b837d75f1a1cd2dc51b29
udioSystem.cpp
udioTrack.cpp
|
e662cd5cdbe1312d6b74754d2945fffe99e4fe2c |
07-Nov-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Improve AudioTrack recovery from mediaserver death" into lmp-mr1-dev
|
c339a921642c38621f57e95b4ec41cfaa99c7a63 |
07-Nov-2014 |
Eric Laurent <elaurent@google.com> |
Merge "AudioSystem: remove obsolete method." into lmp-mr1-dev
|
a36060891425c4ce0621e40344ac473ec14924dd |
07-Nov-2014 |
Eric Laurent <elaurent@google.com> |
AudioSystem: remove obsolete method. Bug: 18067208. Change-Id: I9bbf9088485f5162c765ca504d9b784b956234c6
udioSystem.cpp
|
62fe78b66c87339a64f047561e7b4aac606310e2 |
07-Nov-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix memory leak" into lmp-mr1-dev
|
85f480e7fd7c5e70c91d2f205b5c49488a84eb4d |
06-Nov-2014 |
Glenn Kasten <gkasten@google.com> |
Fix memory leak Change-Id: I3f4110a88679b7e7841f40c6acdbf5dcde40fb19
AudioPolicyService.cpp
|
1cf9ad1abb599ce4057189e0db154cf00b4913f8 |
06-Nov-2014 |
Jeff Tinker <jtinker@google.com> |
Merge "Pass resolution to Crypto plugin on format change" into lmp-mr1-dev
|
19a3f69d9d5398db62ee7b15f2c13052d7ee9f07 |
06-Nov-2014 |
Jeff Tinker <jtinker@google.com> |
Merge "Add missing secure stop methods" into lmp-mr1-dev
|
d2d089fc86c62843992e7d5b371ee9227189a1e6 |
05-Nov-2014 |
Glenn Kasten <gkasten@google.com> |
Improve AudioTrack recovery from mediaserver death 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
udioSystem.cpp
udioTrack.cpp
|
74adca9ad30b7f8a70d40c5237bade0d16c4ea58 |
05-Nov-2014 |
Eric Laurent <elaurent@google.com> |
IAudioPolicyService: bound array size in queryDefaultPreProcessing Bug: 18226810. Change-Id: Ib8e2bfe835a8681aac50bf23161db14e50c9a124
AudioPolicyService.cpp
|
2514d080c8a54ff603a45d7e336de668fe7329db |
03-Nov-2014 |
Jeff Tinker <jtinker@google.com> |
Pass resolution to Crypto plugin on format change Change-Id: I56cd557ce3525fe625db8c312d2557d3c8b51101 related-to-bug: 16034599
Crypto.cpp
|
461b02d3eccefea48fa15c67a9cd3a5895bd2765 |
04-Nov-2014 |
Eric Laurent <elaurent@google.com> |
Merge "audio: fix talkback why alarm is playing" into lmp-mr1-dev
|
03fcdcd0aa9758b6d882b18218fcfb9a1ccffdad |
04-Nov-2014 |
Eric Laurent <elaurent@google.com> |
audio: fix talkback why alarm is playing Convert attributes usage "assistance accessibility" to a stream type guarantying that the prompt is audible and not muted by policy manager. Bug: 17994328. Change-Id: I89f53f2ce84b499b859336c0a1a3a0332ee670f5
udioTrack.cpp
|
d9cfeb447356cb6334379eaf5da1e49424eb5979 |
23-Sep-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
Support speaker routing for FLAG_BEACON Add support for routing audio stream to the speaker when audio attributes carry the FLAG_BEACON value: - associate streams with FLAG_BEACON to the up-to-now unused STREAM_TTS ("Transmitted Through Speaker"). The remapping happens in AudioTrack. - AudioPolicyManager: define new strategy for handling the Beacon behavior, that only goes to speaker. Define new volume curves for STREAM_TTS that are not silence only for the speaker device category. Keep ref count of other streams and never play Beacon streams when anything else is playing: either don't start playback if something else is playing, or unmute STREAM_TTS when it's allowed to play and mute when it's done. - Take into account muting latency when starting an output. Bug 15415971 Change-Id: I26539c7ec1a486accd85bbeb1623e9c7d3a1192f
udioTrack.cpp
|
3c1285e8f86bd497e14c14fb6df7b42072ef52bd |
31-Oct-2014 |
Jeff Tinker <jtinker@google.com> |
Add missing secure stop methods b/18053197 b/18076411 Change-Id: I923dc893d48c70bf17980007b32f0ac5dfd22896
Drm.cpp
|
20f51b1ea04c410a25f214e37bcdb586e2a028cc |
30-Oct-2014 |
Glenn Kasten <gkasten@google.com> |
AudioTrack::flush() will no longer flush later data Bug: 17832076 Change-Id: I4915d782acb8077923e419406b0dcea5b6aab961
udioTrackShared.cpp
|
aac745f29b0e8b18e9f9aff0d122c7d5d82f218a |
28-Oct-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "libmedia: ensure mCaptureThread exit within Visualizer destructor" into lmp-mr1-dev
|
63f6ffb996a7ffc920012f05c3deca731614373f |
25-Sep-2014 |
Haynes Mathew George <hgeorge@codeaurora.org> |
libmedia: ensure mCaptureThread exit within Visualizer destructor If mCaptureThread doesn't exit when Visualizer instance gets destroyed, recycled member variables with random value such as danger pointer will be accessed again and causes crash. Thread which is created within Visualizer instance lifecycle should be terminated before or within destructor. CRs-Fixed: 688546 authored-by: wjiang@codeaurora.org cherry-pick from CAF commit: 4823e3d6b8c60faa4d8fee5d58728eb70e56abf2 Bug: 18159501 Change-Id: Ie0b12ae8a3b9735b6ecbac0353781b8358cad644
isualizer.cpp
|
c2813e568aa476e03d159529c0af28c99536db8d |
17-Oct-2014 |
Andy Hung <hunga@google.com> |
Fix AudioTrack retrograde getPosition when restoring tracks mReleased represents the number of frames written to the track, but was cleared on start() causing a mismatch if the client wrote to the track before starting. Moved the clearing to entering the STATE_STOPPED or STATE_FLUSHED state. Bug: 18017947 Bug: 18022276 Change-Id: I3788c98c4c3c4d9cc004378432797b3f3138e22e
udioTrack.cpp
|
7985dcb06e0c29d5cc12d0c0e17e03d5d863cf53 |
08-Oct-2014 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix AudioTrackThread crash upon exit In case of error during createTrack_l(), there is a possibility that a newly created AudioTrackThread is resumed by requestExit() just after entering the Thread class _threadLoop() but before entering the class threadLoop(). In this case, processAudioBuffer() is executed once with mCblk == 0 and we assert. Bug: 17894033. Change-Id: I93d0d0d4dbf14bcb88dad23e6ad49d2ecd47badd
udioTrack.cpp
|
bb6c9a05840d924b502ce0f1868fca4881ada1ed |
25-Sep-2014 |
Eric Laurent <elaurent@google.com> |
audio: fix stream type for accessibility usage Make sure that accessibility prompts are heard when a ringtone is active by forcing stream type to AUDIO_STREAM_RING when phone state is AUDIO_MODE_RINGTONE. Bug: 17558149. Change-Id: Ia3bead8052fca5cbf282c267f7b9b06014fef628
udioSystem.cpp
udioTrack.cpp
AudioPolicyService.cpp
|
dfc34daba6d6cb923683d96689a0cb7c7006eee5 |
19-Sep-2014 |
Glenn Kasten <gkasten@google.com> |
Reduce log spam from getTimestamp errors Bug: 17576481 Change-Id: I07d99e7c42b7d4f0994b5a6d9c9fe8eb29fbbe40
udioTrack.cpp
|
6aadfce1d8c972faad7f4437dcd88d8cd3557611 |
19-Sep-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
Merge "AudioEffect acquires session" into lmp-dev
|
a0fd9ca66a68baefd9d76800fd66823fd654ef45 |
18-Sep-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
AudioEffect acquires session Currently, users of audio sessions, AudioTrack and AudioRecord, are acquiring and releasing audio sessions according to their life-cycle. AudioEffect instances were not counting as users of an audio session. This caused an effect used on a session to be purged by AudioFlinger::purgeStaleEffects_l() whenever the last user of that session went away. This CL makes AudioEffect acquire and release a session when created and destroyed. Bug 15432115 Change-Id: I922532150009988d43872f9b5928044a830ae0b3
udioEffect.cpp
|
7f1bc8af1c46695191bf7e2aba6467f3616629c0 |
12-Sep-2014 |
Andy Hung <hunga@google.com> |
Fix AudioTrack offloaded timestamp handling. getTimestamp for offloaded tracks now returns WOULD_BLOCK for situations where the timestamp is unavailable due to the previous track still flushing or the timestamp is stale. It is fixed for normal playback conditions. Bug: 14659809 Bug: 17428188 Change-Id: Ic9ec07ccabc604236979769db5c4ea2dec252660
udioTrack.cpp
|
200092b7f21d2b98f30b800e79d152636f9ba225 |
16-Aug-2014 |
Glenn Kasten <gkasten@google.com> |
Clean up AudioTrack position and timestamp handling Replace epoch concept by observing and accumulating server delta positions. The advantage of using server deltas instead of absolute values is that they (1) are not sensitive to 32-bit wraparound, (2) are not sensitive to server behavior for stop(), and (3) prepare for future 64-bit client positions without requiring 64-bit positions on server. Add comments to AudioTrack::getTimestamp() and friends that the timestamp output parameter is undefined on error. Don't allow getTimestamp to return a negative frame position after stop(). Accumulate the client released frames, which may be useful for a future API. Bug: 11815245 Change-Id: I652940fa2db2f34a78c012a3ead0d9204fa29c6e
udioTrack.cpp
|
9520aa609c505cf8a9ee105bd78dc186cfb7770b |
10-Sep-2014 |
Zhijun He <zhijunhe@google.com> |
CamcorderProfile: Add QUALITY_HIGH_SPEED_2160P Bug: 17059255 Change-Id: Ic6b272e4ceec8fc852c9eb787370f4d366dad0ac
ediaProfiles.cpp
|
b445375f50a1a619b2d7518d32387d5ea77ceb70 |
08-Sep-2014 |
Andy Hung <hunga@google.com> |
Fix potential deadlock between AudioPolicyService and AudioSystem Bug: 17109761 Change-Id: I315c1c5066f62b05e1c13b04fae1272b5fbce977
udioSystem.cpp
|
640adb3cf89cc9b826372009fad8c9b3d120482e |
05-Sep-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
Cache audio attributes when player not available Cache the audio attributes stored in a Parcel in the client-side MediaPlayer object if they are set through setParameter() before the server-side MediaPlayer is available. Apply them when the player is prepared. Bug 17280746 Change-Id: I72f1a7fc4e2b076fae8cbdede77a2f74e98b2a03
ediaplayer.cpp
|
d71233a846aca7035a851941c1530d04c6a65086 |
03-Sep-2014 |
Marco Nelissen <marcone@google.com> |
Merge "Use CharacterEncodingDetector in metadataretriever" into lmp-dev
|
34581f44cde67960fbac3ba1f191a2c063ea5145 |
30-Aug-2014 |
Marco Nelissen <marcone@google.com> |
Use CharacterEncodingDetector in metadataretriever instead of media scanner. This way the java MediaMetadataRetriever API will give the same result as the media scanner. Also apply some tweaks to the encoding detector to improve handling of ISO-8859-1 tags. Bug: 16302581, 17205395 Change-Id: I1682a7a6a8bf04cffaa455044ba72dd7fd152d49
ndroid.mk
haracterEncodingDetector.cpp
haracterEncodingDetector.h
ediaScannerClient.cpp
tringArray.h
|
a90cff5f7091bfb50c57e2d87bad3fc3f103f397 |
23-Aug-2014 |
Hochi Huang <hochi.huang@mediatek.com> |
[AU]Sync libmedia/Android.mk modification from KLP-Sprout Bug: 17322146 Change-Id: If29fbd87252710bd794f2e0bb270bc846380ef1d Signed-off-by: Hochi Huang <hochi.huang@mediatek.com>
ndroid.mk
|
732c6d955524ead6c31e6e1bafbd41ea4cee525d |
15-Aug-2014 |
Lajos Molnar <lajos@google.com> |
stagefright/media: add support for codec features with text value Bug: 11990470 Change-Id: I7600d999c5f4b6821d825d25fa7e8a2bb5a80c46
ediaCodecInfo.cpp
|
d018b8ffd84452a7a4b992b5325713b3256e48ff |
12-Aug-2014 |
Lajos Molnar <lajos@google.com> |
Merge "MediaCodecList: handle errors gracefully" into lmp-dev
|
2461e0cf6ae3fe5c9b52ce9e3ac764f4aff5e5eb |
12-Aug-2014 |
Lajos Molnar <lajos@google.com> |
MediaCodecList: don't return references Bug: 16905025 Change-Id: I5b42b294f0cc785b8e4dda0e82c8f8377a46f487
ediaCodecInfo.cpp
|
6ff58f04f78886b07c72c0118eb71a78d08f5651 |
12-Aug-2014 |
Lajos Molnar <lajos@google.com> |
MediaCodecList: handle errors gracefully Handle missing OMX codecs, and codecs that do not load. Fix NULL dereference when initializing codec with no type. Bug: 16907578 Bug: 16905025 Change-Id: I5d103db36ebb029d1aab03222bf6e9324beb1566
ediaCodecInfo.cpp
|
306c92dabc524f408445f7da2524c7a5e77ade63 |
11-Aug-2014 |
Andy Hung <hunga@google.com> |
Merge "Extend downsampling ratios greater than 2:1" into lmp-dev
|
cd04484f4837b8ca0041d118286ab6a98e84fc75 |
07-Aug-2014 |
Andy Hung <hunga@google.com> |
Extend downsampling ratios greater than 2:1 Also improve robustness to choice of sampling rate or buffer size such that increasing either by 10x does not cause overflow. Bug: 12979141 Bug: 15933066 Change-Id: If7989bd745d1bee3bdf811b8b7c978543ccafb65
udioTrack.cpp
|
5a446aafff3020d607ad6fb14cc7ae76dd8f7947 |
30-Jul-2014 |
Rachad <rachad@google.com> |
Added Tunneled video playback support to ACodec Bug:16132368 Change-Id: I88d2d66b8548fc203f4a2c4797196af15e56ff38
OMX.cpp
|
1381d4b5c0385aec3741073e5998773b064c1fb0 |
08-Aug-2014 |
Lajos Molnar <lajos@google.com> |
media/playerservice: add getCodecList() to MediaPlayerService Bug: 11990470 Change-Id: I8fa45946fd9b76f9b975fc59062819c57e6881ef
MediaPlayerService.cpp
|
60b1c0e79d12a1c70758bc8d060156924635f8ba |
07-Aug-2014 |
Lajos Molnar <lajos@google.com> |
stagefright: rework media codec list and infos This is in preparation of serving the codec list and codec infos from the mediaserver Bug: 11990470 Change-Id: Ib8e2708679c9ce461a4ba179974a740cdcdf2731
ndroid.mk
MediaCodecList.cpp
ediaCodecInfo.cpp
|
93c3d41bdb15e39dac0faea9c5b60f1637cd477c |
01-Aug-2014 |
Eric Laurent <elaurent@google.com> |
AudioSystem: add API to query audio HW sync source Add a method to query from the audio HAL the HW sync source used for a given audio session. Modify audio policy to select a direct output with HW sync when requested. Bug: 16132368. Change-Id: I03038f9188f2d389f8a5fd76a671854013a4513e
udioSystem.cpp
AudioFlinger.cpp
|
df3dc7e2fe6c639529b70e3f3a7d2bf0f4c6e871 |
28-Jul-2014 |
Eric Laurent <elaurent@google.com> |
Add sound trigger control by audio policy Audio policy: - Added active capture indication to sound trigger service: recognition stops if concurrent capture is not supported. - Added generation of reserved I/O handle and session ID for utterance capture. Sound trigger service - Added sound model update callback handling. - Added service state callback - Simplified callback shared memory allocation. Bug: 12378680. Change-Id: Ib0292c2733e6df90fdae480633dd9953d0016ef1
udioSystem.cpp
AudioPolicyService.cpp
|
68b15554f6dca3b056eac517fe5fa2fd4ee80a33 |
30-Apr-2014 |
Jeff Tinker <jtinker@google.com> |
Allow device to be unprovisioned bug: 12247651 Change-Id: I564ac8de3da2430342a028f4058e2c5ac2d85d5e
Drm.cpp
|
4dc680607181e6a76f4e91a39366c4f5dfb7b03e |
29-Jul-2014 |
Eric Laurent <elaurent@google.com> |
audio policy: pass session ID to capture activity methods Indicate the audio session ID when calling getInput(), startInput(), stopInput(), releaseInput(). Bug: 12378680. Change-Id: I763793752f93e2f4e1445a5ab217c895af011038
udioRecord.cpp
udioSystem.cpp
AudioPolicyService.cpp
|
de3f8392fbf380ba6f09d009b00d7172477389a2 |
28-Jul-2014 |
Eric Laurent <elaurent@google.com> |
rename AudioSystem::newAudioSessionId() Rename AudioSystem::newAudioSessionId() to AudioSystem::newAudioUniqueId() as it can be used also for I/O handles. Bug: 12378680. Change-Id: I611ea3b5eb57a4b0774437f477ee87dc4ccc2cc2
udioRecord.cpp
udioSystem.cpp
AudioFlinger.cpp
ediaplayer.cpp
|
cf2c0210c8afbe7d0661ccbbae3835b5ce73c0bf |
26-Jul-2014 |
Eric Laurent <elaurent@google.com> |
AudioFlinger: update openInput() and openOutput() Add parameters to openInput() and openOutput(): device address, input source. Allow caller to specify a given I/O handle Group parameters in a struct audio_config. Bug: 12378680. Change-Id: I7e9af74c0d996561cc13cbee7d9012d2daf33025
AudioFlinger.cpp
|
6c28f1fb6d8262a327ffa8be5bb4c84c9ef7ce62 |
26-Jul-2014 |
Zhijun He <zhijunhe@google.com> |
Merge "CamcorderProfiles: add high speed profile constants" into lmp-dev
|
e07909715b44cc56df723750af93f0608210f94d |
24-Jul-2014 |
Zhijun He <zhijunhe@google.com> |
CamcorderProfiles: add high speed profile constants Change-Id: I8f783466f8c2560820db14488acc1a309d27ab0f
ediaProfiles.cpp
|
db2225b2a24fa4ade5c0353730dc2d6a2f5838d9 |
23-Jul-2014 |
Chong Zhang <chz@google.com> |
Merge "NuPlayer: save thread id in MediaPlayer::start" into lmp-dev
|
d88adb96ec867ed1b629c434f87514d2fabaf5e9 |
23-Jul-2014 |
Chong Zhang <chz@google.com> |
NuPlayer: save thread id in MediaPlayer::start so that when MediaPlayer::notify is called from within start, it doesn't try to lock itself again. Bug: 15323063 Change-Id: Idd77e892cd22538bbfe3e65c64c9dd2a216a0aee
ediaplayer.cpp
|
f6f4c0d7c5e2d33b38f080896466e56e2d0a97d4 |
23-Jul-2014 |
Robert Shih <robertshih@google.com> |
Merge "StagefrightRecorder: webm (video only) support" into lmp-dev
|
114819633470ebd5b346c13c2a82a0025d2d39c0 |
10-Jul-2014 |
Robert Shih <robertshih@google.com> |
StagefrightRecorder: webm (video only) support Bug: 16329805 Change-Id: I8a0ecd100fca397add97a1416125bcc6aeb86364
ediarecorder.cpp
|
df813a3ba59109ca519ce0cb00a1a9144074f40e |
21-Jul-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
audio_attributes_t for SoundPool Add support for the audio_attributes_t structure in the SoundPoool constructor. Remove SRC quality which was never implemented. Remove stream types. Add file to contain audio helper functions related to policy. Change-Id: I1720ff15e7b23ea7b713a4395fdfac26dc3fd4da
oundPool.cpp
|
7410591dad836434c72ddee66680802708b70c10 |
03-Jul-2014 |
Glenn Kasten <gkasten@google.com> |
Move AudioRecord frame count calculations to server Buffer frame count and notification frame count are now calculated by server instead of by client. The server has more information and can do a better job. Also fix a few bugs: - If a fast track was re-created, even with same pipe depth, it would fail. Now it can correctly re-create a fast track provided the pipe depth is same. - Notification frame count for fast tracks was calculated by client as 1/2 of the total frame count, which is a large value due to the pipe. Now the notification frame count is set by server to the HAL frame count. This should reduce latency for fast tracks. - EVENT_OVERRUN were happening frequently when there was sample rate conversion, because the client didn't know about the sample rate conversion, and under-estimated the necessary buffer size. Now since server calculates the buffer sizes, EVENT_OVERRUN is unlikely. - RecordThread::createRecordTrack_l was checking for mono and stereo for fast tracks. This is not necessary, and now we can handle a multi-channel fast track. Bug: 7498763 Change-Id: I0c581618e8db33084d5ff9ed50a592990c9749e8
udioRecord.cpp
AudioFlinger.cpp
|
b3b1660ecb67f61f9da54efced8677fa3a6f4863 |
16-Jul-2014 |
Glenn Kasten <gkasten@google.com> |
Add audio_input_flags_t to IAudioPolicyService::getInput Change-Id: I9f37be05f8dc7b85a8827a94e76ca0f45453e170
udioRecord.cpp
udioSystem.cpp
AudioPolicyService.cpp
|
ec40d284218466d8f0e832e7eb88e6ea6c479c88 |
16-Jul-2014 |
Glenn Kasten <gkasten@google.com> |
Add audio_input_flags_t to IAudioFlinger::openInput For backward compatibility, until flags are correctly calculated, we will assume that the request is for a low latency input stream. Change-Id: I76746834e870df00833dc77cbdaa2edd2ffeec95
AudioFlinger.cpp
|
01cab9ce4fb203fab8f5115ff866f9f0cc96a73a |
10-Jul-2014 |
Elliott Hughes <enh@google.com> |
resolved conflicts for merge of 373e21cc to master Change-Id: I91afd8f9cba04559d21e1c84e25c5c60c990165d
|
373e21cc119cede767dc93d75c91645dbf9ae19f |
10-Jul-2014 |
Elliott Hughes <enh@google.com> |
am be44e0e0: am 0bffd2e6: Merge "Switch frameworks/av/media/libmedia to the new icu." * commit 'be44e0e0ffda04725c4864d894a7cc80bd74b5ca': Switch frameworks/av/media/libmedia to the new icu.
|
51bc26144ca9c3872e41f9864622170d528be1b0 |
10-Jul-2014 |
Elliott Hughes <enh@google.com> |
Switch frameworks/av/media/libmedia to the new icu. Change-Id: I45349756bac6d89b02dba082ba6d606f4c489dcf
ndroid.mk
|
7df8c0b799d8f52d6386e03313286dbd7d5cdc7c |
03-Jul-2014 |
Glenn Kasten <gkasten@google.com> |
IAudioFlinger::openRecord now suggests notificationFrames Change-Id: I08885cc381d03c522a23289e74f0e1ed46563863
udioRecord.cpp
AudioFlinger.cpp
|
d9d7fa0873796ac661c44a7fcd6ad5ff697ff01f |
24-Jun-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
Support for audio attributes on audio output of media player Change-Id: Iae4995c98e64add1ab9e6c8ae6501515032755f5
udioTrack.cpp
ediaplayer.cpp
|
34fb29696b0f3abf61b10f8d053b1f33d501de0a |
19-Jun-2014 |
Mark Salyzyn <salyzyn@google.com> |
libmedia: 64-bit compile warnings Change-Id: I600f062fa7148c01851023c1240c39939e648002
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
udioTrackShared.cpp
haracterEncodingDetector.cpp
MediaMetadataRetriever.cpp
MediaRecorder.cpp
ediaProfiles.cpp
oundPool.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
ab5cdbaf65ca509681d2726aacdf3ac8bfb6b3fa |
10-Jun-2014 |
Eric Laurent <elaurent@google.com> |
AudioTrack: add support for compressed audio Add support for compressed audio playback by use of an AudioTrack attached to a direct output thread. Bug: 9428304. Change-Id: I4a61be9cf0e31003ca85935d6e0ee38ca8192e03
udioTrack.cpp
|
5bd3f38638acab633d181359cc9ec27b80f84d43 |
14-Jun-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
AudioPolicyManager: return output for audio attributes In AudioPolicyManager, support querying an output or playback strategy for audio attributes, instead of a stream type, In AudioTrack creation, use the output returned for the track's attributes. Change-Id: I0fef05845ba676404775e2e338c10e6a96237268
udioSystem.cpp
udioTrack.cpp
AudioPolicyService.cpp
|
faabb51ceef13bf1e3f692219ac410c1cd75d0de |
12-Jun-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
AudioTrack construction with audio attributes Store audio attributes in AudioTrack class. When an AudioTrack is "set" with non null audio attributes, derive a stream type that reflects the attributes. When an AudioTrack is "set" without attributes, and only has a stream type, derive default audio attributes. Change-Id: I322b91fa9a7e193118960c5e78cdddd85d66f9ad
udioTrack.cpp
|
ba7a4e11a66a7044dbbd767983865e1774092dc6 |
13-Jun-2014 |
Narayan Kamath <narayan@google.com> |
am 90732a3b: Merge "Remove dependency on Parcel::{read,write}IntPtr" * commit '90732a3be5e70156486aca94bde8aa81106329ba': Remove dependency on Parcel::{read,write}IntPtr
|
8b8e5d45928aed8592d321fe55f560e35a4fece8 |
13-Jun-2014 |
Narayan Kamath <narayan@google.com> |
resolved conflicts for merge of cbd74fcb to klp-modular-dev-plus-aosp Change-Id: I00270ef6fe813c0d3649483cbc3aba6af789e033
|
9c68ac03f16cc32625f6965e869432eae4fded2d |
13-Jun-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
Merge "AudioSystem: remove unused stream type"
|
20d16a8af2dc95e827be693edabde4f09eb90c32 |
13-Jun-2014 |
Eric Laurent <elaurent@google.com> |
am 3bcffa13: force command flush after releasing a reference to shared memory * commit '3bcffa136909c1fb6e88ee4efd12ccac18360a85': force command flush after releasing a reference to shared memory
|
3bcffa136909c1fb6e88ee4efd12ccac18360a85 |
13-Jun-2014 |
Eric Laurent <elaurent@google.com> |
force command flush after releasing a reference to shared memory After releasing a reference to a shared memory interface, IPCThreadState::self()->flushCommands() must be called to ensure that the corresponding reference is also cleared immediately in the remote process. Otherwise the binder implementaiton will not push the clear systematically causing the memory region not to be freed. See issues 10711502 and 2801375. Bug: 14057166. Change-Id: If55f36f00d452d6cf00cf83bd2fba1c8f3abcb57
udioRecord.cpp
udioTrack.cpp
|
7903bb2b3065d58cc75637900922b434f50024d9 |
12-Jun-2014 |
Elliott Hughes <enh@google.com> |
am 2a8270e6: am c323737d: Merge "Offer a type-safe album art interface." * commit '2a8270e6944fb3addfcba87f6885aaad196b8b88': Offer a type-safe album art interface.
|
2a8270e6944fb3addfcba87f6885aaad196b8b88 |
12-Jun-2014 |
Elliott Hughes <enh@google.com> |
am c323737d: Merge "Offer a type-safe album art interface." * commit 'c323737dd46d724b4c1ec230b283f26ae2a22b4f': Offer a type-safe album art interface.
|
b7f24b101d43139b4c747129bfbc4ecf5c468b86 |
11-Jun-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
AudioSystem: remove unused stream type The audio stream type is not used in the getSampleRate() and getFrameCount() methods. Change-Id: I3d065ae272bd039204cd323cdab9b60460034f2d
udioSystem.cpp
udioTrack.cpp
|
8b1be2ca7cee71a4920d5d31fdcbad2b1d4ca49d |
02-May-2014 |
Andy Hung <hunga@google.com> |
Update OMX messages for 64 bit Change node_id and buffer_id to uint32_t. Ensure IOMX messages are fixed size. Remove 64 bit compile warnings in associated files. Change-Id: Icdbef00aca575e5dc502ebb52e3ce7d0d7883203 Signed-off-by: Andy Hung <hunga@google.com>
OMX.cpp
|
f3e80dddd7376aa9deeb27de25e1d50030a2ad98 |
11-Jun-2014 |
Elliott Hughes <enh@google.com> |
Offer a type-safe album art interface. Bug: 15514223 Change-Id: Iddfc33a00e6cd3779ca09c01a55f62b151f6ec95
ediaScanner.cpp
|
c5a66b77adcdfa2a403dfddc5ef3469fada75683 |
12-Jun-2014 |
Jeff Tinker <jtinker@google.com> |
Merge "Remove dependency on Parcel::{read,write}IntPtr"
|
5f6af1a8e34381ca2ac2527fcefe220a22f49b53 |
10-Jun-2014 |
Zhijun He <zhijunhe@google.com> |
MediaProfiles: Add 4K video related constants Bug: 15287656 Change-Id: I4c49640a349afb336f52db1636902fc216bff6ad
ediaProfiles.cpp
|
90732a3be5e70156486aca94bde8aa81106329ba |
13-Jun-2014 |
Narayan Kamath <narayan@google.com> |
Merge "Remove dependency on Parcel::{read,write}IntPtr"
|
1766b08d35a45e12a13b264a5944e1b622b8715b |
10-Jun-2014 |
Jeff Tinker <jtinker@google.com> |
Remove dependency on Parcel::{read,write}IntPtr bug: 15424960 bug: 15107693 (cherry picked from commit bcca9e072c1f288a53ce6862936f57dc36488f96) Change-Id: I3ba59fccb184e99a07f6f82ccdbd00e5204901f6
Crypto.cpp
|
bcca9e072c1f288a53ce6862936f57dc36488f96 |
10-Jun-2014 |
Jeff Tinker <jtinker@google.com> |
Remove dependency on Parcel::{read,write}IntPtr bug: 15424960 bug: 15107693 Change-Id: Ic3bf37f591e620985c37f345f9a5544fd20ec4a1
Crypto.cpp
|
c263ca0ad8b6bdf5b0693996bc5f2f5916e0cd49 |
05-Jun-2014 |
Glenn Kasten <gkasten@google.com> |
Squashed commit of the following: commit 9128d6ffec43731d723f9b394f243d940f4c7e41 Author: Glenn Kasten <gkasten@google.com> Date: Tue May 13 10:38:42 2014 -0700 Use of fast capture by normal capture Will only configure fast capture path if the input buffer size is less than 10 ms and the input sample rate is same as the primary output sample rate. Change-Id: I4a7cdc6069d750845412c626d27e83f72a1ab397 commit 2e5e0806a5abe7499848358ef5fde5c26405000d Author: Glenn Kasten <gkasten@google.com> Date: Mon Jun 2 08:29:22 2014 -0700 Add mPrimaryOutputSampleRate Change-Id: I46b527fc3f2b5a5720a74b4f0b9a8f2e0d570b09 commit baf1d73467923996d1b1f2a9237260cc5697e050 Author: Andy Hung <hunga@google.com> Date: Fri May 30 10:42:03 2014 -0700 Change parameter type for volume to float in AudioMixer Change-Id: I4da1505ce852505f86f8e5b87f60e8edceeb30e0 commit 40fe20fa9760cd03c69778c2021cf7a490d75ece Author: Andy Hung <hunga@google.com> Date: Fri May 30 10:35:47 2014 -0700 Rename UNITY_GAIN to UNITY_GAIN_INT in AudioMixer Change-Id: Ic040311305026f0b4c4280a5b3bef7a447ac1da3 commit 37c9a2b49f876abc5ff537a9ec036d7f0a423775 Author: Andy Hung <hunga@google.com> Date: Thu May 29 21:33:13 2014 -0700 Refactor setVolumeRampVariables in AudioMixer Change-Id: I8fcf3101bcea292de7c65433fa578f1c9cdd0974 commit 397070eca31f121d5d3993de1bfea99aaea5d4f3 Author: Andy Hung <hunga@google.com> Date: Thu May 29 18:52:38 2014 -0700 Fix floating point output from mixer A buffer pointer was being erroneously reset to buffer start, potentially causing an audio glitch. The floating point output mode is not enabled at this time, but will be in the future. Change-Id: If8b6414d232f064f3a2e2c5a6da889a91b27fb24 commit 2e61aa5b33b2247bbc5d4eaa0b519df9accd4bbc Author: Andy Hung <hunga@google.com> Date: Fri May 23 21:22:17 2014 -0700 Add multiple format capability to FastMixer Floating point data from MixerThread into FastMixer. Multiple output format capability from FastMixer to Sink. Change-Id: I0da17810ee71381a39a006c46faec71108d22c26 commit b9ea653c702a785bbd23a66c5e588d40b4192c4e Author: Andy Hung <hunga@google.com> Date: Thu May 29 15:53:09 2014 -0700 Avoid resetting BufferProviders in mixer unnecessarily Change-Id: Iad85c4dfd21be1dbf89dc11906106b34219376f8 commit 7f1a6d6da21c616f80cf9ba21bea11b419ec561b Author: Andy Hung <hunga@google.com> Date: Tue May 27 12:32:17 2014 -0700 Update dynamic resampler buffer fetching Make the criteria tight for fetching to avoid storing excessive frame data internal to the resampler. This should reduce jitter in frame delivery computation. Bug: 14962343 Change-Id: I7adaf714d11c272696ccdbf218bda994c7217477 commit b5e4aac07b9a02f0c803c090058602b03ac09ebb Author: Glenn Kasten <gkasten@google.com> Date: Tue May 27 12:30:54 2014 -0700 Allow kFastTrackMultiplier to be specified per device Change-Id: I4eaaaf038df720cec4f5d9221d1b632970f9e3dd commit b93cd97a52af31122df2da2cc0415cda888c8c73 Author: Andy Hung <hunga@google.com> Date: Fri May 23 21:13:31 2014 -0700 Rename mixBuffer to mMixerBuffer in FastMixer Likewise mixBufferState becomes mMixerBufferState. This harmonizes with the naming in AF::MixerThread. Change-Id: I1255d7c07cc2c6ee925d7430925236d2bd163122 commit 8340758622b9711365a8801806cbdf934803c63f Author: Andy Hung <hunga@google.com> Date: Mon May 12 16:51:41 2014 -0700 Add multiple format capability to AudioMixer Change-Id: I04ac1cafd90b6ed652f8d51888ad07576678f0bc Signed-off-by: Andy Hung <hunga@google.com> commit 6b695b9d094820c232a897a3fabbe83d2b7193fe Author: Glenn Kasten <gkasten@google.com> Date: Thu Mar 13 14:59:31 2014 -0700 Start adding FastCapture based on FastThread WIP This version supports at most one fast capture client. Change-Id: Idf609bfc80ae22433433d66a5232c043c65506df commit e951ad05a2c388471d7e2806d91e7d51325a150a Author: Glenn Kasten <gkasten@google.com> Date: Mon May 12 11:06:26 2014 -0700 Move validation of frameCount from set to openRecord_l This move is needed because frameCount is validated on server side for fast tracks (as should be done for normal tracks too). Change-Id: I6d99e80869fd90fab373cf60ef348c01f075fbca commit 73e76992dbba794894837c38e5472312ea829cf3 Author: Glenn Kasten <gkasten@google.com> Date: Tue May 13 10:41:52 2014 -0700 Allow track buffer "allocation" to be from pipe Change-Id: Ib9ac170f8e8b7746b3588157a56cbee3b753a1cb commit 60de1d7ded05c6304037d4858b401094b1d2b4d3 Author: Andy Hung <hunga@google.com> Date: Fri May 9 15:02:21 2014 -0700 Add format parameter to getTrackName() and track_t Change-Id: Ia152a839014e235fbfb656104c15d7c1b456d02e Signed-off-by: Andy Hung <hunga@google.com> Change-Id: Ied0ade8b25d23e89bb03319a7e3135c238f735b9
udioRecord.cpp
udioTrackShared.cpp
|
e40ed90293eeb0feecb5b7729cf24f8ecea9b412 |
05-Jun-2014 |
Eric Laurent <elaurent@google.com> |
am 26594add: Merge "audio policy: new setAudioPortConfig implementation" into lmp-preview-dev * commit '26594add1ec0b6255c96b39e43ccdc95b2c480aa': audio policy: new setAudioPortConfig implementation
|
a121f90f388343dc48793cbc7eb899aba42e7664 |
03-Jun-2014 |
Eric Laurent <elaurent@google.com> |
audio policy: new setAudioPortConfig implementation Rewrite setAudioPortConfig() to take advantage of the new AudioPortConfig class. The configuration is now checked against AudioPort capabilities and stored in the AudioPortConfig. Fix a bug where the config mask was not set properly when calling setAudioPortConfig at the PatchPanel interface. Remove debug log in IAudioPolicyService. Bug: 14815883. Change-Id: I7eb7683a96e049581c13f2a212486507883d008d
AudioPolicyService.cpp
|
6dbb5e3336cfff1ad51d429fcb847307c06efd61 |
13-May-2014 |
Glenn Kasten <gkasten@google.com> |
Use of fast capture by normal capture Will only configure fast capture path if the input buffer size is less than 10 ms and the input sample rate is same as the primary output sample rate. Change-Id: I4a7cdc6069d750845412c626d27e83f72a1ab397
udioTrackShared.cpp
|
72aa32f7dbbfb658097930b57659d8e50f24a953 |
31-May-2014 |
Eric Laurent <elaurent@google.com> |
resolved conflicts for merge of b52c152d to master Change-Id: I34869bda071d511c9595ea0a5ff6571eb34da059
|
b52c152d553556b2d227ffc943489de0c60b4b02 |
20-May-2014 |
Eric Laurent <elaurent@google.com> |
audio policy: add routing update client interface Added IAudioPolicyServiceClient client binder interface for client process to receive notifications from AudioPolicyService when audio ports are added/removed or audio patches created/released. The audio patches owned by a given client are automatically released when this client binder dies. Bug: 14815883. Change-Id: I6013f6aec03b50565cffb1ad2cd1f0f8852032c5
ndroid.mk
udioSystem.cpp
AudioPolicyService.cpp
AudioPolicyServiceClient.cpp
|
203b1a18a806e2c56c701aac49cda963bccfad5b |
01-Apr-2014 |
Eric Laurent <elaurent@google.com> |
DO NOT MERGE - IAudioPolicyService interface extension for patch panel Change-Id: I0a62e5416edc41c3a0e816275085ab18a23066f1
udioSystem.cpp
AudioPolicyService.cpp
|
1cda6afaf6207a41303e653a6ecd7909d73186eb |
11-Apr-2014 |
Eric Laurent <elaurent@google.com> |
DO NOT MERGE - IAudioFlinger interface extension for patch panel Change-Id: Iaabe0a7e315d5725e00a74a6ed40339b98f20330
AudioFlinger.cpp
|
8670c31fddbeadcf9627aa970c69a823f13939ff |
01-Apr-2014 |
Eric Laurent <elaurent@google.com> |
IAudioPolicyService interface extension for patch panel Change-Id: I0a62e5416edc41c3a0e816275085ab18a23066f1
udioSystem.cpp
AudioPolicyService.cpp
|
4b123406c10c17852734a1b691bb9ce2a4cb7caf |
11-Apr-2014 |
Eric Laurent <elaurent@google.com> |
IAudioFlinger interface extension for patch panel Change-Id: Iaabe0a7e315d5725e00a74a6ed40339b98f20330
AudioFlinger.cpp
|
29b703eec27b305e7b5b2343bf257643e38f6b68 |
12-May-2014 |
Glenn Kasten <gkasten@google.com> |
Move validation of frameCount from set to openRecord_l This move is needed because frameCount is validated on server side for fast tracks (as should be done for normal tracks too). Change-Id: I6d99e80869fd90fab373cf60ef348c01f075fbca
udioRecord.cpp
|
e348c5b72ad889389c7c1c900c121f0fbee221b5 |
22-May-2014 |
Elliott Hughes <enh@google.com> |
resolved conflicts for merge of c0bf836f to master Change-Id: I5cf238fa56d6fff443b212870cf9dd7f1110e7da
|
c0bf836f8a4e34d66c10a2bb8b8cee0db04790cc |
22-May-2014 |
Elliott Hughes <enh@google.com> |
am ad71caf2: am 3b6da6bf: Merge "Move frameworks/av off private API." * commit 'ad71caf25e31ecfc4ecf2c925e38fd87905fbc8e': Move frameworks/av off private API.
|
ad71caf25e31ecfc4ecf2c925e38fd87905fbc8e |
22-May-2014 |
Elliott Hughes <enh@google.com> |
am 3b6da6bf: Merge "Move frameworks/av off private API." * commit '3b6da6bfb50a1c0324fb4c87326d3a477944d5fe': Move frameworks/av off private API.
|
ee499291404a192b059f2e04c5afc65aa6cdd74c |
22-May-2014 |
Elliott Hughes <enh@google.com> |
Move frameworks/av off private API. Bug: 11156955 Change-Id: Ib3bb9d66a2bf92977c2445b62aa074a2d7a45aea
udioTrackShared.cpp
|
9382378b6b271949bdce527ea3da748c13c4c692 |
22-May-2014 |
Elliott Hughes <enh@google.com> |
resolved conflicts for merge of b1080917 to master Change-Id: Iabbe3e95e29f28461ff722b550e8a9f35bd2528f
|
b108091734ee7668084cc1063187c2b10ddb7bb7 |
22-May-2014 |
Elliott Hughes <enh@google.com> |
am acbd9492: am d084206d: Merge "Move frameworks/av off __futex_syscall3." * commit 'acbd9492996348bf4565fbaa5a14772f0f4ace38': Move frameworks/av off __futex_syscall3.
|
acbd9492996348bf4565fbaa5a14772f0f4ace38 |
22-May-2014 |
Elliott Hughes <enh@google.com> |
am d084206d: Merge "Move frameworks/av off __futex_syscall3." * commit 'd084206d5a4a5364211af46e4201311933e83bfc': Move frameworks/av off __futex_syscall3.
|
77e1512aee8092069514973379a59a318e721be3 |
22-May-2014 |
Elliott Hughes <enh@google.com> |
Move frameworks/av off __futex_syscall3. Bug: 11156955 Change-Id: I943080bc51b6efa781059b48b5b5ecc4fa287512
udioTrackShared.cpp
|
b4db73d022f3de3530bc2b3c9c831ccfdd1a2ead |
20-May-2014 |
Andy Hung <hunga@google.com> |
Merge "Use new channel count functions for audio masks"
|
c56f3426099a3cf2d07ccff8886050c7fbce140f |
22-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Pass stereo gains as packed minifloat This will allow (eventually) a greater dynamic range for gains. However there are still a few remaining places in effects and mixer that will also need to be changed in order to get the full benefit. Also fixes a minor bug: was not checking for NaN in AudioTrack C++. Change-Id: I63bce9e82e0a61546d8ff475fb94bcb700d99c96
udioTrack.cpp
udioTrackShared.cpp
|
e541269be94f3a1072932d51537905b120ef4733 |
16-May-2014 |
Andy Hung <hunga@google.com> |
Use new channel count functions for audio masks Change-Id: Ia658ab4b6320d19fdb50f123c930918724ff0ef3 Signed-off-by: Andy Hung <hunga@google.com>
udioRecord.cpp
udioTrack.cpp
|
609b815a3131d22da38b2f452faa9f89daad4039 |
02-May-2014 |
Andy Hung <hunga@google.com> |
Update OMX messages for 64 bit Change node_id and buffer_id to uint32_t. Ensure IOMX messages are fixed size. Remove 64 bit compile warnings in associated files. Change-Id: Icdbef00aca575e5dc502ebb52e3ce7d0d7883203 Signed-off-by: Andy Hung <hunga@google.com>
OMX.cpp
|
844f88ccfcca95687e774bccb5e9065da61d33f8 |
09-May-2014 |
Glenn Kasten <gkasten@google.com> |
Cache mCblk in local variable cblk This is the style used throughout the rest of AudioTrackShared. Change-Id: I959a6be3064e087bb19eba41173fd130dfcb4a9a
udioTrackShared.cpp
|
fe9570c7b937b49d3603ccb394aed732b79bc6be |
07-May-2014 |
Glenn Kasten <gkasten@google.com> |
Remove obsolete IAudioRecord::getCblk() Change-Id: Id20b5efd765b9796b0e391610e06dc928a829ebf
AudioRecord.cpp
|
d776ac63ce9c013c9626226e43f7db606e035838 |
07-May-2014 |
Glenn Kasten <gkasten@google.com> |
IAudioFlinger::openRecord returns IMemory(s) openRecord() now explicitly returns the control block and data buffer as separate IMemory references. If the IMemory for data buffer is 0, this means it immediately follows the control block. Change-Id: Ic098f88f0e037f8fbe30006689e18cacacf09d06
udioRecord.cpp
AudioFlinger.cpp
|
96b292fd3c76f9af155ee6f7a8559258eeedc6fd |
08-May-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Add client side support for more AUDIO_FORMAT_PCM_*"
|
b773038277ba328696832b690b91ce6e95bd1a6c |
01-May-2014 |
Glenn Kasten <gkasten@google.com> |
Add client side support for more AUDIO_FORMAT_PCM_* As much as possible, the checks for specific formats are done on server side. The only exception is 8-bit, which needs a client side workaround. Change-Id: I52fe086c039460c8dac009de03b67eb54c56a836
udioTrack.cpp
|
828f883a43f66f77d776a75d0ea2b87c7c826071 |
07-May-2014 |
Glenn Kasten <gkasten@google.com> |
Fix a couple of fast capture typo bugs AudioRecord constructor was not passing flags through to set(). Server-side check was using wrong kind of channel mask. Change-Id: Ifaa880ec323771e9fd168262be05f3e539f53390
udioRecord.cpp
|
c4b88a8d0f524666bf0f390075c334d047a104f2 |
01-May-2014 |
Glenn Kasten <gkasten@google.com> |
Fix bug for direct track with PCM != 16-bit The AUDIO_FORMAT_PCM_8_BIT format was being converted to AUDIO_FORMAT_PCM_16_BIT on client side even for direct tracks. That conversion was incorrect; it should only be done for mixed tracks. Also remove checks for specific PCM formats in the generic part of server side of createTrack. Those format checks should only be done by the thread. This will allow direct tracks for PCM 8-bit, PCM 24-bit, etc. Change-Id: If5b9fd79f8642ed93e2aeabcaf4809b2ed798978
udioTrack.cpp
|
b53fc4ef8da47df8d5f580e8ee6135866ffebc33 |
02-May-2014 |
Glenn Kasten <gkasten@google.com> |
resolved conflicts for merge of 47c888a9 to master Change-Id: I4ba2fdc6374a93a892bb7651b0d174e495f09bf6
|
47c888a9fb74f8a46fbf666f0611fd1a9491466f |
02-May-2014 |
Glenn Kasten <gkasten@google.com> |
am e580aa4a: am 86438382: Merge "When passing a size_t via binder, use 64-bits unconditionally" * commit 'e580aa4a756d1825c440a4b4309022b1babb6de1': When passing a size_t via binder, use 64-bits unconditionally
|
e580aa4a756d1825c440a4b4309022b1babb6de1 |
02-May-2014 |
Glenn Kasten <gkasten@google.com> |
am 86438382: Merge "When passing a size_t via binder, use 64-bits unconditionally" * commit '86438382a381eb39ed8da53fbd16cf6730fded6c': When passing a size_t via binder, use 64-bits unconditionally
|
86438382a381eb39ed8da53fbd16cf6730fded6c |
02-May-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "When passing a size_t via binder, use 64-bits unconditionally"
|
33ddcb6f1049cb4b6c71bb7ea605375f9492601d |
02-May-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Use AUDIO_INTERLEAVE_* constants"
|
8710fb4b39e1807a5f2a4486fe0b140129b3618d |
02-May-2014 |
Glenn Kasten <gkasten@android.com> |
am f38e1908: am 3d9164da: am 236f8ddd: Merge "Add missing include" * commit 'f38e190887e73bc08735af95b073ebfaabd65f95': Add missing include
|
f38e190887e73bc08735af95b073ebfaabd65f95 |
02-May-2014 |
Glenn Kasten <gkasten@android.com> |
am 3d9164da: am 236f8ddd: Merge "Add missing include" * commit '3d9164da1b3d58701e41c78e06839d61ed1b4ff9': Add missing include
|
3d9164da1b3d58701e41c78e06839d61ed1b4ff9 |
02-May-2014 |
Glenn Kasten <gkasten@android.com> |
am 236f8ddd: Merge "Add missing include" * commit '236f8ddd23af92f98f2deae86bf6e6b5c9278857': Add missing include
|
236f8ddd23af92f98f2deae86bf6e6b5c9278857 |
02-May-2014 |
Glenn Kasten <gkasten@android.com> |
Merge "Add missing include"
|
877a0ac7e8677fa1cbd0e8565ad9d38ba0db5fc0 |
01-May-2014 |
Glenn Kasten <gkasten@google.com> |
Use AUDIO_INTERLEAVE_* constants Change-Id: I6609fa75c9a57fc4ca3887d626a2f4fb8b6593a1
udioTrack.cpp
|
1a7be1ec9c769203e6c8e26378de0ab8e2ad493d |
29-Apr-2014 |
Bill Yi <byi@google.com> |
Merge commit '91820d46b5f3065c2fded3cdf65d305715b33bb1' into HEAD
|
29fe1ea4b5a1d1fc1fb87b53866901357c04c5c1 |
14-Apr-2014 |
Mark Salyzyn <salyzyn@google.com> |
am 9829344d: Merge "media: memset sizeof argument issues" * commit '9829344d526f87ca745208f04216ec795b239581': media: memset sizeof argument issues
|
d6579cc9f06052f94bf5a2c34261c84de0efce23 |
10-Apr-2014 |
Mark Salyzyn <salyzyn@google.com> |
media: memset sizeof argument issues Change-Id: I37ef154eea0f77fb7f22faf6891f3025f6ff346e
ediaplayer.cpp
|
80a5d305a8408651fbc9b11e9d21125887da8c40 |
02-Apr-2014 |
Igor Chernyshev <igorc@google.com> |
Add missing include Change-Id: I9fc3ebf60b98760611ac2071c7c519a0f8326341
emoryLeakTrackUtil.cpp
|
99021c47f45ee8bf3317cff7d08226e76c8d8227 |
02-Apr-2014 |
Jeff Tinker <jtinker@google.com> |
am f356a123: am 68d9d71a: Support CAST V2 Authentication in MediaDrm * commit 'f356a123bf966150965a1af1cb9bd6ff2ca020de': Support CAST V2 Authentication in MediaDrm
|
f356a123bf966150965a1af1cb9bd6ff2ca020de |
02-Apr-2014 |
Jeff Tinker <jtinker@google.com> |
am 68d9d71a: Support CAST V2 Authentication in MediaDrm * commit '68d9d71a792deed75d32fe13febc07c9c12c8449': Support CAST V2 Authentication in MediaDrm
|
68d9d71a792deed75d32fe13febc07c9c12c8449 |
04-Mar-2014 |
Jeff Tinker <jtinker@google.com> |
Support CAST V2 Authentication in MediaDrm Java API version Update frameworks to enable support for CAST V2 Authentication in the DRM Plugin. Change-Id: I9066ada0edf8e0d777c503897d8c7fc7f76f2861 related-to-bug: 12702350
Drm.cpp
|
c9b8d90dabdf1234be0117c592f635a92c4eb0d9 |
27-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Use symbol AUDIO_IO_HANDLE_NONE from <system/audio.h>"
|
5c4fa907328c8ee586367272c7525cb87742f14d |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Use LOG_ALWAYS_FATAL instead of LOG_FATAL"
|
142f519aa1acd5804d111e60d100f170fed28405 |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Use symbol AUDIO_IO_HANDLE_NONE from <system/audio.h> Change-Id: Id6b1aa17558eb73e17f22b8eab6cd02e00a96dff
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
|
2301acc6a9c7a3af4ad01f3d1d0f76f13eca7350 |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Update comments Change-Id: I5776313b9b49072cd666d28880f0d07cc73f827b
udioSystem.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
adad3d7d935da176ff24941b4ae9edf7340e9b96 |
21-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Use LOG_ALWAYS_FATAL instead of LOG_FATAL LOG_FATAL is compiled out in most builds, so the assertion checks were not being performed. Change-Id: I774f0985ab9c5ccecd8989a0f1c940386b73fc35
udioTrackShared.cpp
|
ecdca392ed40e89a6ef14b86446e952c35497ac4 |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Use symbolic constants from <system/audio.h>"
|
51beebba9d4989d05831a13bbe5cdf53ecac1bf5 |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Use symbol AUDIO_DEVICE_NONE from <system/audio.h>"
|
b8f8d231685afdec472136b45c527a71bfb8bcc4 |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove stream type from AudioSystem::getRenderPosition()"
|
73ec11738cd4399c55d4905665a14a7c4cd42cbf |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix uses of KeyedVector"
|
8c7b9fb41585fccb06573252823b929c82a40999 |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove streamType parameter from AudioSystem::getLatency()"
|
0ed19594452c901c3c8665d06610fffe46895d06 |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Remove stream type from AudioSystem::getRenderPosition() The I/O handle is never equal to AUDIO_IO_HANDLE_NONE, so the stream type is not needed. Change-Id: I1ab134a2fa379d6dd0b6167345a856a192d478f9
udioSystem.cpp
|
f7f21b93bfce562784ee8f632fb01a2f8e4ffa6b |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead code"
|
ebb80e4f9873cc1a5ee3f766323f622bb0c07ae5 |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Remove dead code Change-Id: I0878d11451c7bbbf96b59f5fe0cd97ba1f033aa9
udioTrack.cpp
|
241618f1b286f9e7e02fe61e96d9194e2e1e8a7a |
26-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Remove streamType parameter from AudioSystem::getLatency() Change-Id: Ie7346e93436ddc215cad7d16be555dcb6c277d54
udioSystem.cpp
udioTrack.cpp
|
45faf7e02791993a487d6e038d16ff46395f1975 |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Use symbol AUDIO_DEVICE_NONE from <system/audio.h> Change-Id: I61f882c5e7c949bf00d3bfc745ebf3b5e1c42a58
udioSystem.cpp
AudioFlinger.cpp
|
66e4635cb09fadcaccf912f37c387396c428378a |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Use symbolic constants from <system/audio.h> AUDIO_INTERLEAVE_* AUDIO_STREAM_MIN AUDIO_SESSION_ALLOCATE Change-Id: I31dd6f327204685e50716079ce21c4ba206dff11
udioTrack.cpp
oneGenerator.cpp
|
9ea65d0f4a564478343b1a722fae4ce5883670c3 |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Fix uses of KeyedVector Constructor for AudioFlinger::mAudioHwDevs was missing, and so AudioFlinger::findSuitableHwDev_l() could return an undefined pointer if a non-0 module wasn't found. A KeyedVector of Plain Old Data (POD) element type must specify the default value in the constructor, or else the default will be undefined. Minor: - Parameter had wrong type in constructor for AudioSystem::gOutputs. - Remove obsolete AudioSystem::gStreamOutputMap. Change-Id: I9841493e018440e559d8b8b0e4e748ba2b2d365b
udioSystem.cpp
|
85d109a4b0eddd76a8c5cee170bc2bcc99d00118 |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Document AudioSystem::newAudioSessionId() failures Change-Id: Iaa168722f362c36bdfa87fe20dc0a59b43cf1ca3
udioSystem.cpp
AudioFlinger.cpp
|
1392eb3d1802e9f894f87d7a7387207d1b6faca1 |
25-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Fix operator precedence Change-Id: I164708a5b76a341a185467b008ecbec98d58a6df
haracterEncodingDetector.cpp
|
d4a31b8bcd7df99dfce2f25a32badf4611a6ba1a |
19-Mar-2014 |
John Spurlock <jspurlock@google.com> |
Merge "Add MediaPlayer::getAudioStreamType."
|
de9453fb5cbc9cd69fd1ea45d577851e3aa3b8c9 |
19-Mar-2014 |
John Spurlock <jspurlock@google.com> |
Add MediaPlayer::getAudioStreamType. Change-Id: I9cd8a718d2873543609aa651fd85749478f4f89f
ediaplayer.cpp
|
bfd55f243feb3f04e26ad07aae035475768ada8a |
18-Mar-2014 |
Marco Nelissen <marcone@google.com> |
Use more tags to help the ICU detector. The detector only gave non-ascii data to ICU. In some cases that could result in very short data, for which ICU would issue a low confidence level for the actual encoding. By padding the data with additional (ascii) tags, we improve accuracy for such files. Becauses this can reduce accuracy in other cases, only do this when the initial confidence is low. b/13473604 Change-Id: I63d932043155c310b0e358cdf2d37787961e94b7
haracterEncodingDetector.cpp
haracterEncodingDetector.h
|
c5a17425986b4ce3384e6956762c86018b49c4a0 |
13-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Remove name output parameter from createTrack It was only used for one log. A better solution will be a per-track unique ID. Change-Id: Ia440e02ae4a5a4019a9a2d08970e1ee93ac4c3a3
udioTrack.cpp
AudioFlinger.cpp
|
c644345b0b8f5292a049c4cee2bb7a2a6159b884 |
11-Mar-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
Merge "AudioTrack non-blocking write"
|
3a90f2849d49bf65f2d6257fd6da30ae46d745fa |
10-Mar-2014 |
Marco Nelissen <marcone@google.com> |
Fix freeze on pause isOffloaded() tries to lock mLock again. We should be calling isOffloaded_l() b/13394633 Change-Id: I155be6fee937f894d8e6c974e593223ab6014ade
udioTrack.cpp
|
f566406a48ecf878d8a0034b6c600d42454d264c |
08-Mar-2014 |
Eric Laurent <elaurent@google.com> |
am 6db20dcb: Merge "AudioTrack: When paused, return cached playback position" into klp-dev * commit '6db20dcb54dad932a3ea2e3a5dca41fce5802eb4': AudioTrack: When paused, return cached playback position
|
6950d10077d10757e894d8e125ba5111eb02517a |
08-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
am 2f55c2c0: Merge "Simplify AudioTrack stream end and fix race" into klp-dev * commit '2f55c2c03b17795e94b325d402ac5b409e3ba0e8': Simplify AudioTrack stream end and fix race
|
3a20f9af8587d2e5bbf4654a3a958f43c4133445 |
08-Mar-2014 |
Eric Laurent <elaurent@google.com> |
am 38efe8eb: am 6db20dcb: Merge "AudioTrack: When paused, return cached playback position" into klp-dev * commit '38efe8eb08e08610d535a164768851ac7c13d654': AudioTrack: When paused, return cached playback position
|
38efe8eb08e08610d535a164768851ac7c13d654 |
08-Mar-2014 |
Eric Laurent <elaurent@google.com> |
am 6db20dcb: Merge "AudioTrack: When paused, return cached playback position" into klp-dev * commit '6db20dcb54dad932a3ea2e3a5dca41fce5802eb4': AudioTrack: When paused, return cached playback position
|
6db20dcb54dad932a3ea2e3a5dca41fce5802eb4 |
08-Mar-2014 |
Eric Laurent <elaurent@google.com> |
Merge "AudioTrack: When paused, return cached playback position" into klp-dev
|
77a85ebe1fc28f3af07ebefeea53fad778f442c0 |
07-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
am 4ee774f3: am 2f55c2c0: Merge "Simplify AudioTrack stream end and fix race" into klp-dev * commit '4ee774f322ad3292fcfbb3c120cf250643419425': Simplify AudioTrack stream end and fix race
|
4ee774f322ad3292fcfbb3c120cf250643419425 |
07-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
am 2f55c2c0: Merge "Simplify AudioTrack stream end and fix race" into klp-dev * commit '2f55c2c03b17795e94b325d402ac5b409e3ba0e8': Simplify AudioTrack stream end and fix race
|
dcec903589ac651b9f558454392d286c13f743fb |
20-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Simplify AudioTrack stream end and fix race Bug: 10994052 Change-Id: Ib2e38e7a600bcffef8cbc68c1722e40fbbc7ea67
udioTrack.cpp
|
b8d0b780c9ae160b830cc7a31b22600293e4978b |
07-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
am af191eb4: Merge "Replace size_t in shared memory by uint32_t" * commit 'af191eb4feac513d17dc0362e0cea5bc9e0ffe9d': Replace size_t in shared memory by uint32_t
|
e857b65c1d3aa055281cb48f59c9b5eb4a062dd0 |
07-Mar-2014 |
Narayan Kamath <narayan@google.com> |
am 3c9130a8: Merge "Make frameworks/av 64-bit compatible" * commit '3c9130a8a12ce962dc8d22e04243b135b9e98b01': Make frameworks/av 64-bit compatible
|
32fbb48de0248518fc5a14099b32fe4b8e9fc102 |
07-Mar-2014 |
Glenn Kasten <gkasten@android.com> |
am 4361749d: Merge "AudioTrack: Never try to use the fast path if resampling is required" * commit '4361749d74113069aafb0620a1189404205c58d0': AudioTrack: Never try to use the fast path if resampling is required
|
2048c2292c0466b184fb8f67c91f4d0ab9f5c3f3 |
08-Jan-2014 |
Haynes Mathew George <hgeorge@codeaurora.org> |
AudioTrack: When paused, return cached playback position An offload output can be re-used between two audio tracks having the same configuration. A timestamp query for a paused track while the other is running would return an incorrect time. To fix this, cache the playback position on a pause() and return this time when requested until the track is resumed. Bug: 12826612. Change-Id: Ia42b8b8fd2ba8993dfcc9abca72da48d71d78d74
udioTrack.cpp
|
1c32a00b8750998562a8d76351ba5c6d2ed788c8 |
07-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Simplify AudioTrack stream end and fix race"
|
7064fd2dcdfeafea53cd5a992bb78c413542f29f |
08-Jan-2014 |
Haynes Mathew George <hgeorge@codeaurora.org> |
AudioTrack: When paused, return cached playback position An offload output can be re-used between two audio tracks having the same configuration. A timestamp query for a paused track while the other is running would return an incorrect time. To fix this, cache the playback position on a pause() and return this time when requested until the track is resumed. Bug: 12826612. Change-Id: I324112ea9827e52fff53ef44cd8513c8d85a0bc4
udioTrack.cpp
|
ebcb254adb7402ab89ae97c4d9d16d886790dcb3 |
06-Mar-2014 |
Eric Laurent <elaurent@google.com> |
audio policy service: clean up type casting. Change-Id: If16d6495c16e0d61a221f81bfd49e7d14bbfdc12
AudioPolicyService.cpp
|
c1e06f692cf16a8c9f5ae921ab4d642f7a082877 |
06-Mar-2014 |
Eric Laurent <elaurent@google.com> |
am 09e45992: am 25a86930: am 88876fb4: AudioTrack: fix obtainBuffer timeout calculation * commit '09e45992067f03a05f82400a6cacf16bb8018f16': AudioTrack: fix obtainBuffer timeout calculation
|
25a86930ac0ccf4750ad2fb0c2f5a4a122d24ecf |
06-Mar-2014 |
Eric Laurent <elaurent@google.com> |
am 88876fb4: AudioTrack: fix obtainBuffer timeout calculation * commit '88876fb4eb8365343f2a9ca0e8f53148ca38b845': AudioTrack: fix obtainBuffer timeout calculation
|
d812fc012298470a1b8120e6d60a24b0b1d48047 |
03-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Increase kFastTrackMultiplier from 1 to 2 Bug: 11967381 Change-Id: Iedec06280aa745d9df5d661f4916940cede9c191
udioTrack.cpp
|
88876fb4eb8365343f2a9ca0e8f53148ca38b845 |
28-Jan-2014 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix obtainBuffer timeout calculation AudioTrack::obtainBuffer() passes a pointer to a timeout variable that has gone out of scope when calling ClientProxy::obtainBuffer(). Same fix for AudioRecord. Bug: 11968591. Change-Id: I5b3d0d86ed2bd8c0412eb2432b1ab519d70efce9
udioRecord.cpp
udioTrack.cpp
|
d0115d8c4db2f337030dea706bc0a434c4a03ed6 |
27-Jul-2013 |
Eric Laurent <elaurent@google.com> |
update offloaded audio track sampling rate AudioPlayer must read the sampling rate from offloaded audio sinks whenever a new time position is computed as the decoder can update the sampling rate on the fly. Bug: 12823955. Change-Id: I997e5248cfd4017aeceb4e11689324ded2a5bc88
udioTrack.cpp
|
720ad9ddb2ac6b55b0dfbfcd2d8360151d8ac427 |
04-Feb-2014 |
Jean-Michel Trivi <jmtrivi@google.com> |
AudioTrack non-blocking write Bug 7531968 Change-Id: I6d0e79fa8cab5b6eb36bcc34977f4cf0d7eec8ea
udioTrack.cpp
|
ecc8155914bf006d435b825c0fda24f446228709 |
01-Mar-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Make openRecord_l more like createTrack_l for fast tracks: part 3"
|
f0aaabfeab95f67889fd417947900d6ec7dbdd3c |
28-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Make openRecord_l more like createTrack_l for fast tracks: part 2"
|
879707057cde0a83b5f6143c918c66b8f4a97581 |
28-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Make openRecord_l more like createTrack_l for fast tracks: part 3 Create the callback thread earlier, before creating the IAudioRecord, so that the thread's tid is available as a parameter to openRecord(). Also move initialization of mCbf to same point as in AudioTrack.cpp. Change-Id: I61ea4c5e2724ccfc691aaf51bc02a7c10d5a7495
udioRecord.cpp
|
2c48f27be6b3ae58e451d9b56c1dfd00e606f345 |
27-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Make openRecord_l more like createTrack_l for fast tracks: part 2 Assume double-buffering because we don't know the true HAL sample rate, and for fast tracks we must accomodate kernel scheduling and app computation jitter. Change-Id: I983d6048a8b4814cfa5bf789397cdd9f1572256c
udioRecord.cpp
|
d2304db2fcb5112292105a0949a55986a4c9875f |
03-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Rename setStreamOutput to invalidateStream And simplify by removing the unused I/O handle parameter 'output'. Change-Id: Ie9c4df17a7378066312d4ed8790fda7a9125c95e
AudioFlinger.cpp
|
33ca5cf8826f5fcd9c011e8d336138b62d982f2a |
28-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Make openRecord_l more like createTrack_l for fast tracks: part 1"
|
bce50bfc3846ab008bafa75c5d3f29fd7b5395f7 |
28-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Fix type of AudioTrack/AudioRecord parameter frameCount It's size_t consistently Change-Id: I29638ef59ac773218025f2403a3508a307b487e0
udioRecord.cpp
udioTrack.cpp
etPlayer.cpp
oundPool.cpp
|
838b3d8bafa4a781e277870dee4e0390165cff52 |
28-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Fix type of AudioTrack/AudioRecord parameter notificationFrames It's uint32_t consistently Change-Id: If8298c7e9aeea2b951fe47b675adbdf48d104846
udioRecord.cpp
udioTrack.cpp
|
484b4cd809aa46a54791d5c82a78d0f8aac895cf |
27-Feb-2014 |
Marco Nelissen <marcone@google.com> |
Merge "Don't crash on remote read error, just return"
|
c6ba823a397abf865b02f4f48fe18231f94d8e87 |
27-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Make openRecord_l more like createTrack_l for fast tracks: part 1 Use the transfer mode to distinguish use cases, as the presence of a callback handler is not sufficient. For example, the track could be configured for synchronous transfer with write() or read(), and also have a callback handler for position updates. But that does not mean the track can operate in fast track mode. Change-Id: I2a7f1f0ca98e68efe180b524496985109d8ce291
udioRecord.cpp
udioTrack.cpp
|
19a9fef6d2970a615f4f33025f9141e44b7c9f34 |
27-Feb-2014 |
Marco Nelissen <marcone@google.com> |
Don't crash on remote read error, just return Change-Id: I35a2af255f55e008d64142ed0eceb6e83473d630
MediaHTTPConnection.cpp
|
e27e2d9bcabc1a367cb56b4599665c931a1d22ec |
27-Feb-2014 |
Derek Sollenberger <djsollen@google.com> |
Fix includes to no longer pull in Skia includes directories. bug:13225538 Change-Id: I4fccc414923f7e62cd46d691c67cb44b9692c225
ndroid.mk
|
c08d20b6a37122ebf116262c9372509ed060d4c1 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Simplify error handling after track creation IAudioFlinger::createTrack and IAudioFlinger::openRecord both guarantee that (status == OK) == (sp<> != 0). Change-Id: I91cb4f7e843019efb65cace7ba146f7da7aa5b59
udioRecord.cpp
udioTrack.cpp
|
045e739161f5ae00321a6cfba20935abb791005b |
26-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Move initialize of mInput to match AudioTrack Change-Id: I4dc977f22f51cd618dc83d800b4b8756929a4612
udioRecord.cpp
|
f7cc3631c5c264e13ce8c6bc15bd829b2ff9b036 |
26-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Update comments to match AudioTrack Change-Id: I7dd14eabd78c9130a157da2063a1d65ec4f9c65a
udioRecord.cpp
|
a5ed48d3476df7dd1e10b380a68e3333f2b646fd |
26-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Move initialization of mRefreshRemaining to match AudioTrack This also fixes a bug where, for a re-created IAudioRecord, mRefreshRemaining was not being reset correctly. Change-Id: I9f721a4edf92aab859cf3f247ab7f65562d14fb0
udioRecord.cpp
|
591d9a3652f868652ccc48dd9e9714f3a9813963 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "mAudioRecord is always non-0 if set() is successful"
|
7c1b8941bb54e38f2a717e41af0d9565f5977c27 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Unify comments and whitespace between AudioTrack and AudioRecord"
|
6c69333431b2fdd995a1c2eb6f01182155f4a691 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Update channel fields at same place in AudioTrack and AudioRecord"
|
882469cfe767188a4c67d2d83f3d72ab553a4818 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Update mReqFrameCount at same point in AudioTrack and AudioRecord"
|
99ef241a8d310b3319c02eac18de9bb7422c5ab0 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Permit AudioRecord to support non-linear formats in future"
|
9f474b7824abb0d5408d02e365cf37a986663979 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Simplify and cleanup error handling in AudioRecord::getMinFrameCount"
|
172abfe2cc30104282f8e65b82e9c9758adc83da |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Add log at entry to set() in AudioTrack and AudioRecord"
|
b42f318d9733f88c7eb9bedfd33b086b8ea5dff5 |
24-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Simplify and cleanup error handling in AudioRecord::getMinFrameCount Change-Id: I8721ecedfb429c4e233453d1e768ddf69ecabbe4
udioRecord.cpp
|
089e87201522c8979ac8f00fa729e907f54c790b |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
mAudioRecord is always non-0 if set() is successful Change-Id: I0c2483210903c922f06f097ada373a37b9a90a02
udioRecord.cpp
|
5f631515d098c29603cda88f7a7e7580a2d55b57 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Unify comments and whitespace between AudioTrack and AudioRecord Change-Id: I5320a6b2d7f7077cb12d7da4f2ca30a940100bf2
udioRecord.cpp
udioTrack.cpp
|
e3247bf8dd4f8fa8dfa3a108260241ae4a967569 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Update channel fields at same place in AudioTrack and AudioRecord Change-Id: I4b649feeef47e7968a9fa3a460217017ca9b05fe
udioTrack.cpp
|
11cb175005db0090345f44bfa049b52fd8c809b8 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Update mReqFrameCount at same point in AudioTrack and AudioRecord Change-Id: I12369dfbb9e75389f2cab015a706decdaf310a0d
udioRecord.cpp
|
c85df82b1e8b05714268926a8bb3deb9c65f9a22 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Permit AudioRecord to support non-linear formats in future But still restricted to 16-bit PCM currently Change-Id: I5df0e5033da9144ca73e44addf14a63d31406034
udioRecord.cpp
|
86f04663032ddaa25110149d709bbf896ad83b02 |
25-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Add log at entry to set() in AudioTrack and AudioRecord Change-Id: Ife23b88474c1d62c0cf682c1a310d951f2c0f54a
udioRecord.cpp
udioTrack.cpp
|
c9c7e25a4b1c34439fb365f6cfbef063884566cc |
21-Feb-2014 |
Marco Nelissen <marcone@google.com> |
Add method to get redirected Uri Change-Id: Id8aac1077c3de1bb1f58bfcfcca93d685abe9b79
MediaHTTPConnection.cpp
|
e9841c60ab2b954b97628801bd3bb2f84a69a35e |
18-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Simplify and remove old comment"
|
6dd62fb91d82dedcfa3ab38c02eb0940b4ba932a |
06-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Multi-client recording Supports multiple clients both at native sample rate and with resampling. Change-Id: Icea55b4fd30751761b7debaa3ce016c79e712d8d
udioRecord.cpp
|
ee3759090c2194eaeca4944a01104771ff1c91d2 |
18-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Simplify and remove old comment Change-Id: Iee41641252f65cea9ce0ea0ec1ea4229608f7c64
ndroid.mk
|
f3b785ae6ea135115b54ac58cedc12b444483902 |
18-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Move StateQueueInstantiations to libinstantssq"
|
3e8027a04c20a4b7028f1615538b36219386c9e5 |
15-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
Move StateQueueInstantiations to libinstantssq This removes a circular dependency between libmedia and libnbaio Change-Id: I3692cbbe2b76028a953b36606b62cdda70c8c26f
ndroid.mk
|
7074296c72b3be919ebc9dfd504f4572a188d2e7 |
18-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Fix warning due to incorrect log format Change-Id: I58ff399ace74965ebf8e5690c20637385f9425ad
AudioFlinger.cpp
|
e03dd22716e688faa56467561827d9b1ea0c4214 |
28-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
When passing a size_t via binder, use 64-bits unconditionally 64-bits is almost always over-kill. But it's easier and cleaner to change the binder code to be accurate, than to rename all the the API parameter types to be 32-bit. Bug: 12381724 Change-Id: Ib8f198d814a2027760ef24e9e3feacee21a973b1
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioTrack.cpp
MediaLogService.cpp
MediaMetadataRetriever.cpp
OMX.cpp
StreamSource.cpp
|
751a9c8cbc391a91604dd1052fb95d3e4d278c2f |
28-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Replace size_t in shared memory by uint32_t Eventually we may want to use uint64_t, but will need to confirm atomicity. Bug: 12381724 Change-Id: Ia2c591d262d22b47b6f7dab4b9d9faa14b86d865
udioTrackShared.cpp
|
d457c970c8d08519cd77280a90b61ae1e342cfe3 |
11-Feb-2014 |
Marco Nelissen <marcone@google.com> |
Track pid for each session so they can be properly freed. Change-Id: I6f389035bc29e74e7c367c1c6d0252b180f666b3
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
ediaplayer.cpp
|
1d6fa7af1288b550faabe4ec2cf98684236723db |
11-Feb-2014 |
Narayan Kamath <narayan@google.com> |
resolved conflicts for merge of 566be7c3 to master Change-Id: I7b1cc71057b2bd4f771e7bcf508a8c3abd6017ce
|
377b2ec9a2885f9b6405b07ba900a9e3f4349c38 |
03-Feb-2014 |
Kévin PETIT <kevin.petit@arm.com> |
Make frameworks/av 64-bit compatible Contains the necessary changes to make frameworks/av build and work on a 64-bit machine. Signed-off-by: Craig Barber <craig.barber@arm.com> Signed-off-by: Kévin PETIT <kevin.petit@arm.com> Signed-off-by: Ashok Bhat <ashok.bhat@arm.com> Signed-off-by: Marcus Oakland <marcus.oakland@arm.com> Change-Id: I725feaae50ed8eee25ca2c947cf15aee1f395c43
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
|
43bdc1de363a3c72c7dcf9c9a898bac109dc7cb5 |
10-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Fix build after merge from AOSP Change-Id: I1cd3432c02db1600e49ade67e6a89e39e7a8d3ed
udioTrack.cpp
|
3523e8c40bc60af0c95d1aa71a51a13d69ec80a2 |
10-Feb-2014 |
Glenn Kasten <gkasten@android.com> |
am 4e12dade: am 4361749d: Merge "AudioTrack: Never try to use the fast path if resampling is required" * commit '4e12dadeec10993d2f77cce96600e73ca0dd86e2': AudioTrack: Never try to use the fast path if resampling is required
|
ec95f0e82a680931e9c7c9011dbbd68d5ab484c8 |
10-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Use printf format %#x for audio_format_t in logs"
|
1dd3da08445ac96e64a1ca72ba0c11876cc4d631 |
08-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix warnings about unused parameters"
|
4944acb7355b3aa25748fd25945a363a69d65444 |
19-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Fix whitespace Change-Id: I9add0872030a26933f6b6dad1be299154611cc56
udioSystem.cpp
oundPool.cpp
|
cac3daa6332bf6d1f7d26adc4a9915f3d7992dd9 |
07-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Use printf format %#x for audio_format_t in logs Change-Id: I1c611d1037685d52ccc84efe0fccd6413ec938e9
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
|
80520381d0bdf3451bd17c9ddef73d3fe71c58c2 |
01-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Fix warnings about unused parameters Change-Id: I27dc108e2c1f7ffd414bb7ff3d4c349651da6c26
ediaProfiles.cpp
|
cfb2c130153eaf6e8bb36c5d787557e78bf9804b |
06-Feb-2014 |
Andreas Huber <andih@google.com> |
Merge "Remove no longer needed http proxy handling code, it's obsolete now"
|
81e68448f3361eaf8618930471fdc3c21bdf5cbc |
05-Feb-2014 |
Andreas Huber <andih@google.com> |
Remove no longer needed http proxy handling code, it's obsolete now since we started to use java's HTTPConnection instead of the native implementation. Also remove other remnants of the previous http implementation, such as accounting for the http user's uid. Change-Id: I60bfd31381ea40d2220db587ec5c433093b60034
MediaPlayerService.cpp
ediaplayer.cpp
|
0f1f2826893bd55da8e93b79830d3a7b171509e3 |
05-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Add AudioRecord::mReqFrameCount similar to AudioTrack"
|
b3b2e23fcf7e050710d23b82a6682c0f3d869b69 |
05-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Add AudioRecord::mReqFrameCount similar to AudioTrack Change-Id: I62d6534a9581e84ae20c2422f7ad9aeda9b7c4df
udioRecord.cpp
|
412d4744efae64083e4f99a664e3efaba031af48 |
05-Feb-2014 |
Andreas Huber <andih@google.com> |
Merge "FINAL ATTEMPT: HTTP services are now provided from JAVA and made available to media code"
|
2a16afb8dc056877f34124ba5befe75171de930f |
05-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix unused parameter warnings in audio"
|
1b86fe063badb5f28c467ade39be0f4008688947 |
29-Jan-2014 |
Andreas Huber <andih@google.com> |
FINAL ATTEMPT: HTTP services are now provided from JAVA and made available to media code Change-Id: I9f74a86e70422187c9cf0ca1318a29019700192d
ndroid.mk
MediaHTTPConnection.cpp
MediaHTTPService.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerService.cpp
oundPool.cpp
ediametadataretriever.cpp
ediaplayer.cpp
|
e726d65778ce78092010df2354156c09d311423f |
03-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Replace size_t in shared memory by uint32_t"
|
0f11b51a57bc9062c4fe8af73747319cedabc5d6 |
01-Feb-2014 |
Glenn Kasten <gkasten@google.com> |
Fix unused parameter warnings in audio Change-Id: I665ba3358dd9502f0adec70d486e7bf8a2e1b0fe
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
|
398f21348e5100289f6e5be30c8b5257fa04aaf9 |
31-Jan-2014 |
Martin Storsjo <martin@martin.st> |
AudioTrack: Never try to use the fast path if resampling is required Unless AudioFlinger was built with FAST_TRACKS_AT_NON_NATIVE_SAMPLE_RATE enabled, AudioFlinger would deny using the fast path (and internally fall back to the normal codepath) when it realized that resampling was required. Since the buffer size calculations within AudioFlinger don't take resampling into account properly (see the calculation below "AUDIO_OUTPUT_FLAG_FAST denied" in audioflinger/Threads.cpp, just below the hunk that this patch changes), make sure AudioTrack doesn't try to use the fast path if resampling is required. This removes the possibility to enable FAST_TRACKS_AT_NON_NATIVE_SAMPLE_RATE in AudioFlinger since it AudioTrack now won't even try to use the fast path for content that requires resampling, regardless of the AudioFlinger configuration. Change-Id: Icf0f8ad50bf0fdb84657f518c0120aa0535f23f9
udioTrack.cpp
|
fdac7c00f9201bb3a9862069145f01d37e39755b |
28-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Replace size_t in shared memory by uint32_t Eventually we may want to use uint64_t, but will need to confirm atomicity. Bug: 12381724 Change-Id: Ia2c591d262d22b47b6f7dab4b9d9faa14b86d865
udioTrackShared.cpp
|
df576995a5aad3428aeeef765387d650945c161d |
28-Jan-2014 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix obtainBuffer timeout calculation AudioTrack::obtainBuffer() passes a pointer to a timeout variable that has gone out of scope when calling ClientProxy::obtainBuffer(). Same fix for AudioRecord. Bug: 11968591. Change-Id: I22af8f94fa2f8cc54ab5c25c89167c805e754317
udioRecord.cpp
udioTrack.cpp
|
8e26486d2d811f94118381a163178078a3eee6c0 |
27-Jan-2014 |
Eric Laurent <elaurent@google.com> |
am 9f875b27: am 8ba3192f: am d0e7e801: Merge "Do partial reads in MemoryLeakTrackUtil" * commit '9f875b2717b683cc61e3fa4ba24b3693fab5b46a': Do partial reads in MemoryLeakTrackUtil
|
363fb75db26698cbb50065506e0c80b61d1fbf92 |
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Remove the redundant parameters from createTrack_l() AudioRecord::openRecord_l() code was refactored earlier to remove the redundant parameters: > Change-Id: I124dce344b1d11c2dd66ca5e2c9aec0c52c230e2 This changelist refactors AudioTrack similarly. Change-Id: Iefd2bd662870ea81d04eff7b7c26f9c8b0dadd26
udioTrack.cpp
|
38e905b3cbba4da443d799b16999989781afc6d8 |
13-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Refactor code related to I/O handles to reduce chance for leaks The AudioRecord input handle code was refactored earlier to fix a potential handle leak, and to simplify the code: > Change-Id: I124dce344b1d11c2dd66ca5e2c9aec0c52c230e2 This changelist refactors AudioTrack similarly, and adds further cleanup of both AudioTrack and AudioRecord. We attempt to implement the rules for referencing counting I/O handles, but there is still the possibility of a handle leak if the client process dies after allocating the handle reference but before releasing it. That issue is being tracked separately. Details: - AudioSystem::getOutput() is now called within createTrack_l - restoreTrack_l was missing offload info now it has the info available, but is not yet being called for offloaded tracks - AudioTrack::getOutput() is now const - Remove getOutput_l() Change-Id: I44a0a623d24fc5847bcac0939c276400568adbca
udioRecord.cpp
udioTrack.cpp
|
f0002d142e6d24c5438600b2c259679de710f8ac |
24-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Replace control block frameCount_ by explicit in/out parameter"
|
6d39eb9d7da2ca8eb733f2d2eba686c56b24885b |
22-Jan-2013 |
Oscar Rydhé <oscar.rydhe@sonymobile.com> |
Do partial reads in MemoryLeakTrackUtil Do partial read in MemoryLeakTrackUtil dumpMemoryAddresses to avoid using more memory than what is allocated. Change-Id: I94feb4e00647407f938571167b981c7371f39e3d
emoryLeakTrackUtil.cpp
|
3a0b6bd22aa32daa729b05c33896400807027eee |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Use uint32_t sequence numbers for IAudioRecord"
|
1071915ad4ffb47825a946706f8fa73c0d22d7f8 |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Make copy of audio_offload_info_t for future use"
|
543140eb709a07bc386eb5f667a4a72e31dba56c |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Move up initialization of mFormat, mStreamType, and mSharedBuffer earlier"
|
0ce5ca5e113d58cbcb7cb48615d6dbbf3fbe7c66 |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Cleanup createTrack error handling"
|
d0b33f63a9364364a827e77da26b112edf3c4d6e |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead code in AudioTrack::processAudioBuffer"
|
269a7e210949c4b28ba84dc71b9f99f6ef14f94e |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Cleanup loop termination logic in AudioRecord::obtainBuffer()"
|
a1ebc3b03d4dca534374c19e3c4f32ee687942e3 |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Improve logs in AudioTrack::getMinFrameCount"
|
6d88aaf9cd810d96a4888dff8bd33d44cd01ccaa |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord: fix unwanted overrun when restarting"
|
6a507298357c9ff869b97db57a890e58bd6bdec0 |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord::getInputFramesLost() cleanup"
|
32a7e0a5f7b000951b9adb80b17796f35b024816 |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Unify comments between AudioTrack and AudioRecord"
|
b5ccb2d99b2af400c70777a6452f090ac14f5a96 |
13-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Make copy of audio_offload_info_t for future use Change-Id: I515970aa0660418d5d1640fb1bf477e112c89bdd
udioTrack.cpp
|
dd5f4c8c4059f890e81b28b026a688febb4e1dd9 |
13-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Move up initialization of mFormat, mStreamType, and mSharedBuffer earlier This will allow removal of most of the parameter list to createTrack_l. Also check for valid stream type at client so we can log a better error message. Change-Id: Ia7176896d47fbb49106119fca26d9de8e7efe859
udioTrack.cpp
|
0cde076ddb283c84c3801a2df4cc3df99bd1577f |
17-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Cleanup createTrack error handling Similar to cleanup done earlier for openRecord in this CL: > Change-Id: I84897dd7d30b370640b54e928f230604b873cb68 Bug: 10888816 Change-Id: I804a47f898e0319a60a9bd58906bbb037e45cc25
udioTrack.cpp
AudioFlinger.cpp
|
5e1f79baa5c7355effbd2c9183787d6604487908 |
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
AudioRecord: fix unwanted overrun when restarting Apply the same fix to AudioRecord as this CL did for AudioTrack: > Change-Id: Id703f8dc092a6f07c905eee194054b4a978f979d Details: When restarting an AudioRecord from stopped state, it is necessary to force refresh of mRemainingFrames by processAudioBuffer() as the last read before stop() could be partial. No doing so will lead into unnecessary sleep before filling the non contiguous part of the buffer returned by obtainBuffer() when processAudioBuffer() is executed for the first time after start(). Change-Id: I0ff04648e990e97bad5ea3db5be0c4151250d5e1
udioRecord.cpp
|
d8a9d0220e84ae0b5049385aa9b1a0d8ea02b5bb |
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Cleanup loop termination logic in AudioRecord::obtainBuffer() Apply the same change to AudioRecord, that was already done for AudioTrack in this CL: > Change-Id: I0fc48117946364cb255afd653195498891f622bd If the proxy->obtainBuffer at the end of the "do" loop fails with status DEAD_OBJECT, and the restoreRecord_l during the next trip of the "do" loop also fails, then the value of the buffer fields will be based on the previous proxy->obtainBuffer that returned DEAD_OBJECT. This will have cleared the buffer, but it's tricky. So instead explicitly clear the buffer after restoreRecord_l, before breaking out of the loop. Change-Id: Ifc97f2ab7b8195d6b149502bb5d765d2983b07be
udioRecord.cpp
|
70c0bfbe5ec88dcc3efa2bd8df26f36cff1cf03a |
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Improve logs in AudioTrack::getMinFrameCount Change-Id: I8b478e6abdded26a43f32c131931939e9ae36fd7
udioTrack.cpp
|
7103d9671ded507fd3f6938297019a32f71ea5a0 |
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Remove dead code in AudioTrack::processAudioBuffer Change-Id: I0baefe9dc08bb5ec45d34698fc764caa160789d2
udioTrack.cpp
|
8ff50e7526d24aca11713006933b8dcb64ef6be9 |
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Use uint32_t sequence numbers for IAudioRecord This makes it the same as for IAudioTrack. Previously we had a mix of int, int32_t and uint32_t, which could cause comparisons to fail. Change-Id: Ic72ef650ee81f65db11e42ed16d818fdf3e310f4
udioRecord.cpp
|
ac1954cb9a480a409e8cee4193fc534a6a29fbb6 |
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Document AudioTrack mFrameCount and mReqFrameCount better"
|
dbed8955148dd2fe39584007c528e3a532f1a04e |
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix error handling in AudioSystem::getOutputForEffect"
|
5f972c031d4061f4f037c9fda1ea4bd9b6a756cd |
13-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
AudioRecord::getInputFramesLost() cleanup Fixed bug that if the binder call failed (for example if the IAudioFlinger binder is dead), then getInputFramesLost was returning garbage. Now it correctly returns zero, which is the error value for this method. The type declarations for getInputFramesLost were inconsistent: a mixture of unsigned int, size_t, and uint32_t. Now it returns uint32_t everywhere, which is what the underlying HAL API returns. Added a FIXME about the side effect behavior. This will need review for multi-client. Change-Id: Ifa2e117a87dbd0c1f2c892a31d1c3dd919bf1a0a
udioRecord.cpp
udioSystem.cpp
AudioFlinger.cpp
|
5b27ccd67c845aa20a12a1fb58339e7e81e3d536 |
15-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Use AUDIO_SESSION_ALLOCATE instead of 0"
|
2b2165c75790050810460c8de3f414876bce4c0e |
13-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Unify comments between AudioTrack and AudioRecord Change-Id: I00a1025e2891a1c96218b3c2187eaddda6614ebc
udioRecord.cpp
udioTrack.cpp
|
23a7545c4de71e989c2d8ebf1d5b9dcf463c36a9 |
13-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Document locking rules for mFlags, and fix discrepancies Change-Id: Id45ba544cc84133ed5e578fb4fd8a11b62211dc1
udioTrack.cpp
|
84fba38b60c2ddb02b9a787f56be88fc084b4a16 |
14-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix race in AudioTrack::getParameters()"
|
7e47f25f9031e231f5fdbbb789435485d1af45af |
14-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Improve error logging for getOutputSamplingRate"
|
41721bb796da589f8a669d1db7687a0da8f88761 |
13-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Fix race condition in AudioRecord::pause followed by start Bug: 11148722 Change-Id: Ia1e14133d73ac301fe06a047e70a573911822630
udioRecord.cpp
|
b1bef51fec06e8bceec914d1b48b411d3ff2adff |
13-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Improve error logging for getOutputSamplingRate Change-Id: I3b52402a663b27efe1d7c6a4f684521f33f3ff8f
udioTrack.cpp
|
2c6c5294388e251ebc1e00d6c8785190561c27fc |
13-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Fix race in AudioTrack::getParameters() mOutput is protected by mLock. Change-Id: Id02e627062855ca60f28bd8961b1d5f44939c727
udioTrack.cpp
|
396fabdb6efcdac5aea3d9f559d1beedf6a4cedc |
08-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Document AudioTrack mFrameCount and mReqFrameCount better and remove unnecessary initialization of mFrameCount in set(). Change-Id: I9effeb0a6dd035ca02fe77f6992c55d9515b4df6
udioTrack.cpp
|
efa6ea97022780b68e595e5326e30dbe2a799202 |
08-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Fix error handling in AudioSystem::getOutputForEffect and AudioPolicyService::getOutputForEffect. The conventional error value for audio_io_handle_t is 0, not a status_t cast to audio_io_handle_t. Change-Id: I34b3fd1a50f3fa1cbf39f32eea1911112a4e094a
udioSystem.cpp
|
e2b2858b6ff0249b0c3bd6cb042afc8cf1fd78cf |
09-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Cleanup AudioTrack::getMinFrameCount error handling"
|
f344c6cef51df9974640557f7baccb537492fa54 |
09-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Merge "Cleanup AudioSystem::getInputBufferSize error handling and caching"
|
66a0467fdddada4caabd0f0a999fbb367fea7bee |
08-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Cleanup AudioTrack::getMinFrameCount error handling Guarantee to return a non-zero frameCount for return status NO_ERROR; Return the correct specific status_t if any of the AudioSystem APIs fail, instead of the generic NO_INIT. API change: getMinFramCount no longer defaults to zero on error, so callers _must_ check the return status. This change makes getMinFrameCount more like other APIs. All known callers were reviewed, and they do check the return status. Change-Id: I4a8342a75ee89a068c23c84b8380ed9d1b968507
udioTrack.cpp
|
f94006ca0f30c27868c284e553f57bf467ae92bc |
08-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Cleanup error handling in AudioSystem get methods Don't return zero sample rate or frame count without an error. Change-Id: I052d841080ed33e4f081ae9825a2f33dff444fb9
udioSystem.cpp
|
5446e541367061b53f45f3fd4600f9060680bca3 |
08-Jan-2014 |
Glenn Kasten <gkasten@google.com> |
Cleanup AudioSystem::getInputBufferSize error handling and caching Previously, if the IAudioFlinger::getInputBufferSize failed, it would return NO_ERROR but a zero buffer size value, which could confuse the caller. Now it returns BAD_VALUE in this case. Also it would still cache the zero buffer size. Now it does not cache on failure. Removed over-initialization of the cache globals. Change-Id: I6835fcb56fe52535e018fc8c0c242115221b5d85
udioSystem.cpp
|
a36ff9fdf912b54f639118578e8d9582e1d70dca |
21-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix some (but not all) unused parameter warnings"
|
73b61d3c2906d6d70a0843c1f0470f514c312956 |
21-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Add versions of get/SetParameters without I/O handle"
|
aea7ea06394bcb155972d82055d4ea59962e4051 |
26-Jun-2013 |
Glenn Kasten <gkasten@google.com> |
Use AUDIO_SESSION_ALLOCATE instead of 0 Also fix a couple of places where we were using AUDIO_SESSION_OUTPUT_MIX, which happens to also be equal to 0, but has a different meaning. Change-Id: I90e39be3b89f5021a96d9e3b8d10929013ca977f
udioRecord.cpp
AudioFlinger.cpp
|
74935e44734c1ec235c2b6677db3e0dbefa5ddb8 |
19-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Replace control block frameCount_ by explicit in/out parameter in IAudioFlinger::createTrack and IAudioFlinger::openRecord Change-Id: I09c644c80e92c8e744b1b99055988a2588b2a83d
udioRecord.cpp
udioTrack.cpp
udioTrackShared.cpp
AudioFlinger.cpp
|
7c7be1e05634d96d08210efb4bdeb012ffba440d |
20-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Fix some (but not all) unused parameter warnings Change-Id: Ia99e23a0b46db3f3e6aa46f9018e63c14f4af369
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
udioTrackShared.cpp
MediaDeathNotifier.cpp
oundPool.cpp
ediametadataretriever.cpp
|
c23885ebb142b9da31543789ecc3f7cf7111bc67 |
20-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Add versions of get/SetParameters without I/O handle This is a step towards hiding I/O handles from application level, as much as possible. Change-Id: I30f4171d5dcf77f8e8eb332ce2e9245b30f5f2e1
udioSystem.cpp
|
be08f6a6688f3b1ae6914fbe800953c9bfb13c45 |
19-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Fix compile warning / incomplete initialization Change-Id: Ib4accf99be800988e081f96222e1ee73538221ec
ediaplayer.cpp
|
dfeed91152cb54772b1411d7e82833ca4a48efcc |
27-Nov-2013 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix position callback after restore When restoring an AudioTrack, the next position callback point should not be modified and set ahead of current buffer head. Otherwise, as frames are dropped, the new position is never reached and an application relying on position callbacks to reload the buffer would be stalled. Bug: 11868603. Change-Id: I93b2a311642a0c89944b78bcc0482d4ceed98ae4
udioTrack.cpp
|
5e49afd05566820517747b9a8071c99ec0918328 |
27-Jul-2013 |
Eric Laurent <elaurent@google.com> |
update offloaded audio track sampling rate AudioPlayer must read the sampling rate from offloaded audio sinks whenever a new time position is computed as the decoder can update the sampling rate on the fly. Change-Id: I997e5248cfd4017aeceb4e11689324ded2a5bc88
udioTrack.cpp
|
688ca6330a5e7d072f67a1791e464fa7dec08b72 |
17-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
am 5c474238: am 5893736d: am a67c7653: Merge "Increase kFastTrackMultiplier from 1 to 2" * commit '5c474238bc579224ec8f7267d05651b0aa934100': Increase kFastTrackMultiplier from 1 to 2
|
a67c76538fff102cd44b2f38dd073df5f2a33605 |
17-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Increase kFastTrackMultiplier from 1 to 2"
|
544ad2be674423238c47650d2c8588ba7dfc9ed2 |
13-Nov-2013 |
Marco Nelissen <marcone@google.com> |
Better character set encoding detection Id3 tags are supposed to be ISO-8859-1 or unicode, but often aren't. To better detect the real encoding we now use ICU to detect possible encodings for a given byte sequence, then apply additional heuristics to determine the most likely one. b/5564857 Change-Id: I53bc83b006433da5c2f2ccfcd770ddb3a26b64d0
ndroid.mk
haracterEncodingDetector.cpp
haracterEncodingDetector.h
haracterEncodingDetectorTables.h
ediaScannerClient.cpp
utodetect.cpp
utodetect.h
|
b5fed68bcdd6f44424c9e4d12bfe9a3ff51bd62e |
03-Dec-2013 |
Glenn Kasten <gkasten@google.com> |
Increase kFastTrackMultiplier from 1 to 2 Change-Id: I158f147295eebcea96e4047d7618069bc48bdd7d
udioTrack.cpp
|
b31788687736666e58b852e744a93f772d3f7148 |
27-Nov-2013 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix position callback after restore When restoring an AudioTrack, the next position callback point should not be modified and set ahead of current buffer head. Otherwise, as frames are dropped, the new position is never reached and an application relying on position callbacks to reload the buffer would be stalled. Bug: 11868603. Change-Id: I93b2a311642a0c89944b78bcc0482d4ceed98ae4
udioTrack.cpp
|
a4f24ff9b239300b4bb2098c1413c0a60edc2d7e |
27-Nov-2013 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix position callback after restore When restoring an AudioTrack, the next position callback point should not be modified and set ahead of current buffer head. Otherwise, as frames are dropped, the new position is never reached and an application relying on position callbacks to reload the buffer would be stalled. Bug: 11868603. Change-Id: I93b2a311642a0c89944b78bcc0482d4ceed98ae4
udioTrack.cpp
|
71008b39396932f2f68f25598e9b7eb08d17d663 |
23-Nov-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Check all server-provided sp<IMemory>"
|
6f59db12a64f4496866952a251122ccb77a36c6b |
27-Jul-2013 |
Eric Laurent <elaurent@google.com> |
update offloaded audio track sampling rate AudioPlayer must read the sampling rate from offloaded audio sinks whenever a new time position is computed as the decoder can update the sampling rate on the fly. Change-Id: I997e5248cfd4017aeceb4e11689324ded2a5bc88
udioTrack.cpp
|
a1d401d9f4a6ba477f0e07204e0b9481befcc928 |
20-Nov-2013 |
Glenn Kasten <gkasten@google.com> |
Check all server-provided sp<IMemory> If the sp<IMemory> from server is non-0, make sure it also has a non-NULL pointer(). If it is NULL, treat it as if the sp<> was 0. Change-Id: I6d0bd786587eb73fac38af787c11eba541880685
AudioRecord.cpp
AudioTrack.cpp
Effect.cpp
|
a218f53d6cf9138aa5482935c16a84a5983ec6af |
08-Nov-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove default channel mask for AudioTrack"
|
8ba90326d683b035d99e24db669093e4602a7149 |
30-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
Remove default channel mask for AudioTrack It doesn't make sense to have a default channel mask, since the caller needs to know what format it will use when supplying data, and there is currently no API to return the channel mask of an AudioTrack. audio_is_output_channel() does not allow 0, so it will catch any stragglers (I'm not aware of any). Also move channel mask validation earlier. Change-Id: Ia018ded8711455581a2a935f37432b049422d492
udioTrack.cpp
|
79c5786cf5a5d572cfcf21c3d40613d86bb4093a |
30-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
Clean up channel mask handling Use type audio_channel_mask_t instead of uint32_t. Use function audio_channel_out_mask_from_count() to convert from channel count to channel mask instead of hard-coded assumption. Rename 'channels' to 'channelMask' to avoid confusion with channel count. Change-Id: I21a85e668458b773d108f95c2381eef9c4816251
oundPool.cpp
|
241be8d5874023761121043b8709a6062baac6f1 |
26-Oct-2013 |
Marco Nelissen <marcone@google.com> |
am 9cae2170: Assign blame for playback wakelocks. * commit '9cae217050aa1347d4ac5053c305754879e3f97f': Assign blame for playback wakelocks.
|
9cae217050aa1347d4ac5053c305754879e3f97f |
14-Jan-2013 |
Marco Nelissen <marcone@google.com> |
Assign blame for playback wakelocks. 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
udioTrack.cpp
AudioFlinger.cpp
|
462fd2fa9eef642b0574aa7409de0bde3fec8d43 |
14-Jan-2013 |
Marco Nelissen <marcone@google.com> |
Assign blame for playback wakelocks. Set a work source for the playback wakelock, so that playback is counted against the requesting app instead of the media server. Change-Id: I7329f88a288a95a582a78005a1c3d16a5a611e31
udioTrack.cpp
AudioFlinger.cpp
|
a153b68f2260a8ed7fbb236fa659b13264ac5ac0 |
19-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
am 77177fa2: am 95c03858: Merge "Allow releaseBuffer after flush" into klp-dev * commit '77177fa20773d02b4f9c4147ecb98107f019fa7d': Allow releaseBuffer after flush
|
77177fa20773d02b4f9c4147ecb98107f019fa7d |
19-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
am 95c03858: Merge "Allow releaseBuffer after flush" into klp-dev * commit '95c03858e2ab4fb693a2bfe47b3caa806e43c044': Allow releaseBuffer after flush
|
2e422c472c91aa7912befd0fc038d1e11f354bc1 |
18-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
Allow releaseBuffer after flush 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
udioTrackShared.cpp
|
abe0948c7b9aa32dceb82cebbfca52beb782754b |
17-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
am b2059ff3: am f8f15b05: Merge "Fix race condition in AudioTrack::pause followed by start" into klp-dev * commit 'b2059ff384eee8ffb70a7ec8fc5570405201c734': Fix race condition in AudioTrack::pause followed by start
|
b2059ff384eee8ffb70a7ec8fc5570405201c734 |
17-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
am f8f15b05: Merge "Fix race condition in AudioTrack::pause followed by start" into klp-dev * commit 'f8f15b05fe051009945c9042a1a9260280e0feb2': Fix race condition in AudioTrack::pause followed by start
|
f8f15b05fe051009945c9042a1a9260280e0feb2 |
17-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix race condition in AudioTrack::pause followed by start" into klp-dev
|
598de6c701e989385eeffa7c5dfd61f0459a2631 |
17-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
Fix race condition in AudioTrack::pause followed by start Bug: 11148722 Change-Id: Iec88f00c8510363d4418e4b8d5b34feb06ecf04d
udioTrack.cpp
|
771f1b6d196b7924707fc44177ac3a88fc31fa9e |
17-Oct-2013 |
Eric Laurent <elaurent@google.com> |
am 7f8c3973: am 120a8847: Merge "AudioTrack: fix head position after restore" into klp-dev * commit '7f8c397378a7ee5abd395413be71388ad36d3ed2': AudioTrack: fix head position after restore
|
7f8c397378a7ee5abd395413be71388ad36d3ed2 |
17-Oct-2013 |
Eric Laurent <elaurent@google.com> |
am 120a8847: Merge "AudioTrack: fix head position after restore" into klp-dev * commit '120a88471a607c85c4d60300d73c3be0a1e8f8c8': AudioTrack: fix head position after restore
|
cc21e4f1e41dfa17e7e2bef995fcd22c45f6bcd0 |
17-Oct-2013 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix head position after restore The head position transfered to the new track by restoreTrack_l() must take into account the frames that are dropped from the old track to avoid a non recoverable offset in the playback head position returned to applications. Bug: 11230062. Change-Id: I51143a08b95e8f264ed709ae2054360315f2b8b1
udioTrack.cpp
udioTrackShared.cpp
|
d5ce2091c7e11c4d869f11f22d8a38a1aedcf3ad |
14-Oct-2013 |
Eric Laurent <elaurent@google.com> |
am b930056e: am b3cb72a1: SoundPool: handle new audio track event * commit 'b930056ed4c6e1f8288d4f2cef828c3c02940482': SoundPool: handle new audio track event
|
b930056ed4c6e1f8288d4f2cef828c3c02940482 |
13-Oct-2013 |
Eric Laurent <elaurent@google.com> |
am b3cb72a1: SoundPool: handle new audio track event * commit 'b3cb72a17d9a472883e9e2faa18b42eac533fe99': SoundPool: handle new audio track event
|
b3cb72a17d9a472883e9e2faa18b42eac533fe99 |
13-Oct-2013 |
Eric Laurent <elaurent@google.com> |
SoundPool: handle new audio track event If the AudioTrack is torn down, SoundPool will never receive the buffer end event and the track will stay active for ever. The fix consists in stopping the AudioTrack when a new audiotrack event is received. Bug: 11193583. Change-Id: I9876eb2a8f75c601368f669acd67b0accf6e2736
oundPool.cpp
|
7a72e2aca9a6c46a08bc605166f90915aaeb81cb |
07-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix AudioTrack pause followed by stop"
|
35295078ab59c8c5d143a54d5a55557c3ca62c51 |
07-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
resolved conflicts for merge of 9a7d11f0 to master Change-Id: Ie4d101185a93d37ec280f608813ad62a077a584e
|
9a7d11f07dc19327892915f0bfecce758d2f4098 |
07-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
am fee4ce33: Merge "Cleanup openRecord error handling" into klp-dev * commit 'fee4ce338d78eeb58af1f66831ead53322d3859e': Cleanup openRecord error handling
|
fee4ce338d78eeb58af1f66831ead53322d3859e |
07-Oct-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Cleanup openRecord error handling" into klp-dev
|
b7f82eaed2876bacc3a402182b75323026813c30 |
04-Oct-2013 |
Lajos Molnar <lajos@google.com> |
am aa50cc78: am 56ce7260: IOMX: Add prepareForAdaptivePlayback method * commit 'aa50cc78be8a1067a0694a97b04d5a24b80af475': IOMX: Add prepareForAdaptivePlayback method
|
aa50cc78be8a1067a0694a97b04d5a24b80af475 |
04-Oct-2013 |
Lajos Molnar <lajos@google.com> |
am 56ce7260: IOMX: Add prepareForAdaptivePlayback method * commit '56ce726019f700a95ce5b45beebceadae4836e30': IOMX: Add prepareForAdaptivePlayback method
|
56ce726019f700a95ce5b45beebceadae4836e30 |
03-May-2013 |
Lajos Molnar <lajos@google.com> |
IOMX: Add prepareForAdaptivePlayback method prepareForAdaptivePlayback is the fallback mechanism to support seamless resolution change for devices that do not support dynamic output buffers. It is up to the codecs to handle this appropriately, but codecs that do not handle dynamic output buffers would request enough buffers up to the requested size in this method to avoid port reconfiguration on resolution changes. Change-Id: I58d4aa8ef1359ea3472735bbe9140c3132039b3d Signed-off-by: Lajos Molnar <lajos@google.com> Bug: 10192531 Related-to-bug: 7093648
OMX.cpp
|
34717c83733def81287e2b4ba2f62b416325c7ae |
02-Oct-2013 |
Eric Laurent <elaurent@google.com> |
am 3424d6e1: am 1adf20ce: Merge "fix volume and effect enable delay on offloaded tracks" into klp-dev * commit '3424d6e17637e0743ddf3bf4688af8ee36e69264': fix volume and effect enable delay on offloaded tracks
|
3424d6e17637e0743ddf3bf4688af8ee36e69264 |
01-Oct-2013 |
Eric Laurent <elaurent@google.com> |
am 1adf20ce: Merge "fix volume and effect enable delay on offloaded tracks" into klp-dev * commit '1adf20ce868b80a24f7387daa6549364d5509c6a': fix volume and effect enable delay on offloaded tracks
|
59fe010bcc072597852454a2ec53d7b0a2002a3b |
28-Sep-2013 |
Eric Laurent <elaurent@google.com> |
fix volume and effect enable delay on offloaded tracks 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
udioTrack.cpp
AudioTrack.cpp
|
96f04886d1c1bfbc422e2be033ea66be83e42441 |
20-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Simplify AudioTrack stream end and fix race Bug: 10994052 Change-Id: Ib2e38e7a600bcffef8cbc68c1722e40fbbc7ea67
udioTrack.cpp
|
397edb3377e5775f4df60afb8bf6d4711e5adc0e |
31-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Fix AudioTrack pause followed by stop Now the stop is not a nop. Bug: 10993355 Change-Id: Idfbfd6d14897574578b80648a16e0fc73765cb6c
udioTrack.cpp
|
c666b8f16310fc826471c0fb6ee3f7e4d3a2d067 |
24-Sep-2013 |
Eric Laurent <elaurent@google.com> |
am 8ee02943: am 1c7f35d1: Merge "soundpool: allocate shared memory heap by client" into klp-dev * commit '8ee02943b61e0a7dd78e5596720261b185a223d5': soundpool: allocate shared memory heap by client
|
8ee02943b61e0a7dd78e5596720261b185a223d5 |
24-Sep-2013 |
Eric Laurent <elaurent@google.com> |
am 1c7f35d1: Merge "soundpool: allocate shared memory heap by client" into klp-dev * commit '1c7f35d1f25eb7160314fdef536463fc34deb1ea': soundpool: allocate shared memory heap by client
|
e93cf2ca27ae6f4a81d4ef548bbf10a34db6d98f |
24-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Cleanup openRecord error handling Bug: 10888816 Change-Id: I84897dd7d30b370640b54e928f230604b873cb68
udioRecord.cpp
AudioFlinger.cpp
|
3d00aa6de95fb46e36f2bab4e3facdf0b96acf06 |
24-Sep-2013 |
Eric Laurent <elaurent@google.com> |
soundpool: allocate shared memory heap by client Current SoundPool implementation allocates the shared memory heap containing decoded PCM samples in mediaserver process. When mediaserver process crashes, the shared memory heaps allocated by AudioCache cannot be mapped anymore in the new instance of mediaserver. This causes a silent failure to end playback of new sounds because AudioFlinger believes the new AudioTracks are opened in streaming mode and not static mode: it sees a NULL shared memory pointer when the track is created. The fix consists in allocating the memory heap in the client process. Thus the heap is not lost when mediaserver restarts. The global memory usage is the same as this is shared memory. Also added a way to detect that a shared memory is passed when the track is created but cannot be mapped on mediaserver side. Also fix a crash in SoundPool when ALOGV is enabled. Bug: 10894793. Change-Id: Ice6c66ec3b2a409d75dc903a508b6c6fbfb2e8a7
AudioFlinger.cpp
MediaPlayerService.cpp
oundPool.cpp
ediaplayer.cpp
|
20fb283150ddbcf362c764d7b822f54e5bcdd457 |
24-Sep-2013 |
Jean-Michel Trivi <jmtrivi@google.com> |
am c7b2f9dc: am 402dfba6: Merge "Add support for level measurements in Visualizer" into klp-dev * commit 'c7b2f9dce911026fa13854b49aa2bb5353f68499': Add support for level measurements in Visualizer
|
2e3dcb8a00b0b151a548bfa6e61547a9dce51d72 |
24-Sep-2013 |
Eric Laurent <elaurent@google.com> |
am 3f079bb9: am 1d2536f4: Merge "AudioTrack: fix music resume" into klp-dev * commit '3f079bb9ca87c3c1834cc5be0dafc6514938b578': AudioTrack: fix music resume
|
c7b2f9dce911026fa13854b49aa2bb5353f68499 |
24-Sep-2013 |
Jean-Michel Trivi <jmtrivi@google.com> |
am 402dfba6: Merge "Add support for level measurements in Visualizer" into klp-dev * commit '402dfba6dcd68f5fd8d8921f9751f3e47eb1449d': Add support for level measurements in Visualizer
|
3f079bb9ca87c3c1834cc5be0dafc6514938b578 |
24-Sep-2013 |
Eric Laurent <elaurent@google.com> |
am 1d2536f4: Merge "AudioTrack: fix music resume" into klp-dev * commit '1d2536f460d4678770f423f50cbf6a61a13d4d11': AudioTrack: fix music resume
|
402dfba6dcd68f5fd8d8921f9751f3e47eb1449d |
24-Sep-2013 |
Jean-Michel Trivi <jmtrivi@google.com> |
Merge "Add support for level measurements in Visualizer" into klp-dev
|
09647d29eaf429ce88c9c9709ff63dee62f2147a |
20-Sep-2013 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add support for level measurements in Visualizer New commands to set a measurement mode and perform peak + RMS measurements. Bug 8413913 Change-Id: Ib25254065c79d365ebb34f9dc9caa0490e2d300d
isualizer.cpp
|
9d2c78c4798ffd8c276c1bf0eaa0b34bc255a2da |
23-Sep-2013 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix music resume Fix regression introduced by commit 5a6cd22 in AudioTrack resume: the callback thread was not signaled if paused internaly. Bug: 10895013. Change-Id: Ic356b115132d6fccbcee2d9bb855e92671dc20c5
udioRecord.cpp
udioTrack.cpp
|
342d52bc0ebc4be85b4806dae9addce2230d01b4 |
21-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am e97d1ba9: am 4b701cc0: Merge "Revert "Workaround slow AudioTrack destruction"" into klp-dev * commit 'e97d1ba9471a71c6b18cee23c98535d553303dac': Revert "Workaround slow AudioTrack destruction"
|
e97d1ba9471a71c6b18cee23c98535d553303dac |
21-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 4b701cc0: Merge "Revert "Workaround slow AudioTrack destruction"" into klp-dev * commit '4b701cc041d635e5ec56e382043a4c5d01aedd80': Revert "Workaround slow AudioTrack destruction"
|
4b701cc041d635e5ec56e382043a4c5d01aedd80 |
21-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Revert "Workaround slow AudioTrack destruction"" into klp-dev
|
dd0a81253bcf4daef56e991c94dc3c0d1124ef90 |
20-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am f2c643c8: am 3b3cfcfa: Merge "Fix slow AudioTrack and AudioRecord destruction" into klp-dev * commit 'f2c643c89e405b57c7ce42067b876fb80031e5fa': Fix slow AudioTrack and AudioRecord destruction
|
f2c643c89e405b57c7ce42067b876fb80031e5fa |
20-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 3b3cfcfa: Merge "Fix slow AudioTrack and AudioRecord destruction" into klp-dev * commit '3b3cfcfa272c8e3e16c89765b8817f5a8de0c505': Fix slow AudioTrack and AudioRecord destruction
|
5a6cd224d07c05b496b6aca050ce5ecf96f125af |
20-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Fix slow AudioTrack and AudioRecord destruction There were two causes for the slowness: When thread was paused, it used nanosleep and sleep. These usually run to completion (except for POSIX signal, which we avoid because it is low-level). Instead, replace the nanosleep and sleep by condition timed wait, as that can be made to return early by a condition signal. Another advantage of condition timed wait is that a condition wait was already being used at top of thread loop, so it is a simpler change. The AudioRecord destructor was missing a proxy interrupt that was correct in AudioTrack. This proxy interrupt is needed in case another thread is blocked in proxy obtainBuffer. Does not address the 1 second polling for NS_WHENEVER. Bug: 10822765 Change-Id: Id665994551e87e4d7da9c7b015f424fd7a0b5560
udioRecord.cpp
udioTrack.cpp
|
e2773bb17bc5d01e05a77b8913539575ebd04500 |
20-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Revert "Workaround slow AudioTrack destruction" This reverts commit 8bbbd7da02fac3de40139af19f7cf7a7cc3cc824. Change-Id: I269a6c445cbce33451b6a9e74223e36e6abbdbe0
oundPool.cpp
|
5b510cd44a4ed5fb8b08336d966d34f093fbd8b0 |
19-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 88e0f302: am feb6d27b: Merge "Workaround slow AudioTrack destruction" into klp-dev * commit '88e0f302bf700a7b4d2b6e6a83838c1793508809': Workaround slow AudioTrack destruction
|
88e0f302bf700a7b4d2b6e6a83838c1793508809 |
19-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am feb6d27b: Merge "Workaround slow AudioTrack destruction" into klp-dev * commit 'feb6d27bf61cd266cf753215e9cae16b9bc9dbbd': Workaround slow AudioTrack destruction
|
8bbbd7da02fac3de40139af19f7cf7a7cc3cc824 |
18-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Workaround slow AudioTrack destruction Bug: 10809586 Change-Id: I5f30d4deb1233e8ade8967568e40684ef680c395
oundPool.cpp
|
362ebe187a39e063c7434bf3c002a0688fa27cdb |
18-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 684e0ae8: am 9a98b6de: Merge "Partial fix for SoundPool not terminating" into klp-dev * commit '684e0ae8ac8cfb7c7a9709a7b4fc6caf485dfb8a': Partial fix for SoundPool not terminating
|
684e0ae8ac8cfb7c7a9709a7b4fc6caf485dfb8a |
18-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 9a98b6de: Merge "Partial fix for SoundPool not terminating" into klp-dev * commit '9a98b6de791aeb130192df10744f5b35f8b6ef1a': Partial fix for SoundPool not terminating
|
8d0fda9660aee7059f802f400875247b01226084 |
18-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Partial fix for SoundPool not terminating SoundPool was waiting for EVENT_UNDERRUN only to indicate end of clip. In J, AudioTrack delivered both EVENT_UNDERRUN followed by EVENT_BUFFER_END. However, as of K, AudioTrack is only delivering EVENT_BUFFER_END (this lack of EVENT_UNDERRUN is another bug which still needs to be fixed). The workaround is to also respond to EVENT_BUFFER_END in SoundPool. Bug: 10787103 Change-Id: Id68a23bddd6dd9df6c49c55138197260d71ca468
oundPool.cpp
|
16f3201d2fe99a39a8a9bb478528ae9003645dfe |
18-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 11454092: am 18f86140: Merge "Fix underruns when fast track denied due to SRC" into klp-dev * commit '11454092e4a94d3c8b4576c981595339abdfac0d': Fix underruns when fast track denied due to SRC
|
11454092e4a94d3c8b4576c981595339abdfac0d |
18-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 18f86140: Merge "Fix underruns when fast track denied due to SRC" into klp-dev * commit '18f861404efc054da0a2ea6c582e293940f63bc8': Fix underruns when fast track denied due to SRC
|
44173e2805eba1c5812dd39c02e3964ebdd2104e |
17-Sep-2013 |
Glenn Kasten <gkasten@android.com> |
am 440b5a49: am fc270954: am e56f3c96: Merge "strtok stores its values in thread local storage. So it can not guarantee works well when multithread environment. AudioFlinger has multithread. so strtok_r is more safe." * commit '440b5a496ac4f10f1221ecb110f67bcd253ef70a': strtok stores its values in thread local storage. So it can not guarantee works well when multithread environment. AudioFlinger has multithread. so strtok_r is more safe.
|
440b5a496ac4f10f1221ecb110f67bcd253ef70a |
17-Sep-2013 |
Glenn Kasten <gkasten@android.com> |
am fc270954: am e56f3c96: Merge "strtok stores its values in thread local storage. So it can not guarantee works well when multithread environment. AudioFlinger has multithread. so strtok_r is more safe." * commit 'fc270954192ef7e15ac2c88daadd8890d22096e3': strtok stores its values in thread local storage. So it can not guarantee works well when multithread environment. AudioFlinger has multithread. so strtok_r is more safe.
|
fc270954192ef7e15ac2c88daadd8890d22096e3 |
17-Sep-2013 |
Glenn Kasten <gkasten@android.com> |
am e56f3c96: Merge "strtok stores its values in thread local storage. So it can not guarantee works well when multithread environment. AudioFlinger has multithread. so strtok_r is more safe." * commit 'e56f3c96fa6e7550b67e8b049f999aaa2ada1192': strtok stores its values in thread local storage. So it can not guarantee works well when multithread environment. AudioFlinger has multithread. so strtok_r is more safe.
|
ce8828a016b082f730152af2204b8ea3610dc1ec |
17-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Fix underruns when fast track denied due to SRC OpenSL ES requests a fast track. If sample rate conversion is needed, the request is denied by server, and a larger client buffer is used to handle the higher latency of a normal track. However the client notification period was calculated based on buffer being divided into 2 sub-buffers. That resulted in the notification period being too long. The server pulls chunks that are smaller than half the total buffer. So now the client uses 3 sub-buffers when there is SRC. Also removed the 'defer wake' optimization because it was incorrect. This optimization attempted to reduce the number of wakeups of client, when server releaseBuffer knows that another releaseBuffer will be following. But there is no way for the first releaseBuffer to predict how soon the second releaseBuffer will occur. In some cases it was a long time, and the client underran. So now the client is woken up immediately if the total number of available frames to client is >= the minimum number the client wants to see (the notification period). Also fix bug where minimum frame count was not being used in the calculation of notification period. Bug: 10342804 Change-Id: I3c246f4e7bc3684a344f2cf08268dc082e338e2a
udioTrack.cpp
udioTrackShared.cpp
|
ff7455c0c1df0c316a306fb81ee660840d08b6d0 |
07-Sep-2013 |
seunghak.han <seunghak.han@lge.com> |
strtok stores its values in thread local storage. So it can not guarantee works well when multithread environment. AudioFlinger has multithread. so strtok_r is more safe. Change-Id: I6d77ef9cc49a4478dd856dcdca14e4920ce955c6
udioParameter.cpp
|
d09752c849e9a66a7af5f92797874d16a09f8507 |
14-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 617e2a1c: am d176ec1e: Merge "Fix SoundPool.play() looping" into klp-dev * commit '617e2a1c9fe56e4f92146a1ec8b14a7726ff7c31': Fix SoundPool.play() looping
|
8973c0439984f85870dffa7a100580271933c964 |
11-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
Fix SoundPool.play() looping This is done by configuring SoundPool for shared memory and fast track. Previously SoundPool used a streaming track, and looping in streaming mode relied on the ability to loop the most recently enqueued data. That 'feature' was lost in the new implementation of streaming, so we're now switching from streaming mode to shared memory mode. Shared memory mode had always been desired, but was blocked by bug 2801375 which is fixed now. Bug: 10171337 Change-Id: I2a938e3ffafa2a74d5210b4198b50db20ad5da0e
oundPool.cpp
|
83da1fcb120a2d09642be74cf9091ab321a60c8f |
05-Sep-2013 |
Chong Zhang <chz@google.com> |
am c74630bc: am a1991255: Merge "wifi-display: do not use HDCP\'s encryptNative method if its unsupported" into klp-dev * commit 'c74630bcbdc6f9a88a019b7ced6fbe7a58675ea2': wifi-display: do not use HDCP's encryptNative method if its unsupported
|
a19912554f3779fac0c341ac702227bf4b5fe399 |
05-Sep-2013 |
Chong Zhang <chz@google.com> |
Merge "wifi-display: do not use HDCP's encryptNative method if its unsupported" into klp-dev
|
344202e13a91c9d3d109fd8f4a67f5b23efa7800 |
04-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 55817ab9: am fe346c70: Fix miscellanous AudioTrack::getTimestamp() bugs * commit '55817ab9c1868f1e6a59155f55c768f01509cda5': Fix miscellanous AudioTrack::getTimestamp() bugs
|
fe582a379aa775b34b6aba387eea046b6c4632f1 |
04-Sep-2013 |
Glenn Kasten <gkasten@google.com> |
am 1a3a8078: am a07a1c2c: Instantiate SingleStateQueue<AudioTimestamp> * commit '1a3a8078462e52b450dbad7443abaca1ca9cbfb8': Instantiate SingleStateQueue<AudioTimestamp>
|
ec3acca4a75fc4adc076b56751124f507b419622 |
03-Sep-2013 |
Chong Zhang <chz@google.com> |
wifi-display: do not use HDCP's encryptNative method if its unsupported Bug: 10609422 Change-Id: I005f1d04a4191b1503b5f3e895a98b8d6560c402
HDCP.cpp
|
fe346c707f59d763ded93bc3d27b51f0c0408258 |
30-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Fix miscellanous AudioTrack::getTimestamp() bugs Check that get_presentation_position is non-NULL before calling. AudioTrack::getTimestamp not implemented for fast tracks. Fix typo in Track::getTimestamp(). Fix bugs in AudioTrack::getTimestamp after stop: - getTimestamp while stopped is not allowed. - stop, start, getTimestamp now returns the correct value. Change-Id: Ie8d9dc1f28d8927634e04175a68b147ffc2ea8eb
udioTrack.cpp
|
a07a1c2c91dc7ee6ded319262499f20cd01edcf7 |
23-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Instantiate SingleStateQueue<AudioTimestamp> as typedef AudioTimestampSingleStateQueue and use it in MonoPipe. Change-Id: Idaebb362bd9d0a81a7ed83792ab9369dc37c0e74
ndroid.mk
ingleStateQueueInstantiations.cpp
|
ec9ad1b0947f5d6b465281312dbe92f096a8f881 |
30-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
am f94b2946: am 56b59224: Merge "Add IAudioTrack::getTimestamp()" into klp-dev * commit 'f94b2946a511c5cbb6b9001449ca8278cb332bda': Add IAudioTrack::getTimestamp()
|
56b592240073b1ab116c6e23a9c4c34ef5ad80d8 |
30-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Add IAudioTrack::getTimestamp()" into klp-dev
|
6dc365f0d5a92084517f0c3846e4f07fc7206bab |
30-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
am 73e4f3d4: am 865f6f24: Merge "New AudioTrack C++ API for audio timestamps" into klp-dev * commit '73e4f3d44f7022b03943ae34f08363e049e4b46f': New AudioTrack C++ API for audio timestamps
|
865f6f248bf10189272020ebfdbf4827433caf0f |
30-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "New AudioTrack C++ API for audio timestamps" into klp-dev
|
0c9abdf4d71ef01a48c8b988bfec86559a773fb9 |
30-Aug-2013 |
Eric Laurent <elaurent@google.com> |
am 697e50e4: am ed474f37: Merge "AudioTrack: fix write retries for compressed audio" into klp-dev * commit '697e50e4558e23606dc28773de6dd75ebc5f8af8': AudioTrack: fix write retries for compressed audio
|
42a6f422c09ca6a960673e0e805ddf71a9b51bef |
29-Aug-2013 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix write retries for compressed audio When the amount of frames that can be written to the buffer is less than requested, AudioTrack::processAudioBuffer() estimates the time needed to free the missing amount of frames and asks the callback thread to sleep. This behavior is not possible for compressed audio and should not be enabled for offloaded tracks. Change-Id: I5b657283cfba06254c9ac0ea9b447467cce7eb61
udioTrack.cpp
|
53cec22821072719ee02c856e9ac2dda2496c570 |
29-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Add IAudioTrack::getTimestamp() with dummy implementation in AudioFlinger::TrackHandle, and implement AudioTrack::getTimestamp() using IAudioTrack. Also document invariant that mAudioTrack and control block are always non-0 after successful initialization. Change-Id: I9861d1454cff7decf795d5d5898ac7999a9f3b7e
udioTrack.cpp
AudioTrack.cpp
|
ce70374bf105f8a6160bf5dd70affea012b2a464 |
20-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
New AudioTrack C++ API for audio timestamps This new API is intended to replace latency(), especially for A/V sync. The application will receive periodic timestamp notifications. The period is unspecified, but will likely be more frequent after a pause or stop, set position, underrun, display on/off change, route change, or when audio framework notices drift. It will be up to the higher level application (e.g. Stagefright) to reconstruct a clock that updates more frequently. The current latency() method doesn't indicate when latency changes due to screen on/off state, route changes, etc. Includes squahsed change-Id: I2082f8752040be0c234b1a6f1be2e269abf2ce7c Dummy implementation of AudioTrack:getTimestamp() Rename AudioTrack::Timestamp to AudioTimestamp. Renaming and pulling up to a higher level allows more modules to use it. Change-Id: Ibf7f6a207c3f8d8697f25ede2cd5200697fadb86 (cherry picked from commit dd69eb893867634fd169c03204a6ad7c74b351e7)
udioTrack.cpp
|
876e62329e9ef9e6522c451413270a4258bbcabf |
28-Aug-2013 |
Eric Laurent <elaurent@google.com> |
am 21b0ab8b: am c063c175: Merge "AudioTrack: fix unwanted underrun when restarting" into klp-dev * commit '21b0ab8b2de355673606c3751ce4cdcba28fe8ca': AudioTrack: fix unwanted underrun when restarting
|
ec9a032c2e104ab1e3b5bf73e69dab1408ced0ad |
28-Aug-2013 |
Eric Laurent <elaurent@google.com> |
AudioTrack: fix unwanted underrun when restarting When restarting an AudioTrack from stopped state, it is necessary to force refresh of mRemainingFrames by processAudioBuffer() as the last write before stop() could be partial. No doing so will lead into unnecessary sleep before filling the non contiguous part of the buffer returned by obtainBuffer() when processAudioBuffer() is executed for the first time after start(). Change-Id: Id703f8dc092a6f07c905eee194054b4a978f979d
udioTrack.cpp
|
733ba4dc9161741930464818618855962bdb1297 |
27-Aug-2013 |
Chong Zhang <chz@google.com> |
am f79d6e44: am 33142e1e: Merge "wifi-display: pass session info to wifi display settings" into klp-dev * commit 'f79d6e44ffd427cf9d331a95777cfbbcc99f72f1': wifi-display: pass session info to wifi display settings
|
6e74cc78e3e16686b895958d2a623abc3f5a775f |
27-Aug-2013 |
Chong Zhang <chz@google.com> |
am 24850793: am 2484040e: Merge "MediaPlayer: add listener for raw track data" into klp-dev * commit '24850793d3ca7e29d2ef553639d2e133c3983f7e': MediaPlayer: add listener for raw track data
|
33142e1e318c0c766a385d88d2434f62f9e2dfe7 |
24-Aug-2013 |
Chong Zhang <chz@google.com> |
Merge "wifi-display: pass session info to wifi display settings" into klp-dev
|
2484040e0f413989e4edbe26ba3bf71122382af6 |
23-Aug-2013 |
Chong Zhang <chz@google.com> |
Merge "MediaPlayer: add listener for raw track data" into klp-dev
|
c398c1a9a8296c20dcc566e9f6f148de9d2b0342 |
23-Aug-2013 |
Jeff Tinker <jtinker@google.com> |
am 6c6dc760: am 62c1a46e: Merge "Add ability to test supported content types to MediaDrm" into klp-dev * commit '6c6dc760006b14a63c839a15d5612c7e19d16bc5': Add ability to test supported content types to MediaDrm
|
62c1a46eec047eb5fbc4b90432ec1ce65b76fb75 |
23-Aug-2013 |
Jeff Tinker <jtinker@google.com> |
Merge "Add ability to test supported content types to MediaDrm" into klp-dev
|
9cf69e0fc110f17c28e988ed0f9bf91abfaf710d |
21-Aug-2013 |
Jeff Tinker <jtinker@google.com> |
Add ability to test supported content types to MediaDrm bug: 10244066 Change-Id: I317f05b146db962c271893f6208890a5a6c396f1
Drm.cpp
|
87ecf19404586672008e98babc225e094292ceb5 |
06-Jun-2013 |
Chong Zhang <chz@google.com> |
wifi-display: pass session info to wifi display settings Bug: 9371882 Change-Id: I9e4b8c2154b03ce8ff3e14c465a5224bb6e8db9a
RemoteDisplayClient.cpp
|
d6a2f3f03197998f44374e68ba1d838a7ebb180d |
20-Aug-2013 |
Eric Laurent <elaurent@google.com> |
am 9f178e70: am 99ad37a4: Merge "AudioSystem: new audioflinger restart detection" into klp-dev * commit '9f178e705836d9ac8de64487929732c302644bee': AudioSystem: new audioflinger restart detection
|
46291616486979986cba3ab83e894728ef53063f |
18-Jul-2013 |
Eric Laurent <elaurent@google.com> |
AudioSystem: new audioflinger restart detection Add a specific method to AudioSystem for AudioService to poll for AudioFlinger service restart instead of relying on current callback mechanism which is flaky. Bug: 9693068. Change-Id: Ie88bc9d25033503bc5cd2fa9d8c754d0f8045b8f
udioSystem.cpp
|
dcb89b3b505522efde173c105a851c412f947178 |
06-Aug-2013 |
Chong Zhang <chz@google.com> |
MediaPlayer: add listener for raw track data Bug: 10326117 Change-Id: I2c0bdf8adc67b11f8dc633423bee66897548f181
ediaplayer.cpp
|
8845337fff1c8faa4296b3bcafcefb41e07fc3ad |
13-Aug-2013 |
Jeff Brown <jeffbrown@google.com> |
am 82278b2c: am fe9611bd: Merge "Fix potential leak of audio input handle." into klp-dev * commit '82278b2ceeebbcf345ed81413eeffa82fa82e05b': Fix potential leak of audio input handle.
|
ac0bbe16f3eba46b3d8057b66c2aff9101fc6f7d |
10-Aug-2013 |
Jeff Brown <jeffbrown@google.com> |
Fix potential leak of audio input handle. The audio input handle is ultimately owned by the audio recorder object but it could be dropped on the floor if an error occurred before that object was fully initialized. Rearranged some of the argument validation and merged getInput_l with openRecord_l to simplify the code and prevent such a leak from occurring. Bug: 10265163 Change-Id: I124dce344b1d11c2dd66ca5e2c9aec0c52c230e2
udioRecord.cpp
|
a0d77cd6bf5f4ee3ee9d67ad26e7f9981991d4e7 |
09-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Fix SoundPool.play() looping regression in 4.3 DO NOT MERGE The change I7370d6e59a7ef26dfb284a8b058d5ab2e0a42ccf caused a regression in SoundPool looping when using SoundPool's streaming implementation. This reverts a portion of that change. Bug: https://code.google.com/p/android/issues/detail?id=58113 Bug: 10171337 Change-Id: I8af0dc8683a7c7f225c80f0eb4d39770667b52e5
udioTrack.cpp
|
3cb40d7882b93c242267de0b8db10ef8957b3a24 |
09-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
am 1b832c3d: Merge "Fix regression for AudioRecord streaming callback mode" into klp-dev * commit '1b832c3d8f2b1b24f9bc7025afd2b4a8b4e6c6f9': Fix regression for AudioRecord streaming callback mode
|
4a0efb77198c69df711ab369ac482a42dbdfab07 |
09-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Fix regression for AudioRecord streaming callback mode The notification period (frequency of client wakeups) was broken in streaming callback mode. Fast tracks were OK, but non-fast tracks with normal latency weren't getting woken up at all. Bug: 10222943 Change-Id: Ife9a2f57fa73c6eb921f1c5ba62de0bfcc20557b
udioRecord.cpp
|
6b682a20b66322bf673f575f8c4fd9e45f3e8183 |
08-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Consistent style for comparisons of raw pointers to NULL"
|
89a70f71cef61d10437b3901e8efc1f082a857c5 |
07-Aug-2013 |
Lajos Molnar <lajos@google.com> |
Merge "IOMX: add updateGraphicBufferInMeta method for metadata mode"
|
d0715867861c216e88a4a7523b6da8a3cb128724 |
22-Jul-2013 |
Lajos Molnar <lajos@google.com> |
IOMX: add updateGraphicBufferInMeta method for metadata mode This is used to set the handle in the metadata buffer that is valid in the mediaserver process, as well as to keep a reference for the graphic buffers in BufferMeta. Change-Id: I46bb68d8bed894f357eeeb25368360d11b276634 Signed-off-by: Lajos Molnar <lajos@google.com>
OMX.cpp
|
230c5bde2779c618b26edc73443280b2d9371c70 |
06-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord notification frames"
|
33f3177c08d238285b296d137e527ec99e34228f |
06-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord::openRecord_l use flags"
|
b85187332e740be337ce2e3e0d8d21c5c8651bf8 |
06-Aug-2013 |
Marco Nelissen <marcone@google.com> |
Merge "Reject unprepared MediaPlayers"
|
743649fa70392b668377fb507d251b346c7b2769 |
06-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord::openRecord_l now take flags"
|
507b2860cfe0bb4a712064f1c503caa9a7325886 |
01-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Consistent style for comparisons of raw pointers to NULL Change-Id: Iec102a5ccb2fe69229887b5432cd1fb66f26f0cf
AudioFlinger.cpp
|
3aa03e40668dd90390d9f1702f8c576e15b366c3 |
06-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "IAudioFlinger::openRecord track_flags_t flags is in/out"
|
77baebfe89c99415a0ee4c2ea87bfd8a0f9e51f1 |
05-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord::set and constructor now take flags"
|
f86b18b1ce3cf20a39aea1fcaf90ec66f9d6d63e |
05-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord callback thread waits for priority boost"
|
b13820ffafcb6bcdd33b6272676535afb4dff479 |
05-Aug-2013 |
Marco Nelissen <marcone@google.com> |
Reject unprepared MediaPlayers Don't allow a MediaPlayer that has been reset() or release()d to be used as the argument to setNextMediaPlayer. Change-Id: I47da1460ec3742f5b2bd7b79e7998b290032d5a1
ediaplayer.cpp
|
6c104a4a245ea72b7bdf8c7c016121189045d4bc |
05-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord has no default sample rate"
|
7cd9cf70e36ad4b8eb12e24f9adbbe6fd69edebd |
01-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
AudioRecord notification frames Change-Id: I76ec536d1504eb9a558178b62bf225aace4b40d1
udioRecord.cpp
|
3151427b6b0adf99929433715bab6f1e505100c1 |
01-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
AudioRecord::openRecord_l use flags Use the flags to determine input parameters for IAudioFlinger::openRecord. Change-Id: I98d2726503af75c8830ce80ceaf3b94a755b342f
udioRecord.cpp
|
73493688f4190f790ee15d9ca54831cd64f4e195 |
01-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
AudioRecord::openRecord_l now take flags The new parameter 'flags' of type audio_input_flags_t will be used for requesting a fast track, but is currently ignored. Change-Id: If68dfda8b2d4eaaca42927d721b4630c47f71f3b
udioRecord.cpp
|
eeca32671896739e84050da5992d5f151a1629de |
01-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
IAudioFlinger::openRecord track_flags_t flags is in/out This will allow AudioFlinger to tell client it is denying a request. Change-Id: Iff2be3ad6636371bbda9c9899a283c94620c1f06
udioRecord.cpp
AudioFlinger.cpp
|
27f7b2a8fe899565487d8a326676a5f7d0a05a37 |
01-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
AudioRecord::set and constructor now take flags The new optional parameter 'flags' of type audio_input_flags_t will be used for requesting a fast track. Change-Id: Ia7e070cb57c833e608352da354fb30dc26df6918
udioRecord.cpp
|
28f1351369682801e1bb40a835bdae3c97b73c1c |
31-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
AudioRecord callback thread waits for priority boost Change-Id: Iae38fa4ac20a45751566169213a08a15deb0a2f6
udioRecord.cpp
|
954315a10089fa3684ac94db5be77c6655c08fc0 |
02-Aug-2013 |
Glenn Kasten <gkasten@google.com> |
Recording of non-linear formats is not supported Such formats are already rejected in AudioRecord::set() Change-Id: I5ba1fd9e4cd659e5226c75aa4f63e52f655e0521
udioRecord.cpp
|
f0f33c4acd231fa95deb9eeef2c46b0129e64463 |
31-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
AudioRecord has no default sample rate Change-Id: I72feefdd6f3a623fd3669b80d4b264518fdc0929
udioRecord.cpp
|
82aaf94a5b18939e4d790bbc752031f3070704a3 |
18-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Report underruns for fast tracks also This fixes a regression that was introduced earlier by commit 9f80dd223d83d9bb9077fb6baee056cee4eaf7e5 called "New control block for AudioTrack and AudioRecord". That commit broke underrun reporting for fast tracks. Also remove Track::mUnderrunCount, which counted the number of underrun events, and was only used by dumpsys media.audio_flinger. Now dumpsys media.audio_flinger reports the number of underrun frames, Isolated underrun-related control block accesses via the proxy, so that the server is not directly poking around in the control block. The new proxy APIs are AudioTrackServerProxy::getUnderrunFrames() and AudioTrackServerProxy::tallyUnderrunFrames(). getUnderrunFrames() returns a rolling counter for streaming tracks, or zero for static buffer tracks which never underrun, but do a kind of 'pause' at end of buffer. tallyUnderrunFrames() increments the counter by a specified number of frames. Change-Id: Ib31fd73eb17cbb23888ce3af8ff29f471f5bd5a2
udioTrackShared.cpp
|
d054c32443a493513ab63529b0c8b1aca290278c |
12-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Move control block mName to createTrack() output This is part of a series of CLs to clean up the shared memory control block, by removing any fields that don't have to be there. Change-Id: I6e51003a1293b6800258c31b22cff2eba42162e7
udioTrack.cpp
udioTrackShared.cpp
AudioFlinger.cpp
|
96f60d8f04432a1ed503b3e24d5736d28c63c9a2 |
12-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Rename control block flags to mFlags Change-Id: I7b6d31e24531954ab1ecdf3ed56c19433700bd89
udioRecord.cpp
udioTrack.cpp
udioTrackShared.cpp
|
97252bb0e40a5a9b41f020163393cf6c5da10b7e |
30-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord and HAL input stream must be 16-bit PCM only"
|
f20e1d8df84c5fbeeace0052d100982ae39bb7a4 |
12-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Rename control block server to mServer and add comments Change-Id: Ieabd91acee92d0e84e66fbd358df5282b856306e
udioTrackShared.cpp
|
eced2daaa6c91a3731eef978ce65c6ec319c5e6a |
17-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Use correct type for OutputDescriptor::format Change-Id: Ide608ef452d57da29b708180d90470361c123d1d
AudioFlingerClient.cpp
|
7f249fa9bcb64da324d19f551943fac7686d221c |
29-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Use standard name and type for channel mask"
|
3dcd00dddec86a1c5133083ad7ba2265d49c048c |
17-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Declare methods in binder opcode order Change-Id: I5f624b7a51ffe1a17a67c056cf984f74e4c56eac
AudioRecord.cpp
|
b1a270d1e926fb9a01b4265a7675ed0c2c8f4868 |
14-May-2013 |
Richard Fitzgerald <rf@opensource.wolfsonmicro.com> |
libmedia: offloaded playback support - start() returns a status so that upper layers can recreate a non offloaded track in case of error. - Added states to handle offloaded tracks specific: - waiting for stream end (drain) notification by audio flinger - allow pause while waiting for stream end notification - getPosition() queries the render position directly from audio HAL. - disable APIs not applicable to offloaded tracks - Modified track restoring behavior for invalidated offloaded tracks: just send the callback and wait for upper layers to create a new track. - Added wait for stream end management in audio track client proxy. Similar to obtainBuffer and should be factored in. Change-Id: I0fc48117946364cb255afd653195498891f622bd Signed-off-by: Eric Laurent <elaurent@google.com>
udioTrack.cpp
udioTrackShared.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
bfb1b832079bbb9426f72f3863199a54aefd02da |
07-Jan-2013 |
Eric Laurent <elaurent@google.com> |
AudioFlinger: offload playback, non-blocking write - Added specialized playback thread class for offload playback, derived from directoutput thread. This thread type handles specific state transitions for offloaded tracks and offloading commands (pause/resume/drain/flush..) to audio HAL. As opposed to other threads, does not go to standby if the track is paused. - Added support for asynchronous write and drain operations at audio HAL. Use a thread to handle async callback events from HAL: this avoids locking playback thread mutex when executing the callback and cause deadlocks when calling audio HAL functions with the playback thread mutex locked. - Better accouting for track activity: call start/stop and release Output methods in audio policy manager when tracks are actually added and removed from the active tracks list. Added a command thread in audio policy service to handle stop/release commands asynchronously and avoid deadlocks with playback thread. - Track terminated status is not a state anymore. This condition is othogonal to state to permitted state transitions while terminated. Change-Id: Id157f4b3277620568d8eace7535d9186602564de
udioTrackShared.cpp
|
fad226abd12435dbcd232f7de396f1a097b2bd5f |
17-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Use standard name and type for channel mask Former name 'channels' was ambiguous with respect to channel count. Change-Id: I716f792d95a7e0c787d27514ad6e93dbcef8a415
udioSystem.cpp
AudioFlingerClient.cpp
|
291bb6d8947c5b0c062f0895d623c529259bfa39 |
17-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
AudioRecord and HAL input stream must be 16-bit PCM only Currently there are 16-bit PCM assumptions in several places for capture: - resampler API - mRsmpInBuffer and mRsmpOutBuffer - RecordThread::threadLoop upmix, downmix, and resampling - possibly other places Until those assumptions are removed, this CL enforces 16-bit PCM in both client and server at all places where a format is checked. Change-Id: I08b0570bff626ad0d341804825a72c14e61b4233
udioRecord.cpp
|
4182c4e2a07e2441fcd5c22eaff0ddfe7f826f61 |
15-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Use AudioSystem::setLowRamDevice() to configure memory Bug: 9798886 Change-Id: I9321e3f369f1ed9429ae222e3926ebdeb012b8b0
udioSystem.cpp
AudioFlinger.cpp
|
0b83a15d97f61d575a7cffbf42f9ed6edfa25ccc |
18-Jul-2013 |
Andreas Huber <andih@google.com> |
Merge "Support "suspension" of a video encoder in "surface-input" mode."
|
e40cda70eec141fa05cbcca1de420fdb22b98be6 |
17-Jul-2013 |
Andreas Huber <andih@google.com> |
Support "suspension" of a video encoder in "surface-input" mode. i.e. feed no more input frames to the encoder while suspended. Change-Id: I51391e18c1517548e869f8ddece19f4af37e78f9
OMX.cpp
|
cff1b2359b8a302f19539c0bc5d25c98a52733fd |
17-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Add comments"
|
bb849b5d1a0364b69aa15ed00709edf4b7e348fc |
17-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix typo in logs"
|
ce177bb31493d3cd4450f9d4760fa1fd32ec6bf4 |
11-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioTrackShared cleanup"
|
050501d11d944dcb256d37d3b86bd658d94f6a7f |
11-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Fix AudioTrack::flush() It was only flushing at a surface level, and even then only the first time the server observed the client's flush request. Now it flushes at a deeper level, but there may be even deeper device-specific flushing. Bug: 9770947 Change-Id: I687cc3410ff9e5e5d4a5dcb9e3b129501e53d247
udioTrackShared.cpp
|
fb1fdc9d6603aa228362e7349451f6455c9849c2 |
11-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Add comments Change-Id: Ifbf3a46a4183c8abc0feee1c588953ab10303cc1
udioSystem.cpp
udioTrack.cpp
|
b0dfd4613225a3b2a17bdf8d85e89a4b04d65ef3 |
11-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Fix type error in AudioTrack::processAudioBuffer It returned a bool instead of nsecs_t Change-Id: If0c096dac411afc0a4142ec1e59c1fdd36d4867c
udioTrack.cpp
|
0bc32ae1a8ef45f98101b78bfe64798875b569e3 |
08-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Explicitly compare raw pointers to NULL"
|
7c5977f0322204240b3d1874a44c1f3911275ae5 |
02-Jul-2013 |
Glenn Kasten <gkasten@google.com> |
Explicitly compare raw pointers to NULL Change-Id: Id2c7828a36a6912333465475b21fa87e294c83c7
AudioFlinger.cpp
|
7db7df0e8d9d7cee8ba374468cdbfa0108e3337c |
26-Jun-2013 |
Glenn Kasten <gkasten@google.com> |
AudioTrackShared cleanup Maintain unreleased frame count on client side also (was already there on server side). Assertion failure instead of BAD_VALUE status for incorrect usage of APIs. Clean up error handling code. Change-Id: I23ca2f6f8a7c18645309ee5d64fbc844429bcba8
udioTrackShared.cpp
|
85007a9bd3c310f96fed47208dfee566fd00351f |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix typo in logs Change-Id: I889e31ea3a45a3d8d34fdfb54ebc3947de51d2be
udioSystem.cpp
|
1ab85ec401801ef9a9184650d0f5a1639b45eeb9 |
31-May-2013 |
Glenn Kasten <gkasten@google.com> |
Include what is needed Remove old includes. Header files only include other header files that they directly need themselves. Change-Id: Ic471386808d9f42ea19ccbd59cb50a5f83a89dd0
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
etPlayer.cpp
oundPool.cpp
oneGenerator.cpp
isualizer.cpp
|
ad3af3305f024bcbbd55c894a4995e449498e1ba |
25-Mar-2013 |
Richard Fitzgerald <rf@opensource.wolfsonmicro.com> |
Public API changes for audio offload support. NOTE: this does _not_ include all private member variables added to classes as part of offload support. Only public/protected functions and stubs functions/variables needed to make the changes buildable. - isOffloadSupported() added to audio policy service A stub implementation is required to build, this always returns false - setParameters() added to IAudioTrack A stub implementation is required to build, this always returns INVALID_OPERATION - CBlk flag for stream end - Change AudioSystem::getRenderPosition() to take an audio_output_t so caller can specify which output to query - Add AudioSystem::isOffloadSupported() This is fully implemented down to the AudioFlinger function AudioPolicyServer::isOffloadSupported() which is just a stub that always returns false. - Add EVENT_STREAM_END to AudioTrack interface. STREAM_END is used to signal when the hardware has actually finished playing all the data it was sent. - Add event type enumeration to media player interface AudioSink callbacks so that the same callback can be used to handle multiple types of event. For offloaded tracks we also have to handle STREAM_END and TEAR_DOWN events - Pass audio_offload_info_t to various functions used for opening outputs, tracks and audio players. This passes additional information about the compressed stream down to the HAL when using offload. For publicly-available APIs this is an optional parameter (for some of the internal and low-level APIs around the HAL interface it is mandatory) - Add getParameters() and setParameters() API to AudioTrack Currently dummy implementations. - Change AudioPlayer contructor so that it takes a set of bitflags defining what options are required. This replaces the original bool which only specified whether to use deep buffering. - Changes to StageFright class definition related to handling tearing-down of an offloaded track when we need to switch back to software decode - Define new StageFright utility functions used for offloaded tracks Currently dummy implementations. - AudioFlinger changes to use extended audio_config_t. Fills in audio_offload_info_t member if this info is passed in when opening an output. - libvideoeditor changes required to add the new event type parameter to AudioSink callback functions - libmediaplayerservice changes required to add the new event type parameter to AudioSink callback functions Change-Id: I3ab41138aa1083d81fe83b886a9b1021ec7320f1 Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com> Signed-off-by: Eric Laurent <elaurent@google.com>
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
AudioTrack.cpp
|
93bb77da5481ab75c2cd6e3aa681839273c6e43d |
24-Jun-2013 |
Glenn Kasten <gkasten@google.com> |
Workaround AudioRecord bug for large buffer sizes Bug: 9556436 Change-Id: I92d1238b623d2cfd648e0a684d0e710fb0bd8b43
udioTrackShared.cpp
|
0d09a9bec07b3bec78bd473ff0bfcf0a261f3f25 |
24-Jun-2013 |
Glenn Kasten <gkasten@google.com> |
Use mFutex as an event flag rather than semaphore An event flag can be more fault-tolerant in case of loss of synchronization, as it cannot overflow. It also allows more bits to be used in the future. See http://en.wikipedia.org/wiki/Event_flag Change-Id: I01ca25d951eb263124da54bb4738f0d94ec4a48b
udioTrackShared.cpp
|
224309a0f21e37d58fa62ed2aef8b444421cdc0f |
14-Jun-2013 |
Glenn Kasten <gkasten@android.com> |
am 767227fc: am 82fc2ca6: am d5018116: Merge "Fix typo." * commit '767227fcac7be843b338473954420d390e354bf7': Fix typo.
|
82fc2ca6905978b4f49f2c6bf948a6872575f2cc |
14-Jun-2013 |
Glenn Kasten <gkasten@android.com> |
am d5018116: Merge "Fix typo." * commit 'd5018116252a3ecb491e2eaddad12180b85d1e78': Fix typo.
|
d5018116252a3ecb491e2eaddad12180b85d1e78 |
14-Jun-2013 |
Glenn Kasten <gkasten@android.com> |
Merge "Fix typo."
|
9f80dd223d83d9bb9077fb6baee056cee4eaf7e5 |
19-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
New control block for AudioTrack and AudioRecord Main differences between old and new control block: - removes the mutex, which was a potential source of priority inversion - circular indices into shared buffer, which is now always a power-of-2 size Change-Id: I4e9b7fa99858b488ac98a441fa70e31dbba1b865
udioRecord.cpp
udioTrack.cpp
udioTrackShared.cpp
oneGenerator.cpp
|
da5b509fd8323bacf4043e2c29c6ee1d0716be60 |
27-Feb-2013 |
Ming Zhou <b42586@freescale.com> |
Noise will be heard if audio sample rate not matched with audio track When audio sample rate which set to audio track is not the same with the actual pcm data, noise will be heard. Fix the bug when write 8 bit pcm samples. Change-Id: Idcb0d7b0e9aaa250dd22b758c8337e23d1706049 Signed-off-by: Ming Zhou <b42586@freescale.com> Signed-off-by: guoyin.chen <guoyin.chen@freescale.com>
udioTrack.cpp
|
f65fa170b28f97503df3c309ecdaab377a042ba6 |
06-Jun-2013 |
Masaki Muranaka <monaka@monami-software.com> |
Fix typo. Change-Id: Ia72ed2bef54751dc2d6c3379a58de95a0e9ebfdd
ediaplayer.cpp
|
bb6f0a0bb413817d707cfb4c4a30847fda520787 |
04-Jun-2013 |
Glenn Kasten <gkasten@google.com> |
Fix underruns when sample rate != native sample rate This forces a minimum of 3 application buffers when the sample rates don't match, using the normal mixer and low latency HAL. There is still an issue that the latency() varies depending on whether screen was off or on at the time of creating the AudioTrack. With screen on: I/AudioTrack( 2028): afFrameCount=960, minBufCount=2, afSampleRate=48000, afLatency=50 I/AudioTrack( 2028): minFrameCount: 2646, afFrameCount=960, minBufCount=3, sampleRate=44100, afSampleRate=48000, afLatency=50 With screen off: I/AudioTrack( 2817): afFrameCount=960, minBufCount=4, afSampleRate=48000, afLatency=84 I/AudioTrack( 2817): minFrameCount: 3528, afFrameCount=960, minBufCount=4, sampleRate=44100, afSampleRate=48000, afLatency=84 Change-Id: Ib45515edff2afcd672dda34881b658c800ffc25a
udioTrack.cpp
|
2799d743ee2ae5a25fe869a7f9c052acc029559f |
30-May-2013 |
Glenn Kasten <gkasten@google.com> |
Use sp<AudioTrack> instead of raw AudioTrack * This change prepares for the new implementation of AudioTrack client, which will require clients to use only sp<AudioTrack>, not raw AudioTrack *. A raw delete will cause a race condition during AudioTrack destruction. AudioTrack was made a RefBase by commit b68a91a70bc8d0d18e7404e14443d4e4020b3635 on 2011/11/15, when it was needed by OpenSL ES (for the callback protector). At that time, the only other client that was also converted from AudioTrack * to sp<AudioTrack> was android.media.AudioTrack JNI in project frameworks/base (file android_media_AudioTrack.cpp). Details: * Use .clear() instead of delete followed by = NULL. * ALOG %p need .get(). * sp<> don't need to be listed in constructor initializer, if initially 0. * Use == 0 for sp<> vs == NULL for raw pointers. * Use if (sp != 0) instead of if (raw). Change-Id: Ic7cad25795d6e862e112abdc227b6d33afdfce17
etPlayer.cpp
oundPool.cpp
oneGenerator.cpp
|
7c684c622110af460025eff85082030947278430 |
03-Jun-2013 |
Andreas Huber <andih@google.com> |
am f9bb8358: am b7319a7e: Update HTTP proxy configuration for all media playback inside stagefright. * commit 'f9bb8358e454be6dc88403171db7e0e182407f17': Update HTTP proxy configuration for all media playback inside stagefright.
|
b7319a7eb0a06ef4fd3a0c9157ee63e637ad7aa1 |
29-May-2013 |
Andreas Huber <andih@google.com> |
Update HTTP proxy configuration for all media playback inside stagefright. Change-Id: Ie0dd00045aba668d8b49da73224e7a7c9c04f69b related-to-bug: 8873723 (cherry picked from commit 2704965b8a1ff3b7450ff58ccecf86d8ec688c40)
MediaPlayerService.cpp
ediaplayer.cpp
|
7c027248e1a4ccd5b22bc4deafb03e2d87ac8f38 |
26-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Consistent whitespace Change-Id: I118cce68d3b777f9ec9b6bfb70367496422a40f2
udioRecord.cpp
udioTrack.cpp
MediaDeathNotifier.cpp
|
308bcaa44e578279e61be32b572fdb0b11b1e4c7 |
04-May-2013 |
Chong Zhang <chz@google.com> |
wifi-display: add support for metadata mode on encoder output pass buffer_handle_t from encoder output to HDCP encryptor input Bug: 8968123 Change-Id: Iea8007ce568641e213fd2e3cf6947a6f7a95746c
HDCP.cpp
|
754995dc19159d5dd00095aca27d42f3bc8b3e5b |
14-May-2013 |
Eric Laurent <elaurent@google.com> |
am a83b9767: am 375379a4: Merge "Fix unreleased mutex in ToneGenerator stopTone()" into jb-mr2-dev * commit 'a83b9767bc81d13101cad1df080ffeadedca2887': Fix unreleased mutex in ToneGenerator stopTone()
|
704455a5a6cd22f03bb8984e0c7f46108eb1afb7 |
13-May-2013 |
Eric Laurent <elaurent@google.com> |
Fix unreleased mutex in ToneGenerator stopTone() Commit 09108ade introduced a regression by not releasing the ToneGenerator mutex before exiting in case of error. Bug: 8852855 Change-Id: I8ba2755b218842e2034ed8dbd54b18bf2a5fc571
oneGenerator.cpp
|
1e27c22a3a024a7ba193ec48b9ec13d1ea0f03c6 |
13-May-2013 |
Eric Laurent <elaurent@google.com> |
Fix unreleased mutex in ToneGenerator stopTone() Commit 09108ade introduced a regression by not releasing the ToneGenerator mutex before exiting in case of error. Bug: 8852855 Change-Id: I8ba2755b218842e2034ed8dbd54b18bf2a5fc571
oneGenerator.cpp
|
1ba7c0abc004333be7768df03553b6ffaa242d0a |
11-May-2013 |
Marco Nelissen <marcone@google.com> |
am 780dbd33: am 0d24eb5e: Merge "Don\'t purge effects we\'re about to start using" into jb-mr2-dev * commit '780dbd3357511770d655e55f69036d63c90089a9': Don't purge effects we're about to start using
|
082aa3f335ffeedacafeb8982684cbb371a18c32 |
10-May-2013 |
Marco Nelissen <marcone@google.com> |
Don't purge effects we're about to start using By acquiring the new session id before releasing the old, we prevent purging existing effects with the new session id that aren't currently attached but will be once the player is switched to the new session id. b/8767565 Change-Id: I703881b69c5accd8832ac834246925a20ada4c21
ediaplayer.cpp
|
8bdb01c279828e286a6e8b22ff0c1bcb6aa6ee8f |
10-May-2013 |
Marco Nelissen <marcone@google.com> |
Don't purge effects we're about to start using By acquiring the new session id before releasing the old, we prevent purging existing effects with the new session id that aren't currently attached but will be once the player is switched to the new session id. b/8767565 Change-Id: I703881b69c5accd8832ac834246925a20ada4c21
ediaplayer.cpp
|
1f7d356fa094b975ad2ebf9217be6abba2c70825 |
07-May-2013 |
Mathias Agopian <mathias@google.com> |
libutils clean-up Change-Id: I3bf32d72aa8eec627249a675c130c91a8aff6710
ndroid.mk
ediaScannerClient.cpp
tringArray.cpp
tringArray.h
|
61aa989a5768b9b0571ca14edaf15886509a0ec8 |
03-May-2013 |
Eric Laurent <elaurent@google.com> |
am 1641f328: am 4170f515: Merge "Remove timing jitter during startup of audio" into jb-mr2-dev * commit '1641f328d4de3b2b61481607dc482ccaefe808a9': Remove timing jitter during startup of audio
|
a07f17ca46db04c9d5d9e7d6b2878db59ca2b9ea |
23-Apr-2013 |
Glenn Kasten <gkasten@google.com> |
Remove timing jitter during startup of audio This fixes a regression introduced recently, that increased timing jitter during the startup of the FastMixer and AudioTrack callback threads. The regression was to make requestPriority() asynchronous as a way to avoid an apparent priority inversion in system_server. This means that the target thread could run briefly with the initial priority, before the new priority takes effect. This change removes the startup jitter for FastMixer, by making the requestPriority() synchronous again for that case. It doesn't matter that this restores the priority inversion involving normal mixer thread, because it happens during startup of both threads. The change also removes the startup jitter for the AudioTrack callback thread, by having the target thread check whether the requestPriority() has completed yet. If not, the target thread blocks with a timeout until the priority boost finishes. Finally, we now log an error message if the expected priority boost doesn't happen. Bug: 8698989 Change-Id: Id590e9a274b70ec1ba85b44a585ee37a22e41cbc
udioTrack.cpp
|
f8197a6a9d9363cb52bb8a2c15c0e5a52064355e |
23-Apr-2013 |
Glenn Kasten <gkasten@google.com> |
Remove timing jitter during startup of audio This fixes a regression introduced recently, that increased timing jitter during the startup of the FastMixer and AudioTrack callback threads. The regression was to make requestPriority() asynchronous as a way to avoid an apparent priority inversion in system_server. This means that the target thread could run briefly with the initial priority, before the new priority takes effect. This change removes the startup jitter for FastMixer, by making the requestPriority() synchronous again for that case. It doesn't matter that this restores the priority inversion involving normal mixer thread, because it happens during startup of both threads. The change also removes the startup jitter for the AudioTrack callback thread, by having the target thread check whether the requestPriority() has completed yet. If not, the target thread blocks with a timeout until the priority boost finishes. Finally, we now log an error message if the expected priority boost doesn't happen. Bug: 8698989 Change-Id: Id590e9a274b70ec1ba85b44a585ee37a22e41cbc
udioTrack.cpp
|
7a3cb8963cc5cb21cd90e41edfc0e812ff93b7d8 |
17-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
am 65e0123c: am 9e0727ca: Merge "Added CTS test for secure stop APIs" into jb-mr2-dev * commit '65e0123ced0a1891fc66e631de5ba3d1d5a515bf': Added CTS test for secure stop APIs
|
423e33ce6569cb14ecf772e9670208517f7b30c4 |
09-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
Added CTS test for secure stop APIs bug: 8604418 Change-Id: I173fa1ec904ba11dc4cff0343462b3f4bac0d365
Drm.cpp
|
1808736b17073b2fdb82a87abf103cbd31aba4fc |
09-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
Added CTS test for secure stop APIs bug: 8604418 Change-Id: I173fa1ec904ba11dc4cff0343462b3f4bac0d365
Drm.cpp
|
0011777d54148dc84a923dda21b25f4f5a99ffed |
15-Apr-2013 |
Andreas Huber <andih@google.com> |
am 2dd69cfc: am 5ce9c299: Merge "Instead of returning an error, return an invalid duration (-1 ms)" into jb-mr2-dev * commit '2dd69cfca3e2a2b7c398198366d03ba1801e1bd9': Instead of returning an error, return an invalid duration (-1 ms)
|
d85929f6086e050d7cb33bfe0d29f339ad7279e5 |
11-Apr-2013 |
Andreas Huber <andih@google.com> |
Instead of returning an error, return an invalid duration (-1 ms) if no duration information was available. This prevents us from entering ERROR state, effectively rendering the player instance useless. Change-Id: I602d2661ae8b8633360306c0ea9208fb11e2bf17 related-to-bug: 8596285
ediaplayer.cpp
|
2070254f241f52cadb69bc2323f56df72704f1ca |
11-Apr-2013 |
Andreas Huber <andih@google.com> |
Instead of returning an error, return an invalid duration (-1 ms) if no duration information was available. This prevents us from entering ERROR state, effectively rendering the player instance useless. Change-Id: I602d2661ae8b8633360306c0ea9208fb11e2bf17 related-to-bug: 8596285
ediaplayer.cpp
|
844ebdef8c73b98ec29c75f1fd7940624e70d14d |
10-Apr-2013 |
Ying Wang <wangying@google.com> |
am e63f850b: am da0dc0af: Add liblog * commit 'e63f850b179a43a344d438f202ad34ec7566f955': Add liblog
|
da0dc0af0effe9fbfb3ce3187c8472fca2baf3c6 |
10-Apr-2013 |
Ying Wang <wangying@google.com> |
Add liblog Bug: 8580410 Change-Id: If493d87d60d71be664ad75b140c62acadb75b0d0
ndroid.mk
|
ecba7488c5cceaacef95836b1b476433451e7761 |
10-Apr-2013 |
Ying Wang <wangying@google.com> |
Add liblog Bug: 8580410 Change-Id: If493d87d60d71be664ad75b140c62acadb75b0d0
ndroid.mk
|
d76fcd616b9d049cb658cb7502a2325db8d20344 |
05-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
am c2ccb7d9: am d5ef30b2: Merge "Implement async event callout from drm plugin to Java app" into jb-mr2-dev * commit 'c2ccb7d9948c01551dbb5ceb0f3d06004b86ce7c': Implement async event callout from drm plugin to Java app
|
d5ef30b223b627c21b11f2850eeb48426c74220d |
05-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
Merge "Implement async event callout from drm plugin to Java app" into jb-mr2-dev
|
505208dd38ab2f143e6a3ff6a2c262d0fab76b7e |
05-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
Merge "Implement async event callout from drm plugin to Java app" into jb-mr2-dev
|
c0d5f1f8405de861ed6f1725f26cd6601e7103ab |
02-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
Implement async event callout from drm plugin to Java app Change-Id: I007f147d693664e777b8758be2bb8a4c7ec0236b
ndroid.mk
Drm.cpp
DrmClient.cpp
|
0cb126a34fe32f81c830858102471e7be2ce85b1 |
02-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
Implement async event callout from drm plugin to Java app Change-Id: I007f147d693664e777b8758be2bb8a4c7ec0236b
ndroid.mk
Drm.cpp
DrmClient.cpp
|
5309f59db078739e3eeb6992f0f11fe0818266cb |
03-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
am 1ef63d1a: am a56e1506: Merge "MediaDrm API update" into jb-mr2-dev * commit '1ef63d1a6a03d713954acbdb4e4641f53ade1d66': MediaDrm API update
|
a56e15065bc45082d913c8c8e71e60692ce8c8f0 |
03-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
Merge "MediaDrm API update" into jb-mr2-dev
|
df41f485a9162407b32b7db1cea483f64bbd0c65 |
03-Apr-2013 |
Jeff Tinker <jtinker@google.com> |
Merge "MediaDrm API update" into jb-mr2-dev
|
5005a7c6ffc6b1013a6155a28e3e6eaff52e3273 |
02-Apr-2013 |
Eric Laurent <elaurent@google.com> |
am 0a2d8961: am 0fb6aabf: Merge "ToneGenerator: fix overflow in stopTone" into jb-mr2-dev * commit '0a2d896126ffacdaa905694757bc193a6b4ea436': ToneGenerator: fix overflow in stopTone
|
4c63a239c404af1e055e5f9939939ab0fd09d98a |
31-Mar-2013 |
Jeff Tinker <jtinker@google.com> |
MediaDrm API update Clarify offline usage of sessions and keys and implement implement CryptoSession to support additional crypto use cases. Change-Id: I5d8000ce7e1dd7eba08969fc50296c9e1456c4fc
Drm.cpp
|
8856c8b8777d0e0de11b2de863a336b001024e29 |
31-Mar-2013 |
Jeff Tinker <jtinker@google.com> |
MediaDrm API update Clarify offline usage of sessions and keys and implement implement CryptoSession to support additional crypto use cases. Change-Id: I5d8000ce7e1dd7eba08969fc50296c9e1456c4fc
Drm.cpp
|
a8eccec73a40d4afcff505eb463a016c89aeed42 |
28-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: fix overflow in stopTone Fix overflow in tone duration calculation introduced in commit 681be039. Bug 6607077 Change-Id: Ie12f13701345c2b2d3be0b3c4d71cbfa2394a29b
oneGenerator.cpp
|
b133a4cb2a5a310a7461050a2d96537c6ce2415e |
28-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: fix overflow in stopTone Fix overflow in tone duration calculation introduced in commit 681be039. Bug 6607077 Change-Id: Ie12f13701345c2b2d3be0b3c4d71cbfa2394a29b
oneGenerator.cpp
|
08b7c1ed00b04465e66fd6c14877d4b2784c4e30 |
28-Mar-2013 |
Eric Laurent <elaurent@google.com> |
am 2a2f0ece: am 681be039: ToneGenerator: fix truncated tones * commit '2a2f0ecec93bac15eb58dcf643b11867baf51804': ToneGenerator: fix truncated tones
|
681be0398a06da7e24db4ed934a92af64d1409b1 |
27-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: fix truncated tones The first DTMF tone after a silent period is truncated. This is because the phone app starts and stops the tone when the user presses and releases the key. This combined to the fact that the tones use the low latency path and that when the output stream exists standby there is a period of several milliseconds during which no audio is mixed until the stream is "warmed up". The result is that much less audio is generated than the actual key press duration. The fix consists in storing the tone start time and making sure that the number of samples generated corresponds at least to the time difference between the tone start and stop commands. Bug 6607077 Change-Id: I070d20dd8600c25a9e5d5a60c1d3313b7917b00d
oneGenerator.cpp
|
857583fd2ecbeb8696ede1f93b7291449fb2d133 |
27-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: fix truncated tones The first DTMF tone after a silent period is truncated. This is because the phone app starts and stops the tone when the user presses and releases the key. This combined to the fact that the tones use the low latency path and that when the output stream exists standby there is a period of several milliseconds during which no audio is mixed until the stream is "warmed up". The result is that much less audio is generated than the actual key press duration. The fix consists in storing the tone start time and making sure that the number of samples generated corresponds at least to the time difference between the tone start and stop commands. Bug 6607077 Change-Id: I070d20dd8600c25a9e5d5a60c1d3313b7917b00d
oneGenerator.cpp
|
16ba880fa8457f27a37467f405fe236e72032d44 |
28-Mar-2013 |
Eric Laurent <elaurent@google.com> |
am 7ffe7689: am 2d595c0e: Merge "ToneGenerator: fix stop/destroy concurrency" into jb-mr2-dev * commit '7ffe76894f0b68f4af159c68053fcfd29ca2e6fa': ToneGenerator: fix stop/destroy concurrency
|
09108adeca8cbbf3fbb21f8aea2a2ff250db9531 |
27-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: fix stop/destroy concurrency There is a problem if the stopTone() method is called from two different threads (for instance if the destructor is called while stopTone() is waiting for the audio callback to finish). In this case, the second call to stopTone() will not wait for the condition to be signaled and call clearWaveGens() while the callback can still be active, thus causing a crash. There is a similar problem in case of concurrent calls to startTone() and stopTone(). The fix consists in making sure that stopTone() always waits for call back completion or timeout and exits before calling clearWaveGens() if a concurrent start request is detected. Bug 8163071 Change-Id: I9ddb4390407701dcad5bf83660fd9903f0d72268
oneGenerator.cpp
|
2af030214e08f76c796365b0f9e1aca3dc14a6ef |
27-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: fix stop/destroy concurrency There is a problem if the stopTone() method is called from two different threads (for instance if the destructor is called while stopTone() is waiting for the audio callback to finish). In this case, the second call to stopTone() will not wait for the condition to be signaled and call clearWaveGens() while the callback can still be active, thus causing a crash. There is a similar problem in case of concurrent calls to startTone() and stopTone(). The fix consists in making sure that stopTone() always waits for call back completion or timeout and exits before calling clearWaveGens() if a concurrent start request is detected. Bug 8163071 Change-Id: I9ddb4390407701dcad5bf83660fd9903f0d72268
oneGenerator.cpp
|
ee1203117c37db7546f0e5669555437394b46eb1 |
26-Mar-2013 |
Eric Laurent <elaurent@google.com> |
am 44ae449b: am 6386b50b: ToneGenerator: fix AudioTrack pointer init * commit '44ae449bd1c85be87e7b1fa4ffac21dd7d1a5d8f': ToneGenerator: fix AudioTrack pointer init
|
6386b50b67185a966d43ee761acdfe7add569d10 |
26-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: fix AudioTrack pointer init The pointer to AudioTrack should be initialized before early return from ToneGenerator constructor because it is tested by the destructor. Bug 8140963 Change-Id: I9a7dfb60ba162b75dfaa5630ab7fc9485afd0074
oneGenerator.cpp
|
db372594bf27390d2bee089e35c5fb8f67370026 |
26-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: fix AudioTrack pointer init The pointer to AudioTrack should be initialized before early return from ToneGenerator constructor because it is tested by the destructor. Bug 8140963 Change-Id: I9a7dfb60ba162b75dfaa5630ab7fc9485afd0074
oneGenerator.cpp
|
5787070c802a79b8f2a6615fd2afea91117a4b01 |
26-Mar-2013 |
Eric Laurent <elaurent@google.com> |
am ead8ae2a: am 19c11e1c: Merge "ToneGenerator: optimize silent tone" into jb-mr2-dev * commit 'ead8ae2a46daa3aaf81094720477e5450af5c500': ToneGenerator: optimize silent tone
|
19c11e1c854ae3c20bacf66fbb20d53dcdb8d100 |
26-Mar-2013 |
Eric Laurent <elaurent@google.com> |
Merge "ToneGenerator: optimize silent tone" into jb-mr2-dev
|
bbef2b3f42de20c7d2a920de62d3d1eca40e054f |
26-Mar-2013 |
Eric Laurent <elaurent@google.com> |
Merge "ToneGenerator: optimize silent tone" into jb-mr2-dev
|
6eb954f54e4a92b3c4bfbee177a3259d1320500d |
25-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: optimize silent tone Do not create an AudioTrack and start playback when a silent tone is requested to ToneGenerator. Bug 7946399 Change-Id: Ib9282871a56f7a862af7d1504ce3fbd7c18e34e2
oneGenerator.cpp
|
3beec60725cf0e5cf8e365d6c85928160c2cb75e |
25-Mar-2013 |
Eric Laurent <elaurent@google.com> |
ToneGenerator: optimize silent tone Do not create an AudioTrack and start playback when a silent tone is requested to ToneGenerator. Bug 7946399 Change-Id: Ib9282871a56f7a862af7d1504ce3fbd7c18e34e2
oneGenerator.cpp
|
793cc53aaa6b46ccd5ad7c6acfe2e62b268c84d3 |
25-Mar-2013 |
Jeff Tinker <jtinker@google.com> |
am d247aa8c: am 351f28e2: Merge "Load crypto plugins from additional shared libraries" into jb-mr2-dev * commit 'd247aa8cec243a0a49a44057749820149e826d1a': Load crypto plugins from additional shared libraries
|
bafb682ec7f51486e751fea954169deb91846063 |
22-Mar-2013 |
Jeff Tinker <jtinker@google.com> |
Load crypto plugins from additional shared libraries Currently crypto plugins are expected to be in libdrmdecrypt.so. When there are multiple plugins supporting different schemes, this approach requires source code integration across vendors which is unmanagable. Also, for integration with MediaDrm where the crypto keys are obtained from a drm server, the MediaCrypto plugin needs to interoperate with the MediaDrm plugin. This change allows {MediaCrypto, MediaDrm} pairs that are logically related to be implemented in a common shared library. Change-Id: I7f6638f29171f91609fc2d944396365568630b56
Crypto.cpp
|
5beac28a34e557251bd4bbd77a6d9303a69d4319 |
22-Mar-2013 |
Jeff Tinker <jtinker@google.com> |
Load crypto plugins from additional shared libraries Currently crypto plugins are expected to be in libdrmdecrypt.so. When there are multiple plugins supporting different schemes, this approach requires source code integration across vendors which is unmanagable. Also, for integration with MediaDrm where the crypto keys are obtained from a drm server, the MediaCrypto plugin needs to interoperate with the MediaDrm plugin. This change allows {MediaCrypto, MediaDrm} pairs that are logically related to be implemented in a common shared library. Change-Id: I7f6638f29171f91609fc2d944396365568630b56
Crypto.cpp
|
a2bacf9dcb22243ffaa96a50a008694344fc5da0 |
20-Mar-2013 |
Jeff Tinker <jtinker@google.com> |
am 81c859d6: am de5cdcae: Merge "Implementing MediaDrm APIs" into jb-mr2-dev * commit '81c859d64ae58c565b66afee6b6232b7bb4fd38b': Implementing MediaDrm APIs
|
de5cdcae51d3afd9b14e818087be14288c0c6b8c |
20-Mar-2013 |
Jeff Tinker <jtinker@google.com> |
Merge "Implementing MediaDrm APIs" into jb-mr2-dev
|
aab193b107e302e145b5c3d6e6c87f92ac296186 |
20-Mar-2013 |
Jeff Tinker <jtinker@google.com> |
Merge "Implementing MediaDrm APIs" into jb-mr2-dev
|
4757d457bb6943931253176b5ba63758d5ea44c2 |
14-Mar-2013 |
Mathias Agopian <mathias@google.com> |
am 1be720b5: am a32fd0e2: Merge "remove uses of Surface in favor or IGraphicBufferProducer" into jb-mr2-dev * commit '1be720b5a2af2dfb2ef1cd2614ef2e7dfa3513dc': remove uses of Surface in favor or IGraphicBufferProducer
|
441a78d5e224e0d67f9b52fa9adc795c6944159b |
08-Feb-2013 |
Jeff Tinker <jtinker@google.com> |
Implementing MediaDrm APIs Change-Id: I9ff8eeb7d0c383b5c0c68cd54eb54ce7d2d22fe6
ndroid.mk
Drm.cpp
MediaPlayerService.cpp
|
cc82dc6d500023eba6048616301a4b12682458db |
08-Feb-2013 |
Jeff Tinker <jtinker@google.com> |
Implementing MediaDrm APIs Change-Id: I9ff8eeb7d0c383b5c0c68cd54eb54ce7d2d22fe6
ndroid.mk
Drm.cpp
MediaPlayerService.cpp
|
99617adda9bc46c43f511f0940bc735c73de61de |
13-Mar-2013 |
Mathias Agopian <mathias@google.com> |
remove uses of Surface in favor or IGraphicBufferProducer Change-Id: I13d7a9553aa335bca790a3a59d389d7533c83d57
MediaRecorder.cpp
ediarecorder.cpp
|
33da402287605e40e189289b11a08b8f5d515818 |
13-Mar-2013 |
Mathias Agopian <mathias@google.com> |
remove uses of Surface in favor or IGraphicBufferProducer Change-Id: I13d7a9553aa335bca790a3a59d389d7533c83d57
MediaRecorder.cpp
ediarecorder.cpp
|
660fbbb77f42745d2c05b436f1a09c5cbd3853c5 |
09-Mar-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Propose new interpretation for setPosition and setLoop"
|
2217a40453b4b13232be77121bde76d6f31be012 |
06-Mar-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Add template class SingleStateQueue" into jb-mr2-dev
|
060c68497a9ab59fd71ffbe7c9a7cd3e58489265 |
06-Mar-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Add template class SingleStateQueue" into jb-mr2-dev
|
e51d8b3ba4533b7f94345a97e3cc633dc7b31f12 |
05-Mar-2013 |
Andy McFadden <fadden@android.com> |
Merge "Implement Surface input to MediaCodec." into jb-mr2-dev
|
a7a5917a064710edea9cfacc8eda44532150e852 |
05-Mar-2013 |
Andy McFadden <fadden@android.com> |
Merge "Implement Surface input to MediaCodec." into jb-mr2-dev
|
5c4cc0d99d3b1cb35c5d7c237272ee53142745fb |
26-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Add template class SingleStateQueue Change-Id: If7e2bc9b2a216524ee9cbb68682e2634933b4973
ndroid.mk
ingleStateQueue.cpp
ingleStateQueueInstantiations.cpp
|
538f498bbd5a2da51c9037a2689afc97f8bded8f |
26-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Add template class SingleStateQueue Change-Id: If7e2bc9b2a216524ee9cbb68682e2634933b4973
ndroid.mk
ingleStateQueue.cpp
ingleStateQueueInstantiations.cpp
|
7cd58537932ef6f481f68be0b9c597a89cebdfec |
19-Feb-2013 |
Andy McFadden <fadden@android.com> |
Implement Surface input to MediaCodec. Also, renamed a CHECK_INTERFACE macro that was clashing with the Binder version. Bug 7991062 Change-Id: If5e6ed0a06d9f67975497676e4b05abe3aa3d6c0
OMX.cpp
|
f779bb50d9746d9526541c3e6dcdf619cac941b7 |
19-Feb-2013 |
Andy McFadden <fadden@android.com> |
Implement Surface input to MediaCodec. Also, renamed a CHECK_INTERFACE macro that was clashing with the Binder version. Bug 7991062 Change-Id: If5e6ed0a06d9f67975497676e4b05abe3aa3d6c0
OMX.cpp
|
c9b2e20f7c9a71e07ef398152709c76079decbcd |
26-Feb-2013 |
Glenn Kasten <gkasten@google.com> |
Miscellaneous cleanup Abbreviation framesReady to fRdy for new systrace. Put inline const on one line. Use local copy of mState in state. Improve logging. Line length 100. Change-Id: I8201c3ce0e53fd464fd33d02544e52c342d40b68
udioRecord.cpp
|
a265845ecafe06c9668ce7ac67636657f4bedf86 |
26-Feb-2013 |
Glenn Kasten <gkasten@google.com> |
Miscellaneous cleanup Abbreviation framesReady to fRdy for new systrace. Put inline const on one line. Use local copy of mState in state. Improve logging. Line length 100. Change-Id: I8201c3ce0e53fd464fd33d02544e52c342d40b68
udioRecord.cpp
|
ea2839f133b989b770cc5f093aca4754e5523599 |
01-Mar-2013 |
Marco Nelissen <marcone@google.com> |
am c0048178: Merge "Avoid invalid memory access when using extractMetadata()" * commit 'c0048178a1d312e7e05557ba99becd6a89b9e97a': Avoid invalid memory access when using extractMetadata()
|
551bb75ae1bec8db8577febcf6faaa35a37947dc |
01-Mar-2013 |
Marco Nelissen <marcone@google.com> |
am c0048178: Merge "Avoid invalid memory access when using extractMetadata()" * commit 'c0048178a1d312e7e05557ba99becd6a89b9e97a': Avoid invalid memory access when using extractMetadata()
|
c0048178a1d312e7e05557ba99becd6a89b9e97a |
01-Mar-2013 |
Marco Nelissen <marcone@google.com> |
Merge "Avoid invalid memory access when using extractMetadata()"
|
1a76084dd8918533b00d76fbef15888742f752df |
01-Mar-2013 |
Marco Nelissen <marcone@google.com> |
Merge "Avoid invalid memory access when using extractMetadata()"
|
d01c148195283d6bc68e2bd1486380f118d89e00 |
08-Feb-2013 |
Sangkyu Lee <sk82.lee@lge.com> |
Avoid invalid memory access when using extractMetadata() BpMediaMetadataRetriever::extractMetadata() returns a string which is returned by readCString() function of the reply parcel object. However, the parcel object is destroyed at the end of the extractMetadata() function, and so the returned pointer is invalid. This patch fixes this problem by storing the metadata string value. Change-Id: I2a2ccba78246175b2845a237679d6cebe881e83b Signed-off-by: Sangkyu Lee <sk82.lee@lge.com>
MediaMetadataRetriever.cpp
|
d72b2aa86e19644bbaa72039b3a3044390ba0ecd |
08-Feb-2013 |
Sangkyu Lee <sk82.lee@lge.com> |
Avoid invalid memory access when using extractMetadata() BpMediaMetadataRetriever::extractMetadata() returns a string which is returned by readCString() function of the reply parcel object. However, the parcel object is destroyed at the end of the extractMetadata() function, and so the returned pointer is invalid. This patch fixes this problem by storing the metadata string value. Change-Id: I2a2ccba78246175b2845a237679d6cebe881e83b Signed-off-by: Sangkyu Lee <sk82.lee@lge.com>
MediaMetadataRetriever.cpp
|
ceb388d6c03c38b96dc41c0ea4804b749aa077c4 |
19-Feb-2013 |
Eino-Ville Talvala <etalvala@google.com> |
CameraService and Stagefright: Support AppOps Camera: - Signal to AppOpsService when camera usage starts and stops - Listen to permissions revocations and act on them - Currently just kill camera connection when permissions lost Stagefright: - Pass on client name, UID to camera as needed Bug: 8181262 Change-Id: I9e33c9d05e9daa77dbb2d795045d08eb887ec8f0
MediaRecorder.cpp
ediarecorder.cpp
|
48af7e8dd40883d6154e7029d9500072b551b5fa |
19-Feb-2013 |
Eino-Ville Talvala <etalvala@google.com> |
CameraService and Stagefright: Support AppOps Camera: - Signal to AppOpsService when camera usage starts and stops - Listen to permissions revocations and act on them - Currently just kill camera connection when permissions lost Stagefright: - Pass on client name, UID to camera as needed Bug: 8181262 Change-Id: I9e33c9d05e9daa77dbb2d795045d08eb887ec8f0
MediaRecorder.cpp
ediarecorder.cpp
|
1a2952aee048ca7b1765e2bc09ebe9aeddaeafa3 |
15-Feb-2013 |
Mathias Agopian <mathias@google.com> |
Refactoring: Rename SurfaceTextureClient to Surface Change-Id: I4e8a8b20914cb64edc37abe68233fbc9f2b5d830
ediaplayer.cpp
|
b1e7cd156ca3e1747374e0d20cdd1ce467210453 |
15-Feb-2013 |
Mathias Agopian <mathias@google.com> |
Refactoring: Rename SurfaceTextureClient to Surface Change-Id: I4e8a8b20914cb64edc37abe68233fbc9f2b5d830
ediaplayer.cpp
|
272ab546940054ad7991bef4b3a36f15175721cd |
05-Feb-2013 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add support for querying if a stream is active remotely Bug 7485803 Change-Id: I0744374f130fd2dd0714102354cffed2fa915361
udioSystem.cpp
AudioPolicyService.cpp
|
e336f9113bdd35119866a3c3f8008ca01c576660 |
05-Feb-2013 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add support for querying if a stream is active remotely Bug 7485803 Change-Id: I0744374f130fd2dd0714102354cffed2fa915361
udioSystem.cpp
AudioPolicyService.cpp
|
a416756864e2c7750d59d967ec2185532fa5c2e0 |
01-Feb-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Add media.log service based on NBLog"
|
0be9fe5864c39c11eefe335038cf6ce5473e4ec5 |
01-Feb-2013 |
Glenn Kasten <gkasten@google.com> |
Merge "Add media.log service based on NBLog"
|
a6a88d9c445e261972c2433254e0a996336e78a4 |
30-Jan-2013 |
Andreas Huber <andih@google.com> |
Plumbing to reflect minor changes in the HDCP module API that allow for support of _decryption_ modules in addition to what we already supported. Change-Id: Ic37b87dc170ba8def3817991d25df798f21e950b
HDCP.cpp
MediaPlayerService.cpp
|
279dcd89ab1d2de91dfe95e461412a0f577a6891 |
30-Jan-2013 |
Andreas Huber <andih@google.com> |
Plumbing to reflect minor changes in the HDCP module API that allow for support of _decryption_ modules in addition to what we already supported. Change-Id: Ic37b87dc170ba8def3817991d25df798f21e950b
HDCP.cpp
MediaPlayerService.cpp
|
6f1c1918d0dfece10f728711b055441e4d135c73 |
19-Jan-2013 |
Glenn Kasten <gkasten@google.com> |
Add media.log service based on NBLog Change-Id: Ie45093df6ac9a739d05c8d408fab52a9a8a27e7f
ndroid.mk
MediaLogService.cpp
|
fdf4e4f1859771b95585cbc87f8cd038ea2815c6 |
19-Jan-2013 |
Glenn Kasten <gkasten@google.com> |
Add media.log service based on NBLog Change-Id: Ie45093df6ac9a739d05c8d408fab52a9a8a27e7f
ndroid.mk
MediaLogService.cpp
|
2e4664677d72ce54201d3fd0beb0e10280add93c |
10-Jan-2013 |
Glenn Kasten <gkasten@google.com> |
Fix AudioRecord Bug: 7965744 Change-Id: Ic024e7fb32f7459b8093c2cf6cd5752aade21ddb
udioRecord.cpp
|
45490af027a15af9fe0fdfca21f423c74cd8e4e9 |
10-Jan-2013 |
Glenn Kasten <gkasten@google.com> |
Fix AudioRecord Bug: 7965744 Change-Id: Ic024e7fb32f7459b8093c2cf6cd5752aade21ddb
udioRecord.cpp
|
9c6745f128648f6e0144b74ee593911a9fa10d51 |
30-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Propose new interpretation for setPosition and setLoop Add new API getBufferPosition to return position relative to start of fixed buffer. Change-Id: I7aca8e392d45b988545f07b36b5032691057b03e
udioTrack.cpp
|
a589764c3c0617c7a8996e929ce2d6db1cc01d77 |
05-Jan-2013 |
Glenn Kasten <gkasten@google.com> |
Fix bug in AudioRecord() constructor It was calling set() with wrong parameter list. This goes back to commit be916aa1267e2e6b1c148f51d11bcbbc79cb864c from 2010. Change-Id: I2f6917765baf58260bf35e89a2cc59c199734ff6
udioRecord.cpp
|
b438f008d958fbe3c1ef668822c128dfe5ce97ac |
05-Jan-2013 |
Glenn Kasten <gkasten@google.com> |
Fix bug in AudioRecord() constructor It was calling set() with wrong parameter list. This goes back to commit be916aa1267e2e6b1c148f51d11bcbbc79cb864c from 2010. Change-Id: I2f6917765baf58260bf35e89a2cc59c199734ff6
udioRecord.cpp
|
d5681bc9a38fe4cd1d591e6ae62b9c68fb851041 |
22-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Start isolating control block accesses in a proxy"
|
856ff4e4c3c43550f013e80277358fdf514342bf |
22-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Start isolating control block accesses in a proxy"
|
49d24d3fcd01aef0ec1fa4abd9c1b85473f64c0f |
21-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove unnecessary parameter"
|
5570227ac334479982a9dd8c1647c00f58f47c18 |
21-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove unnecessary parameter"
|
0fd58c9758d2083915864d3cc63df7495b497e52 |
20-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix bug with discarded AudioRecord::read count"
|
e30c14b48fb9c5f47802fce32a3a1115b374b357 |
20-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix bug with discarded AudioRecord::read count"
|
8d6cc842e8d525405c68e57fdf3bc5da0b4d7e87 |
03-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Remove unnecessary parameter Just get the parameter on server side Change-Id: I433a63104dbb257e0d862be2ab61847cb36d1c15
udioEffect.cpp
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
MediaPlayerService.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
f37971f624164c3ed185d3f976404a6f60f49b9a |
03-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Remove unnecessary parameter Just get the parameter on server side Change-Id: I433a63104dbb257e0d862be2ab61847cb36d1c15
udioEffect.cpp
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
MediaPlayerService.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
8ba01021b573889802e67e029225a96f0dfa471a |
18-Dec-2012 |
Andy McFadden <fadden@android.com> |
Rename ISurfaceTexture and SurfaceTexture The C++ class names don't match what the classes do, so rename ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to GLConsumer. Bug 7736700 Change-Id: I64520a55f8c09fe6215382ea361c539a9940cba5
MediaPlayer.cpp
MediaRecorder.cpp
RemoteDisplayClient.cpp
ediaplayer.cpp
ediarecorder.cpp
|
484566c410afdfbc4b6bc5aa1732aef37428a5b8 |
18-Dec-2012 |
Andy McFadden <fadden@android.com> |
Rename ISurfaceTexture and SurfaceTexture The C++ class names don't match what the classes do, so rename ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to GLConsumer. Bug 7736700 Change-Id: I64520a55f8c09fe6215382ea361c539a9940cba5
MediaPlayer.cpp
MediaRecorder.cpp
RemoteDisplayClient.cpp
ediaplayer.cpp
ediarecorder.cpp
|
89b629b398e87095cf262692f4e476d605fe87ed |
17-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Fix bug with discarded AudioRecord::read count Formerly, if an AudioRecord::read() got a timeout on obtainBuffer() after already successfully transferring some data, then it returned zero. This had the effect of discarding a partial transfer, which resulted in a gap in the audio data delivered to the app. Now if a timeout occurs after a partial transfer, it returns that partial transfer count so that no data is lost. Change-Id: I0d9c2f4e495a400b56ef916a06613ba26537ca97
udioRecord.cpp
|
74b8adfbec4b34da7904de544f1e549e21a90426 |
17-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Fix bug with discarded AudioRecord::read count Formerly, if an AudioRecord::read() got a timeout on obtainBuffer() after already successfully transferring some data, then it returned zero. This had the effect of discarding a partial transfer, which resulted in a gap in the audio data delivered to the app. Now if a timeout occurs after a partial transfer, it returns that partial transfer count so that no data is lost. Change-Id: I0d9c2f4e495a400b56ef916a06613ba26537ca97
udioRecord.cpp
|
e3aa659e9cee7df5c12a80d285cc29ab3b2cbb39 |
04-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Start isolating control block accesses in a proxy The proxy object will eventually be the only code that understands the details of the control block. This should make it easier to change the control block in the future. Initial set of control block fields that are isolated: - sample rate - send level - volume Prepare for streaming/static separation by adding a union to the control block for the new fields. Fix bug in handling of max sample rate on a track. It was only checking at re-configuration, not at each mix. Simplify OutputTrack::obtainBuffer. Change-Id: I2249f9d04f73a911a922ad1d7f6197292c74cd92
udioRecord.cpp
udioTrack.cpp
udioTrackShared.cpp
|
552f274d82fb4988fb972df69134e031d375abfe |
04-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Start isolating control block accesses in a proxy The proxy object will eventually be the only code that understands the details of the control block. This should make it easier to change the control block in the future. Initial set of control block fields that are isolated: - sample rate - send level - volume Prepare for streaming/static separation by adding a union to the control block for the new fields. Fix bug in handling of max sample rate on a track. It was only checking at re-configuration, not at each mix. Simplify OutputTrack::obtainBuffer. Change-Id: I2249f9d04f73a911a922ad1d7f6197292c74cd92
udioRecord.cpp
udioTrack.cpp
udioTrackShared.cpp
|
a8190fc518b6769257896605f3aee091aeb60b50 |
04-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Split off the current control block to separate file Prepare for a new implementation of step() etc. Change-Id: I268421976ba577aa1fb5d7015de5441c05861190
ndroid.mk
udioTrack.cpp
udioTrackShared.cpp
|
e6106dff611a0056495719c62e0c92abd9afe4c1 |
04-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Split off the current control block to separate file Prepare for a new implementation of step() etc. Change-Id: I268421976ba577aa1fb5d7015de5441c05861190
ndroid.mk
udioTrack.cpp
udioTrackShared.cpp
|
083d1c1492d496960d5b28f4664ff02101736677 |
01-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Emphasize distinction between streaming and static Update comments and improve error checks to match Change-Id: I7370d6e59a7ef26dfb284a8b058d5ab2e0a42ccf
udioTrack.cpp
|
8f7453f6770070f4789cb769bd2b6a3eabad7d68 |
01-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Emphasize distinction between streaming and static Update comments and improve error checks to match Change-Id: I7370d6e59a7ef26dfb284a8b058d5ab2e0a42ccf
udioTrack.cpp
|
4bae3649d504d590a546717a8e49f96a30d9a745 |
30-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
flush() comments and checks flush() is only useful for streaming mode. It is a no-op if track is active or uses a static buffer. Change-Id: I918ac181ffae3d16a0d67d8a7208f4aec61b5bd6
udioTrack.cpp
|
ec7dcac79c121ef015ee237891a5c90e67a977ab |
30-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
flush() comments and checks flush() is only useful for streaming mode. It is a no-op if track is active or uses a static buffer. Change-Id: I918ac181ffae3d16a0d67d8a7208f4aec61b5bd6
udioTrack.cpp
|
e4756fe3a387615acb63c6a05788c8db9b5786cb |
29-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack::mute() is unused so remove it If ever needed again, it could be implemented on client side by forcing a track volume of 0. Change-Id: I88a9b4f675b6dca2948549414f9ec2c192d29269
udioTrack.cpp
AudioTrack.cpp
|
4b3a49e3a9ced6e63adab08acc5b720f8feddefa |
29-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack::mute() is unused so remove it If ever needed again, it could be implemented on client side by forcing a track volume of 0. Change-Id: I88a9b4f675b6dca2948549414f9ec2c192d29269
udioTrack.cpp
AudioTrack.cpp
|
391f1bb93d5720bfe1a025307178b3208a3ce7d7 |
03-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioTrack inline short const methods"
|
9862e8f3ba69c46efbafdc8438bd88848a9d55da |
03-Dec-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioTrack inline short const methods"
|
01437b7cdaecf53acb46b50ff8b5d86b9d36eb20 |
29-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack inline short const methods Change-Id: I142917edb454d510bbe545e94e6eaea30b650fae
udioTrack.cpp
|
ab5bfb15f63887f999f11239e12d78a7babcd112 |
29-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack inline short const methods Change-Id: I142917edb454d510bbe545e94e6eaea30b650fae
udioTrack.cpp
|
5876f2f28f31c1bd99864ba3bb1590e3d6765018 |
30-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove last bits of IAudioFlinger::channel_count Change-Id: I9e13678e0aa32a86eb27367a4aff4b32b8aec8cc
AudioFlinger.cpp
|
217916f47c77870200856941480b5861ac7e2424 |
30-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove last bits of IAudioFlinger::channel_count Change-Id: I9e13678e0aa32a86eb27367a4aff4b32b8aec8cc
AudioFlinger.cpp
|
37a9e8e13bcc9ac614c1b733ec2c66764c29679a |
29-Nov-2012 |
Andreas Huber <andih@google.com> |
am 2f6107ec: am b64def9a: Merge "[wfd] Support a low(er) power state by triggering PAUSE/RESUME." into jb-mr1.1-dev * commit '2f6107ec8e67eea1f73b9558a5ad34caec52867f': [wfd] Support a low(er) power state by triggering PAUSE/RESUME.
|
f59ab0eb162cc32df4fc0af8d1a4500c5bce3ecc |
29-Nov-2012 |
Andreas Huber <andih@google.com> |
am 2f6107ec: am b64def9a: Merge "[wfd] Support a low(er) power state by triggering PAUSE/RESUME." into jb-mr1.1-dev * commit '2f6107ec8e67eea1f73b9558a5ad34caec52867f': [wfd] Support a low(er) power state by triggering PAUSE/RESUME.
|
2f6107ec8e67eea1f73b9558a5ad34caec52867f |
29-Nov-2012 |
Andreas Huber <andih@google.com> |
am b64def9a: Merge "[wfd] Support a low(er) power state by triggering PAUSE/RESUME." into jb-mr1.1-dev * commit 'b64def9a555bfbf533a2da41ba0189b9842a76fb': [wfd] Support a low(er) power state by triggering PAUSE/RESUME.
|
53faa7ee457eb9b27be1fd814e42ffe43c8520a0 |
29-Nov-2012 |
Andreas Huber <andih@google.com> |
am b64def9a: Merge "[wfd] Support a low(er) power state by triggering PAUSE/RESUME." into jb-mr1.1-dev * commit 'b64def9a555bfbf533a2da41ba0189b9842a76fb': [wfd] Support a low(er) power state by triggering PAUSE/RESUME.
|
5131d127a042ee88f903370be88845dc8c9f8578 |
16-Nov-2012 |
Andreas Huber <andih@google.com> |
[wfd] Support a low(er) power state by triggering PAUSE/RESUME. Change-Id: Ibe42bfa73816bbfeb7e652d435254d0171b89727 related-to-bug: 7638150
RemoteDisplay.cpp
|
bf4950aa265ec7b54777d122b27037461638af0f |
16-Nov-2012 |
Andreas Huber <andih@google.com> |
[wfd] Support a low(er) power state by triggering PAUSE/RESUME. Change-Id: Ibe42bfa73816bbfeb7e652d435254d0171b89727 related-to-bug: 7638150
RemoteDisplay.cpp
|
2546219a54970e0ad53bd218586cdc48d6039b20 |
28-Nov-2012 |
Andreas Huber <andih@google.com> |
am 7b7f17dc: am b7c8e918: Add support for HLS playlists of type \'event\'. * commit '7b7f17dc9b30ff4ecdf0aea9bcfa1c518d4ac1e7': Add support for HLS playlists of type 'event'.
|
1bfcf04b27bdd5320ab70b74285b855380e83f26 |
28-Nov-2012 |
Andreas Huber <andih@google.com> |
am 7b7f17dc: am b7c8e918: Add support for HLS playlists of type \'event\'. * commit '7b7f17dc9b30ff4ecdf0aea9bcfa1c518d4ac1e7': Add support for HLS playlists of type 'event'.
|
7b7f17dc9b30ff4ecdf0aea9bcfa1c518d4ac1e7 |
28-Nov-2012 |
Andreas Huber <andih@google.com> |
am b7c8e918: Add support for HLS playlists of type \'event\'. * commit 'b7c8e91880463ff4981e3e53e98e45d68e2fe374': Add support for HLS playlists of type 'event'.
|
61c195615176903bb077a10d6b88ba112fefa250 |
28-Nov-2012 |
Andreas Huber <andih@google.com> |
am b7c8e918: Add support for HLS playlists of type \'event\'. * commit 'b7c8e91880463ff4981e3e53e98e45d68e2fe374': Add support for HLS playlists of type 'event'.
|
b7c8e91880463ff4981e3e53e98e45d68e2fe374 |
28-Nov-2012 |
Andreas Huber <andih@google.com> |
Add support for HLS playlists of type 'event'. related-to-bug: 6870049 Squashed commit of the following: commit eee2f3ba6bb7335f4e285632726db85645669929 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 15:02:01 2012 -0800 Make everything a lot less verbose by default. Change-Id: I884d7a7901aa1e7d4ff590f065ca57a79d2af8b3 commit 6bbdb837ed5bd88008e45efb8faf595e4051ba26 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 14:34:46 2012 -0800 HLS now properly signals media time changes at discontinuities including the start of playback (which may not necessarily be at time 0 if the playlist is of type 'event' and hasn't completed yet). Change-Id: I5ab747d024f9b8d0df72a4e06a12ebb29f62802e commit 1555589832b1878a144a976a643e1af4d61f877c Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 14:32:28 2012 -0800 As part of a time discontinuity, clients of IStreamListener can now signal the corresponding media time after the discontinuity, i.e. the first PTS timestamp following the discontinuity will be considered equivalent to the specified media time and media buffers timestamped accordingly. Change-Id: Id7db7679b7faa6efd6270620ff52e34e884f3e92 commit 5c24c605c073a11c426d025b1e7478fc1ad8365a Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 13:00:56 2012 -0800 NuPlayer sources now expose flags() and can announce that duration may change (increase) dynamically, in which case duration will be polled at 1 second intervals and communicated to the upper layers. Change-Id: I45102909b7a19eed0dda576747e3814d742a0eea commit ecb71de8e281e61971a2cd73e7161a97540bc357 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 12:57:47 2012 -0800 Stop caching duration in MediaPlayer, duration could increase dynamically. Change-Id: I7bb2f16c0abe49debdf45c776d2266aa069d7791 commit 544aec5823e6d7a3e97e15b6b23546616bcd343e Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 08:46:28 2012 -0800 An attempt to add support for "event" style HLS playlists. Change-Id: I3dfb2e801ecaff8f5d8bdb3a4fca1b18aeeb2c60 Change-Id: I48cf7f65a654d33f2f49ded74f8be22aed9e3b98
StreamSource.cpp
ediaplayer.cpp
|
a4c5bc0f18fe272146426ab2eccad6215279c9f3 |
28-Nov-2012 |
Andreas Huber <andih@google.com> |
Add support for HLS playlists of type 'event'. related-to-bug: 6870049 Squashed commit of the following: commit eee2f3ba6bb7335f4e285632726db85645669929 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 15:02:01 2012 -0800 Make everything a lot less verbose by default. Change-Id: I884d7a7901aa1e7d4ff590f065ca57a79d2af8b3 commit 6bbdb837ed5bd88008e45efb8faf595e4051ba26 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 14:34:46 2012 -0800 HLS now properly signals media time changes at discontinuities including the start of playback (which may not necessarily be at time 0 if the playlist is of type 'event' and hasn't completed yet). Change-Id: I5ab747d024f9b8d0df72a4e06a12ebb29f62802e commit 1555589832b1878a144a976a643e1af4d61f877c Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 14:32:28 2012 -0800 As part of a time discontinuity, clients of IStreamListener can now signal the corresponding media time after the discontinuity, i.e. the first PTS timestamp following the discontinuity will be considered equivalent to the specified media time and media buffers timestamped accordingly. Change-Id: Id7db7679b7faa6efd6270620ff52e34e884f3e92 commit 5c24c605c073a11c426d025b1e7478fc1ad8365a Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 13:00:56 2012 -0800 NuPlayer sources now expose flags() and can announce that duration may change (increase) dynamically, in which case duration will be polled at 1 second intervals and communicated to the upper layers. Change-Id: I45102909b7a19eed0dda576747e3814d742a0eea commit ecb71de8e281e61971a2cd73e7161a97540bc357 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 12:57:47 2012 -0800 Stop caching duration in MediaPlayer, duration could increase dynamically. Change-Id: I7bb2f16c0abe49debdf45c776d2266aa069d7791 commit 544aec5823e6d7a3e97e15b6b23546616bcd343e Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 08:46:28 2012 -0800 An attempt to add support for "event" style HLS playlists. Change-Id: I3dfb2e801ecaff8f5d8bdb3a4fca1b18aeeb2c60 Change-Id: I48cf7f65a654d33f2f49ded74f8be22aed9e3b98
StreamSource.cpp
ediaplayer.cpp
|
2b691b90507ec45a98636a855c46de5dbe27c84a |
11-Oct-2012 |
Zbigniew Mazur <zbigniew.mazur@sonyericsson.com> |
AudioTrack::dump null mCblk check test This fix is protecting AudioTrack::dump from SIGSEGEV when calling dumpsys shell command. Change-Id: I30d136e195a12d6fdad41e14f557b0ad9e59b8a2
udioTrack.cpp
|
3ac30b696d8f3ae2c6ee87d58acfd71db7c2e808 |
11-Oct-2012 |
Zbigniew Mazur <zbigniew.mazur@sonyericsson.com> |
AudioTrack::dump null mCblk check test This fix is protecting AudioTrack::dump from SIGSEGEV when calling dumpsys shell command. Change-Id: I30d136e195a12d6fdad41e14f557b0ad9e59b8a2
udioTrack.cpp
|
4d9cef6c007afd195a8f36d35d46b359bf909331 |
19-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Clean up channel count and channel mask"
|
a81a88597138de226da88fe10456d46289107e8a |
19-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Clean up channel count and channel mask"
|
a42ff007a17d63df22c60dd5e5fd811ee45ca1b3 |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Clean up channel count and channel mask Channel count is uint32_t. Remove redundant mask parameter to AudioTrack::createTrack_l() and AudioRecord::openRecord_l(). Change-Id: I5dc2b18eb609b2c0dc3091994cbaa4628062c17f
udioRecord.cpp
udioTrack.cpp
|
c45128af9231a6e26c4deef798b79e74e4fad904 |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Clean up channel count and channel mask Channel count is uint32_t. Remove redundant mask parameter to AudioTrack::createTrack_l() and AudioRecord::openRecord_l(). Change-Id: I5dc2b18eb609b2c0dc3091994cbaa4628062c17f
udioRecord.cpp
udioTrack.cpp
|
a6b47a17fb1288936b491f30cd751172a572df5c |
19-Nov-2012 |
Marco Nelissen <marcone@google.com> |
delete -> free Strings duplicated with strdup() should be free()d, not deleted. Change-Id: I42bb3df9625bb8d35f80b02d15364b94c36496f8
oundPool.cpp
|
40b13798d735429d1f00d8a89113e9ab2ef88fca |
19-Nov-2012 |
Marco Nelissen <marcone@google.com> |
delete -> free Strings duplicated with strdup() should be free()d, not deleted. Change-Id: I42bb3df9625bb8d35f80b02d15364b94c36496f8
oundPool.cpp
|
aa25c0321bd4b9eb46a4d1cb4ac5fa47af30eeb4 |
17-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge ""if" statements use curly braces per media style"
|
7aeff3f2197de81271c3e5547486f3407be56182 |
17-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge ""if" statements use curly braces per media style"
|
77035d10a740914313500811b31a90ab948bd267 |
17-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix time vs. bytes units bug in getRenderPosition"
|
645f38376b042759ee3cfe78b7e97a6867b65814 |
17-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix time vs. bytes units bug in getRenderPosition"
|
67ba2b6b8018ce7556cdd880dbf28d06a92ebb78 |
17-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Don't use control block frame count after create"
|
0dec3d6af5ad8783149134e594aadbe5dc339b4d |
17-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Don't use control block frame count after create"
|
b603744e96b07b1d5bf745bde593fb2c025cefcf |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Don't use control block frame count after create This is part of a series to clean up the control block. Change-Id: I7f4cb05aef63053f8e2ab05b286d302260ef4758
udioRecord.cpp
udioTrack.cpp
|
d7101432aa28f18b1510d9c186a27eecbeba46b2 |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Don't use control block frame count after create This is part of a series to clean up the control block. Change-Id: I7f4cb05aef63053f8e2ab05b286d302260ef4758
udioRecord.cpp
udioTrack.cpp
|
d65d73c4ae74d084751b417615a78cbe7a51372a |
23-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
"if" statements use curly braces per media style Change-Id: I130e7849fd1da7a0b7fe56c3c53919d26e3843b8
udioRecord.cpp
udioTrack.cpp
|
a204922b4c04633a4e9896db3c40763bcf921ade |
23-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
"if" statements use curly braces per media style Change-Id: I130e7849fd1da7a0b7fe56c3c53919d26e3843b8
udioRecord.cpp
udioTrack.cpp
|
827e5f1237757aee78b677efcf0f7c44fd0dd3d8 |
02-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Don't explicitly log tid If needed, it can be obtained with adb logcat -v threadtime Change-Id: I91b3911d20f7bcfc3361db4052db21ff9181f1cf
udioTrack.cpp
|
411e447c4b90298f5ff635429c53f94fbce4fff9 |
02-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Don't explicitly log tid If needed, it can be obtained with adb logcat -v threadtime Change-Id: I91b3911d20f7bcfc3361db4052db21ff9181f1cf
udioTrack.cpp
|
26c77556efc30800466b60b3975bc35a70c8c28b |
16-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix time vs. bytes units bug in getRenderPosition Rename correctLatency since it requires thread to be locked. Use size_t for byte and frame counts. Change-Id: I178fdd18bdb823813b9563927bdff8c0d28ca5a5
AudioFlinger.cpp
|
b59a5026ecdb3dc283c448e5bbd51b1c6d42b946 |
16-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix time vs. bytes units bug in getRenderPosition Rename correctLatency since it requires thread to be locked. Use size_t for byte and frame counts. Change-Id: I178fdd18bdb823813b9563927bdff8c0d28ca5a5
AudioFlinger.cpp
|
e33054eb968cbf8ccaee1b0ff0301403902deed6 |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Use size_t for frame counts Also fix typo: bufferCount should be frameCount. Change-Id: Ibed539504db75ef99dc21c8ff1bf2987122063a5
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
oundPool.cpp
|
7da35f231725aa6e0b2ac8714a7d66471368df77 |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Use size_t for frame counts Also fix typo: bufferCount should be frameCount. Change-Id: Ibed539504db75ef99dc21c8ff1bf2987122063a5
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
oundPool.cpp
|
60a839204713e0f8258d082af83262b1eb33a6c3 |
21-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Clean up frame size in AudioTrack and AudioFlinger TrackBase::mFrameSize, mChannelMask, and mChannelCount are now const. Use TrackBase::mFrameSize instead of re-calculating frame size. AudioFlinger only sees 16-bit PCM format, conversion from 8-bit is now entirely on the client side. Previously a small part of the responsibility was on server side also. size_t is unsigned, so use %u in logs. Fix theoretical bug where TrackBase constructor was over-allocating space for non-linear AudioTrack or 8-bit PCM AudioRecord (probably benign). Change-Id: I7cbbba0bf4dba29ea751d8af341ab8e5cbbdc206
udioTrack.cpp
|
520a9af9438c29b24e328dd2b7a287c7a96a4e6b |
21-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Clean up frame size in AudioTrack and AudioFlinger TrackBase::mFrameSize, mChannelMask, and mChannelCount are now const. Use TrackBase::mFrameSize instead of re-calculating frame size. AudioFlinger only sees 16-bit PCM format, conversion from 8-bit is now entirely on the client side. Previously a small part of the responsibility was on server side also. size_t is unsigned, so use %u in logs. Fix theoretical bug where TrackBase constructor was over-allocating space for non-linear AudioTrack or 8-bit PCM AudioRecord (probably benign). Change-Id: I7cbbba0bf4dba29ea751d8af341ab8e5cbbdc206
udioTrack.cpp
|
3b16c766d1ae2cfd8487e8ffb2b23936fc0a8e17 |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Use uint32_t for sample rate Change-Id: Ie240b48fb54b08359f69ecd4e5f8bda3d15cbe80
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
oundPool.cpp
|
1127d65d536ebbe447ee17ce0926a7ce4a2a3c08 |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Use uint32_t for sample rate Change-Id: Ie240b48fb54b08359f69ecd4e5f8bda3d15cbe80
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
oundPool.cpp
|
b4a17e834b718eff1ba2eac4232de6e73a4bf9f5 |
15-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Update audio comments"
|
1513ad2d2de0962cc3b3121e6fae73d8ee1a4639 |
15-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Update audio comments"
|
6d92e415c6551d881429151c1902d301a7bf7cf0 |
15-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove deprecated AudioSystem methods"
|
8f1c74943c454fec3f1adf87312c4a4c89829d90 |
15-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove deprecated AudioSystem methods"
|
22eb4e239fbe9103568147d566d7482e480350b8 |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Update audio comments Change-Id: I85d7d2f6381b251db5695202fec75128883a8662
udioTrack.cpp
|
020f79fd967736d36c7ec860814e2e93866a020f |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Update audio comments Change-Id: I85d7d2f6381b251db5695202fec75128883a8662
udioTrack.cpp
|
b26e3e9f2ab0334bff21a4fa4851dbf6e57fba5d |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix build warnings Change-Id: Ic43bcca166a529a6431711b05a7fa21849b6a38b
AudioFlinger.cpp
|
98d9922247ef21b0faf8c7d817650b8327052a4a |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix build warnings Change-Id: Ic43bcca166a529a6431711b05a7fa21849b6a38b
AudioFlinger.cpp
|
a552d6049ccf674b083d011ce7b8a443a9cd68a4 |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove deprecated AudioSystem methods Change-Id: I952d504e03af9a1d3e1e0aa379c82dfb00197d9f
udioSystem.cpp
|
f6fd99cc07deb0fa4f3e8fc278836bd90649964f |
14-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove deprecated AudioSystem methods Change-Id: I952d504e03af9a1d3e1e0aa379c82dfb00197d9f
udioSystem.cpp
|
b36a7a68af073b1e7fd5cad6aa2c52223fd30efd |
13-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify AudioRecord::restoreTrack_l() Finish removing CBLK_RESTORING and CBLK_RESTORED from control block flags, and remove constant RESTORE_TIMEOUT_MS. Also minor cleanup: - Cache mCblk in local variable cblk and make cblk allocatable in a register. - Use "iMem" for sp<IMemory>. - Add missing error log to AudioRecord; it was already in AudioTrack. This is part of a series to clean up the control block. Change-Id: Ia5f5ab4763c392bc06a45851b167ddaee29e3455
udioRecord.cpp
|
55186024431cda03aa4a9960a1c90b6954412e98 |
13-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify AudioRecord::restoreTrack_l() Finish removing CBLK_RESTORING and CBLK_RESTORED from control block flags, and remove constant RESTORE_TIMEOUT_MS. Also minor cleanup: - Cache mCblk in local variable cblk and make cblk allocatable in a register. - Use "iMem" for sp<IMemory>. - Add missing error log to AudioRecord; it was already in AudioTrack. This is part of a series to clean up the control block. Change-Id: Ia5f5ab4763c392bc06a45851b167ddaee29e3455
udioRecord.cpp
|
83a0382dc17364567667a4e6135db43f5bd92efc |
12-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Move frame size out of the control block This is part of a series to clean up the control block. Change-Id: Ifab1c42ac0f8be704e571b292713cd2250d12a3f
udioRecord.cpp
udioTrack.cpp
|
5aab59a2bd0a2cd80240ffd66c1b963b5fe06d65 |
12-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Move frame size out of the control block This is part of a series to clean up the control block. Change-Id: Ifab1c42ac0f8be704e571b292713cd2250d12a3f
udioRecord.cpp
udioTrack.cpp
|
bc0f6b92bba33ca9c2e76f2a520d290f055da6b2 |
12-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix regression for AudioTrack::write() 8-bit PCM Bug: 7526532 Change-Id: I8ddd1f0e9d035b54401788dcc422591281dcd97a
udioTrack.cpp
|
9c6c02eb5badf4ffcd44fc88f2587def2fd628b6 |
12-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix regression for AudioTrack::write() 8-bit PCM Bug: 7526532 Change-Id: I8ddd1f0e9d035b54401788dcc422591281dcd97a
udioTrack.cpp
|
b929e417853694e37aba1ef4399f188987b709d9 |
08-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Move buffers pointer out of the control block This is part of a series to clean up the control block. Change-Id: Ie474557db7cb360f2d9a0f11600a68f5a3d46f07
udioRecord.cpp
udioTrack.cpp
|
2f6226ad7a3fa81dc102001fbc1d1288e55a0947 |
08-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Move buffers pointer out of the control block This is part of a series to clean up the control block. Change-Id: Ie474557db7cb360f2d9a0f11600a68f5a3d46f07
udioRecord.cpp
udioTrack.cpp
|
a47f3165f53c8e8fb8907a94de7417e2c3047eeb |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify AudioTrack::restoreTrack_l() Remove CBLK_RESTORING and CBLK_RESTORED from control block flags, for AudioTrack only. They are still used by AudioRecord. This is part of a series to clean up the control block. Change-Id: Iae4798f5b527c492bdaf789987ff3a1dadd0cb37
udioTrack.cpp
|
e0461d1d47c3e3cac625ce062b641519da37ba94 |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify AudioTrack::restoreTrack_l() Remove CBLK_RESTORING and CBLK_RESTORED from control block flags, for AudioTrack only. They are still used by AudioRecord. This is part of a series to clean up the control block. Change-Id: Iae4798f5b527c492bdaf789987ff3a1dadd0cb37
udioTrack.cpp
|
659004c2949620d8adb29e1d950a2dd1c75ba9a9 |
08-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Add all-channel AudioTrack::setVolume() API"
|
1ec74dab269d21535a89d058da82a7d28aacbb12 |
08-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Add all-channel AudioTrack::setVolume() API"
|
755e8e1dcf36f282b727ff22d87d3c2fac70d30a |
08-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix call to restoreTrack_l() without lock held"
|
4f3ebe4090a3be3bb7622cc01b2f9af476914798 |
08-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix call to restoreTrack_l() without lock held"
|
d5ed6e88a9bea1879e41d7defaf1edea7c09f554 |
02-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix call to restoreTrack_l() without lock held Also document lock order Change-Id: I2c1f273a0a51fa79ee3dd766de8d23083e270051
udioTrack.cpp
|
a96bd95dcfe886436652debbda77ceb634729da0 |
02-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix call to restoreTrack_l() without lock held Also document lock order Change-Id: I2c1f273a0a51fa79ee3dd766de8d23083e270051
udioTrack.cpp
|
864585df53eb97c31e77b3ad7c0d89e4f9b42588 |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove CBLK_DIRECTION from control block flags This is part of a series to clean up the control block. Change-Id: I0265fece3247356b585d4d48fbda6f37aea8a851
udioRecord.cpp
udioTrack.cpp
|
ba85098eb31bd2637db49816f0591361211024f2 |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove CBLK_DIRECTION from control block flags This is part of a series to clean up the control block. Change-Id: I0265fece3247356b585d4d48fbda6f37aea8a851
udioRecord.cpp
udioTrack.cpp
|
8fa3ad0e4c77f7868348ad2a4cacc34c34e7c39e |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove CBLK_FAST from control block flags"
|
891b11da870ad3f860c1d2610ef4d8836ed6c590 |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove CBLK_FAST from control block flags"
|
9d91e2a52b74380dae2662c8c00477c013b83c2c |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove unused fields in AudioTrack::Buffer"
|
b2800e8f1360cbc3c5af2bea228b9622b1ddc9dd |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove unused fields in AudioTrack::Buffer"
|
e0b07179a48ee50fda931d2aa1b3c751d167e4d7 |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove CBLK_FAST from control block flags This is part of a series to clean up the control block. Change-Id: Ic881a3560d9547cb63fcc0cefec87aa3da480e0d
udioTrack.cpp
AudioFlinger.cpp
|
c26741598a840f7c1d12ee457fb26f68fcdbcc70 |
07-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove CBLK_FAST from control block flags This is part of a series to clean up the control block. Change-Id: Ic881a3560d9547cb63fcc0cefec87aa3da480e0d
udioTrack.cpp
AudioFlinger.cpp
|
05d499958e4030938ed77a924ebdd9899f36752e |
06-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove unused fields in AudioTrack::Buffer Change-Id: Iab75f6e2348d8b6d1f3cec95aeb3fcd5135dfb50
udioTrack.cpp
|
8424361609e0a94b9a240b43920529a84a63ed15 |
06-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Remove unused fields in AudioTrack::Buffer Change-Id: Iab75f6e2348d8b6d1f3cec95aeb3fcd5135dfb50
udioTrack.cpp
|
26ba972eafde73a26271ecf027a1d5988ce50eb8 |
22-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Removed unused fields in AudioRecord::Buffer Change-Id: I89fc6d8f695b48516d956b0a9a4a43d408f369f9
udioRecord.cpp
|
6608582c5fc4dc4041d18d0e619fb3042380607b |
22-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Removed unused fields in AudioRecord::Buffer Change-Id: I89fc6d8f695b48516d956b0a9a4a43d408f369f9
udioRecord.cpp
|
d2c38fc4d5dc742d7441444316849510dd2b7363 |
01-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Cache mCblk in local variable cblk Use "iMem" for sp<IMemory> Change-Id: I2f1fbbc517fbd77cfc92f6c3b1f253c26bae93b0
udioTrack.cpp
|
c9f872e69889d0cffd1a7d74fe2a84f92368e1ff |
01-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Cache mCblk in local variable cblk Use "iMem" for sp<IMemory> Change-Id: I2f1fbbc517fbd77cfc92f6c3b1f253c26bae93b0
udioTrack.cpp
|
8e825a57202ce6cb2ddac67683ee5885334ce75d |
06-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Simplify control block flag names"
|
fda32926cfbdad0aae5a3e0bf88b2a218f9e7f6c |
06-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Simplify control block flag names"
|
b1c0993b215c5c3eebd1c6bafc22bba23d57a70b |
28-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Add all-channel AudioTrack::setVolume() API Add combined channel APIs setVolume to AudioTrack, and remove obsolete getVolume. Change-Id: I0c87bfdbff4f4292259fa33e65f67badbafd270b
udioTrack.cpp
oneGenerator.cpp
|
164d6539e0620d08b0395efcdd0e4aaf437daf54 |
28-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Add all-channel AudioTrack::setVolume() API Add combined channel APIs setVolume to AudioTrack, and remove obsolete getVolume. Change-Id: I0c87bfdbff4f4292259fa33e65f67badbafd270b
udioTrack.cpp
oneGenerator.cpp
|
847d05dc8fa144dcf8f4f435d6a6ac1727f00937 |
28-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Remove deprecated AudioTrack APIs Change-Id: I88be6525f3e33df529c0c3cb701d12a484809477
udioTrack.cpp
|
7c28540fccf996bed1744686aca1ee9e67b9cf22 |
28-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Remove deprecated AudioTrack APIs Change-Id: I88be6525f3e33df529c0c3cb701d12a484809477
udioTrack.cpp
|
9c5fdd83f9b9f49be35107971feb33528d60b945 |
05-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify control block flag names Use only one symbol per flag Change-Id: Ia3582e2134abd60c896d11337face65383e79c7c
udioRecord.cpp
udioTrack.cpp
|
d12b033552585cd8761ba6241f21e4cea4a21878 |
05-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify control block flag names Use only one symbol per flag Change-Id: Ia3582e2134abd60c896d11337face65383e79c7c
udioRecord.cpp
udioTrack.cpp
|
9a08ebc8de71e260efb86cd1a04559b075b38ebc |
02-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix spurious wakeup waiting for new IAudioTrack If there was a spurious wakeup while waiting for another thread to create a new IAudioTrack, we assumed that the track has been created when it might not have been. Change-Id: I5f3999b4f7a06a00aabd65a746cc7222fff396ab
udioTrack.cpp
|
36665ac2e7edae3e733b7f52145b80dfed9821a6 |
02-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Fix spurious wakeup waiting for new IAudioTrack If there was a spurious wakeup while waiting for another thread to create a new IAudioTrack, we assumed that the track has been created when it might not have been. Change-Id: I5f3999b4f7a06a00aabd65a746cc7222fff396ab
udioTrack.cpp
|
85ab62c4b433df3f1a9826bed1c9bec07a86c750 |
01-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Line length 100 Change-Id: Ib28fd7b9ce951a6933f006e7f8812ba617625530
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioPolicyService.cpp
isualizer.cpp
|
8af901cdea0af7e536579dee6d56e69987035a01 |
01-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
Line length 100 Change-Id: Ib28fd7b9ce951a6933f006e7f8812ba617625530
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioPolicyService.cpp
isualizer.cpp
|
c41590251aa84c078c942d258e838aad814b73a5 |
30-Oct-2012 |
Glenn Kasten <gkasten@google.com> |
Remove obsolete references to libmedia_native Bug: 6654403 Change-Id: I3993d62987cf0dd85db10bf002a5cce53d4f01bd
ndroid.mk
|
faa4420344216ccbad15a49aa7c1cd6141532fcb |
30-Oct-2012 |
Glenn Kasten <gkasten@google.com> |
Remove obsolete references to libmedia_native Bug: 6654403 Change-Id: I3993d62987cf0dd85db10bf002a5cce53d4f01bd
ndroid.mk
|
18a6d9029e18a93748d3d9c33f04c1b360aeb7ae |
24-Sep-2012 |
Glenn Kasten <gkasten@google.com> |
Fix typo Change-Id: I8cc2969eb329a830ee866622a8633adcb4e967cc
udioSystem.cpp
|
d7823e49c324a76e1e3a5e51e244aabe8eecdfca |
24-Sep-2012 |
Glenn Kasten <gkasten@google.com> |
Fix typo Change-Id: I8cc2969eb329a830ee866622a8633adcb4e967cc
udioSystem.cpp
|
b1eb1a0dd38a36dd0c0626d3d57043dbd0042a92 |
23-Oct-2012 |
Eric Laurent <elaurent@google.com> |
stagefright: discard audio at start of capture The new camcorder start sound is longer than previous one and we must discard more audio when capture starts. Ideally, camcorder should use synchronous record start. Bug 7394330. Change-Id: I219b4e231aba706776dc7ccc4f1c996eaf22f61a
ediaProfiles.cpp
|
31988edd4c346bc0b19f4e96670afce5cb056037 |
23-Oct-2012 |
Eric Laurent <elaurent@google.com> |
stagefright: discard audio at start of capture The new camcorder start sound is longer than previous one and we must discard more audio when capture starts. Ideally, camcorder should use synchronous record start. Bug 7394330. Change-Id: I219b4e231aba706776dc7ccc4f1c996eaf22f61a
ediaProfiles.cpp
|
d7086030fcf731e4bcef6c033cc6418cd04e6b91 |
10-Oct-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Support querying active record sources Add support for querying whether there is currently a recording underway from the specified audio source. Bug 7314859 Change-Id: I986b231a10ffd368b08ec2f9c7f348d28eaeb892
udioSystem.cpp
AudioPolicyService.cpp
|
e3f641fd9348bf7f4c07f6cc707347fccea1439c |
10-Oct-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Support querying active record sources Add support for querying whether there is currently a recording underway from the specified audio source. Bug 7314859 Change-Id: I986b231a10ffd368b08ec2f9c7f348d28eaeb892
udioSystem.cpp
AudioPolicyService.cpp
|
cc0f1cfb69ce8b8985fc2c0984847a06a13ad22d |
24-Sep-2012 |
Glenn Kasten <gkasten@google.com> |
Implement android.media.AudioManager.getProperty() Bug: 6635041 Change-Id: I3386a4a6c226bc4eceaf65556119e4fb15f73224
udioSystem.cpp
AudioFlinger.cpp
|
4c6db4ce1e2760682d1c9e66448dbb39bb5d14d8 |
24-Sep-2012 |
Glenn Kasten <gkasten@google.com> |
Implement android.media.AudioManager.getProperty() Bug: 6635041 Change-Id: I3386a4a6c226bc4eceaf65556119e4fb15f73224
udioSystem.cpp
AudioFlinger.cpp
|
207e18540fefbaf530a4fdf506d266f34ddec84f |
21-Sep-2012 |
Andreas Huber <andih@google.com> |
Remove legacy code and APIs in wifi display related code. Change-Id: Ia010e7a00534f9356b3247369d0ffd65591d91aa
MediaPlayerService.cpp
|
45d76bb6c8f15335f89c287dbae04cc38f79d0a8 |
21-Sep-2012 |
Andreas Huber <andih@google.com> |
Remove legacy code and APIs in wifi display related code. Change-Id: Ia010e7a00534f9356b3247369d0ffd65591d91aa
MediaPlayerService.cpp
|
efbb781c15abf8e085f5ab8d39710bd58ea0b6e4 |
18-Sep-2012 |
Andreas Huber <andih@google.com> |
HDCP module binderized Change-Id: I866768b1e3f3b232f1934a35b65f66befc12f3f6
MediaPlayerService.cpp
|
59451f8ced48874427ff1550391c4f3cd2ba2e35 |
18-Sep-2012 |
Andreas Huber <andih@google.com> |
HDCP module binderized Change-Id: I866768b1e3f3b232f1934a35b65f66befc12f3f6
MediaPlayerService.cpp
|
896adcd3ae6a1c7010e526327eff54e16179987b |
13-Sep-2012 |
Eric Laurent <elaurent@google.com> |
audioflinger: send priority request from a thread When creating a fast AudioTrack, a request is sent to SchedulingPolicyService to elevate the requesting thread priority. This generates a binder call into system_server process and to a JAVA service via JNI. If the thread from which the track was created is in the system_server process and does not have the "can call java" attribute, a crash occurs because the binder optimization reuses the same thread to process the returning binder call and no JNI env is present. The fix consists in sending the priority change request from the AudioFlinger mixer thread, not from the binder thread. This also reverts the workaround in commit 73431968 Bug 7126707. Change-Id: I3347adf71ffbb56ed8436506d4357eab693078a3
udioTrack.cpp
|
ef6be0bb71c08db7e9e9274d70edffb95f0da25f |
13-Sep-2012 |
Eric Laurent <elaurent@google.com> |
audioflinger: send priority request from a thread When creating a fast AudioTrack, a request is sent to SchedulingPolicyService to elevate the requesting thread priority. This generates a binder call into system_server process and to a JAVA service via JNI. If the thread from which the track was created is in the system_server process and does not have the "can call java" attribute, a crash occurs because the binder optimization reuses the same thread to process the returning binder call and no JNI env is present. The fix consists in sending the priority change request from the AudioFlinger mixer thread, not from the binder thread. This also reverts the workaround in commit 73431968 Bug 7126707. Change-Id: I3347adf71ffbb56ed8436506d4357eab693078a3
udioTrack.cpp
|
73431968e3c5cf420b5d63c54cf72d10ff7ee7bc |
13-Sep-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Workaround for track recreation bug Ignore thread can call Java parameter to work around bug where AudioTrack instance gets recreated when key clicks are enabled and WFD gets turned on, with the wrong parameters. Change-Id: Ia42c8704b46fe3ffea560b05b60939fa2e4b29e1
udioTrack.cpp
|
8645717388acc74efd9127b84da121be8bf733ba |
13-Sep-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Workaround for track recreation bug Ignore thread can call Java parameter to work around bug where AudioTrack instance gets recreated when key clicks are enabled and WFD gets turned on, with the wrong parameters. Change-Id: Ia42c8704b46fe3ffea560b05b60939fa2e4b29e1
udioTrack.cpp
|
fd48021dfc3278b048ba99ecffe7f996751fb440 |
10-Sep-2012 |
Elliott Hughes <enh@google.com> |
am e7c992c6: am 5abc91d6: Merge "Fix libmedia and libstagefright to get expat header files from the approved location." * commit 'e7c992c675e0075cd60b0b11c06d5956e3ddd7a3': Fix libmedia and libstagefright to get expat header files from the approved location.
|
947be6bf6700d07e148f6fbf6308e86b08d3c926 |
10-Sep-2012 |
Elliott Hughes <enh@google.com> |
am e7c992c6: am 5abc91d6: Merge "Fix libmedia and libstagefright to get expat header files from the approved location." * commit 'e7c992c675e0075cd60b0b11c06d5956e3ddd7a3': Fix libmedia and libstagefright to get expat header files from the approved location.
|
e7c992c675e0075cd60b0b11c06d5956e3ddd7a3 |
10-Sep-2012 |
Elliott Hughes <enh@google.com> |
am 5abc91d6: Merge "Fix libmedia and libstagefright to get expat header files from the approved location." * commit '5abc91d61718e334e05c6d4858bd868bd5a5769c': Fix libmedia and libstagefright to get expat header files from the approved location.
|
e8057dd8208f0a185109992339a995c518b12780 |
09-Sep-2012 |
Elliott Hughes <enh@google.com> |
Fix libmedia and libstagefright to get expat header files from the approved location. Found during a libexpat upgrade. Change-Id: I9e5abd502a884975d898486edde374fb2519164e
ndroid.mk
ediaProfiles.cpp
|
261fd2119c70fda3af64453881a6346dd48eb956 |
07-Sep-2012 |
Eric Laurent <elaurent@google.com> |
Merge "AudioRecord: Fix minimum frame count calculation." into jb-mr1-dev
|
741b47db87db45dad47d115ffcc67553184ffbe3 |
07-Sep-2012 |
Eric Laurent <elaurent@google.com> |
Merge "AudioRecord: Fix minimum frame count calculation." into jb-mr1-dev
|
6f744d75d3439f7984245e3c489cc7cf91cea41c |
06-Sep-2012 |
Eric Laurent <elaurent@google.com> |
AudioRecord: Fix minimum frame count calculation. AudioRecord::set() was calling getMinFrameCount() with a channel count instead of a channel mask. Change-Id: Iabace7686426430fd53deac0c71b0c36aa64171c
udioRecord.cpp
|
75b9bb09a7cde18a31b68f6aef96e5182d652e8d |
06-Sep-2012 |
Eric Laurent <elaurent@google.com> |
AudioRecord: Fix minimum frame count calculation. AudioRecord::set() was calling getMinFrameCount() with a channel count instead of a channel mask. Change-Id: Iabace7686426430fd53deac0c71b0c36aa64171c
udioRecord.cpp
|
455d02eca342d8159637af317a5d83219d267812 |
06-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Update remote display API. Renamed disconnect() to dispose() to emphasize the fact that this method is intended to clean up the IRemoteDisplay completely, not just temporarily disconnect the current client (which might be useful someday). Other minor tweaks. Change-Id: I1209639eb0cd8af09c724206642d7e52aab48257
RemoteDisplay.cpp
|
ced24b36bbeed1ddd086a9304a9639c04ffe0962 |
06-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Update remote display API. Renamed disconnect() to dispose() to emphasize the fact that this method is intended to clean up the IRemoteDisplay completely, not just temporarily disconnect the current client (which might be useful someday). Other minor tweaks. Change-Id: I1209639eb0cd8af09c724206642d7e52aab48257
RemoteDisplay.cpp
|
e104596061b219e9bce6d4db49a9d15242f8d2e5 |
05-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Implement remote display service stubs. Change-Id: I582ed000026bba6d116db8304e15a3c52f8a9a01
ndroid.mk
MediaPlayerService.cpp
RemoteDisplay.cpp
RemoteDisplayClient.cpp
|
2013a54981d4ffb036dff279b88cc9f08c0ee1c2 |
05-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Implement remote display service stubs. Change-Id: I582ed000026bba6d116db8304e15a3c52f8a9a01
ndroid.mk
MediaPlayerService.cpp
RemoteDisplay.cpp
RemoteDisplayClient.cpp
|
cd89e8014368af1bbdfa08406d5d2eb0bbbfcca1 |
31-Aug-2012 |
Andreas Huber <andih@google.com> |
Merge "Added an additional virtual method IStreamSource::flags()." into jb-mr1-dev
|
3e76a27a5e57435369794016494093b5b1b29513 |
31-Aug-2012 |
Andreas Huber <andih@google.com> |
Merge "Added an additional virtual method IStreamSource::flags()." into jb-mr1-dev
|
da7ff5321539ac07ec76d0d03bd1b9b09a1823bf |
31-Aug-2012 |
Andreas Huber <andih@google.com> |
Added an additional virtual method IStreamSource::flags(). Change-Id: I89e62d84328e12f08c8f73cbfd53cfb42569de97
StreamSource.cpp
|
330accb419ebfb1d8b9d7dcc3b616f56f737f29a |
31-Aug-2012 |
Andreas Huber <andih@google.com> |
Added an additional virtual method IStreamSource::flags(). Change-Id: I89e62d84328e12f08c8f73cbfd53cfb42569de97
StreamSource.cpp
|
c3ae93f21280859086ae371428ffd32f39e76d50 |
30-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Update audio comments Change-Id: Ie7504d0ddb252f7e4d4f99ed0b44cfc7b1049816
udioTrack.cpp
|
2662ac9220c9e07cd343e78bf3a0c21ca3e4ffd1 |
30-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Update audio comments Change-Id: Ie7504d0ddb252f7e4d4f99ed0b44cfc7b1049816
udioTrack.cpp
|
bcf09f8c995221e75c7cd328f25c7cc6d2b5f7c9 |
30-Aug-2012 |
Andreas Huber <andih@google.com> |
Only run the wifi display RTSP server on demand, and only on the wifi direct interface. Change-Id: I7d3c44cb79cd40e73499f2d7ccf35c69b628e6d7
MediaPlayerService.cpp
|
ab1bd84889273bc21efdabe5ff6f4633eb918a85 |
30-Aug-2012 |
Andreas Huber <andih@google.com> |
Only run the wifi display RTSP server on demand, and only on the wifi direct interface. Change-Id: I7d3c44cb79cd40e73499f2d7ccf35c69b628e6d7
MediaPlayerService.cpp
|
d8ee4e56f92eeb44ddc0997efe280b9f28ad814d |
30-Aug-2012 |
Andreas Huber <andih@google.com> |
Merge "Initial checkin of support for acting as a wifi display source" into jb-mr1-dev
|
a2c31a786cfea83f4028c4c5ae00386ae96542e9 |
30-Aug-2012 |
Andreas Huber <andih@google.com> |
Merge "Initial checkin of support for acting as a wifi display source" into jb-mr1-dev
|
d7bee3a9d2ad76d073d91f0ee36d5ac5f9df480c |
29-Aug-2012 |
Andreas Huber <andih@google.com> |
Initial checkin of support for acting as a wifi display source Change-Id: I08f17efa0c7d007e17408feb7d4fbef0a19f531a
MediaPlayerService.cpp
|
35213f1420c669f43314cb75eadea450d21a75cb |
29-Aug-2012 |
Andreas Huber <andih@google.com> |
Initial checkin of support for acting as a wifi display source Change-Id: I08f17efa0c7d007e17408feb7d4fbef0a19f531a
MediaPlayerService.cpp
|
1b19c9d120869c3182373a9b06a1ed98898df882 |
29-Aug-2012 |
Andreas Huber <andih@google.com> |
Preliminary support for HDCP as a binder service for wifi display support. Change-Id: Ie0de1c086c629a668d1c7863992eef56fb94157c
ndroid.mk
HDCP.cpp
|
9bd5a93ed8b4c4b3361c35dd1acdc3f1f49ede33 |
29-Aug-2012 |
Andreas Huber <andih@google.com> |
Preliminary support for HDCP as a binder service for wifi display support. Change-Id: Ie0de1c086c629a668d1c7863992eef56fb94157c
ndroid.mk
HDCP.cpp
|
6a8ea471a9f3b001bd0ffa3381eba12975dfc59f |
21-Aug-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Revert "Swap the order of creating IAudioTrack and thread"" into jb-mr1-dev
|
44a7e42f0310831e6a846d1b6bb40bf3a399bf6d |
22-Jun-2012 |
John Grossman <johngro@google.com> |
Add the ability to dynamicaly register MediaPlayer types. Add the ability to dynamically register low level MediaPlayer factories which will be probed at setDataSource time to determine the proper MediaPlayerBase to instantiate. This change is in preparation for moving libaah_rtp out of frameworks/base and into phantasm platform directory. Change-Id: Icf8904db3ab9e3c85df6e780d5546d9988cb9076 Signed-off-by: John Grossman <johngro@google.com>
MediaPlayer.cpp
|
a997e7a7c5aa2fc7e95316218316f8b7b98786ba |
07-Aug-2012 |
Glenn Kasten <gkasten@google.com> |
Revert "Swap the order of creating IAudioTrack and thread" This reverts commit 5d464eb0b8cffb994a754ff108795e858a882414. It caused the wrong thread ID -1 to be passed to IAudioFlinger::createTrack(). Change-Id: Ic221d2bb4af572d3d2d752af19238c52f6728e3a
udioTrack.cpp
|
5d464eb0b8cffb994a754ff108795e858a882414 |
23-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Swap the order of creating IAudioTrack and thread Simplifies the error recovery in case IAudioTrack fails. Change-Id: I6aee41a2ac747a5689fb4836b04174e6107bf32f
udioTrack.cpp
|
0ec23ce0d1ff79566c402bc30df3074f6e25a22b |
10-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Clean up start() parameters Document where int is used instead of AudioSystem::sync_event_t (probably because of a header file dependency). TrackBase::start() and RecordTrack::start() don't need default parameters. Change-Id: I82f4a4d078be900f3aa4bd926697e32f5ed68ec8
AudioRecord.cpp
|
58e5aa34f01d663654d8bafad65db1dda42161ff |
20-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
effect_descriptor_t const correctness Change-Id: Iad008f20d35a18acf500f773900164552fd0c19e
udioSystem.cpp
AudioPolicyService.cpp
|
955e78180ac6111c54f50930b0c4c12395e86cf7 |
21-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord locking Fix race conditions for EVENT_MARKER and EVENT_NEW_POS callbacks. Marker and new position update fields are protected by lock. getSampleRate() doesn't need a lock because it reads from shared memory control block. Enforce that the parameter passed with EVENT_MARKER and EVENT_NEW_POS cannot not be changed by the callback handler, and will not change during the call by another thread. Session ID should never change; log if it does. Change-Id: Ia2c63cf1a71b10bb06c37981bd76437f83fffa91
udioRecord.cpp
|
a189a6883ee55cf62da1d7bf5bf5a8ab501938a4 |
20-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Use struct assignment instead of explicit memcpy for POD structs effect_descriptor_t and effect_config_t Change-Id: Ib2fc47f85fb65ed91b0abb1f87217c49b5eb571d
udioEffect.cpp
|
28b76b334f92a15a2be3cc9e2f7d229a3275d1ac |
04-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_channel_mask_t for channel mask Change-Id: I1c1896da48983aa9f1462a4b471f910498816f60
udioTrack.cpp
AudioFlinger.cpp
|
dcda3b325f465aa6ec2be11db1c56c8a5e867f33 |
16-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioRecord::stop() return void"
|
2bdb2f25861f3a3ac9cf3b7af561975fc9b9eead |
14-Jul-2012 |
Edwin Wong <edwinwong@google.com> |
am 190313ec: am 65e8d62a: Merge "Fixed sample video corrupted in MediaCodec mode." into jb-dev * commit '190313ec68e81c10d200ff3c20ac152cf90760d6': Fixed sample video corrupted in MediaCodec mode.
|
d64cd233eef39430561c1e1df423336a199cc5d7 |
21-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord::stop() return void like AudioTrack::stop() Change-Id: Iab62f4665151345f1ad5874c97a21d1a331f0154
udioRecord.cpp
|
190313ec68e81c10d200ff3c20ac152cf90760d6 |
14-Jul-2012 |
Edwin Wong <edwinwong@google.com> |
am 65e8d62a: Merge "Fixed sample video corrupted in MediaCodec mode." into jb-dev * commit '65e8d62a5b243518795cdafa498df4a49baf6940': Fixed sample video corrupted in MediaCodec mode.
|
68337edf595a0c345ba4b8adcd4f1e541a1d7eb7 |
12-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord client threading cleanup Rename ClientRecordThread to AudioRecordThread to be more similar to AudioTrack naming. Only create the thread once, and use resume() and pause() for start() and stop(). This will allow us to have a known client callback thread tid that we can pass to AudioFlinger before start(). mActive: Made mActive a bool not int. mActive is protected by mLock; volatile is meaningless. Fixed a few places where mActive was accessed without a lock: - stopped() - processAudioBuffer() These aren't used internally, so no need for _l() versions. Change-Id: I4b8a5c90f3a22d3894b344564cb1c5aef4f1fda2
udioRecord.cpp
|
fa2b8f243eb048fb2b8e5a14356190f69eb31a36 |
11-Jul-2012 |
Edwin Wong <edwinwong@google.com> |
Fixed sample video corrupted in MediaCodec mode. Change-Id: I50c5660072d40f6e297e58fd026ea04c89d6a70a related-to-bug: 6732061
Crypto.cpp
|
04cd0186305e2b59d23c9147787046c6662029cc |
25-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
getMinFrameCount error handling Convention is for "get" APIs that directly return status_t and indirectly return a value via a pointer, to return BAD_VALUE if the pointer is NULL. Also indirectly return 0 for other errors. Change-Id: I1599f20ecb26e9723f9fb384ffbf911ff3a2ce1c
udioRecord.cpp
udioTrack.cpp
|
5f0033d27b75fead593ed7ca2b86f5b6f5adf6cc |
13-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead code in libmedia"
|
1879fff068422852c1483dcf8365c2ff0e2fadfc |
12-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Add tid parameter to IAudioFlinger::openRecord Not yet implemented Change-Id: I35523fb15ad71727ecc9f4bb870f07e4b7397dc4
udioRecord.cpp
AudioFlinger.cpp
|
d4070955e28ae62aa4be1657f9d32acde104bb86 |
12-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dead code in libmedia Change-Id: I7d8201590cda29c9fa99662a4fdba222091febfe
udioTrack.cpp
isualizer.cpp
|
bf04a5d7f287fc712e0ed91849dc85c90c1e182d |
12-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify AudioRecord::getInputFramesLost() This also fixes a benign race in reading mActive without a lock. Change-Id: I19e953d4f275e5c266ca1ca3fece7b6c02ad1707
udioRecord.cpp
|
254af180475346b6186b49c297f340c9c4817511 |
03-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_channel_mask_t more places Use it in AudioSystem::getOutput(), AudioSystem::getInput(), IAudioPolicyService::getOutput(), IAudioPolicyService::getInput(), and various other places in AudioFlinger. Not done: AudioTrack and OutputDescriptor. Change-Id: I70e83455820bd8f05dafd30c63d636c6a47cd172
udioSystem.cpp
AudioPolicyService.cpp
|
f89a0deef1ecafcba164045b76d4d6c7bf8eb24d |
10-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Move declarations of local variables to first use"
|
dd8104cc5367262f0e5f13df4e79f131e8d560bb |
02-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_channel_mask_t more consistently In IAudioFlinger::createTrack() and IAudioFlinger::openRecord(), declare input parameter to use correct type audio_channel_mask_t. In IAudioFlinger::getInputBufferSize(), input parameter is now channel mask instead of channel count. Remove unused IAudioFlinger::channelCount(audio_io_handle_t). In AudioRecord::getMinFrameCount() and AudioSystem::getInputBufferSize(), input parameter is channel mask instead of channel count. Change-Id: Ib2f1c29bea70f016b3cfce83942ba292190ac965
udioRecord.cpp
udioSystem.cpp
AudioFlinger.cpp
|
20010053daabfa43fcfe781bbf004473b4c08538 |
22-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Remove acoustics from AudioSystem::getInput() Change-Id: I29fb3ee5664c1f0ee0409c1bb2be087ecca637db
udioRecord.cpp
udioSystem.cpp
AudioPolicyService.cpp
|
624a7fcb377f2a40109c16de5109ae8ea1f67a69 |
22-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_channel_mask_t in AudioRecord Change-Id: I9e1b918b2635d961604a4a9d88eb1c7179a167a7
udioRecord.cpp
|
868a6a357018e5872e064b7a13a9b891e2078962 |
22-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Include what you use Change-Id: I12ef9367d05dbe069c037b1b4acd6347a8cf3ece
udioRecord.cpp
|
f92eec53f886f43e4374a36195be55f2a7bbcf36 |
07-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Remove AudioRecord record_flags Change-Id: I021ddcc1bcb63132a4597d13e3d09db2a5f2c628
udioRecord.cpp
|
d3a9ff4b725de612bf0354c035ba8f8564dbc6e8 |
21-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Move declarations of local variables to first use Change-Id: I48b193a742b32b6746aa938b84dc405124a6a5c3
udioTrack.cpp
|
4ebbabda6584aeb5ad2714e7db1702d00e84dad4 |
14-Jun-2012 |
Eric Laurent <elaurent@google.com> |
am 192cbbad: Fix audio track pause. * commit '192cbbad773979a6fe3b5a0c223356de4fc3309c': Fix audio track pause.
|
192cbbad773979a6fe3b5a0c223356de4fc3309c |
13-Jun-2012 |
Eric Laurent <elaurent@google.com> |
Fix audio track pause. AudioTrack::pause() should signal the control block condition to release threads waiting for available buffers in obtainBuffer(). Otherwise the behavior relies on the timout on the condition or the fact that audioflinger will mix a new audio buffer while executing the pause. Bug 6653769. Change-Id: I5f8f73c471fe306070f30b814f32fd4b4dc1d575
udioTrack.cpp
|
48a0bfa6f731386f2794ff36d6677d56e98fc6ea |
14-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
am 49dd5cf3: Merge "Log track name on obtain/releaseBuffer warnings" into jb-dev * commit '49dd5cf3469cd755321f8ec10013ad4fcfaf723d': Log track name on obtain/releaseBuffer warnings
|
0c9d26d187017f7fb028ab52a0fbc6395142faa4 |
31-May-2012 |
Glenn Kasten <gkasten@google.com> |
Log track name on obtain/releaseBuffer warnings This should help diagnose problems by allowing us to correlate the logs with the dumpsys media.audio_flinger output. Change-Id: I8c7c592b4f87d13b0f29c66ce7a2f301a0f063c9
udioTrack.cpp
|
ea5008d8abfdf1479b4efa266cdb7c842d168aa9 |
08-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
am 28ed2f93: Reduce underruns in screen off, esp. with EQ * commit '28ed2f93324988767b5658eba7c1fa781a275183': Reduce underruns in screen off, esp. with EQ
|
28ed2f93324988767b5658eba7c1fa781a275183 |
07-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Reduce underruns in screen off, esp. with EQ Add MonoPipe APIs to specify setpoint. Use screen state to configure pipe setpoint. Fix a long-standing bug where pipe sleep time was excessive, which interacted poorly with governor and low clock frequencies. Now it deducts the elapsed time since last write(), which was significant when there was EQ and low clock frequency. Bug: 6618373 Change-Id: I6f3b0072c2244aeb033ef0795ad164491a164ff5
udioParameter.cpp
|
721e18b75824eae3f3e79c915f4800ecad5dac80 |
01-Jun-2012 |
Eric Laurent <elaurent@google.com> |
am 27d33134: Merge "Do not keep audio wake lock when apps underrun." into jb-dev * commit '27d33134130379cc91d936cdc742700311901a9d': Do not keep audio wake lock when apps underrun.
|
df839841d2db4cb8e2acb10205b3942622b3e7a2 |
31-May-2012 |
Eric Laurent <elaurent@google.com> |
Do not keep audio wake lock when apps underrun. Do not automatically restart an AudioTrack after an underrun if the callback is executed but no data is written by the app. Bug 6541286. Change-Id: I11e7ab8dc968d7ff087058fec68f44490d3a7731
udioTrack.cpp
|
3c8889e827d95b195fe5ba077a01cb5b6042e534 |
29-Mar-2012 |
Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org> |
libmedia: Fix build with gcc 4.7 gcc 4.7 doesn't like the redefinition of n in the same scope: for(size_t n=...;;) { size_t n = 2; // <-- duplicate definition } Change-Id: Idfc2e768a0eb85a3dacccd3431b4ad44775432a4 Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
ediaProfiles.cpp
|
2986460984580833161bdaabc7f17da1005a8961 |
09-May-2012 |
Eric Laurent <elaurent@google.com> |
Fix issues with synchronous record start. - Added a timeout in case the trigger event is never fired. - Extend AudioRecord obtainBuffer() timeout in case of synchronous start to avoid spurious warning. - Make sure that the event is triggered if the track is destroyed. - Reject event if the triggering track is in an incompatible state. Also fix a problem when restoring a static AudioTrack after a mediaserver crash. Bug 6449468. Change-Id: Ib36e11111fb88f73caa31dcb0622792737d57a4b
udioRecord.cpp
udioTrack.cpp
|
093000f7d11839b920e8dfaa42ed1d09f48e24b8 |
03-May-2012 |
Glenn Kasten <gkasten@google.com> |
Don't allow AudioTrack frameCount to decrease This is a workaround for bug that client can cache return value of frameCount(), and is not notified when this value changes due to automatic re-recreation of the underlying IAudioTrack. A better long-term fix would be to notify clients when these kinds of parameters change, and to fix assumptions in client code that they are constant (e.g. in SoundPool and maybe obtainBuffer). Also, once a fast track request is denied, don't request it again. Bug: 6431187 Change-Id: I55b4ff30bbd9ed3a402e39452a38de52cdea53a9
udioTrack.cpp
|
f4022f90db5acb680870db8c1150b673cdd211d9 |
02-May-2012 |
Glenn Kasten <gkasten@google.com> |
Fix race in AudioTrack destruction Bug: 6427369 Change-Id: Id3b4487406235b881f6f0b4b95c5a02a9b797e75
udioTrack.cpp
|
31dfd1db7a4d2228d9642008af6f3dd744368eb6 |
01-May-2012 |
Glenn Kasten <gkasten@google.com> |
Disable fast track log spam except for "denied by client" and "denied by server" Change-Id: I133ab747933729cc1f386813ee06ece055bdb294
udioTrack.cpp
|
1477e92867a950016579a644e74f803ed1d90cbb |
01-May-2012 |
Glenn Kasten <gkasten@google.com> |
Enable fast track for SoundPool Change-Id: Ia80b3a7738e4c5dbe2bd5b0f55f0ca49943e2f64
oundPool.cpp
|
98f153091e8f4190b35b9ce15250f308baf4805c |
25-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Re-enable fast track for ToneGenerator Change-Id: If4152169778df124c750dc45023322ee23c80587
oneGenerator.cpp
|
f60c660f048d5f5e2458cff243c20400d73757a7 |
29-Apr-2012 |
Dave Burke <daveburke@google.com> |
Added support for HE-AAC recording Fixed bug in decoder related to sample rates / channel counts Made decoder follow Fraunhofer pattern Log if bitrate not available Bug: 6275957 Change-Id: I47a8e29358fa4a88ebc73fe02d46a2bfb96c64fe
ediaProfiles.cpp
|
aeb8fd460ed87d032b3fb8bb61e21eb542ce0f5b |
19-Apr-2012 |
Dave Burke <daveburke@google.com> |
Add Fraunhofer AAC encoder with AAC-ELD support. Change-Id: I6cd499d257d72f50a5b508bed97796a591a51506
ediaProfiles.cpp
|
e0fa467e1150c65a7b1b1ed904c579b40f97c9df |
24-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Move frame count calculations for fast tracks For fast tracks: move the default and minimum frame count calculations from client to server. If accepted, the default and minimum frame count is the fast mixer (HAL) frame count. If denied, the default and minimum frame count is the same as it currently is for normal tracks. For normal tracks: there is no change yet, preserve legacy behavior for now but add a FIXME to change this later. Bug fix: the test for buffer alignment matches channelCount was wrong. Bug fix: check for 8-bit data in shared memory, which isn't supported. Optimizations: - in set(), only call AudioSystem::getOutputSamplingRate() when needed - in createTrack_l(), only call AudioSystem::getSamplingRate() and AudioSystem::getFrameCount() when needed Change-Id: I79d2fe507db1a8f7bb094c71da8a129951dbb82f
udioTrack.cpp
|
a636433cbd09c0708b85f337ef45c0cdef3bcb4d |
19-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Use C APIs instead of C++ APIs for policy The C++ APIs are going away. Note: we use tid == 0 which is not supported yet by the C APIs, do not submit this until that is added. Change-Id: I0e90789e6c81c69f2544e899c52421ea5d1342be
udioRecord.cpp
udioTrack.cpp
|
ca8b28013c0558a4a3323a1a0f58520277200086 |
23-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Fix regression in AudioTrack::pause() Bug: 6379646 Change-Id: I12b53bc4118499ddc73a53a981f3f56328140868
udioTrack.cpp
|
1d685d767a5dd1003eb62f6ad1a26b39645a474f |
23-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Fix ToneGenerator regression Bug: 6378847 Change-Id: Ib3324c7a5951ac95f99993bfae27ea02bfda08ff
oneGenerator.cpp
|
3acbd053c842e76e1a40fc8a0bf62de87eebf00f |
28-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Configure policy of mediaserver threads Change-Id: Ifd825590ba36996064a458f64453a94b84722cb0
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioRecord.cpp
AudioTrack.cpp
|
1948eb3ea6eee336e8cdab9b0c693f93f5f19993 |
14-Apr-2012 |
Eric Laurent <elaurent@google.com> |
Add support for deep audio buffers Allow AudioSink to use deep audio buffering when the source is audio only and its duration is more than a certain threshold. This helps improve battery life but implies higher audio latency. Change-Id: Ie79915b61c370292f05aabda9779356570e03cbb
udioTrack.cpp
|
5b8987e7de9d04b09153f329c680d2316cdb44ec |
19-Apr-2012 |
Andreas Huber <andih@google.com> |
Allow propagation of error information and description from the CryptoPlugin to the higher layers. Change-Id: I9f434ad55cdf575803c208bedf47b607baff2330 related-to-bug: 6365261
Crypto.cpp
|
2d359a85ef5b72f1cb47df227b44fe4f3c5fbd60 |
19-Apr-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Merge "Add support for scaling mode parameter"
|
3476de62fb10e76412452ef4c6bd71936c9f7db1 |
16-Apr-2012 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add support for scaling mode parameter Support VISUALIZER_PARAM__SCALING_MODE parameter. Modify process() function to use new volume scaling parameter, used to set whether captured values are maximized by current headroom in the buffer (default existing behaviora) or left as is and thus affected by volume. Modify AudioEffect to allow subclasses to override the following events: control status changed, enable status changed, command executed. In Visualizer class (a subclass of AudioEffect), reset the scaling mode and capture size on the actual effect as cached when control is regained. This will allow the effect to be properly configured whenever Visualizers with different scaling modes or capture sizes are released (e.g. from java release() method). Change-Id: I05cb9f925a296dceca91bafa9fe294ef2b2c2bd5
isualizer.cpp
|
0ca3cf94c0dfc173ad7886ae162c4b67067539f6 |
18-Apr-2012 |
Eric Laurent <elaurent@google.com> |
rename audio policy output flags Change-Id: I27c46bd1d1b2b5f96b87af7d05b951fef18a1312
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
etPlayer.cpp
oundPool.cpp
oneGenerator.cpp
|
eee482b84bb456e87fa42e8ad02fd2d803839586 |
17-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "ToneGenerator requests fast track"
|
2120fe5bd4e14b53d8bef4a220e8a32830cf8cf9 |
11-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
ToneGenerator requests fast track Also add comments to AudioTrack::set() parameter list Change-Id: I28c76e9d813778d86b15d75cf7f01a17c258b6d9
oneGenerator.cpp
|
77d837ae86c791c46ce019b58e09ac62780bf973 |
16-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Order of evaluation of parameters is not specified Change-Id: Id545e54c2ec8ed2f70ede630542ed999a9b2c5e2
AudioRecord.cpp
|
705868c0f2a6e85a39addefe4db9f2130627c219 |
12-Apr-2012 |
Andreas Huber <andih@google.com> |
Make it possible to pass empty opaque data as (NULL, 0) to ICrypto. Change-Id: Ifee1744890b645e008c9aff3783625a7bfbcff27 related-to-bug: 6275919
Crypto.cpp
|
4b75a9c8b93a90749bc5d22912ad0d96c12f4ecf |
06-Apr-2012 |
Andreas Huber <andih@google.com> |
New API to support submitting encrypted buffers to the decoder. Change-Id: I69dd60e43078c4211c6123cf6e0ce90e676bf873 related-to-bug: 6275919
Crypto.cpp
|
a4c5a550e2a3bc237179b8684e51718e05894492 |
29-Mar-2012 |
Eric Laurent <elaurent@google.com> |
audio policy: load audio hw modules. Audio HW modules are now loaded upon request from audio policy manager according to the configuration in audio_policy.conf. Removed hard coded HW module loading by AudioFlinger at init time. Added methods to IAudioFlinger and AudioPolicyInterface to control the loading of audio HW modules. Added methods to open an output or input stream on a specific hw module. Change-Id: I361b294ece1a9b56b2fb39cc64259dbb73b804f4
AudioFlinger.cpp
|
1a9ed11a472493cac7f6dfcbfac2064526a493ed |
21-Mar-2012 |
Eric Laurent <elaurent@google.com> |
audio policy: add configuration file removed outputs to stream mapping cache in audio system: the output for a given stream type must always be queried from audio policy manager as the cache is not always updated fast enough by audioflinger callback. removed AudioFlinger::PlaybackThread::setStreamValid() not used anymore if stream to output mapping is not cached. Change-Id: Ieca720c0b292181f81247259c8a44359bc74c66b
udioSystem.cpp
udioTrack.cpp
|
1bd139a2a68690e80398b70b27ca59550fea0e65 |
03-Apr-2012 |
Andreas Huber <andih@google.com> |
New Crypto services talking to the new crypto "HAL". Change-Id: I69ed31e7a8b4d69d1209d2d516f94d258f072566 related-to-bug: 6275919
Crypto.cpp
|
2d6486f9112a6f0d23f17eaaad94bac62e16caab |
02-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Update AudioParameter"
|
4a4a0959bca78e03e3c3f486ba17829c28314d8c |
19-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack client fast policy Change-Id: I42ce691df3f586ac061b62237f35a263a0116f1f
udioTrack.cpp
|
edf47a8cba2d1d8985b64bf4a4fac661ba34f35a |
01-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Update AudioParameter Use definitions for AUDIO_PARAMETER_STREAM_* from <hardware/audio.h> instead of repeating these constants. String constants are const char * const. Change-Id: I1c9ebe0bc9c827d719d3181aea55251c6db28ec4
udioParameter.cpp
|
a1472d9883e35edd280201c8be3191695007dfd4 |
30-Mar-2012 |
Marco Nelissen <marcone@google.com> |
Make AudioTrack/AudioRecord handle more than 2^32 frames b/6160363 Change-Id: I471815012c6a113ec2c4dd7676e8fa288a70bc76
udioRecord.cpp
udioTrack.cpp
|
a011e35b22f95f558d81dc9c94b68b1465c4661d |
30-Mar-2012 |
Eric Laurent <elaurent@google.com> |
implemented synchronous audio capture Added the infrastructure to support the synchronization of playback and capture actions on specific events. The first requirement for this feature is to synchronize the audio capture start with the full rendering of a given audio content. The applications can further be extended to other use cases (synchronized playback start...) by adding new synchronization events and new synchronous control methods on player or recorders. Also added a method to query the audio session from a ToneGenerator. Change-Id: I51f1167290d9cafdf2fbcdf9e4785156973af44c
udioRecord.cpp
AudioRecord.cpp
|
559bf2836f5da25b75bfb229fec0d20d540ee426 |
28-Mar-2012 |
James Dong <jdong@google.com> |
AV Android make files changes o plus a few file relocation: ActivityManager.cpp/h, SoundPool.h, etc o remove some runtime dependencies to libandroid, libandroid_runtime, etc Change-Id: I047a47c5fb361dd5cf85cd98798c39f629a75d10
oundPool.cpp
oundPool.h
oundPoolThread.h
|
15147270aa1c56503902b424f946389294875665 |
26-Mar-2012 |
Andreas Huber <andih@google.com> |
Merge "Provisional support for secure decryption of media streams."
|
ed3e3e046840d5bf1ca84a8c0cc097425e89d6d6 |
26-Mar-2012 |
Andreas Huber <andih@google.com> |
Provisional support for secure decryption of media streams. Change-Id: Ib3982a9c960bfdb0cb7e1b174440b141b194cfbe
ndroid.mk
Crypto.cpp
MediaPlayerService.cpp
|
131c36ef343a604e9aee10c830ebe9c55a743379 |
26-Mar-2012 |
Eric Laurent <elaurent@google.com> |
Merge "reorganize SoundPool and JetPlayer code."
|
1f08900408927bd2b3bef59aaa15ab68ec765c06 |
26-Mar-2012 |
Colin Cross <ccross@android.com> |
Merge changes Ib4d0e0c0,Iea8f4a23 * changes: libmedia: remove skia include stagefright: remove dependency on skia
|
2e66a7896c9a9da3a15fc6cff9be28b4174d8719 |
26-Mar-2012 |
Eric Laurent <elaurent@google.com> |
reorganize SoundPool and JetPlayer code. Reorganize SoundPool and JetPlayer code to be ready for the creation of libmedia_native. Split SoundPool between libsoundpool (JNI) and libmedia(sound pool implementation). Remove dependencies on nativehelper/jni.h from JetPlayer. Change-Id: I130c6014173b714329929dd82c5dfb70b757a610
ndroid.mk
etPlayer.cpp
oundPool.cpp
oundPool.h
oundPoolThread.cpp
oundPoolThread.h
|
b83d38feeeb88a8a2a6219e1fca2480b5a14fb0d |
26-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "IAudioFlinger::createTrack and openRecord flags"
|
60d3a4160f3edb38fa6168237f3275f4d6d9e019 |
25-Mar-2012 |
Colin Cross <ccross@android.com> |
libmedia: remove skia include skia is not used in this file, remove the unnecessary include. Change-Id: Ib4d0e0c0090c6b37ff8cfb816c0d8ba82a9638a4
MediaMetadataRetriever.cpp
|
3ee26944b082def647fe5bb2b75116ffb0267059 |
24-Mar-2012 |
James Dong <jdong@google.com> |
Remove JNI in LOCAL_C_INCLUDE from non-JNI related Android.mk files. o related-to-bug: 6214141 Change-Id: Ic88d1732b3e014af47532a0809e01f6086e8464d
ndroid.mk
|
ef36d496477d1e2ae99c3cd43eee5cf7e82b0883 |
23-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Revert "Split libmedia into libmedia and libmedia_native""
|
78b5e82f421bfdf5c1c72bd0ca2fb7f3bc1a45ff |
23-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Revert "Split libmedia into libmedia and libmedia_native" This reverts commit 0a3edd38df0743dcc7091bb7ebf29e7e7dadc7cb
ndroid.mk
|
a411f779465504ff3e1a59c8ffa43d18385852b8 |
22-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove enforceFrameCount"
|
c524ffda17017d8467a237a1eddfd7e7c03c6617 |
21-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Split libmedia into libmedia and libmedia_native This is still in the old location Change-Id: Ic1be549b5b607cfd519cb4cecc581624510a4ee1
ndroid.mk
|
291f4d505aff81969e6666049d3cc3446f836af2 |
19-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Remove enforceFrameCount It was only used to decide whether to issue a warning. The warning was issued the first time track was created but not at re-creation. Now it is a verbose message every time, not a warning since it happens all the time with key clicks on A2DP. Change-Id: I9d39f53c0a7eb84b666e55b1b76ff830cf8f37ba
udioTrack.cpp
|
63c1faa8dea7feb90255d31ef2a133d8f2818844 |
21-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Update comments"
|
7153494670bdac8b650cb10b8b1838651e0ca418 |
21-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Whitespace"
|
ea7939a079b3600cab955760839b021326f8cfc3 |
14-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Whitespace Fix indentation, and add blank lines in key places for clarity Change-Id: I57a0a8142394f83203161aa9b8aa9276abf3ed7c
udioTrack.cpp
|
1bb8e81b066a2311fd238fc6dae8f026e33ed99e |
20-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Add libmedia_native"
|
17a736c3e1d062d7fc916329eb32aef8935614af |
14-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Update comments Change-Id: I327663a020670d0a72ff57bd0b682e2ce0528650
udioTrack.cpp
etPlayer.cpp
|
a075db4ff9b086ac2885df77bb6da0869293df92 |
06-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
IAudioFlinger::createTrack and openRecord flags createTrack and openRecord don't need the "old" flags parameter, which was either audio_policy_output_t or audio_in_acoustics_t shifted left by 16 bits. But they do need "new" flags, which are defined by the application use case. Initially, the only application use case flag is timed output, but others are planned. For output, the audio_policy_output_t flags are passed to AudioSystem::getOutput, which returns an audio_io_handle_t, and that handle is then passed to createTrack. So createTrack doesn't need the old flags parameter. For input, the audio_in_acoustics_t flags are passed to AudioSystem::getInput, which returns an audio_io_handle_t, and that handle is then passed to openRecord. So openRecord doesn't need the old flags parameter. Change-Id: I18a9870911846cca69d420c19fe6a9face2fe8c4
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
|
b12153e36ae5e514d96c77d660b327d1a8f5000f |
16-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Add libmedia_native Change-Id: Ib8cff8abd73723b793f08da99ad59549f219e0e7
ndroid.mk
|
ab334fd351ae5a0e18903da123d63e565b536874 |
14-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
audio_channel_in/out_mask_from_count and avoid ambiguous term "channels" where it might be confusing as to whether it is a channel mask or channel count Change-Id: I744fa08ccb6001a98c97bd638d2c9d56836c4234
etPlayer.cpp
|
33b383948e8f270bff30378476f00dce289004eb |
13-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dependency on audio_* location Change-Id: I4bc66115fcb9ba22b057bd72db3f561dcb18a0d8
ndroid.mk
|
36a4d2cc7a44eb42d0d9ef5fe50b6747a7a34cab |
13-Mar-2012 |
Marco Nelissen <marcone@google.com> |
Merge "Gapless playback, step 1."
|
6b74d671a1321a6ecc4a40b6c87beedfecc1ec44 |
29-Feb-2012 |
Marco Nelissen <marcone@google.com> |
Gapless playback, step 1. Currently able to play Ogg Vorbis, PCM WAV and other lossless files seamlessly by reusing the initial AudioTrack for subsequent players. Change-Id: Ie7cf6b9076bdf4f9211574456d192c02c04fecc7
MediaPlayer.cpp
ediaplayer.cpp
|
5e7616cc0e5493241211333134555d74aec89982 |
13-Mar-2012 |
James Dong <jdong@google.com> |
Merge "Switched to use the header files in /frameworks/native and deleted the duplicate header files in /frameworks/base"
|
e53b9ead781c36e96d6b6f012ddffc93a3d80f0d |
13-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Whitespace and indentation Fix indentation to be multiple of 4. Make it easier to search: sp< not sp < to "switch (...)" instead of "switch(...)" (also "if" and "while") Remove redundant blank line at start or EOF. Remove whitespace at end of line. Remove extra blank lines where they don't add value. Use git diff -b or -w to verify. Change-Id: I966b7ba852faa5474be6907fb212f5e267c2874e
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioPolicyService.cpp
AudioRecord.cpp
AudioTrack.cpp
Effect.cpp
EffectClient.cpp
MediaDeathNotifier.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
MediaRecorderClient.cpp
etPlayer.cpp
ediaProfiles.cpp
ediaScanner.cpp
ediaScannerClient.cpp
etadata.cpp
oneGenerator.cpp
isualizer.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
6c6b4d0d2b98a7ceee8b697daaf611f8df3254fb |
12-Mar-2012 |
James Dong <jdong@google.com> |
Switched to use the header files in /frameworks/native and deleted the duplicate header files in /frameworks/base o related-to-bug: 6044887 Change-Id: I17e0692d9a9b5c8796ded36677c833ca8ab36795
ndroid.mk
ediaProfiles.cpp
|
18868c5db2f90309c6d11e5837822135e4a0c0fa |
07-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_policy_output_flags_t consistently This affects: - IAudioFlinger::openOutput - AudioTrack::AudioTrack - AudioTrack::set - apps that call these Change-Id: I26fb281bac6cb87593d17697bc9cb37a835af205
udioTrack.cpp
AudioFlinger.cpp
etPlayer.cpp
oneGenerator.cpp
|
f2015b625cd6bea86da7401e725332c35b90e7cf |
10-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use AudioRecord::record_flags consistently"
|
679ab0b0792846a89162ce41c953819d70030112 |
07-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Use AudioRecord::record_flags consistently Change-Id: I6f369a2b99eb515603bc7d5629a07db2b96783fe
udioRecord.cpp
|
a19ffb656616feec70613ba67ddfe15a504a4e76 |
09-Mar-2012 |
Eric Laurent <elaurent@google.com> |
Merge "audio policy: use audio_devices_t when appropriate"
|
6374252107fd6539397598195ea6defd5870fafb |
08-Mar-2012 |
Eric Laurent <elaurent@google.com> |
audio policy: use audio_devices_t when appropriate Change-Id: I1b3a5879e81c789fb53d356af3d3a1ee2dca955f
udioSystem.cpp
AudioPolicyService.cpp
|
b81cc8c6f3eec9edb255ea99b6a6f243585b1e38 |
01-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
IAudioFlingerClient::ioConfigChanged param2 const The 3rd parameter (param2) to AudioFlingerClient::ioConfigChanged is used as an input. So changed it from void * to const void *. It is then cast to const OutputDescriptor * or const audio_stream_type_t * depending on the event. Change-Id: Ieec0d284f139b74b3389b5ef69c7935a8e5650ee
udioSystem.cpp
AudioFlingerClient.cpp
|
d8d6185c978c9b27ca69e7791785e0983ed9e8b8 |
06-Mar-2012 |
Eric Laurent <elaurent@google.com> |
AudioTrack: relax check on minimum buffer size Current AudioTrack implementation enforces that the requested audio buffer size is at least corresponding the audio latency. This requirement is too strong and leads to problems with current stagefright and AudioSink implementations when playing over output streams with long latency. Ultimately, the AudioSink design should be changed to specify a minimum buffer size in time or frames units but not in buffer count units. Change-Id: I8ba603956f92ac49143a8249572665aa548f2f0f
udioTrack.cpp
|
c795b64060c3af9d7961fc1371e4ccfa8ee3e450 |
23-Feb-2012 |
John Grossman <johngro@google.com> |
Switch the way we configure for MediaPlayer retransmission. This is a cherry-pick of I6ab07d89b2eeb0650e634b8c3b7a0b36aba4e7dd with merge conflicts addressed by hand and additional changes made in response to code review feedback. Move in the direction of a more publishable API for configuring a media player for retransmission. It used to be that we used a custom invoke and a modified URL (prefixed with aahTX://). There are many issues with this technique and it was never meant to stand the test of time. This CL gets rid of all that. A new (but currently hidden) method was introduced to the java level MediaPlayer API, called setRetransmitTarget(InetSocketAddress), which allows an app writer to set the retransmit target. For now, this method needs to be called before a call to setDataSource (which is pretty unusual for the MediaPlayer API) because this mid level code uses this as a cue to instantiate an aahTX player instead of relying on the data source to select a player. When retranmit functionality becomes part of the existing android player implemenation, this set-retrans-before-set-data-source behavior can go away, along with the aahTX player itself. Change-Id: I3b46c5227bbf69acb2f3cc4f93cfccad9777be98 Signed-off-by: John Grossman <johngro@google.com>
MediaPlayer.cpp
ediaplayer.cpp
|
e8286332f3817a8b7cc4cfd8f6450a3913533660 |
29-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Shorten thread names"
|
480b46802bef1371d5caa16ad5454fce04769c57 |
28-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Shorten thread names prctl(PR_SET_NAME) limits to 15 characters. Before we had names like "Binder Thread #" and the counter was cut off :-( Also remove redundant "thread" at end of name; it's always a thread. Change-Id: I1f99c2730ba0787ed9b59c15914356cddf698e2f
udioRecord.cpp
udioTrack.cpp
|
606ee61616efdba4696ae591ad10a4be33d8c946 |
25-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord const methods Change-Id: Ifae4fd7820b650aaca2b13c8658c292db1c46c0f
udioRecord.cpp
|
df712ea86e6350f7005a02ab0e1c60c28a343ed0 |
26-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix libgui header location Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
MediaPlayer.cpp
MediaRecorder.cpp
OMX.cpp
ediaplayer.cpp
ediarecorder.cpp
|
f063b49e95c28d63a58215ebda892a5fee4204cc |
18-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Fix build warning warning: pointer of type 'void *' used in arithmetic warning: enumeral and non-enumeral type in conditional expression Change-Id: I7b8d626a636145ef648e3b5d0e77068216dd012e
udioEffect.cpp
|
af7d8189f91c45ab919a6c9ac386b268c8d91168 |
11-Jan-2012 |
John Grossman <johngro@google.com> |
Enhance Visualizer behavior in the case of mediaserver death. Bring the Visualizer class into line with the SDK documentation by returning ERROR_DEAD_OBJECT instead of ERROR_INVALID_OPERATION when the Visualizer loses its binder connection to the mediaserver because of a mediaserver restart. Also add a new callback interface to allow clients to be asynchronously notified in the case of server death. Right now, the interface definition and the registration method are flagged as hidden pending API council review/approval. See http://b/issue?id=5717519 for details. Change-Id: Ic15856f27ed5a950a583ac11ca81f79bd7e9b1a0 Signed-off-by: John Grossman <johngro@google.com>
udioEffect.cpp
Effect.cpp
isualizer.cpp
|
4ff14bae91075eb274eb1c2975982358946e7e63 |
09-Feb-2012 |
John Grossman <johngro@google.com> |
Upintegrate Audio Flinger changes from ICS_AAH Bring in changes to audio flinger made to support timed audio tracks and HW master volume control. Change-Id: Ide52d48809bdbed13acf35fd59b24637e35064ae Signed-off-by: John Grossman <johngro@google.com>
udioTrack.cpp
AudioFlinger.cpp
AudioTrack.cpp
|
d9b9b8d09e7471b0ffa21cfa9f944ef4ad300a71 |
14-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Update comments"
|
99e53b86eebb605b70dd7591b89bf61a9414ed0e |
19-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Update comments We no longer put the filename at start of file. Change-Id: Ic435b159a23105681e3d4a6cb1ac097bc853302e
udioTrack.cpp
AudioTrack.cpp
oneGenerator.cpp
ediaplayer.cpp
|
ed15977476a3d53103866e6d527fa3fb65d4166c |
14-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead code AudioTrack::getLoop"
|
6dbc1359f778575d09d6da722b060a6d72c2e7c5 |
02-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
AudioRecord and AudioTrack client tid Inform AudioFlinger of the tid of the callback thread. Change-Id: I670df92dd06749b057238b48ed1094b13aab720b
udioRecord.cpp
udioTrack.cpp
AudioRecord.cpp
AudioTrack.cpp
|
9f1d4448050a4df7118c90c0c0d3e6f9c4b82f3b |
10-Feb-2012 |
James Dong <jdong@google.com> |
Merge "Move away from MediaDebug and use ADebug instead"
|
9d1f02d74fd395ec4de6861147da289423f0ab6f |
09-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Follow raw pointer and sp<> conventions Unconditional delete for raw pointers. Use "if (sp != 0)" not "if (sp.get() != 0)" or "if (sp != NULL)". Use "if (raw != NULL)" not "if (raw)". Change-Id: I531a8da7c37149261ed2f34b862ec4896a4b785b
AudioFlinger.cpp
etPlayer.cpp
oneGenerator.cpp
|
f1d5aa162c02a16b7195a43a9bcea4d592600ac4 |
07-Feb-2012 |
James Dong <jdong@google.com> |
Move away from MediaDebug and use ADebug instead Change-Id: I963a3b6f79a7292891973cbeeaf3378b38629f08
ediaProfiles.cpp
|
90bebef5669a9385c706b042d146a31dca2e5d9b |
28-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
No newline or space at end of ALOG format string Change-Id: I0bef580cbc818cb7c87aea23919d26f1446cec32
udioEffect.cpp
ediaProfiles.cpp
ediaScanner.cpp
ediaScannerClient.cpp
oneGenerator.cpp
|
38f5d71e72f3b76c5b519614d27f051d53cd2712 |
08-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dead code AudioTrack::getLoop Change-Id: I868329c52f31bc20125f068500d8f892b4ec9796
udioTrack.cpp
|
72ef00de10fa95bfcb948ed88ab9b7a177ed0b48 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_io_handle_t consistently instead of int Other: - add a comment to nextUniqueId - made ThreadBase::mId const, since it is only assigned in constructor. Change-Id: I4e8b7bec4e45badcde6274d574b8a9aabd046837
udioSystem.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
|
5e92a7861196ddae14638d4b7a63fc4892b7ef59 |
30-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Effect UUID inputs passed by pointer are const Change-Id: I1f5c338bcb7368e3dd8cd5f804b2e6d9fbe087f8
udioEffect.cpp
AudioFlinger.cpp
|
4f9b0c54011eb8fd2ccfb393c2dcd51cd07800e0 |
08-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead mutex in AudioTrack/AudioRecord thread"
|
f22147e5d2982e0c461f7ce8058c2d596d518bd4 |
08-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "AudioTrack declare more methods const"
|
a5224f319e2ba4b51ddb4287705ccf8d4b8ecc51 |
04-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack declare more methods const Change-Id: I4999e984460893961d0d8092cff17f3cf07d7214
udioTrack.cpp
|
f587ba5b991c7cd91e4df093d0d796bd419e5d67 |
27-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Declare more IAudioFlinger methods const This is just documentation, as C++ method const-ness doesn't mean anything for a binder API. Instead, here const means "no side effects". Change-Id: Iaa9cd2fe477db10ae9a40cac4f79f0faa9b4e5e6
udioEffect.cpp
AudioFlinger.cpp
|
787bae0578fbaab6219ebf23494866b224d01438 |
03-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use audio_in_acoustics_t consistently"
|
ff3c83e04ae459c4252b86dd4440b4e37ee92c16 |
03-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use ToneGenerator::tone_type consistently"
|
a0d68338a88c2ddb4502f95017b546d603ef1ec7 |
28-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use NULL not 0 for raw pointers Use if (p != NULL) instead of if (ptr) Change-Id: Iaec3413a59ccbf233c98fcd918cc7d70ac5da9fa
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
oneGenerator.cpp
|
62da7fbd60bee2dd57f503126266e9f04311d400 |
03-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Make AudioTrack control block volume field private"
|
457d4c01ec0e922771ef57158431f48e4d267905 |
02-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "More audio_stream_type_t"
|
0e265cf36d201a7ccc0238b5c60b50f43d1dc450 |
02-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dead mutex in AudioTrack/AudioRecord thread The client callback threads had mutexes called AudioTrackThread::mLock and ClientRecordThread::mLock. These mutexes were only used by start() and stop(), and were unused by the thread itself. But start() and stop() already have their own protection provided by AudioTrack::mLock and AudioRecord::mLock. So the thread mutexes can be removed. Change-Id: I098406d381645d77fba06a15511e179a327848ef
udioRecord.cpp
udioTrack.cpp
|
d459b485c61bd3e7fd81c5cd3af8ada27fc3e8d3 |
31-Jan-2012 |
Andreas Huber <andih@google.com> |
Slighly improve the API to discover if the OMX stack is running in the local process. Change-Id: Idd3c2f0d4a9542af01a3fdfd3b0bfab90e083505
OMX.cpp
|
211eeaf17e5565b68447d29799dbf158a33cf4cf |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
More audio_stream_type_t Change-Id: I1260259efe0aa3fc1ef13de69758aaa592e1f815
udioSystem.cpp
|
3d2f877c1cb4e4ae4ddde7f57f4353de9341f11b |
28-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use ToneGenerator::tone_type consistently Also remove defaults in startToneCommand(), they're not needed and the default for tone type was nonsense. Change-Id: I70fa8cee4f3dbb8c66ceb3719c8d3d2f447f05b9
oneGenerator.cpp
|
de9719b3ec71472e6bf75117152176af51d1a515 |
27-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_in_acoustics_t consistently Change-Id: I0a9dd668fb2e57b1c3ece3190588194974b99062
AudioFlinger.cpp
|
eba51fb3a361f67a6a64d5a16eba6084fe27d60e |
23-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_source_t consistently Was a mix of audio_source_t, uint8_t, and int. Related fixes: - fix comments in MediaRecorder.java - AudioPolicyService server side was not checking source parameter at all, so if the client wrapper was bypassed, invalid values could be passed into audio HAL - JNI android_media_AudioRecord_setup was checking source for positive values, but not negative values. This test is redundant, since already checked at Java and now checked by AudioPolicyService also, but might as well make it correct. Change-Id: Ie5e25d646dcd59a86d7985aa46cfcb4a1ba64a4a
udioRecord.cpp
udioSystem.cpp
AudioPolicyService.cpp
|
83d86538c4c479a9225c75ab27938e8f05abb9c8 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Make AudioTrack control block volume field private This is part of the process of abstracting the control block to make it easier to maintain. Change-Id: Idb8f461e68dab3bcf268159cc0781651c6fb7094
udioTrack.cpp
|
af0b82748ed900efab48068137114740cc84ee8f |
21-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix warning for redundant typedef"
|
58f30210ea540b6ce5aa6a46330cd3499483cb97 |
12-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_format_t consistently, continued Was int or uint32_t. When AudioFlinger::format can't determine the correct format, return INVALID rather than DEFAULT. Init mFormat to INVALID rather than DEFAULT in the constructor. Subclass constructors will set mFormat to the correct value. Change-Id: I9b62640aa107d24d2d27925f5563d0d7407d1b73
udioRecord.cpp
udioSystem.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
4a98a7c95f3c7d1e8c2913086ce35533a7d5cbf3 |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix typos in string constants"
|
d967f0a099db2b71597a3127134afd4a46287a4a |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove redundant get()"
|
05bfe50e13793404a78c20c850d467d17734d496 |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Move memcpy_to_i16_from_u8 to audio_utils"
|
7fc9a6fdf146ded90b51c52f4a05d797294dcb85 |
10-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Remove redundant get() get() is almost always unnecessary, except in a LOG. Also no need to check for != 0 before calling get(). Change-Id: Ib06e7a503f86cf102f09acc1ffb2ad085025516d
udioSystem.cpp
MediaDeathNotifier.cpp
ediametadataretriever.cpp
|
112ab3e11b9992814363e0f9c629ef7fba86950b |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix warning for redundant typedef frameworks/base/media/libmedia/autodetect.cpp:22: warning: 'typedef' was ignored in this declaration Change-Id: I8c7404b9f5aa515c0fe92a5a46f24248d6fe96bf
utodetect.cpp
|
ea3cc3bca949139e401b77f2ac0cce7ac6e76f8f |
20-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove dead setRingerMode(mode, mask)"
|
9096f3471434d7f0d2419ac0ee2a618045489718 |
19-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix typos in string constants These were copy/paste errors in code that was copied from AudioTrack. Change-Id: I64a04d6026667884ddb1fefba67a71d69c691d62
isualizer.cpp
|
27a0d83f53ddbfd6449ab0e3c786742a2cd135a9 |
19-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix incorrect includes of AudioTrack.h"
|
241fc78866b2aefd75cd1890df5a75b7008728e8 |
19-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Simplify range check for audio_mode_t (continued)"
|
a3f1fa308728976fc9ca1b4f37d26e633b32b9ac |
18-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix incorrect includes of AudioTrack.h Remove unnecessary includes of AudioTrack.h. Use forward declaration of class names in preference to #include when possible. Change-Id: I12982811fa75c2c7695d8bbfa595a7aaec047dc0
ediaplayer.cpp
|
347966c827883711d1ec631f204e4a6ab74e9d99 |
18-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify range check for audio_mode_t (continued) Missed one place in earlier CL of same name Change-Id: I0dd25364d0b8d5d731c02d352f139a0c8d4df1a8
udioSystem.cpp
|
0b07b8085d7b837b4dd5f09e0c8c39408f6bdbf7 |
18-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dead setRingerMode(mode, mask) Change-Id: Ia4cc8be8424a40b3dcb7ebd0264fdff4e5247f7f
udioSystem.cpp
AudioPolicyService.cpp
|
c813985abd8ba61e999b3505f6a332574f87a1be |
18-Jan-2012 |
Andreas Huber <andih@google.com> |
Temporarily restore AudioSystem/AudioTrack APIs with their former signatures until we get updated prebuilts from vendor. Change-Id: I8aae81d2513edca0ab268053a11c8c4206879e61
udioSystem.cpp
udioTrack.cpp
|
04eaf3e5f20d7faa956c0d672024ffb5117f4c26 |
18-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Track volume cleanup"
|
63ad6aacc6ce6b729bf25f41376cfea731a2c1eb |
18-Jan-2012 |
Eric Laurent <elaurent@google.com> |
Merge "audio framework: manage stream volume per device"
|
b1cf75c4935001f61057989ee3cf27bbf09ecd9c |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Track volume cleanup Always read and write track volumes atomically. In most places this was already being done, but there were a couple places where the left and right channels were read independently. Changed constant MAX_GAIN_INT to be a uint32_t instead of a float. It is always used as a uint32_t in comparisons and assignments. Use MAX_GAIN_INT in more places. Now that volume is always accessed atomically, removed the union and alias for uint16_t volume[2], and kept only volumeLR. Removed volatile as it's meaningless. In AudioFlinger, clamp the track volumes read from shared memory before applying master and stream volume. Change-Id: If65e2b27e5bc3db5bf75540479843041b58433f0
udioTrack.cpp
|
511754b5839fd9b09fc56b89ae007fbc39084a33 |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Move memcpy_to_i16_from_u8 to audio_utils This will make it easier for this kind of code to be optimized for each target architecture. Change-Id: I9efd27d6c0175b00b9a784353244805cec63c0b8
udioTrack.cpp
|
83844cc2f95dc279015b47fd1e18c7cb4eabe9a1 |
19-Nov-2011 |
Eric Laurent <elaurent@google.com> |
audio framework: manage stream volume per device Improve volume management by keeping track of volume for each type of device independently. Volume for each stream (MUSIC, RINGTONE, VOICE_CALL...) is now maintained per device. The main changes are: - AudioService now keeps tracks of stream volumes per device: volume indexes are kept in a HashMap < device , index>. active device is queried from policy manager when a volume change request is received initalization, mute and unmute happen on all device simultaneously - Settings: suffixes is added to volume keys to store each device volume independently. - AudioSystem/AudioPolicyService/AudioPolicyInterface: added a device argument to setStreamVolumeIndex() and getStreamVolumeIndex() to address each device independently. - AudioPolicyManagerBase: keep track of stream volumes for each device and apply volume according to current device selection. Change-Id: I61ef1c45caadca04d16363bca4140e0f81901b3f
udioSystem.cpp
AudioPolicyService.cpp
|
3f6448e020969be59ad4d8df99c5296f237ffbd9 |
16-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Move fixed_fft to system/media/audio_utils Change-Id: If8a03911434862a872539c313f54825ffb2cc672
ndroid.mk
isualizer.cpp
ixedfft.cpp
|
0696400a6bb9abbed62b3b9c6aa105495dc600a2 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use audio_mode_t consistently"
|
a9b21c5a7c24fe14d20372263c0bf5faf3d3e348 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Rename Visualizer::mLock This avoids confusion with parent class AudioEffect's mLock which is protected. Change-Id: I2ae0b0869fe3c606f682252973795b34477951d0
isualizer.cpp
|
613882293184e575a44bff681a3decaefe889e69 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use size_t for frame size"
|
0107954f72153db747a3727dc1157e9236dfed90 |
17-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use audio_stream_type_t consistently"
|
05632a5fa4b88ca474294887fc92a9fcdf0e2352 |
03-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
AudioTrack and AudioFlinger send level cleanup Add an API to control block for getting/setting send level. This allow us to make the mSendLevel field private. Document the lack of barriers. Use 0.0f to initialize floating-point values (for doc only). Change-Id: I59f83b00adeb89eeee227e7648625d9a835be7a4
udioTrack.cpp
|
b9980659501d0428d65d8292f3c32da69d37fbd2 |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use size_t for frame size except in the control block, where we don't have room. In AudioFlinger::ThreadBase::TrackBase::getBuffer, read the frame size from control block only once. Change-Id: Id6c4bccd4ed3e07d91df6bbea43bae45524f9f4e
udioRecord.cpp
udioTrack.cpp
|
fff6d715a8db0daf08a50634f242c40268de3d49 |
13-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_stream_type_t consistently At native level it was a mixture of audio_stream_type_t, int, uint32_t, and uint8_t. Java is still int. Also fixed a couple of hard-coded -1 instead of AUDIO_STREAM_DEFAULT, and in startToneCommand a hard-coded 0 instead of AUDIO_STREAM_VOICE_CALL. Change-Id: Ia33bfd70edca8c2daec9052984b369cd8eee2a83
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
MediaPlayer.cpp
oneGenerator.cpp
ediaplayer.cpp
|
4cc55d53d542c4f4ed645738cebb65b9e7eb6c44 |
12-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use audio_format_t consistently"
|
f78aee70d15daf4690de7e7b4983ee68b0d1381d |
04-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_mode_t consistently It was int or uint32_t. Also make getMode() const. Change-Id: Ibe45aadbf413b9158e4dd17f2b3bcc6355288d37
udioSystem.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
83bc7f3cf78b28a818417f40a4f0c00593993366 |
04-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
libmedia new can't fail on Android Change-Id: Ie79dd5abb8078b35474bf0f1b3a6ff994a3a3360
udioRecord.cpp
udioTrack.cpp
etPlayer.cpp
ediaScannerClient.cpp
oneGenerator.cpp
isualizer.cpp
|
3bba0e0a60b15895134bc2c731d21fd7ebd28784 |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix race in AudioSystem::getInputBufferSize"
|
544096247a907bc55688e5c03d5586ba5219d82a |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix bug in JetPlayer::loadFromFile"
|
e3a067f8bc98134941ee1a4da8c2a92a15aaa9cc |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Simplify range check for audio_mode_t"
|
0132e12ded92529b1520ad62f5134fa31361c90b |
11-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Declare IAudioTrack methods in binder opcode order"
|
f8c1a6f7ef515810356816b50bfe18af95f3ec32 |
10-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix race in AudioSystem::getInputBufferSize It was caching the recording parameters without a mutex. Change-Id: Ic4b9f621cbc080d224c2233cf3ca3454fc0f19bd
udioSystem.cpp
|
0049acfc8b1c33eb90afc925dacd08a487618e17 |
10-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Fix bug in JetPlayer::loadFromFile A long pathname would corrupt the heap due to incorrect use of strncpy. Also was using hard-coded constant 256 instead of PATH_MAX. Change-Id: Iba382bbb38624fbc41fec91449f9814f77d4ac0d
etPlayer.cpp
|
930f4caa1e311ef7ff538c421a324396157eb24f |
07-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Simplify range check for audio_mode_t AudioSystem::setMode previously allowed negative modes, but these were then rejected by AudioFlinger. Now negative modes (including AUDIO_MODE_INVALID and AUDIO_MODE_CURRENT) are explicitly disallowed. Change-Id: I0bac8fea737c8eb1f5b6afbb893e48739f88d745
udioSystem.cpp
|
5c7b3bcc88e2b472f1f7b416d89222714b96a567 |
09-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Clean up AudioTrack::mActive and stopped()"
|
29357bc2c0dd7c43ad3bd0c8e3efa4e6fd9bfd47 |
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
MediaDeathNotifier.cpp
etPlayer.cpp
ediaProfiles.cpp
ediaScannerClient.cpp
etadata.cpp
oneGenerator.cpp
isualizer.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
1099586bd48a8a90bb1cc4e7c279703bc7259214 |
03-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Declare IAudioTrack methods in binder opcode order This makes it easier to match up the declarations. Change-Id: I0996c20b2903b778b356dfe52b07b0ec634855dd
AudioTrack.cpp
|
5ff1dd576bb93c45b44088a51544a18fc43ebf58 |
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaDeathNotifier.cpp
OMX.cpp
ediaProfiles.cpp
ediaScanner.cpp
oneGenerator.cpp
ediametadataretriever.cpp
ediaplayer.cpp
|
e1c3962e268ffc12bfd1bd9ea84da1f135f36960 |
04-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Use audio_format_t consistently Was int, uint32_t, uint16_t, and uint8_t with 2-bit bitfield. Also replace 0 by AUDIO_FORMAT_DEFAULT and replace 1 by AUDIO_FORMAT_PCM_16_BIT. Change-Id: Ia8804f53f1725669e368857d5bb2044917e17975
udioTrack.cpp
MediaPlayerService.cpp
etPlayer.cpp
ediaplayer.cpp
|
9a2aaf927e56a4b4acab23ef16b3f133a9f48a63 |
03-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Clean up AudioTrack::mActive and stopped() mActive is protected by mLock; volatile is meaningless on SMP. Fixed a couple of places where mActive was accessed without a lock: - stopped() - processAudioBuffer() Added stopped_l() for cases where we already hold the lock. Made mActive a bool not int. Moved down a lock in setPosition that was being acquired too early. Change-Id: I73ff368e991c0db9f9472df0b3f96fd33fcc7311
udioTrack.cpp
|
a2a0a5d7d56baa831870f4bf2a0d942a477d92ef |
05-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use the standard CC_LIKELY and CC_UNLIKELY macros"
|
f6b1678f8f508b447155a81b44e214475ab634a8 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Use the standard CC_LIKELY and CC_UNLIKELY macros Several source files privately defined macros LIKELY and UNLIKELY in terms of __builtin_expect. But <cutils/compiler.h> already has CC_LIKELY and CC_UNLIKELY which are intended for this purpose. So rename the private uses to use the standard names. In addition, AudioFlinger was relying on the macro expanding to extra ( ). Change-Id: I2494e087a0c0cac0ac998335f5e9c8ad02955873
udioRecord.cpp
udioTrack.cpp
|
b8a805261bf0282e992d3608035e47d05a898710 |
20-Dec-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
udioSystem.cpp
ediaScanner.cpp
ediaplayer.cpp
|
42968939dfce0954d6540011199045ec4ed7de80 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix indentation and whitespace"
|
2eda60a8485cfe70a60e72156beffdc470ecb093 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Audio C++ comments"
|
c5ac4cb3a5124860ccfc7e4ff66251c55a5595ca |
12-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Fix indentation and whitespace Use git diff -w to verify. Change-Id: Ib65be0a1ecf65d6cad516110604e3855bf68a638
udioTrack.cpp
|
1d334101f1289cf4c8967af6e78ac22619175982 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove unnecessary this->"
|
b299dc4ded29a226daac07f195d1558e660d2f9f |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Remove redundant clear()"
|
362c4e697d8e9c034e964ac7b40227e054491547 |
14-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Audio C++ comments Change-Id: I84906ebb9dfcfa5b96b287d18364b407f02a30c1
udioTrack.cpp
|
91eb8bfbe253a6b6fe1aa23fb884a601c28991c4 |
13-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Remove redundant clear() Change-Id: Ie5e4e63cbc8fa85ef50451dddf8f149fa864b132
udioTrack.cpp
|
9054897ab9ffb307fadae81b774a1fc61cb542e7 |
13-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Remove unnecessary this-> Change-Id: I72038f5d4568f0633d3e4ab90f4b67e2dd22c332
udioTrack.cpp
|
f0c495012bad92230604a9a12a907812ec49ee8f |
30-Nov-2011 |
Glenn Kasten <gkasten@google.com> |
AudioTrack::setVolume check range Change-Id: Ie182bf0f741f1f49f68c02a1e7437a2a34d34fc5
udioTrack.cpp
|
c089d02cf2bddf1bba6eaa2b2fcce149dc44633e |
30-Nov-2011 |
Andreas Huber <andih@google.com> |
am 074133b2: am 351143fb: Merge "Updated (internal) API for IStreamSource to signal discontinuities" into ics-mr1 * commit '074133b260f8d12e484e93b9aa5a33a4983b7349': Updated (internal) API for IStreamSource to signal discontinuities
|
bfcc8d8ab7c56bc013bd221a29e1ecf3a6390813 |
29-Nov-2011 |
Andreas Huber <andih@google.com> |
Updated (internal) API for IStreamSource to signal discontinuities Change-Id: Idd4b9d8e7cec16b3e3c91c70e75144d42be30f96 related-to-bug: 5553055
StreamSource.cpp
|
6f5cc45c48c02173bfae8d54b54a92c9bae256a1 |
19-Nov-2011 |
Marco Nelissen <marcone@google.com> |
am d4b22ab4: status_t != bool * commit 'd4b22ab4889f9b1885bfc0dc45667c846a171a98': status_t != bool
|
91e2c7d2988c4947aca8a637f88a2179d905b970 |
18-Nov-2011 |
Marco Nelissen <marcone@google.com> |
status_t != bool b/5567433 Change-Id: I255ab8c3b0b5e0ea6a5cc7c05df757c667f3855e
ediaScannerClient.cpp
|
153cefdf4acab25355f590d7760ebf73ef6096a9 |
18-Nov-2011 |
Marco Nelissen <marcone@google.com> |
status_t != bool b/5567433 Change-Id: I255ab8c3b0b5e0ea6a5cc7c05df757c667f3855e
ediaScannerClient.cpp
|
528312c36a3ded860ead1a512df51663d03767ff |
17-Nov-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "JetPlayer uses C++ Thread not createThreadEtc"
|
a23856c0ad1f49a6ebcb71d3f63f329edc999a72 |
24-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
JetPlayer uses C++ Thread not createThreadEtc This permits leveraging future improvements to Thread. Change-Id: I60deed8565ed54f13d9f770c76504e411b154276
etPlayer.cpp
|
879135196fd1c97deefc538c888037c56c2879a7 |
23-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 4903178 Restore priority and cgroup on stop On AudioTrack and AudioRecord stop or failed start, restore the priority and cgroup of the caller to their previous values, rather than forcing to NORMAL. Dependent on new thread APIs. Also fixes bug where priority was set to AUDIO but cgroup not set. Change-Id: Ib83893918fb4fdf57c6b87884b51038997a631d8
udioRecord.cpp
udioTrack.cpp
|
5c052218128013d630b4d9a84393ebfbff11f3e8 |
15-Nov-2011 |
Hong Teng <hongteng@google.com> |
am 716747f7: am 481ffa50: Merge "Fix for issue 5309336 -add videoeditor maximum prefetch YUV frames in media_profiles.xml to limit the total memory usage." into ics-mr1 * commit '716747f7cb29b45e41c2870f12d39095f4ed80c8': Fix for issue 5309336 -add videoeditor maximum prefetch YUV frames in media_profiles.xml to limit the total memory usage.
|
3a9cefebd2c5d2157aefaed01c54f151dc64a5b3 |
10-Nov-2011 |
Hong Teng <hongteng@google.com> |
Fix for issue 5309336 -add videoeditor maximum prefetch YUV frames in media_profiles.xml to limit the total memory usage. Change-Id: I41ffbc192fcce4c7635e5b0a1f2835852e5ee509
ediaProfiles.cpp
|
471af5aaea2d2491a77dba379771f7c96b9ca3c3 |
08-Nov-2011 |
Andreas Huber <andih@google.com> |
resolved conflicts for merge of 26f70db9 to master Change-Id: Ib1536b1a4c9eeff80e0726b3e61cee12057cd120
|
3901e5d87573447db33fb9930871a1f5266a9b2c |
25-Oct-2011 |
Andreas Huber <andih@google.com> |
Remove surface legacy APIs and code. All surfaces are now supported through surface textures. Change-Id: I95dd823e7099c0c32a48a1121624149dcc29d9c6
MediaPlayer.cpp
ediaplayer.cpp
|
4b8bb4ee7d1d64dc1cd5478a3772f97e4a4a00d7 |
28-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
am fc9592f8: am 08479cee: Merge "Stagefright: ANW::connect in MediaPlayerService" into ics-mr0 * commit 'fc9592f8a5f2f75207e5e532655ac294eb2b334b': Stagefright: ANW::connect in MediaPlayerService
|
7dae00baa6e8957be15523c46bb948bd1dde64c3 |
27-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
Stagefright: ANW::connect in MediaPlayerService This change moves the ANativeWindow connect and disconnect logic from MediaPlayer to MediaPlayerService::Client. Bug: 5502654 Change-Id: Ifc43b98b01ad8f35d62d7ece43110724ec7fda3d
ediaplayer.cpp
|
3856b090cd04ba5dd4a59a12430ed724d5995909 |
20-Oct-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
udioEffect.cpp
udioParameter.cpp
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
Effect.cpp
EffectClient.cpp
MediaDeathNotifier.cpp
MediaMetadataRetriever.cpp
MediaRecorder.cpp
etPlayer.cpp
ediaProfiles.cpp
ediaScanner.cpp
oneGenerator.cpp
isualizer.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
b1d666f5cb555d135eb69e005e88a03330bbb54c |
20-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
Stagefright: idle OMX after ANW errors This change fixes an issue in Stagefright where the state of an OMXCodec object can get out of sync with the state of the OMX component. In particular, if one of the ANativeWindow functions failed and put the OMXCodec into the ERROR state, this would cause Stagefright to skip doing the Executing -> Idle transition. Without this transition the freeBuffersOnPort call would never be made, and the MediaBuffers would end up being leaked (which would also leak the Gralloc buffers they reference). Bug: 5333695 Change-Id: I85ea0cf92d18e7ef6d35c7d1e2a7b4e2c9745d34
OMX.cpp
|
669012d77b00a2aacb6fd12837f2870f9ec17865 |
20-Sep-2011 |
James Dong <jdong@google.com> |
Add QVGA resolution to CamcorderProfile Change-Id: Icebbafb68d8164370f98a2c36699845d10ef081b related-to-bug: 5145483
ediaProfiles.cpp
|
6de6b48237423a65ec041288c90e3f78fd3fce48 |
14-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Issue 5298399: Lost speech after a crash in gTalk."
|
cfe2ba6b01a258e39f9c215ffc7b750e0b68f708 |
14-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Issue 5298399: Lost speech after a crash in gTalk. Fixed problem in AudioTrack::restoreTrack_l() causing a permanent failure if the IAudioTrack interface to AudioFlinger could not be restored at the first attempt. Change-Id: I039d4fe2dca8d3baf71f1a6c51119f27a67b6611
udioTrack.cpp
|
fb6f03425a791dcc4188462c860becf6ca6be4ea |
08-Sep-2011 |
Guang Zhu <guangzhu@google.com> |
Make MediaScanner skip certain directories The list of directories to skip are configurable via setprop. The main motivation is that some test data folder takes long time to scan, and media scanner may compete for CPU time against perf tests therefore skewing the results. Bug: 5263115 Change-Id: I568213e2a4babf6033021c1d336ef0347c0e3315
ediaScanner.cpp
|
98afd841e8f0803a00d1970e4a28ea8999e9c498 |
09-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Merge "AudioTrack: extend callback thread sleep time"
|
2267ba18d0d2b2d4bd7f5411821ad89ac2659a88 |
07-Sep-2011 |
Eric Laurent <elaurent@google.com> |
AudioTrack: extend callback thread sleep time Do not force wake up the AudioTrack thread every 10ms if no timed events (loop, markers..) have to be processed. This will help reduce power consumption. Change-Id: Icb425b13800690008dd07c27ffac84739e3dbba3
udioTrack.cpp
|
8d65510a2e9ff7b64f2f35bfe3cd745a717c9533 |
07-Sep-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 5270905 fix MediaPlayer with IStreamSource Change-Id: Ia8a6381a6c88b4a0a1378aab03f5275f0fa1125a
MediaPlayer.cpp
|
a4f73a9e0e0863a567cc06defa0d9e0269388d4e |
06-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Issue 5247986: Battery drain due to audio wakelock"
|
408b8dc3c0a364c6f6b4991d15da9e6bcc2b8008 |
06-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Issue 5247986: Battery drain due to audio wakelock The problem occurs when activating or deactivating A2DP connection while SoudPool has a channel active. This can happen quite frequently now that the UI sound effects are enabled by default. If PCM data is remaining in the AudioTrack buffer when it is restroyed and re-created on the new AudioFlinger output thread, this data is flushed. As a consequence, no underrun or request for new data callback is sent to SoundPool and the sound channel remains active for ever as the end of the sample is never detected. Change-Id: I13e0c11e4ce3f83bff7f58d347ca814b6a86712b
udioTrack.cpp
|
0662067b06658a4a56a8416c676f6cce8ccddb53 |
06-Sep-2011 |
Dave Burke <daveburke@google.com> |
Handle setDataSource failures properly. #5261671 Change-Id: Iea0aa474d1939db23da9aabdfae2081e834f30d9
ediaplayer.cpp
|
71b63e3ef687c379368be6b02e70bd2feb0b6b8d |
02-Sep-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 5252593: any app can restart the runtime Replace null device address string by empty sting. Change-Id: I285c35f3345334e6d2190493b1a8a5aca1a361a4
udioSystem.cpp
|
d681bbb1767bed09415e050ba78975df214bcd68 |
30-Aug-2011 |
Dave Burke <daveburke@google.com> |
Require INTERNET permission for network-based content. Bug #1870981 Change-Id: Ia3ad166390c4d60cea19c3783895b078a2c4c15f
MediaPlayer.cpp
MediaPlayerService.cpp
ediaplayer.cpp
|
9f6530f53ae9eda43f4e7c1cb30d2379db00aa00 |
30-Aug-2011 |
Eric Laurent <elaurent@google.com> |
226483: A2DP connected, but music out to speaker When the A2DP headset is connected, there is a possible race condition when the audio tracks are moved from the mixer thread attached to the speaker output to the thread attached to A2DP output. As the request to clear the stream type to output mapping cache in the client process is asynchronous, it is possible that the flag indicating to the client audio track to re-create the IAudioTrack on the new thread is processed before the cache is invalidated. In this case, the track will be attached to the old thread and music will continue playing over the device speaker instead of being redirected to A2DP headset. Change-Id: Ib2ce1eb5320eaff83287b93779061bf4e7a330df
udioSystem.cpp
udioTrack.cpp
|
cd07594333cbe8b2c86c6609cce01a74d6cc33f8 |
26-Aug-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Bug 4364249 Play position is 0 after flushing AudioTrack AudioTrack::stop() is not synchronous, so a stop() followed by flush(), which is synchronous, will not always report a playhead position of 0 after being called. This CL adds a flag to mark a track as flushed, and report the correct playhead position in this state. Bug 5217011 has been created to address the real issue in the future, where flush could be made synchronous, to properly address bug 4364249. Change-Id: Icf989d41a6bcd5985bb87764c287f3edb7e26d12
udioTrack.cpp
|
8f74b712fbf5c24de8bc799b7129dc802747a6f4 |
13-Aug-2011 |
Rajneesh Chowdury <rajneeshc@google.com> |
Fix for 4142219 Don't hard code platform-specific limitations (Jni/ Java) Also fixes 5118207 add other video codec support for video editor export. Change-Id: If72427173bd8ff684af07ba00f4425c1deef29c6
ediaProfiles.cpp
|
db7c079f284f6e91266f6653ae0ec198b1c5006e |
10-Aug-2011 |
Eric Laurent <elaurent@google.com> |
Audio effects: track CPU and memory use separately Before this change, CPU and memory usage for an audio effect were registered and checked against the limit by audio policy manager upon effect instantiation. Even if an effect was not enabled it would prevent another effect to be created if the CPU load budget was exceeded, which was too restrictive. This change adds a method to register/unregister CPU load only when an effect is enabled or disabled. It also adds a mechanism to place all effects on the global output mix in suspend state (disabled) when an effect is enabled on a specific session. This will allow applications using session effects to have the priority over others using global effects. Also fixes some issues with suspend/restore mechanism: - avoid taking actions when an effect is disconnected and was not enabled. - do not remove a session from the suspended sessions list when corresponding effect chain is destroyed. Change-Id: I5225278aba1ae13d0d0997bfe26a0c9fb46b17d3
udioSystem.cpp
AudioPolicyService.cpp
|
3a34befc6fb04a4945a849e8bda8b84e4bf973fe |
02-Aug-2011 |
Marco Nelissen <marcone@google.com> |
Keep effects sessions active when the caller dies. Don't remove effects until the session they are in goes away or all AudioEffects have been explicitly released. This allows the control panel process to die without stopping the effects. Change-Id: I4496e5df080230ca1af149dec95c1309ab8ea888
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
ediaplayer.cpp
|
746d7c7f577b549b8a56862b73ae4f4f1247c593 |
02-Aug-2011 |
Gloria Wang <gwang@google.com> |
Merge "Fix ordering assumption of argument evaluation."
|
c3da3434cb57f47284ea06bb9065eaa2fe033efb |
30-Jul-2011 |
Mathias Agopian <mathias@google.com> |
connect/disconnect is now called from our EGL wrapper the original connect/disconnect hooks are deprecated and replace by api_connect/api_disconnect. the original hooks are no no-ops. api_connect/api_disconnect is now only called from the android framework. Bug: 5057915 Change-Id: I8ca64cd1acd6cabf915bf54689ec2e5f6dfa495a
ediaplayer.cpp
|
de162ff337723798381890151247b129c4fbe314 |
01-Aug-2011 |
Gloria Wang <gwang@google.com> |
Fix ordering assumption of argument evaluation. No specific order is specified in the C++ standard, but the order of the calls to Parcel read commands matters. Move any calls with multiple reads to local variables. Fix for bug 5104979. Change-Id: I709aa040e990d2659e7a3a089f7a42ae812de9ff
MediaPlayer.cpp
|
d1a243e41caffa8fd346907eed4625c9c47c1a86 |
27-Jul-2011 |
Eric Laurent <elaurent@google.com> |
AudioRecord: Fix getInput() AudioRecord::getInput() was issuing a query to get a new input stream from audio policy service instead of returning the cached input stream in AudioRecord. Change-Id: Ice324b7c60bc0898149023797bcb56a72091b9d3
udioRecord.cpp
|
6e6e8a6cc9ab99ab299929fa0246e6ced64f8ce3 |
25-Jul-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Added APIs for audio preprocessing"
|
57dae99c9fcd6becd2b5ed0c53f277ba4d7dbcfc |
24-Jul-2011 |
Eric Laurent <elaurent@google.com> |
Added APIs for audio preprocessing Added APIs to control pre processes applied on captured audio. Those APIs are still hidden until reviewed by API council. Three types of standard pre processes are supported: - Automatic Gain Control (AGC) by AutomaticGainControl class - Acoustic Echo Cancellation (AEC) by AcousticEchoCanceler class - Noise Suppression (NS) by NoiseSuppressor class A method is added to AudioEffect class to query audio pre processings applied by default by the platform on a given AudioRecord session ID. Change-Id: I0b9fceeb8c704dd06319c3b52b85c96fe871d51d
udioEffect.cpp
AudioPolicyService.cpp
|
3cecf640c4daf2df616b278bd9986018c8182908 |
30-Jun-2011 |
James Dong <jdong@google.com> |
Do not support still image capture mode for timelapse video recording related-to-bug: 4973779 Change-Id: Ica665217ab10247b2242acc4e93d4fe9f83e3f45
MediaRecorder.cpp
ediarecorder.cpp
|
b33f3407bab0970a7f9241680723a1140b177c50 |
02-Jul-2011 |
Pannag Sanketi <psanketi@google.com> |
Connect MediaRecorder Native to SurfaceMediaSource Making a connection from MediaRecorder Native layer to the SurfaceMediaSource for the purpose of encoding GL Frames. This will be called from the java side inside the Mobile Filter Framework. The mediarecorder native layer (client), when set the videosource to option VIDEO_SOURCE_FRAMES, asks the StageFrightRecorder on the mediaserver side to create a SurfaceMediaSource object and pass it back as a sp<ISurfaceTexture> object. Using that, the client side will dequeue and queue buffers. Connecting the GL Frames to the obtained sp<ISurfaceTexture> is not part of this CL. Related to bug id: 4529323 Change-Id: I651bec718dd5b935779e7d7a050b841c2d0b0fcd
MediaRecorder.cpp
ediarecorder.cpp
|
5bc965b1ff21c64e5f30130957bfe96300e15ed3 |
22-Jul-2011 |
James Dong <jdong@google.com> |
Merge "Log setVideoSurface() and setVideoSurfaceTexture() failures."
|
fada58a21be01913a8e3f25c898d26d2fc8ba630 |
22-Jul-2011 |
James Dong <jdong@google.com> |
Log setVideoSurface() and setVideoSurfaceTexture() failures. Change-Id: Iaea34e74a0cf569fc85b926949253dea6baa6142 related-to-bug: 5063370
ediaplayer.cpp
|
a1d92359056176b6f6646efc918e0587e3de2b6f |
21-Jul-2011 |
Hong Teng <hongteng@google.com> |
Merge "fix for issue 4142219 Don't hard code platform-specific limitations-jni/java part"
|
3a1f8a404b38aaa82d57c77cb83e48665e66e553 |
21-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Untangle MediaScanner error handling. Bug: 5056917"
|
0cd7889d37cc60300dceaa975dab041fd35e34fd |
21-Jul-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Audio framework: support for audio pre processing"
|
7188e55f54a43c55fd6b96454720c447f1dc454e |
21-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Untangle MediaScanner error handling. Bug: 5056917 Change-Id: I1a7a73579e3ba4e9709459329fc1901a28b0f4b1
ediaScanner.cpp
ediaScannerClient.cpp
|
cabd5f867ec69c0dfe8333cba46323cb58917402 |
07-Jul-2011 |
Hong Teng <hongteng@google.com> |
fix for issue 4142219 Don't hard code platform-specific limitations-jni/java part Change-Id: Icde261b1caf29a8cf552884c97f3c9d0b41741a3
ediaProfiles.cpp
|
bea47bc22b2939b324b47fd0d70e6c7e6fbc82d2 |
19-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
MediaPlayer: add a disconnect from ANativeWindow This change makes MediaPlayer::disconnect disconnect from the ANativeWindow once the player has been disconnected. Change-Id: I6744559030d1edc520cf77402d1f5ce841742340
ediaplayer.cpp
|
4a621e6d3438876eb1d9001719c688a2329ee675 |
19-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "MediaPlayer: add ANativeWindow (dis)connect calls"
|
7c7f10bd4fda9a084e5e7f0eb3a040dfcbf01745 |
18-Jun-2011 |
Eric Laurent <elaurent@google.com> |
Audio framework: support for audio pre processing Audio effect framework is extended to suport effects on output and input audio path. AudioFlinger: Support for audio effects and effect chains is moved from PlaybackThread class to ThreadBase class so that RecordThread can manage effects. Effects of type pre processing are allowed on record thread only. When a pre processing is enabled, the effect interface handle is passed down to the input stream so that the audio HAL can call the process function. The record thread loop calls the effect chain process function that will only manage the effect state and commands and skip the process function. AudioRecord: The audio session is allocated before calling getInput() into audio policy serice so that the session is known before the input theead is created and pre processings can be created on the correct session. AudioPolicyService: default pre processing for a given input source are loaded from audio_effects.conf file. When an input is created, corresponding effects are created and enabled. Change-Id: Id17119e0979b4dcf189b5c7957fec30dc3478790
udioEffect.cpp
udioRecord.cpp
udioSystem.cpp
AudioPolicyService.cpp
|
61c7ef5bde2c7ed94a078396aa65da67b47e5402 |
13-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
MediaPlayer: add ANativeWindow (dis)connect calls This change makes MediaPlayer connect to the ANativeWindow to which it is going to render video frames and disconnect when it is done. Change-Id: I88ab5c2fe62493aabdc84a283ff31634f795d415
ediaplayer.cpp
|
42e549e4ab54802d788c43e3a04a85b7a1a95e97 |
13-Jul-2011 |
Andreas Huber <andih@google.com> |
Enable signalling of a stream discontinuity involving a format-change through IStreamListener. Change-Id: Ic0409cdc4891ad26b61f2f98bdda3c7fb2e2de6a related-to-bug: 5022434
StreamSource.cpp
|
5e0067b486c3862316aa1f293cf9690c0cf54bda |
12-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Remove the simulator target from all makefiles. Bug: 5010576 Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
ndroid.mk
|
6d8b694d999e9be7d5dcc336535832a80fb6f61f |
24-Jun-2011 |
Eric Laurent <elaurent@google.com> |
Moved and renamed effect API header files Moved specific effect header files to system/media/audio_effects/include/audio_effects and renamed to lower case (effect_xxx.h). Change-Id: Icfc2264bfd013cab0395d7e310ada636b9fe3621
ndroid.mk
isualizer.cpp
|
4ca2c7c913f8bd4ada13aca56d36045d42d1e00f |
01-Jun-2011 |
Wu-cheng Li <wuchengli@google.com> |
Add framework support for camcorder zoom. The purpose of ICameraRecordingProxy and ICameraRecordingProxyListener is to allow applications using the camera during recording. Camera service allows only one client at a time. Since camcorder application needs to own the camera to do things like zoom, the media recorder cannot access the camera directly during recording. So ICameraRecordingProxy is a proxy of ICamera, which allows the media recorder to start/stop the recording and release recording frames. ICameraRecordingProxyListener is an interface that allows the recorder to receive video frames during recording. ICameraRecordingProxy startRecording() stopRecording() releaseRecordingFrame() ICameraRecordingProxyListener dataCallbackTimestamp() The camcorder app opens the camera and starts the preview. The app passes ICamera and ICameraRecordingProxy to the media recorder by MediaRecorder::setCamera(). The recorder uses ICamera to setup the camera in MediaRecorder::start(). After setup, the recorder disconnects from camera service. The recorder calls ICameraRecordingProxy::startRecording() and passes a ICameraRecordingProxyListener to the app. The app connects back to camera service and starts the recording. The app owns the camera and can do things like zoom. The media recorder receives the video frames from the listener and releases them by ICameraRecordingProxy::releaseRecordingFrame. The recorder calls ICameraRecordingProxy::stopRecording() to stop the recording. The call sequences are as follows: 1. The app: Camera.unlock(). 2. The app: MediaRecorder.setCamera(). 3. Start recording (1) The app: MediaRecorder.start(). (2) The recorder: ICamera.unlock() and ICamera.disconnect(). (3) The recorder: ICameraRecordingProxy.startRecording(). (4) The app: ICamera.reconnect(). (5) The app: ICamera.startRecording(). 4. During recording (1) The recorder: receive frames from ICameraRecordingProxyListener.dataCallbackTimestamp() (2) The recorder: release frames by ICameraRecordingProxy.releaseRecordingFrame(). 5. Stop recording (1) The app: MediaRecorder.stop() (2) The recorder: ICameraRecordingProxy.stopRecording(). (3) The app: ICamera.stopRecording(). bug:2644213 Change-Id: I15269397defc25cbbcae16abc071c8349c123122
MediaRecorder.cpp
ediarecorder.cpp
|
8e51d58fca9b7669f271378f9245e180f4360cbc |
23-Jun-2011 |
Gloria Wang <gwang@google.com> |
- Public part of the Metadata API. - Modify the media framework test for Metadata. Change-Id: Ib8fa4991f114e1bb88a17ca662844b9b8e1d0faf
etadata.cpp
|
68cbeba4e21aa53f52fb99b74dfa1910af31a3eb |
23-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Fix warnings for uninitialized local variables"
|
eddf9ef9235608e0231379a7bc614853bf5bcfa3 |
23-Jun-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Added audio_bytes_per_sample() helper function"
|
d0965dde97f2815ae0a15fe6b40946f8a741a81e |
23-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Fix warnings for uninitialized local variables Change-Id: Ic9b03b0fd215444e76c7b7bebb385f7831c557e0
udioRecord.cpp
udioTrack.cpp
|
671a636931295d9c33ffca74551a804479d01241 |
17-Jun-2011 |
Eric Laurent <elaurent@google.com> |
Added audio_bytes_per_sample() helper function Change-Id: Ibfcd75c4c241a53d5f052c25ada091904991048a
udioRecord.cpp
udioTrack.cpp
|
b8e9897b8ad5d722e424d7a7e256153307ecbd93 |
15-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Remove unneeded #include <sys/resource.h> Suggested in code review for previous change. Change-Id: Ic3225b240367dc6c9bf56fb4498fb8a0f9f806ec
oneGenerator.cpp
|
7394a4f358fa9908a9f0a7c954b65c399f4268e6 |
14-Jun-2011 |
Dima Zavin <dima@android.com> |
audio: update for audio/audio_policy header names/locations Change-Id: I36c49352eee57559403cd1597f56a8485a360289 Signed-off-by: Dima Zavin <dima@android.com>
udioTrack.cpp
|
62dfda30f41d33682ee96038c404ab59995684e0 |
10-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
am 15e9d474: am 88748e6d: am d86302df: Quiet the log. * commit '15e9d474d1033adbedc8632309df26c3d6dfaee3': Quiet the log.
|
767ad02b2ca9e6ad02b8cf56098cffad52970642 |
10-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Quiet the log. Change-Id: Ie814b579997bb555eae014c22da0f41f1a46940f
ediaScanner.cpp
|
0512ab559d4670c2204078470d7ef5d376811c57 |
05-May-2011 |
Glenn Kasten <gkasten@google.com> |
Remove dead code related to gettid The gettid system call is always available now. Change-Id: Ib78b41781eda182dc8605daf456bbea7ff7c2dc0
udioSystem.cpp
MediaMetadataRetriever.cpp
etPlayer.cpp
|
c6854100cea4fcd0f20cb2ac8235c02d1849b3a1 |
02-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Remove unnecessary level of priority indirection Change-Id: I942d43973c20a7ace8b0d3f78b4da97e45e996c6
udioRecord.cpp
udioTrack.cpp
|
d217a8c4632b3e3065f8c2a26b9ce4dc4c97171f |
02-Jun-2011 |
Glenn Kasten <gkasten@google.com> |
Revert "Use AudioTrack::event_type not int in callback" This reverts commit 2225e4b7049fa3fb9d39a068b8268b63c952d7c1
oneGenerator.cpp
|
013b5a67d6f8e12a1b06e74863daec1bee4d99c1 |
05-May-2011 |
Glenn Kasten <gkasten@google.com> |
Use AudioTrack::event_type not int in callback Change-Id: Ifefc708d46874e04fd0d01cb6e2d43b987ee796c
oneGenerator.cpp
|
0d255b2d9061ba31f13ada3fc0f7e51916407176 |
25-May-2011 |
Jean-Michel Trivi <jmtrivi@google.com> |
Use channel mask instead of channel count for track creation Record and playback objects (resp AudioRecord and AudioTrack) are created using a channel mask, but this information is lost in the mixer because only the channel count is known to AudioFlinger. A channel count can always be derived from a channel mask. The change consists in: - disambiguiting variable names for channel masks and counts - passing the mask information from the client to AudioFlinger and the mixer. - when using the DIRECT ouput, only verifying the format of the track is compatible with the output's for PCM. Change-Id: I50d87bfb7d7afcabdf5f12d4ab75ef3a54132c0e
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
|
65580f9adf6c4d98449ad0716488f9fe3869aa5a |
28-May-2011 |
Eric Laurent <elaurent@google.com> |
Removed interface to load audio effects libraries Removed unused functions allowing dynamic loading of audio effects libraries from effects factory API. Change-Id: I06cc5a51dc10aca87c7a8687bbb874babd711eca
udioEffect.cpp
AudioFlinger.cpp
|
9b1e4f1a18ac2489e24b4272a0a7ccfd0018efcc |
14-May-2011 |
James Dong <jdong@google.com> |
Merge "Add support for platform-specific recording start time offset"
|
64760240f931714858a59c1579f07264d7182ba2 |
11-May-2011 |
Dima Zavin <dima@android.com> |
update for new audio.h header location Change-Id: Ic4c62c4037800802427eb7d3c7f5eb8b25d18876 Signed-off-by: Dima Zavin <dima@android.com>
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioPolicyService.cpp
ediaplayer.cpp
|
0f056290cb16763453f18bbef80cde673041dbbc |
10-May-2011 |
James Dong <jdong@google.com> |
Add support for platform-specific recording start time offset o This start time offset is used in the media framework to eliminate the recording sound in the recorded file. Change-Id: I97926a74f0743b8a4f985d51334e8d1486a318ea related-to-bug: 4390777
ediaProfiles.cpp
|
1a65546a55d019335655464ad895361ba9f89252 |
02-May-2011 |
Mike Lockwood <lockwood@android.com> |
DO NOT MERGE MediaScanner: Fix bug in "no media" handling logic Don't let the "no media" status of one directory leak to the remaining files and directories in the same parent. Bug: 4364077 Change-Id: Ie756ccd06b1962b06143fc02a1a3927c3aba143a Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
462accab9dbcf8d1597de999328fa74337b3b88c |
24-Apr-2011 |
Mike Lockwood <lockwood@android.com> |
DO NOT MERGE MediaScanner: reimplement the ".nomedia" feature for hiding files from the media provider Previously we ignored any files and directories that had name started with '.' and ignored any directories that contained a ".nomedia" file. Now to support transferring any file via MTP, we now add these previously ignored files to the media database, but will not mark them as audio, video, image or playlist files. That way they will be included in the files table but will be hidden from the audio, video, images and playlist views that are used by apps like Music and Gallery. Bug: 3405327 Change-Id: Ibb37bb2856a0684ce9f685ed565ad35347622834 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
c777a8526a6517e5fbfa713651da280fd1bdd502 |
02-May-2011 |
Mike Lockwood <lockwood@android.com> |
MediaScanner: Fix bug in "no media" handling logic Don't let the "no media" status of one directory leak to the remaining files and directories in the same parent. Bug: 4364077 Change-Id: I30943222dc292818cff00ee8169be7a695eed174 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
4f9e47f2c03ce36261c4717cd7e131d7940bb068 |
26-Apr-2011 |
Gloria Wang <gwang@google.com> |
Add setParameter/getParameter to MediaPlayer API. for bug 1982947 Change-Id: If3f40e4f18cbba155af29944af38bdc627f8cd53
MediaPlayer.cpp
ediaplayer.cpp
|
fce7a473248381cc83a01855f92581077d3c9ee2 |
20-Apr-2011 |
Dima Zavin <dima@android.com> |
audio/media: convert to using the audio HAL and new audio defs Change-Id: Ibc637918637329e4f2b62f4ac7781102fbc269f5 Signed-off-by: Dima Zavin <dima@android.com>
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioPolicyService.cpp
etPlayer.cpp
oneGenerator.cpp
isualizer.cpp
ediaplayer.cpp
|
db5cb14318bb24cd6ea14ff7ceea0d5e1f83d903 |
20-Apr-2011 |
Dima Zavin <dima@android.com> |
libmedia: move AudioParameter out of AudioSystem Change-Id: I9eb7e002d141936258050d4fa4f0ccd8202bfc54 Signed-off-by: Dima Zavin <dima@android.com>
ndroid.mk
udioParameter.cpp
udioSystem.cpp
|
f87d18a374f0275b1adb89a495931390f7407fd2 |
25-Apr-2011 |
James Dong <jdong@google.com> |
Merge "Return status code from invoke()"
|
c5182e31b23dc381d21ef43b7f7d682ffc54bd79 |
24-Apr-2011 |
Mike Lockwood <lockwood@android.com> |
MediaScanner: reimplement the ".nomedia" feature for hiding files from the media provider Previously we ignored any files and directories that had name started with '.' and ignored any directories that contained a ".nomedia" file. Now to support transferring any file via MTP, we now add these previously ignored files to the media database, but will not mark them as audio, video, image or playlist files. That way they will be included in the files table but will be hidden from the audio, video, images and playlist views that are used by apps like Music and Gallery. Bug: 3405327 Change-Id: I2d7285bd32e06c1a5c4ef6a8a15f8f8b2c33b39b Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
b483c4724846c0b8d4e82afcbb7c17f671bae81c |
12-Apr-2011 |
Gloria Wang <gwang@google.com> |
- Add another parameter in notify() to be able to send timed text sample through listener during video playback. - Add OnTimedTextListener in the MediaPlayer For feature request 800939. Change-Id: I65072c27acb4c0037109a72be38c73e9f667420f
MediaPlayerClient.cpp
ediaplayer.cpp
|
cc8ace7989f663fe6c6c1ed0febca0d9d1f19c7a |
07-Apr-2011 |
Eric Laurent <elaurent@google.com> |
Do not disable effect in AudioEffect destructor. Current implementation of AudioEffect class destructor disables the effect before disconnecting from IAudioEffect interface. This is problematic when more than one client has a handle on the same effect engine as destroying one handle will disable the effect which is not the intended behavior. Change-Id: I10eacf981506469a7ef4eb9a1650813f0848de5d
udioEffect.cpp
|
040e4a14ef9cafd5d08d9a180e6237fb79687995 |
07-Apr-2011 |
James Dong <jdong@google.com> |
Return status code from invoke() Change-Id: Ie64b418d2a1f44e07942399c285b460c68f8e14f related-to-bug: 4199781
MediaPlayer.cpp
|
38ccae2c0324daa305f3fe77d25fdf5edec0b0e1 |
29-Mar-2011 |
Eric Laurent <elaurent@google.com> |
New fix for issue 4111672: control block flags The first fix (commit 913af0b4) is problematic because it makes threads in mediaserver process block on the cblk mutex. This is not permitted as it can cause audio to skip or worse have a malicious application prevent all audio playback by keeping the mutex locked. The fix consists in using atomic operations when modifying the control block flags. Also fixed audio_track_cblk_t::framesReady() so that it doesn't block when called from AudioFlinger (only applies when a loop is active). Change-Id: Ibf0abb562ced3e9f64118afdd5036854bb959428
udioRecord.cpp
udioTrack.cpp
|
5f7fcf29a7475a20cf38bf72da67746135d504c3 |
26-Mar-2011 |
Mathias Agopian <mathias@google.com> |
merge libsurfaceflinger_client into libgui this is the first step in unifying surfacetexture and surface. for this reason the header files were not moved, as most of them will eventually go away. NOTE: currently we keep libsurfaceflinger_client.so as an empty library to workaround prebuilt binaries wrongly linking against it. Change-Id: I130f0de2428e8579033dc41394d093f4e1431a00
ndroid.mk
|
0511969950188634f4212fcf63680c43207baedd |
21-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Fix issue 3483718: audio streaming and A2DP."
|
9b7d950f1f3b0c526712b713dbceb0e22762c015 |
21-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 3483718: audio streaming and A2DP. The problem is that when switching from A2DP to device speakers or headset, The AudioTrack binder interface to AudioFlinger must be destroyed and restored to accomodate new buffer size requirements. Current AudioTrack implementation did not restore properly the PCM buffer write index which caused a mismatch between the written frame count in the mediaplayer renderer and the AudioTrack. The renderer could then believe the AudioTrack buffer was full and stop writing data preventing the AudioTrack to reach a bufffer full condition and resume playback. The rendered was also modified to refresh the AudioTrack frame count (buffer size) inside the write loop in NuPlayer::Renderer::onDrainAudioQueue() as this count can change from one write to the next. Also modified AudioTrack::obtainBuffer() to check for track invalidated status before querying for available space in the buffer. This avoids writing to the old track's buffer until full before detecting the invalidated condition and create a new track. Change-Id: I16a857e464e466880847f52f640820aa271539ad
udioTrack.cpp
|
af8791e112c8072452bd14ef3c43a47511d19542 |
21-Mar-2011 |
Andreas Huber <andih@google.com> |
Support passing headers to MediaMetadataRetriever's setDataSource API Change-Id: Ib1a5c08fc5034cac05034db27007a35c9b660b26 related-to-bug: 3506316
MediaMetadataRetriever.cpp
ediametadataretriever.cpp
|
1caf58cd652edab4e05bfef8ccaa1497c450f5e9 |
18-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Merge "Fix issue 4111672: AudioTrack control block flags"
|
33797ea64d067dfeaacbfd7ebe7f3383b73961b5 |
17-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 4111672: AudioTrack control block flags Make sure that all read/modify/write operations on the AudioTrack and AudioRecord control block flags field are protected by the control block's mutex. Also fix potential infinite loop in AudioTrack::write() if the written size is not a multiple of frame size. Change-Id: Ib3d557eb45dcc3abeb32c9aa56058e2873afee27
udioRecord.cpp
udioTrack.cpp
|
c901f74404435cc1cf2717016e2b0092b6dcea24 |
17-Mar-2011 |
James Dong <jdong@google.com> |
am 782ffe91: am 9c0c5b56: am 2f1f2248: Fix missing AOSP copyright headers for a bunch of media framework files * commit '782ffe91da665c6b1fb9e297faa6e0dc6035f40c': Fix missing AOSP copyright headers for a bunch of media framework files
|
27c174483a8ae9688d5d4897c19074f62c7f1701 |
17-Mar-2011 |
James Dong <jdong@google.com> |
Fix missing AOSP copyright headers for a bunch of media framework files bug - 4119349 Change-Id: If5924e16a5f596d5d73d9beb66eaf5ac9a6f0e50
OMX.cpp
|
c21359d332ea2ac5258f86e1cf46db9e0faf3e4b |
16-Mar-2011 |
James Dong <jdong@google.com> |
resolved conflicts for merge of 1cbf8493 to master Change-Id: Ifea2ba8b02ecf291fbd1612973647a95a70511c4
|
8031ec79eb657a0ae84325410578ea87f50eeb54 |
16-Mar-2011 |
James Dong <jdong@google.com> |
Add the default camera id to mCameraIds for emulator and those devices without media_profiles.xml configuration file. bug - 4109530 Change-Id: Ib83be7a7f767a4b20ac338734ada1581e7a4c5bf
ediaProfiles.cpp
|
8635b7b095fbf7ffc63d3ce791891a9116ace1f6 |
15-Mar-2011 |
James Dong <jdong@google.com> |
Add memory leak tracking/debugging code to drm server bug - 4099038 Change-Id: I6c048eaf3d7f34bc144b8daaa5fdef1ed474af66
ndroid.mk
emoryLeakTrackUtil.cpp
|
2aac40fe9d42a15dab0af6a0efea7a2468cd9e4f |
09-Mar-2011 |
Eric Laurent <elaurent@google.com> |
am 2dc78477: am cc34967f: Merge "Fix issue 3439872: video chat and bluetooth SCO" into honeycomb-mr1 * commit '2dc78477364bd4accb9a603baaafca9a5523dcec': Fix issue 3439872: video chat and bluetooth SCO
|
1703cdfee717b1b312bf8979816a9e2f16a82e5d |
07-Mar-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 3439872: video chat and bluetooth SCO This change fixes the stability problems experienced when using a bluetooth headset supporting both A2DP and SCO. Problems occur when starting the video chat at which time the A2DP output is being stopped to start SCO. At that time, active AudioTracks are invalidated by AudioFlinger so that a new AudioTrack binder interface can be recreated by the client process on the new mixer thread with correct parameters. The problem was that the process to restore the binder interface was not protected against concurrent requests which caused 2 binder interfaces to be created sometimes. This could lead to permanent client deadlock if one of the client threads was waiting for a condition of the first created binder interface while the second one was created (as the AudioFlinger would only signal conditions on the last one created). This concurrent request situation is more likely to happen when a client uses the JAVA AudioTrack as the JNI implementation uses simultaneously the native AudioTrack callback and write push mechanisms. By doing so, the code that checks if the binder interface should be restored (in obtainBuffer()) is much more likely to be called concurrently from two different threads. The fix consists in protecting the critical binder interface restore phase with a flag in the AudioTrack control block. The first thread acting upon the binder interface restore request will raise the flag and the second thread will just wait for a condition to be signaled when the restore process is complete. Also protected all accesses to the AudioTrack control block by a mutex to prevent access while the track is being destroyed and restored. If a mutex cannot be held (e.g because we call a callback function), acquire a strong reference on the IAudioTrack to prevent its destruction while the cblk is being accessed. Modified AudioTrack JNI to use GetByteArrayElements() instead of GetPrimitiveArrayCritical() when writing audio buffers. Entering a critical section would cause the JNI to abort if a mediaserver crash occurs during a write due to the AudioSystem callback being called during the critical section when media server process restarts. Anyway with current JNI implementation, either versions do not copy data most of the times and the criticial version does not guaranty no data copy. The same modifications have been made to AudioRecord. Change-Id: Idc5aa711a04c3eee180cdd03f44fe17f3c4dcb52
udioRecord.cpp
udioTrack.cpp
|
d3ee677783864d933cd8bc82c14666bd135d43bd |
08-Mar-2011 |
James Dong <jdong@google.com> |
Add the default back-facing camera to the MediaProfile camera vector As a result, missing media_profiles.xml will be still allowed. Change-Id: Ie6c1bbfdfd4e971f1d5d0e031a913e757f3863a7
ediaProfiles.cpp
|
32f3cefa373cd55e63deda36ca9d07c7fe22eaaf |
03-Mar-2011 |
Andreas Huber <andih@google.com> |
Allow optional specification of a PTS timestamp when signalling a discontinuity. If present, rendering will be suppressed until reaching the timestamp. Change-Id: Ic64bdf4225063c5a4d042ea9809960b843a46d19 related-to-bug: 3489454
StreamSource.cpp
|
2a7e0a1eb29306982fd77bdc64d324464a48a2b9 |
01-Mar-2011 |
James Dong <jdong@google.com> |
Get rid of redundant media profiles bug - 3330679 Change-Id: Idc55aea32746c0c57552c5e15a289681421aa859
ediaProfiles.cpp
|
e2ce6458659c6e1bad420357b61dc10cd8bbe2ab |
24-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
Add an OMX IL API for querying buffer usage flags. This change defines an OpenMAX IL API for querying from the IL component the gralloc buffer usage flags that should be used to allocate the buffers. It also adds the Stagefright plumbing for using the new OMX IL API. Change-Id: I046b5e7be70ce61e2a921dcdc6e3aa9324d19ea6 Related-Bug: 3479027
OMX.cpp
|
1173118eace0e9e347cb007f0da817cee87579ed |
09-Feb-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 3438258 Add SurfaceTexture as MediaPlayer sink This change enables the use of a SurfaceTexture in place of a Surface as the video sink for an android.media.MediaPlayer. The new API MediaPlayer.setTexture is currently hidden. This includes: - New Java and C++ interfaces - C++ plumbing and implementation (JNI, Binder) - Stagefright AwesomePlayer and NuPlayer use ANativeWindow (either Surface or SurfaceTextureClient) Change-Id: I2b568bee143d9eaf3dfc6cc4533c1bebbd5afc51
ndroid.mk
MediaPlayer.cpp
ediaplayer.cpp
|
51b9a8b53eaa1a0188be95d4d6a749424787e0d6 |
23-Feb-2011 |
Gloria Wang <gwang@google.com> |
Merge "- Add method in MediaPlayerService to collect and pull codec usage (duration) for the battery app - Collect MediaPlayer decoding usage data"
|
7cf180c9bff69e5cc4a2f4e53b432db45ebbebab |
20-Feb-2011 |
Gloria Wang <gwang@google.com> |
- Add method in MediaPlayerService to collect and pull codec usage (duration) for the battery app - Collect MediaPlayer decoding usage data Change-Id: I0ef4e32b6a041ba1fe73c19f9c67185c61d03965
MediaPlayerService.cpp
|
f1d985081cff2a6aa2397c5341da8432db753211 |
22-Feb-2011 |
James Dong <jdong@google.com> |
Check file descriptor before passing it through binder calls bug - 3476613 Change-Id: I858933fd2fe4c095c0bd58bf50344c47fc104be9
ediarecorder.cpp
|
6b2718c67aa7b1a8e3b0f25a73a0d5f72c59ffc3 |
04-Feb-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 3352047 Wrong message when adjusting volume Add hidden AudioManager.getDevicesForStream and output device codes. Change-Id: I4d1c1d3b6a077cd117720817d1f733dda557b947
udioSystem.cpp
AudioPolicyService.cpp
|
eda6c364c253ba97ee45a3adeb8c2b45db1f81db |
02-Feb-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 3371080 Modified default volume control logic in AudioService: 1 IN_CALL volume if in video/audio chat 2 NOTIFICATION if notification is playing or was playing less than 5s ago. 3 MUSIC Modified silent mode: - now also affect MUSIC stream type - entering silent mode when VOL- hard key is pressed once while selected stream volume is already at 0 (except for VOICE_CALL stream). - exiting silent mode when pressing VOL+ hard key while in silent mode Play sound FX (audible selections, keyboard clicks) at a fixed volume. Modified audio framework: - isStreamActive() method now implemented in AudioPolicyManagerBase (previously AudioFlinger) - iStreamActive() now specifies a time window during which the stream is considered active after it actually stopped. Change-Id: I7e5a0724099450b9fc90825224180ac97322785f
udioSystem.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
cce3a1107ef5bf9c8c8dbbaf922a2b33f24abfe6 |
29-Jan-2011 |
Marco Nelissen <marcone@google.com> |
am c929677e: Merge "Increase the number of useful bits in the spectrum." into gingerbread * commit 'c929677e017759047d94599faa1b80ebe278fefb': Increase the number of useful bits in the spectrum.
|
209821c7b7ead3ac58743d0a6d21dd05a2e77708 |
19-Jan-2011 |
Marco Nelissen <marcone@google.com> |
Increase the number of useful bits in the spectrum. Change-Id: I3efc2ac8db689285566df35cb6f594aab41141db
isualizer.cpp
|
b391290130f263441334ee4525a5832f0bea2ef0 |
19-Jan-2011 |
Andreas Huber <andih@google.com> |
Make parameter blocks read/writable even for SET_PARAMETER/SET_CONFIG requests. Refactor the logic a little. Change-Id: Idd7a26678d846c96b0b11f096305e7467381bda3
OMX.cpp
|
95304d5488ba465f19cc788f1c7394218c2ea2d1 |
03-Dec-2010 |
James Dong <jdong@google.com> |
Squash commits of the following patches, cherry-picked from other branch - do not merge. o Prepare for publishing MediaMetadataRetriever as public API step one: o replaced captureFrame with getFrameAtTime o removed getMode o Replace MediaMetadataRetriever.captureFrame() with MediaMetadataRetriever.getFrameAtTime() as part of the preparation for publishing MediaMetadataRetriever as public Java API o Remove captureFrame from MediaMetadataRetriever.java class It has been replaced by getFrameAtTime() method o Replace extractAlbumArt() with getEmbeddedPicture() in MediaMetadataRetriever.java o Publish MediaMetadataRetriever.java as public API o Removed setMode() methods and related mode constants o Removed some of the unused the metadata keys o Updated the javadoc o part of a multi-project change. bug - 3309041 Change-Id: I2efb6e8b8d52897186b016cb4efda6862f5584c4
MediaMetadataRetriever.cpp
ediametadataretriever.cpp
|
7f7d52ac18dfc3c6d8f6267dad29306613e9bd0e |
06-Jan-2011 |
James Dong <jdong@google.com> |
Publish MediaMetadataRetriever.java as public API o Removed setMode() methods and related mode constants o Removed some of the unused the metadata keys o Updated the javadoc o part of a multi-project change. bug - 2433195 Change-Id: I5ed167f1fd6a53cb143b7dc385b149431d434438
MediaMetadataRetriever.cpp
ediametadataretriever.cpp
|
145e68fc778275963189b02a1adcbe27cce4d769 |
12-Jan-2011 |
Andreas Huber <andih@google.com> |
Increase cache size and low-watermark threshold, also MediaPlayer now sends out MEDIA_INFO,MEDIA_INFO_VIDEO_TRACK_LAGGING messages to the JAVA client informing it how much (if at all) the video lags behind audio (arg2 is the media delay in ms). Change-Id: I6933f573d8597a35112e4b5ee0fcb826a7f6ddd1 related-to-bug: 3335220
ediaplayer.cpp
|
3e9f9f1596d4225ddd9288b4f7b24a15221374dc |
16-Dec-2010 |
Mike Lockwood <lockwood@android.com> |
MediaScanner: Add support for scanning empty directories Currently the media scanner does not create database entries for directories unless they contain a file that is scanned. Fixing this so we provide a consistent view of the world to MTP. Change-Id: Ia776acfeae23192183e7192d63cdc34d830ea889 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
0f01764099d7a65b8921725df3340140f9fc4cd5 |
16-Dec-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO. The problem is that when an input stream is opened for record over bluetooth SCO, the kernel mono audio device should be opened in RW mode to allow further use of this same device by an output stream also routed to bluetooth SCO. This does not happen because of a bug in AudioSystem::isBluetoothScoDevice() that does not return true when the device is DEVICE_IN_BLUETOOTH_SCO_HEADSET (input device for blurtooth SCO). Change-Id: Ic78bf324b4a68e65721d763dc7682ce7a8f14f75
udioSystem.cpp
|
14acc736e336cbd6026df781d4f411e908831815 |
06-Dec-2010 |
Andreas Huber <andih@google.com> |
API Support for both synchronous and queued commands, optionally associated metadata. Change-Id: Idb90d64cb638942210c5822b3cba2f05b087d601
ndroid.mk
StreamSource.cpp
|
16afe2fb439cab6125bb46a07a8078d4ce1c1ea5 |
03-Dec-2010 |
James Dong <jdong@google.com> |
Prepare for publishing MediaMetadataRetriever as public API step one: o replaced captureFrame with getFrameAtTime o removed getMode bug - 2433195 Change-Id: I38a8cecef29014692f0b08b8818326e3ebb40a12
MediaMetadataRetriever.cpp
ediametadataretriever.cpp
|
c75872920cd2de02d04bdc132ad5cf6d78c0578f |
01-Dec-2010 |
Chia-chi Yeh <chiachi@android.com> |
am 4f93f08d: am 683a7ff9: Merge "Visualizer: Fix the conversion from 8-bit sample to 16-bit sample." into gingerbread * commit '4f93f08d8c8b8067ff2176d9ec15c76c0e4cc0c2': Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.
|
ecd0a4f0b5bdd51bc35097b402202d6349f016ba |
30-Nov-2010 |
Chia-chi Yeh <chiachi@android.com> |
am 683a7ff9: Merge "Visualizer: Fix the conversion from 8-bit sample to 16-bit sample." into gingerbread * commit '683a7ff922409d2aa6c944bc4e08de32029e80e5': Visualizer: Fix the conversion from 8-bit sample to 16-bit sample.
|
879e9cb6b4e8b09a5c7d4942ce36125193deadde |
30-Nov-2010 |
Chia-chi Yeh <chiachi@android.com> |
Merge "Visualizer: Fix the conversion from 8-bit sample to 16-bit sample." into gingerbread
|
e2b1028852120bcfded33b8f06f66b780437fe92 |
23-Nov-2010 |
Andreas Huber <andih@google.com> |
Support streaming data across binder boundaries. Change-Id: Ifbac61406dcb81343765f99ccba08bd90f9274cc
ndroid.mk
MediaPlayerService.cpp
StreamSource.cpp
|
f5aafb209d01ba2ab6cb55d1a12cfc653e2b4be0 |
18-Nov-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 3157123. Use a Mutex wherever atomic operations were used in AudioTrack, AudioRecord, AudioFlinger and AudioEffect classes. Change-Id: I6f55b2cabdcd93d64ef19446735b8f33720f8dbc
udioEffect.cpp
udioRecord.cpp
udioTrack.cpp
|
a1680bce73ea1b051cc92e0df651a53944b104ee |
18-Nov-2010 |
James Dong <jdong@google.com> |
Fix an issue wherre error notification will not be sent after mediaplayer reset bug - 3198642 Change-Id: Ieab13e12af9fdd0ad0873c522885e1350e7cd24c
ediaplayer.cpp
|
0a5ca668c6f7d45706e9aec4a1dfec0aacc6d233 |
16-Nov-2010 |
Andreas Huber <andih@google.com> |
Remove all traces of legacy renderer support in stagefright. Change-Id: I17b8e0dbf53fca37c96830c41131b4bc0c24ca6d
MediaPlayer.cpp
OMX.cpp
ediaplayer.cpp
|
56ecd20263d7f63476f756fc5d8b043b325c7bfb |
09-Nov-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Add support for audio recording source in generic audio policy mgr. Update the platform-independent audio policy manager to pass the nature of the audio recording source to the audio policy client interface through the AudioPolicyClientInterface::setParameters() method. Change-Id: I6b4fd0f8a3acea0d7d30bbad98edd1977dc012bf
udioSystem.cpp
|
3baff73198ce852fa60080bd32703028298b4d65 |
08-Nov-2010 |
Andreas Huber <andih@google.com> |
resolved conflicts for merge of 31dc911a to gingerbread-plus-aosp Change-Id: I2f51b2120b3c552566d91a7dc498a5e8b130205f
|
85d9b4225d024bb0d602b48bd6d5219cbebd7b8e |
04-Nov-2010 |
Andreas Huber <andih@google.com> |
Support post-decode video rotation. Change-Id: Ia371316e73a57e44610de86adce3eaa560afbf84
OMX.cpp
|
6b6a736ec71c692c165952fe653a7766075e94bb |
01-Nov-2010 |
Chia-chi Yeh <chiachi@android.com> |
Visualizer: Fix the conversion from 8-bit sample to 16-bit sample. Change-Id: Ie6d77b0f61a37333e05cdcdb6ef29d6f6c345a9d
isualizer.cpp
|
05ea6434ed399395e2dbe9f68abb44f04b274cb0 |
29-Oct-2010 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 0d5694ba2d399dd0869532a4d6256448185a1be0 Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:59:23 2010 -0700 suspend() and resume() methods on VideoView are back but don't do anything. They need to be back because they were public before. Change-Id: Iddfd1021ffcf341f26e8d55ba761fd33701e2425 commit 16192891ed7d349ee97e47d1729d20a2d0d247b8 Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:47:05 2010 -0700 Revert "New API on VideoView widget to suspend/resume a session. Do not release the MediaPlayer client for video suspending/resuming." This reverts commit 2e1818a4d16c3309660f27286c77d8d1eee95a25. Conflicts: api/current.xml Change-Id: I68dd1d05871044faf3f832d0838aa40bc7f890e5 commit 8f934dc1a3ae4e60f0790fcf97671e063fa20fad Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:44:16 2010 -0700 Revert "Release mediaplayer if the current state is not suspending. Fix for bug 2480093." This reverts commit efb882cf75eef39ecaf9f8920ed302a019fa629f. commit f2ed03550887986f39d36b5dabcd9e919949c7cf Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:44:08 2010 -0700 Revert "Release MediaPlayer if suspend() returns false." This reverts commit 047212fd4ea360675e94d3ce83c7f5544f65b268. commit 441ecce678bd24e9660a72c8627b5bd94433ff8b Author: Andreas Huber <andih@google.com> Date: Fri Oct 29 11:40:46 2010 -0700 manually. Change-Id: I4fdd43c9f7c8b3eedddb31a196da4984e1c58e87 Change-Id: I60d4b10e7a9e4ed8d9a796f1711618f557eb6e89
MediaPlayer.cpp
ediaplayer.cpp
|
e870772a78ffe08b1c14a791e368f1499f1be0f3 |
21-Oct-2010 |
James Dong <jdong@google.com> |
OMX extension to support storing meta data in video input buffers during recording bug - 3042125 Change-Id: I7543809fa4ff61d48da35eec6c2bd5eaa7e8cead
OMX.cpp
|
8ac0cb9dc8a46f9b2badabc91cb5f7871e2215a9 |
18-Oct-2010 |
Jean-Baptiste Queru <jbq@google.com> |
Merge fb474872 from gingerbread-plus-aosp Change-Id: I1bbb845a86a7b7df44ea175df3af22e5f47c44e3
|
06fa2bcce5dd80b406a23f980d8c9fac1524ebfd |
16-Oct-2010 |
Andreas Huber <andih@google.com> |
am b04f356d: Merge "Include the framework copy of the OpenMAX headers instead of referencing external/opencore." into gingerbread Merge commit 'b04f356d86eec74217fca8e3b85d801c4fcaa678' into gingerbread-plus-aosp * commit 'b04f356d86eec74217fca8e3b85d801c4fcaa678': Include the framework copy of the OpenMAX headers instead of referencing external/opencore.
|
56cfa2376ae87cba730ea7ce4a9e0ca4f0d07627 |
15-Oct-2010 |
Andreas Huber <andih@google.com> |
Include the framework copy of the OpenMAX headers instead of referencing external/opencore. Change-Id: I762f59acf5e1f770e4d7c2d89af362bfffebefa6 related-to-bug: 3101573
ndroid.mk
|
3e8742fa4a5f0f8b185274763f6ec4e6c3a89344 |
15-Oct-2010 |
Andreas Huber <andih@google.com> |
am 27c7fb1a: am 90d59d18: Merge "Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that." into gingerbread Merge commit '27c7fb1a861776b4fdc2632697e4e25eee83617f' * commit '27c7fb1a861776b4fdc2632697e4e25eee83617f': Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that.
|
f9f083e2853740c97588f4db82c24645ae5880e4 |
15-Oct-2010 |
Kenny Root <kroot@google.com> |
resolved conflicts for merge of a127c07c to master Change-Id: Ifdfc6681cba00f36456eaf7a97f34a75b9d0c086
|
8cde59da2dd8540466aff5e94e9a6e5f74df1f10 |
14-Oct-2010 |
Andreas Huber <andih@google.com> |
am 90d59d18: Merge "Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that." into gingerbread Merge commit '90d59d180bd963f00161e6bfaabfda432960cab6' into gingerbread-plus-aosp * commit '90d59d180bd963f00161e6bfaabfda432960cab6': Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that.
|
2959a5a5b4d151e14da3abe0289c15693409eb84 |
14-Oct-2010 |
Andreas Huber <andih@google.com> |
Metadata.cpp and Metadata.java had drifted out of sync. This change remedies that. Change-Id: I48175666857ab0fb1519777bdb6f7f0b6b5cc599 related-to-bug: 3073955
etadata.cpp
|
e4edd632d48720b44f7878273f46d192d5703150 |
13-Oct-2010 |
Andreas Huber <andih@google.com> |
am 312644cd: Merge "Support for writing to MPEG2 transport stream files." into gingerbread Merge commit '312644cdbb39522fe9cac028b15b907ce0e8e0f7' into gingerbread-plus-aosp * commit '312644cdbb39522fe9cac028b15b907ce0e8e0f7': Support for writing to MPEG2 transport stream files.
|
59b7dc39ea8332d3418a599e51447d7edb612ac4 |
12-Oct-2010 |
Andreas Huber <andih@google.com> |
Support for writing to MPEG2 transport stream files. Change-Id: If3b7a807bc224a4b1cb2236537c3ebdc5aee0d97
ediarecorder.cpp
|
2eeadf9ded4b5770a713496e9887d668889987bc |
11-Oct-2010 |
Eric Laurent <elaurent@google.com> |
am 4f21e517: am b37fcbfd: Merge "Added getter for session Id to AudioSink" into gingerbread Merge commit '4f21e517d09b9d793d20d64547df330fba705b3c' * commit '4f21e517d09b9d793d20d64547df330fba705b3c': Added getter for session Id to AudioSink
|
74684081846ee6e68325fa5aba5c45b7447fd368 |
08-Oct-2010 |
Eric Laurent <elaurent@google.com> |
am b37fcbfd: Merge "Added getter for session Id to AudioSink" into gingerbread Merge commit 'b37fcbfd7f9d65b90b43e0242903030c5a6517b5' into gingerbread-plus-aosp * commit 'b37fcbfd7f9d65b90b43e0242903030c5a6517b5': Added getter for session Id to AudioSink
|
8c563ed9ca8a863a66965330b5d14bb4b4ab59d4 |
08-Oct-2010 |
Eric Laurent <elaurent@google.com> |
Added getter for session Id to AudioSink Added a method to expose the audio session id at AudioSink interface so that the AudioPlayer in stagefright can retrieve it. Also: - Fixed audio effect send level not being initialized in mediaplayer. - Fixed compilation error when LOGV is enabled in mediaplayer JNI Change-Id: I4bb55454fd63d646e0e677692d737c4843fb05fb
ediaplayer.cpp
|
9ad6e8bd9fab860e639f6ce95479e4b2a9b03ff5 |
01-Oct-2010 |
Eric Laurent <elaurent@google.com> |
am de12c3cf: am 220ab887: Merge "Issue 3032913: improve AudioTrack recovery time" into gingerbread Merge commit 'de12c3cf56e3f27b2efc60eeae8b5e422747f2b9' * commit 'de12c3cf56e3f27b2efc60eeae8b5e422747f2b9': Issue 3032913: improve AudioTrack recovery time
|
b3788b6d0f5a003d3d3e621ad605e2f3f4cb11e8 |
01-Oct-2010 |
Eric Laurent <elaurent@google.com> |
am 220ab887: Merge "Issue 3032913: improve AudioTrack recovery time" into gingerbread Merge commit '220ab8877b234e6807b7f6d9028ba55d23220301' into gingerbread-plus-aosp * commit '220ab8877b234e6807b7f6d9028ba55d23220301': Issue 3032913: improve AudioTrack recovery time
|
44d9848d6656777a18019223e0d35f2fcc67719a |
01-Oct-2010 |
Eric Laurent <elaurent@google.com> |
Issue 3032913: improve AudioTrack recovery time This issue showed that when an AudioTrack underruns during a too long period of time and is therefore disabled by audioflinger mixer, it takes an additional delay of up to 3 seconds to recover. This fix adds a simple mechanism to recover immediately when the client application is ready to write data again in the AudioTrack buffer Also throttle warnings on record overflows Change-Id: I8b2c71578dd134b9e60a15ee4d91b70f3799cb3d
udioTrack.cpp
|
c425ffbfdca80c663b16a875228c15a1147a75f4 |
27-Sep-2010 |
Eric Laurent <elaurent@google.com> |
am 1b37df95: am 9627847d: Merge "Fix error in AudioEffect command status reporting." into gingerbread Merge commit '1b37df95ec9d03aaa5f4055c6cd86db42f9c9727' * commit '1b37df95ec9d03aaa5f4055c6cd86db42f9c9727': Fix error in AudioEffect command status reporting.
|
da4b9bdd4682fb3a20964908cb18d02c943b7f35 |
27-Sep-2010 |
Eric Laurent <elaurent@google.com> |
am 9627847d: Merge "Fix error in AudioEffect command status reporting." into gingerbread Merge commit '9627847d588cd969f60dcc79d165209184a90069' into gingerbread-plus-aosp * commit '9627847d588cd969f60dcc79d165209184a90069': Fix error in AudioEffect command status reporting.
|
0fa449cc475580d995e9d56756c3da5507d2b6f6 |
24-Sep-2010 |
Eric Laurent <elaurent@google.com> |
Fix error in AudioEffect command status reporting. AudioEffect::command() should not interpret the status returned in pReplyData unless the command is ENABLE or DISABLE. Also fixed: - bug in Visualizer::getWAveForm() status reporting. - wrong initialization value for capture buffer in visualizer engine. Change-Id: I60fb0011f9dba96ee74661dec1e8ef441edcaf35
udioEffect.cpp
isualizer.cpp
|
d44b51d9fcb0b5d891d2abece83a551e71ebb73b |
18-Sep-2010 |
Marco Nelissen <marcone@google.com> |
am 5c9f3579: am f30fae63: Merge "Add a check to track a problem the monkey script has been triggering." into gingerbread Merge commit '5c9f35799422d818f34f814c76c2acd8c939a40c' * commit '5c9f35799422d818f34f814c76c2acd8c939a40c': Add a check to track a problem the monkey script has been triggering.
|
6901625dcb847871e23f04b9a282dc5d313a1d57 |
18-Sep-2010 |
Marco Nelissen <marcone@google.com> |
am f30fae63: Merge "Add a check to track a problem the monkey script has been triggering." into gingerbread Merge commit 'f30fae63389a2216faf55636b95a08f35b5c3620' into gingerbread-plus-aosp * commit 'f30fae63389a2216faf55636b95a08f35b5c3620': Add a check to track a problem the monkey script has been triggering.
|
1c1503cf47c0a37a30e7acac2c5d29140fc61a5f |
18-Sep-2010 |
Marco Nelissen <marcone@google.com> |
Add a check to track a problem the monkey script has been triggering. Change-Id: If3896946d993cbab2442e17740f18efd7e753a3b
ediaplayer.cpp
|
d5672bc7162fa49abf9bb5844195887e911aa7ce |
17-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Adding default profiles for specific levels. The low and high profiles should each match one of the specific profiles. So we need to add the specific profiles corresponding to the low/high profiles. This makes the default profile compliant to documentation + cts. Also fixed javadoc to account time lapse profiles. Change-Id: I34e7307d00ce261c69dc10ead2900025c7f6d428
ediaProfiles.cpp
|
c59ad085c9737e8d56328732be6864de302acae9 |
10-Sep-2010 |
Mike Lockwood <lockwood@android.com> |
Media scanner support for tracking files of arbitrary type. The native media scanner no longer filters files based on file extension. Audio, video, image and playlist files are handled as before, but non-media files are now inserted into the "files" table, which was originally added to support MTP. Change-Id: I9053218fb6d2671a3bb181405c34442b94678afc Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
9783ed8f85af3d7c72030098acfed7e1d6638349 |
11-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Exposing specific profile levels + hasProfile(). - Exposing the specific resolution profile levels QUALITY_{QCIF,CIF,480P,720P,1080P} and the new time lapse profiles QUALITY_TIME_LAPSE_{LOW,HIGH,QCIF,CIF,480P,720P,1080P} - Unhiding the hasProfile() function used to test if a given profile exists. Change-Id: I5d8b9e1ba61718f304235e76d85244e428e68643
ediaProfiles.cpp
|
1a02fabca518806222212bdc708b36a37a7c3925 |
11-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Merge "Adding hasProfile."
|
a0d472f114bb6a74005aaf61e91e3569ae061630 |
10-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Merge "Added specific resolution and time lapse profiles."
|
8bb5603cc735315c8691dc9b7a81b4ad4d6e253e |
10-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Adding hasProfile. - Added hasProfile to CamcorderProfile and JNI. - Added hasCamcorderProfile to MediaProfiles. - using android.hardware.Camera.CAMERA_ID_DEFAULT for default camera in get(). Change-Id: Ib57bb49ae79492d7cbc0ec6c7b6efcbf74f80013
ediaProfiles.cpp
|
c0a84782589eececdfa7e723e8aa0e572d0d79f5 |
07-Sep-2010 |
Nipun Kwatra <nkwatra@google.com> |
Added specific resolution and time lapse profiles. - Added enums QUALITY_{QCIF,480P,720P,1080P} QUALITY_TIME_LAPSE_{LOW,HIGH,QCIF,480P,720P,1080P} in CamcorderProfile and corresponding ones in MediaProfiles. - Added functions createDefaultCamcorderTimeLapseLowProfile, createDefaultCamcorderTimeLapseHighProfile to set default values. - Moved javadoc for constants to the get() function. Change-Id: Ib8b3f8d29395dff77a397d1e6b44cfaf8c481d4d
ediaProfiles.cpp
|
83750eaf5a3f38c243a9e7eb81d4b2421e3a0d88 |
31-Aug-2010 |
Jamie Gennis <jgennis@google.com> |
Add the new Stagefright ANativeWindow OMX codec API. This change defines the two OMX_SetParameter calls that enable OMX codecs to interact with ANativeWindows. It also adds the plumbing to the IOMX, OMX, and OMXNodeInstance classes to use these new APIs. This is try 2 for this change, after reverting the first one because it broke the build. Change-Id: I94249b72bdb5d5719360f03d7935fcca4ece5028
OMX.cpp
|
9f2d258645826c999a93a4206df157fec2e3b0f2 |
01-Sep-2010 |
Jamie Gennis <jgennis@google.com> |
Revert "Merge "Add the new Stagefright ANativeWindow OMX codec API."" This reverts commit 8a643b411e1802977f742709113ce01b06a18e12, reversing changes made to 73ea9beaf8eb3d0027e78cbc0ac5e626c3f8deb4.
OMX.cpp
|
9dd4931cca8e4a2fcbcabf4eb7078648e1c029cd |
01-Sep-2010 |
Jamie Gennis <jgennis@google.com> |
Merge "Add the new Stagefright ANativeWindow OMX codec API."
|
559dc605bfe2deb73ad718e0d5c5dc55e27c45df |
31-Aug-2010 |
Jamie Gennis <jgennis@google.com> |
Add the new Stagefright ANativeWindow OMX codec API. This change defines the two OMX_SetParameter calls that enable OMX codecs to interact with ANativeWindows. It also adds the plumbing to the IOMX, OMX, and OMXNodeInstance classes to use these new APIs. Change-Id: Ibfbf893dc3513db0b3d3221bec5708c77287cddc
OMX.cpp
|
5d6aca5d86e86af3f8f597be573d4563d69ceb85 |
27-Aug-2010 |
Nipun Kwatra <nkwatra@google.com> |
Added setAuxiliaryOutputFile to MediaRecorder and JNI added setAuxiliaryOutputFile to allow setting of an auxiliary output file. Also added the JNI support. Change-Id: I8c3335192bd6f7fcbfdfc8552cfd0848f2ad2a5d
MediaRecorder.cpp
ediarecorder.cpp
|
6865ddb29fc7e7a14104d73c65b71074502bb6c7 |
31-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
am 1577e629: am 12006013: fixedfft: Only includes cpu-features.h when __arm__ is defined. Merge commit '1577e629866b2700e31c9467478e05ebffcc69a1' * commit '1577e629866b2700e31c9467478e05ebffcc69a1': fixedfft: Only includes cpu-features.h when __arm__ is defined.
|
eebcf36cf2db2563af8ef479e01747321aa959e8 |
31-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
am 12006013: fixedfft: Only includes cpu-features.h when __arm__ is defined. Merge commit '12006013cc2cd0a076855ed068f5f782b24631c3' into gingerbread-plus-aosp * commit '12006013cc2cd0a076855ed068f5f782b24631c3': fixedfft: Only includes cpu-features.h when __arm__ is defined.
|
5edae619a6ad7337a3d14b53f7665ff17ec3ee84 |
30-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
fixedfft: Only includes cpu-features.h when __arm__ is defined. Change-Id: Ifb6c03b38eff3c94a507ceb5043fcc48b364c25c
ixedfft.cpp
|
e7c0899a7b7549ea342af67e7ab525f81672cfa5 |
25-Aug-2010 |
Eric Laurent <elaurent@google.com> |
am 74ede9e4: am 67b50606: Merge "Fix the simulator build." into gingerbread Merge commit '74ede9e4fd3f5ab3c139abd95a22abf9f33c2d64' * commit '74ede9e4fd3f5ab3c139abd95a22abf9f33c2d64': Fix the simulator build.
|
dd8b35d2f7911bb1e12010f143c5b8c1b621f2ed |
25-Aug-2010 |
Eric Laurent <elaurent@google.com> |
am 67b50606: Merge "Fix the simulator build." into gingerbread Merge commit '67b506065e9fe3c56e3d1b47eedfa01170d574f9' into gingerbread-plus-aosp * commit '67b506065e9fe3c56e3d1b47eedfa01170d574f9': Fix the simulator build.
|
625981ec8417528cbea67c86dcbe32a9e79a79be |
25-Aug-2010 |
Eric Laurent <elaurent@google.com> |
Fix the simulator build. Fixes the sim build broken by commit 58d3bd08107f44cba79938dd8430e69c0fda4202. Change-Id: I5a63623363d558783dc5254fdd322080cc2f3525
ixedfft.cpp
|
ef6c8c0324be75dfac3d6a4025ec3b3a7ca23826 |
24-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
am a102871c: am b80e610b: Merge "Visualizer: replace the FFT implementation with a faster one." into gingerbread Merge commit 'a102871c7cbb74ebddc53231a871145de61351b0' * commit 'a102871c7cbb74ebddc53231a871145de61351b0': Visualizer: replace the FFT implementation with a faster one.
|
4b79168835965cf0fc41ebe2a367e22b4cb20d08 |
11-Aug-2010 |
Jamie Gennis <jgennis@google.com> |
Change the framework to use the new camera preview path. This change makes the camera HAL interface take an ANativeWindow interface from which all the camera preview buffers will be allocated. The framework code running in application processes now passes a Surface object rather than an ISurface to the camera server via Binder when setting the preview surface. The camera server then forwards that Surface object (which implements the ANativeWindow interface) to the camera HAL, which uses it to communicate with SurfaceFlinger to allocate the camera preview buffers. Change-Id: Ie438f721559cd7de5e4f848a26d96360dda07b5f
MediaRecorder.cpp
ediarecorder.cpp
|
5daeb129a2c2ba3d14ccd94af283b5f561c783ea |
16-Aug-2010 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 35cc68814a9537c31fde146e171e7b0bbdfe211e Author: Andreas Huber <andih@google.com> Date: Mon Aug 16 08:48:42 2010 -0700 Only enable support for yuv to yuv conversion on passion, where it's available, use the slower yuv->rgb565 path everywhere else. commit d8ac5a8814103e60d11d2acf61997fc31a1dc58d Author: Andreas Huber <andih@google.com> Date: Fri Aug 13 13:56:44 2010 -0700 The software renderer takes over all rendering, converting from yuv to yuv if possible and rgb565 otherwise. commit 684972074b74318bdcb826ed9b5b0864d2d2e273 Author: Andreas Huber <andih@google.com> Date: Fri Aug 13 09:34:35 2010 -0700 A first shot at supporting the new rendering APIs. Change-Id: Iea9b32856da46950501f1a700f616b5feac710fd
MediaPlayer.cpp
ediaplayer.cpp
|
7be0434ce8d4139e9ca4b1f374153de0c75ac049 |
23-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
am b80e610b: Merge "Visualizer: replace the FFT implementation with a faster one." into gingerbread Merge commit 'b80e610b070c2cec98a228a8aec450dc24a5f90a' into gingerbread-plus-aosp * commit 'b80e610b070c2cec98a228a8aec450dc24a5f90a': Visualizer: replace the FFT implementation with a faster one.
|
dbd2b7e4ebfe7a586b1db4459cf6aa032a7f8719 |
19-Aug-2010 |
Chia-chi Yeh <chiachi@android.com> |
Visualizer: replace the FFT implementation with a faster one. This implementation uses fixed points instead of floating points. It is slightly inaccurate compared to the old one but still perfect for visualization purpose. It runs 40% faster on passion, 5 times faster on sholes, and of course 14 times faster on sapphire. Change-Id: I1e868417bcffda091becf106a7b941d02813faec
ndroid.mk
isualizer.cpp
ixedfft.cpp
|
4a3935898893f955403021fe41cf2bfa3a32dde2 |
18-Aug-2010 |
Jean-Baptiste Queru <jbq@google.com> |
resolved conflicts for merge of 0b7bd95d to gingerbread-plus-aosp Change-Id: I55c1689c7d0737c943efec28d8164d6a5360621c
|
f1a97e53a58f47afa17a9b0d3a5cc9abf7e5ed19 |
17-Aug-2010 |
Rene Bolldorf <xsecute@googlemail.com> |
Fix compilation errors in libmedia, libstagefright. (invalid conversion from 'const char*' to 'char*') Change-Id: Idef85606b7cff629b2778ed8134c79c892af54c2
ediaScanner.cpp
|
2dac90da3ea5120b52844a6ee38c300301de5756 |
12-Aug-2010 |
James Dong <jdong@google.com> |
am 0386d04b: am 581581fe: Merge "Fix all fd leaks in authoring engine" into gingerbread Merge commit '0386d04b19619b03b6bce830010e11d31d3f8a5c' * commit '0386d04b19619b03b6bce830010e11d31d3f8a5c': Fix all fd leaks in authoring engine
|
25d83125cee222993673d3ba261ae1186bcad8c2 |
12-Aug-2010 |
James Dong <jdong@google.com> |
Fix all fd leaks in authoring engine Change-Id: I17798543f9dd41cc8bef6f6086e66932f9f97be8
MediaRecorder.cpp
|
bc417c0531332635df9525df4683274a08fb987f |
10-Aug-2010 |
Eric Laurent <elaurent@google.com> |
am 1ece7d68: am 2a6b80bc: Fixed several audio effects problems. Merge commit '1ece7d6873027068a3e7b055597045e9387b217c' * commit '1ece7d6873027068a3e7b055597045e9387b217c': Fixed several audio effects problems.
|
8569f0d3bf4c6787707e348a7cf73b9c4199cb32 |
30-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Fixed several audio effects problems. - Fixed constant inversions in AudioEffect.java - Do not return error when enabling an already enabled effect - Update cached effect state in native AudioEffect class when effect is enabled/disabled by command() method - Remove click when restarting effect during disable sequence - Fixed problem in master mute management when volume control is delegated to effect. Change-Id: I6df4ce9fcc54fdc7345df858f639d20d802d6712
udioEffect.cpp
|
982a93173bc84f005172152d823cbb59dfcbeb12 |
05-Aug-2010 |
Andreas Huber <andih@google.com> |
am 1f513d88: am c17f35dd: Merge "Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation." into gingerbread Merge commit '1f513d8821670a33d6361ea521b6756163a3f9bf' * commit '1f513d8821670a33d6361ea521b6756163a3f9bf': Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation.
|
aa68b49a53a874a1813e65752663f19d18149e2c |
05-Aug-2010 |
Eric Laurent <elaurent@google.com> |
am eec3fca6: am 7629e8dd: Merge "Fix issue 2876124." into gingerbread Merge commit 'eec3fca6277296f354ee2b1af0f4b3dceddb3067' * commit 'eec3fca6277296f354ee2b1af0f4b3dceddb3067': Fix issue 2876124.
|
39ddf8e0f18766f7ba1e3246b774aa6ebd93eea8 |
04-Aug-2010 |
Andreas Huber <andih@google.com> |
Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation. Change-Id: I95b8dd487061add9bade15749e563b01cd99d9a6
ediarecorder.cpp
|
3b26844e60f8487388e7e62709faf0dada86e7e1 |
03-Aug-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2876124. Allow calls to MediaPlayer::notify() in idle state to signal errors from JNI. Change-Id: I1515fe69766f0a926b76e15c4971317da2acd6a0
ediaplayer.cpp
|
9da2070b6d6d20550de7da61478c325f0928d020 |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
resolved conflicts for merge of 27eecb70 to gingerbread Change-Id: If064f2f4950fc1a4ff38e6927fe2120af76b26f1
|
bc286dce1af6670824fba4167e0750b631168d72 |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
am 0c51c98f: am 4506c62a: fix inaccurate copyrights Merge commit '0c51c98fd9edf0bdc8f2c567470fc332b5ae3adf' * commit '0c51c98fd9edf0bdc8f2c567470fc332b5ae3adf': fix inaccurate copyrights
|
0319aaecb03aa83924ab4e3d9c9bc657c2e8bc06 |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
am 4506c62a: fix inaccurate copyrights Merge commit '4506c62abd5767d6d42a97e8e87793a1b3bcb625' into gingerbread-plus-aosp * commit '4506c62abd5767d6d42a97e8e87793a1b3bcb625': fix inaccurate copyrights
|
68335fdd6e9c1d622384612605d6952503cb7fd0 |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
fix inaccurate copyrights Change-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd
MediaRecorder.cpp
|
01cff464978aa0f749f42650180b45ea56cb17de |
30-Jul-2010 |
Jean-Baptiste Queru <jbq@google.com> |
fix inaccurate copyrights Change-Id: I33b0f68f2da34ca4728211d83159cf32a127f6dd
MediaRecorder.cpp
|
ed0de3c123aaa86147993721d4794648a65aab75 |
28-Jul-2010 |
Eric Laurent <elaurent@google.com> |
am 6fa88882: am 62d83a0c: Merge "Audio effects: modified command() parameter types." into gingerbread Merge commit '6fa8888254deb4961dc64c6ac03dc103c9cd8bcf' * commit '6fa8888254deb4961dc64c6ac03dc103c9cd8bcf': Audio effects: modified command() parameter types.
|
25f4395b932fa9859a6e91ba77c5d20d009da64a |
28-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Audio effects: modified command() parameter types. The type of the cmd, cmdSize and *pReplySize parameters of the effect control interface command() function have been modified from int to uint32_t. This is more consistent with their role. Change-Id: I84d289fc262d6753747910f06f485597dfee6591
udioEffect.cpp
Effect.cpp
EffectClient.cpp
isualizer.cpp
|
71ff94cb52874e42dede3c6bc4b86757b72cf0b1 |
21-Jul-2010 |
Eric Laurent <elaurent@google.com> |
am 34161132: am 7070b365: Added support for auxiliary audio effects to AudioTrack and MediaPlayer. Merge commit '34161132030254bac7dd64c9713832e2f961a061' * commit '34161132030254bac7dd64c9713832e2f961a061': Added support for auxiliary audio effects to AudioTrack and MediaPlayer.
|
2beeb50b1bba9e92f6cacfeca37fe9fa9d36ead1 |
16-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Added support for auxiliary audio effects to AudioTrack and MediaPlayer. Added methods to AudioTrack and MediaPlayer java classes to enable use of auxiliary audio effects. The effect can be attached and detached by specifying its ID and the send level controlled. Change-Id: Ie74ff54a453096a742688476f612ce355543b6f3
udioTrack.cpp
MediaPlayer.cpp
ediaplayer.cpp
|
8184a5734690b30f4de0f6b6c16daf1e089f67df |
20-Jul-2010 |
Eric Laurent <elaurent@google.com> |
resolved conflicts for merge of dd206093 to master Change-Id: I21dd2321a4839d034d49092baccbf40986f17dae
|
de070137f11d346fba77605bd76a44c040a618fc |
13-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Audio policy manager changes for audio effects Added methods for audio effects management by audio policy manager. - control of total CPU load and memory used by effect engines - selection of output stream for global effects - added audio session id in parameter list for startOutput() and stopOutput(). this is not used in default audio policy manager implementation. Modifications of audio effect framework in AudioFlinger to allow moving and reconfiguring effect engines from one output mixer thread to another when audio tracks in the same session are moved or when requested by audio policy manager. Also fixed mutex deadlock problem with effect chains locks. Change-Id: Ida43484b06e9b890d6b9e53c13958d042720ebdb
udioSystem.cpp
AudioFlinger.cpp
AudioPolicyService.cpp
|
4e2ffa400b82559cab2c5717c8dcdff393d334a9 |
15-Jul-2010 |
Mike Lockwood <lockwood@android.com> |
Fixes for simulator build on lucid strchr and strrchr now return const char* instead of char* Change-Id: I5ca831b8951af7e6306eb9d9d6f78ed2ec13d649 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
66e6c1c85c33194b1a6fc5077bd78b53a5fe9d03 |
09-Jul-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
am bd3f8b71: am e7b790f1: Merge "Fix swap of sessionId and output in audio effect API." into gingerbread Merge commit 'bd3f8b711643a172703537e34a0fa7c21c5b953f' * commit 'bd3f8b711643a172703537e34a0fa7c21c5b953f': Fix swap of sessionId and output in audio effect API.
|
42a050ff9636b79e4b91297cc41028ffd62240d5 |
09-Jul-2010 |
Jean-Michel Trivi <jmtrivi@google.com> |
Fix swap of sessionId and output in audio effect API. Change-Id: Idc93415efef92087507401e50cfb235a6f1f7ed7
udioEffect.cpp
|
6506bd2be256cdebc69324714c5b26c767981046 |
08-Jul-2010 |
Eric Laurent <elaurent@google.com> |
am b91881fd: am dacabf97: Merge "Added Visualizer effect." into gingerbread Merge commit 'b91881fdd1608cc922f105ec552b5505da1fecb9' * commit 'b91881fdd1608cc922f105ec552b5505da1fecb9': Added Visualizer effect.
|
6c5c25fae5aa68a52c6fa75649dd559a9ca98932 |
08-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Merge "Added Visualizer effect." into gingerbread
|
da7581b7b61b84f15e8d671c86fd117c322b009e |
02-Jul-2010 |
Eric Laurent <elaurent@google.com> |
Added Visualizer effect. The visualizer enables application to retrieve part of the currently playing audio for visualization purpose. It is not an audio recording interface and only returns partial and low quality audio content as a waveform or a frequency representation (FFT). Removed temporary hack made in MediaPlayer for animated wall papers based on audio visualization (snoop() method. This commit also includes a change in AudioEffect class: - the enable()/disable() methods have been replaced bya more standard setEnabled() method. - some fixes in javadoc Change-Id: Id092a1340e9e38dae68646ade7be054e3a36980e
ndroid.mk
udioEffect.cpp
MediaPlayerService.cpp
isualizer.cpp
ediaplayer.cpp
|
c143929b9f40112bb75eefbeafd6a56515868c9d |
01-Jul-2010 |
Chih-Chung Chang <chihchung@google.com> |
am bda93c4c: am 09b90057: Add multiple camera support for in MediaProfiles. Merge commit 'bda93c4cb94b47c86251d22df16e46a514c191ef' * commit 'bda93c4cb94b47c86251d22df16e46a514c191ef': Add multiple camera support for in MediaProfiles.
|
3eaa4e92dbebb5b27cb89f329f31fac6fb6fe1f0 |
22-Jun-2010 |
Chih-Chung Chang <chihchung@google.com> |
Add multiple camera support for in MediaProfiles. Change-Id: Ie89568a0f5f5fd08ede77e33f9a559215d6bed9a
ediaProfiles.cpp
|
1c645f22ab7e56a04659c09ffa2ca2de20650ddc |
29-Jun-2010 |
James Dong <jdong@google.com> |
am c2c59f69: am 2a76b316: Merge "Separate MediaRecorderClient with MediaPlayerClient" into gingerbread Merge commit 'c2c59f690deafe34c7701b01b612fd777cee8d4b' * commit 'c2c59f690deafe34c7701b01b612fd777cee8d4b': Separate MediaRecorderClient with MediaPlayerClient
|
37047fceba836f341d0108beed0991b0f8dfc543 |
26-Jun-2010 |
James Dong <jdong@google.com> |
Separate MediaRecorderClient with MediaPlayerClient - An alternative would be to define a common base class that both MediaRecorderClient and MediaPlayerClient can derive. But since the common code, onTransact() and notify() uses some Binder code, having a common base class may not gain us too much in terms of code reuse. Change-Id: Ibc06720278ad173fceacff3d267b7060856c6316
ndroid.mk
MediaRecorder.cpp
MediaRecorderClient.cpp
|
a93b488457b8d7dd17a1d80c82a9accafcdd8bad |
25-Jun-2010 |
Eric Laurent <elaurent@google.com> |
am cdf1357b: am 8e103da1: Merge "Various fixes and improvements in audio effects implementation" into gingerbread Merge commit 'cdf1357b6e0152280dcd611b5f096db4887d8126' * commit 'cdf1357b6e0152280dcd611b5f096db4887d8126': Various fixes and improvements in audio effects implementation
|
ffe9c25ce85e1af55d58ec025adc6367d70db7e8 |
24-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Various fixes and improvements in audio effects implementation Effect API: - Use different definitions for audio device, channels, formats... in AudioSystem and EffectApi: Removed media/AudioCommon.h file created for initial version of EffectApi - Indicate audio session and output ID to effect library when calling EffectCreate(). Session ID can be useful to optimize the implementation of effect chains in the same audio session. Output ID can be used for effects implemented in audio hardware. - Renamed EffectQueryNext() function to EffectQueryEffect() and changed operating mode: now an index is passed for the queried effect instead of implicitly querying the next one. - Added CPU load and memory usage indication in effects descriptor - Added flags and commands to indicate changes in audio mode (ring tone, in call...) to effect engine - Added flag to indicate hardware accelerated effect implementation. - Renamed EffectFactoryApi.h to EffectsFactoryApi.h for consistency with EffectsFactory.c/h Effect libraries: - Reflected changes in Effect API - Several fixes in reverb implementation - Added build option TEST_EFFECT_LIBRARIES in makefile to prepare integration of actual effect library. - Replaced pointer by integer identifier for library handle returned by effects factory Audio effect framework: - Added support for audio session -1 in preparation of output stage effects configuration. - Reflected changes in Effect API - Removed volume ramp up/down when effect is inserted/removed: this has to be taken care of by effect engines. - Added some overflow verification on indexes used for deferred parameter updates via shared memory - Added hardcoded CPU and memory limit check when creating a new effect instance Change-Id: I43fee5182ee201384ea3479af6d0acb95092901d
udioEffect.cpp
AudioFlinger.cpp
|
ed914577e770697e23884886787e333588eb4c61 |
23-Jun-2010 |
Andreas Huber <andih@google.com> |
am 03e90f7e: am 58e9402b: Merge "Properly assign LOG_TAGs in OMXMaster.cpp and MediaScanner.cpp" into gingerbread Merge commit '03e90f7eeb032c981fc2952aa33f6ba1fae20d97' * commit '03e90f7eeb032c981fc2952aa33f6ba1fae20d97': Properly assign LOG_TAGs in OMXMaster.cpp and MediaScanner.cpp
|
1a97e853e8f9fa3f4f47304d0e2e9118887e6051 |
23-Jun-2010 |
Eric Laurent <elaurent@google.com> |
am 845f5414: am 2c2ce8e5: Merge "Added support for audio sessions in MediaPlayer and AudioTrack." into gingerbread Merge commit '845f541454d1fa9f328c0b0bf79acf2fba363177' * commit '845f541454d1fa9f328c0b0bf79acf2fba363177': Added support for audio sessions in MediaPlayer and AudioTrack.
|
4ae22516962e6d6727fc3e9ce646441708ed60a9 |
23-Jun-2010 |
Chia-chi Yeh <chiachi@android.com> |
am da9269af: am 3238302b: Merge "media: add AudioRecord::getMinFrameCount()." into gingerbread Merge commit 'da9269af5e94e25c142c519429aa77eb40f68e58' * commit 'da9269af5e94e25c142c519429aa77eb40f68e58': media: add AudioRecord::getMinFrameCount().
|
1629399bb578fc176613ccaf134d1be6e3047638 |
23-Jun-2010 |
Andreas Huber <andih@google.com> |
Properly assign LOG_TAGs in OMXMaster.cpp and MediaScanner.cpp Change-Id: I863651619f84b2b66e9a926ce1fef8ce6a53a42d related-to-bug: 2639116
ediaScanner.cpp
|
dadd0d1e7d5fbb88fd3420438c590a0bb4c18af5 |
23-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Merge "Added support for audio sessions in MediaPlayer and AudioTrack." into gingerbread
|
a514bdb58b5de4986679f72b7204b4764f7a2778 |
21-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Added support for audio sessions in MediaPlayer and AudioTrack. Audio sessions are used to associate audio effects to particular instances (or groups) of MediaPlayers or AudioTracks. Change-Id: Ib94eec43241cfcb416590f435ddce7ab39a07640
udioTrack.cpp
MediaPlayerService.cpp
ediaplayer.cpp
|
15304d601cbf83be6519ca53e1a26b97d50d0192 |
22-Jun-2010 |
Chia-chi Yeh <chiachi@android.com> |
media: add AudioRecord::getMinFrameCount(). Change-Id: I952071ab10aa49aa96b727d157b68470d69fff3d
udioRecord.cpp
|
9e6f25df13d5242d83fda224f8cc0b2bf22a727c |
21-Jun-2010 |
Chia-chi Yeh <chiachi@android.com> |
am d9e9132e: am 2ce999fc: am bd240c27: media: add AudioTrack::getMinFrameCount(). Merge commit 'd9e9132eeb2c02feb812f21a5cecb844b5b39d9d' * commit 'd9e9132eeb2c02feb812f21a5cecb844b5b39d9d': media: add AudioTrack::getMinFrameCount().
|
33005a932c60a0780fe9b7307d5988df3d9f6c26 |
16-Jun-2010 |
Chia-chi Yeh <chiachi@android.com> |
media: add AudioTrack::getMinFrameCount(). Change-Id: If15162583d1d16d89f59be0793106afe77417f35
udioTrack.cpp
|
ef04e8f230e7ef5dece1cc4e73cd109c69905418 |
15-Jun-2010 |
Mike Lockwood <lockwood@android.com> |
MediaScanner: Fix handling of files with dirent.d_type == DT_UNKNOWN The previous code was calling stat() on the parent directory rather than the actual file. Change-Id: If64552cb37552c77618a81ae4333307a018efe13 Signed-off-by: Mike Lockwood <lockwood@android.com>
ediaScanner.cpp
|
366c84d307e128a00a5ba0234cad7759a0b3d57c |
14-Jun-2010 |
Eric Laurent <elaurent@google.com> |
am 184a3ff6: am e0219539: am 01f7ac64: Merge "Issue 2667802: [Audio Effect Framework] AudioEffect base class and JNI." into kraken Merge commit '184a3ff64ba71e7e860b70b9a836c0132b447138' * commit '184a3ff64ba71e7e860b70b9a836c0132b447138': Issue 2667802: [Audio Effect Framework] AudioEffect base class and JNI.
|
801a1186eb1d2ce195b15222701865932e08f3dc |
09-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Issue 2667802: [Audio Effect Framework] AudioEffect base class and JNI. Added AudioEffect C++ class. AudioEffect is the base class for effect specific implementations, OpenSL ES effect interfaces and audio effect JNI. Added the AudioEffect JNI and AudioEffect JAVA class. AudioEffect is the base class to implement more specific JAVA classes to control audio effects from JAVA applications. Change-Id: If300a1b708f2e6605891261e67bfb4f8330a4624
ndroid.mk
udioEffect.cpp
|
fc499ca2babff1315d0188ddfbe0268fe5d5e8ae |
04-Jun-2010 |
Eric Laurent <elaurent@google.com> |
am 030a1553: am 2ea200c5: Merge "Issue 2667801: [Audio Effect Framework] AudioFlinger, AudioMixer AudioTrack modifications." into kraken
|
be916aa1267e2e6b1c148f51d11bcbbc79cb864c |
02-Jun-2010 |
Eric Laurent <elaurent@google.com> |
Issue 2667801: [Audio Effect Framework] AudioFlinger, AudioMixer AudioTrack modifications. First drop of audio framework modifications for audio effects support. - AudioTrack/AudioRecord: Added support for auxiliary effects in AudioTrack Added support for audio sessions Fixed left right channel inversion in setVolume() - IAudioFlinger: Added interface methods for effect enumeraiton and instantiation Added support for audio sessions. - IAudioTrack: Added method to attach auxiliary effect. - AudioFlinger Created new classes to control effect engines in effect library and manage effect connections to tracks or output mix: EffectModule: wrapper object controlling the effect engine implementation in the effect library. There is one EffectModule per instance of an effect in a given audio session EffectChain: group of effects associated to one audio session. There is one EffectChain per audio session. EffectChain for session 0 is for output mix effects, other chains are attached to audio tracks with same session ID. Each chain contains a variable number of EffectModules EffectHandle: implements the IEffect interface. There is one EffectHandle object for each application controlling (or using) an effect module. THe EffectModule maintians a list of EffectHandles. Added support for effect modules and effect chains creation in PlaybackThread. modified mixer thread loop to allow track volume control by effect modules and call effect processing. -AudioMixer Each track now specifies its output buffer used by mixer for accumulation Modified mixer process functions to process tracks by groups of tracks with same buffer Modified track process functions to support accumulation to auxiliary channel Change-Id: I26d5f7c9e070a89bdd383e1a659f8b7ca150379c
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioTrack.cpp
|
a47e14e20e2c97955ac116b4f229316fe9c88e53 |
27-May-2010 |
Eric Laurent <elaurent@google.com> |
Merge "Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO."
|
2dadcda205d995f7094b7569b076921872505143 |
26-May-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2712130: Sholes: problem when playing audio while recording over bluetooth SCO. The problem is that when an input stream is opened for record over bluetooth SCO, the kernel mono audio device should be opened in RW mode to allow further use of this same device by an output stream also routed to bluetooth SCO. This does not happen because of a bug in AudioSystem::isBluetoothScoDevice() that does not return true when the device is DEVICE_IN_BLUETOOTH_SCO_HEADSET (input device for blurtooth SCO). Change-Id: I9100e972931d8142295c7d64ec06e31304407586
udioSystem.cpp
|
d71a1be83ff31cdb6599c351f9832cefc8d447ba |
21-May-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2667797: [Audio Effect Framework] new base class and binder interfaces for effect control. Added IEffect and IEffectClient binder interfaces to exchange effect module control and status information between application and media server processes. Change-Id: I10e8e894898e52ed9956a765d0ef7075eb2593af
ndroid.mk
Effect.cpp
EffectClient.cpp
|
d1b449aad6c087a69f5ec66b7facb2845b73f1cb |
14-May-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2553359: Pandora does not work well with Passion deskdock / Cardock. The problem is due to a too big difference between the buffer size used at the hardware interface and at the A2DP interface. When no resampling occurs we don't notice problems but the timing is very tight. As soon as resampling is activated, the AudioTrack underruns. This is because the AudioTrack buffers are not resized when moving the AudioTrack from hardware to A2DP output. The AudioTrack buffers are calculated based on a hardware output buffer size of 3072 bytes. Which is much less than the A2DP output buffer size (10240). The solution consists in creating new tracks with new buffers in AudioFlinger when the A2DP output is opened instead of just transfering active tracks from hardware output mixer thread to the new A2DP output mixer thread. To avoid synchronization issues between mixer threads and client processes, this is done by invalidating tracks by setting a flag in their control block and having AudioTrack release the handle on this track (IAudioTrack) and create a new IAudioTrack when this flag is detected next time obtainBuffer() or start() is executed. AudioFlinger modifications: - invalidate the tracks when setStreamOutput() is called - make sure that notifications of output opening/closing and change of stream type to output mapping are sent synchronously to client process. This is necessary so that AudioSystem has the new stream to output mapping when the AudioTrack detects the invalidate flag in the client process. Previously their were sent when the corresponding thread loop was executed. AudioTrack modifications: - move frame count calculation and verification from set() to createTrack() so that is is updated every time a new IAudioTrack is created. - detect track invalidate flag in obtainBuffer() and start() and create a new IAudioTrack. AudioTrackShared modifications - group all flags (out, flowControlFlag, forceReady...) into a single bit filed to save space. Change-Id: I9ac26b6192230627d35084e1449640caaf7d56ee
udioRecord.cpp
udioTrack.cpp
|
2e5299988b5f5f9165a76938a66d37e46dd48d6b |
13-Apr-2010 |
Mathias Agopian <mathias@google.com> |
don't hardcode "mSurface" throughout our source code this is used in a few places to get access to the android.view.Surface native surface. use a macro instead. Also rename the field to mNativeSurface. Change-Id: I1c6dea14abd6b8b1392c7f97b304115999355094
OMX.cpp
|
a17a1347ffe281fc70633ba8dc98f6cf49ac06ff |
02-Apr-2010 |
Dave Sparks <davidsparks@android.com> |
Use local lock for most MediaMetadataRetriever methods. Bug 2560834. MediaMetadataRetriever uses a single static lock for all operations. This effectively serializes all metadata retrieval operations in a single process. This patch uses the object level lock for all normal operations and only uses the static lock to serialize calls to release. Change-Id: I81c9f234c2f0007a26d18e1398c709b41a4dbbd7
ediametadataretriever.cpp
|
54b1a0550411c2fd2084d82d28934d505c37349a |
20-Mar-2010 |
Mathias Agopian <mathias@google.com> |
libutils Condition are now PRIVATE by default Condition must be initialized with SHARED for the old behavior, where they can be used accross processes. Updated the two places android that require SHARED conditions. PRIVATE conditions (and mutexes) use more efficient syscalls. Change-Id: I9a281a4b88206e92ac559c66554e886b9c62db3a
udioTrack.cpp
|
d3f93c572e55dc902d01f8eeda1d107a8b9128e2 |
17-Mar-2010 |
Eric Laurent <elaurent@google.com> |
Merge "Fix issue 2416481: Support Voice Dialer over BT SCO."
|
be55a2d66f03e80524a346500ffa9fd046410b28 |
11-Mar-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2416481: Support Voice Dialer over BT SCO. - AudioPolicyManager: allow platform specific choice for opening a direct output. Also fixed problems in direct output management. - AudioFliinger: use shorter standby delay and track inactivity grace period for direct output thread to free hardware resources as soon as possible. - AudioSystem: do not use cached output selection in getOutput() when a direct output can be selected. Change-Id: If44b50d29237b8402ffd7a5ba1dc43c56f903e9b
udioSystem.cpp
|
3e42b4491529975f771f8d71f931e24e120a7856 |
16-Mar-2010 |
Kenny Root <kroot@google.com> |
Fix regression in directory scanning Previous range-checking fix removed an inequality check. This change restores it. Offending change was I5eb310ced58c3c64a7af2d11b80326efe5adbcab Change-Id: Ic952c3ba5a4f7e5ab2148ec623b6f083cb7495fb
ediaScanner.cpp
|
8a6e24135608d1ec6629f381acd20d88369cd940 |
11-Mar-2010 |
Marco Nelissen <marcone@google.com> |
Merge "Revert "Do autodetection even if no locale was specified, and use the""
|
b5c3107262fdf82aef4bd5ee8b8c60dd3e4725fe |
11-Mar-2010 |
Marco Nelissen <marcone@google.com> |
Revert "Do autodetection even if no locale was specified, and use the" This reverts commit b45b0845a6db32848ad08ac1037ef67a68ec2d39.
ediaScannerClient.cpp
|
4023493a827bc9751d8e40795516d0d536a53348 |
10-Mar-2010 |
Nicolas Catania <niko@google.com> |
Allow invoke in all the player states except idle and error. Previously invoke would work only after prepare but not when the player is in play or pause state (for instance). This new change just check that the player has been initialized and is not in the error state. Bug:2488931 Change-Id: I9b9f3679593a3b7697c1a84d993fdcd7e1693a90
ediaplayer.cpp
|
64fb06f698b39759a7a2ebacd0a175949b7506a5 |
11-Mar-2010 |
Nicolas Catania <niko@google.com> |
Revert "Allow invoke in all the player states except idle and error." This reverts commit 88f3b81d065d4bec6f69a25eda99158e254f55b1.
ediaplayer.cpp
|
63bacaf543d4faee6dadda08e51556c878b078f5 |
10-Mar-2010 |
Nicolas Catania <niko@google.com> |
Allow invoke in all the player states except idle and error. Previously invoke would work only after prepare but not when the player is in play or pause state (for instance). This new change just check that the player has been initialized and is not in the error state. Bug:2488931 Change-Id: I7a69d1b6e3eec1e5dbdf7378ff2085329062595a
ediaplayer.cpp
|
83ff1438d2d1d5dbf39ca5e6f2e4fa1799e7ba80 |
10-Mar-2010 |
Marco Nelissen <marcone@google.com> |
MEDIA_PLAYER_STATE_ERROR is not a bitmask (b/2502881) Change-Id: I08e427eb2c36f5d70e40f9aeb8638fa8262de989
ediaplayer.cpp
|
88335b1a749fe0157547907a2ce6c9632f4d2592 |
03-Mar-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2428563: Camera rendered inoperable by voice call interruption. The problem is that AudioRecord never exits read() when a timeout occurs while trying to get new PCM data from audio hardware input buffer: it just keeps waiting and retrying until stop() is called. In the same time, opencore AndroidAudioInput::audin_thread_func() loop cannot be exited when stuck in AudioRecord::read() because the iExitAudioThread flag can only be sampled when AudioRecord::read() returns. We remain stuck with the audio input thread running. The fix consists in modifying AudioRecord behavior in case of timeout when getting new PCM samples. We now wait only one timeout period and try to restart audio record, in case the problem is due to a media_server process crash. If this fails, we exit read() with a number of bytes read equals to 0 so that AndroidAudioInput::audin_thread_func() loop can exit. Also modified Audioflinger::RecordThread() loop so that we attempt to recover from HAL read errors. In case of read error, the input stream is forced to standby so that next read attempt does a reconfiguration and restart of the audio input device.
udioRecord.cpp
|
05bca2fde53bfe3063d2a0a877f2b6bfdd6052cf |
26-Feb-2010 |
Eric Laurent <elaurent@google.com> |
Issue 2071329: audio track is shorter than video track for video capture on sholes Add API to retrieve number of frames dropped by audio input kernel driver. Submitted on behalf of Masaki Sato <masaki.sato@motorola.com>
udioRecord.cpp
udioSystem.cpp
AudioFlinger.cpp
|
e3d91046072908f5613a21652b6da9b44043f1d5 |
27-Feb-2010 |
James Dong <jdong@google.com> |
Merge "Don't allow MediaRecorder.setParameter() to be invoked in the following states: error, prepared or recording"
|
698f476590bc9e38d4d1d4155da9efdbedd357c4 |
26-Feb-2010 |
Marco Nelissen <marcone@google.com> |
When we're in the 'playback complete' state, don't consider pausing an error. This makes 'playback complete' essentially equivalent to being paused at the end, and treats it the same as being paused at any other position.
ediaplayer.cpp
|
e284bac7757ad732d0812eb6133125434ba66d5b |
26-Feb-2010 |
James Dong <jdong@google.com> |
Don't allow MediaRecorder.setParameter() to be invoked in the following states: error, prepared or recording bug - 2362412
ediarecorder.cpp
|
f5a8385649204213dc19e1a64f4693931e048d85 |
24-Feb-2010 |
James Dong <jdong@google.com> |
Image encoding settings java API through xml configuration file - I decided to completely remove jpeg decoding related stuff from this change I think that setting is better off if it is specified by the system properties. We don't have to include MediaProfiles.h header in skia files
ediaProfiles.cpp
|
df49e8926e85088bc7d1dc7905362437c9806b69 |
22-Feb-2010 |
Eric Laurent <elaurent@google.com> |
am 8978547f: am f5fe3949: Fix issue 2459650. Merge commit '8978547f254b6b6ba2e322794aa044803f3edc2a' * commit '8978547f254b6b6ba2e322794aa044803f3edc2a': Fix issue 2459650.
|
7c7fa1b51bec497cd7f46c1bdb5bb0adfaa181b2 |
22-Feb-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2459650. This change fixes a problem where an unwanted tone is generated by audio policy manager when a MT call is answered. This is because of a policy that replaces high visibility system sounds (ringtones, alarms...) by a beep when in call. There is a transitory phase while the call is being answered where the phone state is changed to IN_CALL but the ringtone is still playing. The audio policy manager then mutes the end of the ringtone and starts playing a beep in replacement because the ringtone is categorized as high visibility. The fix consists in changing the ringtone stream type from high visibility to low visibility. This is not a problem as the only actual use case where a ringtone would be generated while in call is if another call is received. But in this case, the phone system does not generate a ringtone but a call waiting tone instead. It is therefore not required to handle a ringtone as a high visibiltiy tone that must be somehow signaled to the user while in call.
udioSystem.cpp
|
eb03f13fd3b5a4b1060cd55881934ff9c918fe8c |
18-Feb-2010 |
Kenny Root <kroot@google.com> |
Range check in MediaScanner::processDirectory Make sure we don't have an empty string before checking if it's a directory since this string is tainted. Change-Id: I5eb310ced58c3c64a7af2d11b80326efe5adbcab
ediaScanner.cpp
|
4e92c7efc68b5d7635a32dbd283ab8558ad9bdd6 |
12-Feb-2010 |
Andreas Huber <andih@google.com> |
New API on java's MediaPlayer to suspend/resume a session. related-to-bug: 2231576
MediaPlayer.cpp
ediaplayer.cpp
|
3cf613507f1e2f7bd932d921a6e222e426fd3be4 |
10-Feb-2010 |
Mathias Agopian <mathias@google.com> |
split libsurfaceflinger_client and libcamera_client out of libui
ndroid.mk
MediaPlayer.cpp
MediaRecorder.cpp
OMX.cpp
ediaplayer.cpp
ediarecorder.cpp
|
77f8531a739c46cffe7f7fd1e035de542deccf48 |
10-Feb-2010 |
Marco Nelissen <marcone@google.com> |
Do autodetection even if no locale was specified, and use the detected encoding if it is unambiguous.
ediaScannerClient.cpp
|
1d7491b19516505e0754c66a3c8cd61811c9b6a6 |
20-Jan-2010 |
James Dong <jdong@google.com> |
Initial check-in for xml-based encoder capabilities retrieval - Changed the Java API as suggested - Treat /etc/media_profiles.xml as the default xml configurtion file
ndroid.mk
ediaProfiles.cpp
|
867d2f6ce668968e463eb86b856d21525f12fd67 |
26-Jan-2010 |
Mathias Agopian <mathias@google.com> |
Simplify the MemoryDealer implementation At some point the implementation became complicated because of SurfaceFlinger's special needs, since we are now relying on gralloc we can go back to much simpler MemoryDealer. Removed HeapInterface and AllocatorInterface, since those don't need to be paramterized anymore. Merged SimpleMemory and Allocation. Made SimplisticAllocator non virtual. Removed MemoryDealer flags (READ_ONLY, PAGE_ALIGNED) Removed a lot of unneeded code.
udioRecord.cpp
udioTrack.cpp
|
2db8455d8f4468a637109d31f319ce02d9d743ec |
28-Jan-2010 |
Andreas Huber <andih@google.com> |
API Extension: Support for optionally specifying a map of extra request headers when specifying the uri of media data to be played. related-to-bug: 2393577 Original change by Andrei Popescu <andreip@google.com>
MediaPlayerService.cpp
ediaplayer.cpp
|
342e9cf388cceb807def720e40e8b0a217f4bcaa |
20-Jan-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2285561: New AudioFlinger and audio driver API needed for A/V sync Added getRenderPosition() API to IAudioFlinger to retreive number of audio frames written by AudioFlinger to audio HAL and by DSP to DAC. Added getRenderPosition() API to AudioHardwareInterface to retreive number of audio frames written by DSP to DAC. Exposed AudioTrack::getPosition() to AudioSink() to make it available to media player. Removed excessive log in AudioHardwareGeneric.
udioSystem.cpp
AudioFlinger.cpp
|
b72a396826da8bd934b9531bbd40f86d7509e71c |
25-Jan-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2378022: AudioService should direct volume control to STREAM_VOICE_CALL stream when STREAM_VOICE_CALL stream is active. Modified AudioService.getActiveStreamType() so that STREAM_VOICE_CALL is selected when a track using this stream type is playing. Chanded isMusicActive() for a more generic isStreamActive(stream) method in AudioSystem, IAudioFlinger and AudioFlinger.
udioSystem.cpp
AudioFlinger.cpp
|
0ef583f785528ef2785e6149d5964004cd1016b0 |
25-Jan-2010 |
Eric Laurent <elaurent@google.com> |
Fix issue 2363154: Speech synthesis fails to start over A2DP after media server process crash. The problem is that after a media_server crash, the value of the A2DP output handle can change. As this value is cached in AudioSystem for all client processes there can be a mismatch between the cached and actual value after a media_server restart. The fix consists in clearing the cached output handles and output to stream map values cached in AudioSystem in AudioFlingerClient::binderDied() which is called when the media_server crashes.
udioSystem.cpp
|
570a3cb7582daa030cb38eedc5eb6a06f86ecc7f |
21-Jan-2010 |
Andreas Huber <andih@google.com> |
Fix no-copy-overhead OMXCodec implementation to actually work.
OMX.cpp
|
5cb4241cbeb409f2322bd527349c080a2cf454df |
19-Jan-2010 |
Andreas Huber <andih@google.com> |
Merge "Avoid unnecessary buffer copying if at all possible, detect if running in the mediaserver process."
|
7eaa9c9385535b651064e02d05a8ffa4b2359281 |
16-Jan-2010 |
Andreas Huber <andih@google.com> |
Avoid unnecessary buffer copying if at all possible, detect if running in the mediaserver process.
OMX.cpp
|
dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675 |
16-Jan-2010 |
James Dong <jdong@google.com> |
Media server death nodification
ndroid.mk
MediaDeathNotifier.cpp
ediaplayer.cpp
ediarecorder.cpp
|
67e5a4f6f6879d512a859e5dba92e9beec7a2f91 |
08-Jan-2010 |
Andreas Huber <andih@google.com> |
Reorganize some of the stagefright implementation related to metadata.
ndroid.mk
tagefrightMediaScanner.cpp
tagefrightMediaScanner.h
|
134ee6a324c35f39e3576172e4eae4c6de6eb9dc |
16-Dec-2009 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 144b1c40e9cf08a584c50e1bef7ba3f287e81a4f Author: Andreas Huber <andih@google.com> Date: Wed Dec 16 09:28:23 2009 -0800 This H264 file shows a certain problem even better. commit 3245f1f3b7471975aeeb824a756c987abd610f55 Author: Andreas Huber <andih@google.com> Date: Wed Dec 16 09:20:08 2009 -0800 Using only the QA testfiles now. commit 074817eb3816c5dd70858a3594e3b92d799d873b Author: Andreas Huber <andih@google.com> Date: Tue Dec 15 16:17:39 2009 -0800 Yay, roles are back again now that the API is in place. commit 6d847e4932cc38301ae27cb7283b7f1553a95457 Author: Andreas Huber <andih@google.com> Date: Tue Dec 15 13:01:20 2009 -0800 Added commandline option for specifying the random seed for reproducable tests. commit 62ab37b26336eaa67e49791c41c996acb6acee3f Author: Andreas Huber <andih@google.com> Date: Mon Dec 14 10:53:27 2009 -0800 When issuing a seek it is important that only the first MediaSource::read call has the seek option. commit e77c46644b2fb6862bafa3569f7d304252074f1e Author: Andreas Huber <andih@google.com> Date: Mon Dec 7 16:39:07 2009 -0800 Make sure the tests are actually built, sp<OMXCodec> becomes sp<MediaSource> commit 6df56915bd55a9445b3c6f953d3cc251d81579b8 Author: Andreas Huber <andih@google.com> Date: Thu Dec 3 14:25:36 2009 -0800 Temporarily disable support for querying the roles of OMX components. commit 31bb26930df9e3658dea684cedb4b0f1a06a4a88 Author: Andreas Huber <andih@google.com> Date: Tue Dec 1 13:36:52 2009 -0800 Disregard EOS events, slightly change the way the EOS flag on output buffers is handled. commit 4c382fbc9aebee8197d5988d04378062809e7c48 Author: Andreas Huber <andih@google.com> Date: Tue Dec 1 09:37:24 2009 -0800 New random seek test for the codec tests. Fixed "sticky" end-of-output-buffers flag behaviour in OMXCodec. commit c762eac3e44309592b61a168d66e091cf609fa03 Author: Andreas Huber <andih@google.com> Date: Tue Nov 3 14:13:43 2009 -0800 Fix a typo. commit 50540a59b65c7d476b0193c7494cd75895e6ca6d Author: Andreas Huber <andih@google.com> Date: Tue Nov 3 09:48:35 2009 -0800 Some more fine tuning of the unit tests, make MPEG4Extractor less verbose. commit 1157a7e52a0636706caa235abe16d2ff8a0b8140 Author: Andreas Huber <andih@google.com> Date: Wed Oct 28 12:01:01 2009 -0700 Changes to the IOMX::listNodes API, this now returns the component's roles as well, unit tests now test all components in all supported roles by default. commit 30fbf2d8c6cb927689f7ba75eb550a81e9df488a Author: Andreas Huber <andih@google.com> Date: Mon Oct 26 09:45:26 2009 -0700 Initial check-in of unit tests for OMX components.
OMX.cpp
|
a410d5a7150d6b14f98197e570c78ea7b6a65091 |
07-Dec-2009 |
Eric Laurent <elaurent@google.com> |
am 6d42d806: Merge change I9cc489a2 into eclair Merge commit '6d42d80653f2c41f3e72a878a1d9a6f9693b89f7' into eclair-mr2 * commit '6d42d80653f2c41f3e72a878a1d9a6f9693b89f7': Fix issue 2304669: VoiceIME: starting and canceling voice IME yields persistent "error 8" state on future attempts and breaks voice search.
|
148b266afe2ac92b5616c24e8d5160e6f9242f69 |
05-Dec-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2304669: VoiceIME: starting and canceling voice IME yields persistent "error 8" state on future attempts and breaks voice search. Fixed AudioFlinger::openInput() broken in change ddb78e7753be03937ad57ce7c3c842c52bdad65e so that an invalid IO handle (0) is returned in case of failure. Applied the same correction to openOutput(). Modified RecordThread start procedure so that a failure occuring during the first read from audio input stream is detected and causes the record start to fail. Modified RecordThread stop procedure to make sure that audio input stream fd is closed before we exit the stop function. Fixed AudioRecord JAVA and JNI implementation to take status of native AudioRecord::start() into account and not change mRecordingState to RECORDSTATE_RECORDING if start fails.
udioRecord.cpp
|
adf7d77752b3dbd47badc8819aa2674860d6ccba |
04-Dec-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change I6c84d731 into eclair-mr2 * changes: Media/ToneGenerator: Change tone format for TONE_CDMA_ANSWER
|
97494da9d418b599fa1b9930487b90c978357634 |
04-Dec-2009 |
Andreas Huber <andih@google.com> |
I accidentally broke this code while refactoring MediaScanner. This is the fix.
tagefrightMediaScanner.cpp
|
413f523afe96aff02d2b0a7459127b8f67b2b43c |
03-Dec-2009 |
Andreas Huber <andih@google.com> |
Refactor MediaScanner. Some steps on the way towards being able to build the tree without OpenCore.
ndroid.mk
ediaScanner.cpp
ediaScannerClient.cpp
tagefrightMediaScanner.cpp
tagefrightMediaScanner.h
utodetect.cpp
utodetect.h
|
981594f5c3697c3330bdbd4bb5a743fb9f01e6ab |
14-Oct-2009 |
Naveen Kalla <nkalla@quicinc.com> |
Media/ToneGenerator: Change tone format for TONE_CDMA_ANSWER Tone format for TONE_CDMA_ANSWER should be 660Hz + 1000Hz, with a 500ms ON duration.
oneGenerator.cpp
|
a7c816c4bdb72cf4f9fe853a96cd7efdb394006d |
24-Nov-2009 |
Dave Sparks <davidsparks@android.com> |
am 16cc72bd: Fix simulator build. Merge commit '16cc72bdef471ffeee3f61eba8262783de248b04' into eclair-mr2 * commit '16cc72bdef471ffeee3f61eba8262783de248b04': Fix simulator build.
|
827f3004421aacb6bceaf772ac825d4f2d3006e4 |
24-Nov-2009 |
Dave Sparks <davidsparks@android.com> |
am 8424ec32: Merge change I0f9a53d4 into eclair Merge commit '8424ec323b2bc38887370c75e2c1fcd84bcdb013' into eclair-mr2 * commit '8424ec323b2bc38887370c75e2c1fcd84bcdb013': Set metadata retriever thread group to the caller's group.
|
f311c557729099d002f4aae37c402a8287912369 |
24-Nov-2009 |
Dave Sparks <davidsparks@android.com> |
Fix simulator build.
MediaMetadataRetriever.cpp
|
ec4dde75955f87e5afea3f59ef991130257f3f3a |
24-Nov-2009 |
Dave Sparks <davidsparks@android.com> |
Set metadata retriever thread group to the caller's group. This patch modifies the native binder interface to the metadata retriever to pass the caller's thread group across the binder interface. On the server side, the thread scheduler group is set to the caller's scheduler group temporarily and restored after the request has completed. This patch also reverts a previous patch where the priority of the thread was forced to a low priority foreground thread. This should give apps more control over the priority of their metadata retrieval, particularly allow background process to run without hogging the CPU.
MediaMetadataRetriever.cpp
|
bf89c099fc97717e3008a481aeddc76c1ac5e00d |
21-Nov-2009 |
Eric Laurent <elaurent@google.com> |
am e7800946: Merge change I49f02be9 into eclair Merge commit 'e7800946a42c0ebe8e0b3f6eba04a96a9641aaff' into eclair-mr2 * commit 'e7800946a42c0ebe8e0b3f6eba04a96a9641aaff': Issue 2265163: Audio still reported routed through earpiece on sholes
|
6100d2d60517ff33ed8eb35d0b7ea63cde0831c9 |
19-Nov-2009 |
Eric Laurent <elaurent@google.com> |
Issue 2265163: Audio still reported routed through earpiece on sholes This is a second attempt to fix the audio routed to earpiece syndrom. The root cause identified this time is the crash of an application having an active AudioTrack playing on the VOICE_CALL stream type. When this happens, the AudioTrack destructor is not called and the audio policy manager is not notified of the track stop. Results a situation where the VOICE_CALL stream is considered as always in use by audio policy manager which makes that audio is routed to earpiece. The fix consists in moving the track start/stop/close notification to audio policiy manager from AudioTrack to AudioFlinger Track objet. The net result is that in the case of a client application crash, the AudioFlinger TrackHandle object (which implements the remote side of the IAudioTrack binder interface) destructor is called which in turn destroys the Track object and we can notify the audio policy manager of the track stop and removal. The same modification is made for AudioRecord although no bug related to record has been reported yet. Also fixed a potential problem if record stop is called while the record thread is exiting.
udioRecord.cpp
udioTrack.cpp
|
057eacf4578ac6b90ee18c524670e01445bf2732 |
13-Nov-2009 |
Eric Laurent <elaurent@google.com> |
am fddfb9ae: Merge change Iad79689a into eclair Merge commit 'fddfb9ae03a2730ac5ce27fa4c47b7d3a0285d0f' into eclair-mr2 * commit 'fddfb9ae03a2730ac5ce27fa4c47b7d3a0285d0f': Improvements for issue 2197683: English IME key-press latency is noticeably higher on passion than sholes
|
2b584244930c9de0e3bc46898a801e9ccb731900 |
10-Nov-2009 |
Eric Laurent <elaurent@google.com> |
Improvements for issue 2197683: English IME key-press latency is noticeably higher on passion than sholes This change goes with a kernel driver change that reduces the audio buffer size from 4800 bytes (~27ms) to 3072 bytes (~17ms). - The AudioFlinger modifcations in change 0bca68cfff161abbc992fec82dc7c88079dd1a36 have been removed: the short sleep period was counter productive when the AudioTrack is using the call back thread as it causes to many preemptions. - AudioFlinger mixer thread now detects long standby exit time and in this case anticipates start by writing 0s as soon as a track is enabled even if not ready for mixing. - AudioTrack::start() is modified to start call back thread before starting the IAudioTrack so that thread startup time is masked by IAudioTrack start and mixer thread wakeup time.
udioTrack.cpp
|
5b65c7043dada0c89d3a941742666ac40ea35746 |
05-Nov-2009 |
Andreas Huber <andih@google.com> |
DO NOT MERGE: Squashed commit of the following: commit 08259dd3dc9026887f9bbfedaf45866eb56ea9bc Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 12:02:31 2009 -0800 DO NOT MERGE: Use PV for metadata extraction even if stagefright is used for playback. commit 991832fe4dc012e51d3d9ed8d647c7f09991858f Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:24:11 2009 -0800 DO NOT MERGE: Do not assert if we encounter OMX_StateInvalid. All bets are off though. commit cec45cf302d9218fe79956cbe8a462d7ca3a10bb Author: Andreas Huber <andih@google.com> Date: Mon Oct 26 16:11:54 2009 -0700 DO NOT MERGE: When freeing an OMX node, attempt to transition it from its current state all the way to "Loaded" in order to properly free any allocated buffers. commit 34a1e885ef9113d68acbc26d36fcc47fdebbed84 Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:10:49 2009 -0800 DO NOT MERGE: Fix heap corruptin in OMXNodeInstance. commit 5a47f7439a1298b330541a7e4e647a8b44487388 Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:08:19 2009 -0800 DO NOT MERGE: Fix seek-on-initial-read behaviour of OMXCodec. commit 45bed64722501b9f411a2940aff5aff4cc4d2e98 Author: Andreas Huber <andih@google.com> Date: Thu Nov 5 11:02:23 2009 -0800 DO NOT MERGE: Renaming string.h to stagefright_string.h to avoid conflicts. commit 6738e306a50196f31a73d4fc7b7c45faff639903 Author: Andreas Huber <andih@google.com> Date: Thu Oct 15 13:46:54 2009 -0700 DO NOT MERGE: Reimplement the OMX backend for stagefright. Besides a major cleanup and refactoring, OMX is now a singleton living in the media server, it listens for death notifications of node observers/clients that allocated OMX nodes and performs/attempts cleanup. Changed APIs to conform to the rest of the system.
MediaPlayerService.cpp
OMX.cpp
|
1c02bfb63ea6e1d1630a09229044d64be200a9ef |
05-Nov-2009 |
Eric Laurent <elaurent@google.com> |
am 67b69292: Merge change I93f500a5 into eclair Merge commit '67b692920c18f99b096dce285adc6f7439fa866c' into eclair-mr2 * commit '67b692920c18f99b096dce285adc6f7439fa866c': Fix issue 2203561: Sholes: audio playing out of earpiece.
|
34f1d8ecd23169a5f299937e3aaf1bd7937578a0 |
04-Nov-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2203561: Sholes: audio playing out of earpiece. Create a new IAudioTrack interface to AudioFlinger when start() fails due to a broken pipe error. Do the same if start fails due to the same error after time out in obtainBuffer(). Do not indicate that the AudioTrack is started to AudioPolicyManager if IAudioTrack start fails. This avoids that an AudioTrack keeps a dead IAudioTrack after a media server crash. Same modifications for AudioRecord. Add a flag to ToneGenerator indicating that the callback thread can call Java. Without it, when the media server crashes and restarts, the AudioSystem error callback will crash in JNI if the IAudiotrack is created from AudioTrack callback thread.
udioRecord.cpp
udioTrack.cpp
AudioRecord.cpp
AudioTrack.cpp
oneGenerator.cpp
|
fe44b7a8b2b8da50a7a78f4b7e034b6d01785e44 |
24-Oct-2009 |
Eric Laurent <elaurent@google.com> |
am bf96aaad: Merge change Icf10db28 into eclair Merge commit 'bf96aaadd46fb5b0884070177faa16ec4f22e2ba' into eclair-mr2 * commit 'bf96aaadd46fb5b0884070177faa16ec4f22e2ba': Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.
|
88e5ad9f0d9b35d4868347bce47b28b7358b32e4 |
24-Oct-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change Icf10db28 into eclair * changes: Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume.
|
09d88b00dbd0a04ed45a661590cca49d6e5b42f5 |
23-Oct-2009 |
Eric Laurent <elaurent@google.com> |
am dd28d563: Fix 2209967 Tonegenerator: mutex not release in startTone() upon timeout waiting for the stop sequence to complete. Merge commit 'dd28d56368441537ec5eb42150516416fdbf10ad' into eclair-mr2 * commit 'dd28d56368441537ec5eb42150516416fdbf10ad': Fix 2209967 Tonegenerator: mutex not release in startTone() upon timeout waiting for the stop sequence to complete.
|
a9a4390989072d579eedab6b71fb41248b3ad8fe |
23-Oct-2009 |
Eric Laurent <elaurent@google.com> |
Fix 2209967 Tonegenerator: mutex not release in startTone() upon timeout waiting for the stop sequence to complete. Unlock mLock mutex when exiting upon wait stop timeout condition. Increase timeout delays to avoid timing out when A2DP exits standby.
oneGenerator.cpp
|
f0ee6f4055e26fb35d9c526a596668a4dc9da5ba |
21-Oct-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2192181: AudioFlinger must provide separated methods to set VOICE_CALL stream volume and down link audio volume. Added setVoiceVolume() method to AudioSystem, AudioFlinger, IAudioFlinger, AudioPolicyService. Removed call to AudioHardwareInterface::setVoiceVolume() from AudioFlinger::setStreamVolume().
udioSystem.cpp
AudioFlinger.cpp
|
318ad9c1d9d6515026dfc2c021359d27decaa7a1 |
15-Oct-2009 |
Andreas Huber <andih@google.com> |
Reimplement the OMX backend for stagefright. Besides a major cleanup and refactoring, OMX is now a singleton living in the media server, it listens for death notifications of node observers/clients that allocated OMX nodes and performs/attempts cleanup. Changed APIs to conform to the rest of the system.
MediaPlayerService.cpp
OMX.cpp
|
36efa039efaae4526791336cb688032d22b34bec |
08-Oct-2009 |
Andreas Huber <andih@google.com> |
Some decoders will return an error on OMX_EmptyThisBuffer to indicate that they don't support the media format, deal with this.
OMX.cpp
|
e33e00e931d1381d402484aa5cde67e540e3c82c |
06-Oct-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2139634: DTMF tones on Sholes popping, hissing (audio latency too high). This change is a complement to the main fix in kernel driver for the same issue (partner change #1250). It removes clicks sometimes heard after the end of the tones while audio flinger is sending 0s to the audio output stream. The problem was that the sleep time between two writes was more than the duration of one audio output stream buffer which could cause some underrun. Also fixed a recent regression in ToneGenerator that made that the end of previous tone was repeated at the beginning of current one under certain timing circumstances when the maximum tone duration was specified.
oneGenerator.cpp
|
10dbb8e97e7a81ca4867663b5517f048820b3094 |
20-Sep-2009 |
Marco Nelissen <marcone@google.com> |
Music visualizer support hack. This currently assumes 44k stereo (won't crash on other formats, but won't give the correct results either), and links statically with libspeex to get FFT data, increasing the size of libmedia by about 45kb.
ndroid.mk
MediaPlayerService.cpp
ediaplayer.cpp
|
824b6a4a67166c3937400702944f659bd0d5d386 |
24-Sep-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2142613: ToneGenerator: short tones sometimes don't play on sholes or over A2DP. When the AudioTrack callback notification size is relatively high (Which is the case on Sholes and over A2DP), it is likely that the end of tone is reached during the first callback. In this case, the AudioTrack is stopped before exiting the callback which causes 2 problems: - 1: If the AudioFlinger thread is scheduled before we exit the ToneGenerator callback, the track can be stopped and reset before the data is actually marked as present in the buffer by the AudioTrack callback => no audio will be processed by AudioFlinger. - 2: In this case, the data write index in the AudioTrack buffer is incremented after the track was reset by the AudioFlinger which leaves unplayed data in the buffer. This data will be played the next time the AudioTrack is started if not flushed in between. The fix consists in adding an intermediate state to ToneGenerator state machine so that we exit the callback function when the stop condition is reached and stop the AudioTrack the next time we execute the callback.
oneGenerator.cpp
|
1b84df1a0823fbcb9cec754311f53eaccfe85ae3 |
15-Sep-2009 |
Andreas Huber <andih@google.com> |
Added an API IOMX::createRendererFromJavaSurface. This api allows to instantiate a renderer by specifying the hosting java Surface object. This hides the implementation details of (java-)Surface, (native-)Surface and friends.
ndroid.mk
OMX.cpp
|
5841db78dff14898538200287d246577b1fc37e2 |
09-Sep-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2107584: media server crash when AudioFlinger fails to allocate memory for track control block. AudioFlinger: verify that mCblk is not null before using it in Track and RecordTrack contructors. IAudioFlinger: check result of remote transaction before reading IAudioTrack and IAudioRecord. IAudioTrack and IAudioRecord: check result of remote transaction before reading IMemory.
AudioFlinger.cpp
AudioRecord.cpp
AudioTrack.cpp
|
85fa14d35468acca07ce0085d67b909f673fae07 |
07-Sep-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1992233: DTMF tones on Sholes is really long. Add a parameter to ToneGenerator.startTone() allowing the caller to specify the tone duration. This is used by the phone application to have a precise control on the DTMF tone duration which was not possible with the use of delayed messaged. Also modified AudioFlinger output threads so that 0s are written to the audio output stream when no more tracks are ready to mix instead of just sleeping. This avoids an issue where the end of a previous DTMF tone could stay in audio hardware buffers and be played just before the beginning of the next DTMF tone.
oneGenerator.cpp
|
a9c322e398a1f5fdcace3b8b73967f010b1c31ca |
27-Aug-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2045911: Camera Shutter tone does not play correctly while listening to music. Add the possibility to delay routing and volume commands in AudioPolicyClientInterface. The delay is not blocking for the caller.
udioSystem.cpp
|
c6b59b7c8acf7c6e7fbb93470aecc2c0ebe1b084 |
17-Aug-2009 |
Andreas Huber <andih@google.com> |
Support for marshalling pointers / intptr_t in Parcel. Some refactoring to eliminate code duplication in Parcel implementation.
OMX.cpp
|
693d271e62a3726689ff68f4505ba49228eb94b2 |
14-Aug-2009 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 5bb012f0065f7ffaaeb4f569d71f0e3a8d6b19c3 Author: Andreas Huber <andih@google.com> Date: Fri Aug 14 10:40:08 2009 -0700 An attempt at fixing export using the qcom encoders. More quirks. commit 0690e76bfa48118a68287ccf1bbfa82febaa620c Author: Andreas Huber <andih@google.com> Date: Fri Aug 14 09:08:28 2009 -0700 Callbacks are now dispatched from a separate thread in OMX. commit c6571a039526df29b6343f9a1971dbc019088c61 Author: Andreas Huber <andih@google.com> Date: Thu Aug 13 15:42:25 2009 -0700 Massive API changes throughout stagefright, smart pointers everywhere. commit 900612af6a0555664d9ba195112cd859491265f4 Author: Andreas Huber <andih@google.com> Date: Thu Aug 13 13:33:12 2009 -0700 OMXCodecs now properly shutdown. commit 96732f05e1b0603dcd1b11f16a23512592eeb4f5 Author: Andreas Huber <andih@google.com> Date: Thu Aug 13 12:04:04 2009 -0700 More work on JPEG decoding using the hardware OMX component. commit 63839a073ac393e3a130434ba467969053b694ad Author: Andreas Huber <andih@google.com> Date: Wed Aug 12 13:13:31 2009 -0700 An attempt to drive the JPEG decoder OMX node. commit 3ac2fe5ab2926eda81b2123610b2434c645294ff Author: Andreas Huber <andih@google.com> Date: Tue Aug 11 16:38:21 2009 -0700 Renamed StateMachine to OMXCodec and put it in its proper place. commit 247da75a96bf8881956413023dd49a84d5b4f5b2 Author: Andreas Huber <andih@google.com> Date: Tue Aug 11 16:06:19 2009 -0700 Statemachine is now a full-fledged MediaSource. commit 045244f6771fa0b9b329495c953afda900a84b71 Author: Andreas Huber <andih@google.com> Date: Fri Aug 7 09:16:54 2009 -0700 Properly setup the input format when exporting to AMR audio. commit 271b984cb32c5cd9e46e3f90ae121f334e4b8da9 Author: Andreas Huber <andih@google.com> Date: Thu Aug 6 09:59:38 2009 -0700 Added some code to test audio encoding to the OMX harness. commit 79af4748e4af33bd66d3fbac606e332a69741cf4 Author: Andreas Huber <andih@google.com> Date: Wed Aug 5 14:36:22 2009 -0700 Merge the old OMXDecoder and the new, shiny, StateMachine code. commit 91cf5dd77a8762bc10a0b2ffce35e3bbeb262231 Author: Andreas Huber <andih@google.com> Date: Tue Aug 4 17:41:43 2009 -0700 A new harness to test OMX node compliance (and quirks).
OMX.cpp
|
5a22b909c9e8fc0d9321dcc014706a790b26b971 |
11-Aug-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2045983 ToneGenerator: fix void statement. There is a void statement at line 917 of ToneGenerator.cpp: mState == TONE_IDLE; This problem is harmless as in current code this execution path is never taken; it can only happen if a "new" operator fails in prepareWave() which is a case we usually consider as unlikely in android audio framework.
oneGenerator.cpp
|
f4148b55c5d6f68b22462e3880015fefa91ae7c6 |
07-Aug-2009 |
Andreas Huber <andih@google.com> |
Expose a variation of the createRenderer API that works on a plain Surface.
OMX.cpp
|
408b8e1073385d0d09bb96b9952f84731a0b4aeb |
07-Aug-2009 |
Andreas Huber <andih@google.com> |
Deprecate/remove now unused socketpair ipc communication in favour of exclusive binder use.
OMX.cpp
|
23aea9771d800ce43ffd8a23ad64ed6cead4b159 |
07-Aug-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change 9674 * changes: Fix problem in AudioTrack with 8 bit PCM and direct output.
|
fa2877b9ea48baed934b866d2ab3658b69c4c869 |
28-Jul-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 2001214: AudioFlinger and AudioPolicyService interfaces should not use pointers as handles to inputs and outputs. Use integers instead of void* as input/output handles at IAudioFlinger and IAudioPolicyService interfaces. AudioFlinger maintains an always increasing count of opened inputs or outputs as unique ID.
udioSystem.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioPolicyService.cpp
|
3302526f6276911b2dc40c731ea7fa0e7972d908 |
04-Aug-2009 |
Eric Laurent <elaurent@google.com> |
Fix problem in AudioTrack with 8 bit PCM and direct output. Do not perform 8 to 16 bit conversion in AudioTrack write() and processAudioBuffer() if direct output flag is set.
udioTrack.cpp
|
8b938cdab5bd3d074d9b41bc2915fcfc11e47f27 |
31-Jul-2009 |
Andreas Huber <andih@google.com> |
The IOMX interface now instantiates IOMXRenderers to hide the details of hardware accelerated blitting.
OMX.cpp
|
c2f1f07084818942352c6bbfb36af9b6b330eb4e |
17-Jul-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1795088 Improve audio routing code Initial commit for review. Integrated comments after patch set 1 review. Fixed lockup in AudioFlinger::ThreadBase::exit() Fixed lockup when playing tone with AudioPlocyService startTone()
ndroid.mk
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioPolicyService.cpp
etPlayer.cpp
oneGenerator.cpp
|
a64c8c79af1a15911c55306d83a797fa50969f77 |
21-Jul-2009 |
niko <niko@google.com> |
Added native metadata support. Metadata.java: Fixed typo 8k != 8092. The comment was correct though. In Metadata.h, the new Metadata class is declared in the ns android::media to limit the chances of conflict with other packages. The MetadataType in MediaPlayerInterface is gone and moved to Metadata as an inner typedef. Similarly the SortedVector<MetadataType> instance have been replace by a new type Metadata::Filter. All the keys declared in the java counterpart are also in Metadata.h. Metadata.cpp: Contains the implementation of the native metadata packing. There an associated change in the opencore package that should go in at the same time as this one.
ndroid.mk
etadata.cpp
|
20111aa043c5f404472bc63b90bc5aad906b1101 |
15-Jul-2009 |
Andreas Huber <andih@google.com> |
Squashed commit of the following: commit 8d179995654c19d9094e51989dc84ed0deba6e04 Author: Andreas Huber <andih@google.com> Date: Tue Jul 14 16:30:40 2009 -0700 Protect stagefright code with BUILD_WITH_STAGEFRIGHT build-define. commit 99b41acb58c34e8f024c30c833a09fd7b31c4e1f Author: Andreas Huber <andih@google.com> Date: Tue Jul 14 14:06:00 2009 -0700 OMX::list_nodes API, stagefright --list now lists all available OMX components. commit 94a74c5b24aae6d7e446fff83d62ae3a57dc351b Author: Andreas Huber <andih@google.com> Date: Mon Jul 13 16:04:29 2009 -0700 Reenabled "record" commandline application to test encoding, support for h263 codec specific data when writing to .mp4. commit d363dd74f611577567c66d25900d6264c306468c Author: Andreas Huber <andih@google.com> Date: Mon Jul 13 10:59:58 2009 -0700 Make non-socket communication in IOMX the default. commit e89fc82c4fd138c88339887baf72f1d0e67f8660 Author: Andreas Huber <andih@google.com> Date: Mon Jul 13 10:32:33 2009 -0700 The OMX interface now optionally supports communication through the binder only (no sockets involved) commit 28611de11223fba65299787cdd33f7fdbd6a60a3 Author: Andreas Huber <andih@google.com> Date: Fri Jul 10 15:09:13 2009 -0700 Split off the logic to render to a Surface (not ISurface!) into SurfaceRender.{cpp,h} commit c0cfa885faaeb17d3fc5436f6447b61708bd6fe1 Author: Andreas Huber <andih@google.com> Date: Fri Jul 10 12:21:46 2009 -0700 Fix display dimensions vs. decoded dimensions display issues, unfortunately breaks software rendering a bit... commit ae209a2b5d09caed5dd383c910f238926aaa8fc6 Author: Andreas Huber <andih@google.com> Date: Fri Jul 10 09:33:29 2009 -0700 Simple video decoder performance test in "stagefright" commandline tool. commit 59fe7840111d6f46dd3c48f4950146aed962dbd2 Author: Andreas Huber <andih@google.com> Date: Thu Jul 9 16:05:12 2009 -0700 StagefrightPlayer: Properly publish video dimensions by notifying the listener. commit 51b6598f0e47be5e12d77f1d14e111e71c593638 Author: Andreas Huber <andih@google.com> Date: Thu Jul 9 11:38:15 2009 -0700 MediaPlayerInterface::AudioSink now supports the specification of a callback for pull-based audio. commit 31ce53375d748da3e7d30e993ce89dae97fd65ea Author: Andreas Huber <andih@google.com> Date: Wed Jul 8 17:23:37 2009 -0700 Proper support for pushing audio to a specified AudioSink interface. Still not bulletproof: video falls behind frequently. commit a23e312b10631a5d47f5c9831205beac6b84ab36 Author: Andreas Huber <andih@google.com> Date: Wed Jul 8 15:10:13 2009 -0700 IGenesisPlayer and friends are no more, java interface now uses local playback instead of playing inside the media server process. commit 42ee5c06ab5ba1c16f50472b0b26a0526635c73c Author: Andreas Huber <andih@google.com> Date: Wed Jul 8 13:17:03 2009 -0700 MP3 extractor now supports seeking (only fixed bitrate files currently supported) commit 96a790405763bfa738d1c6845c99a9fdf579b66f Author: Andreas Huber <andih@google.com> Date: Tue Jul 7 10:53:54 2009 -0700 Keeping up-to-date with new master-gl changes, removing CameraSource for now, removing unnecessary commandline utilities from the build. commit 6c9dcb7c628c0347154dd7f37913a3a5f04deb99 Author: Andreas Huber <andih@google.com> Date: Mon Jul 6 16:40:02 2009 -0700 Finally take advantage of the fact that the Qcom OMX decoders already place the output buffers into memory accessible by the hardware yuv converter and avoid extra allocations and memcpys in that case. Split of the render logic into subclasses of VideoRenderer. commit e8d46e81cffc15ffb0bdf03f511e4a4497ca7621 Author: Andreas Huber <andih@google.com> Date: Mon Jul 6 12:18:29 2009 -0700 Added a few more cases of valid MPEG4 files to the sniffer, fixed end of stream notifications in MPEG4 files. commit 88bffc5ed4033a607080f8777a1c0ec9e3e079de Author: Andreas Huber <andih@google.com> Date: Thu Jul 2 12:25:03 2009 -0700 MediaPlayerImpl now properly pauses/resumes instead of tearing down the decoder chains and starting back up from the beginning. commit 732aa0a87c7e8d8a10776b275712649954962414 Author: Andreas Huber <andih@google.com> Date: Wed Jul 1 14:58:56 2009 -0700 Remove pthread_mutex_* and pthread_cond_* in favour of Mutex and Condition. commit 669e5944b2fe0542a3b8dba0c441a94503e99fb0 Author: Andreas Huber <andih@google.com> Date: Wed Jul 1 14:43:02 2009 -0700 Proper support for end-of-stream signalling of MediaSources. commit afb038f2dc594c742e554b2d42b86ffc7434e3fc Author: Andreas Huber <andih@google.com> Date: Tue Jun 30 16:48:03 2009 -0700 Support for the "sniffing" of datasources to determine their probable mime type (along with confidence). Slightly refactored the MP3Extractor to share common code with the sniffer. commit ed3644b8bd56807e1db4b32433a93a2467f1f3c5 Author: Andreas Huber <andih@google.com> Date: Fri Jun 26 13:27:52 2009 -0700 I don't think prepare should automatically start the player. commit 11eb9b49dc4a0819d366682817cba68613f4fe12 Author: Andreas Huber <andih@google.com> Date: Fri Jun 26 11:09:22 2009 -0700 Somewhat better timing information implemented in the MP3Extractor. commit cab023a1751735c0ed26c8493498a91d8644c6c9 Author: Andreas Huber <andih@google.com> Date: Thu Jun 25 15:41:56 2009 -0700 Initial checkin for support of mp3 content, extraction and playback. Media extractors now abstracted in MediaExtractor baseclass. commit 40f4146bb3c647e56690dd9b0fa3ffdea60030dc Author: Andreas Huber <andih@google.com> Date: Wed Jun 24 10:41:12 2009 -0700 Make sure we only allocate surface buffers if there is video to be played. commit 7f85e7d92fe81740e102e09905b19354f4ac178e Author: Andreas Huber <andih@google.com> Date: Wed Jun 24 10:19:32 2009 -0700 Clean up a failed merge and implement stub for new API in MediaPlayerBase. commit f0e9d494a4c03402ea7b54891848ca5a50c421b2 Author: Andreas Huber <andih@google.com> Date: Fri Jun 12 15:38:03 2009 -0700 Support yuv420->rgb565 conversion if hardware color conversion is unavailable. commit 87223248b3099cd5261b94169f84cfd1eba56a8f Author: Andreas Huber <andih@google.com> Date: Fri Jun 12 09:35:56 2009 -0700 Remove unimplemented and currently unnecessary blocking option from MediaSource::ReadOptions. commit e07e651f0325892b797f3eb64dbeca0f317afdfd Author: Andreas Huber <andih@google.com> Date: Wed Jun 10 16:26:42 2009 -0700 Enable assertions in HTTPDataSource. commit 0dc97adebea1721156880f4b3d5c70f8d50c53b2 Author: Andreas Huber <andih@google.com> Date: Wed Jun 10 12:34:39 2009 -0700 delete foo. commit 7f05845dda496e7defee284d32509d127e785784 Author: Andreas Huber <andih@google.com> Date: Wed Jun 10 12:34:08 2009 -0700 added foo. commit e432970c51eeec4e5d549bdb3e2d3e48ffb4f0e7 Author: Andreas Huber <andih@google.com> Date: Wed Jun 10 11:44:31 2009 -0700 Make sure to initialize all fields in _all_ constructors... Use a Mutex instead of the raw pthread_mutex_t. commit d6286a6bbca639952491448fa3e609b775a8a814 Author: Andreas Huber <andih@google.com> Date: Tue Jun 9 17:11:49 2009 -0700 send_command is now implemented twice... ugly hack to get both shutdown working correctly and startup as well... playback now "works" on the emulator, too. commit 8d657e004677a7c5dae4479e8519bcaa94c18aad Author: Andreas Huber <andih@google.com> Date: Tue Jun 9 11:58:55 2009 -0700 Instead of erasing codec specific data once it's been output to the omx node, retain the data and just rewind after a stop. commit 279fede6ba35cbc37c35616c53406bf2c9720202 Author: Andreas Huber <andih@google.com> Date: Tue Jun 9 10:58:11 2009 -0700 Various fixes related to play/pause. Decoder now properly frees OMXMediaBuffers, made MemoryDealer destructor protected instead of public to prevent accidental stack-allocation of MemoryDealer objects. commit 0f717f15a6328efd3f34082929cd8ad2351095a9 Author: Andreas Huber <andih@google.com> Date: Tue Jun 9 08:44:12 2009 -0700 Make sure to rewind codec specific data on OMXDecoder::stop and reset AudioPlayer's notion of time mapping. commit 0cfb63e33270daf9b215214608ab383f93a31823 Author: Andreas Huber <andih@google.com> Date: Mon Jun 8 14:25:48 2009 -0700 Massive rename. commit 30ed8f476c4431a5275538958b3e281bd17d5eab Author: Andreas Huber <andih@google.com> Date: Mon Jun 8 13:52:41 2009 -0700 send_command and fill/empty buffer commands must be executed in sequence, send_command is now dispatched over the socket instead of through the binder interface to ensure this. commit b832d04011b2dd8a9632eb7e575bfe1addd1270d Author: Andreas Huber <andih@google.com> Date: Mon Jun 8 10:21:17 2009 -0700 MediaBuffers can now be "clone()", they sit on top of the same data but have their own range and metadata. Once a clone's refcount drops to 0 it decrements the refcount on the original buffer. commit 4e944672808bdf1ed40a69f3f602f93ebf7b4049 Author: Andreas Huber <andih@google.com> Date: Mon Jun 8 10:01:01 2009 -0700 Split MediaBuffer.h into MediaBufferGroup.h and MediaBuffer.h, same with their respective source files. commit ddb7529b4de4828db51432bd405fddd76cfa3b6a Author: Andreas Huber <andih@google.com> Date: Fri Jun 5 16:30:25 2009 -0700 More fudging with A/V sync... commit 1e5a4d8df08237b58c06c6527a33152ae931addf Author: Andreas Huber <andih@google.com> Date: Fri Jun 5 11:54:20 2009 -0700 API cleanup of MediaSource. Got rid of MediaRing as it really doesn't serve a purpose if OMX decoders are used. commit 0953c65232aa9753d17d2e25c5f5526eb810cf13 Author: Andreas Huber <andih@google.com> Date: Thu Jun 4 16:59:19 2009 -0700 Experimental TimedEventQueue and an attempt at a cleaner player implementation using it, OMXDecoder is now a little less verbose. commit 2085b8ea9484a21fa11f94194a27405d413aeecc Author: Andreas Huber <andih@google.com> Date: Thu Jun 4 10:17:01 2009 -0700 Properly bail out of the AV sync loop if the MediaPlayerImpl is stopped. commit 471f143458a8a0d93cb1bf9568c63c3967279dc6 Author: Andreas Huber <andih@google.com> Date: Wed Jun 3 17:32:27 2009 -0700 Now this is much better AV sync, defer seeking the audio source until we know where the video source synced to. commit 4010d371dbe62ce4971e13437776cba32cb0bb3d Author: Andreas Huber <andih@google.com> Date: Wed Jun 3 16:01:07 2009 -0700 Tweaked some of the heuristics in AV sync, OMXDecoder is now a little less verbose, seek to a sync sample at or _after_ the requested position. commit f3d4af1d5a4ac31fa02271b000f6c7ec593f0da9 Author: Andreas Huber <andih@google.com> Date: Wed Jun 3 15:33:58 2009 -0700 Change the TimeSource interface's APIs, prefer microseconds over milliseconds now, changed the way MediaPlayerImpl does AV sync. commit 08bb46fa61d12e852a424698ddb0c90700328f6e Author: Andreas Huber <andih@google.com> Date: Wed Jun 3 11:57:24 2009 -0700 Using framework's Mutex and Condition classes instead of pthread functions, much saner locking in OMXDecoder. commit 4d77b4e09e59bbf8c1af009ae7dc62b10af52fd6 Author: Andreas Huber <andih@google.com> Date: Tue Jun 2 17:12:03 2009 -0700 MediaSources now publish their format. commit 7e429a26c57bf936e1a08035d2d11839f9f00310 Author: Andreas Huber <andih@google.com> Date: Tue Jun 2 16:38:29 2009 -0700 MetaData is now implemented in terms of KeyedVector, MetaData is now reference counted. commit 0fa957aa5c9bcb6ec122ed7b5b97430039be6797 Author: Andreas Huber <andih@google.com> Date: Mon Jun 1 14:39:55 2009 -0700 Sync sample seek support. commit 78a5f090d02e7e6e1a146b29bdb7771eecaa2f86 Author: Andreas Huber <andih@google.com> Date: Mon Jun 1 13:51:11 2009 -0700 Distinguish shutdown from port-flush since one requires buffers to be freed and the other one doesn't. Fixes a problem with seek. commit e57781d3b2c985a74cd8b60e7c8f2d576459d038 Author: Andreas Huber <andih@google.com> Date: Mon Jun 1 10:52:20 2009 -0700 First shot at support for seeking a MediaSource. Sync frames are not properly handled yet. commit 0551cd78fda78bf66877fb26c5a55e5ae23d8367 Author: Andreas Huber <andih@google.com> Date: Thu May 28 16:23:38 2009 -0700 Preliminary support for camera input. commit f8ebafa65d10d5a06944de6b2e2992a33121b857 Author: Andreas Huber <andih@google.com> Date: Thu May 28 12:13:47 2009 -0700 Allow NativeMediaPlayer access to Surface's getISurface() method. commit b1a9fb36eeccd9f49d28c1c64b31fccbd6506eeb Author: Andreas Huber <andih@google.com> Date: Thu May 28 11:38:25 2009 -0700 Header files are now in their own genesis2 hierarchy below frameworks/base/include. commit f49b8b234b8f6ce83148787eef540dd920f04aa6 Author: Andreas Huber <andih@google.com> Date: Thu May 28 11:22:03 2009 -0700 moved MPEG4Writer into libgenesis2. commit 5224254919dac4728677335ea60429fa16f518b4 Author: Andreas Huber <andih@google.com> Date: Thu May 28 11:13:38 2009 -0700 Everything now lives in the android namespace, integrated errors with android errors, renamed MediaPlayer to MediaPlayerImpl. commit f9a9d84f7e0465ef5d1938a068655ba39527cf99 Author: Andreas Huber <andih@google.com> Date: Wed May 27 16:43:11 2009 -0700 Support for getPosition() and getDuration(). commit 3206cc5140bcbc88be039f8d94b954af63e69752 Author: Andreas Huber <andih@google.com> Date: Wed May 27 15:37:45 2009 -0700 Support for {MediaPlayer, GenesisPlayer, Genesis2Player}::isPlaying() commit 9f41b248e0dfce71bbc50f883750cec52ebfd1fe Author: Andreas Huber <andih@google.com> Date: Wed May 27 13:49:50 2009 -0700 Proper disconnection from the OMX service. commit cdcf47a2c31599109ee42277c7fa14af3c600091 Author: Andreas Huber <andih@google.com> Date: Tue May 26 17:27:06 2009 -0700 New player type for the genesis player in libmediaplayerservice. Playing video through an ISurface now. commit 0586af20ac9ae0403dd190bafd290b0f90549723 Author: Andreas Huber <andih@google.com> Date: Fri May 22 15:53:19 2009 -0700 Fix a buffer overflow error by adding padding in case we need to de-frame AVC data. commit eac62fff6ad2ffb7b75c0d4a1b9620d33e93fb9b Author: Andreas Huber <andih@google.com> Date: Fri May 22 13:35:30 2009 -0700 Support for http URIs in MediaPlayer, compensate for AudioTrack latency. commit a7db456e3173d94d6b5e457547e2a6a5f7a8e1cc Author: Andreas Huber <andih@google.com> Date: Fri May 22 11:33:25 2009 -0700 Support for URIs in MediaPlayer class, support for shoutcast streams in MediaPlayer, force shutdown of OMX nodes if they don't shutdown cleanly within a second. commit 1f0268f4f14ad5215668f34e06a420850174d665 Author: Andreas Huber <andih@google.com> Date: Fri May 22 08:33:16 2009 -0700 and foo.txt is gone again. commit 0feca4e0919f345704d78ec78894bac5027bd5ed Author: Andreas Huber <andih@dhcp-172-19-27-148.mtv.corp.google.com> Date: Fri May 22 08:28:49 2009 -0700 added foo.txt commit 9c7d04b35cdc895a2de3602dc46522f608bd205f Author: Andreas Huber <andih@google.com> Date: Fri May 22 08:28:04 2009 -0700 delete foo again commit fec3ca1720992cce51b9a92b86b945da88a6b16c Author: Andreas Huber <andih@google.com> Date: Fri May 22 08:27:45 2009 -0700 weird commit 30a6571302333146e537e537a3a8986245cca87c Author: Andreas Huber <andih@dhcp-172-19-27-148.mtv.corp.google.com> Date: Fri May 22 08:18:55 2009 -0700 reverse test commit dea3d99dd0fe9386e8a3c51954d9d0fe2be09d38 Author: Andreas Huber <andih@google.com> Date: Fri May 22 08:18:22 2009 -0700 test commit a9eeafec6e46072cac41e54ebdbd153cb7ae7518 Author: Andreas Huber <andih@google.com> Date: Thu May 21 16:37:50 2009 -0700 Use the video ring again for now. commit e05ff3d3c1c4f89ef499a2b172138a775fd694e3 Author: Andreas Huber <andih@google.com> Date: Thu May 21 15:42:19 2009 -0700 Export to .mp4 now works for MPEG4 video content. Fixed a bug in the sample table wrt co64 chunks. commit 5c44c540374a4e50c4e8aaab2b7a34aed6e1391e Author: Andreas Huber <andih@google.com> Date: Thu May 21 09:56:11 2009 -0700 Fix the build, all binder-related headers have moved and there's a new library libbinde r to link against now. commit 23e0a24404d16c898c2c6b3c7495ad303844bc71 Author: Andreas Huber <andih@google.com> Date: Thu May 21 08:42:04 2009 -0700 Initial checkin of MPEG4Writer, a class to export media sources into an mpeg4 file. MPEG4/AVC metadata (efss & friends) not currently working. commit 9cd77adb1ac194197364ffad00a0d7215f458e1a Author: Andreas Huber <andih@google.com> Date: Wed May 20 12:31:45 2009 -0700 New shell command to test recording/encoding. Various changes to OMXDecoder to support encoding properly. Now each OMXDecoder needs a dedicated thread on the client side since onEvent responses could block which would cause deadlocks if a node depends on the output of another node for example. commit 5c510fb55ffed7ec25305999ed9b6c1eec48d503 Author: Andreas Huber <andih@google.com> Date: Mon May 18 15:40:06 2009 -0700 Make media decoding the default in the genesis2 commandline app instead of shoutcast playback. commit f6c7a2040b8eb43326621f12c3a936e09b3a70e3 Author: Andreas Huber <andih@google.com> Date: Mon May 18 11:03:04 2009 -0700 The king is dead, long live the kind... Replaced old OMX binder interface with new OMX binder interface/socket hybrid. commit 0d4955eb5df9bfafb576d22f2ed572644d6d69ac Author: Andreas Huber <andih@google.com> Date: Thu May 14 12:39:34 2009 -0700 dynamic negotiation of NAL framing with the MPEG4Source, removed stale code from genesis2 commandline tool. Enable support form PV H264 software decoder. commit 380369f54a8027cbc9349305184d6bf527a24efe Author: Andreas Huber <andih@google.com> Date: Wed May 13 17:32:00 2009 -0700 Explore the option of running everything inside the mediaserver process by encapsulating the player in an IGenesisPlayer binder interface. commit b5cada56b9089a23e0c461352a97dc71e08b424d Author: Andreas Huber <andih@google.com> Date: Wed May 13 12:11:06 2009 -0700 Introduction of TimeSource class, clean shutdown of OMX Nodes. commit 89f6e582e605dcb2149eb67f73fe9345d4b9be2e Author: Andreas Huber <andih@google.com> Date: Tue May 12 17:11:56 2009 -0700 Helper classes MediaRing and MediaPlayer. commit 9aaed8739b4bb941473da367fb88f63224d2f1b7 Author: Andreas Huber <andih@google.com> Date: Tue May 12 14:19:18 2009 -0700 Using mmap to map a file instead of going through FILE* improves performance, who knew? commit ad097a78bbd002c59193ffdc39b64935928426c7 Author: Andreas Huber <andih@google.com> Date: Mon May 11 16:42:42 2009 -0700 Added a performance test, refactored AudioDecoder a little. commit bdd1b80ab3f3ba43e04f1f996e7fa84ed2e2728a Author: Andreas Huber <andih@google.com> Date: Fri May 8 16:19:29 2009 -0700 No more copying the output buffers coming out of the decoder, NAL separation also done in the extractor to avoid copying the data. commit 858955b42c29b8033841a8caaa56c2a449810ef3 Author: Andreas Huber <andih@google.com> Date: Fri May 8 14:02:38 2009 -0700 Change from a model in which the caller specifies the destination buffer to one where the MediaSource returns a buffer. commit 95098b6d4f8bdc37dfb6a109ca58db4d9e414e2d Author: Andreas Huber <andih@google.com> Date: Fri May 8 13:21:45 2009 -0700 Changes to support multiple pieces of codec specific data to the decoder, de-frame nal units from the h.264 stream and insert start codes commit 3941fcf87a48dda81683df727dfb1381f62d9184 Author: Andreas Huber <andih@google.com> Date: Thu May 7 16:37:45 2009 -0700 some refactoring. Most streams play now. commit d3152862840d4dd39068e5197bec8674f3d55dd5 Author: Andreas Huber <andih@google.com> Date: Thu May 7 15:37:32 2009 -0700 Misc. changes to support H264 decoding using the qcom hardware decoder commit d4ecdfe7af36e7468270d1c2cbbdc540efe0351e Author: Andreas Huber <andih@google.com> Date: Thu May 7 09:28:18 2009 -0700 Timestamps are now stored as a fraction, i.e. units and scale, also, PV appears to violate OMX specs by assuming timestamps are in milliseconds instead of microseconds. commit fe6a50943f885e065d4061aa727a54417e9f36db Author: Andreas Huber <andih@google.com> Date: Wed May 6 14:18:27 2009 -0700 Refactored commandline app instantiation of the decoder. commit da1ff2724d0e78e8b360d9a2c34c55dd0e2c0492 Author: Andreas Huber <andih@google.com> Date: Wed May 6 10:41:14 2009 -0700 Proper audio/video synchronization. commit 569ee3a23f600f4b6b87c6178c0223b06e97f201 Author: Andreas Huber <andih@google.com> Date: Wed May 6 09:17:20 2009 -0700 Preliminary support for timestamps. commit e4e302a89207550d8a7170d8c0afbd9c15047c84 Author: Andreas Huber <andih@google.com> Date: Tue May 5 15:13:12 2009 -0700 Another quick hack job to make CachingDataSource thread-safe as well. commit dfb376a58bd7c09aa04e89558186fcfe13fe696c Author: Andreas Huber <andih@google.com> Date: Tue May 5 15:08:14 2009 -0700 Quick rushjob to make FileSource and SampleTable thread safe. commit 02b29e7ebdab1f8b959b6c177ceb3b89d998f375 Author: Andreas Huber <andih@google.com> Date: Mon May 4 17:22:04 2009 -0700 Made video decoding work for mpeg4/h263 and mostly(?) with AVC content. commit 3a57b8ff15e48f5a0af03bf0a99c32e240dbb7ef Author: Andreas Huber <andih@google.com> Date: Mon May 4 09:26:42 2009 -0700 Getting rid of old sample code to drive the OMXNode binder interface. commit 5b046aed0cf524a57ea711bc1e43ea80e57b2cb3 Author: Andreas Huber <andih@google.com> Date: Fri May 1 16:21:11 2009 -0700 Moved files from the commandline utility into the framework, renamed MP3Decoder to AudioDecoder commit 7f3fbba21512a078b732cc52c7bd5ba5acb9a317 Author: Andreas Huber <andih@google.com> Date: Fri May 1 15:56:19 2009 -0700 Fixed buffer ordering and an off-by-1 error in the SampleTable code. Plays all AACs now :) commit 024d06baab8f2c540dde16f7e7a4b6dd57f638c7 Author: Andreas Huber <andih@google.com> Date: Fri May 1 11:52:48 2009 -0700 Some AAC content in .3gp or .mp4 files plays correctly now, other does not. Implemented ESFS parser. commit 1470427866b0d3e0ce6848b4edc01c13a09be289 Author: Andreas Huber <andih@google.com> Date: Thu Apr 30 15:19:31 2009 -0700 Another checkpoint, amr decoding now functional. commit e612d044439f56331b6a2bc4a88622e04d4d42e7 Author: Andreas Huber <andih@google.com> Date: Wed Apr 29 12:11:29 2009 -0700 string wrapper around String8, various fixes, shoutcast now works again. commit 2ea52dfb1a39bf3a223ffc87855e54919e2daff7 Author: Andreas Huber <andih@google.com> Date: Wed Apr 29 11:08:18 2009 -0700 Initial check-in of OMXNode binder interface. commit 7880d2957f74c0d7fba7679431ff5adb3780543b Author: Andreas Huber <andih@google.com> Date: Wed Apr 29 10:05:01 2009 -0700 Initial check-in of both libgenesis2 and the genesis2 commandline tool.
ndroid.mk
MediaPlayerService.cpp
OMX.cpp
|
a25f0fcebaa9fcb550ae2ccd5913085ae48b1018 |
15-Jul-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change 7067 * changes: add a ctor to Mutex to specify the type, which can be shared. This is used by sf and af an soon will allow some optimization in the kernel for non shared mutexes
|
2b50fba2b143c2e0597c941d67bea1b8e80c9caf |
14-Jul-2009 |
Mathias Agopian <mathias@google.com> |
first attempt to fix the sim
ndroid.mk
|
b07c28b90b2d2793be2b8878d813b607f3eebbb7 |
14-Jul-2009 |
Mathias Agopian <mathias@google.com> |
add a ctor to Mutex to specify the type, which can be shared. This is used by sf and af an soon will allow some optimization in the kernel for non shared mutexes
udioTrack.cpp
|
aa37173500f221298fa618b5ca8b4814aff5ef31 |
10-Jul-2009 |
Marco Nelissen <marcone@google.com> |
Don't pass references to temporary objects, and handle the case where we dont have a Surface.
ediaplayer.cpp
|
8e1b6cce24574b9ecd5b0300155776bd0b4ef756 |
09-Jul-2009 |
Nicolas Catania <niko@google.com> |
Basic plumbing to retrieve metadata from the native player. IMediaPlayer.h Added a getMetadata method that mirrors the on in MediaPlayer.java. MediaPlayer.java Added a native method to get the metadata from the native player. Parse the parcel into a Metadata object. Metadata.java Added a stub to parse the Parcel returned by the native player into a set of metadata. android_media_MediaPlayer.cpp JNI call to forward the getMetadata call. MediaPlayerService.cpp MediaPlayerService::Client implements the new getMetadata method added in IMediaPlayer.h
MediaPlayer.cpp
ediaplayer.cpp
|
a920ee99dc97b54b661d1238d8c26ac07c875bed |
09-Jul-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change 6636 * changes: Implemented the metadata changed notification filters.
|
699f095c05229c5f3d21c54d55698de4f30eaa35 |
09-Jul-2009 |
Eric Laurent <elaurent@google.com> |
am 5964e737: Fix issue 1946033: dialer deadlocks and/or ANRs when using dialpad in-call Merge commit '5964e73774b381748013b91d04dfb6fc60f533ee' * commit '5964e73774b381748013b91d04dfb6fc60f533ee': Fix issue 1946033: dialer deadlocks and/or ANRs when using dialpad in-call
|
a7e0e8b4c429fc68eb1bd5b5a30f5b91352288f9 |
08-Jul-2009 |
Nicolas Catania <niko@google.com> |
Implemented the metadata changed notification filters. IMediaPlayer: new setMetadataFilter method so set a filter (2 lists of allowed and blocked metadata type) serialized in a Parcel. MediaPlayer.java/android_media_MediaPlayer.cpp/mediaplayer.cpp new setMetadataFilter that passes the filter down to the MediaPlayerService's binder interface. MediaPlayerService.cpp The Client inner class holds the allowed and blocked metadata types. These are in 2 vectors that get populated in the setMetadataFilter. A new shourldDropMetadata method returns true if a type of metadata should be dropped according to the filters. The notify method in run the metadata update notifications thru the filter and possibly drop them.
MediaPlayer.cpp
ediaplayer.cpp
|
c38bb0614dc0b5dee682b9a1de47de5ae7d215d8 |
09-Jul-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1946033: dialer deadlocks and/or ANRs when using dialpad in-call The cause is very likely that the WaveGenerator *lpWaveGen returned by lpToneGen->mWaveGens.valueFor(lFrequency) just before calling lpWaveGen->getSamples(lpOut, lGenSmp, lWaveCmd) is invalid. The frequency lFrequency is not part of the frequencies in mWaveGens. This can happen if a different tone is started while the callback function is active: The state is changed to TONE_RESTARTING and the call to prepareWave() at line 1226 will change the tone descriptor pointed to by mpToneDesc as well as the content of mWaveGens. However, mpToneDesc was cached in a local variable lpToneDesc when entering the callback and is not reloaded when exiting prepareWave(). This causes a mismatch between the tone frequencies listed in lpToneDesc and the frequencies present in mWaveGens. This regression was introduced in change 973 when mpToneDesc was cached in a local variable.
oneGenerator.cpp
|
349dba337e07e129f6ba49a132999f0b73fedbe3 |
07-Jul-2009 |
Eric Laurent <elaurent@google.com> |
am 88e209dc: Fix issue 1743700: AudioTrack: setPlaybackRate can not set the playback rate to twice of the ouputSR Merge commit '88e209dcf8c2ebddda5c272f46d1bd5478bc639c' * commit '88e209dcf8c2ebddda5c272f46d1bd5478bc639c': Fix issue 1743700: AudioTrack: setPlaybackRate can not set the playback rate to twice of the ouputSR
|
573266210fb2b2e7d86fbd46d0dfe16763611d91 |
07-Jul-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1743700: AudioTrack: setPlaybackRate can not set the playback rate to twice of the ouputSR Store sample rate on 32 bits instead of 16 bits in audio_track_cblk_t. Removed sampleRate() methods from AudioTrack and AudioRecord: replaced by getSampleRate(). AudioTrack::setSampleRate() no returns a status.
udioRecord.cpp
udioTrack.cpp
|
1d187f1a86855f5f0694d7ec30efc9833bf7c589 |
13-May-2009 |
Nicolas Catania <niko@google.com> |
Direct api to the native media player. MediaPlayer.java has 3 new methods: * newRequest creates a Parcel that can be used to send data to the native player using invoke. * invoke issues synchronous calls to the native player using opaque parcels for the request and reply. IMediaPlayer.h has 1 new abstract method: * invoke The Midi and Vorbis players have a stub for these. So far only PV makes use of that new feature. To avoid any copy overhead, the JNI interface uses Parcel as a java object (no serialization/copy happens at the JNI layer). The remote interface token is inserted when the Parcel is constructed in java. That way the parcel is already routable when it reaches IMediaPlayer.cpp (proxy). No extra copy is needed there.
MediaPlayer.cpp
MediaPlayerService.cpp
ediaplayer.cpp
|
3d59a4b99937a7d0dc07eec2574cc8a98cc99fdd |
23-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am 1bee98af: Merge change 5100 into donut Merge commit '1bee98af6532eba3c6cda636eee890530c95a2a7' * commit '1bee98af6532eba3c6cda636eee890530c95a2a7': Fill in CDMA gaps and clean up ToneGenerator code
|
5e0a3043af16bc71a4211ee00dc00724de6623a7 |
17-Jun-2009 |
David Krause <david.krause@motorola.com> |
Fill in CDMA gaps and clean up ToneGenerator code
oneGenerator.cpp
|
56f0cc533a38bdb84bc03adcb43515614ab21bae |
22-Jun-2009 |
niko <niko@google.com> |
Renamed all android.hardware.IMedia* strings to android.media.IMedia* The android.hardware.ICamera string have not been changed (but is looks like the camera service and client one should undergo the same procedure) The implementation of the interface must provide a unique string for it's interface name. Currently all these strings in the media framework start with 'android.hardware' when it should really be 'android.media', the interface token has nothing to do with hardware.
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
|
4710a1f6c9800dae90f9e2702ba2b5b54c095eae |
12-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am d670b8c6: Merge change 3981 into donut Merge commit 'd670b8c61ebd13324ac21bdbc08d8a02fc0a765a' * commit 'd670b8c61ebd13324ac21bdbc08d8a02fc0a765a': Removed trailing whitespaces.
|
660951867e959ebe98612742ef1f72d33ea7e9a3 |
12-Jun-2009 |
Nicolas Catania <niko@google.com> |
Removed trailing whitespaces.
MediaPlayerService.cpp
ediaplayer.cpp
|
2a7d5b3c1a3749db7c4ace34bf1253c44967e843 |
09-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am b2df1699: Merge change 1548 into donut Merge commit 'b2df1699c996e62baa78877978cd2c5607ea4194' * commit 'b2df1699c996e62baa78877978cd2c5607ea4194': NJ-1409: (frameworks/base) Support new audio encoding types(AMR and AAC).
|
9747c5a1f5e51fab72169767972bf55f73711000 |
08-Jun-2009 |
Jianhong Jiang <jianhong@google.com> |
NJ-1409: (frameworks/base) Support new audio encoding types(AMR and AAC).
ediarecorder.cpp
|
489d60ec36c3927c9ee0bc14a44c1c77b74c09f6 |
27-May-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am f3288f17: Merge change 2468 into donut Merge commit 'f3288f178ae2b2c7910b234f54f43475a83eb860' * commit 'f3288f178ae2b2c7910b234f54f43475a83eb860': setVolume did not check interface descriptor
|
b7056fc8525e0515c6f46676e3307088f8b64cdc |
23-May-2009 |
Mathias Agopian <mathias@google.com> |
some work to try to reduce the code size of some native libraries - make sure that all binder Bn classes define a ctor and dtor in their respective library. This avoids duplication of the ctor/dtor in libraries where these objects are instantiated. This is also cleaner, should we want these ctor/dtor to do something one day. - same change as above for some Bp classes and various other non-binder classes - moved the definition of CHECK_INTERFACE() in IInterface.h instead of having it everywhere. - improved the CHECK_INTERFACE() macro so it calls a single method in Parcel, instead of inlining its code everywhere - IBinder::getInterfaceDescriptor() now returns a "const String16&" instead of String16, which saves calls to String16 and ~String16 - implemented a cache for BpBinder::getInterfaceDescriptor(), since this does an IPC. HOWEVER, this method never seems to be called. The cache makes BpBinder bigger, so we need to figure out if we need this method at all.
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
|
172fb9ab347e146642234f0bd6f223d351e9fd0b |
26-May-2009 |
Dave Sparks <davidsparks@android.com> |
setVolume did not check interface descriptor DO NOT MERGE
MediaPlayer.cpp
|
95634c8b6ad5419e310a5196bcc37f5988ed82da |
26-May-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am de8268d6: Merge change 2331 into donut Merge commit 'de8268d6d1cd168510c490b17e93154d2eab767c' * commit 'de8268d6d1cd168510c490b17e93154d2eab767c': Fix issue 1846343 - part 1
|
f5879c1448cc6aebc51b26d3ec2399d66144f8f4 |
22-May-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1846343 - part 1 This change is the first part of a fix for issue 1846343, : - Added new enum values for input sources in AudioRecord and MediaRecorder for voice uplink, downlink and uplink+downlink sources. - renamed streamType to inputSource in all native functions handling audio record. A second change is required in opencore author driver and android audio input to completely fix the issue.
udioRecord.cpp
AudioFlinger.cpp
|
7562408b2261d38415453378b6188f74fda99d88 |
20-May-2009 |
Mathias Agopian <mathias@google.com> |
move libbinder's header files under includes/binder
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
615a9bfbd98b90e09d868c128db84836feb658e4 |
19-May-2009 |
Mathias Agopian <mathias@google.com> |
checkpoint: split libutils into libutils + libbinder
ndroid.mk
|
4afdfa7fd7e9fe59fb298ef2ac252686e68bc73a |
07-May-2009 |
Dave Sparks <davidsparks@android.com> |
Don't allow negative numbers in ToneGenerator toneType parameter Bug 1836596
oneGenerator.cpp
|
0b62e242d112d46e9357242b0a4e11c720c98ca0 |
05-May-2009 |
Eric Laurent <elaurent@google.com> |
Fixed issue 1709450: Requirements for CDMA Tone Generator Added new tone types for CDMA IS-95 specific tones. Automatic selection between IS-95, CEPT and JAPAN version base on operator country code for call supervisory tones. Also improved tone generator capabilities: - Each tone segment can now generate its own set of frequencies - A tone does not have to be a succession of alternating ON/OFF segments - The sequence repetition does not have to start from first segment
oneGenerator.cpp
|
1dd70b9f04961a06fcb73a97fca10a53b3245d3c |
21-Apr-2009 |
Eric Laurent <elaurent@google.com> |
Fix issue 1745312: Various cleanups in media framework AudioTrack, AudioRecord: - remove useless mAudioFlinger member of AudioTrack and AudioRecord. - signal cblk.cv condition in stop() method to speed up stop completion. - extend wait condition timeout in obtainBuffer() when waitCount is -1 to avoid waking up callback thread unnecessarily AudioFlinger: - remove some warnings in AudioFlinger.cpp. - remove function AudioFlinger::MixerThread::removetrack_l() as its content is never executed. - remove useless call to setMasterVolume in AudioFlinger::handleForcedSpeakerRoute(). - Offset VOICE_CALL stream volume to reflect actual volume that is never 0 in hardware (this fix has been made in the open source): 0.01 + v * 0.99. AudioSystem.java: - correct typo in comment IAudioflinger, IAudioFlingerClient: - make AudioFlinger binder interfaces used for callbacks ONEWAY. AudioHardwareInterface: - correct routeStrings[] table in AudioHardwareInteface.cpp
udioRecord.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
|
ce80c82f58378da72d8a36f520c781cc5cac18a1 |
01-Apr-2009 |
Eric Laurent <> |
AI 144054: am: CL 144053 Fix issue #1751242 A2DP playback fails first time: Invalid buffer size: minFrameCount 10240, frameCount 4800 The problem comes from the fact that AudioSystem::getOutputFrameCount() calls getOutput() to retrieve the active output (A2DP or Hardware) before calling get_audio_flinger(). If it is the first time AudioSystem::getOutputFrameCount() is called in a given process, getOutput() will return a wrong value because gA2dpEnabled has not yet been updated by get_audio_flinger(). The fix consists in calling get_audio_flinger() in getOutput() to be sure that gA2dpEnabled is valid when getOutput() reads it. Original author: elaurent Merged from: //branches/cupcake/... Automated import of CL 144054
udioSystem.cpp
|
cd6725a333395ffeac3215ea4bf834a95aaa8def |
25-Mar-2009 |
Eric Laurent <> |
Automated import from //branches/donutburger/...@142065,142065
udioRecord.cpp
|
4003bf5e4cd948fe7732c16b2a683acdbfa8c44d |
25-Mar-2009 |
Andreas Huber <> |
Automated import from //branches/donutburger/...@141711,141711
ediaplayer.cpp
|
7d563247cdac0509009d579bbf849157d47c38a9 |
25-Mar-2009 |
Jean-Michel Trivi <> |
Automated import from //branches/donutburger/...@141200,141200
udioRecord.cpp
|
158857d5a6bb93aa6a135a338f9b6389e0f2b3a5 |
25-Mar-2009 |
Jean-Michel Trivi <> |
Automated import from //branches/donutburger/...@140867,140867
etPlayer.cpp
|
7dc112527d77b675d5c0451502b33fe2c552a79e |
25-Mar-2009 |
Jason Sams <> |
Automated import from //branches/donutburger/...@140866,140866
ediaplayer.cpp
|
2c22aeb65e801f663a754d043062f85e49f77739 |
25-Mar-2009 |
Jean-Michel Trivi <> |
Automated import from //branches/donutburger/...@140663,140663
udioTrack.cpp
|
1179bc9b0e3d17c984e8f4ad38561c049dd102fa |
19-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake_rel/...@140373
udioTrack.cpp
etPlayer.cpp
ediarecorder.cpp
|
c048cae0367db6fbb4fe1127be5011910713d4ad |
13-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake_rel/...@138607
MediaRecorder.cpp
ediarecorder.cpp
|
65e731f393f704eedab6fbe0af7f8a580c8d4617 |
11-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@137873
ediaplayer.cpp
ediarecorder.cpp
|
8365529381f6284f2d59dcc38e26f73adeec9c67 |
09-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@137197
oneGenerator.cpp
|
8555d0867c3e8fe6cc5c7ad40af557fe6b92fa72 |
05-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@136594
udioTrack.cpp
ediarecorder.cpp
|
89fa4ad53f2f4d57adbc97ae1149fc00c9b6f3c5 |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
ndroid.mk
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
etPlayer.cpp
ODULE_LICENSE_APACHE2
OTICE
oneGenerator.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
15f767b960b38059a74a42a33e16d8df2aec8bc1 |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
ndroid.mk
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
AudioRecord.cpp
AudioTrack.cpp
MediaMetadataRetriever.cpp
MediaPlayer.cpp
MediaPlayerClient.cpp
MediaPlayerService.cpp
MediaRecorder.cpp
etPlayer.cpp
ODULE_LICENSE_APACHE2
OTICE
oneGenerator.cpp
ediametadataretriever.cpp
ediaplayer.cpp
ediarecorder.cpp
|
ad04d9201452001dbaac4349f084cc9316190b89 |
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@132589
udioRecord.cpp
udioTrack.cpp
MediaRecorder.cpp
ediarecorder.cpp
|
99ffda877980468a9ae31e013cd10fb3645df1b0 |
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@137055
udioRecord.cpp
udioTrack.cpp
MediaRecorder.cpp
ediarecorder.cpp
|
925a349b45d1d16eaaca6a1f4827191831271ca0 |
20-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@132569
udioRecord.cpp
oneGenerator.cpp
|
25658fd43d150a45fb37734a9f9f27f48bb5c133 |
19-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@132276
udioTrack.cpp
etPlayer.cpp
|
7a2146d5807030b2629f347736be5301b61e8811 |
13-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@131421
udioRecord.cpp
udioSystem.cpp
udioTrack.cpp
AudioFlinger.cpp
AudioFlingerClient.cpp
MediaRecorder.cpp
etPlayer.cpp
|