2012-04-23 59 views
3

WPF(あるいはWinForms)でrtsp://ストリームを再生する方法はありますか?WPF(またはWinForms)でrtspストリームを再生

私はMediaElementMediaUriElementを試してみましたが、いずれも機能しませんでした。また、WMPがrtsp(これはMediaElementにも変換する必要があります)を再生できることについてたくさん読んでいますが、WMPはWindows 7 x64では再生しません。私はthisを見ましたが、私はそれが明確な答えではないことを望んでいます。

使用しているビデオコーデックとは何か関係ありますか?

VLCはrtspストリームをうまく再生します。

私はWPFまたはWinFormsコンポーネントまたは代替ソリューションを探しています。

+0

あなたは今までにインストールされているVLCを必要としない代替手段を見つけましたか? – Roger

+0

実際、そうです。 VLCをインストールする必要はありません。あなたはあなたのアプリケーション/コンポーネントと一緒にVLCの(ZIPからの)あなた自身のコピーを横に並べて、その代わりに参照することができます。私は詳細を思い出すことはできませんが、VLCのローカルコピー(システムメディアプレーヤーとして登録されていない)を使用してしまったと確信しています。 – wpfwannabe

答えて

1

私はVideoLan DotNet for WinForm, WPF & Silverlight 5を発見しましたが、これは今のところトリックを行うようです。欠点は、VLCをインストールする必要があることです。それは独立したものではありません。

私はこれが他の人にも役立つことを願っています。

1

このコントロールを見てみましょう: http://www.codeproject.com/Articles/885869/Stream-Player-control

それは、次の操作を行うことができますFFmpegのベースストリームプレーヤーコントロール、次のとおりです。

  1. 電流を取得
  2. RTSP/RTMPのビデオストリームを再生コントロールによって表示されるフレーム

コントロールには、追加の依存関係と最小限のインターフェイスはありません。

要件

制御のリサイズ版を使用して実装され
  1. の.NET Framework 2.0
  2. 制御のWPFバージョンは

両方のバージョンを.NET Framework 4のクライアントプロファイルを使用して実装されていますx86プラットフォームターゲットを使用して構築されています。

+0

まとめていただきありがとうございます – MickyD

5

Accord.Net(http://accord-framework.net/)を試してください。これは非常に簡単なインターフェースを持ち、ナゲットパッケージ(Accord.Video.FFMPEG)として利用できます。 WinForms/WPFで使用できるBitmapインスタンスを取得するために使用できます。欠点は、Monoをサポートしていないことです(ターゲットとするプラットフォームがわからない)。

例:

VideoFileReader reader = new VideoFileReader(); 
reader.Open("rtsp://192.168......"); 

while (true) 
{ 
    Bitmap frame = reader.ReadVideoFrame(); 
    //Do whatever with the frame... 
} 

reader.Close(); 
+0

これはライブビデオ(少なくともWPFでは)を表示するには非常に非効率的なライブラリですが、私が取り組んでいたプロジェクトでは完全に機能しました。 – Dan

+0

ありがとうございますが、この方法は非常に低速です。 – pixparker

関連する問題