Главная » ActionScript » Использование компонента FLVPlayback – ЧАСТЬ 3

0

файлах на экранах с меньшим разрешением. Например, при увеличении размера с 640 x 480 до 1600 x 1200

пикселов размер обложки увеличивается, но искажения менее заметны.

Для ограничения масштабирования обложки компонента FLVPlayback можно задать свойство skinScaleMaximum. Значением по умолчанию является 4.0, или 400 %. При ограниченном масштабировании обложки для масштабирования FLV-файла требуется сочетание аппаратных средств и программного обеспечения, что может отрицательно повлиять на исполнение FLV-файлов больших размеров с высокой скоростью потока. Если FLV-файл имеет большие размеры (например, ширина 640 пикселов или больше, высота 480 пикселов или больше), не следует устанавливать для свойства skinScaleMaximum низкие значения, так как это может привести к проблемам производительности на больших мониторах. Свойство skinScaleMaximum позволяет выбрать оптимальное соотношение между производительностью и качеством и внешним видом большой обложки.

Выход из полноэкранного режима

Для выхода из полноэкранного режима снова нажмите кнопку полноэкранного режима или клавишу Esc.

Задание следующих свойств и вызов следующих методов может повлечь за собой изменения макета, которые могут привести к выходу компонента FLVPLayback из полноэкранного режима: height, registrationHeight, registrationWidth, registrationX, registrationY, scaleX, scaleY, width, x, y, setScale() или setSize().

При задании свойства align или свойства scaleMode компонент FLVPlayback устанавливает их на значения

center и maintainAspectRatio соответственно до выхода из полноэкранного режима.

Изменение значения свойства fullScreenTakeOver с true на false при использовании полноэкранного режима с аппаратным ускорением также влечет за собой выход Flash из полноэкранного режима.

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

Компонент ActionScript 3.0 FLVPlayback имеет свойство align, которое указывает на то, следует ли центрировать видеофайл при изменении его размера или его расположении по верхнему, нижнему, левому или правому краю компонента. Помимо свойств x, y, width и height компонент ActionScript 3.0 также имеет свойства registrationX, registrationY, registrationWidth и registrationHeight. Исходно они соответствуют свойствам x, y, width и height. При загрузке последовательных видеофайлов автоматическое изменение макета не меняет эти свойства, поэтому новый видеофайл может быть отцентрирован в том же месте. Если scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO, размеры последовательных FLV-файлов могут быть подогнаны под исходные размеры компонента, не вызывая изменение его ширины и высоты.

Автоматическое воспроизведение последовательно загружаемых видеофайлов

При загрузке последовательно загружаемого видеофайла компонент FLVPlayback начинает воспроизведение этого файла, только если загружен достаточный объем для воспроизведения файла с начала до конца.

Для преждевременного воспроизведения видеофайла можно вызвать метод play() без параметров. Вернуться в режим ожидания достаточной загрузки файла можно путем вызова метода pause() с

последующим вызовом метода playWhenEnoughDownloaded().

Использование ключевых точек

Ключевая точка — это точка, в которой видеопроигрыватель отправляет событие cuePoint во время воспроизведения видеофайла. Можно добавить ключевые точки в FLV-файл в том месте, когда должно быть выполнено действие другого элемента веб-страницы. Например, можно отобразить текст или графику, или выполнить синхронизацию с Flash-анимацией, или повлиять на воспроизведение FLV-файла, установив паузу, выполнив поиск другой точки в видео или переключившись на другой FLV-файл. Ключевые точки позволяют при помощи кода ActionScript синхронизировать точки в FLV-файле с другими действиями на веб- странице.

Существует три вида ключевых точек: навигация, событие и ActionScript. Ключевые точки навигации и события также известны как встроенные ключевые точки, так как они встроены в поток FLV-файла и в пакет метаданных FLV-файла.

Ключевая точка навигации позволяет выполнять поиск конкретного кадра в FLV-файле, так как она создает ключевой кадр в FLV-файле как можно ближе к указанной вами временной точке. Ключевой кадр — это фрагмент данных, расположенный между кадрами изображения в потоке FLV-файла. При поиске ключевой точки навигации компонент выполняет поиск ключевого кадра и запускает событие cuePoint.

Ключевая точка события позволяет синхронизировать момент времени в FLV-файле с внешним событием веб-страницы. Событие cuePoint происходит точно в указанное время. Встроить ключевые точки навигации и события в FLV-файл можно либо при помощи мастера импорта видеоданных, либо при помощи Flash Video Encoder. Дополнительную информацию о мастере импорта видеоданных и о Flash Video encoder см. в Главе 16 "Работа с видео" в руководстве Использование Flash.

