播放多个视频文件您只需通过在前一个视频文件完成播放时在 source 属性中加载新的 URL,就可以在 FLVPlayback 实例中连续播放多个视频文件。例如,以下 ActionScript 代码侦听 complete 事件,该事件在视频文件播放完后发生。在发生此事件时,代码在 source 属性中设置新视频文件的名称和位置,并调用 play() 方法以播放新视频。 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"); } }; 使用多个视频播放器您还可以在 FLVPlayback 组件的单个实例内打开多个视频播放器,以播放多个视频并在这些视频播放时在它们之间切换。 您在将 FLVPlayback 组件拖到舞台上时创建初始视频播放器。该组件自动为初始视频播放器分配数字 0,并使其成为默认播放器。若要创建其它视频播放器,只需将 activeVideoPlayerIndex 属性设置为新的数字。通过设置 activeVideoPlayerIndex 属性,还可以使指定的视频播放器成为活动 视频播放器,FLVPlayback 类的属性和方法将会影响该播放器。但是,设置 activeVideoPlayerIndex 属性并不会使视频播放器可见。若要使视频播放器可见,请将 visibleVideoPlayerIndex 属性设置为该视频播放器的编号。有关这些属性如何与 FLVPlayback 类的方法和属性进行交互的详细信息,请参阅 Adobe ActionScript 3.0 Reference for the Adobe Flash Platform 中的 FLVPlayback.activeVideoPlayerIndex 和 FLVPlayback.visibleVideoPlayerIndex 属性。 以下 ActionScript 代码加载 source 属性,以便在默认视频播放器中播放视频文件并为其添加提示点。当 ready 事件发生时,事件处理函数通过将 activeVideoPlayerIndex 属性设置为数值 1 来打开第二个视频播放器。它为第二个视频播放器指定一个 FLV 文件和一个提示点,然后使默认播放器 (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; }; 若要在播放一个 FLV 文件时切换到另一个 FLV 文件,必须在您的 ActionScript 代码中进行该切换。提示点允许您使用 cuePoint 事件在 FLV 文件中介入特定点。以下代码为 cuePoint 事件创建一个侦听器,并且调用用于暂停活动视频播放器 (0) 的处理函数,切换到第 2 个播放器 (1),然后播放其 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); } }; 在您创建新的视频播放器时,FLVPlayback 实例将其属性设置为默认视频播放器的值,但 source、totalTime 和 isLive 属性除外,FLVPlayback 实例始终将它们分别设置为以下默认值:空字符串、0 和 false。该实例将 autoPlay 属性(对于默认视频播放器,默认为 true)设置为 false。cuePoints 属性没有任何影响,并且不影响以后加载到默认视频播放器中。 控制音量、位置、尺寸、可见性和用户界面控件的方法和属性始终是全局的,并且设置 activeVideoPlayerIndex 属性后并不影响它们的行为。有关这些方法和属性以及设置 activeVideoPlayerIndex 属性的效果的详细信息,请参阅 Adobe ActionScript 3.0 Reference for the Adobe Flash Platform 中的 FLVPlayback.activeVideoPlayerIndex 属性。其余的属性和方法针对 activeVideoPlayerIndex 属性值所标识的视频播放器。 但是,控制尺寸的属性和方法与 visibleVideoPlayerIndex 属性相互影响。有关详细信息,请参阅 Adobe ActionScript 3.0 Reference for the Adobe Flash Platform 中的 FLVPlayback.visibleVideoPlayerIndex 属性。 |
![]() |