Воспроизведение нескольких видеофайлов

Можно последовательно воспроизводить видеофайлы в экземпляре FLVPlayback, просто задав новый URL-адрес для свойства source при окончании воспроизведения предыдущего видеофайла. Например, следующий код 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·см. в описании свойств FLVPlayback.activeVideoPlayerIndex·и FLVPlayback.visibleVideoPlayerIndex·в справочнике ActionScript® 3.0 для Adobe® Flash® Professional CS5 .

Следующий код 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-файла к другому необходимо создать переключение в коде ActionScript. Ключевые точки позволяют вам вмешаться в определенные моменты в FLV-файле при помощи события cuePoint . Следующий код создает прослушиватель для события cuePoint и вызывает функцию обработчика, которая ставит активный видеопроигрыватель (0) на паузу, переходит ко второму проигрывателю (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 см. в описании свойства FLVPlayback.activeVideoPlayerIndex в справочнике ActionScript® 3.0 для Adobe® Flash® Professional CS5 . Остальные свойства и методы предназначены для видеопроигрывателя, обозначенного значением свойства activeVideoPlayerIndex .

Однако свойства и методы, управляющие размерами, взаимодействуют со свойством visibleVideoPlayerIndex . Дополнительные сведения см. в описании свойства FLVPlayback.visibleVideoPlayerIndex в справочнике ActionScript® 3.0 для Adobe® Flash® Professional CS5 .