Ключевая точка ActionScript является внешней ключевой точкой, которую можно добавить либо при помощи диалогового окна компонента "Ключевые точки Flash-видео", либо при помощи метода FLVPlayback.addASCuePoint(). Компонент хранит и отслеживает ключевые точки ActionScript отдельно от FLV-файла, поэтому они менее точные, чем встроенные ключевые точки. Ключевые точки ActionScript имеют точность до одной десятой секунды. Точность ключевых точек ActionScript можно повысить, снизив значение свойства playheadUpdateInterval, так как компонент создает событие cuePoint для ключевых точек ActionScript при обновлении указателя воспроизведения. Дополнительную информацию см. в описании свойства FLVPlayback.playheadUpdateInterval в документе Справочник по языку ActionScript 3.0 и компонентам.

В ActionScript и в метаданных FLV-файла ключевая точка представлена в виде объекта со следующими свойствами: name, time, type и parameters. Свойство name является строкой, содержащей присвоенное ключевой точке имя. Свойство time является числом, представляющим время появления ключевой точки в часах, минутах, секундах и миллисекундах (ЧЧ:ММ:СС.ммм). Свойство type является строкой, значениями которой являются "navigation", "event" или "actionscript", в зависимости от типа созданной ключевой точки. Свойство parameters представляет собой массив указанных пар имя-значение.

При наступлении события cuePoint объект ключевой точки становится доступным в объекте события через свойство info.

Использование диалогового окна "Ключевые точки Flash-видео"

Откройте диалоговое окно "Ключевые точки Flash-видео", дважды щелкнув ячейку "Значение" параметра

cuePoints в Инспекторе компонентов. Диалоговое окно выглядит так, как показано на рисунке ниже:

диалоговое окно "Ключевые точки"

В диалоговом окне отображаются встроенные ключевые точки и ключевые точки ActionScript. При помощи этого диалогового окна можно добавлять и удалять ключевые точки ActionScript, а также параметры ключевых точек. Можно также включать и отключать встроенные ключевые точки. Однако добавление, изменение или удаление встроенных ключевых точек невозможно.

Добавление ключевой точки ActionScript:

1   Дважды щелкните ячейку "Значение" параметра cuePoints в Инспекторе компонентов, чтобы открыть диалоговое окно "Ключевые точки Flash-видео".

2   Нажмите знак "плюс" (+) в верхнем левом углу над списком ключевых точек, чтобы добавить запись ключевой точки ActionScript по умолчанию.

3   Щелкните текст "Новая ключевая точка" в столбце "Имя" и присвойте имя ключевой точке.

4   Щелкните значение времени 00:00:00:000, чтобы изменить его, и назначьте время появления ключевой точки. Можно указать время в часах, минутах, секундах и миллисекундах (ЧЧ:ММ:СС.ммм).

Если существует несколько ключевых точек, новая ключевая точка помещается на позицию списка в соответствии с хронологическим порядком.

5   Для добавления параметра выбранной ключевой точки нажмите знак "плюс" (+) вверху раздела "Параметры" и введите значения в столбцы "Имя" и "Значение". Повторите этот шаг для добавления каждого параметра.

6   Для добавления нескольких ключевых точек ActionScript повторите шаги 2-5 для каждой точки.

7   Чтобы сохранить изменения, нажмите кнопку "OK".

Удаление ключевой точки ActionScript:

1   Дважды щелкните ячейку "Значение" параметра cuePoints в Инспекторе компонентов, чтобы открыть диалоговое окно "Ключевые точки Flash-видео".

2   Выберите ключевую точку, которую нужно удалить.

3   Нажмите знак "минус" (-) в верхнем левом углу над списком ключевых точек, чтобы удалить точку.

4   Повторите шаги 2-3 для удаления каждой ключевой точки.

5   Чтобы сохранить изменения, нажмите кнопку "OK".

Включение и отключение встроенной ключевой точки FLV-файла:

1   Дважды щелкните ячейку "Значение" параметра cuePoints в Инспекторе компонентов, чтобы открыть диалоговое окно "Ключевые точки Flash-видео".

2   Выберите ключевую точку, которую нужно включить или отключить.

3   Щелкните значение в столбце "Тип", чтобы вызвать всплывающее меню, или нажмите стрелку вниз.

4   Щелкните название типа ключевой точки (например, "Событие" или "Навигация"), чтобы включить ее.

Нажмите "Отключено", чтобы отключить ее.

