Oggetto Sound
L'oggetto suono è nato con Flash 5, dando potenzialità a Flash di gestire eventi i principali eventi sonori da codice.
Con MX è stato ulteriormente potenziato, permettendo tra l'altro, l'importazione di suoni MP3 esterni, anche in streaming audio.
Il suono, come tutti gli oggetti, richiede una dichiarazione iniziale:
sinossi:
suono=new Sound(target);
dove target sarà l'MC o il livello al quale il suono è abbinato.
Quando il suono è dichiarato, lo potremmo comandare via codice, sia che il suono sia direttamente
incluso nel filmato che importato o linkato dalla libreria.
I metodi per gestire il suono sono i seguenti:
attach.sound();
per lineare dei suoni dalla libreria, senza inserirli nel filmato
sinossi:
OggSuono.attachSound("idLinkLibreria");
News MX:
in Flash 5 i suoni linkati dalla libreria, andavano a gravare sul primo fotogramma, senza possibilità
di streaming, in Flash MX nelle impostazioni avanzate da libreria possiamo scegliere se non lo vogliamo (in questo caso non sarà immediatamente disponibile).
Esempio di linkaggio del suono:
Suono = new Sound(_root);
Suono. attachSound("plink");
plink sarà il nome che dovrò assegnare al mio suono in libreria.
Il volume, il pan, e i controlli avanzati;
ogni suono creato disporrà di propri metodi e proprietà:
avvio della riproduzione del suono:
Suono.play(ritardo,loop); // ritardo in secondi è l'offset ed il loop il numero di volte che
//il suono deve essere riprodotto, nell'esempio abbiamo un suono che ha
Suono.play(0.5,9999); //uno spazio vuoto di mezzo secondo, che vogliamo tagliare con l'Offset
interrompere la riproduzione:
Suono.stop();
regolazione del volume:
Suono.setVolume(volume); // volume è un numero da 0 a 100, di default 100
restituzione del Volume:
Suono.getVolume(); //restituisce il valore al quale il volume è stato precedentemente regolato
regolazione del Pan (effetto panomarico):
Suono.setPan(pan); // pan è un numero da -100 a +100, di default 0
restituzione del Pan:
Suono.getPan(); //restituisce il valore al quale il Pan è stato precedentemente regolato
Metodi avanzati, l'oggetto Transform:
mediante l'oggetto Transform possiamo costruire interessanti effetti sonori stereofonici:
i suoi parametri sono:
11 = percentuale del segnale sinistro per l'altoparlante sinistro (0-100).
1r = percentuale del segnale destro per l'altoparlante sinistro (0-100).
rr = percentuale del segnale destro per l'altoparlante destro (0-100).
rl = percentuale del segnale sinistro per l'altoparlante destro (0-100).
Il risultato dei segnali può essere rappresentato da:
UscitaSinistra = ingresso_sinistro * ll + ingresso_destro * lr
UscitaDestra = ingresso_destro * rr + ingresso_sinistro * rl
Naturalmente il valore è determinato dal tipo di suono (stereo o mono) inserito nel filmato
Per i suoni stereo avremo di default nel oggetto Transform i settaggi
:
ll = 100
lr = 0
rr = 100
rl = 0
Per i suoni mono avremo invece:
ll = 100
lr = 100
rr = 0
rl = 0
Esempio:
SuonoTransform == new Object; // creiamo l'oggetto transform
SuonoTransform.ll = 100; // assegniamogli i parametri
SuonoTransform.lr = 100;
SuonoTransform.rr = 0;
SuonoTransform.rl = 0;
Suono.setTransform(SuonoTransform); // assegniamo la Trasformazione all'oggetto Suono
Possiamo anche visualizzare le trasformazioni assegnate, con il metodo getTransform
Suono.getTransform(); // ci restituirà le proprietà dell'oggetto Transform applicate
News Flash MX
Flash MX supporta il caricamento di suoni esterni al filmato e la loro riproduzione nel filmato.
Per importare un file esterno:
sinossi:
target.loadSound(url, streaming); // streaming è una variabile booleana che rappresenta come deve essere riprodotto il suono
esempio:
myMp3=new Sound("song");
song.loadSound("http://www.mysite.com/music/mySong.mp3", 1);
carichiamo nell'MC song il suono con riproduzione in streaming
per il caricamento, abbiamo a disposizione:
myMp3.getBytesTotal(); // ci restituisce i Byte totali del suono da caricare
myMp3.getBytesLoaded(); // ci restituisce i Byte caricati del suono da caricare
due importanti eventi suono sono stati aggiunti nella versione MX di Flash:
onload, il controllo del caricamento:
sinossi
OggSuono.onLoad = richiamoFunzione // richiama una funzione ad avvenuto caricamento
esempio:
function caricato(){
trace ("il caricamento del suono è terminato !");
}
myMp3. onLoad = caricato; // ci avvisa quando il download dell'mp3 è terminato
onSoundComplete; controlla quando è avvenuta la totale riproduzione del suono:
sinossi:
OggSuono.onSoundComplete = richiamoFunzione //richiama una funzione ad avvenuto riproduzione
Esempio:
function ascoltato(){
trace ("Hai ascoltato tutto il brano, premi play per riascoltarlo !");
}
myMp3.onSoundComplete = ascoltato; // ci avvisa quando è stato ascoltato tutto il suono
ed abbiamo anche due proprietà (solo lettura) nuove nell'oggetto Suono:
la durata e la posizione
OggSuono.duration // restituisce la durata del suono in millisecondi
OggSuono.position // restituisce il numero in millisecondi dove si trova la riproduzione del suono (sai riazzera in caso di suono in loop)
Torna su
Menu Actionscript
Lezione precedente: I Cicli
Lezione successiva: Pubblicare l'swf col detect-plugin