Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 19.01.2009, 14:09
Stas52 вне форума Посмотреть профиль Отправить личное сообщение для Stas52 Найти все сообщения от Stas52
  № 1  
Ответить с цитированием
Stas52

Регистрация: Jul 2006
Сообщений: 106
По умолчанию Как отследить окончание Видео.

Господа, программисты!
У меня такая задача - Проиграть видео и после этого перейти на 2-й кадр. Я нашел код, который отслеживает окончание проигрывания. Но я никак не могу связать его с FLVPlayback, который находится у меня на сцене. т.е звук есть, а картинки нету. Что я делаю не так?

Код AS1/AS2:
var flv_connect:NetConnection = new NetConnection();
flv_connect.connect(null);
var motionStream:NetStream = new NetStream(flv_connect);
 
motionStream.play("video.flv");
 
VPlayer.attachVideo(motionStream);
VPlayer.skin = 'SteelExternalAll.swf';
 
var duration:Number;
var checkStatus:Number;
motionStream.onMetaData = function(meta:Object):Void  {
	duration = meta.duration;
}
 
checkStatus = setInterval(this, "CheckPlayStatus", 250);
 
function CheckPlayStatus() {
	if(motionStream.time >= duration){
		clearInteval(checkStatus);
		gotoAndPlay(2);
	}
}

Старый 19.01.2009, 14:33
zzz_dmg вне форума Посмотреть профиль Отправить личное сообщение для zzz_dmg Найти все сообщения от zzz_dmg
  № 2  
Ответить с цитированием
zzz_dmg

Регистрация: Aug 2008
Адрес: moscow
Сообщений: 137
я в свое время решила так эту задачу
Код:
_root.FLVPlayback.autoRewind = true;
var listenerObject:Object = new Object();
listenerObject.rewind = function(eventObject:Object) {
 gotoAndStop(2);
}
_root.FLVPlayback.addEventListener("rewind", listenerObject);


Последний раз редактировалось zzz_dmg; 19.01.2009 в 14:37.
Старый 19.01.2009, 14:42
Stas52 вне форума Посмотреть профиль Отправить личное сообщение для Stas52 Найти все сообщения от Stas52
  № 3  
Ответить с цитированием
Stas52

Регистрация: Jul 2006
Сообщений: 106
Не получается. Если я делаю вот так, то перепрыгивание на второй кадр происходит при перемотке вручную видеоролика.

Код AS1/AS2:
_root.FLVPlayback.autoRewind = false;
FLVPlayback.contentPath = "video.flv";
FLVPlayback.play();
var listenerObject:Object = new Object();
 
listenerObject.rewind = function(eventObject:Object) {
 gotoAndStop(2);
}
 
_root.FLVPlayback.addEventListener("rewind", listenerObject);

Старый 19.01.2009, 14:46
zzz_dmg вне форума Посмотреть профиль Отправить личное сообщение для zzz_dmg Найти все сообщения от zzz_dmg
  № 4  
Ответить с цитированием
zzz_dmg

Регистрация: Aug 2008
Адрес: moscow
Сообщений: 137
поставьте
Код:
_root.FLVPlayback.autoRewind = true;
у меня все получается

Старый 19.01.2009, 15:00
Stas52 вне форума Посмотреть профиль Отправить личное сообщение для Stas52 Найти все сообщения от Stas52
  № 5  
Ответить с цитированием
Stas52

Регистрация: Jul 2006
Сообщений: 106
При вашем коде у меня проблема в следующем: если перемотать видео вперед, то всё хорошо. А если потом назад, то получается переход на 2-й кадр

Старый 19.01.2009, 15:12
zzz_dmg вне форума Посмотреть профиль Отправить личное сообщение для zzz_dmg Найти все сообщения от zzz_dmg
  № 6  
Ответить с цитированием
zzz_dmg

Регистрация: Aug 2008
Адрес: moscow
Сообщений: 137
в кнопках перехода пропишите
Код:
if (_root._currentframe !== 2) {
		_root.gotoAndStop(1);
	}

Старый 19.01.2009, 15:23
Stas52 вне форума Посмотреть профиль Отправить личное сообщение для Stas52 Найти все сообщения от Stas52
  № 7  
Ответить с цитированием
Stas52

Регистрация: Jul 2006
Сообщений: 106
Так у меня нету отдельных кнопок. У меня стандартный интерфейс FLVPlayback. Там также есть ползунок, с помощью которого можно перематывать видео. Как для них можно написать этот код?

Добавлено через 51 минуту
Вот оно - простое решение проблемы:

Код AS1/AS2:
VPlayback.contentPath = "video.flv";
VPlayback.play();
 
var listenerObject:Object = new Object();
 
listenerObject.complete = function(eventObject:Object):Void {
_root.gotoAndStop(2);
};
 
VPlayback.addEventListener("complete", listenerObject);

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:10.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 17:10.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.