AMVコーデックとIntensity
これによりIntensityのデータを(キャプチャーソフトで変換することなく)直接AMVコーデックで処理できるため特別高速なキャプチャー環境を構築できます。
さらに、ハフマン圧縮を使ったHuffyuv系コーデックの場合デコード処理(再生処理)はエンコード処理(録画処理)の2~3倍の時間がかかります。そのため、パソコンの性能によりギリギリ録画できても、スムーズな再生は出来ない場合がありますが、AMVコーデックの場合はエンコードとデコードがほぼ同じ時間で処理できる為、録画したものを直接再生することが出来ます。
パソコンの性能に不安がある人や録画中もパソコンで別作業をする人、ドロップフレームを出来るだけ抑えたい人は是非AMVコーデックを試してみて下さい。
なお、Intensityの画質(性能)を最大限に生かすにはAMV2MTコーデックのR2(可逆)かR3(非可逆)がお勧めです。これらはIntensityのデータをそのまま圧縮するため、可逆圧縮であればIntensityの画像を完全に再現することが出来ます。
アマレココ お役立ちリンク集
動画投稿Tips
「アマレココを使ったゲームキャプチャ」にアマレココの使い方が詳しく載っています。
特に、最後の方にある「高画質キャプチャのために」は少し難しい内容になりますが、録画環境を改善したい、ワンランク上の録画をしたいと言う方は是非観て下さい。ボトルネックについて理解すること、ボトルネックの確認方法などが記載されています。
OZI-TUKA
2009/1/11の「地デジを静止画でキャプチャする。」でアマレココを使って地デジのスクリーンショットを撮る記事が掲載されています。コメント欄での対応が丁寧で参考になります。
不具合に関しては私の方でも確認できたので3.02で改善したいとおもいます。
あだもちゃん!ぺ~い
ゴルフゲームのパンヤに関するファンサイトです。アマレココでパンヤを録画するにはプラグインが必要なため敷居が高いですが、その辺も含めて丁寧に解説されています。パンヤを上手く録画できないという方には大いに参考になると思います。記事は2008年12月にあります。
Can't stop porin' in love
ゲームのファンサイトですが、2008年7月7日あたりでアマレココの使い方を解りやすく解説されています。
録音に関するトラブルの解決例が記載されているので、お困りの方は参考にしてみてはいかがでしょうか。
アタマニキタドットコム
Vistaでの録音設定についてとても詳しく解説されています。
アマレココ 編集・変換ソフトの対応状況
ソフト名 | 結果 | アマレココ | 補足 |
Adobe Premiere Elements 7.0 体験版 | ○ | 3.00 | Nullフレームに対応していないためアマレココVer3.02では画像が乱れる場合がある。Ver3.02aで「NULLフレームを使う」をOFFにすればOK。 |
Adobe After Effects CS3 v8 体験版 | ○ | 3.00 | 〃 |
Sony Vegas Pro8 体験版 | ○ | 3.00 | 特に問題なし。 |
Windows ムービーメーカー Ver5.1 Build 2600.xpsp_sp2_gdr.0702227-2254 | ○ | 3.00 | 特に問題なし。 |
Uread Video Studio12 体験版 | △ | 3.00 | エラーも出ず一通り使えそうですが、AMVエンコーダー、AMV2コーデック、Huffyuvなど一部のコーデックで録画するとVideo Studioの動作が全体的に重くなる。 |
Free Video Converter by Extensoft 1.0.1.4 | ○ | 3.01 | アマレココVer3.01で特に問題なし。 |
Canopus Edius J | ○ | 3.02 | アマレココVer3.02から対応。特に問題なし。」 |
Pazera Video Converters Suite 1.2 | ○ | 3.02 | アマレココVer3.02から対応。 |
携帯動画変換君 | ○ | 3.02 | アマレココVer3.02から対応。 |
|
2009/5/25 アマレココ3.02、3.02aについての記述を変更。Nullフレームについての記述を追加。Adobe PEを4.0から7.0に変更
ファンタジーリモートのレスポンスが悪い

