スーパーアマレココ 不具合と雑記

無事公開までこぎつけたスーパーアマレココですが窓の杜に紹介記事が掲載されたこともあり、たくさんのコメントがツイッターに寄せられていて嬉しい限りです。不具合などのコメントもありましたので一部記載します。


■不具合
ツイッターで不具合を書いてくれている人がいたので確認したところ、
マルチモニター環境で、録画対象のモニター以外のモニター上で
モノクロのマウスカーソル(メモ帳などのカーソル)を動かすと映像に黒帯が入ってしまう。

ある程度不具合報告が溜まったら修正します。
それまでは、マルチモニターの場合は気を付けて使うか、ビデオ設定の「マウスカーソルを録画する」をOFFに
してください。


■スーパーアマレコTVではありません
今回はアマレココのスーパー版ですが、今回の内容はアマレコTV4へフィードバックしていきますので
アマレコTVが良いんだって方は今後のアマレコTV4をお待ちください。

・スーパーアマレココはデスクトップキャプチャに特化した、初心者向けのアプリ。
・アマレコTV4はデスクトップキャプチャ機能やオーディオミキサーを含む、多機能な上級者向けのアプリとしていきます。


■「スーパー」って・・・
1月にアマレコTV4の紹介の中で「スーパーアマレココ」とネタっぽく書きましたが、
その時点でアマレコTV4と比べ半分くらいまでCPU負荷を軽減できるかもしれない手応えがありました。
アマレコTV4のデスクトップキャプチャ機能自体、優秀な部類に入ることを自負していたので、
そこからさらに半減となればこれはもうスーパーと言いたくなります。
で、実際はCPU負荷に加えてGPU負荷まで軽減できたことからネタではなく「スーパーアマレココ」を名乗ることにしました。


アマレココ4 その12 スーパーアマレココ 公開

ホームページでスーパーアマレココ 正式版 Ver4.11 を公開しました。

1.スーパーアマレココ Ver4.11 特徴
1) デスクトップを録画することに特化 簡易性を追求
2) 簡単でありながら 極まったパフォーマンスを達成
3) Desktop Duplication APIによる安定したデスクトップキャプチャ処理
4) Windows8.1 / Windows10 64bit 専用


■簡易性
デスクトップの録画に特化したスーパーアマレココは初心者向け、
オーディオミキサーなど多機能なアマレコTVは上級者向けと言った位置づけになります。
オンラインヘルプ:アマレコ シリーズ一覧

■パフォーマンス
Desktop Duplication APIによるデスクトップキャプチャ処理とAMV4ビデオコーデックによる
エンコード処理により録画中のGPU負荷とCPU負荷の両方を極めて低く抑えます。
そのため、ウインドウモードで実行しているPCゲームの動作をほとんど妨げることなく録画できます。
ブログ記事:アマレココ4 その11 vs ShadowPlay

■安定性
Desktop Duplication APIはOSにより完全にサポートされた機能ですので、
安定したデスクトップキャプチャ機能を提供します。
また、フレームの取りこぼしを極めて低く抑えることができます。
数分程度ならHDMI出力の映像をビデオキャプチャしたものとスーパーアマレココの録画が完全に一致します。
ブログ記事:アマレココ4 その6 ストIV ベンチによるキャプチャテスト



2.スーパーアマレココ Ver4.10 ベータ版からの変更点
1) 設定画面が画面の外に出て操作出来なくなるのを修正。
2) 録画範囲が対象となるウインドウと上手く重なっていないとカクカクした動画になってしまうのを修正。
横長のゲーム画面と縦長の録画範囲だった場合に、十字のような位置関係だと
録画範囲が重なっていないと判定してしまって上手くキャプチャできませんでした。
  +-----+
  |     |
+---------+
|         |
|   GAME  |
|         |
+---------+
  | REC |
  +-----+


3.ダウンロード
ホームページでダウンロードしてください。


アマレココ4 その11 vs ShadowPlay

キャプチャソフトのなかで現状最も性能が良いと思われるShadowPlay(現在はシェア機能となっていますが、ここではShadowPlayと表記します)とスーパー アマレココ(以下アマレココ)をFF14ベンチを使って比較しました。

ff14benchi.jpg

1.ShadowPlay
ShadowPlayを使うためのGeForce Experience。シェアの項目をONにすると録画関連の機能を使えるようになります。
ShadowPlayのテストをするときはシェア機能をON、アマレココのテストをするときはシェア機能をOFFとしています。
sp_experience.jpg


デスクトップ全体を録画する場合はシェア機能の基本設定のプライバシー管理で「はい」を選択します。
この記事ではこれを「ShadowPlayデスクトップキャプチャ」と表記します。
また、「いいえ」とした場合はゲーム画面だけを録画でき、この記事では「ShadowPlayゲームキャプチャ」と表記します。
sp_privacy2.jpg   


録画設定で解像度とフレームレート、ビットレートを設定できます。フレームレートを60FPSとしても、モニターのリフレッシュレートが59.94Hzであれば59.94FPSの動画ファイルとなるようです。
sp_custom.jpg


