Video(以下QSV)はエンコード処理のほとんどを専用のハードウエアで処理するため、録画中のCPU使用率を大幅に軽減することができます。AMV4ビデオコーデックも極まった処理速度によりCPUの負荷を大幅に軽減できますので、どちらがよりCPU負荷が低いのか実際に録画中の様子を観察して比較してみました。QSVと同様にCPU負荷を軽減できるNVIDIAのNVEncについてもテストしています。1.テスト概要できるだけ同じ条件で観察したいので一つのキャプチャソフトでQSVとAMV4の両方が使えるものを探しましたが、見つかりませんでした。Software)とキャプチャカードに付属するVideoKeeper2を使い、AMV4はアマレコTVを使うことにします。画像サイズやフレームレートを揃え、ドロップフレームが生じない条件でテストしましたが、やはりキャプチャソフトによる違いが無いとは言い切れないためその点はご容赦ください。各キャプチャソフト(配信ソフト)にて録画を行い、その時のタスクマネージャのグラフ(CPU使用率)を観察します。4のキャンペーンモードのオープニングシーン(※)を録画します。下図はOBSを使ってソフトウエア・エンコーダのx264にてローカル録画した時のグラフになります。グラフの下部にある5枚の画像はキャプチャ中のおおよその映像を示しています。グラフのこの地点ではこんな感じの映像を処理していると思ってください。グラフの左端はプレビューも、録画も行っていないため、ほぼCPU使用率が0%となっています。そこから録画を開始し画像1の付近では、真っ黒な画面に小さい文字でゲーム制作会社などのテロップが表示されるシーンとなります。このシーンは単調(1枚の画像として見たとき複雑でない、べた塗りやグラデーションの面積が広いなど)かつ動きが全く無い映像なためかCPU使用率は20%強と低めです。グラフの中盤(画像2、3付近)は普通に動きのあるシーンとなり、CPU使用率は約55%と跳ね上がります。グラフの後半(画像4、5付近)はオープニングが終わり、プレイ中となりますが、操作を行っていないためほとんど動きのない映像が続きます。動きがほとんどない映像ではCPU使用率も30%強と低めになるようです。このようなテストを、エンコーダを変えて行います。CPUは4コア、8スレッド、HTT対応、AVX2対応。BoostはBIOSで無効化、動作クロックがテスト中に変動しないようにしています。詳細設定は長くなるので「続きを読む」に記載します。ここでは特に重要と思われる内容のみ記載します。3.1.OBSQSVおよびNVEncにてローカル録画するように設定します。ビットレートは8Mbpsとしました。デスクトップの音とキャプチャカードの音がミキシングされます。3.2.VideoKeeper2QSVを使って録画するように設定します。ビットレートは20Mbps。オーディオミキサーの処理はありません。3.3.アマレコTVAMV4ビデオコーデックをDY3(YUY2高圧縮可逆)に設定しSSE4版とAVX2版のそれぞれで録画します。ビットレートの設定はありませんが出来上がった動画ファイルから逆算すると約320Mbpsとなります(今回のテスト条件では秒間約40MByteなのでHDD単体でもドロップなく録画可能)。128kbpsを使います。オーディオミキサーの処理はありません。各エンコーダで録画した際のタスクマネージャのグラフに色を付けて合成したのが下図になります。グラフの前半部は録画していない状態(プレビュー処理のみ)のCPU使用率です。OBSの前半は停止状態(プレビューもしていない)です。プレビュー中はPCを操作しているためグラフが少し乱れていますが、アマレコTV、VideoKeeper2ともにCPU使用率は約4%から5%です。グラフの後半は録画中のCPU使用率となります。録画中はPCを一切操作していないためグラフが安定しています。いずれのエンコーダも映像の内容によるCPU使用率の変動がほとんど生じていないこともわかります。録画中のCPU使用率は全体的に6%から10%の間にひしめき合っていて僅差となりますが、最もCPU使用率を抑えられたのはアマレコTVとAMV4(AVX2版)の組み合わせとなりました。二番手はVideoKeeper2のQSVとなります。同じQSVを使ったOBSよりCPU使用率が少ないことがわかります。AMV4のSSE4版は処理が遅い分CPU使用率も少し高くなります。OBSは他と比べるとCPU負荷が若干高めという結果になりました。純粋な録画とプレビュー処理のほかに、何かしら処理を行っていると推測されます(少なくともオーディオミキサーの処理が行われています)。OBSのQSVとNVEncを比較するとNVEncの方がCPU負荷を抑えられています。最後に録画したビデオファイルの画質を比較します。下図は録画したビデオファイルをAviUtlで読み込んだ画像です。ゲーム側の都合によりプレイする度に完全に同じ映像がレンダリングされるわけではないようなので、類似するフレームを抜き出しての比較となります。AMV4はYUY2の可逆なのでオリジナルの画質に忠実です。VideoKeeper2はビットレートが高い分、OBSより若干画質はよくなっています。OBSの3つはこの例ではほとんど差が無いように感じますが、一般的にはx264、QSV、NVEncの順に画質が良いと言われています。OBSの3つの色味が他と違っていますが原因は不明です。0あまラボへようこそこのブログでは自作ソフトの最新情報やtips、PC動画に関する話題を掲載していきます。各記事へは下にあるカテゴリからアクセスして下さい。