プロが教えるわが家の防犯対策術!

Flash初心者です。
Adobe Flash CS5.5を使って動画を使ったフラッシュを作っています。
こちらのURL(http://itpro.nikkeibp.co.jp/article/COLUMN/20090 …)を参考にして、「FLVPlayback」コンポーネントを使ってflv形式の動画を埋め込んでみたのですが、動画の再生が終わったらそのまま停止してしまいます。

無限にループさせたいのですが、どうすればよいのでしょうか?

「パブリッシュ設定」の[HTMLラッパー] - [再生]内にある項目の[ループ]にはチェックを入れています。

ActionScriptでも、htmlでも、javascriptで制御するのでも構いません。
なんだったらflvを直接htmlに埋め込む方法で解決できるのであれば、それでも構いません。

ちなみに、flashの内容としては、ただただflvの動画を流すだけの至ってシンプルなものです。
ホームページの背景に入れる映像として作成しています。

助けてください。
よろしくお願いします(*_ _)

「flashにflvの動画を埋め込んだらル」の質問画像

A 回答 (1件)

まず,



> flashにflvの動画を埋め込んだらループしない

などと書かれていますが,参考にされたページ
http://itpro.nikkeibp.co.jp/article/COLUMN/20090 … には
「flvの動画の読み込み方」が書かれてあるのです。
「flvの動画の埋め込み方」など書かれていません。

ご自身の中でこの辺のことをハッキリさせてください。

もし「flvの動画の埋め込んだ場合」は
SWFのタイムラインを使ってflvを再生させるのですから

> 「パブリッシュ設定」の[HTMLラッパー] -
> [再生]内にある項目の[ループ]

などが関係します。

しかし
参考にされたページのように「flvの動画の読み込んだ場合」は
FLVPlaybackコンポーネント内 で外部flvが再生されるのですから

> [再生]内にある項目の[ループ]

などは全く関係しません。

普通はSWFのタイムラインは基本的には止めておくものです。
(ループ再生どころか再生させること自体も普通はしない。)


=================

というわけで
FLVPlaybackコンポーネントに "読み込んだ" 外部flv動画を
無限にループさせる方法です。

まずステージ上に配置した FLVPlaybackコンポーネント を選択して
プロパティインスペクタ(プロパティパネル)を表示させて
「インスタンス名」を付けます。

ここでは仮に「myPlayback」というインスタンス名を付けるとしておきます。

その「myPlayback」が存在するタイムラインのフレーム
(例:メインのタイムラインのフレーム1 など)に
次のようなスクリプトを書きます(コピペでもOK)。

◎ ActionScript 3.0 の場合
//-------------------------------------
//VideoEventクラスのインポート
import fl.video.VideoEvent;

//「myPlayback」の再生が完了したときに関数「videoPlay」を実行
myPlayback.addEventListener(VideoEvent.COMPLETE,videoPlay)

//関数「videoPlay」の定義
function videoPlay(e:VideoEvent):void{
//ビデオの再生を開始
e.currentTarget.play();
}
//-------------------------------------



ActionScript のバージョンを書かれていませんが
Flash CS5.5 ということですから
おそらく上の ActionScript 3.0 用スクリプトで良いと思います。

しかし
ActionScript 2.0 設定のドキュメントを作成されている可能性も全くないとも言いきれませんので
念のため ActionScript 2.0 での場合のスクリプトも書いておきます。

◎ ActionScript 2.0 の場合
//-------------------------------------
// リスナーオブジェクトを作成
var videoListener:Object = new Object();

//ビデオ再生完了時の動作を定義
videoListener.complete = function(e:Object):Void {
//ビデオの再生開始
e.target.play();
};

//「myPlayback」にイベントリスナーを登録
myPlayback.addEventListener("complete", videoListener);
//-------------------------------------
    • good
    • 0
この回答へのお礼

詳しく回答してくださって本当にありがとうございます!
BlurFiltan 様に教えていただいたとおりにやってみて、解決できました。
本当に助かりました。
ありがとうございます。

お返事が遅くなってしまってスミマセンでしたm(_ _)m

お礼日時:2012/02/13 16:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!