59.94HzのモニターでShadowPlayを使って録画したビデオファイルをAviUtl + L-SMASH Works File Readerで読み込んだ際のプロパティ。
今回のテストは59.94Hzのモニターなのでこれでちゃんと録画できていると思います。
sp_59fps.jpg


今回のテストではインスタントリプレイを無効にし、ShadowPlayの録画は全てホットキーによる手動操作で行っています。
sp_replay.jpg 


2.テスト方法、テスト環境
デスクトップ(1920x1080)にFF14ベンチをウインドウモード、HDサイズ(1280x720)、DirectX11、高品質(ノートPC)で実行して録画していない場合と、各キャプチャソフトで録画した場合のベンチマークスコアで評価します。
録画はデスクトップ全体(1920x720 59.94fps)とゲーム画面だけ(1280x720 59.94fps)の2種類で行います。

また、今回のベンチマークスコアには最大で5%程度の開きが観られたため、複数回テストを行い平均値で評価します。
同様のテストをされる場合は一発テストだとたまたま高いスコアだったり、たまたま低いスコアとなった場合、今回のように微差だと優劣が変わってきてしまう可能性があるので注意した方が良いかもしれません。

テスト環境
OS Windows8.1 x64 Professional
CPU Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz Haswell
MB ASRock H87 Performance (Intel H87)
Memory DDR3 1600 16GB(8GBx2 Dual Cannel)
Video NVIDIA GeForce GTX 1080 8GB
 NVIDIA GeForce GTX 650 1GB
Monitor 1920x1080 94.94 HDMI
録画HDD WD30EZRX 3TB
Software AmaRecCo Ver4.10 ベータ2
 ShadowPlay GeForce Experience Ver3.1.0.52  Driver 375.63
 ファイナルファンタジーXIV: 蒼天のイシュガルド ベンチマーク
 くるくるベンチDX11 Ver1.00
備考 CPUは4コア、8スレッド、HTT対応、AVX2対応。動作クロックを3.4GHz(定格)で固定し、省電力設定およびTurbo BoostはBIOSで無効化、動作クロックがテスト中に変動しないようにしています。



3.テスト結果

 録画
画像サイズ
ベンチスコア
(平均値)
スコア低下率
 録画なし-18612-0.0%
 ShadowPlay デスクトップキャプチャ1920x1080 59.94fps17925-3.6%
 ShadowPlay ゲームキャプチャ1280x720 59.94fps17589-5.4%
 アマレココ デスクトップ全体1920x1080 59.94fps17744-4.6%
 アマレココ ゲームウインドウを範囲指定1280x720 59.94fps17953-3.5%


 

ベンチマークスコア 内訳
 スクリーンショット1回目2回目3回目4回目5回目平均値
 録画なし gtx1080_norec.jpg18737185341871318467-18612
 ShadowPlay
  デスクトップキャプチャ
 
gtx1080_sp_FHD.jpg1768218169(17194)--17925
 ShadowPlay
 ゲームキャプチャ
gtx1080_sp_HD.jpg175811744318030174381745517589
 アマレココ
 デスクトップ全体
gtx1080_amarec_FHD.jpg17791177291764917808-17744
 アマレココ
 ゲームウインドウを範囲指定
gtx1080_amarec_HD.jpg179521820717484178071831717953

※ ShadowPlayのデスクトップキャプチャの3回目で17194を記録しましたが、明らかに低い数値なので平均値の算出から除外しました。これを平均値に加味するとアマレココより平均スコアが悪くなってしまいます。



デスクトップ全体(1920x1080)を録画する場合はShadowPlayが有利。
ゲーム画面だけ(1280x720)を録画する場合は意外にもアマレココが有利な結果となりました。
これは、アマレココは画像サイズに比例してスコアが上下するのに対し、ShadowPlayの場合はキャプチャ方式(プライバシー管理の「はい」、「いいえ」)によりスコアが変わってくるようで、デスクトップ全体を録画するよりゲーム画面だけを録画する方がスコアが低下しています。
これにより、基本的にはShadowPlayの方が有利(※)ですが、デスクトップ上のゲーム画面だけを録画するような使い方だと逆転しています。

推測になりますが、アマレココ、およびShadowPlayのデスクトップキャプチャモードはDWM(Desktop Window Manager)がレンダリングする秒間60フレームだけを処理するのに対し、ShadowPlayのゲームキャプチャモードはゲームプログラムが秒間100フレームレンダリングしたら100フレーム、ゲーム側が200フレームレンダリングしたら200フレーム分 ShadowPlayが何かしらのGPU処理を行っていて、その分スコアが低下しているのではないかと思われます。
(ShadowPlayのゲームキャプチャモードはゲーム側のFPSが高くなるとスコア面で不利になってくるかもしれない)。

※ ShadowPlayのデスクトップキャプチャに録画範囲を指定する機能があればアマレココより有利にゲーム画面だけを録画できるはずです。


