スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« グレート・マジンガー? | トップページ | MJPEGを残しDCT+を削除 »

フルHDの60FPSキャプチャーも余裕

今は、AmuseGraphicsのバージョンアップ開発を行っていて、本体の変更は、一応、完了したので、昨日書いた様に、今日は、AG-デスクトップレコーダーにDesktop Duplication APIを使ったキャプチャー機能を追加していたのだが、Mac mini Late2014では表題の通りだ。

Desktop Duplication APIというのは、Windows8で追加されたAPIなのだが、作者的には使った事が無かったにも関わらず、既視感がある。

これは、Mirror-DTCのOS X用ネイティブ版を開発した時に、OS X 10.8で追加されたキャプチャー用APIを使ったのだが、それと似たような感じになっているからだ。

もっとも、コーディングレベルで見ると、全然違うのだが、構造的に、GPU上にあるデスクトップ画面データを自分用の領域にコピーし、それをCPU空間に持ってくる、という点では、全く同じ作りになっている訳だ。

で、OS X 10.8というのは、2012年の7月リリースで、Windows8は、2012年の8月リリースなので、ほぼ同時期に、異なる二つのOSで、同様のキャプチャーAPIが追加されていた訳だ。

で、作者的には、OS X用のキャプチャーAPIは、OS X用Mirror-DTCのネイティブ版の初版で初めて使ったのだが、そのリリースは2014年11月だった。

そして、Windows用については、今回、初めて、AG-デスクトップレコーダーで使った訳なので、この機能がWindowsに搭載されてから、実に、3年以上は使ってこなかった事になる。

何故、使ってこなかったのか、というと、別段、必要性を感じなかったからなのだが、最近は、YouTubeの動画にも60FPSでアップされるモノが増えてきたので、60FPSキャプチャー出来るのなら使いたいなあ、と、思う様になった訳だ。

まあ、ゲーム画面のキャプチャーをしたい人なんかは、昔から60FPSに拘りがあったかもしれないのだが、作者的には、別段、そういう拘りはなかったので、480pが30FPSでキャプチャーできれば実用上は十分、という感じだった訳だ。

と、いう事で、今回、AG-デスクトップレコーダー Ver1.3.0のプレミアム機能として実装してみた訳なのだが、予想以上に快適だ。

具体的には、Mac mini Late2014では、コーデックにQSV-MP4を選択すると、フルHD画面のキャプチャーを60FPS指定しても、CPU使用率は50%程度にしかならない。

AGM形式でリアルタイムエンコードした場合には、QSV-MP4よりもCPU負荷が2倍くらいかかるので、ギリギリな感じになるのだが、バッファリングエンコードを行えば、QSV-MP4と同等のCPU負荷になるので、やはり、余裕でキャプチャー出来る。

当然の事ながら、上記の状況で、キャプチャーデータのフレーム落ちは殆ど無いので、実質的な60FPSキャプチャーが行えている。

で、より非力なX202Eでも試してみたのだが、X202Eの画面解像度は1366x768なので、その全画面キャプチャーを60FPSでやってみた所、QSV-MP4では50FPS程度が限界だったのだが、バッファリングエンコードを行えば、X202Eでも、1366x768の実質的な60FPSキャプチャーが行えた。

ただし、作者のX202EのストレージはSSDに換装してあるので、バッファリングエンコード時にも、HDDネックが発生しない、というのが条件になっている。

と、いう事で、作者的には、Windows8.1のMac mini Late2014と、Windows10のX202Eで、気軽に全画面の60FPSキャプチャーが行える様になった訳なのだが、当然の事ながら、480pの30FPSキャプチャーなら、よりCPU負荷がかからずに行える様になっている。

ちなみに、昨日書いた様に、Desktop Duplication APIを使うと、キャプチャー処理がDWMに干渉しなくなる感じなので、現行版では、キャプチャー中には同時に使用しているソフトの画面表示が微妙に引っかかる感じになる事があるのだが、そういう事も無くなる。

このため、より快適に感じる訳なのだが、もう一つ、現行版とは異なる点があって、それは、キャプチャー中にもマウスカーソルが点滅しない、という点だ。

つまり、Desktop Duplication APIをリモートデスクトップソフトのサーバー側で使うと、そのマシンを使っているローカルユーザーはデスクトップ画面がキャプチャーされている事を認識出来なくなる可能性がある。

と、いう事なので、Desktop Duplication APIをMirror-DTCサーバーに適用するのは如何なものか、という気もしないではないのだが、世の中的には、遠隔操作用ソフトとしては、VNCが使われるのが普通で、YouTubeで調べてみた所、既に、Desktop Duplication APIを使ったVNCは存在する様だ。

このため、作者的には、遠慮する必要もなさそうなので、近い将来、Desktop Duplication APIはMirror-DTCでも使う事にする筈だ。

もっとも、現状では、特に必要性は感じていないので、Mirror-DTCに適用するのは、その内、という事になるだろう。

= この記事に関連する公開中ソフト =

AmuseGraphics

AmuseGraphics

(2016/05/04追加)

« グレート・マジンガー? | トップページ | MJPEGを残しDCT+を削除 »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/534482/62834493

この記事へのトラックバック一覧です: フルHDの60FPSキャプチャーも余裕:

« グレート・マジンガー? | トップページ | MJPEGを残しDCT+を削除 »

2017年10月
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        

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    Cookieを無効にする設定およびAdsenseに関する詳細については、以下のリンクを参照下さい。

    広告 - ポリシーと規約 - Google