5   Чтобы сохранить изменения, нажмите кнопку "OK".

Использование ключевых точек с ActionScript

При помощи ActionScript можно добавлять ключевые точки ActionScript, прослушивать события cuePoint, находить какие-либо ключевые точки или ключевые точки определенного типа, искать ключевые точки навигации, включать или отключать ключевые точки, проверять, включена ли ключевая точка, и удалять ключевые точки.

В примерах данного раздела используется FLV-файл с именем cuepoints.flv, который содержит три ключевые точки:

Имя

Время

Тип

point1

00:00:00.418

Навигация

point2

00:00:07.748

Навигация

point3

00:00:16.020

Навигация

Добавление ключевых точек ActionScript

Добавлять ключевые точки ActionScript в FLV-файл можно при помощи метода addASCuePoint(). Следующий пример добавляет две ключевые точки ActionScript в FLV-файл, когда он готов к воспроизведению. Первая ключевая точка добавляется с использованием объекта ключевой точки, который указывает имя, время и тип ключевой точки в ее параметрах. При втором вызове указывается время и имя при помощи параметров метода time и name.

// Requires an FLVPlayback instance called my_FLVPlybk on Stage import fl.video.*;

import fl.video.MetadataEvent;

my_FLVPlybk.source = "http://www.helpexamples.com/flash/video/cuepoints.flv" var cuePt:Object = new Object(); //create cue point object

cuePt.time = 2.02; cuePt.name = "ASpt1"; cuePt.type = "actionscript";

my_FLVPlybk.addASCuePoint(cuePt);//add AS cue point

// add 2nd AS cue point using time and name parameters my_FLVPlybk.addASCuePoint(5, "ASpt2");

Дополнительную информацию см. в описании метода FLVPlayback.addASCuePoint() в документе Справочник по языку ActionScript 3.0 и компонентам.

Прослушивание событий cuePoint

Событие cuePoint позволяет получить контроль в коде ActionScript при наступлении события cuePoint. При возникновении ключевых точек в следующем примере прослушиватель cuePoint вызывает функцию обработчика событий, которая отображает значение свойства playheadTime, а также имя и тип ключевой точки. Используйте этот пример в сочетании с примером в предыдущем разделе, "Добавление ключевых точек ActionScript", чтобы увидеть результаты.

my_FLVPlybk.addEventListener(MetadataEvent.CUE_POINT, cp_listener);

function cp_listener(eventObject:MetadataEvent):void {

trace("Elapsed time in seconds: " + my_FLVPlybk.playheadTime); trace("Cue point name is: " + eventObject.info.name); trace("Cue point type is: " + eventObject.info.type);

}

Дополнительную информацию о событии cuePoint см. в описании события FLVPlayback.cuePoint в документе Справочник по языку ActionScript 3.0 и компонентам.

Поиск ключевых точек

При помощи ActionScript можно найти ключевую точку любого типа, найти ключевую точку, ближайшую к моменту времени, или найти следующую ключевую точку с конкретным именем.

Обработчик событий ready_listener() в следующем примере вызывает метод findCuePoint() для поиска ключевой точки ASpt1, а затем вызывает метод findNearestCuePoint() для поиска ключевой точки навигации, ближайшей к времени ключевой точки ASpt1:

import fl.video.FLVPlayback; import fl.video.CuePointType; import fl.video.VideoEvent;

my_FLVPlybk.source = "http://www.helpexamples.com/flash/video/cuepoints.flv" var rtn_obj:Object; //create cue point object

my_FLVPlybk.addASCuePoint(2.02, "ASpt1");//add AS cue point function ready_listener(eventObject:VideoEvent):void {

rtn_obj = my_FLVPlybk.findCuePoint("ASpt1", CuePointType.ACTIONSCRIPT);

traceit(rtn_obj);

rtn_obj = my_FLVPlybk.findNearestCuePoint(rtn_obj.time, CuePointType.NAVIGATION);

traceit(rtn_obj);

}

my_FLVPlybk.addEventListener(VideoEvent.READY, ready_listener);

function traceit(cuePoint:Object):void { trace("Cue point name is: " + cuePoint.name); trace("Cue point time is: " + cuePoint.time); trace("Cue point type is: " + cuePoint.type);

}

В следующем примере обработчик событий ready_listener() находит ключевую точку ASpt и вызывает метод findNextCuePointWithName() для поиска следующей ключевой точки с тем же именем:

import fl.video.*;

my_FLVPlybk.source = "http://www.helpexamples.com/flash/video/cuepoints.flv" var rtn_obj:Object; //create cue point object

