スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« Macの新製品が色々と | トップページ | 静止画は表示された »

再生系の実装に入った

今は、macOS用ネイティブ版AGMPlayerの開発フェーズで、ファイラー機能については動作する様になったので、次に、再生系機能を動作させようとしている。ローカルファイルの再生については、AG-ムービーカッターと同様でしかないのだが。

macOS用のAG-ムービーカッターでは、映像の再生にOpenGLを使っているのだが、これは、macOS用のMirror-DTCの映像表示用にOpenGLを使ったからだ。

それでは、何故、macOS用のMirror-DTCでOpenGLを使ったのか、というと、その前身である所のJava版でOpenGLを使ったからだ。

更に、それでは、何故、Java版Mirror-DTCでOpenGLを使ったのか、というと、初期バージョンでは、普通にJavaの画面描画用APIを使っていたのだが、それだと、特に表示の拡大/縮小を行う場合に、CPU負荷が大きくなってしまったからだ。

そして、Java版では、一般的なAPI以外に高速な画面描画が行う為の方法としては、JNIを使ってOpenGLを動作させる、みたいな事しかなかったので、結局、Java版Mirror-DTCの画面描画にはOpenGLを使用する事にした訳だ。

と、言う事で、macOS用のネイティブ版Mirror-DTCを開発する時には、既に、Java版用に確立されていたOpenGLによる画面描画ルーチンがあったので、画面描画用には、普通に、その処理ルーチンを使う格好にした。

そして、macOS用のAG-ムービーカッターを開発する時には、Mirror-DTC用の描画ルーチンを流用したので、やはり、映像表示用にはOpenGLを使う格好になった。

更に、今回は、macOS用のAGMPlayerを開発しているのだが、ここでも、やはり、AG-ムービーカッター用に使っていたOpenGLによる描画ルーチンを流用する格好にするつもりだ。

と、言う事なので、再生系についても、特に問題は無く、実装は可能なのだが、macOS用のネイティブ版としては、別の画面描画用APIの選択も可能だ。

なので、その内、そういうAPIに切り替える可能性はあるのだが、処理性能的には、OpenGLを使う現行の処理ルーチンで何ら問題はないので、そういった最適化の優先順位はかなり低いかもしれない。

ちなみに、4月に購入したMacBook Pro 15インチ 2016モデルでは、CPU内蔵GPUと外部GPUの二つのGPUが利用可能で、デフォルト設定では、通常はCPU内蔵GPUが使用され、より高速なGPUが必要と判断された場合にのみ、外部GPUが使われる設定になっている。

何故、そんな格好になっているのか、というと、CPU内蔵GPUを使っていた方が、バッテリ消費が少なくて済むから、の筈なのだが、作者の通常用途、つまり、ブラウザでネットを見たり動画を見たりする分には、外部GPUが使われる事はなかった。

それでは、作者的には、外部GPUは宝の持ち腐れなのか、というと、Parallelsを起動すると外部GPUが使われるので、多分、そんな事は無い筈なのだが、実は、Mirror-DTCクライアント/AG-ムービーカッターを動作させても、外部GPUが使われる。

それだけならまだしも、マトモなGPUが載っていない筈の2009年製CeleronノートPCである所のdynabook MX/33でも普通に遊べるNostalgic UFO Battlerを起動するだけでも、前述の外部GPUは使われてしまっている。

と、言う事で、多分、MacBook Proでは、OpenGLが使われているソフトを起動すると、それだけで、外部GPUが使われてしまう感じだ。

なので、機能的にも性能的にも、本質的には、OpenGLが必要でもないMac用のMirror-DTC/AG-ムービーカッター/AGMPlayerでは、バッテリ消費量を抑える為には、OpenGL以外の描画用APIを使った方が良さそうではある訳だ。

しかし、Mac専用の描画用APIを使ってしまうと、Ubuntu版やAndroid版と処理コードの共通化が出来なくなる、という問題も出てくる。

なので、もう暫くは、macOS用ソフトでも、OpenGLを使い続ける事になる筈なのだが、Windows版では、専用APIである所のDirect2Dを使っているし、前述の様に、MacBook Proでは、OpenGLを使ってしまうと、処理性能が必要ない筈の場合にも、外部GPUが使われてしまう感じなので、何とかする必要があるかなあ、と、思ったり思わなかったりもしてしまう今日この頃な訳だ。

« Macの新製品が色々と | トップページ | 静止画は表示された »

トラックバック

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

この記事へのトラックバック一覧です: 再生系の実装に入った:

« Macの新製品が色々と | トップページ | 静止画は表示された »

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