スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


アマレココ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 ベータ版を先行公開します。
正式版の公開はホームページで来週を予定しています。

スポンサーサイト


アマレコTV4 Live 正式版公開

アマレコTV4 Liveの正式版をホームページで公開しました。
ベータ版からの主な違いは次の通りです

AmaRecTV4 Ver4.01
・オンラインヘルプ
・デスクトップキャプチャの録画範囲が半分以上モニターからはみ出すと打開不能になるのを修正
・krkrbenchi でVIDEOINFOHEADER2を使うとアマレコTV4がエラー落ちするのを修正
(アマレコTV4はVIDEOINFOHEADER2非対応なので使えない エラー落ちしなくなっただけ)
・Windows7でビデオレンダラーが自動になっているとエラーになるのを修正
・録画詳細設定に「書込みバッファがいっぱいになったら録画を止める」を追加
・ベータ版の設定ファイルと互換性がありません。

FAQ
録音デバイスと再生デバイスのフォーマットが合わない場合について
・異なるフォーマットを再生できるかどうかは再生デバイス次第です。
サンプリングレートがあっていなくても再生できる場合もあります。
・オーディオレンダラーを排他モードに設定すれば再生デバイスのフォーマットは関係なく再生できるようです。
オンラインヘルプ


くるくるベンチ DirectShow 64bit版

くるくるベンチ for DirectShowの64bit版です。
アマレコTV4などの64bitのビデオキャプチャソフトで使えるビデオソースフィルターです。
krkrbenchi64.png

4K設定も追加してあります。
krkrsettei.png

注意
アマレコTV4でVIDEOINFOHEADER2を使うとエラー落ちします。


ダウンロード
くるくるベンチ for DirectShow Ver4.00


アマレコTV4 ベータ版公開

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


【主な内容】
(1) Windows8.1 64bit 完全対応
(2) 新録画エンジン (修復不要、再エンコード支援など)
(3) 新デスクトップキャプチャ (Desktop Duplication API)
(4) 新オーディオレンダラー (Core Audio API)
(5) Intensity Pro 4K RGBキャプチャ対応


【未実装】 (後々対応予定)
(1) オーディオミキサー
(2) リプレイ機能
(3) ライブ機能(完全版)
(4) プレビューの画面回転、ラインダブラー


【その他】
・ライブ機能は簡易版となります。
アマレコTV4 ライブ機能(簡易版)
・AMV4ビデオコーデックのライセンス登録がされていない場合は録画した映像にロゴが入ります。
・SSE4.1に対応したCPUが必須となります。
・対応OSはWindows8.1 64bitのみとなります。
・32bit版のOSでは実行できません。
・Windows7 使えないことは無いと思いますがデスクトップキャプチャやオーバーレイレンダラーなど使えない項目があります。
・Windows10 PCに詳しい人なら使えるんじゃないでしょうか。
Windows10について 
Windows10のWMPでAVIファイルが再生できない 
・オーディオキャプチャデバイスのサンプリングレートと再生デバイスのサンプリングレートが一致していないと音のプレビューができ無い場合があります。
・録画時にMP3で圧縮するには64bitに対応したMP3エンコーダーが必要です。入手困難なので実質MP3の圧縮はできないものと思ってください。
・今回のバージョンにはオーディオミキサーが含まれません。そのためアマレコTV4単体での実況動画の作成はできません。
・録画開始やスクリーンショットのホットキーの割り当てが変わりました(CTRL押しながらだとOSの機能と被るのでAltに変更しました)
・起動オプション追加(-path:、-nodate)


【廃止項目】
・HWデインターレース
・GV-USBおよびSC500に対する色補正
・CDU(Capture Device Utility)
・信号検出
・アロケーターチェック
・nullフレーム録画
・アナログチューナー機能


【改善されると思われる不具合】
・録画終了時の書込みエラー。
・アマレコTVを起動するとものすごい雑音が流れる、一度ミュートすると治る。
・Hキーでオンラインヘルプを表示すると、ヘルプを閉じても閉じてもヘルプが表示されてしまう。
・録画中だけプレビューがカクカクするまたは止まってしまう(改善されるか半信半疑)。
・設定画面等のボタンがはみ出してて押せない (GUIのレイアウトが崩れる)。


