PDA

Просмотр полной версии : грузим flv, делаем заставку из первого кадра, а тут глюк!


marat_
17.02.2011, 18:16
Привет всем!
Цель: загрузить в плеер видеопоток, из первого (или не очень) кадра сделать заставку.
Как решаем:
1) устанавливаем заполнение буфера до воспроизведения в 5 секунд, цепляем и запускаем поток.
Код вкратце:

_root.my_ns.setBufferTime(5);
myVideo.attachVideo(_root.my_ns);
_root.my_ns.play(link);

2) с каждым кадром проверяем - если в буфере уже есть 0.1 секунда видео, ставим на паузу воспроизведение (которое по идее еще не началось, т.к. нет 5 секунд в буфере), перематываем на начало и т.д.
Код:

onEnterFrame = function ():Void
{
var bufferPct:Number = _root.my_ns.bufferLength;
if (bufferPct > 0.1)
{
_root.my_ns.seek(0);
_root.my_ns.pause(true);
gotoAndStop(2);
delete this.onEnterFrame;
}
};

Проблема: заставка получается, но есть легкий дёрг - воспроизведение таки начинается раньше, чем его тормознули.
Что посоветуете?

dvrbear
12.03.2011, 12:22
может чего не понял, но что если сделать объект не видимым до того как он остановится на нужном кадре. если скачек и у звука происходит - значит также сделать звук нулевым и только потом включить.

Hauts
12.03.2011, 12:26
Да, dvrbear верно подсказывает, — "пошаманьте" с видимостью и громкостью, потом запускайте :)


marat_
Guest

Сообщений: n/a


Как так?