Potete inoltre aprire più lettori video all'interno di una singola istanza del componente FLVPlayback, per riprodurre più video e passare da un video all'altro nel corso della riproduzione.
Il lettore video iniziale viene creato quando trascinate il componente FLVPlayback nello stage. Il componente assegna automaticamente il valore 0 al lettore video iniziale e lo imposta come lettore predefinito. Per creare un lettore video aggiuntivo è sufficiente impostare un nuovo numero per la proprietà
activeVideoPlayerIndex
. Con l'impostazione della proprietà
activeVideoPlayerIndex
, il lettore video specificato diventa attivo (
active
) ed è quindi influenzato dalle proprietà e dai metodi della classe FLVPlayback. Tuttavia, l'impostazione della proprietà
activeVideoPlayerIndex
non rende automaticamente visibile il lettore video. Per rendere visibile il lettore video, impostate la proprietà
visibleVideoPlayerIndex
sul numero del lettore video. Per ulteriori informazioni su come queste proprietà interagiscono con i metodi e le proprietà della classe FLVPlayback, vedete le proprietà FLVPlayback.activeVideoPlayerIndex e FLVPlayback.visibleVideoPlayerIndex nella
Guida di riferimento di ActionScript 3.0
per Flash Professional
.
Il seguente codice ActionScript carica la proprietà
source
per riprodurre un file video nel lettore video predefinito e aggiunge un cue point. Quando si verifica l'evento
ready
, il gestore di eventi apre un secondo lettore video impostando la proprietà
activeVideoPlayerIndex
su 1. Specifica un file FLV e un cue point per il secondo lettore video, quindi rende nuovamente attivo il lettore predefinito (0).
/**
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;
};
Per passare a un file FLV mentre è in corso la riproduzione di un altro file, è necessario effettuare questo passaggio nel codice ActionScript. I cue point consentono di intervenire in punti specifici del file FLV mediante l'evento
cuePoint
. Il seguente codice crea un listener per l'evento
cuePoint
e chiama la funzione del gestore che mette in pausa il lettore video active (0), passa al secondo lettore (1) e riproduce il file 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);
}
};
Quando create un nuovo lettore video, l'istanza FLVPlayback imposta le proprietà con i valori del lettore predefinito, a eccezione delle proprietà
source
,
totalTime
e
isLive
che vengono impostate sempre sui valori predefiniti dall'istanza di FLVPlayback: rispettivamente, stringa vuota, 0 e
false
. La proprietà
autoPlay
, che utilizza
true
come impostazione predefinita per il lettore video predefinito, viene impostata su
false
. La proprietà
cuePoints
non ha alcun effetto, così come non ne ha su un eventuale caricamento successivo nel lettore video predefinito.
I metodi e le proprietà che controllano il volume, il posizionamento, le dimensioni, la visibilità e i controlli UI sono sempre globali e il loro comportamento non viene alterato dall'impostazione della proprietà
activeVideoPlayerIndex
. Per ulteriori informazioni su questi metodi e proprietà e l'effetto dell'impostazione della proprietà
activeVideoPlayerIndex
, vedete la proprietà FLVPlayback.activeVideoPlayerIndex nella
Guida di riferimento di ActionScript 3.0
per Flash Professional
. I restanti metodi e proprietà definiscono come destinazione il lettore video identificato dal valore della proprietà
activeVideoPlayerIndex
.
Tuttavia, le proprietà e i metodi che controllano le dimensioni
interagiscono
effettivamente
con la proprietà
visibleVideoPlayerIndex
. Per ulteriori informazioni, vedete la proprietà FLVPlayback.visibleVideoPlayerIndex nella
Guida di riferimento di ActionScript 3.0
per Flash Professional
.