【起動オプション】
-path:"d:\movie"
  dドライブのmovieフォルダに動画を保存します。
  アマレコTVの保存先1の設定は無視されます。

-nodate
  ファイル名に日付をつけません。


【ダウンロード】
アマレコTV4 Ver4.00 ベータ版


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


アマレコTV 4 新オーディオレンダラー

音を再生(プレビュー)するオーディオレンダラーがアマレコTV 4で新しくないります。
今までのアマレコTVではWindows95のころから使われていたwaveOut APIを使って音を再生していましたが、新オーディオレンダラーではCore Audio APIに変わります。オーディオレンダラーに限らずアマレコTV 4では音に関する録音・再生処理のすべてをCore Audioで実装してあります。

Core Audio APIを使って音を再生することにより
・反応時間(レイテンシ、再生遅延)の軽減
・音質向上?
と言ったメリットがあるらしいです。

音質の向上については一般的に「排他モードを使うことでカーネルミキサーを通さずビットパーフェクトを達成できるので高音質になる」とされていますが、アマレコTV自体で扱う音の質がそもそもそこまで良くないと思いますので猫に小判と言った感じです。
反応時間の軽減については検証を行っていませんが、ステータスを見る限りではwaveOut APIより少ない反応時間でも安定した再生を行えますのでこの分部が新オーディオレンダラーの優位性となります。


オーディオレンダラーに関する項目はアマレコTVの高度な設定にあります。
config_2016021223052666c.png

今まで通り、再生デバイスと、配信デバイスの最大2系統でアマレコTVの音を再生することができます。

排他モードのチェックボックスをONにするとCore Audioの排他モードを使って再生します。
排他モードにするとOSのカーネルミキサーを通さないためその部分の音質低下を防げるとされています。
ただし、排他モードにするとアマレコTVの音しか再生できなくなります(他のアプリケーションの音は再生できなくなる)。
アマレコTVが再生デバイスを独占するため”排他モード”と言うことになります。
ちなみに、排他モードでない場合を”共有モード”と言い、様々なアプリケーションの音をカーネルミキサーがミキシングして一つの再生デバイスで再生するらしいです。

アロケータに関する設定はビデオキャプチャカードを使う場合ほぼ意味がない(変更できない)ので廃止にしようかと思いましたが、実験用に設定を残しました。通常OFFで使ってください。

再生プロパティ・配信プロパティ
各オーディオレンダラーの設定画面を表示します。
なお、各オーディオレンダラーの設定値は共通となるので別々の設定値にすることはできません。最後に設定した値が有効となります。


新オーディオレンダラーのプロパティ
renderer_20160212230525e39.png

【設定項目】
・バッファサイズ
100msから1000msの間で設定できます。通常200msから変更する必要はありません。
右側に表示されている「バッファ実サイズ」は実際にcore Audioが確保したバッファサイズです。設定通りに確保してくれない場合があるので確認用として表示しています。

・目標反応時間
最も重要な反応時間(レイテンシ、再生遅延)の設定です。反応時間を大きくすると遅延が増えますので基本的には小さく調整します。
ただし、反応時間が小さくなり過ぎるとプチプチノイズが生じますので、ノイズが目立たない範囲を見極めて設定してください。
実際の反応時間は画面下部に表示しています。上図だと目標が40msで現在36msの遅延(36ms分のデータが再生バッファに溜まっている)で音が再生されています。

・許容範囲1
・許容範囲2
目標値からどの範囲を許容するかの設定です。
反応時間が目標値とぴったり一致していなくても許容範囲に収まっているうちは補正を行いません。
許容範囲を超えた場合は目標値になるよう音データを補正します。この時(補正中は)音質が低下します。
補正中は画面下部の「補正回数」がどんどん増えていくので、今補正しているかどうかは補正回数で判断してください。

許容範囲1は狭い範囲の設定で補正もほとんどわからないように処理されます。
許容範囲2は広い範囲の設定で、許容範囲を超えた場合、かなり強引に補正しますので音質低下が目立ちます。その代り素早く目標値まで持っていけます。

・最低バッファリング
許容範囲の設定値によっては、許容範囲の下限が0となってしまったり、マイナスになることがあります。
その状態だと補正できないので、この値を下回った場合は僅かに補正して目標値まで持っていきます。

