Как зациклить видео во Flash - PullRequest
0 голосов
/ 10 июня 2010

Итак, у меня было видео в формате quicktime, оно было брошено во флэш-память, без проблем закодировано, и вот результат, который я получил: http://www.healthcarepros.net/travel.html

Я бы хотел, чтобы видео было «зациклено»или "autorewind", как только он закончится, но я с трудом пытаюсь понять, как это сделать.Вот мой код, любая помощь будет принята с благодарностью ...

if (AC_FL_RunContent == 0) {
    alert("This page requires AC_RunActiveContent.js.");
} else {
    AC_FL_RunContent(
        'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
        'width', '330',
        'height', '245',
        'src', 'healthcare-video',
        'quality', 'high',
        'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
        'align', 'middle',
        'play', 'true',
        'loop', 'true',
        'scale', 'showall',
        'wmode', 'window',
        'devicefont', 'false',
        'id', 'healthcare-video',
        'bgcolor', '#ffffff',
        'name', 'healthcare-video',
        'menu', 'true',
        'allowFullScreen', 'false',
        'allowScriptAccess','sameDomain',
        'movie', 'healthcare-video',
        'salign', ''
        ); //end AC code
}

    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="330" height="245" id="healthcare-video" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="loop" value="true" />
<param name="play" value="true" />
<param name="movie" value="healthcare-video.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" />    <embed src="healthcare-video.swf" play="true" flashvars="autoplay=true&play=true&autorewind=true" quality="high" bgcolor="#ffffff" width="330" height="245" name="healthcare-video" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>

1 Ответ

2 голосов
/ 10 июня 2010

Вы должны будете сделать это в плеере, который вы настроили. Вы не можете изменить это в HTML / Javascript, который отображает SWF.

В FLA, который вы создаете для создания SWF, вам нужно будет добавить некоторые ActionScript. Он должен будет прослушать событие видео ЗАВЕРШЕНО, а затем воспроизвести его, как только это событие сработает. Код отличается в зависимости от того, используете ли вы AS2 или AS3.

Используете ли вы встроенный компонент FLV?

Если вы используете AS2 и просто используете объект Video, используйте этот код:

ns.onStatus = function(info) {
   if (info.code == "NetStream.Play.Stop") {
   ns.seek(0);
   }
}; 

Как отмечено здесь: http://www.communitymx.com/content/article.cfm?cid=984BA

Если вы используете компонент FLV, в AS3 вы будете использовать следующий код для управления циклом:

import fl.video.*;

// Video component instance name
var flvControl:FLVPlayback = display;
var flvSource:String = "Call_to_Action.flv";

// Loop the video when it completes
function completeHandler(event:VideoEvent):void
{
   flvControl.seek(0);
   flvControl.play()
}
flvControl.addEventListener(VideoEvent.COMPLETE, completeHandler);

// Set video
flvControl.source = flvSource;

Как отмечено здесь: http://www.adobe.com/devnet/flash/articles/flvplayback_programming_04.html

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

Код, который вам нужно будет использовать, зависит от того, как вы поместите видео в FLA-файл. Надеюсь, это поможет!

...