Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Android Developer > Android App Entwicklung

SoundPool spielt Ton zu oft überreinander ab

Das Thema "SoundPool spielt Ton zu oft überreinander ab" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 22.07.2011, 13:56   #1 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 06.07.2011
Beiträge: 71
Abgegebene Danke: 14
Erhielt 7 Danke für 7 Beiträge
Standard SoundPool spielt Ton zu oft überreinander ab

Hi AH Community,
ich hab ein Problem mit dem Soundpool, ich will einen Ton abspielen sobald der Wert des Lichtsensors unter einen bestimmten Wert fällt. Das Problem dabei ist, dass der Wert sehr oft schwankt und somit der Ton öfters übereinander abgespielt wird.

Code:
SensorEventListener lightSensorEventListener
    = new SensorEventListener(){
..
public void onSensorChanged(SensorEvent arg0) {
..
 if(start == true){
		   if(arg0.values[0] < Threshold){
			    float actualVolume = (float) audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
	   			float maxVolume = (float) audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
	   			float volume = actualVolume / maxVolume;
	   			// Is the sound loaded already?
	   			if (loaded) {
	   				soundPool.play(soundID, volume, volume, 1, 0, 1f);
	   				Log.e("Test", "Played sound");
	   			}
	   		}
	   }else{
		   
	   }
	   
   }};
Wie gesagt das Problem ist, dass er beim schnellen Schwanken des Sensorwertes den Sound übereinander abspielt. Das ist aber unschön.
Kann ich beim SoundPool irgendwie abfragen, ob zur zeit etwas gespielt wird und darauf reagieren? Oder sollte man das irgdendwie anders lösen?

Danke euch!

Gruß Soma
soma-web ist offline   Mit Zitat antworten
Alt 22.07.2011, 14:54   #2 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 14.12.2010
Beiträge: 128
Abgegebene Danke: 25
Erhielt 5 Danke für 4 Beiträge
Standard AW: SoundPool spielt Ton zu oft überreinander ab

Wenn der Sound gestartet wird, merkst du dir die aktuelle Zeit.
Wird der Sound erneut versucht zu starten, testest du ob die Laenge des Sounds vergangen ist, seit der sound das letzte mal gestartet hat.

Vorraussetzung hierfuer ist, dass du die Laenge des Soundes hast.
computer_freak ist offline   Mit Zitat antworten
Alt 22.07.2011, 15:11   #3 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 06.07.2011
Beiträge: 71
Abgegebene Danke: 14
Erhielt 7 Danke für 7 Beiträge
Standard AW: SoundPool spielt Ton zu oft überreinander ab

Danke, aber hab es jetzt mit nem MediaPlayer gelöst:

Code:
boolean completed = true;
MediaPlayer mMediaPlayer;

 @Override
   public void onCreate(Bundle savedInstanceState) {
...
//MEDIAPLAYER
		mMediaPlayer = MediaPlayer.create(this, R.raw.alarm_1);
		mMediaPlayer.setLooping(false);
		mMediaPlayer.setOnCompletionListener(complete);
}
//Listener wenn Song vorbei ;)
private OnCompletionListener complete = new OnCompletionListener(){
	   public void onCompletion(MediaPlayer arg0){
		   completed =  true;
	   }
   };
//z.b. beim Button event
private OnClickListener btListener = new OnClickListener()
   {
   	public void onClick(View v){   	
   		
   		if(completed){   		
   		mMediaPlayer.start();
   		completed = false;
   		}
           }
};
soma-web ist offline   Mit Zitat antworten
Alt 22.07.2011, 15:19   #4 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 14.12.2010
Beiträge: 128
Abgegebene Danke: 25
Erhielt 5 Danke für 4 Beiträge
Standard AW: SoundPool spielt Ton zu oft überreinander ab

Jop, hier hast du zur erleichterung den onCompletionListener.
Du brauchst uebrigens keine variable "completed",
der MediaPlayer kommt bereits mit einer Methode "isPlaying()", die du einsetzen kannst.
computer_freak ist offline   Mit Zitat antworten
Folgender Benutzer bedankt sich bei computer_freak für diesen Beitrag:
soma-web (23.07.2011)
Alt 22.07.2011, 15:26   #5 (permalink)
Android-Hilfe.de Mitglied

Registriert seit: 06.07.2011
Beiträge: 71
Abgegebene Danke: 14
Erhielt 7 Danke für 7 Beiträge
Standard AW: SoundPool spielt Ton zu oft überreinander ab

Aaah noch besser.
Werd ich demnächst Umsetzen danke!
soma-web ist offline   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
meldet sich oft ab FredMücke Samsung Galaxy Ace (S5830) Forum 2 19.06.2011 08:29
Music Player spielt verückt, und SMS-Ton geht nicht? Keram Samsung Galaxy 551 (I5510) Forum 1 12.06.2011 10:44
Galaxy S hängt oft.... Andy K. Samsung Galaxy S (I9000) Forum 13 07.01.2011 18:13
facebook signal ton spielt MP3 ab sodah HTC Desire Forum 6 28.12.2010 17:57




Du liest gerade: "SoundPool spielt Ton zu oft überreinander ab" unter "Android App Entwicklung" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.