Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: интирестный момент с flv
Flash Zone Forum > Macromedia Flash > Общие вопросы
serj-sd
Всем привет ... задался вопросом , можно ли заставить flv (файл подкачки видео который) повторятся (loop типа) после того как видео закончится... тоесть играет видео в swf через flv ... когда видео заканчивается начинает проигроватьс снова ... ну тоесть без участия пользователя ... прошу понять правельно ... не swf повторяется а видео через flv обьеснил конечно кривовато наверное но вот так получается )))

кого тока неспрашивал... никто ниможет помоч.... а вобще по идее проблема несложная ... помогите плиз советом если можете
MustLive
Цитата
Всем привет ... задался вопросом , можно ли заставить flv (файл подкачки видео который) повторятся (loop типа) после того как видео закончится...

serj-sd

Можно сделать циклическое проигрывание для flv файлов. Для этого тебе нужно написать соответствующий AS код.

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

Я написал такой код, который обрабатывает событие rewind компонента flv плеера.

Размести на сцене компонент FLVPlayback и назови его flv. Потом укажи в кадре следующий код:
Код
loop = new Object();
loop.rewind = function(){
    flv.play();
}
flv.contentPath = "video.flv";
flv.autoRewind = true;
flv.addEventListener("rewind",loop);

Этот AS код установит flv плеер в режим зацикленного проигрывания.
chingachgoog
Можно воспользоваться событием onStatus класса NetStream. И посмотреть infoObject.code у события окончания видео (я просто не помню как оно называется). Вот например, я писал когда-то код для перемотки видео на последний кадр (секунду):

Код
connection_nc = new NetConnection();
connection_nc.connect(null);
stream_ns = new NetStream(connection_nc);

my_video.attachVideo(stream_ns);
stream_ns.play("myVideo.flv");

stream_ns.pause(true)

seek_end=0

function findEnd(){
    lastTime=seek_end
    seek_end++
    stream_ns.seek(seek_end)
}
findEnd()



stream_ns.onStatus = function(infoObject) {
    trace (infoObject.code)
    if (infoObject.code=="NetStream.Seek.InvalidTime"){
        stream_ns.seek(lastTime)
        stream_ns.pause(false)
        delete stream_ns.onStatus
    } else {
        findEnd()
    }
};


Но можно воспользоваться и onMetaData - в большинстве случаев быстрее и удобнее. Только метаданные не во всех flv могут быть (((
Русская версия IP.Board © 2001-2014 IPS, Inc.