設定例1
range1.png

目標反応時間:40ms
許容範囲1:10ms
許容範囲2:40ms
最低バッファリング:10ms
の場合、反応時間が30msから50msの範囲にあるうちは補正を行いません。
29ms以下、もしくは、51ms以上になったら反応時間が40msとなるまでほんの少しずつ補正を行います。
もし、反応時間が81msを超えた場合は短時間で反応時間が40msとなるよう強引に補正します。
最低バッファリングは先に許容範囲1の下限が働くのでこの場合意味を成しません。


設定例2
range2.png

目標反応時間:10ms
許容範囲1:10ms
許容範囲2:40ms
最低バッファリング:5ms
の場合、許容範囲1と許容範囲2の下限がそれぞれ0以下なのでいずれも働きません。
その代りに反応時間が5msを下回った時に最低バッファリングが働き10msになるまでほんの少しずつ補正を行います。


【画面下部のステータス表示】
・反応時間
現在の反応時間です。この値は再生バッファに溜まっている(再生待ちの)データ量から算出しています。
最小値、最大値はそれぞれプロパティを表示してからの最小値と最大値を表示します。

・補正回数
補正を行った回数を表示します。補正を行っている最中はこの値がどんどん増えていきます。

・ドロップ
再生バッファにデータが溜まり過ぎてデータを捨てた回数を表示します。
通常0となります。もし、この値が1以上になるようならバッファサイズを増やす必要があるかもしれませんが、まともに音を再生できる環境ではない可能性が高いです。

・デバイスロスト
HDMIなどでリンクが切れて再生デバイスが使えなくなった場合にカウントされます。

・統計リセットボタン
最小値、最大値、各カウント値をリセットします。

・受け取ったサンプル
実際のアロケータサイズを表示します。

・デフォルトボタン
オーディオレンダラーの設定値を初期値に戻します。



2016.2.13追記
新オーディオレンダラーではキャプチャデバイス(キャプチャカード)のサンプリングレートと再生デバイスのサンプリングレートを一致させる必要があります。

一致しない場合は接続エラーとなります。
formaterror.png

OSの設定で再生デバイスのサンプリングレートを合わせて下さい。

もしくは、アマレコTVの高度な設定の「フォーマットエラーを無視する」をONにすると音のプレビューはできませんが、録画等そのほかの機能は使えるようになります。
through_error.png


アマレコTV 4 録画ステータス

録画中に表示するステータスの内容がすこし変わるのでその説明です。
400rec.png

その前に、アマレコTV 4の録画処理フローを説明します。

1.アマレコTV 4の録画処理フロー

flow.png

キャプチャカードは画像データをアロケータに入れてカスタムフィルターへ渡します(参照渡し)。

カスタムフィルターはアロケータの内容をレンダラーのビデオメモリへコピーします。
これがDirectShow Graphの基本的なプレビュー処理となります。
カスタムフィルターはこれに加え、録画中はアロケータの内容を(4)のリングバッファへコピーします。



既存のアマレコTVの場合はこの分部がリングバッファへのコピーではなく録画処理へアロケータそのものを渡してアロケータをロックするようになっています。
そして、(5)のエンコード処理が終わった後にアロケータのロックを解除します。
キャプチャカードはアロケータがロックされている間次の処理ができない場合がありますが、通常アロケータは複数あるので問題ありません。しかし、録画処理が滞ると複数あるアロケータすべてがロックされてしまいDirectShow Graphの処理も滞ることになります。



アマレコTVの録画処理(録画処理スレッド)はリングバッファにデータが溜まっていないか監視し、溜まっているデータがあったら音ズレ処理とエンコードを行い、結果を(6)の書込みバッファへ書き出します。

アマレコTVのファイル処理(ファイル処理スレッド)は書込みバッファを監視し、既定の量(書込みブロックサイズ)溜まっていたらまとめてファイルへ書き出します。

アマレコTV 4ではDirectShowスレッド、録画スレッド、ファイルスレッドの3つそれぞれがバッファを介して完全に独立しているので、たとえばファイル処理が一時的に滞ったとしても、各バッファが緩衝材となってキャプチャカードの処理やプレビューと言ったDirectShow Graphへ影響がないようになっています。

