スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 「絶望の呪文」=「しっかり」 | トップページ | 窓の杜大賞は銅賞 »

フルHD-30FPSなら余裕だが

今は、Mirror-DTCの次バージョンを開発していて、手持ちネタによる改良は、基本的には、終わっている。で、Desktop Duplication APIを採用し、DCT変換を高速化したので、映像圧縮では、Mac mini Late2014をサーバーにすれば、有線では、フルHD-30FPSは余裕なのだが。

余裕、と、書いている割りには、色々と条件が付いているのだが、これは、まず、Mirror-DTCの映像圧縮の圧縮率では、フルHD-30FPSでも、50Mbps程度のネットワーク帯域が必要になるので、作者環境である所の11nのWiFi接続では、フルHDの30FPS転送でも、ギリギリになる訳だ。

また、デスクトップ圧縮の場合、エンコード処理がマルチスレッド化されていないので、例え、有線接続してネットワーク帯域を確保しても、今度は、エンコード性能ネックで、30FPS転送くらいがギリギリになる訳だ。

もっとも、今日の時点では、有線接続で映像圧縮を使ったとしても、フルHD画面の全画面に動画を流している映像を転送しようとすると、40FPS程度でしか転送できていない。

ただし、画面の半分程度の大きさのウインドウ表示で動画を流している状況なら、60FPSで転送できている。

と、いう事で、何故、AG-デスクトップレコーダーなら、フルHDの60FPS録画が出来るのに、Mirror-DTCでは、同じ画面が転送できないのか、というと、まだ、詳細は見ていないのだが、サーバー側のCPU使用率が50%で頭打ちになっているので、マルチスレッド化していない部分の処理がボトルネックになっている事は間違いなさそうだ。

で、次のMirror-DTCのバージョン番号は、長らく使ってきたVer1.2.3.xではなく、Ver1.2.4にする、と、書いてあるのだが、これは、転送プロトコルを変更しようとしているからだ。

つまり、従来のMirror-DTCと同様に、Ver1.2.4はVer1.2.3.xとも接続は出来る様にするのだが、本当の実力を発揮させる為には、クライアントとサーバーが両方共Ver1.2.4でなければならない格好にする事にしている訳だ。

これは何故なのか、というと、現行版のMirror-DTCというのは、フルHD-60FPS転送なんてのは想定していないので、例え、Desktop Duplication APIを使ってキャプチャー性能を向上できたとしても、その後の処理がボトルネックになる、と、最初から思っていたからだ。

と、いう事なので、今回は、エンコード方式としてDCT+を実装する所までは想定していないので、フルHD-60FPS転送する為には、有線接続は必須になる筈なのだが、その点を除けば、何とかなる様にしようかなあ、と、思っている。

ただし、デスクトップ圧縮については、そういう用途で使うモノではないので、映像圧縮を使う事も、多分、前提にする。

で、今日の時点では、40FPSが限界なのだが、前述の様に、これは、サーバー側のCPU使用率が50%で頭打ちになっているからだ。

つまり、マルチスレッド動作していない部分がボトルネックになっている訳なのだが、その最も大きな要因は、符号化と暗号化処理になる。

なので、暗号化をやめれば、それだけで60FPSにも届くかもしれないのだが、それだけでは足りない場合には、符号化についても、見直しをする事になるかもしれない。

いずれにしても、大した作業量にはならない筈なので、明日には、次バージョンで、真面目なフルHD-60FPS転送が可能なのかどうかは判る事になる筈ではある。

ちなみに、暗号化しない転送については、今日の時点で大まかな構造は実装できている。

具体的には、サーバーはクライアントからの要求があり、かつ、サーバー側がそれを許可していた場合に限り、非暗号化転送を行うのだが、従来版との接続時には、サーバーかクライアントのどちらかが、未対応なので、暗号化転送が行われる。

何となく、雰囲気的には逆でしょ? という気もしないではないのだが、現行版までは、何も考えなくても暗号化されていた訳なので、非暗号化転送する場合には、ユーザーの許可を求める格好にしておかないとマズそうな気がする訳だ。

もっとも、今回は同時開発はしないのだが、その内、Google Playに置ける格好のAndroid版Mirror-DTCと、それ用のサーバーも、開発する事になる筈で、それらについては、最初から、非暗号化転送のみをサポートする格好になる予定だ。

その時には、サーバー側については、多分、DTCService相当のモノのみを英語版として開発する筈なのだが、クライアント側については、UIのトップ画面をAGMPlayerみたいにして、接続サーバー用のアイコンを登録しておく格好にしようと思っている。

これは何故なのか、というと、どの道、有料ソフトには出来ないので、そういう画面を作成しておいて、AGMPlayerの様に、広告を埋め込む必要があるからだ。

なので、現行のAndroid版については、どうしようかなあ、と、思っている段階なのだが、とりあえず、暗号化付きなら、現行版でも、次バージョンのサーバーとも接続できる筈ではある。

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

Mirror-DTC

Mirror-DTC

(2016/05/04追記)

« 「絶望の呪文」=「しっかり」 | トップページ | 窓の杜大賞は銅賞 »

トラックバック

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

この記事へのトラックバック一覧です: フルHD-30FPSなら余裕だが:

« 「絶望の呪文」=「しっかり」 | トップページ | 窓の杜大賞は銅賞 »

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