History log of /frameworks/base/media/jni/soundpool/SoundPool.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
09468dbbe9d91214a171a2b2f43bd37795f0b8c1 11-Mar-2010 Steve Howard <showard@google.com> Add a name to the previously-unnamed thread created by SoundPoolThread.

SoundPool itself also creates a thread, which was called "SoundPoolThread", unrelated to the SoundPoolThread class. The SoundPoolThread class then created an unnamed thread, which showed up as "android:unnamed_thread". That's confusing, so this change renames the SoundPool thread to "SoundPool" and then names the SoundPoolThread thread as "SoundPoolThread". Say that ten times fast :)

Change-Id: I67b7e644a30c94b6eda44bf970764a52a1c2958b
/frameworks/base/media/jni/soundpool/SoundPool.cpp
7bef5a58f1166c0e2509e27ace07c7af7c5d1d20 17-Feb-2010 Dave Sparks <davidsparks@android.com> Fix logging in SoundPool.
/frameworks/base/media/jni/soundpool/SoundPool.cpp
f992cbb9aae593c7787ac9c5f6b475e7bb0a92c5 09-Feb-2010 Dave Sparks <davidsparks@android.com> Add SoundPool API to pause and resume all active streams. Bug 2426531.
/frameworks/base/media/jni/soundpool/SoundPool.cpp
f6e43bf29084760b39257b2273e0f04c2815fdc5 08-Dec-2009 Dave Sparks <davidsparks@android.com> Add OnLoadCompleteListener to SoundPool.
/frameworks/base/media/jni/soundpool/SoundPool.cpp
c333133107fb492de481a96ed1277e71daf2dd8c 16-Dec-2009 Dave Sparks <davidsparks@android.com> am b5fc8ffc: am 91487425: Merge change I0448ef20 into eclair

Merge commit 'b5fc8ffcff6b8e1747af5c6ba1176a81986b55a8'

* commit 'b5fc8ffcff6b8e1747af5c6ba1176a81986b55a8':
Fix SoundPool buffer size rounding error. Bug 2327620.
66d28cedd92dcc1669ace23231da1b8c1374ff2f 15-Dec-2009 Dave Sparks <davidsparks@android.com> Fix SoundPool buffer size rounding error. Bug 2327620.

AudioTrack was modified earlier to calculate minimum buffer size
based on the hardware reported latency. Previously, it was a
hard-coded value. As a result of this change, the minimum buffer
size is now variable based on hardware latency. On Passion, this
brought out a subtle rounding error in the buffer size calculation
in SoundPool. This can cause AudioTrack creation to fail based on
the requested sample rate. This fix calculates the total buffer
size first, and then does rounding before dividing by the number
of buffers.
/frameworks/base/media/jni/soundpool/SoundPool.cpp
c0e3ddf8f2f30dc9593f0a1bfd46335823e25d65 07-Dec-2009 Dave Sparks <davidsparks@android.com> Remove unused Java object reference in native SoundPool code.
/frameworks/base/media/jni/soundpool/SoundPool.cpp
1b0efec3473134fb7de226f3e1fdade5b3529ad9 31-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 17c195c8: Merge change 9340 into donut

Merge commit '17c195c8da3470b2e69880e206342f0c2d85f938'

* commit '17c195c8da3470b2e69880e206342f0c2d85f938':
Fix issue 2025872: Deadlock in SoundPool.stop
fd8c0e1ff8ef781ba169c0164458ec1ce95ee35c 31-Jul-2009 Eric Laurent <elaurent@google.com> Fix issue 2025872: Deadlock in SoundPool.stop

There were 2 problems in SoundPool:

1 If not using the shared memory buffer mode, there was a problem when a sound channel was stolen. The new channel could sometimes not be added to the restart
list if the AudioTrack callback thread was stopped before the underrun callback was called.

The SoundChannel::play() method is modified so that SoundPool::done() is called immediately after stopping the channel. There is a possibility that done() is called a second time by the callback; in this case it will be added 2 times to the restart list but the second start request will be ignored as the first one will have reset the next chennel ID when processed.

2 There was a deadlock on SoundPool::mLock if SoundPool::stop() was called while a channel restart was pending:
SoundPool::stop() lock mLock -> SoundChannel::stop() -> SoundPool::done() -> SoundPool::addToRestartList() -> try to lock mLock == deadlock

A second mutex mRestartLock is added to protect the restart list mRestart. mLock is still used to protect mChannels list but mRestart is now used to
protect access to mRestart by restart thread and client thread.
/frameworks/base/media/jni/soundpool/SoundPool.cpp
a553c25b33c99b345cf1c8688f8df0ed8df14e5a 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()
/frameworks/base/media/jni/soundpool/SoundPool.cpp
45fce58ca1f8d967bdca574e79837ae2fcfed741 22-Jul-2009 Eric Laurent <elaurent@google.com> Fix issue 1996218: Disable use of shared memory buffer by SoundPool.

Disabled USE_SHARED_MEM_BUFFER compilation switch in SoundPool.cpp.
/frameworks/base/media/jni/soundpool/SoundPool.cpp
3c8704b171c812dde6f48e5416ba0b336470dd4a 30-May-2009 Dave Sparks <davidsparks@android.com> Limit check on maxChannels for SoundPool.
Bug 1838724
/frameworks/base/media/jni/soundpool/SoundPool.cpp
9648e4b6774910afde095be94b8359ae80cd3dcb 07-May-2009 Eric Laurent <elaurent@google.com> fix issue 1641535: SoundPool should use AudioTrack with shared memory buffer

Enabled USE_SHARED_MEM_BUFFER switch in SoundPool.cpp
/frameworks/base/media/jni/soundpool/SoundPool.cpp
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/media/jni/soundpool/SoundPool.cpp
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/media/jni/soundpool/SoundPool.cpp
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
/frameworks/base/media/jni/soundpool/SoundPool.cpp
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/frameworks/base/media/jni/soundpool/SoundPool.cpp
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/media/jni/soundpool/SoundPool.cpp
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/media/jni/soundpool/SoundPool.cpp