録画ステータスはこれらの処理の状況を把握することができますので、異常がある場合の原因特定や改善のヒントとなります。


2.ステータス
Drop
ドロップフレーム数と(+)ドロップ、(-)ドロップの3つを表示します。
(+)と(-)は既存のアマレコTVと同じで、音ズレ処理により調整されたフレーム数をカウントします。
一方、一番左に表示されるドロップフレーム数は既存のアマレコTVと内容が異なり、アマレコTV 4では(4)のリングバッファがいっぱいで書き込むことができなかったフレーム数をカウントします。
この値は通常0となるので、もし1以上になっていたら異常と思ってください。
(+)と(-)は必ずと言っていいほど生じますので1以上になっていても問題ありません。

HDD
1秒間にHDDへ書き込むデータ量(フローの7)と書込みバッファの使用率(フローの6)を表示します。
1秒間に書き込むデータ量は既存のアマレコTVと変更ありません。
書込みバッファの使用率については、既存のアマレコTVでは空き具合を表示していましたが、アマレコTV 4では使用率なので読み方が真逆になることに気をつけてください。
使用率については録画開始直後は0%から始まり、ファイル処理が滞ると徐々に数値が増えていきます。50%を超えるなど数値が大きいほど具合が悪いとなります。
これは、録画ステータス全体を通して「数値が大きくなる = 悪い状態」となるよう統一するための変更です。

CPU
これも既存のアマレコTVから内容が変わります。
今まではエンコード時間から算出していましたが、アマレコTV 4では総合的なCPU使用率(ほぼタスクマネージャのCPU使用率と同じ)を表示します。
これにはエンコード処理だけでなくアマレコTVの処理全体、さらには他のアプリケーションの処理まで加味されます。
また、次に説明するエンコードの処理時間が規定時間の50%を超える場合、このCPU使用率は999%と表示されます。

Enc
エンコードの処理時間(ビデオコーデックが1フレーム処理するのにかかる平均時間)とビデオコーデックの名前を表示します。
これらは既存のアマレコTVと同じ内容を表示します。
なお、規定時間は例えば60fpsで録画する場合、約16msです。エンコード処理時間が規定時間を超える場合は完全にPCのスペック不足です。
既定の処理時間の50%を超えた場合、CPUの使用率が999%となります。


3.分析方法
フローの下流から異常がないか確認します。

(1) まずは、HDDのステータスで書込みバッファの使用率が高くないか(50%を超えていたら危ない)確認します。
・使用率が高いなら2へ
・低く推移しているなら3へ

(2) 1秒間にHDDへ書き込むデータ量が妥当かどうか見ます。
書き込む量が多く(100MB/s程度)て使用率が高くなっている場合は純粋にスペック不足です。
・アマレコTVの高度な設定で書込みバッファのバッファサイズを大きくする
・ビデオコーデックの設定で圧縮効果の高いものを選択する
・ビデオコーデックそのものをもっと高圧縮なものへ替える
・HDDのスペックを上げる
・アマレコTVの録画設定のフレームレートの目安を下げる
500rec_fps.png

書き込む量が少ない(50MB/s程度)のに使用率が高いようならHDDが壊れているなどを疑う必要があります。
・別のドライブで録画する

まずは、書込みバッファの使用率が低くなるようにするにはどうしたら良いかを考えてください。
ここを改善できないとどうにもなりません。

(3) CPUステータスを確認する
・999%となっていたらCPUのスペック不足です。 4へ
・50%以下なら問題ありません。5へ

(4) CPUステータスが999%となっていたらCPUのスペック不足です。
・ビデオコーデックの設定でもっと高速な処理を選択する
・ビデオコーデックがマルチスレッドに対応しているならその設定を見直す
・ビデオコーデックそのものを高速なものに替える
・アマレコTVの録画設定のフレームレートの目安を下げる
・CPUのアップグレード

(5) Dropステータスを確認します。
Dropが0なら問題ありません。
Dropが1以上になるならどこか問題があります。もう一度1から確認してください。

(+)と(-)は環境にもよりますが1分に1くらいのカウントアップはしょうがないかも知れません。
ちなみにキャプチャするビデオ信号が60Hzで、ビデオキャプチャカードの設定が59.94fpsと設定に食い違いがあると、
約16秒毎に1フレーム誤差が生じるので、16秒ごとに(+)か(-)がカウントアップします。


