| СОЗДАНИЕ ПЕРЕДАЧ ДЛЯ ТРАНСЛЯЦИИ В ЭФИРЕ TELESA.
Общие рекомендации.
Ваша интерактивная передача, мультфильм, игра и т.п. (в дальнейшем клип) может быть создана с применением ActionScript для любых версий flash. Частота кадров клипа может быть выбрана на Ваше усмотрение, но лучше, чтобы она лежала в диапазоне 10-30 кадров в секунду. Если Ваш клип очень сильно нагружен движущейся графикой, то рекомендуем выбрать меньшее число кадров в секунду (например, 12), иначе клип будет "тормозить" на медленных компьютерах. Соотношение сторон видимой области Вашего клипа лучше выбрать 4:3, чтобы он полностью заполнил экран интернет-телевизора telesa (в дальнейшем приемник). Если в Вашем клипе есть растровая графика, то лучше использовать точное соотношение сторон экрана 388х291px. Загрузчик для клипов не нужен, поскольку приемник сам показывает проценты загрузки.
А теперь, давайте перейдем к ActionScript и рассмотрим создание клипов на примерах. Для начала возьмем самый простой и распространенный случай.
Клип с Вашим управлением "просмотр" и "заново".
В первом кадре Вашего клипа, самыми первыми строчками, нужно вставить следующий скрипт: System.security.allowDomain(_root.securityURL); // см. 1 stop(); // см. 2 По строчкам:
- Разрешаем приемнику доступ к переменным клипа. Это необходимо на случай, если приемник и клип будут находится на разных доменах.
- Останавливаем клип в первом кадре. Это необходимо, чтобы приемник смог однозначно правильно отмасштабировать Ваш клип по первому кадру, а не в процессе проигрывания.
Поскольку этот клип не управляется кнопками с панели приемника, то Вам стоит реализовать кнопку "просмотр" в начале клипа и "заново" в конце. Сделайте это как Вам будет удобней.
Управление клипом с панели приемника telesa.
Как и в предыдущем примере отдаем две основных команды. System.security.allowDomain(_root.securityURL); stop();
Далее имеется два варианта для управления Вашим клипом.
Первый — воспользоваться переменными: _root.playShow , _root.stopShow и _root.pauseShow , которые получают значения true и false при нажатии кнопок управления приемника.
Режим "стоп": _root.playShow = false; _root.stopShow = true; _root.pauseShow = false; Режим "плэй": _root.playShow = true; _root.stopShow = false; _root.pauseShow = false; Режим "паузы": _root.playShow = false; _root.stopShow = false; _root.pauseShow = true;
Второй — определить в первом кадре Вашего клипа методы/функции для срабатывания по нажатию кнопок "воспроизведение" - onPlay() , "пауза" - onPause() и "стоп" - onStop() .
В простом варианте, когда вся анимация состоит из графических символов, скрипт в первом кадре клипа может выглядеть так: System.security.allowDomain(_root.securityURL);
function onPlay() { play();
}
function onPause() { stop();
}
function onStop() { gotoAndStop(1);
}
stop();
Возможно, Вы не сможете или не захотите создать обработку паузы в вашем клипе. Тогда пользуйтесь только режимами "воспроизведение" и "стоп".
Конечно, Вы можете комбинировать эти два способа как Вам угодно. В последнем кадре вашей анимации поставьте вызов метода:
_root.engine.theEnd(); Эта команда позволит приемнику узнать о том, что клип окончен, перевести приемник в состояние "стоп", а также, при необходимости, начать загрузку и проигрывание следующего клипа. Подробней об этом дальше.
Подробности.
Кроме всего, что было уже перечислено, Ваш клип может пользоваться переменными "путь до общей папки" – _root.commonURL и "путь до папки индивидуальных данных клипа" – _root.pathURL . Эти переменные нужны для того, чтобы подгружать в Ваш клип общие данные и индивидуальные. Общие данные всегда подгружаются в клип. Индивидуальные же, определяют особенность клипа. Это может быть звуковой файл голоса диктора или картинка на мониторе позади него.
Также, на главной временной диаграмме создается объект engine с методами для управления приемником telesa. Методы следующие (во избежание путаницы сразу со ссылкой относительно главной временной диаграммы):
_root.engine.theEnd() — данный метод нужно вызывать: в последнем кадре Вашего клипа, по окончанию проигрывания звука (onSoundComplete ) и т.п. Этот метод дает знать приемнику, что клип окончен и можно перейти к проигрыванию следующего или остановиться.
_root.engine.stopShow() — устанавливает все переменные проигрывания (_root.playShow и т.д.) в режим "стоп", обращается к методу onStop() на главной временной диаграмме Вашего клипа и, конечно, переводит приемник в соответствующий режим.
_root.engine.playShow() — те же действия для перехода в режим "воспроизведение".
_root.engine.pauseShow() — то же для режима "пауза".
Хороший тон создания клипов для трансляции. Некоторые ошибки и правила.
- Для того, чтобы упростить публикацию Вашего клипа, постарайтесь, чтобы графические объекты в первом кадре не вылезали за края видимой области. Именно по этому кадру будет произведено автоматическое масштабирование клипа.
- Ошибка: первый черный кадр. Нельзя делать первый кадр Вашего клипа черным! Пользователь после загрузки клипа будет озадачен или вообще не поймет, что Ваш клип загружен.
- Процессорное время. "Тормоза". Не имеет смысла завышать частоту кадров клипа. Это сильно "сжирает" процессорное время и не дает возможности просмотра Вашего клипа на медленных компьютерах. Не используйте много векторной графики. Если у Вас есть сложный объект, состоящий из большого количества векторов, сохраните его как растровый и используйте вместо векторного во флэш. Также старайтесь, чтобы в Вашем клипе не гонялись впустую циклы onEnterFrame.
- Вес клипа. Вместо того, чтобы копировать одно и то же векторное содержимое по всему клипу, сделайте графический символ этого содержимого и используйте его. Это заметно уменьшит вес Вашего клипа. Также, не забывайте включать компрессию, когда публикуете клип.
Если у Вас возникли вопросы, то обращайтесь в наш форум.
| |