Abspielen von mehreren Videodateien

Sie können Videodateien in einer FLVPlayback-Instanz nacheinander abspielen, indem Sie einfach eine neue URL in die Eigenschaft source laden, wenn eine Videodatei fertig abgespielt wurde. Im folgenden ActionScript-Code wird z. B. auf das Ereignis complete gewartet, das eintritt, wenn eine Videodatei fertig abgespielt wurde. Wenn dieses Ereignis eintritt, setzt der Code den Namen und den Speicherort einer neuen Videodatei in die Eigenschaft source und ruft die Methode play() auf, um das neue Video abzuspielen.

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

Verwenden von mehreren Video-Playern

In einer Instanz der FLVPlayback-Komponente lassen sich mehrere Video-Player öffnen, um mehrere Videos abzuspielen und während der Wiedergabe zwischen ihnen zu wechseln.

Sie erstellen den ursprünglichen, ersten Video-Player, wenn Sie die FLVPlayback-Komponente auf die Bühne ziehen. Die Komponente weist diesem ursprünglichen Video-Player die Nummer 0 zu und macht ihn zum Standard-Player. Wenn Sie einen weiteren Video-Player erstellen möchten, legen Sie einfach eine neue Nummer für die Eigenschaft activeVideoPlayerIndex fest. Indem Sie die Eigenschaft activeVideoPlayerIndex festlegen, wird der angegebene Video-Player zum aktiven Video-Player. Dies ist der Video-Player, auf den die Eigenschaften und Methoden der FLVPlayback-Klasse angewendet werden. Durch das Festlegen der Eigenschaft activeVideoPlayerIndex wird der jeweilige Video-Player jedoch nicht automatisch sichtbar. Damit der Video-Player sichtbar ist, legen Sie für die Eigenschaft visibleVideoPlayerIndex die Nummer des gewünschten Video-Players fest. Weitere Informationen zur Interaktion dieser Eigenschaften mit den Methoden und Eigenschaften der FLVPlayback-Klasse finden Sie in den Abschnitten zu den Eigenschaften FLVPlayback.activeVideoPlayerIndex und FLVPlayback.visibleVideoPlayerIndex im ActionScript 3.0 Referenzhandbuch für Flash Professional .

Mit dem folgenden ActionScript-Code wird die Eigenschaft source geladen, um eine Videodatei im Standard-Player abzuspielen, und es wird ein Cue-Point hinzugefügt. Wenn das Ereignis ready auftritt, öffnet die Ereignisprozedur einen zweiten Video-Player, indem die Eigenschaft activeVideoPlayerIndex auf den Wert 1 eingestellt wird. Die Ereignisprozedur gibt eine FLV-Datei und einen Cue-Point für den zweiten Video-Player an und legt dann den Standard-Player (0) wieder als aktiven Video-Player fest.

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

Wenn Sie beim Abspielen einer FLV-Datei zu einer anderen wechseln möchten, müssen Sie den Wechsel im ActionScript-Code vornehmen. Mithilfe von Cue-Points und cuePoint -Ereignissen können Sie an bestimmten Punkten in die FLV-Datei eingreifen. Im folgenden Code wird ein Listener für das Ereignis cuePoint erstellt und eine Prozedur aufgerufen, die den aktiven Video-Player (0) anhält, zum zweiten Player (1) wechselt und dessen FLV-Datei abspielt.

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

Wenn Sie einen neuen Video-Player hinzufügen, setzt die FLVPlayback-Instanz seine Eigenschaften auf die Werte des Standard-Players, mit Ausnahme der Eigenschaften source , totalTime und isLive , die von der FLVPlayback-Instanz immer auf die Standardwerte gesetzt werden, das heißt leerer String, 0 bzw. false . Die Eigenschaft autoPlay , die für den Standard-Player standardmäßig den Wert true hat, wird auf false gesetzt. Die Eigenschaft cuePoints hat keinen Effekt, auch nicht für nachfolgende Ladevorgänge in den Standard-Player.

Die Methoden und Eigenschaften, mit denen Lautstärke, Position, Abmessungen, Sichtbarkeit und Benutzeroberflächen-Steuerelemente gesteuert werden, sind immer global. Ihr Verhalten wird durch das Einstellen der Eigenschaft activeVideoPlayerIndex nicht beeinflusst. Weitere Informationen zu diesen Methoden und Eigenschaften und den Auswirkungen der Einstellung für die activeVideoPlayerIndex -Eigenschaft finden Sie im Abschnitt zur FLVPlayback.activeVideoPlayerIndex-Eigenschaft im ActionScript 3.0 Referenzhandbuch für Flash Professional . Die verbleibenden Eigenschaften und Methoden gelten für den Video-Player, der vom Wert der Eigenschaft activeVideoPlayerIndex angegeben wird.

Eigenschaften und Methoden, die Abmessungen steuern, interagieren jedoch mit der Eigenschaft visibleVideoPlayerIndex . Weitere Informationen finden Sie im Abschnitt zur FLVPlayback.visibleVideoPlayerIndex-Eigenschaft im ActionScript 3.0 Referenzhandbuch für Flash Professional .