Riprodurre file video multipli

Per riprodurre i file video in sequenza in un'istanza FLVPlayback, dovete semplicemente caricare un nuovo URL nella proprietà source al termine della riproduzione del file video precedente. Ad esempio, il seguente codice ActionScript intercetta l'evento complete , che si verifica al termine della riproduzione di un file video. Quando si verifica questo evento, il codice imposta il nome e la posizione del nuovo file video nella proprietà source e chiama il metodo play() per iniziare la riproduzione del nuovo video.

import fl.video.*; 
my_FLVPlybk.source = "http://www.helpexamples.com/flash/video/clouds.flv"; 
my_FLVPlybk.addEventListener(VideoEvent.COMPLETE, complete_listener); 
// listen for complete event; play new FLV 
function complete_listener(eventObject:VideoEvent):void { 
    if (my_FLVPlybk.source == "http://www.helpexamples.com/flash/video/clouds.flv") { 
        my_FLVPlybk.play("http://www.helpexamples.com/flash/video/water.flv"); 
    } 
};

Usare lettori video multipli

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 .