Fixed
Status Update
Comments
sh...@gmail.com <sh...@gmail.com> #2
Comment has been deleted.
sh...@pinterest.com <sh...@pinterest.com> #3
Sleep as Android users who upgraded to 4.3 recently report the same issue. It seems SoundPool looping is broken in 4.3...
hu...@google.com <hu...@google.com> #4
I can approve the issue is reproducible on the 4.3 emulator. Unfortunately no hint in in the logcat related to audio or sound pool which would give further insight. The only think I'm getting releted to SoundPool every time I try using it is:
07-29 12:19:43.844: ERROR/SoundPool(296): error loading /system/media/audio/ui/KeypressReturn.ogg
07-29 12:19:43.864: WARN/AudioService(296): Soundpool could not load file: /system/media/audio/ui/KeypressReturn.ogg
07-29 12:19:43.814: WARN/AudioService(296): Soundpool could not load file: /system/media/audio/ui/Effect_Tick.ogg
07-29 12:19:43.814: ERROR/SoundPool(296): error loading /system/media/audio/ui/Effect_Tick.ogg
...
07-29 12:19:43.864: WARN/AudioService(296): onLoadSoundEffects(), Error -1 while loading samples
07-29 12:19:43.844: ERROR/SoundPool(296): error loading /system/media/audio/ui/KeypressReturn.ogg
07-29 12:19:43.864: WARN/AudioService(296): Soundpool could not load file: /system/media/audio/ui/KeypressReturn.ogg
07-29 12:19:43.814: WARN/AudioService(296): Soundpool could not load file: /system/media/audio/ui/Effect_Tick.ogg
07-29 12:19:43.814: ERROR/SoundPool(296): error loading /system/media/audio/ui/Effect_Tick.ogg
...
07-29 12:19:43.864: WARN/AudioService(296): onLoadSoundEffects(), Error -1 while loading samples
sh...@pinterest.com <sh...@pinterest.com> #5
I did try a non -1 looping parameter and it seems even finite looping is broken. Did someone had a chance to look at the 4.3 sources for SoundPool? Thanks.
hu...@google.com <hu...@google.com> #6
Incorrect behaviour also on Nexus 7 since 4.3.
Easy to reproduce, Code nearly as above:
https://play.google.com/store/apps/details?id=nax.naxan.virtualfan
(in Mode Soundpool on 4.3 only one loop is played, on 4.2 it's looping)
Addition:
The code in 4.2.2 looks like looping is done in the native part:
http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.2.2_r1/android/media/SoundPool.java/
Easy to reproduce, Code nearly as above:
(in Mode Soundpool on 4.3 only one loop is played, on 4.2 it's looping)
Addition:
The code in 4.2.2 looks like looping is done in the native part:
as...@gmail.com <as...@gmail.com> #7
I'm having the same problem, loop will only play once :\
hu...@google.com <hu...@google.com> #8
[Comment deleted]
as...@gmail.com <as...@gmail.com> #9
Same here, I've only managed to solve it by using MediaPlayer instead, although I think the looping sounds clunkier.
hu...@google.com <hu...@google.com> #10
Got the same problem on Gnex 4.3, can't use the MediaPlayer since I need the setRate Method for car engine pitch modification.
90% of car/bike games on the play store have their engine sound effect broken on 4.3 due to this.
90% of car/bike games on the play store have their engine sound effect broken on 4.3 due to this.
sh...@pinterest.com <sh...@pinterest.com> #11
The same for nexus 7.
hu...@google.com <hu...@google.com> #12
Same for Nexus 4 and Nexus 7 with Android 4.3. Audio in Android is a big mess..... ;/
sh...@pinterest.com <sh...@pinterest.com> #13
Same problem on a Nexus 7, both infinite and finite looping are not working. The same code works on a phone running 4.2.2.
as...@gmail.com <as...@gmail.com> #15
Yes I get this issue on nexus 7 4.3
hu...@google.com <hu...@google.com> #16
Having the same problem 2 please fix this
as...@gmail.com <as...@gmail.com> #17
Same issue 36907002 Nexus 7 running 4.3
an...@google.com <an...@google.com> #18
Needs fixing.
hu...@google.com <hu...@google.com> #19
Must be fixed
ma...@gmail.com <ma...@gmail.com> #20
Comment has been deleted.
Description
(I'm creating this bug based on Internal Issue 234414461 .)
Steps to reproduce
app
, setminSdk >= 24
(whenminSdk < 24
, dexing transforms are not incremental)lib
, setcompileOption.targetCompatibility = "11"
(in lower Java versions, nest members do not exist)lib
, write a Java class with nested classes./gradlew :app:mergeLibDexDebug --build-cache
at that location../gradlew :app:mergeLibDexDebug --build-cache
. Many tasks/transforms should have cache hits../gradlew :app:mergeLibDexDebug --build-cache
again. It will fail with:Root cause
Dexing transforms use a desugaring graph to store dependencies among class files for incremental dexing/desugaring.
The desugaring graph's nodes are currently absolute paths, which means after a remote cache hit, it will not be usable and will result in subsequent failed incremental builds.
We were aware of this issue when designing the graph and used a workaround , but (I think) at some point Gradle changed the behavior and it no longer worked.
Potential fix
Make the desugaring graph relocatable. It is a bit difficult because there isn't one single root path to normalize the absolute file paths (instead, there are multiple root paths).
(If we can't work out a solution soon, the temporary measure is to ensure in the first build after a remote cache hit, affected transforms will be non-incremental.)