4.高度な設定
録画フローに関する設定はアマレコTV 4の高度な設定にある録画詳細設定で行えます。
501adv.png
書込みバッファ:フロー6の書込みバッファの量を設定します。
書込みブロック:フロー7のまとめて書き出すデータサイズ 設定値が8MBなら書込みバッファに8MB以上データが溜まっていたら8MBずつファイルへ書き出します。
リングバッファサイズ:フロー4のリングバッファの量を設定します。




アマレコTV 4 Intensity Pro 4K RGBキャプチャ対応

現行のアマレコTVでIntensity Pro 4Kを使ってRGBキャプチャするとカラーフォーマットが対応せず録画できなかったり、プレビュー映像が上下反転するなどで上手く使えませんでした。

アマレコTV 4はIntensity Pro 4KのRGBキャプチャにも対応するので、YUVだけでなくRGBによる録画やプレビューが可能となります。
main_2016020519510358d.png



Intensity Pro 4Kではビデオソースフィルタ(アマレコTVで言うところのキャプチャデバイス)が2つ登録されて、使えるカラーフォーマットが多少異なります。
・Blackmagic WDM Capture   YUV10bit  YUV8bit  RGB10bit  RGB8bit
・Decklink Video/Audio capture  YUV10bit  YUV8bit  RGB10bit

Blackmagic WDM Capture
settei_wdm.png

Blackmagic WDM Captureの場合RGB32(RGB 8bit)またはR210(RGB 10bit)でキャプチャできます。ここではRGB32(RGB 8bit)の場合を説明します。
R210については後に紹介するDecklink Video Captureと(アマレコTV的には)同じです。
なお、YUV系に関しては現行のアマレコTVと同じですのでこの記事では省略します。

graph_wdm.png

具体的な動作としてはアルファチャネル付のARGB(内容はRGB32と同じ)としてアマレコTVのカスタムフィルタに渡されるので、サブタイプをRGB32へ書き換えることで対応しました。
フレームデータの内容はおそらく同じなのでヘッダ情報だけ書き換えます。余計な変換処理はアマレコTVの方では行っていません。



Decklink Video/Audio capture
settei_decklink.png

こちらはRGB32(RGB 8bit)が使えません。R210(RGB 10bit)専用となります。
YUV系に関しては現行のアマレコTVと同じですのでこの記事では省略します。


graph_decklink.png

R210(RGB 10bit)をAVI DecompressorがRGB32(RGB 8bit)へ変換して動作します。
従って、プレビューに表示される内容も、録画もRGB 8bitのクオリティとなります。


どっち使ったらいいの?
Decklink Video/Audio captureの方は確実に10bit-8bit変換が行われるのでビデオ信号が8bitだった場合、この処理が無駄と言えます。
同様のケースでは、Blackmagic WDM Captureを使った方が無駄がなく無難に見えますが、ビデオソースフィルタの内部で変換処理を行っているかもしれないので、結局何とも言えません。
どちらも同じように使えるので、どっちでもいいのかなと思います。
とはいえ、両方について説明したり、両方で動作確認するなどは面倒なので、特に根拠はないけど私が使うのはDecklink Video/Audio captureです。





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

次回は新デスクトップキャプチャについて紹介しますと言いましたが、その前にAviUtl+x264guiなどで再エンコードする際の音声処理に対する高速エンコード支援の効果がどの程度あるのかテストしたので紹介します。

なお、今回のテストはあくまで一例です、使い方によって効果は変わってきますのでその点はご注意ください。
特に今回はHDDを使ってテストしましたが、SSDだともっと効果が薄くなると思われます。他にも画像サイズやフレームレート、PC性能によっても効果の割合が変わってきます。


1.テスト方法
アマレコTVで1時間程度録画したビデオファイルをAviUtlとx264guiを使って再エンコードするのにかかる時間を比較し、どの程度エンコード時間を短縮できるかみます。

2.主な条件
CPU:       Intel Core i7-4770 @ 3.40GHz
録画HDD:    SEAGATE 4TB SATA600 (ST4000DM000)
映像:       1280x720 YUY2 29.97fps AMV4 DY3
音声:       48000Hz 16bit 2ch PCM
エンコード設定: スクリーンショット参照
AviUtl入力プラグイン: AviUtl同梱のAVI/AVI2 File Reader

