Sound on / off

Perlenputzer

Grünschnabel
Hallo,

ich benötige einen kleinen, eigentlich einfachen Flashplayer. :rolleyes:
Wenn die Internetseite aufgerufen wird soll automatisch ein Lied abgespielt werden, welches ich über einen Button aus und bei Wunsch wieder anschalten kann.

Nun habe ich festgestellt das mit Java und Html da wohl nicht viel zu machen ist. Flash wurde dazu empfohlen.

Also hab ich mein letztes Flash zusammengekratzt und folgendes erstellt. 1 Button mit 2 Zuständen als Movieclip mit der Aufschrift Musik an / aus.

Wird die Seite aufgerufen passiert leider nix. Aber beim klicken auf den Button spielt das Lied und beim wiederholten klicken auf den Button hört es wieder auf. Der Movieclip wechselt dabei auch brav die Zustände.

Das Lied habe ich über eine playlist.txt eingefügt und es streamt im Hintergrund. So kann ich jederzeit die Lieder leicht in der playlist.txt austauschen und mehrere Lieder hinzufügen. Und es spielt ab, bevor das Lied ganz geladen ist. Eigentlich nicht übel *stolz bin*. :)

Nun fehlt nur noch das automatische abspielen des Liedes beim laden der Seite. Aber dafür reicht mein Flash leider nicht.

Kann mir damit jemand helfen? :confused:

Ich habe die *.fla + die playlist.txt als Datei bereitgelegt. Es muss nur ein Lied mit dem Namen lied.mp3 in den selben Ordner eingefügt werden. Man darf ja nicht so einfach fremde Lieder zum Download bereitstellen, gell ;-)

Ich bin mal gespannt was für einen Unfug ich da getrieben habe, oder ob die Lösung nur eine kleine Sache ist.

Vielen Dank schonmal Euer Perlenputzer


Hier noch die Codes:
Bild 1

loadContainer = new loadVars();
loadContainer.onLoad = function() {
if (loadContainer.playlist.indexOf("\n")) {
loadContainer.playlist = loadContainer.playlist.slice(0, loadContainer.playlist.indexOf("\n"));
}
_root.playlist = loadContainer.playlist.split("#");
_root.aktuell = 0;
_root.gotoAndStop(2);
};
loadContainer.load("playlist.txt");
stop();

Bild 2

stop();
function startsong() {
song = new Sound(_root);
song.onSoundComplete = nextsong;
song.loadSound(playlist[aktuell], true);
song.start(0, 0);
}
function stopsong() {
song.stop();
}
function nextsong() {
stopsong();
aktuell++;
if (aktuell>=playlist.length) {
aktuell = 0;
}
startsong();
}
 

Anhänge

  • sound.zip
    3,1 KB · Aufrufe: 24
Hi und willkommen im Forum,

Du musst die Funktion "startsong" in Frame 2 direkt aufrufen:
Code:
stop();
function startsong() {
	song = new Sound(_root);
	song.onSoundComplete = nextsong;
	song.loadSound(playlist[aktuell], true);
	song.start(0, 0);
}
function stopsong() {
	song.stop();
}
function nextsong() {
	stopsong();
	aktuell++;
	if (aktuell>=playlist.length) {
		aktuell = 0;
	}
	startsong();
}

startsong();
Damit der Button zunächst den "Abspielen"-Zustand zeigt, solltest Du auf der Instanz zum entsprechenden Bild springen:
Code:
onClipEvent (load) {
	this.gotoAndStop(2);
	_root.spieltgerade = true;
}

Noch etwas: Du scheinst mit Flash 6 zu arbeiten, welches keinen Wert auf Groß- und Kleinschreibung bei Bezeichnern legt. Dennoch solltest Du Dich danach richten, um weniger Probleme beim Umstieg auf neuere Versionen zu bekommen. Flash 8 hat mir z.B. beim Kompilieren eine Fehlermeldung ausgegeben, da Du in Frame 1 die LoadVars-Klasse mit kleinem "l" geschrieben hast:
Code:
loadContainer = new loadVars();
Korrekt wäre:
Code:
loadContainer = new LoadVars();

Gruß
.
 
Hallo Tobias,

ich habe wegen dem sound on/off seit Tagen ein blödes Bauchgefühl, da ich dachte ich pack das nie. :suspekt:

Bis ich heute beschlossen habe ein Forum damit zu "belästigen". :eek:

Und innerhalb von 30 min ist mein Problem gelöst, perfekt gelöst. 5 min für Deine Rückantwort, 25 min für meine mehr als 3 Fragezeichen im Gesicht. :confused:

Aber es ist geschafft. Nun kann ich die Button noch anhübschen und bin Dir unendlich dankbar

Super das es Euch gibt.

Herzlichste Grüße der Perlenputzer mit einem sehr zufriedenen Lächeln :p
 
Zurück