スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 高圧縮モードも部分適用 | トップページ | 動きベクトルの圧縮形式 »

ここでちょっとコード整理

今は、Mirror-DTCの次バージョンを開発中で、今回の目玉はDesktop Duplication APIの採用による高FPSキャプチャーの予定だったのだが、新規にストリーミング圧縮も真面目に実装してしまったので、Windows7環境がまだ多い現状では、こちらが目玉になるかもしれない。

Desktop Duplication APIというのは、Windows8で実装されたモノなのでWindows7では使えないのだが、Windows7では、Aeroの停止が行えるので、停止すれば、現行版でも高FPSキャプチャーは行える。

もっとも、現行版の映像圧縮ルーチンは次バージョンと比較すると低速なので、60FPSキャプチャーが行えてもフルHD動画の全画面再生なんかについては、エンコーダーネックで転送できないケースも多い筈だ。

これに対して、次バージョンは高速化されているので、映像圧縮については、多くの場合、フルHD動画の全画面再生状況も60FPSで転送可能になる筈だ。

ただし、デスクトップ圧縮については、今回、特に変更は行っていないので、現行版でギガビットイーサー接続してネットワーク帯域が問題になっていない場合には、次バージョンも、大差ない感じになる筈ではある。

と、いう事で、ネットワーク帯域が問題にならない場合には、次バージョンでも、エンコーダー負荷が軽く、最高画質選択時には、画質劣化も殆ど無いデスクトップ圧縮が最強の圧縮形式になる訳なのだが、ちょっとリモートマシンで動画を見ようとするとネットワーク帯域の500Mbpsが使われてしまう、というのも、勿体ない話ではある筈だ。

なので、現行版の使い方としては、やはり、普通に操作する分にはデスクトップ圧縮を選択し、動画を真面目に見ようとする場合には、映像圧縮に切り替える、というのが効率的な使い方になる訳なのだが、前述の様に、現行版では映像圧縮の性能がイマイチだったので、全画面動画の60FPS視聴には無理があったのだが、次バージョンでは、この様な使い方も現実的になる筈だ。

で、問題は、今回追加するストリーミング圧縮で、WiFi接続時の様に、ネットワーク帯域がボトルネックとなる場合には、この圧縮形式が断然有利だ。

何故なら、動画の圧縮率については現行版の映像圧縮(高圧縮)以上あり、かつ、デスクトップやテキストウインドウ等の動きが無い画像については映像圧縮(高品質)レベルの画質が確保され、従来の映像圧縮の弱点だったウインドウ移動やスクロール時の圧縮率も、デスクトップ圧縮を凌駕する格好になったからだ。

上記だけを見ていると、もう映像圧縮は必要なさそうなのだが、にも関わらず、次バージョンにも映像圧縮は残す。

これは何故なのか、というと、ストリーミング圧縮のエンコード負荷は映像圧縮よりも高いからだ。

つまり、例えば、480p動画を視聴しようとする場合には、現行の映像圧縮でも、WiFiが11nなら十分にネットワーク帯域は足りるので、この様な場合には、より処理負荷が軽い映像圧縮を選択した方が電力効率は良くなるし、より低性能なサーバーでも問題なく使える訳だ。

と、いう事で、ストリーミング圧縮のオーバーヘッドがデスクトップ圧縮以下になれば、最強の圧縮形式と言える様になるのだが、エンコード方式上、それは無理な話だ。

もっとも、現行版の映像圧縮と次バージョンのそれは方式的な違いは無いのだが、処理性能は次バージョンの方が高くなっている。その違いは、コーディングレベルでの最適化がより進んでいるからなのだが、同様の話はストリーミング圧縮についても言える筈な訳だ。

なので、作者的には、2,3日かけて、色々と詳細機能を追加した関係で、ジワジワと重くなってきているストリーミング圧縮についても、コード整理も兼ねて、もう少し最適化を進めておこうか、と、思っている訳だ。

ちなみに、ストリーミング圧縮が重いのはMirror-DTCの他コーデックに対しての話だ。

つまり、Mirror-DTCというのは元々軽さが売りのリモートデスクトップソフトだったので、作者が知る範囲では、軽さという点については、巷には敵はいない。

なので、Mirror-DTCとしては、敵は過去の自分になっている訳なのだが、巷に敵がいないのなら、何もそこまでしなくても、という気がしないでもない今日この頃ではある。

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

Mirror-DTC

Mirror-DTC

(2016/05/04追記)

« 高圧縮モードも部分適用 | トップページ | 動きベクトルの圧縮形式 »

トラックバック

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

この記事へのトラックバック一覧です: ここでちょっとコード整理:

« 高圧縮モードも部分適用 | トップページ | 動きベクトルの圧縮形式 »

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