Page 1 sur 1

[flash]Animer une chanson sur plusieurs séquences

MessagePosté: Jeu Sep 13, 2007 8:58 am
par david
Hello les fous,
Je bosse en ce moment sur une petite anim sur une chanson, et évidemment, pour caler le rythme de l'action sur la musique, je mets mon son en continu. Bon, jusqu'ici tout va bien, mais pour des raisons pratiques, je compte utiliser les séquences dans Flash. Seulement, ma musique en continu, évidemment, ne passe pas d'une séquence à l'autre et donc, en bossant sur la séquence 2, je n'ai plus de repères...
Je voulais donc savoir si vous aviez une astuce pour faire ce genre d'anim musicale, sans faire une seule séquence inteeeerminable..

Merci à fous

MessagePosté: Jeu Sep 13, 2007 9:37 am
par Bigbengib
Salut,

A ma connaissance ce n'est pas possible non...

J'ai bien peur que la seule solution soit de faire du bricolage en découpant ton wav en plusieurs bouts que tu colles dans chaque séquence, mais attention, ce n'est que pour t'aider à te caler sur la musique ! Car bien entendu en diffusant ça tel quel, tu auras des sautes dans la musique à chaque changement de séquence... Donc il te faudra bien sûr faire un export en vidéo et recaler la musique sur l'anim "en un seul morceau".

Mais si tu comptes diffuser ton anim en swf, tu n'as pas le choix : tu es obligé de n'utiliser qu'une seule séquence (enfin j'en suis presque sûr, il n'y a pas de moyen de faire ce que tu souhaites...). Pour ma part je fais carrément un fla différent pour chaque plan, car le fla devient vite très lourd à ouvrir après.

De toute façon il est vivement conseillé de diffuser ton anim en vidéo plutôt qu'en swf !

MessagePosté: Jeu Sep 13, 2007 10:57 am
par david
Bouhou... :cry:
C'est chiant quand même...
Sinon j'avais quand même pensé à gérer les bouts de chanson directement dans flash en personnalisant le son placé sur la timeline (dans la barre de propriétés > modifier), pour pouvoir à tout moment réajuster les coupures ; ça marche, mais c'est pas super précis...
Mais pour l'export SWF, c'est pas un problème, il suffit de remettre la chanson entière en mode "évènement" ou "démarrage" au lieu de "continu".
Bon, je suis toujours preneur d'une autre combine.
Merci à toi Bigbengib :wink:

MessagePosté: Jeu Sep 13, 2007 11:39 am
par Slim
bheu désolé je ne viens pas te donner de combine, pour ma part je ferais tout sur une seule scène, je n'ai jamais travaillé avec plusieurs scènes ou plusieurs fla.

Si ton fla est trop lourd faut faire une copie, tu verras que le poids s'en trouvera allégé, parfois la différence est énorme.

MessagePosté: Jeu Sep 13, 2007 2:08 pm
par lo1971
Salut David,

Un truc qui me passe par la tête, mais je ne sais pas si ça marchera ni si ça répondra à ton problème...

Au lieu de travailler avec des scènes, tu travailles avec des symboles. Dans chacun d'entre eux, tu importes ta piste son. Tu fais les 20 premières secondes d'anim dans le premier symbole. Dans le second, tu commences à animer à partir du frame 501 (si tu travailles à 25 ips) et tu laisses les 500 premiers frames vides, pour être synchro avec le son. Et ainsi de suite...

Dans ta timeline, tu importes ta bande son et une piste où tu reprends les différents symboles (dans lesquels tu auras mis le son en guide ou desquels tu enlèveras le son tout à la fin, quand l'anim sera finie). Tu fais commencer le 1er symbole à 1, le 2ème à 501 etc. J'ai pas essayé, mais qui n'essaie rien n'a rien...

Le même raisonnement marche peut-être même avec les scènes à la place des symboles si tu peux les faire commencer à un frame précis ?

Laurent;)

MessagePosté: Jeu Sep 13, 2007 2:18 pm
par Bigbengib
david a écrit:Mais pour l'export SWF, c'est pas un problème, il suffit de remettre la chanson entière en mode "évènement" ou "démarrage" au lieu de "continu".


Oui mais attention, du coup ta musique risque de ne pas être synchro avec l'anim ! En effet, le mode "continu" permet de forcer flash à conserver la synchro anim/son, alors qu'avec le mode évènement, si l'ordi sur lequel se lit l'anim est lent, l'anim risque de prendre du retard sur la musique. Enfin c'est aléatoire, alors que le mode continu est sûr, lui ! Du coup ça ne t'aide pas pour ton problème !

MessagePosté: Jeu Sep 13, 2007 3:19 pm
par david
lo1971--> Oui, c'est pas intintéressant comme astuce, ça permet au moins de ne pas avoir une multitude de calques sur la scène principale... mais par contre, on garde une longueur de timeline assez conséquente...

Bigbengib--> Heu ben oui, c'est vrai ça... Pour le coup, j'avoue commencer à songer effectivement à un final en video.

