Info su Flash !! AIUTO ! Clicca QUI per vedere il messaggio nel forum |
| Glucks |
Ciao... ho creato un swf che importa un file mp3 e quando clicchi su una roba parte l'audio.
Metto l'swf dentro una pagina html, la pubblico e quando clicchi non si sente l'audio. Però se apri l'swf e clicchi lo senti...
Ho provato, al posto che dare solo come link "pippo.mp3" e mettere l''mp3 nella stessa cartella dell'swf, anche a dargli il percorso completo, http........
Ma nulla.
Qualcuno sa spiegarmi come mai ?! |
| KarmaKOMA |
Nell'esempio seguente viene caricato il suono di un evento, che non può essere riprodotto finché non viene caricato completamente:
var my_sound:Sound = new Sound();
my_sound.loadSound("song1.mp3", false);
Nell'esempio seguente viene caricato audio in streaming:
var my_sound:Sound = new Sound();
my_sound.loadSound("song1.mp3", true);
se poi vuoi il play e lo stop:
play_mc.onRelease = function() {
my_sound.start();
};
stop_mc.onRelease = function() {
my_sound.stop();
};
Quindi cosa farai?...
Cartellina con dentro il tuo swf e il file audio.
Nell fla ti crei un oggetto movieclip con nome di istanza bottone e poi premendo F9 esternamente dal movie clip metterai il seguente codice:
var mp3:Sound = new Sound(); //crei l'oggetto suono
mp3.loadSound("song1.mp3", false); //metodo loadsound che carica tutto l'mp3 senza farlo partire in streaming
mp3.stop(); //se dovesse partire così lo stoppi
bottone.onRelease=function(){
mp3.start();//fai partire il suono una volta cliccato il tuo mc con nome di istanza bottone
}
divertiti. |
| KarmaKOMA |
ah questo per il 2004 mx/flash 8...alternativamente usa il gestore onLoad:
Nell'esempio seguente viene creato un nuovo oggetto Sound e viene caricato un suono. Il caricamento del suono viene gestito dal gestore onLoad , che consente di iniziare la riproduzione della canzone al termine del caricamento. Creare un nuovo file FLA e aggiungere il codice ActionScript seguente al file FLA o AS. Per il corretto funzionamento di questo esempio, è necessario che nella stessa directory del file FLA o AS sia presente un file MP3 denominato song1.mp3.
this.createTextField("status_txt", this.getNextHighestDepth(), 0,0,100,22);
// creare un nuovo oggetto Sound
var my_sound:Sound = new Sound();
// Se l'audio viene caricato, riprodurlo; in caso contrario, tracciare il problema di caricamento.
my_sound.onLoad = function(success:Boolean) {
if (success) {
my_sound.start();
status_txt.text = "Sound loaded";
} else {
status_txt.text = "Sound failed";
}
};
// Carica l'audio.
my_sound.loadSound("song1.mp3", true);
Il codice mi sembra molto comprensibile...buona pseudo-programmazione :D |
| Glucks |
Grande ce l'ho fatta !!!
Era giusto ciò che facevo, però mettevo dentro le parentesi del bottone il codice e non fuori... nn so perchè ma è diverso... ora va !!
Cmq se metto
var my_sound:Sound = new Sound();
si impalla, se tolgo Sound e metto
var my_sound= new Sound();
funziona benissimo... bho !!!
Adesso chiedo troppo !!! E se avessi 3 o 4 mp3 diversi e dovessi farne partire uno diverso ad ogni click sull'oggetto? Cioè primo click parte mp31, al secondo click parte mp32, al terzo click mp33 e al quarto click riparte mp31... chiedo troppo ?!?!
Ciao mitici !! |
| Alekis |
Hola !!!
Ti butto l'idea ... poi dovresti provarla ... é un po' che non programmo più in ActionScript ...
Utilizzi una "nomenclatura" per i file .mp3 ... tipo ... nome-numero ...
Brano-1.mp3
Brano-2.mp3
Brano-3.mp3
ecc...
Creai una variabile Globale che utilizzi come Counter ...
La setti sul numero del primo file che vuoi caricare ... es 1 ...
Nella funzione che metti sull'Onclick incrementi il counter ...
E costruisci dinamicamente il nome del file da far ascoltare ...
Più o meno così ... con qualche aggiustamento di codice in più ...
"Brano-" + Counter + ".mp3"
Per farlo ricominciare da capo prima di creare il nome metti un IF ... se Counter é maggiore del numero più alto che hai utilizzato nella nomenclatura dei File .mp3 lo forzi al minimo ... es 1 ...
Se vuoi fare anche un bottone back per andare in senso opposto fai la stessa cosa decrementando il Cuonter ... e mettendo nell'IF la condizione Counter minore del numero più basso che hai utilizzato nella nomenclatura dei File .mp3 e lo forzi al massimo ... es 3 ...
Scusa se non ti scirvo le righe di codice ... ma sono un po' "arruginito" ...
Spero di essere stato chiaro nella spiegazione ... e di esserti stato d'aiuto ...
In caso dimmi che ci riprovo ...
Alex
EDIT:
In alternativa puoi fare una cosa più "sporca" ... metti il codice che carica ogni singolo file in un frame diverso del movieClip ... uno dopo l'altro ...
A scanso d'equivoci mettici anche un stopAllSound ... se non ricordo male ... per evitare che si sovrappongano in riproduzione ...
Sul click del bottone ci metti goToAndStop ... e nextFrame come parametro ... se non sbaglio ... così avanza di uno ... esegue il codice ... e fa partirte la musica ... quando arrivi in fondo ci pensa lui a tornare a capo ...
Di solito io faccio le cose nel primo modo ... però dovrebbero essere equivalenti ... dipende da che approccio usi per programmare in actionScript ...
Alex |
|
|
|