0

私の優先事項は、StageWebView クラスを使用して iOS 用のフラッシュ CS5.5 AIR でコンパイルされた iPad アプリでフルスクリーン (標準サイズ) 1024x768 H264 ビデオを再生することです。これは完全に正常に機能します。StageWebView と通信するための正式な方法はありませんが、再生が終了したビデオを「削除」することはできません。AS <=> JS 通信を可能にする StageWebViewBridge を入力します。

iPad での Video クラスの全体的なパフォーマンスの低下 (1 または 2) を回避しようとしています。html5 オブジェクトを読み込んで StageWebView 内でビデオを再生すると、驚くほどうまく機能します (参照: GPU ハードウェアでデコードされた h264)。

StageWebView での再生が終了したら、ビデオを停止する必要があります。Webkit ブラウザーで適切に再生される H264 でエンコードされた .mov ファイルをパッケージ化しています。任意のビデオ ファイルを指すタグを使用して StageWebView に Web ページをロードすると、完全に正常に再生されます。

StageWebViewBridge を導入すると変わります。/html フォルダーにファイルを配置する必要があります。プレーヤーの src が再生するすべての種類のパスを送信していますが、ビデオが読み込まれません。ビデオの名前は「a.mov」です。player.src = 'a.mov'、または player.src = 'html/a.mov'、または player.src = './html/a.mov' を試すか、File クラスを使用してファイルを取得してみました。 applicationDirectory を開き、ファイルを .nativePath に解決します。StageWebView ページで AS から JS に何を送信しても、ビデオをロードできません。

埋め込みファイルを参照する方法を理解した人はいますか? ファイルを送信して AS から JS にロードし、JS に html5 要素の .src プロパティをリセットさせたいと思います。

私が作成した File.applicationDirectory 参照でさえ、ファイルが「存在する」と述べていますが、ページ上の要素の .src プロパティを設定することはできません。わからないようです。

どんなヒントでも大歓迎です。

4

3 に答える 3

3

私はstagewebview bridgeの製作者です...

あなたがコメントしたことはすべて、私のクラスで行うことができます....htmlでファイルを参照する方法は次のとおりです。

<img src="appfile:/yourfile.jpg">

しかし、あなたの問題は、srcを動的に変更し、ファイルの実際のパスを取得する方法がわからないことだと思います。

今日、ライブラリを更新しました...(いくつかのバグ、およびAndroidバージョン!!!)

例をアップロードするには時間が必要ですが、出発点として、wiki と JavaScript からのこの関数を見てください。

StageWebViewBridge.getFilePath( path )

www dir 内に video.mp4 という名前のファイルがあり (はい、変更され、現在はルート dir です)、jQuery を使用してビデオの src を割り当てる必要があるとします...

JSでこれを行うだけです:

$('#video').attr('src', StageWebViewBridge.getFilePath('jsfile:/video.mp4') );

変更されているため、何もしない前にドキュメントを読み直してください...

それが役に立ったら言ってください....

于 2011-09-19T03:17:58.173 に答える
0

あなたの質問を完全に理解しているかどうかはわかりません。役立つかもしれないいくつかのこと:

  1. StageWebView は、AIR の他の場所で使用される app:/ または app-storage:/ プロトコルを認識しません。そのため、ローカル ビデオ ファイルを使用している場合は、使用している URL が file:/ であることを確認してください。私は iOS にはあまり詳しくありませんが、アプリ ストレージまたはアプリ内のファイルにアクセスできない場合 (アクセスしようとしていると仮定して)、ファイルを File.userDirectory (Android では SD です) にコピーできます。カード) アプリの起動時に。

  2. 完全な StageWebViewBridge は必要ないのではないでしょうか? StageWebView を使用して AS から JS への通信 (およびその逆) を行う方法の基本をブログに書きました。あなたのニーズには、 AS -> JS だけが必要なように思えます。これは単にswv.loadURL("javascript:somefunction('videoURL')"). somefunctionHTML5 タグの src パラメータを設定する場所。

于 2011-09-17T05:33:55.160 に答える