sound per as abstellen?

TOBITULPI

Mitglied
Ich würd gern einen aufgerufenen sound nach einer sekunde wieder abstellen. sound.stop(); funktioniert hierfür irgendwie nicht. Fällt hier wem was ein?

Danke
 
Hi,

1. Poste bitte mal etwas mehr Code (insbesondere den Teil, in dem Du den Sound startest).

2. Halte Dich bitte bezüglich Groß- und Kleinschreibung an unsere Netiquette.

Gruß
.
 
So mal die Funktion. ich hatte es mit while versucht an die zeit ranzukommen, steuert sich aber sehr ungenau.

PHP:
function playSound() {
		myKlang = new Sound(this);
		myKlang.attachSound("harfe");
		myKlang.start(zeit, 1);
		var i:Number = 0;
		while (i<5000) {
			if (myKlang.position>100) {
				myKlang.stop();
			}
		i++;
		}
	}
 
Hi,

Du solltest eher versuchen mit einer "onEnterFrame" Methode die Zeit zu erfassen. Dann kannst Du halt die Bilder zählen, die ablaufen; aus der holen Hand ungefähr so:

Code:
function playSound() { 
  myKlang = new Sound(this); 
  myKlang.attachSound("testSound"); 
  myKlang.start(); 
  var i = 0;
     this.onEnterFrame = function() {
     if (i > 500) {
        myKlang.stop()
        delete this.onEnterFrame;
     };
     i++;
  };
}

Wieviele i eine Sekunde sind, hängt dann von der eingestellten Bildrate in Deinem Film ab.

Es soll da auch so was wie "setInterval" geben, aber damit kenne ich mich nicht aus. Nur als Tipp zum Suchen. ;)

Gruß
 
Hi,

die Position-Eigenschaft lässt sich auch für eine Überprüfung der Abspieldauer verwenden, wie skomsnaes allerdings richtig bemerkt, solltest Du zum Überwachen eine onEnterFrame-Methode bzw. ein Intervall verwenden. Mit Schleifen lassen sich laufende Prozesse nicht auf Dauer überwachen, da während des Ablaufs einer solchen alle anderen Prozesse angehalten werden.

Gruß
.
 
Zurück