4.GPUの性能が低い場合(GTX650)について
GPUの性能が低いとFF14ベンチを実行しただけでGPUクロックが最大になりGPU使用率も99%となるため、スコアは、ほぼキャプチャソフトのGPU使用率で決まってきます。

ビデオコーデックなどCPUでどんなに重たい処理をしたとしても、GPUをできるだけ使わないように設計されたキャプチャソフトが有利で、逆に、ShadowPlayの様にCPUでほとんど処理をせず、GPUで大半の処理を行うタイプはあからさまに不利となるようです。

GTX650でくるくるベンチを録画した場合のGPU使用率
 GPUクロックGPU使用率スクリーンショット
 ShadowPlay デスクトップキャプチャ1058 MHz24%gtx650 krkr sp rec
 アマレココ デスクトップ全体540 MHz35%gtx650 krkr amarec rec


ベンチマークスコア
 録画
画像サイズ
ベンチ
スコア
スコア
低下率
スクリーンショット
 録画無し-6311-0.0%gtx650_norec.jpg
 ShadowPlay デスクトップキャプチャ1920x1080 59.94fps5135-18.6%gtx650_sp_FHD.jpg
 アマレココ デスクトップ全体1920x1080 59.94fps5955-5.6%gtx650_amarec_FHD.jpg

GTX650だとShadowPlayの性能面での優位性は見て取れませんでした。
アマレココというより、有名どころのキャプチャソフトであればShadowPlayより明らかに高いスコアとなるのではないでしょうか。



5.まとめ
・ShadowPlayのデスクトップキャプチャモードのスコアは同条件(同じ画像サイズ)であればアマレココより有利。
・ShadowPlayのゲームキャプチャモードはゲームのfpsが60fpsより高くなると、スコア面でアマレココより不利になる可能性がある。
・アマレココのスコアは録画範囲(画像サイズ)に比例する。画像サイズが小さくなるとShadowPlayでデスクトップ全体を録画したり、ShadowPlayのゲームキャプチャモードで録画するよりアマレココのほうが有利。
・GPUの性能が悪く(例GTX650)ゲーム処理のボトルネックがGPUとなる場合、ShadowPlayの性能面での優位性は皆無となる。
・GPUの性能が悪い場合は、アマレココに限らず大抵のキャプチャソフトがShadowPlayより良いスコアになると思われる。



アマレココ4 その10 スーパー ベータ2 公開

GPU処理の最適化を行ったベータ版です。GeForce GTX650 で約5%、GeForce GTX1080 で約1% ゲームのベンチマークスコアが向上します。また、正式名称を「スーパー アマレココ」とすることにしました。

1.主な変更点
1) GPU処理を最適化
2) 正式名称を「スーパー アマレココ」に変更
3) 録画詳細設定のダミーピクセルに「自動」を追加、デフォルト設定を「自動」に変更
4) スクリーンショットを撮った際にエラー落ちするかもしれないのを修正
5) スクリーンショットのホットキーを押しっぱなしにしたときにつく連番を修正
6) 録画詳細設定のテクスチャ数の設定を廃止

テクスチャ数の設定は私のカン違いでした。ビデオメモリをシステムメモリへ転送するテクスチャがビデオメモリとシステムメモリの
両方を消費すると思っていましたが、ビデオメモリは使わずに、システムメモリだけのようなのでビデオメモリを節約する効果はありません。設定を廃止し、転送用のテクスチャ数は6に固定しました。

ダミーピクセルを「自動」とすると、状況に合わせて自動的にダミーピクセルをONにしたり、OFFにします(録画中にON/OFFが切り替わります)。
多くのケースで「常にON」よりベンチマークのスコアが伸び、かつ、多くのケースで「常にOFF」よりフレームの取りこぼしを軽減します。
逆にいうと、「常にON」よりフレームを取りこぼす可能性があり、「常にOFF」よりスコアが低下する可能性があります。


2.ダウンロード
・スーパー アマレココ Ver4.10 ベータ版


不具合などありましたら、この記事のコメント欄に書き込んでいただけると助かります。
特に問題がなければ、このバージョンを正式版として来週ホームページで公開する予定です。


アマレココ4 その9 GPU処理の最適化

アマレココ4の優位性はAMV4ビデオコーデックをはじめとしたCPU処理(※)にあります。
しかし、前回の記事で紹介したように「GPUの性能が低く、CPUの性能が高いPC」の場合はゲームのベンチマークスコアの面でアマレココ4の優位性が全く得られず、スコアが伸びません。(タスクマネージャでCPU使用率を見ればアマレココ4の優位性ははっきりわかるけど、それがゲームのベンチマークスコアに全く反映されない)
そこで、GPU処理についても最適化を行うことにしました。

※ アマレコTV4とアマレココ4を比較した場合のアマレココ4の優位性はRGB・YUV変換やプレビュー処理をGPUで処理することにあります。これによりCPU使用率を大幅に下げることができています。


