スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« その他の変更項目 | トップページ | ウインドウ表示のクリア化 »

自動デグレードの変更とか

今は、Mirror-DTCの次バージョンを開発中で、メイン項目である所のストリーミング圧縮については実装を完了した。なので、その他の項目を変更中なのだが、今日は昨日書かなかった自動デグレードとマウスカーソルの転送周期も変更した。両方共60FPS転送を踏まえての事だ。

まず、自動デグレードという機能は何のためにあるのか、というと、例えば、全画面動画再生状況なんかを転送する場合に、データ量が増えて転送されるフレームレートが低下するのを防止する為だ。

つまり、WiFi使用時なんかでは、画面の動きが少ない状況を転送する場合には、データ転送量が少ないので高フレームレートで転送可能でも、データ転送量が増えるとWiFiの帯域が足りなくなってフレームレートが落ちるので、それを防止する為に、自動的にキャプチャー画面を縮小してエンコードする事でデータ転送量を減らす格好にしてある訳だ。

もっとも、全画面動画の再生時には、予めフレームレートの低下を予想できるので、最初から手動で「画像」-「低画質」なんかを設定しておいても良い。

なので、実際の所、自動デグレードが有益なケースというのは、フレームレートの低下が一時的な場面に限られるかもしれない。例えば、細かいテキストが表示されているウインドウのスクロール時なんかはこれにあたる。

自動デグレードを有効にしておくと、スクロールが開始されると画面はボヤけるのだが、フレームレートの低下は抑えられ、スクロールを終了すると、自動的に元の解像度に戻る。

このため、自動デグレードは、WiFi接続時には便利な機能だったりする訳なのだが、WiFi接続が前提になるAndroid版Mirror-DTCクライアントには、この自動デグレードを有効にする設定は搭載しなかった。

これは何故なのか、というと、現行版の自動デグレード機能はデグレード/復帰判定が、様々な状況に依存し、ある意味、不安定だったので、Android版開発時には、将来的には、この機能を削除する方向で考えていたからだ。

で、今回、ストリーミング圧縮を追加したのだが、この圧縮を適用している状況で、現行の自動デグレード機能を有効にすると、デグレード/復帰が振動する格好になるケースが多々あった。

つまり、より不安定になったので、今回、自動デグレード機能は削除しようか、とも思ったのだが、現行版の自動デグレード自体は宜しくないものの、自動デグレードという機能自体は、理屈の上では、望ましい機能なので、今回、デグレード/復帰判定の方式を変更する事で、不安定さを無くして搭載を継続する事にした訳だ。

具体的には、現行版では、転送データ量に着目してデグレード判定を行っていたのだが、今回の変更で、キャプチャー速度に対する転送速度の低下をデグレード基準にした。

なので、現行版だと、CPU性能やネットワーク帯域に余裕がある場合にも、画面変化が激しい場合には、デグレードが発動したのだが、今回の方式では、そういう場合には、発動しない。

逆に、CPU性能が悪くてエンコード速度が足りずにフレームレート低下が発生している場合、現行版ではデグレードは発動しなかったのだが、今回の方式では発動する。

つまり、今回の方式は、より、フレームレートの低下を防止する、という目的に即した格好になっているのだが、デグレードからの復帰タイミングは読みづらいので、画面変化が全くない状況にならないと復帰しない様にした。

と、いう事なので、今回の自動デグレード機能は、有線接続時には、エンコード負荷が高いストリーミング圧縮で発動しやすく、WiFi接続時には、圧縮率が低いデスクトップ圧縮で発動しやすい傾向になっている。

ちなみに、冒頭に書いたマウスカーソルの転送周期なのだが、現行版では50mSec周期にしてある所を、今回、16mSec周期に変更した。

これは何故なのか、というと、画面転送は60FPSで行える様になったのだが、Mirror-DTC経由のマウス操作で、ウインドウ移動なんかをやっていると、移動が、少し、ぎこちなかったからだ。

つまり、マウスカーソルの転送周期が50mSecだと、ウインドウの移動も50mSec毎にしか行われないので、移動画像のフレームレートは20FPS相当になってしまうからだ。

と、いう事なので、次バージョンのMirror-DTCでは、マウス操作でウインドウを移動したりする場合のスムーズさも、向上する事になる。

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

Mirror-DTC

Mirror-DTC

(2016/05/04追記)

« その他の変更項目 | トップページ | ウインドウ表示のクリア化 »

トラックバック

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

この記事へのトラックバック一覧です: 自動デグレードの変更とか:

« その他の変更項目 | トップページ | ウインドウ表示のクリア化 »

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