Meerdere videobestanden afspelen

U kunt FLV-bestanden achter elkaar afspelen in een instantie van FLVPlayback door gewoon een nieuwe URL te laden in de eigenschap source wanneer het voorgaande FLV-bestand is afgespeeld. Met de volgende ActionScript-code wordt bijvoorbeeld geluisterd naar de gebeurtenis complete , die optreedt wanneer een FLV-bestand is afgespeeld. Wanneer deze gebeurtenis optreedt, worden in de code de naam en locatie ingesteld van een nieuw videobestand in de eigenschap source en wordt de methode play() aangeroepen om de nieuwe video af te spelen.

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"); 
    } 
};

Meerdere videospelers gebruiken

U kunt ook meerdere videospelers openen binnen een enkele instantie van de component FLVPlayback en zo meerdere video's afspelen en er tijdens het afspelen tussen schakelen.

U kunt de eerste videospeler maken door de component FLVPlayback naar het werkgebied te slepen. De component wijst het nummer 0 automatisch aan de nieuwe videospeler toe en stelt deze in als de standaardspeler. Als u een extra videospeler wilt maken, zet u de eigenschap activeVideoPlayerIndex op een ander nummer. Door de eigenschap activeVideoPlayerIndex in te stellen, wordt de opgegeven videospeler tevens de actieve videospeler. Dat is de videospeler die door de eigenschappen en de methoden van de klasse FLVPlayback wordt beïnvloed. Het instellen van de eigenschap activeVideoPlayerIndex heeft echter niet tot gevolg dat de videospeler zichtbaar wordt. Als u de videospeler zichtbaar wilt maken, stelt u de eigenschap visibleVideoPlayerIndex in op het nummer van de videospeler. Zie voor meer informatie over hoe deze eigenschappen en de methoden en eigenschappen van de klasse FLVPlayback elkaar beïnvloeden de eigenschappen FLVPlayback.activeVideoPlayerIndex en FLVPlayback.visibleVideoPlayerIndex in de Naslaggids voor ActionScript 3.0 voor Flash Professional .

Met de volgende ActionScript-code wordt de eigenschap source geladen om een FLV-bestand in de standaard videospeler af te spelen en een actiepunt toe te voegen. Wanneer de gebeurtenis ready optreedt, opent de gebeurtenishandler een tweede videospeler door de eigenschap activeVideoPlayerIndex op nummer 1 in te stellen. Hiermee worden een FLV-bestand en actiepunt opgegeven voor de tweede videospeler en wordt de standaardspeler (0) weer de actieve videospeler.

/** 
    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; 
};

Als tijdens het afspelen van een FLV-bestand naar een ander FLV-bestand moet worden overgeschakeld, moet u dat in de ActionScript-code opgeven. Met actiepunten kunt u een gebeurtenis cuePoint gebruiken om een FLV-bestand op bepaalde punten naar een ander FLV-bestand te laten overschakelen. De volgende code maakt een listener voor de gebeurtenis cuePoint en roept tevens een handlerfunctie aan die de actieve videospeler (0) onderbreekt, overschakelt naar de tweede speler (1) en vervolgens het FLV-bestand van de tweede speler afspeelt:

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); 
        } 
};

Als u een nieuwe videospeler maakt, stelt de instantie FLVPlayback de eigenschappen van de nieuwe speler in op de waarden van de standaard videospeler, met uitzondering van de eigenschappen source , totalTime, en isLive . Deze eigenschappen worden door de instantie FLVPlayback altijd op de standaardwaarden ingesteld: respectievelijk lege string, 0 en false . De eigenschap autoPlay , die voor de standaard videospeler standaard op true staat, wordt op false ingesteld. De eigenschap cuePoints heeft geen effect, ook niet als het bestand de volgende keer in de standaard videospeler wordt geladen.

De methoden en eigenschappen die het volume, de positionering, de afmetingen, de zichtbaarheid en de gebruikersinterface-elementen bepalen zijn altijd algemeen en hun gedrag wordt niet beïnvloed door het instellen van de eigenschap activeVideoPlayerIndex . Zie voor meer informatie over deze methoden en eigenschappen en het effect van het instellen van de eigenschap activeVideoPlayerIndex de eigenschap FLVPlayback.activeVideoPlayerIndex in de Naslaggids voor ActionScript 3.0 voor Flash Professional . De resterende eigenschappen en methoden hebben betrekking op de videospeler die door de waarde van de eigenschap activeVideoPlayerIndex wordt geïdentificeerd.

De eigenschappen en methoden die de afmetingen bepalen, beïnvloeden echter wel de eigenschap visibleVideoPlayerIndex . Zie de eigenschap FLVPlayback.visibleVideoPlayerIndex in de Naslaggids voor ActionScript 3.0 voor Flash Professional voor meer informatie.