Jump to content

  • Log In with Google      Sign In   
  • Create Account


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


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
2 replies to this topic

#1 tom_mai78101   Members   -  Reputation: 523

Like
0Likes
Like

Posted 13 September 2012 - 10:03 AM

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 <[i]string goes here[/i]>	*/
	 /*	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);


sounds is a SoundPool variable initialized in the onResume(). All of these methods are placed in a setOnClickListener.onClick(View v) wrapped/set for a Button object in the R.layout.main.

test.wav 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 Soundpool.load(String path, int priority) method?

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

Sponsor:

#2 tom_mai78101   Members   -  Reputation: 523

Like
0Likes
Like

Posted 14 September 2012 - 03:39 AM

Update:

It's possible that the path in the method load(String path, int priority) 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 path 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.

#3 tom_mai78101   Members   -  Reputation: 523

Like
0Likes
Like

Posted 18 September 2012 - 10:20 AM

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.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS