PDA

Просмотр полной версии : Вопрос по seek()


SONce
28.02.2010, 22:58
Имеется флешка, в которой играет ролик:

nc = new NetConnection();
nc.connect(null);
my_ns=new NetStream(nc);
my_ns.play(путь_до_флв);
my_ns.seek(10);

Код привел примерно.

Проблема такая. Когда смотрю ролик через дебагер то seek работает. Как только загружаю на сервак и смотрю через браузер, то неработает, при seek ролик начинается сначала ролик.

Никто не сталкивался? В чем может быть проблема.

Добавлено через 59 минут
Поколдовав обнаружил что все работает коректно в IE.

Однако в опере/лисе - ролик начинается сначала.

tikhop
01.03.2010, 02:32
может дело в том, что ролик еще не загрузился?

kackbip
01.03.2010, 06:40
Да, скорее всего автор пытается перемотать на участок, который еще не загружен.

SONce
01.03.2010, 12:50
чем отличается загрузка в опере от загрузки в эксплорере? :)

Темболее что ролик передается через ligthttp с flv_streaming

invincible
01.03.2010, 12:54
Проблема в том, что вы пытаетесь перемотать на незагруженный участок. Правильно это делать так - на сервере поставить nginx, и оду из утилит для эмуляции псевдостримминга, перемотка потом должна проходить таким способом_ns.play(<flv path>?seek=8493024932) цифры в конце - байт-абрес ключевого кадра. Оинформация о ключевых кадрах находится в метаданных ролика.

SONce
01.03.2010, 13:36
Спасибо попробу. на сервере стоит лайтхттп с псевдостримингом
только один вопрос, как получить этот байт адресс?
и совсем непонятно почему в ИЕ работает моим способом а в Опере нет?

Добавлено через 35 минут
c seek неполучилось. переставил на нгникс, тоже без результатов.

Artic
01.03.2010, 14:32
Спасибо попробу. на сервере стоит лайтхттп с псевдостримингом
только один вопрос, как получить этот байт адресс?
и совсем непонятно почему в ИЕ работает моим способом а в Опере нет?

Добавлено через 35 минут
c seek неполучилось. переставил на нгникс, тоже без результатов.

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

SONce
01.03.2010, 15:46
А причем тут кеширвоание и стриминг?

kackbip
01.03.2010, 16:03
SONce, он дело говорит. Вы подумайте. Да и стриммингом называть псевдостриминг не стоит.

SONce
01.03.2010, 17:12
да какая разница можно или нельзя их сравнивать.

Есть факт то что при стриминге через нгникс или лайтхттп можно запустить ролик с любого места. Факт? - Факт.

Вот я и спрашиваю почему у меня не получается это сделать.

invincible
01.03.2010, 18:51
Есть факт то что при стриминге через нгникс или лайтхттп можно запустить ролик с любого места. Факт? - Факт.

Отнюдь не факт. Можно проигрывать только с ключевого кадра.
достать адрес ключевого кадра можно так onMetaData{
var info:Object = metaData.info;
keyframes:Array = info.keyframes;
}

Далее распарсите массив, в одном из полей будет номер ключевого кадра, а в другом - время и байт-адрес.

SONce
01.03.2010, 19:08
А какже тогда стандартный компонент ФЛВПлеер перематывает на любую секунду?