アマレココ2系に搭載されていたAMVエンコーダは画質面で不満があったが、現在のAMV3コーデックは画質が飛躍的に向上している。
以前なら画質を重視する場合、高画質チューニングのAMV2(高画質チューニング版AMVコーデック)か、UtVideo等の可逆形式を使おうと思ったところだったが、現在のAMVコーデックは実用上なんら問題ないレベルの画質と言える。
アマレココのようなデスクトップキャプチャでゲームのキャプチャを行う場合、基本的にはウインドウモードでしかキャプチャを行えない(*1)・負荷が大きい(*2)
…等のデメリットがある。
しかし、デスクトップキャプチャであるが故に、他のアプリケーションウインドウを同時にキャプチャできるというメリットもある。
使用例として以前作成したゲームの操作説明を行う動画を貼っておく。
これはコントローラのプロパティを表示し、それを含めてキャプチャを行った動画。
含めてといっても解像度の都合上こんな縮尺でキャプチャはできないので、ゲームのウインドウの隣にコントローラのウインドウを並べて横長の画面をキャプチャした後、トリミング→合成…という手順を経ている。
他にも、時計を一緒に録画することで経過時間を正確に計る時などには使えるだろう。
アマレコ・ライトはDirectX対応のフルスクリーンゲームキャプチャに対応する。
必要なソフト
- アマレココ本体 - ver3.01からAMVコーデックを同梱しなくなった。下記AMV3コーデックを別途ダウンロード、インストールすること
- AMV3 video codec
- 公式サイト - http://www.amarectv.com/
- アマレココダウンロード(vector) - http://www.vector.co.jp/soft/winnt/art/se439053.html
- AMVコーデックダウンロード(vector) - http://www.vector.co.jp/soft/winnt/art/se460917.html (シェアウェアと表示されているがアマレココで使う場合のみ試用制限を解除できるので気にしなくてよい)
準備
- アマレココのインストール。lzhの圧縮ファイルを適当な場所に展開する
- AMV2MT/AMV3 ビデオコーデックのインストール。インストーラに従い導入する
- AmaRecCo.exeを実行してアマレココを起動
- 以下は詳細設定の説明となる。ファイル>ルーキーモード のチェックを外すと詳細設定モードになる。
- 表示>プレビュー で両方表示に設定しておくと見やすい。好みで選択。
- 表示>ステータスバー は個人的にはフレームレートがいいと思う。fpsが落ち込んだら何かの負荷が高すぎてうまくキャプチャできていないということ。
取扱説明書
基本的な使用方法から設定方法まで詳しく説明されているので、わからないことがあったら一読するとよい。
また、各設定項目にポインタを当てればツールチップによる説明がポップアップするので活用すること。
各種設定
基本的には取扱説明書、ツールチップの説明をよく読むこと。
全般
- 最大ファイルサイズ:特別理由がなければ100GB(100000MB)にしておけばいい。使用しているファイルシステムがFAT32なら4GB以下にしておくこと。
- バッファサイズ:録画対象のアプリケーションの動作に問題がない範囲で、メモリ容量と相談して調整する。高解像度の動画を撮るならできるだけ余裕を持ちたい。
- 書き込みサイズ:可逆圧縮や未圧縮を使うなら大きめの方がパフォーマンスがいいかもしれない。環境に合わせて調整する。
- ホットキー:初期設定のCtrl+Z/X/A/Sは他ソフトでもよくホットキーとして使われているので、変更したほうが都合がいいこともある。
各プロファイル設定
ビデオ
- フレームレート:ゲームを滑らかに録画するなら60fps以上にするのが望ましい。高fpsにすればするほど画像取り込み、圧縮の負荷は高まる。PCのスペックに合わせて調整する。
尚、60fpsの動画はビットレートへの要求も高くなるので、動画投稿時のビットレート制限が厳しい場合は30fpsに押さえた方が結果的に見た目がよくなる可能性もある。
ビデオ圧縮
- コーデック:AMV3コーデック以外の可逆圧縮や、mpeg4系の非可逆圧縮形式を使いたい場合に利用する
- AMV3コーデック:アマレココ標準の圧縮形式。優秀なコーデックなので特に理由がない限りこれを選択しておけばよい。
取り込み範囲/ウインドウ指定
ウインドウ指定ではデスクトップに展開中のウインドウを選択することができる。
尚、指定範囲の解像度が8の倍数でない場合、取り込み後の映像は黒縁が付加されて自動的に8の倍数になる(多くのコーデックは4ないし8の倍数解像度でないとエンコードできないためと思われる)
取り込み枠右クリックで表示される「規定のサイズ」は全て8の倍数の解像度。
一部のゲーム等ではチート対策としてウインドウ、プロセスの隠蔽がされており選択できないことがある。
画像縮小
AMV3コーデックで1/2解像度にする場合は、エンコーダの設定で「ハーフサイズ」にチェックしたほうが高速に処理できる。
他のコーデックを使う場合、縮小サイズを指定する場合はこの設定を使う。処理モードはSSE対応のCPUを使っているならSSE、1/2の場合ハーフSSEを使う。SSEの方が高速、高精度。
低スペックPCで負荷を下げたい場合や、ゲームを高解像度でプレイした時エンコードやHDD転送がボトルネックになって録画fpsが上がらない場合に利用する。
画質は落ちるので、フレームレート・解像度・圧縮形式などの兼ね合いを考慮して調整する。
タイムスタンプ
キャプチャ成功した場合顔文字が(^-^)になり、フレームの取りこぼしがあると(>_<)になる。
わかりやすいのでテスト録画をする際に利用したい。
オーディオ
環境によって設定は大きく変わるので、詳しくは取説の「5.録音について」を熟読のこと。
筆者の環境(USBオーディオデバイスを使用)では、DirectSoundCaptureでないと録音できなかった。
オンボードサウンドのステレオミキサーを利用する人が多いと思われるが、ミキサーの音量はかなり低め(初期設定は低くなっているはず)にしておかないと音が割れる。
何度かテスト録音してみて調整する。audacityやレベルメーター表示ソフトなどで音量をチェックしながら調整するといいかもしれない。
アマレココの録音設定について
録画タイプ
取り込み範囲設定
枠を右クリックすることで、取り込み範囲を規定のサイズに変更、フレームレートの変更などが行える。
また、枠の左上あたりのアイコンをつまんで枠をアプリケーションウインドウに合わせると、自動的にウインドウサイズ(またはクライアントサイズ)に合わせられる。
AMV3コーデックの設定
AMVロゴを消す
レジストキーはアマレココ3.01以降に同梱のreadme_jp.txtに「AMV3ビデオコーデック用アマレココ試用版レジストキー:」として記載してある。
アマレココ以外のアプリケーションで使用する場合もロゴを消したい場合は、シェアウェアとして購入する。
圧縮
「ハーフサイズ」にチェックすることで映像サイズが半分の解像度(4分の1サイズ)になる。負荷が激減するため、高解像度でフレームレートが出ない場合チェックする。
ただし当然ながら画質は悪化する。多少のフレーム取りこぼし程度なら解像度や録画fpsを落とした方がよい結果になる。
マルチスレッド
3コア以上あるなら録画対象アプリケーションの動作との兼ね合いを考慮して調整する。
入力フォーマット
出力フォーマット
最終的に編集する際使うアプリケーションなどに合わせてYUY2,YV12なども選択する。
プロファイル
よく使う設定が複数あるならプロファイルを作っておけば変更が楽になる。
オートプロファイルについてはよくわからない。
ゲームキャプチャ手順
- アマレココとゲームを起動する。
- 各種設定を行う
- ウインドウを指定する
- 録画スタート
キャプチャ手順動画
AthlonX2 4800+/DDR2-800 4GB/RADEON HD4830
DMC4ベンチの設定は
800*450/MSAA x4/その他HIGH設定
MHF、先の例で示したアラド戦記も同様の手順で録画できる。
完成
#zoome以下にAMV3コーデックで圧縮されたキャプチャ映像のScreenShotを掲載しておく(クリックで拡大)
高画質キャプチャのために
自分のスペックに合わせてできるだけ高画質でキャプチャするための設定方法を説明する。
アマレココにはAMVという高速、高圧縮エンコーダがあるので、多くの場合はCPUがボトルネックになるだろう(AMVの負荷が高いという意味でなく、HDD転送に余裕があるという意味)
ある程度まで大きくすると設定したフレームレートを下回るので、その解像度未満が限界の解像度となる。
AthlonX2 4800+/DDR2 4GBという環境の場合、60fps/AMV(S3)の設定でテストしていくと1280*1024の段階で45fps前後となった。
1280*768では60fpsで安定。この場合60fpsキャプチャの限界は1280*768といったところになるだろう。
しかし、AMVの設定をS1(高速)にすることで1280*1024でも60fpsを維持できた。低負荷だが低圧縮(ファイルサイズ大)のS1でも問題ない…つまりこの状態ではHDD転送速度には余裕があるということだ。
HDD転送に余裕があるので、さらに低負荷の未圧縮などを選択すればCPU負荷は減る。
しかし今度はHDD転送速度がボトルネックになり設定フレームレートを維持できないので、CPU負荷を減らしても結局解像度を上げることはできなかった。
結果としてこの環境での高画質キャプ設定は、60fps、1280*1024、AMV(S1)が最善ということになるだろう。
但し、ゲームをプレイするとそっちにCPUが使われるので、実際の限界はさらに下がると考えたほうがいい。
このテストではほぼ静止画なのでかなり高い圧縮率となるが、動きの激しい動画になると圧縮負荷、保存サイズ共に激増する。
ゲームプレイで高負荷時になった際フレームレートが落ちることも考えられるので、ここからさらに実際のゲームプレイで何度かテストを行い、最終的な設定を決めるのがいいだろう。
解像度1920*1200、フレームレート60fpsの設定でも問題なくキャプチャが行えた。
AMV3の設定はS3、マルチスレッド設定でエンコードに2コア割り当て。尚、マルチスレッドを1コア設定に変更すると55fps程度になった。
PhenomII X3/X4の2.8GHz以上(*4)なら、キャプチャに関してCPUのボトルネックを気にする必要はないと思われる。
CPU処理速度がボトルネックの場合
- 解像度
- 取り込み範囲を大きくすればするほど負荷(画像取り込み処理、それをエンコードする処理)が増大する。
- 他を低負荷設定にしたとしても、どこかに処理できる限界の解像度がある。最初にその解像度を見つけるといい。
- テストする時は比較的負荷の大きい設定から試していって、限界がきたら画質が許す限り低負荷な設定にしていくといいだろう。
- 圧縮形式
- CPUへの負荷が低いAMV3コーデックを使うのがいいだろう。AMV3コーデックにはS0~S4の設定があり、数字が少ない方がCPU負荷が低い。
- 但し、その分サイズが増大するので、HDD転送がボトルネックになる可能性が出てくる。
- 画質面ではS0~S2が最も高画質、S3は若干画質低下、S4はさらに画質低下。
- バランス的には高画質のS2及び、高圧縮のS3をオススメしたい。S3は画質低下と言っても個人的には実用上全く問題はないと思える。自分の目でチェックして確認するといい。
- S2/S3でもCPU負荷が高い場合はS1を試すといいだろう。
- 画質:S0=S1=S2>S3>S4
- 圧縮率:S4>S3>S2>S1>S0
- 負荷:S0>S1>S2=S3>S4
- HDD速度が早い環境でCPU負荷を極力下げたい場合、未圧縮(*5)を選択する。
- 未圧縮はエンコードしないので最もCPU負荷が低く最も高画質だが、膨大なサイズとなるためHDD速度への要求が大きい。RGBフォーマットをRGB24にすると、若干CPU負荷が増えるが同じ画質でサイズを小さくできる。
- 未圧縮を利用する際はフレームドロップを防ぐためにもバッファサイズは大きめに取っておきたい。AMVを使う場合でもバッファサイズが大きいに越したことはないが、未圧縮ではとにかくビットレートが高いためあっという間に溢れてしまう。
- 低負荷高画質という利点はあるものの、特に高解像度ではおよそ現実的ではないビットレートになるため、よほど高速なHDD(RAID0)でないとまともにキャプチャできないと思われる。
- フレームレート
- もしゲームを60fpsで録画しているなら、30fpsにしてみるといい。
- 滑らかな映像を目指すなら60fpsだが、30fpsでも露骨にカクカクというわけではなく十分に見れる映像になる。
- それだけで画像取り込みの負荷は半分になるので、負荷低減には有効な手段。
- さらに半分の15fpsになると、違和感が目に見えてくる。1枚1枚の映像の画質としては変わらないのだが、コマ送りとまでは言わないもののそれに似た印象を受けるだろう。
- 他の設定項目をいじりたくない場合、30fps未満に関しては下記の画像縮小とフレームレートのどちらを調整するか考えることになる。
- 文字などをくっきり見せたいならフレームレートを下げる、動画としての滑らかさを維持したいなら画像縮小する。
- 画像縮小
- 取り込んだ画像を縮小処理し、エンコードにかかる負荷を低減する。
- 縮小処理にも負荷はあるが、それよりもエンコード負荷の方が圧倒的に大きいので、結果的には負荷の低減となる。
- 縮小品質は高くないので、仮にキャプチャ後に縮小するとしても、取り込み時は元の解像度のままにした方が高画質になる。
- 高解像度取り込み時、上記の手段ではキャプチャフレームレートが改善しなかった場合に利用する。
- 使うならAMV3コーデック設定の"ハーフサイズ"にチェックを入れる。これで解像度が1/2となり、負荷が激減する。
- 80%といった中途半端な数字の縮小をするなら、設定画面の画像縮小機能を利用する。ただ、その程度の縮小をするのであれば、取り込み範囲(ゲームであればゲームの解像度)を調整しこの機能を利用しない方向で調整した方が画質には有利。
- とはいえプレイ環境を重視したい、録画フレームレートも下げたくないという場合は、この機能を使うといい。
HDD転送速度がボトルネックの場合
- RAID0の構築
- ハードウェア的な解決方法。純粋に転送速度を上げる。
- 圧縮形式の変更
- 画質は悪化するがAMVコーデックの設定をS4(高圧縮)にしてみる。もしくは他の高圧縮コーデックを利用する。
- しかし圧縮率の高いMPEG4系のコーデックは軒並みCPU負荷が高いので、今度はCPUがボトルネックになる可能性が出てくる。
- 画像縮小
- HDD転送がボトルネックの場合でも、単純にサイズが減る画像縮小は極めて有効な手段。しかし上でも書いた通り画質の悪化が大きいので、極力利用したくはない。
備考
アマレコ・ライト
対応ゲームの制限が大きく(*6)、パフォーマンス的にDxtoryなどに及ばないが、フルスクリーンキャプチャとしては有望な選択肢。
但しこちらにはAMVコーデックの試用版レジストキーは利用できないため、レジストしないと半透明のロゴが挿入される。
\1,260と高いものではないのでレジストしてしまうのもいい。
録画時のエンコードにAMV以外のコーデックを利用すればロゴは挿入されない。
フルスクリーンキャプチャ
方法としては取り込み枠を左上(0,0)に置いて、枠のサイズをゲームの解像度に設定するだけ。
できるかどうかはゲームにもよるかもしれないが、試した限りアラド戦記とデビルメイクライ4ベンチでは可能だった。
どうしてもアマレココを使いたい、または無料でフルスクリーンキャプチャを行いたい場合はこの方法も考慮に入れておくといい。
疑似フルスクリーンキャプチャ
しかし、要はディスプレイいっぱいの画面を使ってゲームしながら録画したい、というだけのことであればウインドウモードの画面サイズを変更してそれをキャプチャすればよい。
3Dゲームならば単に解像度をディスプレイ解像度と同じにするだけでもいい。
ウインドウを大きくできたら、アマレココの取り込み範囲指定でゲームが動作しているウインドウを指定してキャプチャを行う。
ただし、解像度が大きくなればなるほどキャプチャ負荷が高くなるため、この方法はPCスペックに対する要求が大きい。
簡単にフルスクリーン録画するならばやはりDxtoryなどを利用するのが望ましい。
Resize & Move ダウンロードサイト
AMV2コーデック
AMV3がどのモードでもYV12に色空間を圧縮するのに対し、AMV2は入力と同じ形式のまま、あるいはYUY2を使って圧縮することができる。
AMV2とAMV3の比較
上からAMV3の可逆モード(S2)・AMV2の可逆モード(Y2)・AMV2の可逆モード(R2)で比較している。
見ての通りAMV3ではキャラクター上の名前表示や、HP/MPバーの色が滲んだようになっているのがわかる。
YUY2変換を行うAMV2のY2モードでも、AMV3ほどではないが色滲みがあるのを確認できる。
AMV2のR2はRGBで取り込んだ映像を色空間変換なしで可逆圧縮する、純粋な可逆圧縮モード。元映像からの劣化はないが、その分圧縮率は低くなるため、高解像度ではHDD速度がボトルネックになるケースも出てくるだろう。
特にYUY2では劣化を知覚しにくい。
こういったタイプのゲームを高画質にキャプチャしたいという場合、AMV3ではなくAMV2を利用すると劣化なしでキャプチャすることができる。
また、画質重視で高性能なCPUを用意できるなら、コーデックにUtVideoを使うという手もあるだろう。
UtVideoはAMVに比べると負荷はかなり大きいが、RGB、YUY2による圧縮が可能で、圧縮率もAMV2/R2よりも高くなるケースが多い。
というのもニコニコ動画などで利用される映像コーデックのVP6、H.264はYV12でエンコードを行うため、これらの形式に変換する際似たような劣化が起こってしまうからだ。
これはエンコーダの設定をどうこうという問題ではないので、そういうものだと割り切るしかない。
YV12ではとりわけ赤や青といった色で劣化が目立つ。逆に白黒や緑といった色では劣化がないわけではないものの気にはならない。