以下はレスポンスとフレームレートに関する補足です。
ファンタジーリモートの初期設定ではビデオフレームレートを30としています。
これは、1秒間に最大30枚の映像を処理することを意味しており、パソコンとネットワークの性能が十分でそれぞれの処理時間をゼロとみなした場合のレスポンスは約1/30秒(≒0.033秒)となり、マウスカーソルなどを動かした場合にファンタジーリモート上に表示が反映されるまで最大0.033秒待たされることとなります。
これに対し、一般的なパソコンのフレームレート(リフレッシュレート)は60~75でありレスポンスは0.016~0.013秒と、ファンタジーリモートの初期値と比べ2倍以上早くその差によりファンタジーリモートのレスポンスが悪く感じる場合があります。
なお、実際は処理時間をゼロとは出来ないので私の環境では次のようになりました。
フレームレート | レスポンス |
30fps | 0.05~0.06秒 |
60fps | 0.02~0.04秒 |
100fps | 0.01~0.02秒 |
ファンタジーリモートのビデオと入力操作のフレームレートをそれぞれ30,60,100とした時のマウスカーソルの反応速度をアマレココにより0.01秒単位で計測しました。この結果からフレームレートを上げることでレスポンスが改善されることが判ります。
ただし、フレームレートを上げるとそれだけ他のアプリケーションの動作に影響するため、ゲームや動画を扱う場合はそのあたりも踏まえて調整する必要があります。
例えば最大60フレームまで処理できるパソコンでファンタジーリモートを60フレームとしてしまうと他のアプリケーションの動作が出来なくなるので、半分の30フレームに設定し、ファンタジーリモートと他のアプリケーションで半分ずつパソコンの処理能力を分け合う感じです。
この様にファンタジーリモートのフレームレートはリミッターとしての役割も担っています。
ファンタジーリモートとゲームについて
ゲーム名 | 備考 |
ファンタジーアースゼロ | FEZの方のマウス感度を調整すれば、問題ないかなと思います。 |
Master of Epic | ファンタジーリモートのクライアント設定で、「右クリック時のカーソル移動を細かくする」をON。でいけると思います。 |
ラグナロク オンライン | マウス、キーボード共に使えませんでした。 |
すかっとゴルフ パンヤ | 画像が表示されない。プラグインの「DirectDrawSurface Desktop Capture」を使えば画像は表示できる。但し、マウスとキーボードは使えない。 |
※但し、どのゲームも本格的なプレーは行っていません。
ファンタジーリモートの通信量が多すぎる
プラグイン GDI Plus Saver
スクリーンショットのファイルフォーマットにjpegやpngを追加します。
【利用例】
画像データを圧縮してスクリーンショットのファイルサイズを小さくしたいときに使います。
【対応アプリケーション】
・アマレココ
・ファンタジーリモート
【使い方】
(1)ファイルコピー
Windows2000の場合は別途GDI+のライブラリーが必要となります。
マイクロソフトのサイトからダウンロードして、AmaRecCo.exeまたはFantasyRemote.exeと同じフォルダーにgdiplus.dllをコピーして下さい。
なお、WindowsXPにははじめから含まれているので必要ありません。
次に、ss_gdip.lzhをホームページからダウンロードして解凍します。
解凍した中にある「ss_gdip.ams」を「plugin」フォルダーにコピーします。
(2)プラグインの選択
各アプリケーション設定画面の「スクリーンショット」の項で「GDI Plus Saver」を選択し、プラグインの設定ボタンを押してGDI Plus Saverの設定画面を表示します。
(3)プラグインの設定

Encoderでフォーマットを選択、JPEGの場合はQualityで画質の品質を設定し完了。
Qualityのスライダーが機能しない場合はテキストボックスに直接数値(0~100)を入力して下さい。
【補足】
・スクリーンショットの保存先パスに日本語が含まれているとファイルが作成されない不具合を修正しました。(Ver1.01)
・JPEG以外ではQualityは使いません。
・GDI Plus Saver内のBMPは利用できません。
ダウンロードはホームページから。
プラグイン ビデオレンダーキャプチャ

【概要】
メディアプレイヤーなどのオーバーレイ画面に表示されている映像を録画すると通常は真っ黒な動画になってしまいます。
このプラグインはDirectShowのビデオレンダーから直接映像をキャプチャすることでメディアプレイヤーの録画を実現します。
【利用例】
・メディアプレイヤーの再生画面を録画する。
・地デジのプレビュー画面を録画する。
・ビデオキャプチャーカードのプレビューを録画する。
・動画配信等のストリーミング放送を録画する。
【対応アプリケーション】
・アマレココ
・ファンタジーリモート
【使い方】
ここではアマレココでの使い方を説明します。ファンタジーリモートの場合はファンタジーリモート取扱説明書のFAQ及び解説動画を参照して下さい。
(1)ファイルコピー
input_vrc.lzhをホームページからダウンロードして解凍します。
解凍した中にある「implant_vrc.dll」をAmaRecCo.exeと同じフォルダーにコピーします。
「input_vrc.ami」は「plugin」フォルダーにコピーします。
(2)プラグインの選択
設定画面(ルーキーモードには在りません)のビデオにある「入力プラグイン」で“DSF VR Capture”を選択します。選択した後、設定ボタンを押してプラグインの設定画面を表示します。

