Jump to content
  • Advertisement
Sign in to follow this  

[Solved] SoundPool Broken Method: load(String path, int priority)

This topic is 2277 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have some sources that may not be able to prove the method, "load(String path, int priority)" can work.

So far, I have come across many sources that recommend others to not use load(String path, int priority). Not, I say, not. If you want the list of all the sources, feel me to PM me, and I'll give you at least 8 of them.

I do see some benefits (easy to do, less hassle, etc.), but I'm not satisfied. It's my curiosity that piped me, in ensuring the above method mentioned really does work, as defined in the Android Developers Documentation.

Here's what I have worked out so far (My research):


//These will not load. Gives error:
/* error loading <string goes here> */
/* sample 0 NOT ready */
sounds.play(sounds.load("assets/test", 1), 1f, 1f, 1, 0, 1f);
sounds.play(sounds.load("/assets/test", 1), 1f, 1f, 1, 0, 1f);
sounds.play(sounds.load("assets/test.wav", 1), 1f, 1f, 1, 0, 1f);
sounds.play(sounds.load("/assets/test.wav", 1), 1f, 1f, 1, 0, 1f);

[font=courier new,courier,monospace][color=#0000FF]sounds[font=arial,helvetica,sans-serif] is a SoundPool variable initialized in the onResume(). All of these methods are placed in a [font=courier new,courier,monospace]setOnClickListener.onClick(View v)[/font] wrapped/set for a [font=courier new,courier,monospace]Button[/font] object in the R.layout.main.[/font][/font]

[font=courier new,courier,monospace]test.wav [/font]is a WAV file placed directly in the /assets folder in an Android project. The Android project is generated by Eclipse by default. Nothing else was edited/changed.


So, of course, I sat in my seat for how long it had been, pondering such a question. I decided, why not share my findings with you all, as it does not harm anybody at all? And here we are, and me initiating a challenge to all.

Who knows how to correctly use [font=courier new,courier,monospace]Soundpool.load(String path, int priority)[/font] method?

[size=1]I hope to see a few "Challenge Accepted" posts below. I know it's bad, but I like having fun...

Share this post

Link to post
Share on other sites

It's possible that the [font=courier new,courier,monospace]path[/font] in the method [font=courier new,courier,monospace]load(String path, int priority)[/font] stands for the path to an audio file located on the SD card. Am I correct?

I do not know. Nor do I know anything that says the [font=courier new,courier,monospace]path[/font] is for the entire path directory to the audio file in the SD file, by the Documentation. It doesn't say, and probably nobody cares about it.

Share this post

Link to post
Share on other sites
Update 2:

I think it's confirmed that the "path" may or may not stands for the directory to the SD card on the Android phone. To fetch a more reliable directory (a starting point, like C:\> in cmd.exe of Windows variants), use helper methods, such as "Environment.getExternalStorageDirectory()".

path may have different starting points in different devices, even if the devices in question is not a tablet, nor a phone. It could me /mnt/sda5, /mnt/card, etc. It is declared by the manufacturer what the Environment variables are.

This is also a good way to learn more things while doing research.

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!