my_FLVPlybk.addASCuePoint(2.02, "ASpt");//add AS cue point my_FLVPlybk.addASCuePoint(3.4, "ASpt");//add 2nd Aspt my_FLVPlybk.addEventListener(VideoEvent.READY, ready_listener); function ready_listener(eventObject:VideoEvent):void {

rtn_obj = my_FLVPlybk.findCuePoint("ASpt", CuePointType.ACTIONSCRIPT);

traceit(rtn_obj);

rtn_obj = my_FLVPlybk.findNextCuePointWithName(rtn_obj);

traceit(rtn_obj);

}

function traceit(cuePoint:Object):void { trace("Cue point name is: " + cuePoint.name); trace("Cue point time is: " + cuePoint.time); trace("Cue point type is: " + cuePoint.type);

}

Дополнительную информацию о поиске ключевых точек см. в описании методов FLVPlayback.findCuePoint(), FLVPlayback.findNearestCuePoint() и FLVPlayback.findNextCuePointWithName() в документе Справочник по языку ActionScript 3.0 и компонентам.

Поиск ключевых точек навигации

Можно выполнять поиск ключевой точки навигации, ключевой точки навигации, следующей за определенным моментом времени или предшествующей определенному моменту времени. Следующий пример воспроизводит FLV-файл cuepoints.flv и выполняет поиск ключевой точки с временем 7.748 при наступлении события ready. При наступлении события cuePoint вызывается метод seekToPrevNavCuePoint() для поиска первой ключевой точки. При наступлении этого события cuePoint вызывается метод seekToNextNavCuePoint() для поиска последней ключевой точки путем добавления 10 секунд ко времени eventObject.info.time, которое является временем текущей ключевой точки.

import fl.video.*;

my_FLVPlybk.addEventListener(VideoEvent.READY, ready_listener);

function ready_listener(eventObject:Object):void {

my_FLVPlybk.seekToNavCuePoint("point2");

}

my_FLVPlybk.addEventListener(MetadataEvent.CUE_POINT, cp_listener);

function cp_listener(eventObject:MetadataEvent):void { trace(eventObject.info.time); if(eventObject.info.time == 7.748)

my_FLVPlybk.seekToPrevNavCuePoint(eventObject.info.time – .005);

else

my_FLVPlybk.seekToNextNavCuePoint(eventObject.info.time + 10);

}

my_FLVPlybk.source = "http://helpexamples.com/flash/video/cuepoints.flv";

Дополнительную информацию см. в описании методов FLVPlayback.seekToNavCuePoint(), FLVPlayback.seekToNextNavCuePoint()и FLVPlayback.seekToPrevNavCuePoint() в документе Справочник по языку ActionScript 3.0 и компонентам.

Включение и отключение встроенных ключевых точек FLV-файла

Встроенные ключевые точки FLV-файла можно включать и отключать при помощи метода setFLVCuePointEnabled(). Отключенные ключевые точки не инициализируют события cuePoint и не работают с методами seekToCuePoint(), seekToNextNavCuePoint() и seekToPrevNavCuePoint(). Однако отключенные ключевые точки можно найти при помощи методов findCuePoint(), findNearestCuePoint() и findNextCuePointWithName().

При помощи метода isFLVCuePointEnabled() можно проверить, включена ли встроенная ключевая точка FLV-файла. Следующий пример отключает встроенные ключевые точки point2 и point3, когда видео готово к воспроизведению. При наступлении первого события cuePoint, однако, обработчик событий проверяет, отключена ли ключевая точка point3, и если да, включает ее.

import fl.video.*;

my_FLVPlybk.source = "http://www.helpexamples.com/flash/video/cuepoints.flv";

my_FLVPlybk.addEventListener(VideoEvent.READY, ready_listener);

function ready_listener(eventObject:VideoEvent):void { my_FLVPlybk.setFLVCuePointEnabled(false, "point2"); my_FLVPlybk.setFLVCuePointEnabled(false, "point3");

}

my_FLVPlybk.addEventListener(MetadataEvent.CUE_POINT, cp_listener);

function cp_listener(eventObject:MetadataEvent):void { trace("Cue point time is: " + eventObject.info.time); trace("Cue point name is: " + eventObject.info.name); trace("Cue point type is: " + eventObject.info.type);

if (my_FLVPlybk.isFLVCuePointEnabled("point2") == false) {

my_FLVPlybk.setFLVCuePointEnabled(true, "point2");

}

}

Дополнительную информацию см. в описании свойства FLVPlayback.isFLVCuePointEnabled() и

