In deze korte tutorial zal ik u kennis laten maken met de ASAudio en AS3-bibliotheek die de hoeveelheid code die nodig is om een geluidsobject in uw ActionScript-projecten te creëren en manipuleren aanzienlijk te verminderen..
ASAudio is een ActionScript 3-bibliotheek die de hoeveelheid code die nodig is voor het maken en manipuleren van (volumewijzigingen, pan) audiobestanden aanzienlijk beperkt 'binnen uw ActionScript-projecten. Normaal gesproken zou u het volgende moeten doen om het volume van een geluid in ActionScript in te laden, af te spelen en te wijzigen:
var urlRequest: URLRequest = new URLRequest ("path / to / track.mp3"); var sound: Sound = new Sound (urlRequest); var soundChannel: SoundChannel = sound.play (); var soundTrans: SoundTransform = soundChannel.soundTransform; soundTrans.volume = .5; soundChannel.soundTransform = soundTrans;
Met ASAudio hoeft u alleen het volgende te doen
var track: Track = new Track ("path / to / track.mp3"); track.start (); track.volume = .5;
Ga naar de Google Code-pagina van het project en download de nieuwste versie van ASAudio.
Als je het eenmaal hebt gedownload, pak je het uit en kopieer je de "com" -map in de map "src" naar de map waar je je ActionScript-project gaat maken..
Start een nieuw ActionScript-project en sla het op in uw projectmap als "asAudio.fla". Stel in het paneel "PROPERTIES" de stadiumkleur in op wit en geef deze een breedte en hoogte van 500x150 px.
Maak nu een nieuw ActionScript-bestand en sla dit op als "Main.as". Stel dit in als uw documentklasse.
Voeg het volgende toe aan de "Main.as" die u in de bovenstaande stap hebt gemaakt.
pakket import flash.display.Sprite; import com.neriksworkshop.lib.ASaudio. *; import flash.media.Sound; import flash.events.MouseEvent; import flash.events.Event; public class Main breidt openbare functie Main () trace ("Working") uit;
Hier importeren we de lessen die we nodig hebben tijdens deze tutorial en stellen we onze Hoofd()
bouwer.
De spoor
is de fundamentele klasse van ASAudio. Alles wat u met de bibliotheek doet, is afhankelijk van de spoor
. In deze stap zullen we een nieuw maken spoor
, en speel het. Voer de volgende code boven de Hoofd()
binnen "Main.as".
var track: Track = new Track ("BoozeandBlues.mp3");
En het volgende binnen de Hoofd()
bouwer.
openbare functie Main () track.start ();
Om een te maken spoor
je passeert een pad naar de mp3. We noemen dan de begin()
methode van de spoor
binnen Hoofd()
.
Als je nu test, zou je de mp3 moeten horen spelen.
In deze stap zullen we de interface voor het project instellen, zodat we onze controle kunnen houden spoor
's.
Sleep in het Componentvenster 4 knoppen en een schuifregelaar naar het werkgebied. U kunt naar het venster Componenten gaan door Venster> Componenten te kiezen of door op CTRL + F7 te drukken.
Geef de knoppen de volgende eigenschappen, één voor één.
Hier is een screenshot van de setup van de eerste Button.
Geef de schuifregelaar de volgende eigenschappen.
Hier stellen we enkele beginwaarden in voor de schuifregelaar. Ik zal ze niet bespreken, want u kunt verwijzen naar mijn Quick Tip die de functies van de schuifregelaar bedekt.
In deze stap coderen we de start-, stop- en volumefunctionaliteit voor de track die we in de vorige stap hebben gemaakt. Voeg het volgende toe aan "Main.as".
public function Main () addListeners (); private function addListeners (): void trackSlider.enabled = false; playTrackBtn.addEventListener (MouseEvent.CLICK, PlayTrack); stopTrackBtn.addEventListener (MouseEvent.CLICK, StopTrack); trackSlider.addEventListener (Event.CHANGE, adjustTrackVolume);
Hier noemen we de addListeners ()
functie binnen onze Hoofd()
constructeur. Binnen addListeners
we zetten het uitschakelen van de trackSlider
en voeg Luisteraars toe aan 3 van onze knoppen.
PlayTrack ()
De PlayTrack ()
functie vertelt het nummer om te beginnen met spelen. Voeg het volgende toe onder de addListeners ()
functie die u in de bovenstaande stap hebt gemaakt.
private function playTrack (e: MouseEvent): void trackSlider.enabled = true; track.start (); track.volume = 1,0;
Hier schakelen we de trackSlider
speel de spoor
de ... gebruiken begin()
methode en stel het volume van de track in met behulp van de volume-eigenschap.
StopTrack ()
De StopTrack ()
functie zal worden gebruikt om de spoor
. Voeg het volgende toe onder de PlayTrack ()
functie die u in de bovenstaande stap hebt toegevoegd.
persoonlijke functie stopTrack (e: MouseEvent): void track.stop ();
Hier noemen we eenvoudig de hou op()
methode op de spoor
.
adjustTrackVolume ()
De adjustTrackVolume ()
functie zal worden gebruikt om het volume van de spoor
. Voeg het volgende toe onder de StopTrack ()
functie die u in de bovenstaande stap hebt gemaakt.
privéfunctie adjustTrackVolume (e: Event): void track.volume = e.target.value;
Hier stellen we het volume van de track gelijk aan de schuifregelaars waarde
eigendom. Omdat we het maximum op 1 en het minimum op 0,1 hebben ingesteld, is dit altijd een getal tussen 0,1 en 1,0, verhoogd met tienden. d.w.z. 0.1, 0.4, enzovoort.
Als u de film nu test, kunt u het volume van de schijf afspelen, stoppen en aanpassen spoor
.
Je hebt je misschien afgevraagd waar de knop "Play Group" voor was? Nou, samen met het aanbieden van basis de basis spoor
ASAudio heeft een notie van "Groepen" waarmee u geluiden samen kunt stapelen en ze tegelijkertijd kunt afspelen. Voeg het volgende toe binnen de addListeners ()
functie die u in de bovenstaande stap hebt gemaakt.
private function addListeners (): void trackSlider.enabled = false; playTrackBtn.addEventListener (MouseEvent.CLICK, PlayTrack); stopTrackBtn.addEventListener (MouseEvent.CLICK, StopTrack); trackSlider.addEventListener (Event.CHANGE, adjustTrackVolume); playGroupBtn.addEventListener (MouseEvent.CLICK, playgroup);
Hier voegen we een luisteraar toe aan onze playGroupBtn
dat zal de Playgroup ()
functie. We zullen het volgende coderen.
Playgroup ()
Voeg het volgende toe onder de adjustTrackVolume ()
functie die je in de bovenstaande stap hebt gecreëerd.
private function playGroup (e: Event): void var group: Group = new Group ([new Track ("piano.mp3"), new Track ("drumbeat.mp3")]); group.start ();
Hier maken we een nieuwe Groep
door een reeks tracks door te geven. We noemen dan de begin()
methode die de Groep
om te beginnen met spelen.
Als je nu test, zou je de "piano.mp3" en "drumbeat.mp3" simultaan moeten horen spelen.
Samen met het aanbieden van de Groep
, ASAudio heeft een idee van a Afspeellijst
. De Afspeellijst
is als een afspeellijst op een MP3-speler. U "wachtrij" van liedjes en wanneer een klaar is, gaat het verder met de volgende. Voeg het volgende toe binnen de addListeners
functie.
privéfunctie playPlayList (e: Event): void var playList: Playlist = nieuwe afspeellijst ([nieuwe track ("piano.mp3"), nieuwe track ("drumbeat.mp3")]); playList.loop = false; playList.start ();
Zoals de Groep
we creëren een nieuw Afspeellijst
door een array van nummers door te geven. We hebben de Afspeellijst
niet lus en bel de begin()
methode.
Je kunt het nu testen en zien Afspeellijst
in actie.
U hebt ASAudio leren kennen en gezien hoe het de hoeveelheid code die nodig is om audio te maken in uw ActionScript-projecten aanzienlijk kan verminderen. Deze bibliotheek heeft meer te bieden, inclusief fade, pause en mute methodes ... Ik raad aan om de documentatie eens door te nemen om te zien wat er allemaal beschikbaar is. Ik hoop dat je dit nuttig en bedankt vond voor het lezen!