今回はGTX650 + Haswell i7(4770)にてFHD 60fpsで録画した際のGPU負荷について簡単にテストし、GPU処理の最適化によりどの程度の効果が得られるか見ます。


1.テスト方法
FHD(1920x1080)のデスクトップにくるくるベンチをHD(1280x720)で表示して、
・キャプチャソフト起動前
・キャプチャソフトを起動してプレビューしている状態(非録画)
・デスクトップ全体を録画(1920x1080 60fps)している状態(プレビューなし)
の3つの状態をモニターソフトで観察します。

なお、ベータ1は 公開中のアマレココ4 Ver4.00。
ベータ2は 開発中のバージョンとなります。


2.結果

 CPU使用率GPUクロック GPU使用率ビデオメモリスクショ
起動前1 %324 MHz24 %132 MBkidoumae_20161102202452c0c.jpg
ベータ1:プレビュー2 %540 MHz34 %199 MBb1_preview.jpg
ベータ1:録画中5 %540 MHz45 %203 MBb1_rec.jpg
ベータ2:プレビュー2 %324 MHz48 %173 MBb2_preview.jpg
ベータ2:録画中5 %540 MHz34 %178 MBb1_rec.jpg


CPUの使用率はプレビュー、録画中ともに変わっていないことがわかります。

プレビュー中は、ベータ1はGPUクロックが高く、GPU使用率が低い結果となりました。
ベータ2では逆にGPUクロックが低く、GPU使用率が高い結果となっています。
クロックが一致しないので最適化の効果があるのかどうか何とも言えません。
一応、クロックと使用率を掛けた値ではベータ2の方が低いので、最適化の効果が得られているのかなと思います。

録画中はGPUの動作クロックがともに540 MHzとなり、GPU使用率が45%から34%に下がっているので、最適化の効果がはっきりわかります。


なお、GTX1080で同様のテストを行いましたがGPUクロックがそろわず、明確な差は見て取れませんでした。
クロックと使用率を掛けた値でもほとんど同じ値でしたので、GTX1080レベルになると微差なのかもしれません。




3.ノートPCでは・・・
amarecco4beta2_notepc.jpg

こちらはノートPCで同様のテストをした時の様子です(GPUに関するモニターはありません)。
タスクマネージャのグラフの左半分がベータ1で録画していた部分、右半分がベータ2で録画しているところです。

CPU処理に関してはほとんど変更を行っていないので変化が無いはずです(先のテストでもCPUの使用率に違いは見て取れない)。
しかし、このノートPCでは録画中のCPU使用率が約48%から約38%へと大幅に低下しています。
憶測になりますが、ビデオカードを搭載していない(専用のビデオメモリを持たずシステムメモリの一部をビデオメモリとして使う)PCではGPU処理の一部をCPUが肩代わりしていると言ったところでしょうか。
GPU処理の最適化によりそういった部分がそぎ落とされたのでCPU使用率が下がったものと思われます。
ただし、同じオンボードグラフィックでもIvy BridgeのデスクトップPCではCPU使用率に差が見て取れなかったので、何がこういった差になるのか本当のところは不明です。


4.ゲームのベンチマークスコアで言うと
ベータ1と比べてベータ2はGTX650で5%程度のスコア向上、GTX1080で1%程度のスコア向上が見込めるかなと思います。


アマレココ4 ベータ2はもう少しテストして今週末ブログで公開予定です。


アマレココ4 その8 一般公開延期と課題

今週末にオンラインヘルプを作って一般公開する予定でしたが、もう少し頑張ろうと思う部分が出てきたので2週間程延期することにしました。それまではベータ版をお試し頂ければと思います。また、不具合などありましたらご報告いただけると助かります。

今のところ不具合も見つかっていないですし、不具合報告もゼロなので、このままベータ版を正式版として一般公開するつもりでいました。
ところが、ファイナルファンタジー14(FF14ベンチ)やストリートファイター4(SF4ベンチ)などのベンチマークソフトを使って他のキャプチャソフトと比較していたところ、アマレココ4が1番(ShadowPlayを除く)と言える条件がある一方で、トップスコアのキャプチャソフトから10%程度離されてしまう条件もありました。
そこで、全ての環境で一番は無理にしても、不利な条件でも僅差と言えるレベルまで持っていけないか延長戦に突入します。


以下、テストで見えてきたことを紹介します

■ビデオカード(GPU)の性能が上がるほどアマレココ4のスコアは他のキャプチャソフトに比べ優位になる
おそらくGeForce GTX1070とか1080までいくと、ほぼアマレココ4はトップ(ShadowPlayを除く)かトップクラスのスコアになると思います。
逆にGPUの性能が低くなるとCPUの性能とのバランスでアマレココ4の優位性が変わってきます。
GPUの性能が悪く、且つ、CPUの性能も悪ければ、はやりアマレココ4が優位となりますが、GPUは悪いけど、CPUの性能は良いといった場合(例 GeForce GTX650 + Haswell i7-4770)は、かなり悪いスコアとなる場合がありました。

