PDA

Volledige versie bekijken : mp3 player begint automatisch te spelen


SheepSetsFire
%Europe/Berlin %513 %2005, 13:19
ik ben dus nog maar een beginneling in flash en wil een mp3 speler gestuurd met xml op mijn site hebben

HIER (http://www.pixel2life.com/twodded/t_create_a_full_streaming_flash_mp3_player_using_x ml_/page1/) vond ik dit script:

stop();
playlist= new XML();
playlist.ignoreWhite=true;
playlist.onload = function (success) {
if(success) {
_global.songname = [];
_global.songfile = [];
for (var i=0; i<playlist.firstChild.childNodes.length; i++) {
_global.songname = playlist.firstChild.childNodes[i].attributes.name;
_global.songfile[i] = playlist.firstChild.childNodes[i].attributes.file;
trace(songname[i]+" "+songfile[i]); }
_root.createEmptyMovieClip("sound_mc",1);
_root.sound_mc.sound_obj = new Sound();
_global.song_nr = random(songfile.length); _root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
} else {display_txt.text="Error Loading XML"}
}

MovieClip.prototype.songStarter = function (file, name) {
this.sound_obj.loadSound(file,true)
this.onEnterFrame = function () {
if(this.sound_obj.position>0) {
delete this.onEnterFrame;
this._parent.display_txt.text=name;
} else {
this._parent.display_txt.text="loading..."
}
}
this.sound_obj.onSoundComplete = function () (song_nr==songfile.length-1)? _global.song_nr=0 : _global.song_nr++;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
}

btn_play.onRelease = function () {
this._parent.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
btn_stop.onRelease = function() {
this._parent.sound_mc.sound_obj.stop();
}
btn_next.onRelease = function () {
(song_nr==songfile.length-1)? _global.song_nr=0 : _global.song_nr++;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
btn_prev.onRelease = function () {
(song_nr==0)? _global.song_nr=songfile.length-1 : _global.song_nr--;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}

playlist.load("playlist.xml");

hij begint autmatisch te spelen als je hem opent, hoe verhinder je dit? m.a.w. hoe laat je hem pas spelen als je op knop 'play' duwt

btw er staat een voorbeeld op de site

gbolssens
%Europe/Berlin %538 %2005, 13:55
Hoi SheepSetsFire,

Gooi er eens wat indentation in want dit codevoorbeeld leest voor geen meter. Ik denk dat de forum tags [ as ] en [ /as ] misschien wel indenten; anders zelf ff in je AS editor plakken en formatten.

greetz,
GB

SheepSetsFire
%Europe/Berlin %565 %2005, 14:34
stop();
playlist= new XML();
playlist.ignoreWhite=true;
playlist.onload = function (success) {
if(success) {
_global.songname = [];
_global.songfile = [];
for (var i=0; i<playlist.firstChild.childNodes.length; i++) {
_global.songname = playlist.firstChild.childNodes[i].attributes.name;
_global.songfile[i] = playlist.firstChild.childNodes[i].attributes.file;
trace(songname[i]+" "+songfile[i]); }
_root.createEmptyMovieClip("sound_mc",1);
_root.sound_mc.sound_obj = new Sound();
_global.song_nr = random(songfile.length); _root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
} else {display_txt.text="Error Loading XML"}
}

MovieClip.prototype.songStarter = function (file, name) {
this.sound_obj.loadSound(file,true)
this.onEnterFrame = function () {
if(this.sound_obj.position>0) {
delete this.onEnterFrame;
this._parent.display_txt.text=name;
} else {
this._parent.display_txt.text="loading..."
}
}
this.sound_obj.onSoundComplete = function () (song_nr==songfile.length-1)? _global.song_nr=0 : _global.song_nr++;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
}

btn_play.onRelease = function () {
this._parent.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
btn_stop.onRelease = function() {
this._parent.sound_mc.sound_obj.stop();
}
btn_next.onRelease = function () {
(song_nr==songfile.length-1)? _global.song_nr=0 : _global.song_nr++;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}
btn_prev.onRelease = function () {
(song_nr==0)? _global.song_nr=songfile.length-1 : _global.song_nr--;
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);
}

playlist.load("playlist.xml");



ok dit weet ik dan ook weeral :)

SheepSetsFire
%Europe/Berlin %665 %2005, 16:57
weet dan echt niemand dit? :(

gbolssens
%Europe/Berlin %691 %2005, 17:36
weet dan echt niemand dit? :(

Wilde gok, maar ik zie dat je een Sound object aanmaakt om je geluidje mee af te spelen. Als je dan zegt:


_root.sound_mc.sound_obj.stop();


ergens in je eerste frame op het einde van je script, dan zou'die toch moeten stoppen? of ben ik fout?


greetz,
GB

SheepSetsFire
%Europe/Berlin %700 %2005, 17:48
hmm
het lukt mij toch niet :s

het is de bedoeling dat er dan wel nog de titel komt te staan en de tijd op nul blijft staan

maar zelfs zonder dat lukt het mij niet

flashfreak
%Europe/Berlin %718 %2005, 18:15
mss de functie StopAllSounds () ?

SheepSetsFire
%Europe/Berlin %721 %2005, 18:19
waar moet ik die dan zetten?

flashfreak
%Europe/Berlin %723 %2005, 18:21
nadat je je geluid(en) ingeladen hebt (ik veronderstel dat je je code kent)

Gerrit55
%Europe/Berlin %749 %2005, 18:58
bij het inladen, start je je sound al

_global.song_nr = random(songfile.length);
_root.sound_mc.songStarter(songfile[song_nr],songname[song_nr]);


prototype Songstarter
de 2e parameter van het sound-object geeft aan of je wel of geen streaming gebruikt.
Als deze op false staat (dus niet streaming), wordt eerst je complete geluid ingeladen en begint pas na een sound.play() te spelen
Als je streamed, dan wordt er zoveel van je geluid ingeladen om met afspelen te kunnen beginnen, dit gebeurt dus automatisch, wil je dit niet, dan zet je direkt onder je loadsound een sound.stop()

je controleert je met oEF op sound.position. Deze position wordt alleen verhoogd als je sound al speelt, dus waarvoor je prototype?

Als je geluid alleen wilt starten met je playknop, zou ook de regel songStarter (boven in AS) kunnen verwijderen.

SheepSetsFire
%Europe/Berlin %760 %2005, 19:14
ok heel erg bedankt allemaal :)

nu kan ik sffs mn site online zetten:
www.chimairaworld.com