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

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

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

Регистрация: Feb 2011
Сообщений: 3
По умолчанию Когда узнавать размеры видео у NetStream?

По какому событию можно точно узнать размеры (videoWidth и videoHeight) у Video если для загрузки используется NetStream? Есть ли решение для любого типа видео? Есть ли вообще решение на все случаи?

Заметил что размеры точно известны при NetStream.Play.Flush и NetStream.Buffer.Full (не всегда). Как я понимаю еще и при onMetaData, но мета данные не всегда есть. NetStream.Buffer.Full также иногда отсутствует либо же размеры еще не установлены. Корректно ли вообще использовать для этого самые первые NetStream.Play.Flush и NetStream.Buffer.Full? Видел еще решение в котором используется setTimeout, вроде как после NetStream.Play.Start, где идет рекурсивный вызов до тех пор пока videoWidth и videoHeight нулевые.

Подскажите как быть?

Старый 01.02.2011, 22:04
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Когда fps будет, тогда точно и размеры будут
А вообще... по-чесному - никак (кроме того, это не статическая величина, она может меняться в каждом кадре). А свойства, так они геттеры и показывают чесно то, что извесно в данный момент. Технически, вы бы могли загружать видео самостоятельно, парсить его (до размеров добраться в принципе не сложно), и потом скармливать его NetStream'у. Другой ворпос - на скролько это важно / критично, чтобы проводить практически исследовательскую работу. Если за это не платят - просто по таймеру, часто на сколько совесть позволяет
__________________
Hell is the possibility of sanity

Старый 01.02.2011, 22:30
avilov вне форума Посмотреть профиль Отправить личное сообщение для avilov Найти все сообщения от avilov
  № 3  
Ответить с цитированием
avilov
[+1 31.01.11]

Регистрация: Jun 2008
Сообщений: 91
wvxvw fps - это количество кадров в секунду ? или что вы имели введу ?

Старый 01.02.2011, 23:10
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
http://help.adobe.com/en_US/FlashPla...tml#currentFPS
Но вообще это сарказм такой был... это свойство так же неизвесно, как и размер видео.
__________________
Hell is the possibility of sanity

Старый 02.02.2011, 09:49
Ruzzz вне форума Посмотреть профиль Отправить личное сообщение для Ruzzz Найти все сообщения от Ruzzz
  № 5  
Ответить с цитированием
Ruzzz

Регистрация: Feb 2011
Сообщений: 3
wvxvw, ну может быть и так. Но хотя бы должно было быть событие, когда загрузился заголовок и декодер смог получить информацию о медиа файле. И я говорю не о метаданных. Здесь же получается, что даже при первом NetStream.Buffer.Full у нас иногда могут быть еще не готовы данные, получаемые через эти геттеры/сеттеры. Хотя заполнение буфера предполагает, что заголовок медиа файла точно загружен.

Можно ли с уверенностью сказать что событие NetStream.Play.Start будет всегда?

Пока сделал так:
- По NetStream.Play.Flush/NetStream.Buffer.Full/onMetaData вызываю функцию в которой проверяю через флажок был ли я уже здесь и если да, то выход;
- Далее - нулевые ли размеры, если да то сюда же по setTimeout;
- Иначе считаю что идет инициализация в начале проигрывания. В конце функции выставляю упомянутый выше флаг, который сбрасываю при NetStream.Play.Stop.

Здесь правда беспокоит этот setTimeout, вдруг произойдет ошибка и мы так и не получим размеры видео

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

Теги
netstream , размер потокового видео
Опции темы
Опции просмотра

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

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


 


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


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