JP5080554B2

Efficient encoding of alternative graphic sets

Abstract

This record has no abstract on file.

JP5080554B2, drawing sheet 1
Sheet 1 of 8

Term

Projected expiry 16 January 2027.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Projected expiry

22 claims: 4 independent, 18 dependent

  1. 1
    分散コンピューティングシステムにおいて、使用されるグラフィック言語の種類にかかわらず、符号化メカニズムを決定することによって、ローカルデバイス上で実行される1つまたは複数のアプリケーションに関する、リモートデバイス上で表示させるグラフィック・セットを符号化するコンピュータ実行方法であって、 ローカルデバイス上で1つまたは複数のアプリケーションを実行し、グラフィック・セットを生成するステップであって、前記グラフィック・セットは、前記1つまたは複数のアプリケーションに関するグラフィック表示の少なくとも一部をレンダリングする際に使用される、1つもしくは複数のリソース、1つもしくは複数の表示命令、または前記リソースおよび前記表示命令の両方を含む、ステップと、 前記アプリケーションが、1つまたは複数のデータ圧縮モジュールが前記グラフィック・セットを圧縮することを助けるために使用される、前記グラフィック・セット内の1つまたは複数のフィールドの内容を記述するメタデータを抽出するステップと、 前記アプリケーションが、前記グラフィック・セットに対して圧縮の種類を選択する、前記リモートデバイスによってサポートされる1つまたは複数のデータ圧縮メカニズムを記述する符号化種類データを、前記リモートデバイスから受信するステップと、 前記アプリケーションが、前記抽出されたメタデータおよび前記受信された符号化種類データに基づいて、前記グラフィック・セットの1つまたは複数の部分に対して符号化メカニズムを決定するステップと、 前記アプリケーションが、前記決定された符号化メカニズムに基づいて、前記グラフィック・セットの1つまたは複数の部分を符号化するステップと を含むことを特徴とするコンピュータ実行方法。
  2. 2
    前記1つまたは複数の表示命令は、ディスプレイ上の位置付け、サイズ、色、または形状のうちの1つまたは複数の観点でリソースを記述する1つまたは複数のプロパティを含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  3. 3
    前記メタデータに基づいて、前記フィールドのうちの1つまたは複数 を、 マシンフォーマットからネットワークフォーマットに変換し、前記1つまたは複数のフィールドのビット長を削減することを特徴とする請求項1に記載のコンピュータ実行方法。
  4. 4
    前記メタデータに基づいて、前記フィールドのうちの1つまたは複数 を 、可変長の形態で符号化することを特徴とする請求項1に記載のコンピュータ実行方法。
  5. 5
    前記メタデータに基づいて、差分符号化を使用し、リソースの変化だけを前記リモートデバイスに送信するように、前記グラフィック・セット全体よりも少ないバイト数を使用して符号化することを特徴とする請求項1に記載のコンピュータ実行方法。
  6. 6
    前記メタデータに基づいて、インターオーダ圧縮メカニズムを使用し、特定の種類の前記フィールドのうちの1つまたは複数を、 以 前に符号化された 同じ種類の 構造に基づいて符号化することを特徴とする請求項1に記載のコンピュータ実行方法。
  7. 7
    前記リモートデバイスによってサポートされる前記1つまたは複数のデータ圧縮メカニズムを、接続時にローカルデバイスとリモートデバイスとの間でネゴシエーションし、選択される前記符号化メカニズムは、 前記データ 圧縮メカニズム のそれぞれ の 、 所与のグラフィック・セットに対する圧縮比にさらに基づくことを特徴とする請求項1に記載のコンピュータ実行方法。
  8. 8
    前記1つまたは複数のデータ圧縮モジュールは、RLE、MPEGベース、JPEG、GIF、ZIP、LZベース、JBIG、DejaVuに基づく圧縮メカニズムのうちの1つまたは複数を含むことを特徴とする請求項7に記載のコンピュータ実行方法。
  9. 9
    分散コンピューティングシステムにおいて、1つまたは複数のアプリケーションに関するどのリソースをリモートデバイスに送信するべきかを判定することによって、ローカルデバイス上で実行中の前記アプリケーションに関するグラフィック表示を 前記 リモートデバイス のディスプレイ 上にレンダリングさせるために 前記 リモートデバイスに送信するコンピュータ実行方法であって、 前記 ローカルデバイス上で 、前記 アプリケーションを実行して、1つもしくは複数のリソース、1つもしくは複数の表示命令、または前記リソースおよび前記表示命令の両方を含むグラフィック・セットを生成するステップであって、前記グラフィック・セットは、前記アプリケーションに関するグラフィック表示の少なくとも一部をレンダリングする際に使用される、 生成する ステップと、 前記アプリケーションが、(1)記憶されるリソースの種類にかかわらず、前記グラフィック・セットに対応する1つもしくは複数のリソースが前記リモートデバイスに送信され、再利用の目的で集中キャッシュに記憶されたかどうかを判定する配信状態情報、(2)前記ローカルデバイスから少なくとも1つのリソースを転送することなしに前記アプリケーションに関する前記少なくとも1つのリソースを前記リモートデバイス上に表示するために前記リモートデバイス上で現在利用可能な専用のリソースを判定する、サポートされるアプリケーションの情報、(3)帯域幅もしくはシステム制約を節約するために、画質を落としたリソースを最初に送信し、前記画質を落としたリソースを改善するアップデートをその後送信するように、リソースの一部を前記リモートデバイスに漸進的に送信するべきであるかどうかを判定するシステム制約データ、または(4)前記グラフィック・セットに対応する1つまたは複数のリソースがユーザによって現在見られることができるか否かを記述する可視性情報、のうちの1つまたは複数に関する情報を含む、前記ローカルデバイス上にあらかじめ記憶されたリソース情報に基づいて、前記リモートデバイスに送信するべきリソースを判定し、前記グラフィック・セットの一部を選択し、符号化するステップと、 前記アプリケーションが、前記符号化されたグラフィック・セットを、前記リモートデバイスに送信するステップと を含むことを特徴とするコンピュータ実行方法。
  10. 10
    前記ローカルデバイス、前記リモートデバイス、または前記ローカルデバイスおよび前記リモートデバイスの両方は、前記集中キャッシュ内にサイズの異なるリソースをキャッシュすることによって引き起こされるメモリのフラグメンテーションを制限するメカニズムを使用することを特徴とする請求項9に記載のコンピュータ実行方法。
  11. 11
    前記専用のリソースは、前記アプリケーションに関する境界、タイトルバー、ツールバー、またはウィンドウ操作アイコンの1つまたは複数を含むことを特徴とする請求項9に記載のコンピュータ実行方法。
  12. 12
    前記可視性情報は、前記1つまたは複数のリソースのZオーダ、透明度、または最小化/最大化状態についての情報を含むことを特徴とする請求項9に記載のコンピュータ実行方法。
  13. 13
    前記 画質を落としたリソースを改善するアップデート に関するリソースは、ビットマップ、曲線、または格子のうちの1つまたは複数を含み、前記画質を落としたリソースの画質の低下は、色、詳細、サンプルの点の数のうちの1つまたは複数によるものであることを特徴とする請求項9に記載のコンピュータ実行方法。
  14. 14
    前記 画質を落とした リソースは、フォームコントロールであり、前記ユーザは、前記画質を落としたリソースを改善するアップデートを受信することなしに前記フォームコントロールを操作することができることを特徴とする請求項13に記載のコンピュータ実行方法。
  15. 15
    分散コンピューティングシステムにおいて、ローカルデバイス上で実行される1つまたは複数のアプリケーションに関してリモートデバイス上でグラフィック表示を生成する際に使用される 1つまたは複数の レンダリングデータ構造を同期するコンピュータ実行方法であって、 前記 ローカルデバイス上で 前記 アプリケーションを実行し、特定のグラフィック言語に対応し、前記レンダリングデータ構造を修正する際に使用される1つもしくは複数のリソース、1つもしくは複数の表示命令、または前記リソースおよび前記表示命令の両方を含むグラフィック・セットを生成するステップであって、前記アプリケーションのそれぞれは 前記 特定のグラフィック言語の 前記 レンダリングデータ構造を生成し、前記レンダリングデータ構造は、 前記 リソースに関する状態を保有し、 かつ 前記リモートデバイス上で前記アプリケーションに関する 前記 グラフィック表示を構成するために使用される保持モードデータ構造である、 生成する ステップと、 前記アプリケーションが、1つまたは複数のデータ圧縮モジュールが認識し、符号化することができる1つまたは複数の異なるグラフィック言語に関する複数の 前記 グラフィック・セットの間で共通の1つまたは複数のフィールドに対する構造の種類を前記データ圧縮モジュールが特定することを助けるために、前記フィールドの記述を含むメタデータを抽出するステップと、 前記アプリケーションが、前記抽出したメタデータに基づいて、前記フィールドを符号化するステップと、 前記アプリケーションが、前記符号化された フィールドを含む グラフィック・セットを前記リモートデバイスに送信するステップと、 前記アプリケーションが、前記レンダリングデータ構造を、前記ローカルデバイスと前記リモートデバイスの間で同期するステップと を含むことを特徴とするコンピュータ実行方法。
  16. 16
    前記表示命令は、ディスプレイ上の位置付け、サイズ、色、または形状のうちの1つまたは複数の観点でリソースを記述する1つまたは複数のプロパティを含むことを特徴とする請求項15に記載のコンピュータ実行方法。
  17. 17
    前記メタデータに基づいて、前記フィールドのうちの1つまたは複数 を、 マシンフォーマットからネットワークフォーマットに変換し、前記フィールドのビット長を削減することを特徴とする請求項15に記載のコンピュータ実行方法。
  18. 18
    前記メタデータに基づいて、前記フィールドのうちの1つまたは複数 を 、可変長の形態で符号化することを特徴とする請求項15に記載のコンピュータ実行方法。
  19. 19
    前記メタデータに基づいて、差分符号化を使用し、リソースの変化だけを前記リモートデバイスに送信するように、前記グラフィック・セット全体よりも少ないバイト数を使用して符号化することを特徴とする請求項15に記載のコンピュータ実行方法。
  20. 20
    前記メタデータに基づいて、インターオーダ圧縮メカニズムを使用し、特定の種類の前記フィールドのうちの1つまたは複数を、 以 前に符号化 し た 同じ種類の 構造に基づいて符号化することを特徴とする請求項15に記載のコンピュータ実行方法。
  21. 21
    前記符号化されたグラフィック・セットを送信するステップと 前記アプリケーションが、前記符号化されたグラフィック・セットのZオーダ、透明度、および最小化/最大化状態の少なくとも1つに基づき、前記符号化されたグラフィック・セットの可視性を判定するステップと、 前記アプリケーションが、前記ローカルデバイスと前記リモートデバイス間の帯域幅判定するステップと、 前記アプリケーションが、前記判定された可視性および帯域幅に基づき、前記符号化されたグラフィック・セットの可視部分を先に、前記リモートデバイスに送信するステップと、 前記アプリケーションが、前記判定された可視性および帯域幅に基づき、前記符号化されたグラフィック・セットの不可視部分を後から、前記リモートデバイスに送信するステップと を含むことを特徴とする請求項1に記載のコンピュータ実行方法。
  22. 22
    前記符号化されたグラフィック・セットを送信するステップと 前記アプリケーションが、前記符号化されたグラフィック・セットのZオーダ、透明度、および最小化/最大化状態の少なくとも1つに基づき、前記符号化されたグラフィック・セットの可視性を判定するステップと、 前記アプリケーションが、前記ローカルデバイスと前記リモートデバイス間の帯域幅判定するステップと、 前記アプリケーションが、前記判定された可視性および帯域幅に基づき、前記符号化されたグラフィック・セットの可視部分を先に、前記リモートデバイスに送信するステップと、 前記アプリケーションが、前記判定された可視性および帯域幅に基づき、前記符号化されたグラフィック・セットの不可視部分を後から、前記リモートデバイスに送信するステップと を含むことを特徴とする請求項9に記載のコンピュータ実行方法。
Independent claims22