Enhanced Video Rendererのパフォーマンス

 私の環境でEVRのパフォーマンスがどうなるか調べてみました。
OSWindows7 x86 評価版
MBM3N78-EM
CPUPhenom x3 8750 2.4GHz
MEMORYDDR2 800 4GB(2GB*2 Dual channel)
VideoGefoce GT 240 Driver 191.07

基準となるVMR7+オーバーレイ表示のパフォーマンス
フォーマット変換プレビューのFPS
5760x3240、YUY2YUY253.1


■基本的なグラフの場合
 DirectShowのインテリジェンス機能に任せてスマートティのプレビューピンとEVRを接続するとキャプチャ画像のカラーフォーマットにより次のようなグラフが作成されます。 

EVR グラフ1 

 YUV系をキャプチャすると「AVI Decompressor」によりRGB32UYVYに変換されてEVRが接続されます。
 RGB系は「Color Space Comverter」によりRGB32に変換されてEVRが接続されます。

EVR グラフ1詳細 

 この状態で5760x3240と大き目の映像(1920x1080を縦横に3つ並べたサイズ)を流しプレビューしたときのフレームレートを計測しパフォーマンスをチェックします。

※テストにはUYVYHDYCを利用できるようにした「くるくるベンチ特別版」を使用。

EVR くるくるベンチ5760x3240 

結果1 標準的なグラフにおけるEVRのパフォーマンス
フォーマット変換プレビューのFPS
5760x3240、YUY2RGB324.3
5760x3240、UYVYRGB322.7
5760x3240、HDYCUYVY53.1
5760x3240、RGB24RGB3217.1
5760x3240、RGB32RGB3228.5

 YUY2UYVYをキャプチャした場合は「AVI Devompressor」によりRGB32への変換が行われその部分が極端に遅く使い物になりません。これはMonsterX-iなどのD3を入力した場合にデインターレースして60fpsでプレビューしようとしても40fps程度までしか処理できないなど非常に厳しい結果です。

 

 一方HDYCをキャプチャした場合はUYVYに変換(FourCCやサブタイプを変えるだけっポイ)され最もいい結果がでています。これはVMR7と同等のパフォーマンスでありIntensityHDYC)などはEVRを使っても基本的なグラフで快適にプレビューできました。


 RGBに関してはあまり重要ではありませんが、こちらもRGB24をキャプチャした場合、「Color Space Converter」によりRGB32への変換が行われパフォーマンスは低下します。RGB32をキャプチャした場合は、元々HDYCの2倍の情報量なので変換等が行われなくても30フレーム前後となってしまうのは妥当な結果と言えます。



■アマレコTVの場合
 続いて
EVRと上手くネゴシエートできるようなフィルター「AmaRec Deinterlace」を用意してパフォーマンスを調べます。


EVR グラフ2 


 YUY2UYVYHDYC、RGB32をキャプチャすると「AmaRec Deinterlace」によりネゴシエートされ変換系のフィルターなしでEVRが接続されます。
EVR グラフ2詳細 
 「AmaRec Deinterlace」フィルターではカラーフォーマットの変換は一切行わず、ピッチやアロケータをEVRの都合にあわせるだけです(HDYCはFourCCとサブタイプだけUYVYに変更)。

結果2 アマレコTVにおけるEVRのパフォーマンス
フォーマット変換プレビューのFPS
5760x3240、YUY2YUY253.7
5760x3240、UYVYUYVY53.7
5760x3240、HDYCUYVY53.7
5760x3240、RGB24RGB3211.9
5760x3240、RGB32RGB3228.5

 RGB24を除いてフォーマットの変換を一切行わない為、VMR7と比べパフォーマンスの低下はありません。RGB24は「Color Space Converter」により変換される為パフォーマンスが低下します。また、「AmaRec Deinterlace」のコピー処理もある為、結果1よりさらに遅くなっています。


■まとめ
 EVRVMR7に比べて重い(処理が遅い)と言われているのは、EVR自体の処理ではなくその手前に入る変換フィルターが足を引っ張っている事が原因と思われます。アマレコTVはその部分を「AmaRec Deinterlace」フィルターで調整し、EVRでも多くのケースでVMR7と同等のパフォーマンスを発揮できるようになっています。

結果 まとめ
グラフ構成フォーマット変換プレビューのFPS
VMR7 (オーバーレイ)5760x3240、YUY2なし53.1
EVR + AVI Decompressor5760x3240、YUY2RGB324.3
5760x3240、UYVYRGB322.7
5760x3240、HDYCなし53.1
EVR + Color Space Converter5760x3240、RGB24RGB3217.1
5760x3240、RGB32なし28.5
EVR + AmaRec Deinterlace5760x3240、YUY2なし53.7
5760x3240、UYVYなし53.7
5760x3240、HDYCなし53.7
5760x3240、RGB32なし28.5
EVR + Color Space Converter
 + AmaRec Deinterlace
5760x3240、RGB24RGB3211.9
※VMR7(オーバーレイ)はデスクトップコンポジションを無効にしてテスト。他はデスクトップコンポジションを有効にしてテスト。
関連記事


コメントの投稿

EVR直結はできないのでしょうか?

