2011-02-09 15 views
0

こんにちは 私はフラッシュが初めてで、簡単なビデオプレイヤーを作ろうとしています。私は、ビデオのソースの設定に問題があります。FlashとPHPのパラメータ交換

player.source='http://localhost/getVideo.php'; 

getVideo.phpがどこにある:私のアクションスクリプトでは、私はこれを持って

<?php 
echo file_get_contents('sas.mp4'); 
?> 

私がいくつかのパラメータを追加しようとすると、これが正常に動作しますが、 player.source:

player.source='http://localhost/getVideo.php?asd=asdas'; 

私はこのエラーを取得:

VideoError: 1005: Invalid xml: URL: "http://localhost/getVideo.php?asd=asdas&FLVPlaybackVersion=2.1" No root node found; if url is for an flv it must have .flv extension and take no parameters 

私がやりたいことは、選択するためにビデオをパラメータ化できるプレイヤーを作成することです。 誰もがこれに対する高速な解決を知っていますか? ありがとう

答えて

1

あなたは明らかにそのようなソースURLにパラメータを付けることはできません。ドキュメントではこれについて何も見つかりませんでしたが、FLVPlayback経由のビデオファイルを開くことは、Loaderオブジェクトに対する単純なURL要求と同じではなく、NetConnectionを開くことを考慮して、URL文字列を制限することは理にかなっています。 NetStreamを起動して、HTTP経由でも接続できます(これはパラメータ付きのURLを無効にします)。コンポーネントは他のもののためのものではなく、誤用を防ぐ(専用のエラーメッセージがあっても)

ちょっと見てみると、NetStream.playとURLRequestを併用すると思われるので、urlRequest.dataを使用してGETパラメータを追加することは可能かもしれません。私はこれを試していない。 FLVPlaybackのネストされたVideoPlayerでは、独自のストリームをアタッチできます。

もう1つの解決策は、最初に単純なURLRequestを起動し、パラメータ化されたPHPスクリプトで実際のflvムービーの結果パスのみを返すようにしてから、player.sourceに渡すことができます。

+0

私は最初の解決策を試しますが、2番目の方法は最もシンプルですが、私のWebサーバーはビデオサーバーに直接アクセスできませんので、この方法が必要です。 – albanx

+0

また、Webサーバーの書き換えエンジンを使用してURLをgetパラメータに変換することもできます。ちょっとした考え。 ;) – weltraumpirat