MessagePosté: Ven Sep 14, 2007 8:27 am
par Kiwi
Hello David,
Ma réponse n'a rien à voir avec le problème que vous abordez, désolée...
je voulais te dire que j'adore ton avatar, avec ce pépère qui a l'air de chercher quelque chose dans des poils.... :D

bon... bah, bonne chance!

MessagePosté: Ven Sep 14, 2007 8:35 am
par david
Hi hi ! Bah merci quand même Kiwi, ça me va droit au cœur :wink:
Depuis le temps que j'avais pas d'avatar mouvant, ça ne pouvait plus durer !

MessagePosté: Ven Sep 14, 2007 12:06 pm
par benjouk
Dans ta timeline, tu importes ta bande son et une piste où tu reprends les différents symboles (dans lesquels tu auras mis le son en guide ou desquels tu enlèveras le son tout à la fin, quand l'anim sera finie). Tu fais commencer le 1er symbole à 1, le 2ème à 501 etc. J'ai pas essayé, mais qui n'essaie rien n'a rien...


Bonne idée, mais plutot que de mettre ton deuxieme mc en frame 501, sur ta time line principale, tu peux utiliser actionscript !

tout d'abord tu crée un lien actionscript à tes symboles (clic droite dans la bibli, liens, et tu coches "exporter pour action script". vérifie bien le nom qui s'affiche dans "verificateur" au dessus.

admettons que tu nomme respectivement tes mc (symboles) :

partie_1

partie_2

partie_3

...

sur ta frame 1,dans action, tu calles :

( pour ouvrir le panneau action, ctrl-F9 ou menu fenetre/actions )


Pour chaque symbole, on crée un 'conteneur'



_root.createEmptyMovieClip("conteneur",0); //on crée le conteneur pour les symboles

_root.conteneur.attachMovie("partie_1","mc_partie_1",0); // on lui dit quel symbole charger dans le conteneur

_root.conteneur._x=225; // coordonnée x de ton symbole ( par défaut au milieu dans ce cas (550/2))

_root.conteneur._y=200; // coordonnée y de ton symbole( par défaut au milieu dans ce cas (400/2))

stop();



La logique de AS basée sur les calques peut s'avérer tres pratique, car au lieu
de créer un conteneur pour chaque symbole, on va utiliser le meme, en changeant
juste son contenu.


On dit donc à flash d'afficher la premier partie de l'animation.

Il faut maintenant lui dire de changer le symbole qui contient la partie suivante
quand le premier sera terminé.

Poour cela, il faut mettre un bout de code sur la derniere image de chaque partie
de ton animation

tu doubles clique sur tes symboles dans la bibli. sur ta timeline s'affichent
maintenant toutes tes images. selectionne la derniere, et dans actions mets le code :


// on crée une fonction "symbole_suivant"

function symbole_suivant(){

_root.conteneur.attachMovie("partie_2","mc_partie_2",0); // on lui dit de charger le symbole 'partie_2' a la place du symbole 'partie_1'

}

setTimeout (symbole_suivant, 40);


ensuite tu appelles cette fonction avec un setTimeout (voirci-dessus )et tu définis le nombre de millisecondes apres lequel doit etre effectuée la fonction. 40 c'est le nombre de millisecondes que dure une image à 25 images secondes ( 1000/25 )


tu peut remettre ce code sur toutes tes derniers images en changeant le nom de la partie à charger ( pour ça qu'il est plus pratique d'utiliser le meme nom avec juste un chiffre de différence)

l'avantage, c'est que tu peux travailler au millieme de seconde pres, et que ta timeline ne fait qu'une image.

tu peux meme appeler directement ton son en imortant ton mp3 dans ta bibli, puis en créant un lien action script (ici "la_musique"), puis tu ajoutes dans la frame 1 (au dessus de 'stop(); ):

Code: Tout sélectionner
var musique_clip = new Sound();
musique_clip.attachSound("la_musique");

_root.musique_clip.start(0,0);

/* premier zero : décalage avant démarrage du son
    deuxieme zero : nombre de repetition */



Alors si jamais t'as jamais fait d'actionscript, tu vas te faire chier la b!te à tout comprendre et mettre en oeuvre, mais une fois que c'est fait, tu peux te concentrer sur ton anim, sans te soucier du décalage entre les différentes parties...

voila, si questions il y a, il faut les formuler.

en esperant avoir été un tantinet utile et surtout compréhensible...

MessagePosté: Ven Sep 14, 2007 12:56 pm
par david
Oh la la ! Jusqu'ici, je suivais, mais là je suis largué... :shock:
Non, sérieux, je fais un peu d'Action Script de temps en temps à mon tout petit niveau, et je pense que je peux mettre en pratique ce que tu me propose, mais j'avais vraiment pas envie de m'embarquer dans de la prog pour ces anim ; j'ai malgré tout peur de me faire un peu chier la b!te...
Merci beaucoup à toi quand même d'avoir pris le temps d'écrire tout ça pour essayer me dépanner :)