- Home
- Categorie
- Digital Marketing
- Grafica, Visual Design & UX
- Problemi di audio con flash 8
-
Problemi di audio con flash 8
Rieccomi. Salve a tutti.
Ho un problema con l'inserimento dell'audio nel filmato flash.
Mi spiego.
Ho inserito nel mio filmato al primo fotogramma su un livello nuovo due pulsanti (movie clip), Play e Stop, per controllare l'audio sul sito.
Ho usato, come da manuale, il percorso dei Behaviors aggiungendo i comandi per ogni pulsante, play stop, ho concatenato il file musicale come descritto, ho salvato tutto ma nel test di prova l'audio non parte.
L'errore che mi da è il seguente:
Error Symbol=suono, layer=Layer1, frame=1:Line5: Syntax error.
_global.Behaviors.Sound.Vero amico.start (0,1);Error Symbol=suono, layer=Layer2, frame=1:Line5: Syntax error.
_global.Behaviors.Sound.Vero amico.stop ("Vero amico");Dov'è l'errore si sintassi se ho eseguito tutto secondo manuale?
Grazie
-
Ciao exdemo, prova a postare anche il codice oltre gli errori.
-
Dopoaver inserito i pulsanti play e stop sulla stage ed eseguendo il test, questo è il codice di errore che mi compare:
Error Scene=Scene 1, layer=suono, frame=1:Line 9: Syntax error.
_global.Behaviors.Sound.Vero amico = new Sound(this._parent.BS_Vero amico);
Error Scene=Scene 1, layer=suono, frame=1:Line 10: 'else' encountered without matching 'if'
} else {
Error Scene=Scene 1, layer=suono, frame=1:Line 12: Syntax error.
_global.Behaviors.Sound.Vero amico = new Sound(this.BS_Vero amico);
Error Scene=Scene 1, layer=suono, frame=1:Line 10: Statement must appear within on handler
} else {
Error Scene=Scene 1, layer=suono, frame=1:Line 13: Unexpected '}' encountered
}
Error Scene=Scene 1, layer=suono, frame=1:Line 5: Syntax error.
_global.Behaviors.Sound.Vero amico.stop("Vero amico");
Total ActionScript Errors: 6 Reported Errors: 6Questo invece è il codice che il programma inserisce in action per il pulsante play:
on (release) {
//Play Internal Sound Behavior
if(_global.Behaviors == null)_global.Behaviors = {};
if(_global.Behaviors.Sound == null)_global.Behaviors.Sound = {};
if(typeof this.createEmptyMovieClip == 'undefined'){
this._parent.createEmptyMovieClip('BS_Vero amico',new Date().getTime()-(Math.floor((new Date().getTime()) /10000)*10000) );
_global.Behaviors.Sound.Vero amico = new Sound(this._parent.BS_Vero amico);
} else {
this.createEmptyMovieClip('Vero amico',new Date().getTime()-(Math.floor((new Date().getTime()) /10000)*10000) );
_global.Behaviors.Sound.Vero amico = new Sound(this.BS_Vero amico);
}
_global.Behaviors.Sound.Vero amico.attachSound("Vero amico");
if (false) {
_global.Behaviors.Sound.Vero amico.start(0,1);
}
//End Behavior// Play Sound Behavior
_global.Behaviors.Sound.Vero amico.start(0,1);
// End Play Sound Behavior
}Questo per il pulsnate stop:
on (release) {
//Stop Sound Behavior
_global.Behaviors.Sound.Vero amico.stop("Vero amico");
}Dov'è l'errore?
Faccio notare che l'audio che ho nella libreria non lo inserisco sulla stage perchè presumo che lo carichi in automatico il software, almeno così credo di aver capito nello codice.
Sbaglio?Grazie
-
Mamma mia, per caricare un suono dalla libreria con i relativi pulsanti Play/Stop bastano 8 righe di codice, cosa dovrebbe fare tutto il codice che hai postato?
-
Non ho scritto io questo codice ma il programma.
Io ho solo inserito le icone del play e stop sullo stage che ho preso dalla libreria.
Forse il manale che ho è troppo vecchio? visto che uso flash 8?
Comunquese puoi aiutarmi te ne sarei grato?
Grazie
-
Se usi questo codice non avrai problemi, anche se io ti consiglio di non importare il suono in libreria per questioni di peso.
var my_sound:Sound = new Sound();// creazione oggeto Sound my_sound.attachSound("nome_suono");// prendo il suono dalla libreria my_sound.start();// Riproduco il suono Pulsante_Stop.onPress = function() { my_sound.stop(); }; Pulsante_Play.onPress = function() { my_sound.start(); };
metti questo codice nel primo frame, istanzia i pulsanti (Pulsante_Stop) (Pulsante_Play), al posto di "nome_suono" metti il nome che hai in libreria e concatenalo.
-
Ho capito da dove hai preso quel codice hai usato i comportamenti.
L'ho provato è funziona bene naturalmente, l' errore che hai fatto e che ha combinato tutto quel caos con tutta quella sfilza di errori e dovuto al codice che hai aggiunto per i pulsanti.
-
Ok funziona alla grande.
Ma mi è venuto un dubbio:
mi hai detto di non caricare il brano dalla libreria perchè appesantisce il progetto.
Per fartela breve io sto realizzando il sito interamente in flash, un sito di fotografia.
Ho usato molte foto suddivise per categorie solo che ho utilizzato per uttte un effeto dissolvenza incrociata fra loro creando un movieclip per ogni categoria e inserendo tale movie in ogni frame separato.
Ho fatto un test in rete e ho notato che effettiamente è molto lento a caricare il sito. Sarà per questo metodo di procedere? oppure al fatto che le foto sono 720x520 a 72 ppi ?
Ho necessità che le foto si vedano grandi.
Grazie per il tuo preziosissimo aiuto, vorrei un giorno poter dare anch'io un aiuto ad altri, vorrà dire che ho cominciato a capire bene questo programma.
-
Certo è pesante perchè hai messo tutto sulla time line creando un unico file swf presumo molto pesante, per alleggerire potresti, se ho capito bene la struttura, anzichè caricare i movieclip dalla libreria, fare tanti swf quante sono le dissolvenze e caricarle come file esterni e se non
l'hai gia fatto metterei un preloader.
-
Mi potresti dire qual'è il codice per fare ciò?
Se vuoi capire meglio cosa sto facendo puoi vederlo quì:
giuseppelaiolo.com/ItalyweddingsPhotographer/Home.htm
Grazie
-
Prova a fare così se non hai problemi di posizionamento sullo stage, altrimenti bisogna fare in un modo più sofisticato.
Faciamo finta che hai tre swf che contengono ognuno assolvenza e dissolvenza del''immagine, li chiamiamo primo.swf, secondo.swf, terzo.swf. Nel primo frame della main scrivi: loadMovie("primo.swf",1);
nell'ultimo frame del primo.swf scrivi: loadMovie("secondo.swf",1);
nell'ultimo frame del secondo.swf scrivi: loadMovie("terzo.swf",1);
nell'ultimo frame del terzo.swf scrivi: loadMovie("primo.swf",1); e così il ciclo ricomincia.
Ho preparato uno schema d'esempio che puoi scaricare da quì:
www.dago2008.altervista.org
-
Guarda ho fatto una prova on line con la dissolvenza non va pesa troppo e c'è stacco tra una immagine e l'altra quindi è anche peggio, niente, metti la galleria tutta insieme in un swf con un preloader in modo da segnalare all'utente che sta caricando.
Altrimenti si potrebbe provare a caricare le immagini con un file xlm, è che non so se riesco ad aiutarti per la dissolvenza.
-
Buon giorno, ci risono.
Oggi avrò diverse domande da porre a voi esperti di flash.
Tornando all'audio inserito nel sito come ti dicevo tutto funziona ora solo che ho notato un problema.
1°)Quando apro il sito l'audio parte regolarmante, scorro per il sito visitando le altre pagine e tutto ok ma quando ritorno alla home page l'audio riparte da capo sovrapponendosi a quello esistente.
Manca un riferimento?
2°)Se volessi sospendere l'audio in una pagina particolare (tipo video) come posso procedere?
Grazie
-
Nel pulsante che ti riporta alla home subito dopo gotoAndPlay metti my_sound.stop() cosi il suono riprende dall'inizio senza accavallamenti.