(3)設定

ビデオレンダーキャプチャの設定画面が表示されたら、録画対象のアプリケーション(メディアプレイヤーなど)を起動し再生します。再生が始まったらビデオレンダーキャプチャのリストの更新ボタンを押します。

「wmplayer.exe」が表示されたらリストで選択してOKボタンで完了です。
メイン画面に戻ってプレビューに映像が表示されていれば成功、後はスタートボタンを押せば録画できます。
【補足】
・インジケーターは一切表示されません。
・タイムアウトは、ターゲットが見つからない(再生されていない)場合に検索を続ける時間です。
ダウンロードはホームページから
連載2 画像転送システム サンプルプログラム
ダウンロード
ライセンスはフリーウエアとなっています。ソースファイルは変更の有無、コンテンツの有料/無料を問わず、ご自身の責任の元自由にご利用頂けます。
コーデックを使ったエンコード(画像の圧縮)及び、デコード(画像の復元)の参考になれば幸いです。
【使い方】
プログラムはサーバーとクライアントに分かれています。
設定は付属のiniファイルをメモ帳で編集して下さい。
サーバー側はポート番号の設定のみです。
クライアント側はポート番号とサーバーのアドレスを設定してください。
設定が終わったらサーバー側を先に起動します。次にクライアントを起動すると勝手に接続されサーバー側のデスクトップ画像がどんどん転送されてきて表示します。
なお、AMV3ビデオコーデックがインストールされていないと利用できません。他のコーデックを利用する場合はプログラム内のFourCCを書き換えて下さい。
【コンパイル】
普通にコンパイルできると思いますが、サーバー側のみマルチスレッドライブラリを利用しています。その辺が原因でコンパイルできない場合は31行目にある#define USE_THREADをコメントアウトして下さい。コメントアウトするとマルチスレッド系のAPIは使いません。
連載2 画像転送システム その11
固有ステータスと言うのは各コーデックにより内容が異なる為一概に言えませんが多くの場合はコーデックの設定内容を含んでいます。例えばAMVコーデックで言えばハーフサイズのON/OFFやマルチスレッドの設定など設定画面の内容が含まれています。これらのステータスをコーデックから取得したり、逆にアプリケーション側からコーデックへステータスを設定したりする事ができます。
コーデックからステータスを取得するにはICM_GETSTATEメッセージを使います。
第1パラメータにステータスを格納するバッファのアドレス、第2パラメータにバッファのサイズを設定しますが、第1パラメータをNULLにするとステータスを格納するのに必要なバッファサイズを返すので最初はバッファサイズの取得、次にバッファの確保、最後にステータスの取得と三段階で処理しましょう。
次に、ステータスの設定です。利用するのはICM_SETSTATEメッセージです。
こちらは第1パラメータにステータスが格納されたバッファのアドレス、第2パラメータにバッファサイズを指定するだけです。
BOOL GetSetState( void ) { HIC hic = ICOpen( ICTYPE_VIDEO, dwFcc, ICMODE_COMPRESS ); if (hic == NULL)return FALSE; // 1.バッファサイズの取得 DWORD dwSize = ICSendMessage( hic, ICM_GETSTATE, (DWORD)NULL, (DWORD)NULL ); if (dwSize) { // 2.バッファの確保 void *lpState = malloc( dwSize ); if (lpState == NULL) { ICClose( hic ); return FALSE; } // 3.ステータスの取得 ICSendMessage( hic, ICM_GETSTATE, (DWORD)lpState, (DWORD)dwSize ); // ステータスを設定 ICSendMessage( hic, ICM_SETSTATE, (DWORD)lpState, (DWORD)dwSize ); free( lpState ); } ICClose( hic ); return TRUE; } |
上の例では取得したステータスをそのまま設定するので意味ないですが、アマレココの場合には設定Aから設定Dまで別々にコーデックのステータスを取得し管理する事で同じコーデックに対しても異なる設定で録画できるようになっています。
また、ファンタジーリモートではクライアント側でコーデックの管理を一括しています。
その為、接続時にクライアント側のコーデックのステータスを取得しそれをサーバーへ送信、サーバー側は受信したステータスをコーデックに設定という流れになっています。
このようにステータスを上手く管理する事でアプリケーションの利便性が向上しますので是非とも活用したい機能です。但し全てのコーデックがステータスの取得、設定に対応しているわけではないのでその点は気を付けましょう。