3.結果

(1) 現行のアマレコTV Ver3で録画した場合
amarectv v3 200ms

(2) アマレコTV 4を使ってオーディオブロックサイズをアマレコTV Ver3と同じ200msに設定した場合
amarectv v4 200ms

(3) アマレコTV 4を使ってオーディオブロックサイズを大きく(10,000ms)設定した場合
amarectv v4 10000ms

settei_2016020322445145f.png

 アマレコTVオーディオ
ブロックサイズ
1st pass2nd pass 映像
エンコード

エンコード
総エンコード
1Ver3200ms9分46秒19分17秒19分03秒4分37秒33分40秒
2Ver4200ms9分50秒18分57秒18分47秒4分56秒33分43秒
3Ver410,000ms9分34秒19分14秒18分48秒2分06秒30分54秒
※ 各数値はx264guiのコンソールに表示される値から読み取っています。
※ 映像エンコード時間は1stと2nd passの合計です。
※ 音エンコード時間は総エンコード時間から映像エンコード時間を引いた値です。厳密には音のエンコード時間のほかにmux処理など他の処理の時間も含まれますが、大半が音のエンコード時間です。


4.考察
映像のエンコード時間は3パターン全てにおいてほぼ同じ約19分となっています。

音のエンコード時間はオーディオブロックサイズが200msの場合はアマレコTVのバージョンと関係なく
ほぼ同じエンコード時間であることがわかります。

オーディオブロックサイズを50倍の10,000ms(約10秒)としオーディオデータをまとめてビデオファイルに保存するとエンコード時間が半分以下に短縮できています。
総エンコード時間でみても約2分40秒 (約8%)短縮できています。



5.注意点
・この効果はランダムアクセス性能の悪いHDDの特性を改善することにより得ています。
ランダムアクセス性能に優れたSSDを使って録画した場合の効果は薄くなると思われます。
・x264guiの設定により映像と音声を同時にエンコードした場合は効果が得られません。
・オーディオブロックサイズを大きくし過ぎると、対応できないアプリケーションがあるかもしれません。
・基本的にオーディオブロックサイズを大きくしてもデメリットは無いですが、効果はある程度で頭打ちになります。それ以上大きくするメリットもありませんので、目安としては10秒程度と思ってください。
・インターリーブの方が良いんじゃないの?イメージだけで語るとインターリーブも良い結果がでそうですが実態を考えると結局ランダムアクセスになってしまうケースがありそうなので何とも言えないです。


2月公開予定 アマレコTV 4シリーズ

アマレコTVは64bit化及びWindows8への対応などにより一から作り直すこととなりました。
一年ほど前からコツコツ制作していましたが、全ての機能を実装するにはまだまだ時間がかかりますので、3段階に分けて公開していこうと思います。
今回はその第一段としてプレビュー、録画、デスクトップキャプチャと言った基本機能が中心です。

・第一段階(2月公開予定)
プレビュー、新録画エンジン、新デスクトップキャプチャ、デインターレース、新Core Audio レンダラー
アマステ、ライブ機能(簡易版)、プリセット、起動オプション、モノラル・ステレオ変換

・第二段階
ライブ機能(完全版)、オーディオミキサー

・第三段階(たぶん来年)
リプレイ機能、ラインダブラー、画面回転

・廃止項目
HWデインターレース、GV-USBおよびSC500に対する色補正、CDU(Capture Device Utility)
信号検出、アロケーターチェック、nullフレーム録画、アナログチューナー機能


アマミキ!はアマレコTVから独立した単体のアプリケーションとして公開する予定です(時期未定)。
また、デスクトップキャプチャで使ったDesktop Duplication APIの手ごたえがとても良かったので、スーパーアマレココも制作する予定です(時期未定)。

第一段階のあとはアマミキ!およびスーパーアマレココを優先しようと思いますので、アマレコTV 4の完全版は来年になると思われます。当面は多機能な現行のアマレコTV Ver3系と基本機能のみのアマレコTV Ver4といった体制になりますので、実況動画を作りたいとか縦スクロールシューティングをやるんだって人はVer3系を、普通にプレビューできればいいとか録画さえできればいいという人はVer4を使っていただければと思います。

