Avatar billede fab Nybegynder
10. maj 2004 - 17:32 Der er 6 kommentarer

Flash som sequencer ?

Hej med jer,

Jeg har en flashfil med 3 wav filer læst ind i dets library. Dem kalder vi 01, 02 og 03.

Jeg vil gerne kombinere lydfilerne som f.eks. 02,01,01,03,02 etc. direkte i min flash film, altså så de forskellige filer afløser hinanden i en sekvens.

Der må naturligvis ikke være pause mellem filerne eller noget.

Jeg har forestillet mig et MC som hedder "sequencer" som jeg laver et action script i. Men jeg er fuldstændig blank på hvad dette actionscript dog skal indeholde, og nu har jeg efterhånden brugt så lang tid på at løse det så jeg sætter 60 points på højkant - selvom det sikkert er supernemt for nogle af jer herinde.

På forhånd tak,
Frederik
Avatar billede pyroman Nybegynder
10. maj 2004 - 21:46 #1
tja - det er ændda ekstra ligetil når man er sikker på at de hedder 01, 02 osv. Jeg går ud fra at 10 bare hedder "10" så der altid er 2 cifre...

du kan simpelthen bruge dette lille smarte script:

function playNextSong (){
  sequencer.stop();
  var nextName = Math.ceil(Math.random()*maxSounds);
  nextName = (nextName < 10) ? "0"+nextName : ""+nextName;
  sequencer.attachSound(nextName);
  sequencer.play();
}
var maxSounds = 3;
var sequencer = new Sound();
sequencer.onSoundComplete = playNextSong;
playNextSong();
Avatar billede fab Nybegynder
10. maj 2004 - 22:32 #2
Hej Pyroman,

Tak for svar !

Sådan som jeg læser dit indlæg, så lægger du op til at de bliver spillet random. Jeg tror, at jeg har været upræcis i mit spørgsmål; jeg ville netop kunne styre at først vil jeg have 4 gange lydfil 1 og derefter 8 gange lydfil 2 etc.

Så det er måske mere et spørgsmål der går på hvordan jeg får loadet lydfilerne ind via actionscrip og sørget for at de bliver afspillet i den rigtige rækkefølge ?

Giver det mening eller er jeg helt ude i hampen ?

Frederik
Avatar billede pyroman Nybegynder
10. maj 2004 - 22:51 #3
ahh - ok en kombination kan da også laves - dette er nemmest med et array:


function playNextSong (){
  sequencer.stop();
  currentSound++;
  if(currentSound > soundArr.length) currentSound = 0;
  sequencer.attachSound(soundArr[currentSound]);
  sequencer.play();
}
var soundArr = new Array("02","01","01","03","02");
var currentSound = -1;
var sequencer = new Sound();
sequencer.onSoundComplete = playNextSong;
playNextSong();

så ændrer du bare kombinationen i arrayet "soundArr"...
Avatar billede fab Nybegynder
10. maj 2004 - 23:03 #4
Hvor tjekket

Og kommandoen sequencer.attachSound i linie 5 loader sangene - eller skal jeg lige huske at sætte dem til Action Script Export i Linkage i mit Library, hvor jeg jo kalder dem 01, 02, 03 og så'n ?

Ærbødigst,
Frederik
Avatar billede fab Nybegynder
08. december 2004 - 00:02 #5
hov pyroman, du lagde aldrig et svar for denne --- kan du ikke lige gøre det, så kan jeg tildele dig pointsne?
Avatar billede pyroman Nybegynder
08. december 2004 - 16:02 #6
hæh - glemmer det altid hvis man ikke minder mig om det mindst tre gange... ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester