0

メイン SWF にロードするアセットの場所を示す XML ファイルをロードするサイトがあります。画像と外部 SWF は正しく読み込まれますが、なんらかの理由で contentPath が絶対パスでない限り、FLV はまったく読み込まれません。このプロジェクトでは絶対パスを使用できません。HTML ページに関連するリンクも作成しました。

私のファイル構造は次のとおりです。

index.html -- メイン ローダー ファイル

project/shared/published/section1/loader.swf -- ロードするメインの SWF

project/english/images/videos/welcome.flv -- ロードするムービー。

FLVPlayback contentPath のパスが、HTML ページではなく SWF に対して相対的である可能性はありますか? どんな助けでも大歓迎です。

ビデオをロードするページのコード

mx.video.* をインポートします。

import mx.video.*;
playback1.contentPath = getNodeValue(findNode(videos, "one"));

// Assign the mySeekBar instance to the flvPlayback instance
playback1.playPauseButton = playpause;
playback1.backButton = myrewind;
playback1.seekBar = seekbar_container.myseek;
playback1.bufferingBar = mybuffer;
4

2 に答える 2

1

うまくいけば、これはあなたを助けるでしょう. テストを作成しましたが、これが私が持っているものです:

フォルダ設定:

flash/application/ - loader.swf および index.html

flash/movies/ - movie.flv

私が使用したパスは - ../movies/movie.flv

コード例は次のとおりです。

/**
  Requires:
   - FLVPlayback component on the Stage with an instance name of my_FLVPlybk
*/
import mx.video.*;
my_FLVPlybk.contentPath = "../movies/movie.flv";
var listenerObject:Object = new Object();
listenerObject.metadataReceived = function(eventObject:Object):Void {
    my_FLVPlybk.setSize(my_FLVPlybk.preferredWidth, my_FLVPlybk.preferredHeight);
}
my_FLVPlybk.addEventListener("metadataReceived", listenerObject);

これをローカルホストにアップロードしましたが、正常に動作します。

また、インデックスをアプリケーション フォルダーの外にある flash フォルダーに移動してテストしました。これは、FLV が実際に html ではなく swf に関連していることを示しています。

于 2012-05-14T11:08:24.177 に答える
0

FLVファイルへのパスは、.swfファイルを基準にしています。

他のファイルへのパスは、.htmlファイルを基準にしています。

コンポーネントだけでなく、一般的に。

于 2012-05-14T11:12:47.043 に答える