Vous pouvez également ouvrir plusieurs lecteurs vidéo dans une seule occurrence du composant FLVPlayback pour lire plusieurs vidéos et basculer entre eux en fonction de la lecture.
Le lecteur vidéo initial est créé lorsque vous faites glisser le composant FLVPlayback jusqu’à la scène. Le composant lui affecte automatiquement le numéro 0 et il devient lecteur par défaut. Pour créer un autre lecteur vidéo, définissez simplement la propriété
activeVideoPlayerIndex
sur un nouveau numéro. En définissant la propriété
activeVideoPlayerIndex
, vous
activez
également le lecteur vidéo spécifié, lequel sera affecté par les propriétés et les méthodes de la classe FLVPlayback. Toutefois la définition de la propriété
activeVideoPlayerIndex
ne permet pas d’afficher le lecteur vidéo. Pour le rendre visible, définissez la propriété
visibleVideoPlayerIndex
sur le numéro du lecteur vidéo. Pour plus d’informations sur les interactions entre ces propriétés et les méthodes et propriétés de la classe FLVPlayback, voir les propriétés FLVPlayback.activeVideoPlayerIndex et FLVPlayback.visibleVideoPlayerIndex dans le
Guide de référence d’ActionScript 3.0
pour Flash Professional
.
Le code ActionScript suivant charge la propriété
source
pour lire un fichier vidéo dans le lecteur vidéo par défaut, puis lui ajoute un point de repère. Lorsque l’événement
ready
se produit, le gestionnaire d’événements ouvre un second lecteur vidéo en réglant la propriété
activeVideoPlayerIndex
sur le numéro 1. Il définit un fichier FLV et un point de repère pour le second lecteur vidéo, puis fait à nouveau du lecteur par défaut (0) le lecteur vidéo actif.
/**
Requires:
- FLVPlayback component on the Stage with an instance name of my_FLVPlybk
*/
// add a cue point to the default player
import fl.video.*;
my_FLVPlybk.source = "http://www.helpexamples.com/flash/video/clouds.flv";
my_FLVPlybk.addASCuePoint(3, "1st_switch");
my_FLVPlybk.addEventListener(VideoEvent.READY, ready_listener);
function ready_listener(eventObject:VideoEvent):void {
// add a second video player and create a cue point for it
my_FLVPlybk.activeVideoPlayerIndex = 1;
my_FLVPlybk.source = "http://www.helpexamples.com/flash/video/water.flv";
my_FLVPlybk.addASCuePoint(3, "2nd_switch");
my_FLVPlybk.activeVideoPlayerIndex = 0;
};
Pour basculer vers un autre fichier FLV lors de la lecture d’un premier fichier, vous devez passer dans le code ActionScript. Les points de repère vous permettent d’intervenir à des points spécifiques du fichier FLV à l’aide d’un événement
cuePoint
. Le code suivant crée un écouteur pour l’événement
cuePoint
et appelle une fonction de gestionnaire qui met en pause le lecteur vidéo actif (0), bascule vers le second lecteur (1), puis lit son fichier FLV :
import fl.video.*;
// add listener for a cuePoint event
my_FLVPlybk.addEventListener(MetadataEvent.CUE_POINT, cp_listener);
// add the handler function for the cuePoint event
function cp_listener(eventObject:MetadataEvent):void {
// display the no. of the video player causing the event
trace("Hit cuePoint event for player: " + eventObject.vp);
// test for the video player and switch FLV files accordingly
if (eventObject.vp == 0) {
my_FLVPlybk.pause(); //pause the first FLV file
my_FLVPlybk.activeVideoPlayerIndex = 1; // make the 2nd player active
my_FLVPlybk.visibleVideoPlayerIndex = 1; // make the 2nd player visible
my_FLVPlybk.play(); // begin playing the new player/FLV
} else if (eventObject.vp == 1) {
my_FLVPlybk.pause(); // pause the 2nd FLV
my_FLVPlybk.activeVideoPlayerIndex = 0; // make the 1st player active
my_FLVPlybk.visibleVideoPlayerIndex = 0; // make the 1st player visible
my_FLVPlybk.play(); // begin playing the 1st player
}
}
my_FLVPlybk.addEventListener(VideoEvent.COMPLETE, complete_listener);
function complete_listener(eventObject:VideoEvent):void {
trace("Hit complete event for player: " + eventObject.vp);
if (eventObject.vp == 0) {
my_FLVPlybk.activeVideoPlayerIndex = 1;
my_FLVPlybk.visibleVideoPlayerIndex = 1;
my_FLVPlybk.play();
} else {
my_FLVPlybk.closeVideoPlayer(1);
}
};
Lorsque vous créez un lecteur vidéo, l’occurrence de FLVPlayback définit ses propriétés sur la valeur du lecteur vidéo par défaut, excepté les propriétés
source
,
totalTime
et
isLive
que cette occurrence définit toujours sur les valeurs par défaut : chaîne vide, 0 et
false
, respectivement. Elle définit la propriété
autoPlay
, dont la valeur par défaut est
true
pour le lecteur vidéo par défaut, sur
false
. La propriété
cuePoints
n’a aucun effet, et n’a pas d’incidences sur un chargement ultérieur dans le lecteur vidéo par défaut.
Les méthodes et propriétés qui contrôlent le volume, le positionnement, les dimensions, la visibilité et les commandes de l’interface utilisateur sont toujours globales, et leur comportement n’est pas affecté par la définition de la propriété
activeVideoPlayerIndex
. Pour plus d’informations sur ces méthodes et propriétés, ainsi que sur l’impact de la définition de la propriété
activeVideoPlayerIndex
, voir la propriété FLVPlayback.activeVideoPlayerIndex dans le
Guide de référence d’ActionScript 3.0
pour Flash Professional
. Les autres propriétés et méthodes visent le lecteur vidéo identifié par la valeur de la propriété
activeVideoPlayerIndex
.
Néanmoins, les propriétés et les méthodes qui contrôlent les dimensions
interagissent
avec la propriété
visibleVideoPlayerIndex
. Pour plus d’informations, voir la propriété FLVPlayback.visibleVideoPlayerIndex dans le
Guide de référence d’ActionScript 3.0
pour Flash Professional
.