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

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

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

Регистрация: Apr 2011
Сообщений: 12
По умолчанию NetConnection.connect(null)

Всем привет.
Есть такой вопросец. Приложение проигрывает видео-файлы, лежащие на удаленном сервере. Необходимо, чтобы промежуток времени между нажатием на кнопку "Play" и началом проигрывания был минимальным.
2 варианта:
1) Файл на веб-сервере (протокол http). Видео грузим так:
NetConnection.connect(null);
NetStream.play(fileUrl);
2) Файл на FMS (или Wowza, Red5, короче rtmp), грузим:
NetConnection.connect(serverUrl);
NetStream.play(streamName);

Вопрос по поводу первого способа: проигрывание начнется после того как загрузится весь файл или сразу?
И какой из способов быстрее начнет проигрывание?

Старый 14.11.2012, 23:50
illuzor вне форума Посмотреть профиль Отправить личное сообщение для illuzor Найти все сообщения от illuzor
  № 2  
Ответить с цитированием
illuzor
 
Аватар для illuzor

Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
Цитата:
проигрывание начнется после того как загрузится весь файл или сразу?
Нет, как только будет заполнен буфер.

Вряд ли есть существенная разница между двумя способами. Проигрывание начинается после того, как заполнился буфер.

Старый 14.11.2012, 23:55
Krusty вне форума Посмотреть профиль Отправить личное сообщение для Krusty Найти все сообщения от Krusty
  № 3  
Ответить с цитированием
Krusty

Регистрация: Jul 2007
Сообщений: 393
Разницы не будет, время на ответ определяется исключительно сетевыми задержками, которые одинаковы.

Вы можете прогрузить часть файла заранее, а при нажатии плей грузить остаток. Для этого на сервере должен быть установлен модуль псевдостриминга, а видеофайл обработан соотв. образом.
Минусы-
1)часть траффика будет скушана вне зависимости от того, будет ли нажата кнопка плей
2) при нажатии на плей сразу после загрузки флешки никакого позитивного эффекта вы не добьетесь

Старый 15.11.2012, 01:31
TrumaN вне форума Посмотреть профиль Отправить личное сообщение для TrumaN Найти все сообщения от TrumaN
  № 4  
Ответить с цитированием
TrumaN

Регистрация: Apr 2011
Сообщений: 12
Странно. Опытным путем у меня получается, что разница есть.

Смысл вообще в следующем:
Каждые 2 секунды я получаю xml с ссылками на 5 текущих видеороликов и 5 следующих. Показывать нужно только 5 текущих, и каждые 2 секунды их менять.
Сначала я работал только с 5 текущими видео: я создал один netConnection и при получении xml закрывал старые (предыдущие) стримы и начинал новые. Но проблема была в том, что за время смены (2 секунды) видео даже не успевало начать проигрываться.
Поэтому затем я сделал вот как - одновременно работают 10 netStream-ов. Я показываю текущие 5 стримов и одновременно начинаю грузить следующие 5. Когда приходит новая xml - показываю новые и вместо старых пяти - и гружу 5 новых.
Тут возникла проблема со скоростью загрузки. Я попробовал для каждого стрима сделать свой netConnection, и грузиться стало все немного (но заметно) резвее.

Но все это делалось через RTMP.
Теперь же может потребоваться делать то же самое с видео, лежащем на удаленном HTTP.

И путем тестов у меня получилось, что результаты через HTTP вообще никакие (ни через один netConnection, ни через 10). Получилось, что вообще события NetStatusEvent, прослушиваемые на всех netStream, вообще практически всегда не успевают срабатывать в течение 4 секунд (2 секунды до показа + 2 секунды показа). Может дело в настройках http-сервера, который не дает одновременно 10 подключений. Но к нему я доступа не имею


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

Теги
netconnection , netstream
Опции темы
Опции просмотра

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

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


 


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


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