Tramite l'oggetto Sound , è possibile gestire diversi aspetti di un file sonoro e caricare un mp3 esterno all'interno dell'oggetto sound senza doverlo importare in flash
mioSuono=new Sound();
suono.loadSound("brano.mp3",true oppure false per lo streaming);.
I metodi per l'oggetto sono:
attachSound: Associa il suono specificato nell'argomento;
getPan: Restituisce il valore della chiamata setPan precedente;
getTransform: Restituisce il valore della chiamata setTransform precedente;
getVolume: Restituisce il valore della chiamata setVolume precedente;
setPan: Imposta il bilanciamento destra/sinistra dell'audio;
setTransform: Imposta la trasformazione dell'audio;
setVolume: Imposta il livello del volume dell'audio;
start: Avvia la riproduzione di un suono dall'inizio o, se indicato, a partire dal punto impostato nell'argomento;
stop: Arresta il suono specificato o tutti i suoni in corso di riproduzione.
Scarica questo esempio
Creazione dell'oggetto
Per poter utilizzare i vari metodi a disposizione, l'oggetto Sound deve essere creato assegnando il file sonoro desiderato. Per fare questo, vi sono due modi: il primo è quello di inserire il file sonoro all'interno di un movieclip e specificare quest'ultimo come argomento dell'azione:
loop = new Sound(nomeMovieClip);
oppure è possibile utilizzando il metodo attachSound:
loop = new Sound();
loop.attachSound("nomelinkage");
In qualsiasi caso, la variabile oggetto loop è pronta per essere associata ai metodi sopra descritti.
nomelinkage deriva dalle Proprietà di concatenamento delle librerie. I vari elementi della nostra libreria possono essere utilizzati anche da filmati esterni a quello principale. Per poter disporre di questa opzione per i file sonori è necessario:
1) selezionare il file sonoro desiderato, cliccare con il pulsante destro del mouse e selezionare la voce Linkage:
2) dalla finestra Proprietà di concatenamento (Symbol Linkage Properties) selezionare la voce Export this symbol ed immettere un nome nel campo Identifier:
In questo modo, il file sonoro viene considerato come condiviso e può essere utilizzato da filmati esterni.
Al posto di nomelinkage quindi, è necessario digitare il nome inserito nella casella Identifier.
start e stop
Per avviare ed interrompere la riproduzione di un file sonoro.
//Creo l'oggetto
loop = new Sound(suono);
//Inizia la riproduzione
loop.start();
//Si interrompe la riproduzione
loop.stop();
Il metodo start ha la particolarità di poter impostare la possibilità di riprodurre il file in un punto specifico e di impostarne il numero di loop.
loop.start(15, 100);
Il file sonoro verrà riprodotto dal 15° secondo in poi, per un ciclo di 100 volte.
setPan e getPan
Per mezzo di questi due metodi è possibile impostare o conoscere il bilanciamento dell'audio. Il valore assegnato deve essere compreso tra -100 e 100, dove -100 corrisponde al canale sinistro, mentre 100 a quello destro.
//Creo l'oggetto
loop = new Sound(suono);
//Imposto l'audio nella cassa sinistra
loop.setPan(-100);
//Imposto l'audio nella cassa destra
loop.setPan(100);
//Imposto l'audio in modo bilanciato
loop.setPan(0);
getPan invece, come avrete capito, restituisce il valore, compreso tra -100 e 100, dell'ultima chiamata di setPan.
setVolume e getVolume
Il volume invece, necessita di un valore compreso tra 0 e 100, dove 0 corrisponde al silenzio totale, mentre a 100 il volume di default del sistema.
//Creo l'oggetto
loop = new Sound(suono);
//Silenzio
loop.setVolume(0);
//Troppo rumore ;-)
loop.setVolume(100);
//Volume adeguato
loop.setVolume(50);
getVolume restituisce il valore, compreso tra 0 e 100, dell'ultima chiamata di setVolume.
setTransform e getTransform
Come per l'oggetto Color, anche per Sound è possibile impostare una configurazione personalizzata della riproduzione di un file sonoro.
Ecco cosa è possibile gestire:
ll Percentuale che indica il quantitativo di input sinistro da
riprodurre nell'altoparlante sinistro (da -100 a 100);
lr Percentuale che indica il quantitativo di input destro da riprodurre nell'altoparlante sinistro (da -100 a 100);
rr Percentuale che indica il quantitativo di input destro da riprodurre nell'altoparlante destro (da -100 a 100);
rl Percentuale che indica il quantitativo di input sinistro da riprodurre nell'altoparlante destro (da -100 a 100).
Ecco come appaiono le riproduzioni stereo/mono conoscendo i parametri precedenti:
Stereo
ll = 100
lr = 0
rr = 100
rl = 0 Mono
ll = 100
lr = 100
rr = 0
rl = 0
In questo modo:
//Creo l'oggetto personalizzato
suono = { ll:'50',lr:'50',rr:'50',rl:'50' }
//Assegno la trasformazione al loop
loop.setTransform(suono);
la riproduzione dell'audio avviene in modalità mono anche se il file sonoro è stereo.
getTransform invece, restituisce il valore dei parametri dell'ultima chiamata di setTransform
![]()