2010-12-08 1 views
1

Работа на «тяжелом видео» Flash-сайте с интро-видео. Во время воспроизведения вступительного видео в фоновом режиме должны быть загружены объекты (изображения, FLV-файлы). Проблема заключается в том, что, в то время как активы загружаются, интро-видео-игра становится нервной.Как плавно воспроизводить FLV-видео при загрузке активов в фоновом режиме?

Что я могу сделать, чтобы видео воспроизводилось гладко, а при загрузке активов?

Это может быть однопоточный характер ActionScript, не уверен. Любое предложение поможет.

После использования предложенного метода @Demian Brecht я заметил, что виновником может быть выделение памяти. Когда FLV загружается, использование памяти увеличивается на ~ 266 МБ, и пока видео записывается в память, частота кадров падает до 1FPS.

Я предполагаю, что смогу сначала загрузить все видео и после того, как они будут в памяти, может отображать вступительное видео, но в идеале мне понадобится какое-то обходное решение для загрузки остальных видео во время игры.

Подсказки?

ответ

2

AFAIK, нет никакого «приятного» способа справиться с вашей проблемой, поскольку, как вы упомянули, ничтожному характеру ActionScript.

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

Чисто теоретическая мысль ...

Что делать, если у вас есть два встроенных ГИФы на странице, один скрытый и один играет интро фильм? Благодаря javascript/flash-взаимодействию вы могли бы начать загрузку активов в свой скрытый swf после запуска встроенного видео (а также для получения обновлений статуса).

Конечно, вы не можете получить доступ к видео непосредственно из видимых швейцарских франков, но как только загрузка будет сделана, фильмы должны кэшируются браузером и должны быть доступны сразу по запросу ...

Опять же, просто мысль - на самом деле я не пробовал ничего подобного.

+0

«Настолько сумасшедший, что это может сработать» :) Я попробую утром с правильными файлами. Не самое простое решение, но может работать. – 2010-12-08 23:31:06

+0

Пожалуйста, разместите свои выводы, если вы сделаете снимок. Я очень сомневаюсь, что у меня будет возможность попробовать это сам, и мне сейчас очень интересно узнать, будет ли это работать :) – 2010-12-09 00:27:20

0

Вы пытались увеличить bufferTime или считаете, что загрузка ограничивает системные ресурсы?