C# アプリケーションで RTMP ストリームをキャプチャして再生しようとしていました。
次のアーキテクチャを選択しました。
- Flash Player を C# アプリに埋め込みます。(終わり)
- 組み込みの Flash Player で Strobe Media Playback を実行します。(終わり)
- 埋め込まれた Strobe Media Playback プレーヤーで RTMP ストリームをキャプチャします。(失敗した)
問題は、ビデオ ソースの場所を設定できないことです。RTMP ソースも HTTP ソースも機能しません。
Strobe Media Playback には、「要求されたコンテンツに接続できません。ご迷惑をおかけして申し訳ありません」というテキスト文字列のみが表示されます。
ソースを設定するいくつかの方法を試しました:
- FlashVars を設定する:
flash.FlashVars = @"src=http://players.edgesuite.net/videos/big_buck_bunny/bbb_448x252.mp4";
または
flash.FlashVars = @"FlashVars=""src=http://players.edgesuite.net/videos/big_buck_bunny/bbb_448x252.mp4""";
- XML-config を作成し、それに関する情報を FlashVars を使用して Strobe に渡す:
flash.FlashVars = @"configuration=D:\configuration.xml";
また、ローカルでホストされている .flv ファイルをこの方法で再生することもできません。
私がやろうとしていることは理論的に可能ですか?
そうである場合、C# コードからストロボ再生用のビデオ ソースを設定するにはどうすればよいですか?
追加の技術情報:
Flash Player を C# アプリに埋め込むために、AxInterop.ShockwaveFlashObjects.dll と Interop.ShockwaveFlashObjects.dllの 2 つのライブラリを使用します。
フラッシュ バージョン: 11.5.502.135
ストロボ メディア再生バージョン: 1.6.328
サンプル C# プロジェクトは、http: //narod.ru/disk/64598707001.c8d1ae94c60a63a021bfdffc82864bb2/WPF_Flash.7z.htmlにあります。
PS .NET アプリケーションで RTMP ストリームをキャプチャして再生するより良い方法を知っている場合は、知識を共有してください。