2009-08-26 2 views
2

これまでは、Managed Direct XとDirectShow.Netを使って単純なメッシュのテクスチャにビデオを再生しました。私はこのテクニックを使用して、複数のビデオソースを1つのテクスチャに結合し、テクスチャを介して公開されたさまざまな機能を使用してこれらのストリームを結合しました。これは2年前の非常に興味深い実験であり、Managed DirextXがまだ開発され、サポートされている(これはもはやありません)DirectShow.Netと同様に目的には適していました。更新されたようですC#でビデオの2つのストリームをどのようにミックスできますか?

私はこのスペースにもう一度挑戦したいと思っています。これをC#でどのように行うことができるのかを知りたいと思います。

答えて

3

WPFでは非常に簡単です。

2つのコントロールを上下に重ねて使用し、上部を50%透明にします。

しかし、私はそれが新しいビデオ

+0

これは、この問題のかなり単純な実装のように思える、本当に興味深い考えです。私はこれにショットをして、ビデオカメラで何ができるのかを見ていきます。 –

2

にそれを保存することはできないと思うあなたはMDXとDirectShowのと同じとほぼ同じであるSlimDXオープンソースのライブラリを使用してwin7の中でも、Vistaのサポートを持つことができます。 0

+0

私はこのlibaryについて以前に聞いたことがありません、それを指摘してくれてありがとう。もし私が重い持ち上げ道を行くなら、私はそれを調べるでしょう。 –

1

私が今日出会ったもう1つの選択肢は、AForge.netです。ビデオを再生するための名前空間が含まれています。 http://www.aforgenet.com/framework/samples/video.htmlであり、LGPLライセンスの下で公開されています。

0

私は正確に2003年頃にそれを行いました。私は、安全でないコード、つまり2つのビデオストリームからコピーされた各画像フレームをRGB形式に変換するポインタを使用しなければなりませんでした。それぞれのピクセル値を平均して元の形式に戻すことができます。安全でないコードを使用しないとパフォーマンスが大幅に低下します。私の理解は、ビデオストリームを扱うとき、DirectShowは自動的に多くのコーデックを整列させてその魔法を行います。その間、これらのイメージストリームはスレッドセーフであり、適切に同期されなければならず、これは多くのオーバーヘッドを意味する。しかし、よく知っている誰かがこれに乗り出すべきです。