スポンサーリンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 何とかなりそうな感触 | トップページ | Windows7のサポートが終了 »

ファイルセレクタも実装

今は、Ubuntu版AGMPlayer Ver1.4.1の開発フェーズで、とりあえず、「表示順の並べ替え」と「オーバーレイボタン」に続いて「ファイルセレクタ」機能も実装できた。ただし、まだ、AGMエンコーダーの改良等が残っている。

AGMPlayer Ver1.4.1は、まず最初にmacOS版を開発し、その後、Windows版を開発したのだが、Windows用のAmuseGraphics Ver1.4.1では、本体と付属ソフトの全てについて、AGMエンコーダーに対するコミットメモリ量の削減等を行っている。

このコミットメモリ量というのは、簡単に言うと、メモリをアロケーションするサイズで、例えば、100MB程度のメモリを使用するかなあ、という時に、余裕を見て500MBをアロケートすると、実メモリとして使用されるのは100MB程度になるのだが、仮想メモリ空間では、500MBの領域が確保される事になる。

で、普通に鑑みれば、64BitOSの仮想記憶空間というのは、アドレスが64Bitで指定可能なので、膨大な領域が使えそうなモノなのだが、実際には、PCに実装されている実メモリ+スワップファイルの容量分しか使えない。

なので、上記の様に、実際には使わなくても、大きめにメモリを確保してしまうと、実メモリ+スワップファイルの残容量を圧迫してしまうので、他ソフト等も含めて、残ったメモリ空間では処理が行えず、クラッシュに至る事も、まま、ある訳だ。

もっとも、旧版のAGMエンコーダーのコミットメモリ量は多い、とはいっても、フルHD程度の動画のエンコードを行う程度なら、大した量にもならないので、特に気にしていなかった訳だ。

しかし、巷では、4k動画の様に、より解像度が高い動画が扱われる事も増えてきたので、Ver1.4.1では、上記した様な、余裕はなるだけ切り詰める事で、コミットメモリ量を削減しておく事にした訳だ。

と、いう事なので、Ubuntu版でも、Windows版に適用したのと同様のコミットメモリ量の削減施策を行う予定なのだが、Windows版では、同時に、高並列エンコードのオプション化も行った。

この高並列エンコードというのは、AGMエンコーダーの映像処理部とコード処理部を分割して動作させる事で、並列処理に向かないコード処理部についても、マルチスレッド処理可能にするエンコード方式になる。

具体的には、映像処理部については、エンコード対象の画像を分割して処理する事で簡単にマルチスレッド化できるので、そうするのだが、その結果として出力されたデータのコード化については、基本的には逐次処理が必要なので、簡単にはマルチスレッド化できない。なので、複数フレーム分のコード化処理を同時動作させる事で、マルチスレッド化している。

つまり、エンコード時に、逐次処理=シングルスレッド動作する部分は殆ど存在しないので、マルチコアCPU環境では、CPU性能を余すことなく利用可能なのだが、各種処理が独立動作する事になるため、ワークメモリをより多く使う必要が生じたりもするので、処理効率的には、ローカル処理よりも悪くなる。

なので、例えば、AG-デスクトップレコーダーでのリアルタイム録画時なんかについては、AGMエンコーダーに必要とされる処理性能は画面キャプチャーFPS以上のエンコードFPSがあれば良い訳なので、高並列エンコードを使わなくても、処理性能が十分な場合があり、そういった場合には、高並列エンコードを行わない方が、CPU性能に余力を残せる分、得、という事になる訳だ。

このため、Windows用AmuseGraphics Ver1.4.1では、高並列エンコードをオプション化したのだが、AGMPlayerの場合、デフォルト設定では、変換処理でAGMエンコーダーが使われるのだが、この場合には、高並列エンコードを使用するのがお勧めだ。

何故なら、今時のPCではマルチコアCPUが使われているので、その方が、処理が早く終わるからなのだが、この場合、CPU使用率は高くなるので、PCのファンが全速回転して煩くなる場合もあるので、そういう場合には、高並列エンコードを行わない様にすれば、処理時間は少しかかる様になるのだが、ファンの音は静かになるかもしれない。

と、いう事で、AGMPlayerの場合、AG-デスクトップレコーダーと比べれば、高並列エンコードのオプション化は、さほど重要でもないのだが、Windows版では、付属ソフトと本体の全てでオプション化してあるので、Ubuntu版でもオプション化する方向だ。

« 何とかなりそうな感触 | トップページ | Windows7のサポートが終了 »

2020年2月
            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

広告

プライバシーポリシー

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

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

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

    ポリシーと規約 - Google