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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 05.06.2006, 17:10
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 1  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
По умолчанию loadSound preloader

нужен прелоадер для подгружаемого звука, но блин что-то не работает вот такой скрипт: (в первом кадре)

Код:
_root.stop();
_root.createEmptyMovieClip("s", 10);
snd = new Sound(s);
snd.onLoad = function() {
	this.start();
}
snd.loadSound("so1.mp3", false);
_root.onEnterFrame = function() {
	t = snd.getBytesTotal();
	l = snd.getBytesLoaded();
	pr.txt.text = (l/t) * 100 + "% loaded";
	if (l >=t) {
		delete _root.enterFrame;
		_root.gotoAndStop(2);
	}
}
тут сразу переходит на второй кадр, не дожидаясь загрузки звука. То есть getBytesLoaded==getBytesTotal вначале загрузки. Почему так происходит

Старый 05.06.2006, 17:16
MyXus вне форума Посмотреть профиль Отправить личное сообщение для MyXus Посетить домашнюю страницу MyXus Найти все сообщения от MyXus
  № 2  
Ответить с цитированием
MyXus
 
Аватар для MyXus

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
такая тема бывает в локале. t = l = 0.
попробуй поставить условие

Старый 05.06.2006, 17:38
kayama вне форума Посмотреть профиль Отправить личное сообщение для kayama Найти все сообщения от kayama
  № 3  
Ответить с цитированием
kayama
 
Аватар для kayama

Регистрация: Sep 2005
Сообщений: 1,338
Отправить сообщение для kayama с помощью ICQ
А имитация загрузки что показывала?
__________________
Рисую и флэшу...

Старый 05.06.2006, 17:53
MyXus вне форума Посмотреть профиль Отправить личное сообщение для MyXus Посетить домашнюю страницу MyXus Найти все сообщения от MyXus
  № 4  
Ответить с цитированием
MyXus
 
Аватар для MyXus

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
Я что хочу сказать. Недавно я поднимал похожую тему, меня попинали, я и сам стал думать, что ошибся.
На самом деле у меня есть уже 3 проекта, в которых недоделанность общепринятого механизма прелоадинга дает нестабильные сбои.
Для себя я теперь полную загрузку ролика фиксирую таким набором условий:
Код:
if(o.obj.getBytesLoaded() == o.obj.getBytesTotal() && o.obj.getBytesTotal()>0 && o.obj._width)
ЗЫ. это, понятно, для мувов. Для звука последнее условие не нужно ;-)


Последний раз редактировалось MyXus; 05.06.2006 в 17:56.
Старый 05.06.2006, 18:40
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 5  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
в том то и прикол что в локалке вначале загрузки показывает что загружено ВСЕ 94775 байт звука!
В нэт выкладывал - то же самое: они оба (getBytesLoaded & getBytesTotal) не равны нулю, а равны 94775 и сразу на второй кадр

Старый 05.06.2006, 20:08
elzone вне форума Посмотреть профиль Отправить личное сообщение для elzone Найти все сообщения от elzone
  № 6  
Ответить с цитированием
elzone
[+3 02.07.08]
 
Аватар для elzone

Регистрация: Sep 2004
Сообщений: 86
попробовал у себя - все крутится как надо

Код:
_root.stop();
_root.createEmptyMovieClip("s", 10);
snd = new Sound(s);
snd.onLoad = function() {
	this.start();
}
snd.loadSound("tr1.mp3", false);
_root.onEnterFrame = function() {
	t = snd.getBytesTotal();
	l = snd.getBytesLoaded();
	_root.text = int(l/t * 100) + "% loaded";
	if (l == t) {
		delete _root.enterFrame;
    	_root.gotoAndStop(2);
	}
}

Старый 05.06.2006, 20:28
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 7  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
to elzone: будешь смеяться, но твой код действительно работает ... только локально

Старый 05.06.2006, 20:44
elzone вне форума Посмотреть профиль Отправить личное сообщение для elzone Найти все сообщения от elzone
  № 8  
Ответить с цитированием
elzone
[+3 02.07.08]
 
Аватар для elzone

Регистрация: Sep 2004
Сообщений: 86
поправочка небольшая

Код:
_root.stop();
_root.createEmptyMovieClip("s", 10);
snd = new Sound(s);
snd.onLoad = function() {
	this.start();
}
snd.loadSound("tr1.mp3", false);
_root.onEnterFrame = function() {
	t = snd.getBytesTotal();
	l = snd.getBytesLoaded();
	_root.text = int(l/t * 100) + "% loaded";
	if (l == t && t > 0) {
		delete _root.enterFrame;
    	_root.gotoAndStop(2);
	}
}
http://elzone.net/test/mp3/1.html

просто при загрузке из инета не всегда стразу определяет размер

Старый 06.06.2006, 05:20
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 9  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
ща попробую...
неа. даже локально не катается


Последний раз редактировалось $mival; 06.06.2006 в 06:08.
Старый 06.06.2006, 05:49
Usnul вне форума Посмотреть профиль Отправить личное сообщение для Usnul Посетить домашнюю страницу Usnul Найти все сообщения от Usnul
  № 10  
Ответить с цитированием
Usnul
 
Аватар для Usnul

Регистрация: Mar 2001
Адрес: во сне
Сообщений: 2,701
Отправить сообщение для Usnul с помощью ICQ
работать со звуком можно начинать со следующего кадра после окончания загрузки, не спрашивайте почему.


ЗЫ
ушел спать.
__________________
I'm only happy when it rains.
Waka Laka

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

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

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


 


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


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