GPU性能CPU性能アマレココ4の優位性
良い良いちょっとでもCPU処理がスコアに反映される条件ならアマレココ4が優位
良い悪いCPU処理が如実にスコアに反映されるためアマレココ4が圧倒的に有利
悪い悪いちょっとでもCPU処理がスコアに反映される条件ならアマレココ4が優位
悪い良いCPU処理がスコアに反映されなくなるとアマレココ4(AMV4)のスコア面の優位性は皆無


■アマレココ4はFF14ベンチが苦手でSF4ベンチは得意
GPUの性能が良ければどちらもいい結果が出るのですが、先のようにGPUの性能が悪くCPUが良い場合は、FF14ベンチのスコアが他のキャプチャソフトと比べとても悪くなりました。
推測になりますが、ゲーム側の処理が60fpsを維持できなくなると、アマレココ4のスコアが悪くなる印象です。
なお、SF4ベンチの方はこの条件でもゲーム側の処理が60fpsを維持できており、アマレココ4はトップレベルのスコアとなります。

■GPUの性能が悪く、CPUの性能が良い場合のコーデックについて
GeForce GTX650 + Haswell i7-4770のような環境ではコーデックに処理の早いAMV4を使おうが、滅茶苦茶処理の遅いx264を使おうが、FF14ベンチ、SF4ベンチ共にベンチマークのスコアという形で差異は見て取れませんでした。
それぐらいゲーム側の処理がGPUに依存しておりCPUによる処理は完全に無関係な状態でのテストと言えます。
ですので、この条件でアマレココ4やAMV4を使ってもスコア面の優位性はありません。

■DirectXキャプチャとDpuplication API
SF4ベンチではDirectX系のキャプチャソフトが例外なく苦戦しているように見えました(SF4ベンチではDuplication API系が総じて有利と思われます)。
逆にDirectX系のキャプチャソフトがそろって上位を占めたのがGPUの性能が悪くCPUの性能が良い場合のFF14ベンチでした。
同じFF14ベンチでもGPUの性能が良い場合はキャプチャ方式の違いによる傾向は見て取れませんでした。おそらくCPUで処理する分部(主にコーデックの処理)で優劣が決まるものと思われます。

■キャプチャ時のカラーフォーマットによる違い
細かい差異になりますが、ビデオメモリからシステムメモリへ画像を転送する際のカラーフォーマットもベンチマークスコアにかかわってきます。

・RGB 32bit (1920x1080 60fps : 1秒あたり 約474MB )
・RGB 24bit (1920x1080 60fps : 1秒あたり 約355MB )
・YUV 16bit (1920x1080 60fps : 1秒あたり 約237MB )
・YUV 12bit (1920x1080 60fps : 1秒あたり 約177MB )

おもに、この4種類があり、1秒当たりの転送量が少ない方がベンチマークのスコア的に有利となり、多くのキャプチャソフトがYUV 12bitを採用しているようです。動画は最終的にYUV 12bit相当のフォーマットとなりますので妥当な選択です。
しかし、アマレココ4はRGB 32bitまたはYUV 16bitなのでこの点でやや不利となってしまいます。
GPUの性能が悪く、CPUの性能が良い環境ではこの差が絶対に超えられない差となりアマレココ4は僅差ですがどう足掻いてもトップに立てません。

なお、ShadowPlayにおいては圧縮したデータを転送するので、この点において、ShadowPlayと他のキャプチャソフトの間には超えられない壁があると思います。
例えば80Mbpsで録画するように設定した場合の理論上の転送量は10MBとなりますので、他のキャプチャソフトの10分の1以下です。
これに加えCPUを使ってエンコード処理をしなくていいのですから、ベンチマークのスコアで評価する限りShadowPlayを超えるキャプチャソフトというのはあり得ないのではないでしょうか。

■BandicamでNVENCを使うとベンチマークのスコアが低下する場合がある
ゲームをキャプチャする場合はBandicam内臓のMotion JPEGやQSVを使った方がスコア面では有利と思います。
下記の記事でBandicamのスコアが低いのもNVENCを使ってテストしているからではないでしょうか。

ゲームpcバンク「おすすめ!無料のゲーム録画ソフトで軽いのはどれか比較



アマレココ4 その7 ベータ版公開

お待たせいたしました、アマレココ4のベータ版を公開します。
オンラインヘルプはまだなので、少々のことは自力でやりくりできる方が対象となります。

amarecco4_2016102122065250d.png

1.主な仕様
・対応OSはWindows8.1 / Windows10(※) 64bit版専用となります。
・32bit版のOSでは実行できません。
・Windows7以下はDesktop Duplication APIが非対応なので使えません。
・SSE4.1に対応したCPUが必須となります。
・DirectX11に対応したGPUが必須となります。
・シェアウエア(有料)のAMV4ビデオコーデックが必要です。
・AMV4ビデオコーデックのライセンス登録が済んでいない場合は録画時にAMV4のロゴが入ります。


