Flvplaybackを使った複数FLV再生の検証(1)
[ 2009.10.24 ] by y_sato | Categories:Flash, 技術情報
いつもはお客さんとの打ち合わせ設計がメインの私が
勉強も兼ねて
FLASHのFLVPlayerの動作検証をしてみました。
内容的にはデータベースに登録されているコンテンツリスト
を取得してストリーミングサーバーにある
複数のFLVファイルをFLVPlaybackコンポーネントを使用して
再生するというものです。
ただここで困ったことに
複数ファイルを再生したところで勝手に接続が切れてしまう現象が発生しました
ここで動画の切り替えは
動画ファイルが再生中ならば停止した後に
if (flvpb.activeVideoPlayerIndex == 1) {
flvpb.activeVideoPlayerIndex = 2;
flvpb.visibleVideoPlayerIndex = 2;
flvpb.autoPlay = true;
flvpb.closeVideoPlayer(1);
}else {
flvpb.activeVideoPlayerIndex = 1;
flvpb.visibleVideoPlayerIndex = 1;
flvpb.autoPlay = true;
flvpb.closeVideoPlayer(2);
}
のようにVideoPlayerIndexを用いて切り替えています
使っていないVideoPlayerもflvpb.closeVideoPlayer(1)のように
接続を切っているのにもかかわらず
再生中の動画がストリーミングサーバーとの接続が解除されて
一時停止してしまう問題が・・・
なぜか分からないまま数日が過ぎ
いろいろ検証してみると
大体1本目の動画を再生終了後5分で接続が切れていることに
気づきいろいろAdobeのマニュアルを調べてみると
FLVPlayback.idleTimeout 再生が一時停止または停止して アイドル状態になった FMS への接続が Flash によって切断されるまでのミリ秒数。 このプロパティは、HTTP 経由の FLV ファイルの ダウンロードには影響しません。 ビデオストリームが既にアイドル状態である場合に、 このプロパティを設定すると、 タイムアウト値に新しい値が再設定されます。 デフォルト値は 300000 (5 分) です。
この5分かなと思い
思いきってidleTimeoutを10秒にして見ました
見事動画を連続で見ていっても一時停止にはなりませんでした
でもなぜVideoPlayerを切り替えた後に使っていなものは接続を閉じてて
idleTimeoutをカウントし続けているのか・・・
マニュアルでは「再生が一時停止または停止してアイドル状態になった
FMS への接続が Flash によって切断されるまでのミリ秒数」
となっているのに謎は深まるばかりです
なので引き続き検証して分かったらまたブログに書きます














最近のコメント