PDA

Просмотр полной версии : FLV


Reijii
06.01.2006, 12:07
Подскажите пожалуйста,

как решить проблему с загрузкой FLV в мувик, когда гружу локально все нормально, как только обращаюсь к мувику по http :( то ничего не происходит :( что я делаю не так ?

спасибо.


var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
function mcLoad(link:String):Void {
loader.vC.my_video.attachVideo(stream_ns);
stream_ns.play(link);
stream_ns.pause(true);
var loaded_interval:Number = setInterval(checkBytesLoaded, 500, stream_ns);
}

function checkBytesLoaded(my_ns:NetStream) {
var pctLoaded:Number = Math.round(my_ns.bytesLoaded / my_ns.bytesTotal * 100);
if (pctLoaded >= 100) {
clearInterval(loaded_interval);
stream_ns.pause(false);
}
}

Wolsh
06.01.2006, 12:50
Да ты можешь всё правильно сделать, но если сервер не знает такого расширения файлов как .FLV, всё равно обломишься. Мне попадались сервера которые даже .cur не понимали и файл не отдавали. Такие дела.
Проверь чем-нибудь простым.

Reijii
06.01.2006, 16:09
да, помогло ) спасибо.. как говорится а ларчик просто открывался )

Reijii
06.01.2006, 19:18
к стати для справки, если кому интерестно, столкнулся в процессе с вопросом - "как определить продолжительность flv", решается след образом:

Код:

stream.onMetaData = function(infoObject:Object) {
for (var propName:String in infoObject) {
if (propName == "duration") {
nsDuration = infoObject[propName]; // и есть наша продолжительность;
}
}
}


единственное что, так это flv должна быть с метаданными ;)

но возникла следующая проблема..
в IE - stream.bytesTotal - выдает в некоторых случаях -1 Sad я думаю что это связанно с тем что он переименовывает файл когда в кэш себе гонит... есть какой-то "обход" этой проблемы ?

в поиске не нашел :(

Antares
06.01.2006, 19:33
FLV -- формат стримовый, а потоковое видео больше чем на буфер на винте не хранится. Поэтому переименовывания файлов, я думаю, не происходит -- просто фазы такой нет. Когда смотрим 5ю минуту, на машине первой давно уже нет.

Reijii
06.01.2006, 19:36
хм..
а как можно буфер установить в 100% ?

у меня проигрывание идет только тогда когда loaded = total..
ну по крайней мере до того как я через браузер открывать стал :)

Wolsh
07.01.2006, 23:12
Погоди... :confused: а зачем тогда стрим пользуешь? Ну и сделал бы тупо swf и проблем не имел???

profi80
08.01.2006, 16:43
да, помогло ) спасибо.. как говорится а ларчик просто открывался )

Отпиши, как научить сервер чтобы все знали. ;)

Reijii
09.01.2006, 22:16
Погоди... :confused: а зачем тогда стрим пользуешь? Ну и сделал бы тупо swf и проблем не имел???

да если бы я решал формат, клиенту нужен flv, хоть убей, хотя для его целей подошел бы и Captivate, но как грится хозяин барин :(

Reijii
10.01.2006, 13:28
Отпиши, как научить сервер чтобы все знали. ;)

просто в MIME-TYPES, для сайта на котором использую flv прописал его :)
ничего сложного :)


2ALL: так что кто-то поможет с решением проблемы, или поставить в рамер буфера значение из duration ? и не мучатся или ест более цивилизованные методы ?

спасибо

Reijii
10.01.2006, 17:07
пока решил чезер buffer, определил общую продолжительность и задаю размер буфера, в результате прелоадер отображает процент загрузки времени клипа, но очень хотелось бы отображать и байты... если кто знает решение буду рад.
спасибо