※ Windows10で私は使えていますが、最終的に使えるかどうかはあなた次第です。アマレココ4が原因でうまく動作しないケースは今のところありません。

これはアマレコTV4にも言えることですが、Windows10でアマレコTV4が使えないという人も居るようなので、やはり使えるかどうかはあなた次第です。アマレコTV4がWindows10に対応していないから使えないという認識だと一生使えないかもしれませんよ。

また、Windows10でAVIファイルを再生していると途中でエラーになる人は、Windows10のアップデートをちゃんとやって最新の状態にすれば改善されるかもしれません。
私のところではWindows10でAVIファイルの再生(3時間程度のAVIファイルの再生)も問題なくできるようになりました。
(以前はこの記事「Windows10のWMPでAVIファイルが再生できない」のようにWindows10でAVIファイルを再生していると数分でエラーが出ました。)


2.簡単な使い方
メイン画面
設定画面
起動オプションそのた



3.ダウンロード
アマレココ4 Ver4.00 ベータ版

アマレココ4 その10 スーパー ベータ2 公開

不具合などありましたら、この記事のコメント欄に書き込んでいただけると助かります。


アマレココ4 その6 ストIV ベンチによるキャプチャテスト

>1.テスト方法
カプコンのストリートファイターIV ベンチマークを使ってアマレココ4の性能をテストします。
くるくるベンチと異なりCPU負荷だけでなくゲームプログラムへ与える影響も分かります。

ストIVベンチを1600x900のウインドウモードで実行し、録画していない場合と、アマレココ4+AMV4(YUV:DY3)でデスクトップ全体(1920x1080)を59.94fpsで録画した場合を比較します。

ストIVベンチの設定
st4setting.png


2.PCスペック
PCスペック
OS Windows8.1 x64 Professional
CPU Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz Haswell
MB ASRock H87 Performance (Intel H87)
Memory DDR3 1600 16GB(8GBx2 Dual Cannel)
VGA NVIDIA GeForce GTX 650 1GB
録画HDD WD30EZRX 3TB
Software  AmaRecCo4 開発版
 くるくるベンチDX11 Ver1.00
備考 CPUは4コア、8スレッド、HTT対応、AVX2対応。動作クロックを3.4GHz(定格)で固定し、省電力設定およびTurbo BoostはBIOSで無効化、動作クロックがテスト中に変動しないようにしています。




3.結果

 録画CPU負荷ベンチスコア
録画なし約 10 ~ 14 %
 cpu_norec.jpg
92.37 fps
norec.png
アマレココ4
AMV4
(YUV:DY3)
1920x1080
59.94fps
約 14 ~ 17 %
cpu_amarecco4.jpg
79.64 fps
rec_amarecco4.png
 


平均FPSが約13フレーム低下となりました。
また、録画中のCPU負荷は一概に言えませんが約3 ~ 4%程度増えています。

続いて、フレームの取りこぼしについても検証してみました。


4.フレーム取りこぼし検証方法

PC1でストIVベンチを実行してアマレココ4でデスクトップ全体を録画。
そのPC1のモニター出力(ビデオカードのHDMI出力)をPC2でビデオキャプチャカード(キャプチャボード)を使って録画。
PC1のアマレココ4で録画したビデオファイルとPC2のビデオキャプチャカードで録画したビデオファイルを比較して検証。
010cmp.png

アマレココ4およびビデオキャプチャカードの双方に取りこぼしがなければ理屈の上では同じフレームが映っているので両映像を引き算したとき、ほぼ真っ黒な映像となるはずです。


5.検証動画の編集
まずAviUtlでPC2のビデオキャプチャカードで録画したファイルを読み込みます。
100aviutl_load.png


次に、PC1のアマレココ4で録画したファイルを拡張編集のLayer1へ読み込みます。
110load_amarecco.png


Y座標を一時的に下にずらして2つの映像を見えるようにします。
120move_down.png


拡張編集の操作で似たシーンになるまで動画の再生位置を(大雑把に)調整します。
130move_time.png


拡張編集の動画ファイルの画面から1フレーム単位の微調整をおこない、完全に同じフレームになるようにします。
シーンチェンジや一瞬光るエフェクトを目印に合わせるといいと思います。
140move_fit.png


最後にY座標をゼロに戻し、合成モードから「減算」を選択して完了です。
150cmp.png


2つの動画の内容がほぼ一致する場合、引き算した値もほぼゼロとなるため真っ黒な映像となります。
取りこぼしなどフレーム単位で映像に食い違いが生じると下図のように異なる部分が一瞬見えます。
160drop.png 


6.検証動画
アマレココ4のフレーム取りこぼしテスト(YouTube)



終始真っ黒となるためこの録画テストの間、アマレココ4とビデオキャプチャカードによる取りこぼしは双方とも無かったと言えます。
ちなみに取りこぼしがある場合は次のようになります。
取りこぼしがある場合の例(YouTube)


