QuickTutor

Tutor LiveStage

A partir d'un film QuickTime, envoyez une instruction pour remplacer un film par un autre film.



Choice


Load

Cliquez sur l'une des lettres du film 'Choice' envoie une commande au film 'Load'. Ce dernier est remplacé par un autre film.

La communication entre des films QuickTime est certainement l'un des points forts de LiveStage Pro.

Notre Film 'Choice' pilotera le film 'Load'

Je vous propose trois solutions pour réaliser cet exemple:
Solution 1 : Utilisation d'une variable de type MovieVars.
Solution 2 : Compatible à partir de QuickTime 5 sans variable. Nous allons déclencher une action directement dans le film cible.
Solution 3 : Compatible à partir de QuickTime 6. La solution la plus simple : ciblage simple.


Solution 1, compatible QT 4 et + (avec Idle et MovieVars)

Création du film : 'Load'

Lancez l'application LiveStage Pro, créez un nouveau projet, Cliquez sur l'onglet 'Info' et nommez votre film comme indiquez:

Ajoutez une piste Sprite :

Double cliquez sur le sample et ajoutez une image A.
Créez un sprite nommez le 'A' et attribuez lui cette image.

Cliquez sur l'onglet 'Script' puis sur Frame loaded et entrez le script suivant :

Nous avons créé une variable de type Movievar (accessible de l'exterieur) à l'adresse 100 et lui avons affecté la valeur 0.

Selectionnez 'Idle' et entrez :

Cliquez sur 'New Event Handler' nommez le 'Loadmov' , Selectionnez le et entrez le code suivant :

Suivant la valeur affectée à 'Loadmovie' l'execution du Script remplacera le film actuel par un autre.
Les adreses URL doivent évidemment être modifiées sinon vous téléchargerez mes exemples.

Enregistrons le fichier et exportons notre film QuickTime a.mov.

Vous créerez deux autre films en modifiant celui-ci (remplacez l'image et modifiez le nom du film exporté).
Vous avez désormais trois films :
a.mov
b.mov
c.mov

Envoyez ces 3 films sur votre serveur.


Création du film 'Choice'

Créez un nouveau projet, ajoutez une piste Sprite
Double cliquez sur le Sample de la piste Sprite et ajoutez 3 images prisent dans la librairie.
Créez un sprite nommez le A affectez lui l'image A, cliquez sur l'onglet script, selectionnez 'Mouse Click' et entrez le code suivant :

Pour plus de sureté (compatiblité avec QT 4) ecrivez plutôt:
MovieNamed("Load").TrackNamed("Movie Variables").SetVariable(100,1)

Nous affectons la valeur 1 à la la variable d'adresse 100 (Loadmovie) contenue dans le film Load.

Dupliquez ce Sprite affectez lui l'image B nommez le B et modifiez le script pour que la variable prenne la valeur 2.
MovieNamed("Load").TrackNamed("Movie Variables").SetVariable(100,2)

Efectuez les mêmes opérations pour le sprite 3.
MovieNamed("Load").TrackNamed("Movie Variables").SetVariable(100,3)

Disposez vos sprites à l'endroit désiré grace à le fenêtre Stage, enregistrez votre fichier et exportez votre film QuickTime.

Ouvrez ce film dans QuickTime Player ou dans votre Browser ainsi que l'un des 3 précedemment créé et tout devrait fonctionner correctement.

Solution 2, compatible QT 5.XX (Ciblage)

Création des films 'Load'

Lancez l'application LiveStage Pro, créez un nouveau projet.

ajoutez une piste Sprite.

Double cliquez sur le sample et ajoutez une image A.
Créez un sprite nommez le 'Sprite' et attribuez lui la première image.

Cliquez sur l'onglet 'Script' puis sur 'New Event Handler' nommez le 'LoadmovA' et attribuez l'adresse 1000, Selectionnez le et entrez le code suivant :

Créez un deuxième 'New Event Handler' Nommez le 'LoadmovieB' attribuez l'adresse 2000 et modifiez l'url.

Créez un troisième 'New Event Handler' Nommez le 'LoadmovieC' attribuez l'adresse 3000 et modifiez l'url.
.
Les adresses URL doivent évidemment être modifiées sinon vous téléchargerez mes exemples.

Enregistrons le fichier et exportons notre film QuickTime 'a.mov'.

Vous créerez deux autre films en modifiant celui-ci (remplacez l'image et modifiez le nom du film exporté).
Vous avez désormais trois films :
a.mov
b.mov
c.mov

Envoyez ces 3 films sur votre serveur à l'adresse que vous avez entré precedemment.

cliquez sur l'onglet 'Info' et nommez votre film comme indiquez:

Création du film 'Choice'

Créez un nouveau projet, ajoutez une piste Sprite
Double cliquez sur le Sample de la piste Sprite et ajoutez 3 images A,B,C prisent dans la librairie.
Créez un sprite nommez le A, affectez lui l'image A, cliquez sur l'onglet script, selectionnez 'Mouse Click' et entrez le code suivant :

Dupliquez ce Sprite affectez lui l'image B nommez le B et modifiez le script pour executez l'Event d'adresse 2000
MovieNamed("Load").TrackNamed("Sprite 1").SpriteNamed("Sprite 1").ExecuteEvent(2000)

Efectuez les mêmes opérations pour le sprite 3.
MovieNamed("Load").TrackNamed("Sprite 1").SpriteNamed("Sprite 1").ExecuteEvent(3000)

Disposez vos sprites à l'endroit désiré grace à le fenêtre Stage, enregistrez votre fichier et exportez votre film QuickTime.

Ouvrez ce film dans QuickTime Player ainsi que l'un des 3 précedemment créé et tout devrait fonctionner correctement.


Solution 3, compatible QT 6.XX (Ciblage simple)

Cette solution est la plus simple, mais elle ne fonctionne qu'avec des films encapsulés sur une page WEB.
Ici nous ne modifierons pas les films cibles, donc n'importe quel film pourra remplacer notre premier film cible.

Nous allons simplement créer un film qui va envoyer une instruction à notre film cible : Cette instruction va se résumer à :
MovieNamed("movie1").GoToURL("b.mov")

Le film cible sera reconnu sur la page grace au Tag moviename

Création du film 'Choice'

Créez un nouveau projet, ajoutez une piste Sprite
Double cliquez sur le Sample de la piste Sprite et ajoutez 3 images A,B,C prisent dans la librairie.
Créez un sprite nommez le A, affectez lui l'image A, cliquez sur l'onglet script, selectionnez 'Mouse Click' et entrez le code suivant :


Dupliquez ce Sprite affectez lui l'image B nommez le B et modifiez le script : changez uniquement le nom du film
MovieNamed("movie1").GoToURL("<b.mov>T<myself>")

Efectuez les mêmes opérations pour le sprite 3.
MovieNamed("movie1").GoToURL("<c.mov>T<myself>")

J'utilise ici pour les films QuickTime un chemin relatif, les films doivent donc être tous dans le même dossier.

Comme lors de l'utilisation de l'encapsulation d'un film QT dans une page WEB on peut préciser des paramètre supplémentares grâce à l'extension E :
MovieNamed("movie1").GoToURL("<c.mov>T<myself>E<kioskmode=true controller=false>")

Vous pouvez évidemment comme dans les autres exemples utilser une adresse complète :
MovieNamed("movie1").GoToURL("<http://qtbridge.com/LS/films/Intercom/c.mov>T<myself>")

Disposez vos sprites à l'endroit désiré grace à le fenêtre Stage, enregistrez votre fichier et exportez votre film QuickTime.

Encapsulez ce film dans une page WEB :

<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" width="200" height="200" codebase="http://www.apple.com/qtactivex/qtplugin.cab">
<param name="src" value="Choice.mov">
<param name="controller" value="false">
<param name="autoplay" value="false">
<param name="cache" value="false">
<embed
src="Choice.mov"
width="200" height="200"
controller="false"
autoplay="false"
cache="false"
type="video/quicktime"
pluginspage="http://www.apple.com/quicktime/download/">
</embed>
</object>

ou si vous utilsez la bibliothèque javascript externe : AC_QuickTime.js

<script language="JavaScript" type="text/javascript"><!--
QT_WriteOBJECT('Choice.mov', '200', '200','','controller','false','autoplay','false','cache','false');
// --></script>

Les films cibles

Dans cet exemple le film cible "a.mov" est encapsulé dans la page WEB en utilisant le tag moviename et le nom affecté est : "movie1".

Voici le code d'encapsulation :

<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" width="200" height="200" codebase="http://www.apple.com/qtactivex/qtplugin.cab">
<param name="src" value="a.mov">
<param name="controller" value="true">
<param name="autoplay" value="true">
<param name="moviename" value="movie1">
<param name="cache" value="false">
<embed
src="a.mov"
width="200" height="200"
controller="true"
autoplay="true"
moviename="movie1"
cache="false"
type="video/quicktime"
pluginspage="http://www.apple.com/quicktime/download/">
</embed>
</object>

ou si vous utilsez la bibliothèque javascript externe : AC_QuickTime.js

<!-- Start of movie embed -->
<script language="JavaScript" type="text/javascript"><!--
QT_WriteOBJECT('a.mov', '200', '200','','controller','true','autoplay','true','moviename','movie1','cache','false');
// --></script>
<!-- End of movie embed -->

Tous ces codes d'encapsulation sont générés par l'application PAGEot.