Denne tutorial er ikke lavet for at give en dybere indsigt i det at arbejde med lyd i Flash, men blot for at vise hvordan man på forskellige måder kan hente og afspille lyd i Flash samt stoppe lyd.
I denne tutorial vil jeg vise hvordan man på tre forskellige måder kan afspille lyd i Flash nemlig via timeline, via attachSound og via loadSound, samt tilsidst hvordan man igen stopper lyden.
Afspil lyd via timeline.
Lydfilen skal hentes ind i Flash hvilket gør at denne metode bedst egner sig til små lydfiler som f.eks. lydeffekter til knapper eller andet.
Åben Flash og start et nyt dokument.
Opret to nye layers så du har tre. Giv dem henholdsvis navnene musik, indhold og action.
Klik i frame 1 på dit "action" layer, åbn actions panelet(F9) og lav en stop kommando.
stop();
Nu skal vi så have importeret noget lyd ind i Flash.
Gå op i Filer -> Import -> Import to Library, og find en lydfil og klik OK. Lydfilen vil nu findes i dit library(Ctrl+L).
Klik i frame 2 på dit "musik" layer og klik F6 for at lave en tom keyframe.
Klik i frame 2 på dit "musik" layer og træk lydfilen fra dit Library(Ctrl+L) ind på scenen.
Højreklik i frame 50 og vælg Insert Frame, så vil du nu kunne se lydbølgen fra din lydfil. Hvis du ikke kan se slutningen på lydbølgen indsæt da flere frames indtil du kan se slutningen.
Lav nu en knap som skal bruges som play knap (Se evt tutorialen om knapper).
Træk knappen ind på scenen i frame 1 på dit "indhold" layer. Markér kanppen, åbn actions panelet(F9) og skriv følgende actionScript:
on(release){
//gå til frame 2 og afspil
gotoAndPlay(2);
}
Overstående koden går til frame 2 hvor lyden starter og afspiller så derfra.
Indsæt tilsidst frames på dit "indhold" layer som du gjorde i trin 6, således at der er lige så mange frames som på dit "musik" layer.
Derved forsvinder knappen ikke når musik starter.
Tryk Ctrl+Enter for at teste det.
Afspil lyd via attachSound.
Lydfilen skal hentes ind i Flash hvilket gør at denne metode bedst egner sig til små lydfiler som f.eks. lydeffekter til knapper eller andet.
Hvis du har lavet første del af denne tutorial forsæt da på samme dokument, ellers lav trin 1-4 i afsnittet "Afspil lyd via timeline".
Højreklik på din lydfil ude i Library(Ctrl+L) og vælg "Linkage...".
Afkryds "Export for ActionScript" samt "Export in first frame" og giv filen et identifier navn.
Dette gør at filen kan tilgås via actionScript.
Lav nu en knap som skal bruges som play knap, eller brug den du allerede har hvis du har lavet første del af denne tutorial (Se evt tutorialen om knapper).
Træk knappen ind på scenen i frame 1 på dit "indhold" layer. Markér kanppen, åbn actions panelet(F9) og skriv følgende actionScript:
on(release){
//opretter et nyt sound objekt kaldet my_sound
var my_sound:Sound = newSound();
//henter en lyd fra library og putter
//den ind i det netop oprettet sound objekt
my_sound.attachSound("sound2");
//starter lydfilen fra starten
my_sound.start(0);
}
Overstående koden opretter et sound objekt og henter via attachSound() lydfilen fra Library ind i sound objektet(kan kun gøres når en fil er sat til "Export for ActionScript" i "linkage..."). Tilsidst startes lydfilen fra sek. 0.
Tryk Ctrl+Enter for at teste det.
Afspil lyd via loadSound.
Hvis du skal have afspillet større lydfiler er det loadSound du skal bruge. LoadSound kan bruges til at streame eksterne lydfiler, altså lydfiler som ikke først skal hentes ind i Flash. Da lydfilerne ikke skal importeres ind i Flash, er loadSound den bedste løsning til at lave f.eks. en musikafspiller.
Hvis du har lavet første eller anden del af denne tutorial forsæt da på samme dokument, ellers lav trin 1-3 i afsnittet "Afspil lyd via timeline".
Lav nu en knap som skal bruges som play knap, eller brug den du allerede har hvis du har lavet første eller anden del af denne tutorial (Se evt tutorialen om knapper).
Træk knappen ind på scenen i frame 1 på dit "indhold" layer. Markér kanppen, åbn actions panelet(F9) og skriv følgende actionScript:
on(release){
//opretter et nyt sound objekt kaldet my_sound
var my_sound:Sound = newSound();
//henter og streamer en ekstern lydfil med navnet "sound3.mp3"
//som puttes ind i det netop oprettet sound objekt
my_sound.loadSound("sound3.mp3", true);
//starter lydfilen fra starten
my_sound.start(0);
}
Overstående koden opretter et sound objekt og henter via loadSound() en ekstern lydfil ind i sound objektet. "true" i loadSound angiver om lydfilen skal streames, eller om den først skal starte når hele filen er loadet (false). Tilsidst startes lydfilen fra sek. 0.
Tryk Ctrl+Enter for at teste det.
Stop lyd.
Lyd kan stoppes på forskellige måder i Flash. Her kommer to måder at gøre det på.
Lav nu en knap som skal bruges som stop knap(Se evt tutorialen om knapper).
Træk knappen ind på scenen i frame 1 på dit "indhold" layer. Markér kanppen, åbn actions panelet(F9) og skriv følgende actionScript:
on(release){
//stopper alt lyd
stopAllSounds();
}
Overstående koden stopper alt lyd der er under afspilning.
Hvis du ikke ønsker at stoppe alle lyde, men blot en bestemt lyd, kan det gøres med følgende kode:
on(release){
//stopper lyden i sound objektet my_sound
my_sound.stop();
}
Overstående koden stopper lyden i et bestemt sound objekt. I dette tilfælde sound objektet "my_sound".
Super!!! Men hvordan pauser man lyd? Det kunne være fedt, hvis du ville tilføje. Jeg har været inde og kigge i hjælpefilerne, og det ligner at der kun findes .stop() og .start().