9bcb476a95a26e62f5706d1f00f4873cf44f9e04 |
|
19-Nov-2012 |
Glenn Kasten <gkasten@google.com> |
New VHQ resampler Squashed commit of the following: commit 12b6952da9f25e94d06dd7185bce255924e7e791 Author: Mathias Agopian <mathias@google.com> Date: Mon Nov 19 15:27:26 2012 -0800 fix a typo in SINC resampler that prevented tracks to be mixed we were always erasing the current mix instead of mixing into it. Change-Id: Ib229245f9e5a0d384f1727640a59e9f0469211a2 commit 0019ce082df430278f14ab922e900ce33b64897d Author: Dave Bort <dbort@google.com> Date: Tue Nov 13 01:30:32 2007 -0800 Rename "TARGET" to "MODULE" in the build system. Part one of the grand renaming. API_CHANGE: Third parties may need to update their makefiles. Any variables with "LOCAL" and "TARGET" in their names should now use "MODULE" instead of "TARGET"; e.g., LOCAL_MODULE, LOCAL_MODULE_TAGS. PRESUBMIT=passed OCL=39840 Change-Id: Ica9a7937d3d9552ab84db46ac6eea8a290e404fe Signed-off-by: Glenn Kasten <gkasten@google.com> commit f01adc0cef0e39e75c76d9195ac26a94cac0a100 Author: Glenn Kasten <gkasten@google.com> Date: Wed Nov 14 08:32:08 2012 -0800 Fix build warnings Change-Id: Ic43bcca166a529a6431711b05a7fa21849b6a38b commit 9bb031a565c753a03d9c9397edea318947d80528 Author: Mathias Agopian <mathias@google.com> Date: Sat Nov 10 04:44:30 2012 -0800 more optimizations... calculate the offsets from the phase differently, this happens to reduce the register pressure in the main loop, which in turns allows the compiler to generate much better code (doesn't need to spill a lot of stuff on the stack). this gives another 15% performance increase Change-Id: I2ce3479dd48b9e6941adb80e6d443d6e14d64d96 commit 5a951598f31217b8cd2babd0720c9608ee17291a Author: Mathias Agopian <mathias@google.com> Date: Sat Nov 10 03:26:39 2012 -0800 refactor code to improve neon code we want to make sure we don't transfer data from the neon unit to the arm register file, as this can be quite slow. instead we do all the calculation on the neon side and write the result directly to main memory. Change-Id: Ibb56664d3ab03098ae2798b75e2b6927ac900187 commit b381ee9e83bc9fd18986e79c7809841514ed590e Author: Mathias Agopian <mathias@google.com> Date: Sun Nov 4 15:16:13 2012 -0800 NEON optimized SINC resampler this currently gives us a 60% to 80% boost depending on the quality level selected. Change-Id: I7db385007e811ed7bffe5fd3403b44e300894f5b commit bea077354210242ea193a50b0dbab0fedab25df3 Author: Mathias Agopian <mathias@google.com> Date: Mon Nov 5 01:51:37 2012 -0800 minor cleanups Change-Id: Ia12ee4fb59e90221761bec85e6450db29197591f commit 8f4ed7decbe161a5ff38200b218f5216d80aba46 Author: Mathias Agopian <mathias@google.com> Date: Sun Nov 4 18:49:14 2012 -0800 improve resample test - handle stereo input - input file can now be ommited, in this case a linear chirp will be used automatically - better usage information Change-Id: I5d62a6c26a9054a1c1a517a065b4df5a2cdcda22 commit 5fcd634ea6cb4df27c495abe20f5f9b8ff55d128 Author: Mathias Agopian <mathias@google.com> Date: Sun Nov 4 02:03:49 2012 -0800 change how we store the FIR coefficients The coefficient table is now transposed and shows much better its polyphase nature: we now have a FIR per line, each line corresponding to a phase. This doesn't change at all the results produced by the filter, but allows us to make slightly better use of the data cache and improves performance a bit (although not as much as I thought it would). The main benefit is that it is the first step before we can make much larger optimizations (like using NEON). Change-Id: Iebf7695825dcbd41f25861efcaefbaa3365ecb43 commit d652231abf4c7e2ea1fc89caae730cec1f7259a1 Author: Mathias Agopian <mathias@google.com> Date: Sat Nov 3 23:37:53 2012 -0700 improve SINC resampler performance The improvement is about 60% by just tweaking a few things to help the compiler generate better code. It turns out that inlining too much stuff manually was hurting us. Change-Id: I8068f0f75051f95ac600e50ce552572dd1e8c304 commit 9dc68ef5b94c700c4ee68790e8cbb334c90a538d Author: Mathias Agopian <mathias@google.com> Date: Thu Nov 1 21:03:46 2012 -0700 new coefficients for the vhq resampler previous coefficients were provided by a 3rd party and didn't have a way to re-generate them. we're now using the 'fir' utility. the performance of the filter is virtually identical, except for the down-sampling case which seems slightly better now: It looks like both the previous and new coefficients are generating some sort of clipping for full-scale signals in the down-sampling case (although the new ones seem better), the reason for that is unknown (see bug: 7453062) Also updated the HQ coefficients for the down-samplers, previous ones were a little bit too conservative -- the new ones push the cut-off frequency up by about 1 KHz. Change-Id: I54a827b5c707c7cc41268ed01283758dce1d7647 commit 38e0b8560a6fc1b7124e22e0e09a84a285182f8e Author: Mathias Agopian <mathias@google.com> Date: Tue Oct 30 13:51:44 2012 -0700 fix SINC resampler on non ARM architectures make sure the C version of the code generates the same output than the ARM assemply version. Change-Id: Ide218785c35d02598b2d7278e646b1b178148698 commit a1878128b182696ba508569b4d211d0dfae92463 Author: Mathias Agopian <mathias@google.com> Date: Tue Oct 30 12:49:07 2012 -0700 fix another issue with generating FIR coefficients the impulse response of a low-pass is 2*f*sinc(2*pi*f*k), we were missing the 2*f scale factor. This explains why we were seeing clipping and had to manually scale the filter down. Change-Id: I86d0bb82ecdd99681c8ba5a8112a8257bf6f0186 commit 1a0fb993430acc9f601e6c538305bc407c20ac5d Author: Mathias Agopian <mathias@google.com> Date: Mon Oct 29 17:13:20 2012 -0700 fir a typo that caused up-sampling coefficiens to be wrong up-sample coefficient were generated with a cut-off frequency of 24KHz intead of ~20KHz, which caused more aliasing in the audible band. also increased the attenuation to 1.3 dB on both up and down sampling coefficient to avoid clipping. Change-Id: Ie8aeecf1429190541b656810c6716b6aae5ece2e commit 9520ad6862bd682ad075a9d9e3e94ada9f6e58b6 Author: Mathias Agopian <mathias@google.com> Date: Mon Oct 29 17:13:16 2012 -0700 test-resample: clip instead of overflowing Change-Id: I550e5a59e51c11e1095ca338222b094f92b96878 commit ba36656300f250f7f1fdeb75149749344260e6cb Author: Mathias Agopian <mathias@google.com> Date: Sun Oct 21 01:01:38 2012 -0700 a test app for the resamplers Change-Id: I66852d90d384f1d9e77b51ad1a1ebdbaf61d0607 commit 056a08b9bfd33cf27228c992adc8293a56b01be8 Author: Mathias Agopian <mathias@google.com> Date: Fri Oct 26 14:11:01 2012 -0700 reenable the cubic resampler cubic resampler was disabled because it hadn't been qualified, however after I did some tests, it does improve significantly the sound quality over the order-1 resampler, even if it is still quite bad. also HIGH_QUALITY resampler was partially disabled, it's now fully enabled. It's a big improvement over the cubic resampler in terms of aliasing noise (it's not as good in the pass-band). Change-Id: I70e3658c255896588642697be9eb594ff4ec0f8b commit 8c0241d3ff50ae85167f69b3bd369244894cfa44 Author: Mathias Agopian <mathias@google.com> Date: Fri Oct 26 13:48:42 2012 -0700 improve SINC resampler coefficients - we increase the interpolation precision from 4 to 7 bits this doesn't increase CPU power required, it only increases the size of the filter table but significantly reduces the noise introduced by the quantization of the impulse response. - the parameters of the filter are set such that aliasing is rejected at 80 dB below 20 KHz. Because we don't use a lot of coefficient (to save compute power), there are quite a bit of attenuation in the pass-band: starting at 9KHz for the down-sampler (48 to 44.1), and starting at 13 KHz for the up-sampler (44.1 to 48) -- the transition band is about 15 KHz. Change-Id: I855548d2aab8a0fb0d2a2da3a364b6842d7d3838 commit 69e7dab2192adc1f780464146810629ebd01b145 Author: Pixelflinger <mathias.agopian@gmail.com> Date: Thu Oct 25 19:43:49 2012 -0700 improve fir tool: cleanup, better default, bug fixes - all parameters can be changed on the command-line - added float output - added debug option - added an option to generate a polyphase filter coefficients - added an attenuation option in dBFS - added a lot of comments and references - fixed kaiser window parameter also the default should generate a filter with 80 dB rejection (of the 24 KHz aliasing) above 20 KHz and a 15 KHz transition band around ~20 KHz (for 48 KHz sampling rate). It's not very good but corresponds to the current code. commit 8347499d105a50257c18e9dac652e750b06428b1 Author: Glenn Kasten <gkasten@google.com> Date: Mon Oct 22 17:09:27 2012 -0700 Increase allowed number of VHQ resamplers to 3 Bug: 7378660 Change-Id: I69e33ca2eb4bb9bd38e2c63df62cd1130d68baf6 commit f91cf3cad7f5c4d52614271c89ab468741c5d24c Author: Mathias Agopian <mathias@google.com> Date: Sun Oct 21 03:04:05 2012 -0700 Fix a typo that caused the high quality resampler to produce garbage the problem is that if libaudio_resampler is present, it is those coefficients that will always be selected, but the correct meta-data. Bug: 7385994 Change-Id: Ieebeb37b4dfb62a1a051bc29fae2ce056dbc6621 commit e158a9e4262a174c59469a205658bc3ca4078234 Author: Dan Bornstein <danfuzz@google.com> Date: Fri Oct 3 10:34:57 2008 -0700 Manually merge change #111620 from tc3 to mainline, to keep the automerger from choking on it. p4 sync p4 integrate -r -b android_to_tc3 //...@111620,111620 p4 resolve -a p4 resolve # resolve a couple merge travesties PRESUBMIT=passed BUG=1399648 TBR=edheyl OCL=111902 Change-Id: I854b01553dd92bbf9c864f5a9bd51a3d665f0ac2 Signed-off-by: Glenn Kasten <gkasten@google.com> commit b9f3c26032be7a6ea01a10d93d94826f449e68ab Author: Dave Bort <dbort@google.com> Date: Fri Jan 18 14:51:05 2008 -0800 Rename "Makefile" to "Android.mk" throughout the tree. For <http://b/issue?id=960416>. I've tested this as much as I can, but 1500 open files = easy to mess things up. Please let me know if there's a problem rather than rolling back this change. PRESUBMIT=passed BUG=960416 TBR=joeo OCL=46537 Change-Id: I5a404caf0f398a7afa7ae7abaf2f2a1c6ab490eb Signed-off-by: Glenn Kasten <gkasten@google.com> commit 0c22a9a44c4103483fba1d944acf1354c5eb1617 Author: Mathias Agopian <mathias@google.com> Date: Mon Oct 29 23:44:25 2007 -0700 Tweak the SINC resampler parameters and double the performance. It's using about 10% CPU in the worse case now. Change-Id: I50ac7e6c6702a427fa36ab6d976c507155057507 Signed-off-by: Glenn Kasten <gkasten@google.com> commit b85e41487983ad085b859acf8251e7e54480308a Author: Mathias Agopian <mathias@google.com> Date: Mon Oct 29 04:34:36 2007 -0700 A sinc resampler for Audioflinger. It's not enabled yet, but fully functional and apparently working. It need more "quality" tests. In the 48->44 KHz, it takes about 25% of the CPU time. Change-Id: I80eb5185e13ebdb907e0b85c49ba1272c23d60ec Signed-off-by: Glenn Kasten <gkasten@google.com> commit ba3949ef17cac2ba71cc3096c413782a49c922e5 Author: Mathias Agopian <mathias@google.com> Date: Thu Aug 23 21:01:28 2007 -0700 fix a few small typos in the FIR computation Change-Id: I6e56b514fe520f30f7487f85c64ea5d2a7c19b40 Signed-off-by: Glenn Kasten <gkasten@google.com> commit 7474bfa7de2604021963794dddfe44985648db6a Author: Mathias Agopian <mathias@google.com> Date: Thu Aug 23 03:16:02 2007 -0700 This is a tool to compute the the reconstruction filter coefficients for a sinc audio resampler. Change-Id: I99be2505139b8e0e7647200e1647509d4f7e6067 Signed-off-by: Glenn Kasten <gkasten@google.com> Bug: 7577965 Change-Id: I2c84a9283a1668723bad83e1a119c849c88c3e6b
/frameworks/av/services/audioflinger/Android.mk
|
c8823995d16b909fae30ff4f94217e875d3e8c8a |
|
01-Oct-2012 |
ty.lee <ty.lee@lge.com> |
audioflinger/resampler: add build source for libaudio-resampler Bug: 7229644 Change-Id: I93bde36be1c3ec84174a4c98423e28f8b3d8782f Signed-off-by: ty.lee <ty.lee@lge.com> Signed-off-by: Iliyan Malchev <malchev@google.com>
/frameworks/av/services/audioflinger/Android.mk
|
ac6020508acedd316391dee42329040bf45f8d90 |
|
01-Oct-2012 |
Glenn Kasten <gkasten@google.com> |
Integrate improved coefficient sinc resampler: VHQ Summary: Very high quality is enabled only for 44.1 -> 48 or 48 -> 44.1, and uses low quality for all other use cases. Track estimated CPU load and throttles the quality based on load; as currently configured it should allow up to 2 instances of very high quality. Medium quality and high quality are currently disabled unless explicitly requested. Details: Only load .so the first time it is needed. Cleanup code style: formatting, indentation, whitespace. Restore medium quality resampler, but it is not used (see next line). Fix memory leak for sinc resampler. Check sample rate in resampler constructor. Add logs for debugging. Rename DEFAULT to DEFAULT_QUALITY for consistency with other quality levels. Renumber VERY_HIGH_QUALITY from 255 to 4. Use enum src_quality consistently. Improve parsing of property af.resampler.quality. Fix reentrancy bug - allow an instance of high quality and an instance of very high quality to both be active concurrently. Bug: 7229644 Change-Id: I0ce6b913b05038889f50462a38830b61a602a9f7
/frameworks/av/services/audioflinger/Android.mk
|
087dd8e7232e4c009e9121ab7e8c37985522c9ad |
|
27-Sep-2012 |
Glenn Kasten <gkasten@google.com> |
Disable audio watchdog It's not critical, and is wasting power Bug: 7241714 Change-Id: I6ad4375f0000c92529688723dbe0ff0caa809c5d
/frameworks/av/services/audioflinger/Android.mk
|
76b111685010e1fea7c0a865c038aee35507fde4 |
|
17-Jan-2012 |
SathishKumar Mani <smani@codeaurora.org> |
audioflinger: use resample coefficients from audio-resampler library. -Add a separate quality VERY_HIGH_QUALITY in resampler -Use resample coefficients audio-resampler library for quality VERY_HIGH_QUALITY. -This improves the quality of resampled output. Bug: 7024293 Change-Id: Ia44142413bed5f5963d7eab7846eec877a2415e4 Signed-off-by: Iliyan Malchev <malchev@google.com>
/frameworks/av/services/audioflinger/Android.mk
|
2dd4bdd715f586d4d30cf90cc6fc2bbfbce60fe0 |
|
29-Aug-2012 |
Glenn Kasten <gkasten@google.com> |
Move libnbaio out of AudioFlinger libnbaio is now a separate shared library from AudioFlinger, rather than a static library used only by AudioFlinger. AudioBufferProvider interface is now also independent of AudioFlinger, moved to include/media/ Change-Id: I9bb62ffbc38d42a38b0af76e66da5e9ab1e0e21b
/frameworks/av/services/audioflinger/Android.mk
|
c1dae24a08b67b98e18e4239d4f3a74d600d353c |
|
03-Jul-2012 |
Glenn Kasten <gkasten@google.com> |
Remove debug code HAVE_REQUEST_PRIORITY and SOAKER Change-Id: I73a2afe72d8acb53e57e6b4e6fb5133e22b7875a
/frameworks/av/services/audioflinger/Android.mk
|
0a14c4ce1a41bc09eb7855fa531a3af629a69139 |
|
13-Jun-2012 |
Glenn Kasten <gkasten@google.com> |
Make CPU frequency statistics optional Certain CPUs with dynamic cluster swapping and hotplug don't report CPU frequency accurately. The file descriptors used to read the frequency become stale and report bogus data. So make this feature a build time option for debugging only. This will also improve performance of the fast mixer loop. Change-Id: I602f81ec3281a37992769208be08084ed1469e8c
/frameworks/av/services/audioflinger/Android.mk
|
c15d6657a17d7cef91f800f40d11760e2e7340af |
|
30-May-2012 |
Glenn Kasten <gkasten@google.com> |
Add audio watchdog thread Change-Id: I4ed62087bd6554179abb8258d2da606050e762c0
/frameworks/av/services/audioflinger/Android.mk
|
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
/frameworks/av/services/audioflinger/Android.mk
|
399930859a75d806ce0ef124ac22025ae4ef0549 |
|
31-May-2012 |
Glenn Kasten <gkasten@google.com> |
State queue dump Bug: 6591648 Change-Id: Iac75e5ea64e86640b3d890c46a636641b9733c6d
/frameworks/av/services/audioflinger/Android.mk
|
fbae5dae5187aca9d974cbe15ec818e9c6f56705 |
|
21-May-2012 |
Glenn Kasten <gkasten@google.com> |
Keep a copy of most recent audio played Change-Id: I6b2f97881c39998a2fae9ab79d669af6c0a37e94
/frameworks/av/services/audioflinger/Android.mk
|
99c99d00beb43b939dedc9ffb07adb89f6a85ba5 |
|
15-May-2012 |
Glenn Kasten <gkasten@google.com> |
systrace for audio Trace fast track buffer fill status for underruns etc. Move the definition of macro to Android.mk. No overhead if disabled. Change-Id: If0e83e21b61b059ca38f543f8a6ffb58e08c79ee
/frameworks/av/services/audioflinger/Android.mk
|
1dc28b794587be22c90a97070d928f94586db638 |
|
24-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
Use scheduling policy service Change-Id: I3c09da1dc0de5039d0c15ce7fb2bc373fa398712
/frameworks/av/services/audioflinger/Android.mk
|
58912562617941964939a4182cda71eaeb153d4b |
|
03-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
AudioFlinger normal mixer uses FastMixer Change-Id: I3131bb22d2d057e9197a2ebfa6aa1cfaab9e5321
/frameworks/av/services/audioflinger/Android.mk
|
3acbd053c842e76e1a40fc8a0bf62de87eebf00f |
|
28-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Configure policy of mediaserver threads Change-Id: Ifd825590ba36996064a458f64453a94b84722cb0
/frameworks/av/services/audioflinger/Android.mk
|
21e8c50bd13ebe44f3088e26c9c6df0e163c469c |
|
12-Apr-2012 |
Glenn Kasten <gkasten@google.com> |
FastMixer update Updates: - Add support for mono fast tracks - Add support for optional sample rate conversion on fast tracks - Log sample rate and frame count - Enable statistics Change-Id: Ife014edf4f452da361f3eaaae19209ef6ff6958b
/frameworks/av/services/audioflinger/Android.mk
|
97b5d0d5b5ef766eb5dd680d05a5d199662d4ae0 |
|
24-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Fast mixer Change-Id: I61552f83507e08e4c706076b9fb15362869e6265
/frameworks/av/services/audioflinger/Android.mk
|
dc998c809e084b617990b281e2ed5271830cc2e0 |
|
24-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Add template class StateQueue Change-Id: Iccc5eb42bc295a22b2e429a4551f083cd7b6831a
/frameworks/av/services/audioflinger/Android.mk
|
010662326b9c43c703725f933e95e0897f8a6bdd |
|
27-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Non-blocking audio I/O interface, WIP Yet another abstraction similar to AudioTrack::Buffer and AudioBufferProvider, but with support for streaming, non-blocking, and eventually PTS. This is intended to be used as follows: - primary HAL output stream implements a Sink - primary HAL input stream implements a Source - Pipe implements a Sink - PipeReader implements a Source or TimedSource (not shown yet), which supports "read at PTS" - fast AudioTrack on server side will implement a Source using cblk - normal AudioTrack on server side will not be changed initially - fast AudioRecord on server side will implement a Sink using cblk - normal AudioRecord on server side will not be changed initially - fast mixer thread will read from Sources and write to a Sink, or (unlikely) implement a Source and multiple Sinks - Visualization and PCM logger will read from Source or TimedSource - A2DP normal mixer will be connected directly to its output stream and there will be a kind of OutputTrack for duplication that will read from a Sink with non-blocking write fed by the fast mixer. Patch set 3 changes: - Add more implementations of NBAIO interfaces: added SourceAudioBufferProvider, MonoPipe, MonoPipeReader. - Added Format_sampleRate and Format_channelCount. - Extract out the roundUp() method. - Respond to most comments from previous code review. - The new classes are untested. Patch set 4 changes: - Fix bugs in MonoPipe::write() and MonoPipeReader::read() - Fix bug initializing mFrameBitShift too early - renamed roundUp() to roundup() - Fix Android.mk - Add LOG_TAG an LOG_NDEBUG, use ALOG_ASSERT and utils/Log.h instead of assert - Fix build warnings - Move constructor and destructor bodies from .h to .cpp - Line length 100 - Following naming conventions for #include double-include protector macros - Include what you use - More NBAIO logging - MonoPipe write can be blocking Patch set 5 changes: - Address code review comments - Use a static library so unused implementations don't take memory - Comment out libsndfile dependency - Remove debugging LOGV and LOG_NDEBUG Patch set 6 changes (would be 6 at old location, actually 2 at new location): - Address code review comments on patchset 5 - For MonoPipe, allow the full pipe to be used, no need to omit one slot - Don't do atomic releasing stores unless needed Still to do: - I'm not happy with the Pipe class names - Update build/ for new static library? Change-Id: Ie6c61f05ce06b676b033be448a8ef9025a2ffcfd
/frameworks/av/services/audioflinger/Android.mk
|
d12c68ad699ce0ed822a4d4db86e8e02324c6b03 |
|
23-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Revert "AudioFlinger does not need libmedia any more" This reverts commit c920dee060ac69684be33210ee44b99a5fc3e8b2
/frameworks/av/services/audioflinger/Android.mk
|
4f5da11df06802856bf526f16563df7d5755f653 |
|
22-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
AudioFlinger does not need libmedia any more Change-Id: Ifd2c61882109ec36ca68072a2bf6506e08c8cf34
/frameworks/av/services/audioflinger/Android.mk
|
2ee367e444e7b62e02bde8a2e47603a9ad342c6e |
|
20-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Add libmedia_native Change-Id: I3ac357c78fb89f108d15c6e5b9fa317de0e9fb9a
/frameworks/av/services/audioflinger/Android.mk
|
33b383948e8f270bff30378476f00dce289004eb |
|
13-Mar-2012 |
Glenn Kasten <gkasten@google.com> |
Remove dependency on audio_* location Change-Id: I4bc66115fcb9ba22b057bd72db3f561dcb18a0d8
/frameworks/av/services/audioflinger/Android.mk
|
01c4ebf6b794493898114a502ed36de13137f7e5 |
|
22-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
AudioBufferProvider comments and cleanup Add comments about which methods implement the AudioBufferProvider interface. Simplified the definition of kInvalidPts. <stdint.h> is very hard to work with, there seems to be no way to use it reliably to get INT64_MAX without having a separate source file, which is ugly because it means kInvalidPts is not a compile-time constant. So I just deleted AudioBufferProvider.cpp and used a hard-coded constant instead. Added a default constructor for Buffer so that the fields aren't random (especially .raw which is used to determine if the buffer is valid). Make the pts for getNextBuffer default to kInvalidPTS so code that doesn't need a pts doesn't have to specify a value. Rename the parameter to AudioMixer::setBufferProvider to make it clearer. Change-Id: I87e7290884d4ed975b019f62d1ab6ae2bc5065a5
/frameworks/av/services/audioflinger/Android.mk
|
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>
/frameworks/av/services/audioflinger/Android.mk
|
44deb053252a3bd2f57a007ab9560f4924f62394 |
|
06-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Factor out and speed up permission-checking code Use the caching permission check for dump to save IPC. Cache getpid() to save kernel call for other permission checks. The C runtime library getpid() can't cache due to a fork race condition, but we know that mediaserver doesn't fork. Don't construct String16 on the stack. Change-Id: I6be6161dae5155d39ba6ed6228e7683e67be34ed
/frameworks/av/services/audioflinger/Android.mk
|
cdf2158f3b9498d6cd0eb228d8bee16e32399e16 |
|
02-Feb-2012 |
Glenn Kasten <gkasten@google.com> |
Disable HQ resamplers for now until qualified This saves about 6500 bytes. Change-Id: I87102fe561c95c19c9e615dea3de914f96639257
/frameworks/av/services/audioflinger/Android.mk
|
3b21c50ef95fe4e7ac3426ca14b365749e66ff08 |
|
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Extract out audio DSP code to utility library Change-Id: Ib8ce72028a7ea30e82baa518e381370e820ebbd0
/frameworks/av/services/audioflinger/Android.mk
|
feb0db689c17dced50afaee54c659f1676e2d505 |
|
22-Jul-2011 |
Eric Laurent <elaurent@google.com> |
Fix issue 4604090: notification sound interrupted. The problem is that the audio HAL fails to acquire the wake lock when playing the notification. This is because of a change that removed the mediaserver process form the system group for honeycomb. The fix consists in requesting the wake lock from PowerManagerService when AudioFlinger mixer wakes up. A consequence of this change is that audio HALs or pcm drivers do not have to hold wake locks anymore as in the past. Change-Id: I4fb3cc84816c9c408ab7fec75886baf801e1ecb5
/frameworks/av/services/audioflinger/Android.mk
|
e0b5bb23f0a26d248275d203885b820659da7320 |
|
16-Jul-2011 |
Glenn Kasten <gkasten@google.com> |
Merge "Log CPU usage"
|
4d8d0c30abfa4b8d75866d42094cc797e05068fa |
|
09-Jul-2011 |
Glenn Kasten <gkasten@google.com> |
Log CPU usage Change-Id: Ie447e59be139153e526b7ad467c46c659d26816f
/frameworks/av/services/audioflinger/Android.mk
|
5e0067b486c3862316aa1f293cf9690c0cf54bda |
|
12-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Remove the simulator target from all makefiles. Bug: 5010576 Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
/frameworks/av/services/audioflinger/Android.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
/frameworks/av/services/audioflinger/Android.mk
|
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>
/frameworks/av/services/audioflinger/Android.mk
|
6b80e0be94d3f92ec4aa2b7cace816780d3f338d |
|
20-Apr-2011 |
Dima Zavin <dima@android.com> |
audioflinger: move legacy audio hw/policy out to libhardware_legacy Change-Id: I4adcec73d3c08bcbe15bb19e1ba2ff18b195af45 Signed-off-by: Dima Zavin <dima@android.com>
/frameworks/av/services/audioflinger/Android.mk
|
db130fbd3ccd37e247e49494a84f8a9841ecd593 |
|
04-Feb-2011 |
Glenn Kasten <gkasten@google.com> |
Bug 3366885 Remove LVMX switch Change-Id: I0bf98c6f85f00b3296874571e1c049dcc4e2fcca
/frameworks/av/services/audioflinger/Android.mk
|
65ab47156e1c7dfcd8cc4266253a5ff30219e7f0 |
|
15-Jul-2010 |
Mathias Agopian <mathias@google.com> |
move native services under services/ moved surfaceflinger, audioflinger, cameraservice all native services should now reside in this location. Change-Id: Iee42b83dd2a94c3bf5107ab0895fe2dfcd5337a8
/frameworks/av/services/audioflinger/Android.mk
|