4

いくつかのアニメーション化された図形とテキストを含む単純な WPF (XAML) ファイルがあります。アニメーションにはインタラクティブな動作はありません。このアニメーションをビデオ ファイルとして記録し、後でスクリーンキャストの「イントロ」画面として使用したいと考えています。

私が必要だと思うもの:入力XAMLファイルを受け取り、高品質のWMVを(たとえば24fpsで)吐き出すC#コード。

私がすでに調査した可能な代替案

  1. Camtasia Studio などの画面録画ソフトウェアで録画します。これは機能しますが、特にアニメーションに多くの遷移や動きがある場合、アニメーションはそれほどスムーズではありません

  2. Epiphan Systems の DVI2USB などのハードウェアを使用します。コストがかかりすぎます。試していません。

  3. DVR カードを使用して TV 出力 (S ビデオなど) を記録する - 低品質で低解像度。

2008 年 10 月 28 日の更新 - 動作するソース コード

このブログ投稿には、WPF/XAML を AVI としてエクスポートする完全に機能するソース コードの例があります。それは私が望むほど速くはありませんが、私のニーズには合っています:

MSDN ブログへのリンク

4

1 に答える 1

4

RenderTargetBitmap でフレームをレンダリングし、選択したコーデックでエンコードします。それほど高速ではありませんが、通常の PC で 24 fps を達成できます。同様の手法を使用して、ビデオ ストリームを新しい WPF インジケーターから従来のビットマップ システムにフィードします。より良い解決策があるかもしれませんが、うまくいきます。

また、RenderTargetBitmap よりもはるかに高速に動作する、WPF が内部的に使用する DirectX バッファーからレンダリングされたフレームをプルするソリューションについても耳にしましたが、運用システムで使用するには信頼性が低すぎるように思われました。

更新: リアルタイムは必要ないようですので、RenderTargetBitmap は問題なく動作するはずです。

于 2008-09-16T19:27:12.133 に答える