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

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

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

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
По умолчанию Class Sound. Взаимосвязь getBytesTotal и duration

Эксперименты и мануалы мне так и не дали ответа:
Какая между ними взаимосвязь?

То есть ваяю прогресс-бар загрузки, поверх которого прогресс-бар проигрывания.

В ВК (например) серый загрузчик равномерно вылазит из-под белого elapsed.
А тут элапс асимптотически отползает от 100%, потом обратно....

В общем случае duration растет вместе с getBytesLoaded по мере загрузки аудио и выглядит это корявейше....

Код AS1/AS2:
	var t = currentSound.getBytesTotal();
	var l = currentSound.getBytesLoaded();
	mov.barAudio.loader._xscale = l/t*100		//Loaded
 
	var d = currentSound.duration;
	var p = currentSound.position;		
	mov.barAudio.player._xscale = p/d*100	//Played
 
      // Цифирь: p+" / "+d+" / "+l
Желтый прогресс - загрузка. Оранжевый - проигрывание.
Белиберда. Что я делаю не так?
В данном случае аудио потоковое с дропбокса со стартом при буферизации 5 сек.

Z-PL.swf   (4.6 Кб)
Вложения
Тип файла: swf Z-PL.swf (4.6 Кб, 93 просмотров)
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2


Последний раз редактировалось dark256; 18.04.2013 в 03:13.
Старый 18.04.2013, 06:17
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 2  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Может попробовать потрейсить все метаданные в мп3-шке? Там же наверняка есть length какой-нибудь.
__________________
hauts.ru

Старый 18.04.2013, 11:01
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 3  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
Код AS1/AS2:
currentSound.onID3
вообще не наступает на ряде треков....
А уж если настал, то видим:

onID3[object Object]
TYER : 2005
year : 2005
COMM : ÏÈÐÀÒÑÊÀß ÑÒÀÍÖÈß
comment : ÏÈÐÀÒÑÊÀß ÑÒÀÍÖÈß
TENC : www.radiorecord.lv
onID3[object Object]
TYER : 2005
COMM : ÏÈÐÀÒÑÊÀß ÑÒÀÍÖÈß
TENC : www.radiorecord.lv
genre : 255
track : 0
comment : ÏÈÐÀÒÑÊÀß ÑÒÀÍÖÈß
year : 2005
album :
artist :
songname :

Красотишшша........

id3 (Sound.id3 property)
TLEN - Length // безысходность.......
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2

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

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Ясно.

А если так?
Код AS1/AS2:
	var t = currentSound.getBytesTotal();
	var l = currentSound.getBytesLoaded();
	mov.barAudio.loader._xscale = l/t*100		//Loaded
 
	var d = currentSound.duration * l/t;
	var p = currentSound.position;		
	mov.barAudio.player._xscale = p/d*100	//Played
__________________
hauts.ru

Старый 18.04.2013, 12:31
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 5  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
ДА! Именно! Ура! Спасибо!

Результат поисков страданий и мук (не колин):

Код AS1/AS2:
	function soundLoadControl(){
 
		if (!fullyLoaded){
			t = currentSound.getBytesTotal();
			l = currentSound.getBytesLoaded();
			if ( t > l ) {
				mov.barAudio.loader._xscale = l/t*100				//Load
			}
		}
 
		if (true){
			d = Math.round( currentSound.duration*t/l )
			p = currentSound.position
			if ( d > p ) mov.barAudio.player._xscale = p/d*100		//Play
			mov.outs.text = "LOADED: "+Math.round(l/1024)+
							"\nTOTAL: "+Math.round(t/1024)+
							"\nPOS: "+p+
							"\nREAL DURATION: "+currentSound.duration+
							"\nFIXED DURATION: "+d
 
		}
	}
Z-PL-2.swf   (5.2 Кб)
Вложения
Тип файла: swf Z-PL-2.swf (5.2 Кб, 106 просмотров)
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2


Последний раз редактировалось dark256; 18.04.2013 в 13:33.
Старый 18.04.2013, 16:58
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 6  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Код AS1/AS2:
if (true){
Ахах) Выглядит, вроде, правильно.
__________________
hauts.ru

Старый 19.04.2013, 15:47
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 7  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
Цитата:
Сообщение от Hauts Посмотреть сообщение
Код AS1/AS2:
if (true){
Ахах) Выглядит, вроде, правильно.
Ну это заглушка для читаемости. я же не весь код кинул.
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2

Старый 19.04.2013, 19:27
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 8  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Битрейт * длительность + заголовки = размер файла.

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

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

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


 


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


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