GraphEditを使っていて疑問な点がありググっていたらこちらに辿りつきました。
とても纏まっているすばらしいブログですね。

以下が疑問点になります。
・RGB24 or RGB32を入力し、レンダラにEVRを使用した場合にColorSpaceConverterが挟まれるのはなぜなのでしょうか?直結できないものなのですか?

恐れ入りますが分かりましたら回答いただけると助かります。
よろしくお願い致します。

Re: EVR直結はできないのでしょうか?

> GraphEditを使っていて疑問な点がありググっていたらこちらに辿りつきました。
> とても纏まっているすばらしいブログですね。
>
> 以下が疑問点になります。
> ・RGB24 or RGB32を入力し、レンダラにEVRを使用した場合にColorSpaceConverterが挟まれるのはなぜなのでしょうか?直結できないものなのですか?
>
> 恐れ入りますが分かりましたら回答いただけると助かります。
> よろしくお願い致します。

ビデオレンダラーはビデオメモリ(ビデオカード上のVRAM)を使ってフレームデータを受け取るようになっています。このため前段に必ずシステムメモリからビデオメモリへフレームデータをコピーするフィルターが必要となり、直結できません。

ColorSapceConverterやAVI Decompressorはシステムメモリからビデオメモリへコピーする働きを担っています。

理解しました。

amaman様

なるほど、理解しました。お忙しいところありがとうございました。

質問させてください。

amaman様

疑問点がありますので質問させてください。
1.Color Space Converterが行なっているのは
・色変換
・システムメモリからビデオメモリへのフレームデータコピー
のみと考えてよいでしょうか?他にも処理しているものなのでしょうか?
MSDNを見てもそれらしい記述はありませんでした。

2. 「AmaRec Deinterlace」のフィルタを試してみたいのですが、ソース公開はされていないでしょうか?

以上です。よろしくお願いします。

Re: 質問させてください。

> amaman様
>
> 疑問点がありますので質問させてください。
> 1.Color Space Converterが行なっているのは
> ・色変換
> ・システムメモリからビデオメモリへのフレームデータコピー
> のみと考えてよいでしょうか?他にも処理しているものなのでしょうか?
> MSDNを見てもそれらしい記述はありませんでした。
>
> 2. 「AmaRec Deinterlace」のフィルタを試してみたいのですが、ソース公開はされていないでしょうか?
>
> 以上です。よろしくお願いします。

変換処理とコピー以外になにかやっているかっていうのは私も分かりません。
DirectShowのヘルプにも記載されてないと思います。実際に使ってみて最低限この2つはやっていると私が判断した次第です。

AmaRec Deinterlaceフィルターのソースは公開しませんが、一般的なフィルターと同じようにregsvr32でシステムに登録すればGraph Editで使えるようになっています。

承認待ちコメント

このコメントは管理者の承認待ちです
 
 
あまラボへようこそ
このブログでは自作ソフトの最新情報やtips、PC動画に関する話題を掲載していきます。各記事へは下にあるカテゴリからアクセスして下さい。

ファイルのダウンロードはホームページの方でお願い致します。

質問・要望・不具合報告はこちら
アマレコTV
アマミキ!
アマレココ
アマレコ・ライト
ファンタジーリモート
AMVコーデック



ホームページ
カテゴリ
最新コメント
カレンダー
01 | 2018/02 | 03
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 - - -
最新記事
最新トラックバック
ブログ内タグ

アマレコTV ビデオキャプチャ AMVコーデック アマレココ アマミキ! コーデック SC500 動画配信 ファンタジーリモート アマレコライト プラグイン AMV4 ライブ機能 SC512 デスクトップキャプチャ AVX2 FAQ 質問コーナー リモートソフト ニコニコ動画 DirectShow HDキャプチャ 可変再生速度 解説動画 レゴ LEGO 4K 遅延 組み換え GV-USB2 XL2420T 液晶モニター 倍速液晶 120Hz アマステ AMV2MT Intensity Pro MonsterX3A デインターレース ベンチマーク PS4 RGBキャプチャ Shadow Play GV-USB AVX SD-USB2CAP4 32ZP2 RYZEN 31006 VideoKeeper2 XCAPTURE-1 ffmpeg RDT233WX-Z 31024 designs Alternate キャプチャーツール DC-HD1 SD-USB2CUP4 AtomでHDキャプチャ Livetube プレビュー イベント リプレイ機能 DirectShowFilter 擬似NTSCキャプチャ シンクライアント IntensityPro 倍速補完処理 フィギュア 音ズレ 録画 31021 HT インストール MPC ハイパースレッディングテクノロジー オーバーレイ XCapture-1 UtVideo T2 可逆圧縮 キャプチャカード GV-USB3 Kabelake SSE SKnet OBS NVEnc ZP3 GPU使用率 ゲームスムーズモード REGZA 額縁遅延 倍速駆動 液晶テレビ 32ZP32 MonsterXU3.0R 音遅延 HDCP HDMI QSV 電源オプション Haswell LameACM MP3 モノステ 

ブログ内検索
月別アーカイブ
アマレココに関するリンク
お世話になっているソフトのリンク
RSSリンクの表示
管理画面
  • 管理画面