スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« それが合法なら苦労はない | トップページ | Macの方が便利ではある »

収録モニターを追加

今はTiExtenderの開発フェーズで、一応、予定していた機能の実装は終わった。しかし、Windows環境と同様のウインドウ録画を可能にしたものの、録画映像をモニタリングする手段は無く、このままでは心許ないので、モニター機能を追加する。

追加する収録モニターというのは、基本的には、録画用エンコーダーに入って来た入力映像を画面表示する、という単純なモノなのだが、モニターで確認したい項目としては、録画映像の領域とともに、そのフレームレートもある訳だ。

なので、収録モニターの画面表示は高速である必要があるのだが、作者的には、既に、Mirror-DTCクライアント/AG-ムービーカッター/AGMPlayerで、高速な画面描画は行なって来ている。

このため、それらで使用した処理コードを持って来れば、高速な画面描画は簡単に実現できたのだが、今年の4月に購入したMacBook Pro 15インチ 2016モデルにはGPUが2種類搭載されていて、通常時は省エネなCPU内蔵GPUが使われ、高速描画が必要なアプリが動作している状況では外部GPUが使われる様になっている。

で、前述のMirror-DTCクライアント〜AGMPlayerでは、高速な画面描画を実現するために、OpenGLを使用しているのだが、多分、OpenGLを使用すると、それだけで、MacBook Pro 15インチ 2016モデルでは、前述の外部GPUが使われる格好になってしまうみたいなのだ。

何故なら、作者製のmacOS用ソフトとしては、Nostalgic UFO Battlerもあるのだが、このソフトはOpenGLを使用しているゲームソフトではあるものの、全然、重くは無いので、外部GPUがないMac mini Late2014でも快適に遊べるし、もっと低性能なCPU内蔵GPUしか搭載されていないWindows用ノートPCなんかでも、問題なく遊べている。

にも関わらず、Nostalgic UFO Battlerも、MacBook Pro 15インチ 2016モデルで起動すると、アクティビティモニタの「高性能GPU必要」の項目が「はい」になってしまう訳だ。

その結果としては、Nostalgic UFO Battlerを起動するだけで、グラフィックカードは「統合」から「高パフォーマンス」に切り替わってしまう。

と、言う事で、Nostalgic UFO Battlerは兎も角として、作者的には、基本的には、単なる動画プレイヤーでしかないAGMPlayerについても、それを起動するだけで、「統合」グラフィックスから「高パフォーマンス」に切り替わってしまうのは気になっていたのだが、AGMPlayerは、まだ、通常アプリなので、問題になるのは起動している間だけだ。

これに対して、TiExtenderというのは、常時起動しているソフトになる訳なので、これが「高性能GPU必要」と、判定されてしまうと、致命的な訳だ。

で、現状のTiExtenderでは、「拡大鏡」を利用すると、OpenGL描画が行われるので、そのタイミングから「高性能GPU必要」という事になって、一旦、その状態になると、元の状態には戻らないみたいで、「拡大鏡」の表示をヤメても、TiExtenderを立ち上げ直さない限り、「統合」グラフィックスには戻ってくれない。

と、言う事なので、作者的には、常時起動アプリである所のTiExtenderでは、極力、OpenGLは使いたく無かったので、最初、追加する収録モニターは、通常のCoreGraphics関数を使って画面描画してみた。

しかし、その結果としては、数十FPS程度の画面描画は出来たものの、この表示を行う事で、画面収録自体のフレームレートが低下するという問題が起きてしまった訳だ。

なので、致し方なく、画面収録についても、OpenGL描画に切り替えたのだが、調べてみた所、OpenGL描画を行なっても、「高性能GPU必要」と判定されなくする方法がある事が判った。

具体的には、以下のAppleのページに記載があるのだが、その具体的な方法としては、plistに項目を一つ追加するだけだ。

Allowing OpenGL applications to utilize the integrated GPU

なので、実際にやってみた所、TiExtenderでは、OpenGLを使用した「拡大鏡」や今回追加する「収録モニター」表示中にも、「高性能GPU必要」とは判定されなくなった。

このため、作者的には、今回、安心してOpenGLを使用する「収録モニター」も搭載可能になったのだが、上記のplistへの項目追加は、既存ソフトに対しても、テキストエディタでplistを編集すればできるので、やってみた所、AGMPlayerとAG-ムービーカッターについても、「統合」グラフィックスを使わせる事が出来る様になった。

ただし、「Nostalgic UFO Battler」と「Mirror-DTC Client」については、同一のplist項目を追加しても「高性能GPU必要」判定のままだった。

多分、これらについては、常時、OpenGL画面の更新を行うので、「高性能GPU必要」と判定されたのだと思われる。

つまり、上記のplist項目を追加しても、必ずしも「統合」グラフィックを使用させる事が出来るとは限らない様なので、この点については注意が必要かもしれない。

« それが合法なら苦労はない | トップページ | Macの方が便利ではある »

トラックバック

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

この記事へのトラックバック一覧です: 収録モニターを追加:

« それが合法なら苦労はない | トップページ | Macの方が便利ではある »

2018年9月
            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            

広告

プライバシーポリシー

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

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

    収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。

    ポリシーと規約 - Google