メイン画面
main.png
見た目や使い勝手の変更はありません。

設定画面(高度な設定)
config.png
設定画面もほとんど変更ありませんが、録画エンジンが刷新されますので詳細設定などに変更が加わります。

次回から変更内容の詳細を紹介していきます。


アマレコTV質問★要望★不具合報告・コーナー その2

【過去のコメント】
アマレコTV質問★要望★不具合報告・コーナー その1



アマレコTVに関する質問、要望、不具合報告などをコメント欄に投稿してください。
個人情報が含まれる場合やディープな内容の場合はメールでお願い致します。
メールアドレスはアマレコTVの設定画面のAboutを参照して下さい。

【注意事項】
質問にレス(返信)が付いた場合は必ずその結果を報告して下さい。
結果報告は同じ問題を抱えている他の利用者にとって有益な情報となりますのでご協力をお願いいたします。

質問する前に取扱説明書を必ず見て下さい。
取扱説明書の場所はreadme.txtに記載されています。

同じ質問が無いか必ず検索して下さい。
検索サイトで検索すれば大抵の事がわかる時代です。このブログのコメント欄も検索サイトで検索すればでてきますのでうまく活用して下さい。

アマレコTVがうまく動作するかどうかはビデオキャプチャカードに大きく依存します。
うまくいかない場合は必ずアマレコTVのヘルプにある「動作確認の仕方」をみて、ビデオキャプチャカードが正常に動作しているかどうかを確認してください。
ビデオキャプチャカードが正常に動作しているかどうか不明な問い合わせについてはお答えできません。

動作報告をしていただける場合は
動作確認の結果うまく動作する場合は簡単な報告で結構ですが、うまく動作しない場合は原因を特定してから報告するようお願い致します。
原因を特定できない場合は動作報告ではなく質問の形を取って下さい。

要望について
何をするための機能なのか、なぜその機能が必要なのか、具体的な使用例の3項目を必ず明記してください。
相手に必要性が伝わらないと始まりませんので上手くアピールして頂ければと思います。

質問、不具合報告、動作報告の場合は
右クリックして表示されるメニューから「設定をクリップボードにコピー」を実行して設定情報も合わせてご連絡下さい。
アマレコTV 設定をクリップボードにコピー
APP / OS = AmaRecTV Ver 1.15 / Windows 2000 / graph(0)
Device = krkr Benchi
Format = *w= 640, h= 480, fps=29.97, fcc=YUY2, bit=16
Crossbar = Composite /
Tuner / CLK = / 1
AudioDevice = Vinyl AC'97 Audio (WAVE)
AudioInput = ライン入力
AudioFormat = *sample=48000, bit=16, ch= 2
Last Code = 0:
Last HRESULT=00000000:この操作を正しく終了しました。


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

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

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



ホームページ
カテゴリ
最新コメント
カレンダー
04 | 2017/05 | 06
- 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 LEGO 解説動画 組み換え 4K レゴ 可変再生速度 遅延 XL2420T 液晶モニター アマステ 120Hz 倍速液晶 GV-USB2 Intensity AMV2MT PS4 Pro デインターレース ベンチマーク RDT233WX-Z ffmpeg SD-USB2CAP4 GV-USB 32ZP2 31024 31006 designs VideoKeeper2 AVX XCAPTURE-1 RGBキャプチャ Alternate RYZEN Play Shadow AtomでHDキャプチャ OBS HT ハイパースレッディングテクノロジー インストール DirectShowFilter MPC Livetube 録画 オーバーレイ XCapture-1 Kabelake キャプチャーツール NVEnc 音ズレ 31021 フィギュア シンクライアント イベント プレビュー 倍速駆動 ゲームスムーズモード MonsterXU3.0R 音遅延 モノステ 液晶テレビ 32ZP32 ZP3 REGZA 額縁遅延 SSE リプレイ機能 DC-HD1 電源オプション 倍速補完処理 HDCP HDMI Haswell 擬似NTSCキャプチャ IntensityPro LameACM MP3 SD-USB2CUP4 QSV 

ブログ内検索
月別アーカイブ
アマレココに関するリンク
お世話になっているソフトのリンク
RSSリンクの表示
管理画面
  • 管理画面
  • 上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。