■注意事項
ビデオ信号とビデオキャプチャカードの仕様が適合している必要があります。
例えばビデオ信号(モニター出力のリフレッシュレート)が60Hzでキャプチャカードが59.94fpsだと調整が入り一致しなくなります。

ビデオキャプチャカードのビデオキャプチャソフトにアマレコTV4を使い映像のドロップがないことを確認すること。
ステータス欄で(+)や(-)のドロップがカウントされている場合は当然その部分で一致しなくなります。
録画が終わった後ドロップがゼロであることを確認してください。
同様にアマレココ4もドロップステータスを表示してゼロであることが前提となります。
長時間録画すると必ず(+)(-)の調整が入りますのでこの検証ができるはせいぜい数分です。

DirectXタイプのキャプチャソフトの場合は取りこぼしが無くても一致しない可能性があります。
これは、1秒間にモニターに出力する画像枚数と、ゲーム内でレンダリングされる画像枚数に食い違いがあるためです。
例えばゲームのFPSが70fpsで録画FPSが60の場合、70枚の画像を60枚に間引くことになりますが、その間引き方が画面表示と異なる場合があるためです。
Duplication APIの場合はゲームが70fpsでも得られる画像は60枚なので画面表示と一致するようです。

ゲーム側の処理がモニターのリフレッシュレートを下回る場合は一致しない可能性が高いです。
例えばゲームのFPSが50fpsで録画FPSが60fpsの場合、50枚の画像を60枚に水増ししますが、その水増しの仕方が画面表示とキャプチャソフトの処理で異なるためです。
Duplication APIの場合も得られる画像は50枚なので一致しない可能性が高いです。



何事もなければ明日ブログにてアマレココ4 ベータ版を先行公開します。
正式版の公開はホームページで来週を予定しています。



アマレココ4 その5 使い方(起動オプションそのた)

1.録画範囲(取り込み枠)
region.png

・ウインドウキャプチャはありません。すべてデスクトップキャプチャとなります。
・ルーペ機能は廃止しました。
・録画フレームレートやマウスカーソルの設定は設定画面で行います。取り込み枠は録画範囲に関する設定のみとなります。
・同梱の CaptureSize.ini をメモ帳で編集すれば任意のキャプチャサイズをリストへ登録できます。


2.起動オプション
-rec
アマレココ4が起動してすぐに録画を開始します。また、録画を停止するとアマレココ4は終了します。

録画していないときにアマレココ4によるCPU(GPU)負荷を完全にゼロとしたい場合に次のように使います。
・デスクトップにアマレココ4のショートカットを作って、そのショートカットにOSのホットキーを割り当てる。
・ショートカットのオプションに -rec を付ける。
・ゲーム中など録画したい場面になったらショートカットのホットキーでアマレココ4を起動(と同時に録画が開始されます)。
・録画停止はアマレココ4のホットキー(デフォルトだと Alt+X )で操作します。その後アマレココ4は自動的に終了します。
※ このオプションが指定されている場合は設定画面の内容など殆どの項目で設定値が保存されません(設定の変更はできますが、次回起動時、元に戻る)。

-safe
各デバイスへアクセスする前に設定画面を表示します。
同梱の AmaRecCo4 safe.bat を実行してもセーフモードで起動します。
明らかに使えない項目を選択してしまい、起動と同時にエラー落ちするような場合に使います。
原因の特定が出来ず、改善されない場合は AmaRecCo4.ini を削除して、設定を初期化してください。


3.録音について
録音する場合のサンプリングレートは録音デバイスの設定値(OS側の設定)になります。
チャンネル数が2chを超える場合は2chへダウンミックスして録音します。
ビット深度は16bitのみ対応します。
例 スピーカーの音を録音する場合、スピーカーが96kHzならアマレココ4で作られる動画ファイルも96kHzになります。


4.録画エンジンについて
アマレコTV4の録画エンジンを採用していますので、以下の特徴がそのまま適用されます。また、音ズレ対策についてはアマレココ4に合わせたタイムベースの処理に変更しています。
アマレコTV4ではキャプチャカードから送られてくるタイムスタンプが狂っているのでタイムベースでの処理を採用できませんでしたが、アマレココ4では画像と音声を取得した時刻を完全に把握できるので、音ズレ処理をシンプルにすることができました。
基本的に時刻が正確であれば音ズレすることはありません。起こるとすれば動画の最初から最後まで一定のズレとなります。
これは録音設定の遅延で調整してください。

・書込みエラーの根絶(アマレココで起こっていたか不明だけど)
・録画処理を正常に終了できなかった場合でも再生できる(修復不要)
・ファイルサイズの上限を撤廃
・2kBを超えるセクタサイズへ対応
・無欠損分割 ファイルサイズを指定して分割して録画、AviUtlなどを使ってつなぎ目のない一つの動画に仕上げることが可能
・AviUtl+x264guiなどで再エンコードする際の音声処理に対する高速エンコード支援
・新音ズレ対策 タイムベースの音ズレ処理に変更