FLVPlayback.setFLVCuePointEnabled()в документе Справочник по языку ActionScript 3.0 и компонентам.

Удаление ключевой точки ActionScript

Ключевую точку ActionScript можно удалить при помощи метода removeASCuePoint(). Следующий пример удаляет ключевую точку ASpt2 при встрече ключевой точки ASpt1:

import fl.video.*;

my_FLVPlybk.source = "http://www.helpexamples.com/flash/video/cuepoints.flv" my_FLVPlybk.addASCuePoint(2.02, "ASpt1");//add AS cue point my_FLVPlybk.addASCuePoint(3.4, "ASpt2");//add 2nd Aspt my_FLVPlybk.addEventListener(MetadataEvent.CUE_POINT, cp_listener);

function cp_listener(eventObject:MetadataEvent):void { trace("Cue point name is: " + eventObject.info.name); if (eventObject.info.name == "ASpt1") {

my_FLVPlybk.removeASCuePoint("ASpt2");

trace("Removed cue point ASpt2");

}

}

Дополнительные сведения см. в разделе FLVPlayback.removeASCuePoint() в документе Справочник по языку

ActionScript 3.0 и компонентам.

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

Можно последовательно воспроизводить видеофайлы в экземпляре 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 и компонентам.

Следующий код 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 и компонентам. Остальные свойства и методы предназначены для видеопроигрывателя, обозначенного значением свойства activeVideoPlayerIndex.

Однако свойства и методы, управляющие размерами, взаимодействуют со свойством visibleVideoPlayerIndex. Дополнительную информацию см. в описании свойства FLVPlayback.visibleVideoPlayerIndex в документе Справочник по языку ActionScript 3.0 и компонентам.

Потоковая передача FLV-файлов с сервера Flash Media Server

Требования к потоковой передаче FLV-файлов с сервера Flash Media Server зависят от того, поддерживает ли ваш поставщик Flash Video Streaming Service встроенную функцию определения полосы пропускания. Встроенная функция определения полосы пропускания означает, что определение полосы пропускания встроено в потоковый сервер и выполняется быстрее. Проверьте, поддерживаются ли у вашего поставщика встроенные функции определения полосы пропускания.

Для доступа к FLV-файлам на сервере Flash Media Server используйте URL-адрес формата rtmp://my_servername/my_application/stream.flv.

При воспроизведении интерактивного потока с сервера Flash Media Server необходимо установить свойство компонента FLVPlayback isLive на значение true. Дополнительную информацию см. в описании свойства FLVPlayback.isLiveв документе Справочник по языку ActionScript 3.0 и компонентам.

Дополнительную информацию об администрировании сервера Flash Media Server, включая сведения о том, как создать интерактивный поток, см. в документации по серверу Flash Media Server по адресу www.adobe.com/support/documentation/ru/flashmediaserver/.

В случае наличия встроенной функции определения полосы пропускания или отсутствия определения полосы пропускания

Класс NCManagerNative является подклассом класса NCManager, который поддерживает встроенные функции определения полосы пропускания, которые могу поддерживать некоторые поставщики услуг Flash Video Streaming Service. При использовании NCManagerNative не требуется наличие никаких специальных файлов на сервере Flash Media Server. NCManagerNative также разрешает подключение к любой версии сервера Flash Media Server без файла main.asc, если определение полосы пропускания не требуется.

Для использования NCManagerNative вместо класса по умолчанию NCManager вставьте следующие строки кода в первый кадр FLA-файла:

import fl.video*;

VideoPlayer.iNCManagerClass = fl.video.NCManagerNative;

В случае отсутствия встроенных функций определения полосы пропускания

Если встроенные функции определения полосы пропускания не поддерживаются вашим поставщиком услуг Flash Video Streaming Service, но определение полосы пропускания необходимо, необходимо добавить файл main.asc в ваше FLV-приложение на сервере Flash Media Server. Файл main.asc доступен в Интернете по адресу www.adobe.com/support/documentation/ru/flash/samples/. Он содержится в файле Samples.zip — в каталоге Samples\ComponentsAS2\FLVPlayback.

Для настройки сервера Flash Media Server на потоковую передачу FLV-файлов:

1   В папке приложения сервера Flash Media Server создайте папку с именем my_application.

2   Скопируйте файл main.asc в папку my_application.

3   Создайте папку с именем streams в папке my_application.

4   Создайте папку с именем _definst_ в папке streams.

5   Поместите FLV-файлы в папку _definst_.

Источник: Использование компонентов ActionScript 3.0 – 2008

По теме:

  • Комментарии