アマレコTV 4 新録画エンジン 
アマレコTV 4 再エンコード支援の効果
 


5.そのほか
・RGB・YUV変換はBT.601、リミテッドレンジ、色のサンプリングは左側の画素となります。
・マルチモニターの場合は録画範囲の中心点が属するモニターの映像のみが録画されます。


アマレココ4 その4 使い方(設定画面)

1.設定画面
config_20161016225242614.png

録画およびスクリーンショットに関する設定です。
プレビューを表示するかどうかやプログラムの優先順位などはメイン画面のメニューに設定項目があります。

設定画面では主に動画ファイルの保存先やファイル名フレームレートなど色のついている部分を設定してください。
色が付いていない部分は好みや環境に合わせて設定してください。
録画詳細設定は内容をよく理解したうえで変更してください。


1.1.主な設定項目

■ビデオ設定:フレームレート

config_fps.png

「Monitor」を選択すると録画対象となるモニターのリフレッシュレート(通常60Hz)で録画します。
モニターが60Hzの場合に録画フレームレートを29.97に設定すると、約33秒に1枚画像を意図的にドロップ(ステータス欄のドロップ(-)がカウントされる)しながら録画します。


■ビデオ設定:AMV4コーデック
カラーフォーマットでRGBを選んだ場合はAMV4ビデオコーデックの設定がDY2やDY3(RGBをYUVに変換して圧縮する)になっていても、RGBで録画(圧縮)します。DY2に設定されている場合はDR2として、DY3に設定されている場合はDY3として動作します。


■ビデオ設定:その他のコーデック
リストに表示されるコーデックが全て使えるわけではありません。
使えないコーデックや使おうとするとアマレココ4を巻き込んでエラー落ちするコーデックもありますので、他のコーデックを使う場合は良く内容を理解したうえで選択してください。

本来、使えるかどうかチェックしてから、使えるコーデックのみリストに表示するようにしたいところですが、使えるかどうか確認する段階でエラー落ちするコーデックがあるので、それもできません。そのためシステムに登録されているFourCCを全て表示するようになっています。


■オーディオ設定:デバイス
「Auto」を選択すると既定の再生オーディオデバイス(通常はスピーカーまたはHDMIモニター)の音を録音します。


■オーディオ設定:遅延
録画した動画に対し映像と音声を意図的にずらします。
遅延の数値を大きくするほど音が遅れた動画となります。
遅延をマイナスにすると音声を進めた(映像が遅れた)動画となります。

動画の最初から、最後まで一定のズレがある場合に効果を発揮しますが、動画の初めは合っていて、動画の後の方になるにつれ音ズレするようなケースについては対応できません。
まずは、100ミリ秒、50ミリ秒、0ミリ秒、-50ミリ秒、-100ミリ秒 を試して、それでも改善されない場合は最大±500ms程度を目安に100ms単位で調整してみてください。",


■オーディオ設定:録音テスト
「録音テスト」ボタンを押すとリストで選択したオーディオデバイスを使って録音テストします。
config_audiotest.png

録音できる場合は録音フォーマット(動画ファイルのオーディオ形式)が表示されます。
なお、4ch以上の場合は2chにダウンミックスして録音します。また、動画のサンプリングレートはオーディオデバイスのサンプリングレート(OS側の設定)と同じになります。


■録画詳細設定:ダミーピクセルを使う
画像の取りこぼし(同じ画が動画に記録されてしまう)を極力減らすために使います。
録画対象がリフレッシュレートに合わせて、常に画像を更新している場合は
安定した(取りこぼしの少ない)録画が可能ですが、60Hzのモニターで30fpsの動画を再生するなど
リフレッシュレート未満の更新になってしまう場合に取りこぼす可能性がでてきます。
そういった場合にダミーピクセルをonにすることで取りこぼしを軽減します。

ダミーピクセルは録画対象となるモニターの左上に8x8の四角を表示して、モニターのリフレッシュレートに合わせて常に表示を更新します。ダミーピクセルは透明なので見た目には見えません。
また、ダミーピクセルが働くのは録画中のみです。
特に害がない場合はonで使うことを推奨します。

60Hzのモニターでゲーム画面を録画する場合について
ゲームプログラムが常に60fpsを維持できる場合はダミーピクセルをoffにしてもかまいません。
ゲームプログラムが常に30fpsで動作する場合はダミーピクセルをonにしないと取りこぼしが生じます。
ゲームプログラムのフレームレートが不安定な場合はどのみちきっちり録画できないので
ダミーピクセルは好みとなります(onにした方が無難かな)。

なお、モニターが120Hzでゲームプログラムが60fpsの場合はダミーピクセルをonにしないと取りこぼすと思いますが、60Hzを超えるモニターでテストしていないので、そもそもアマレココ4がまともに動くかどうか不明です。


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

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

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



ホームページ
カテゴリ
最新コメント
カレンダー
11 | 2016/12 | 01
- - - - 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 29 30 31
最新記事
最新トラックバック
ブログ内タグ

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

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