(57)【要約】【課題】ビデオ符号化システム、方法、および、コンピュータ可読媒体を提供する。【解決手段】リモートデスクトップシステムに応用するビデオ符号化システムは、キャプチャーモジュール、符号化モジュール、および、判断モジュールを含む。キャプチャーモジュールは、キャプチャーレートで、電子装置の複数のスクリーンフレームをキャプチャーする。符号化モジュールは、符号化レートで、キャプチャーモジュールによりキャプチャーされるスクリーンフレームを符号化する。判断モジュールは、現在のスクリーンが変化するか判断し、その後、判断結果に従って、符号化モジュールの符号化レートを調整し、符号化レートはキャプチャレート以下である。当ビデオ符号化システムは、スクリーンフレームが変化しない時、システムリソース利用とエネルギー消費を減少させることができる。ビデオ符号化方法と当方法が保存されるコンピュータ可読媒体も開示される。【選択図】図１
2013236377.tif 000002
【特許請求の範囲】
【請求項１】
リモートデスクトップシステムに応用するビデオ符号化システムであって、
キャプチャーレートで、電子装置の複数のスクリーンフレームをキャプチャーするキャプチャーモジュール、
符号化レートで、前記キャプチャーモジュールによりキャプチャーされる前記複数のスクリーンフレームを符号化する符号化モジュール、および、
現在のスクリーンフレームが変化するか判断し、判断結果に従って、前記符号化モジュールの前記符号化レートを調整する判断モジュール、
を含み、前記符号化レートは前記キャプチャーレート以下であることを特徴とするビデオ符号化システム。
【請求項２】
前記現在のスクリーンフレームが変化しないとき、前記符号化レートが減少する、または、前記現在のスクリーンフレームが変化するとき、前記符号化レートが増加することを特徴とする請求項１に記載のビデオ符号化システム。
【請求項３】
前記判断モジュールは、前記判断結果に基づいて、前記キャプチャーモジュールの前記キャプチャーレートを調整することを特徴とする請求項１又は２に記載のビデオ符号化システム。
【請求項４】
前記現在のスクリーンフレームが変化しないとき、前記キャプチャーレートが減少し、または、前記現在のスクリーンフレームが変化するとき、前記キャプチャーレートが増加することを特徴とする請求項３に記載のビデオ符号化システム。
【請求項５】
前記判断モジュールは、現在の前記スクリーンフレームの各画素と前の前記スクリーンフレームの各対応する画素を比較して、現在の前記スクリーンフレームが変化するか判断することを特徴とする請求項１から４何れかの一項に記載のビデオ符号化システム。
【請求項６】
さらに、検出モジュールを含み、ヒューマンインターフェースデバイスの入力信号を検出して、電子装置が操作されているか判断し、操作されている場合、前記キャプチャーレート、または、前記符号化レートが増加することを特徴とする請求項１から５何れかの一項に記載のビデオ符号化システム。
【請求項７】
さらに、
ネットワーク状態(network status)を検出して、ネットワークが混雑しているか判断すると共に、対応する前記キャプチャーレートおよび前記符号化レートの少なくとも一方を調整するネットワーク検出モジュールを含むことを特徴とする請求項１から６何れかの一項に記載のビデオ符号化システム。
【請求項８】
前記キャプチャーレートは毎秒０から１００フレームであることを特徴とする請求項１から７何れかの一項に記載のビデオ符号化システム。
【請求項９】
前記符号化レートは毎秒０から１００フレームであることを特徴とする請求項１から８何れかの一項に記載のビデオ符号化システム。
【請求項１０】
リモートデスクトップシステムに応用するビデオ符号化方法であって、
キャプチャーレートで、電子装置の複数のスクリーンフレームをキャプチャーするキャプチャー工程、
符号化レートで、前記複数のスクリーンフレームを符号化する符号化工程、および、
現在のスクリーンフレームが変化するか判断し、判断結果に従って、前記符号化レートを調整する判断工程、
を含み、前記符号化レートは前記キャプチャーレート以下であることを特徴とするビデオ符号化方法。
【請求項１１】
前記現在のスクリーンフレームが変化しないとき、前記符号化レートは減少し、または、前記現在のスクリーンフレームが変化するとき、前記符号化レートが増加することを特徴とする請求項１０に記載のビデオ符号化方法。
【請求項１２】
前記判断工程は、さらに、前記判断結果に基づいて、前記キャプチャーレートを調整する工程を含むことを特徴とする請求項１０又は１１に記載のビデオ符号化方法。
【請求項１３】
前記現在のスクリーンフレームが変化しないとき、前記キャプチャーレートが減少し、または、前記現在のスクリーンフレームが変化するとき、前記キャプチャーレートが増加することを特徴とする請求項１２に記載のビデオ符号化方法。
【請求項１４】
前記現在のスクリーンフレームが変化するか判断するのは、現在の前記スクリーンフレームの各画素と前の前記スクリーンフレームのする対応する画素を比較することにより完成することを特徴とする請求項１０から１３何れかの一項に記載のビデオ符号化方法。
【請求項１５】
さらに、ヒューマンインターフェースデバイスの入力信号を検出して、前記電子装置が操作されているか判断し、操作されている場合、前記キャプチャーレート、または、前記符号化レートが増加する工程を含むことを特徴とする請求項１０から１４何れかの一項に記載のビデオ符号化方法。
【請求項１６】
さらに、
ネットワーク状態(network status)を検出して、ネットワークが混雑しているか判断すると共に、対応する前記キャプチャーレートおよび前記符号化レートの少なくとも一方を調整することを特徴とする請求項１０から１５何れかの一項に記載のビデオ符号化方法。
【請求項１７】
前記キャプチャーレートは毎秒０から１００フレームであることを特徴とする請求項１０から１６何れかの一項に記載のビデオ符号化方法。
【請求項１８】
前記符号化レートは毎秒０から１００フレームであることを特徴とする請求項１０から１７何れかの一項に記載のビデオ符号化方法。
【請求項１９】
コンピュータに、請求項１０から１８の何れか１項に記載のビデオ符号化方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ符号化システム、方法、および、コンピュータ可読媒体に関するものであって、特に、リモートデスクトップシステムに応用するビデオ符号化システム、方法、および、コンピュータ可読媒体に関するものである。
【背景技術】
【０００２】
スクリーンシェアリング(Screen sharing)は情報技術の重要なアプリケーションのひとつで、たとえば、リモートデスクトップ(remote desktop)を用いて、遠隔制御を実行する、または、無線通信方式で、コンピュータとプロジェクターを接続することにより、プレゼンテーションなどを行う。この技術分野において、スクリーンフレームは、オペレーティングシステムを介し、ソフトウェアプログラムにより得られ、よって、ゆがみ(distortion)がない。しかし、バンド幅制限のため、スクリーンフレームは、符号化されて、データ量を減少させてから伝送しなければならない。
【０００３】
従来、リモートデスクトップの伝送端は、２４ｆｐｓから３０ｆｐｓ(１秒当たりのフレーム数)のレートで、スクリーンフレームをキャプチャーして、および、符号化して、遠隔のユーザーが、よりよい即時制御感を得られる。しかし、伝送端が、継続的に、同じレートで、スクリーンフレームをキャプチャーする、および、符号化するとき、さらに多くのシステムリソースが占有され、多くのエネルギーが消耗される。
【０００４】
よって、どのように、リモートデスクトップシステムの伝送端が符号化する時に占有するシステムリソースおよびエネルギー消費を減少させるかが、重要な課題である。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、リモートデスクトップシステムに応用するビデオ符号化システム、方法、および、コンピュータ可読媒体を提供し、スクリーンフレームが変化するか判断することにより、符号化レートおよび／またはキャプチャーレートを調整することを目的とする。その結果、スクリーンフレームに変化がないとき、システムリソース利用とエネルギー消費を大幅に減少させる。
【課題を解決するための手段】
【０００６】
本発明の一つの実施例によると、リモートデスクトップシステムに応用するビデオ符号化システムは、キャプチャーモジュール、符号化モジュール、および、判断モジュールを含む。キャプチャーモジュールは、キャプチャーレートで、電子装置の複数のスクリーンフレームをキャプチャーする。符号化モジュールは、符号化レートで、キャプチャーモジュールによりキャプチャーされるスクリーンフレームを符号化する。判断モジュールは、現在のスクリーンが変化するか判断し、判断結果に従って、符号化モジュールの符号化レートを調整し、符号化レートはキャプチャレート以下である。
【０００７】
本発明の別の実施例によると、リモートデスクトップシステムに応用するビデオ符号化方法は、キャプチャーレートで、電子装置の複数のスクリーンフレームをキャプチャーする工程と、符号化レートで、スクリーンフレームを符号化する工程と、現在のスクリーンが変化するか判断し、その後、判断結果に従って、符号化レートを調整する工程と、を含み、符号化レートはキャプチャレート以下である。
【０００８】
本発明の別の実施例によると、コンピュータ可読媒体は、コンピュータプログラムが保存され、コンピュータプログラムは、電子装置によりロードされ、リモートデスクトップシステムに応用されるビデオ符号化方法を実行する。ビデオ符号化方法は、キャプチャーレートで、電子装置の複数のスクリーンフレームをキャプチャーする工程と、符号化レートで、スクリーンフレームを符号化する工程と、現在のスクリーンが変化するか判断し、判断結果に従って、符号化レートを調整する工程を含み、符号化レートはキャプチャレート以下である。
【０００９】
本発明の更なる特徴及び利点は、以下の本発明の好ましい実施形態についての説明及び添付図面及び特許請求の範囲から明らかになるであろう。
【発明の効果】
【００１０】
システムリソース利用とエネルギー消費を大幅に減少させることができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施例によるビデオ符号化システムを示す図である。
【図２】本発明の別の実施例によるビデオ符号化システムを示す図である。
【図３】本発明の実施例によるビデオ符号化方法のフローチャートである。
【図４】本発明の別の実施例によるビデオ符号化システムを示す図である。
【図５】本発明の別の実施例によるビデオ符号化方法を示す図である。
【発明を実施するための形態】
【００１２】
本発明のビデオ符号化システムはリモートデスクトップシステムに応用される。図１を参照すると、本発明の一つの実施例によるビデオ符号化システム１０は、キャプチャーモジュール１１、符号化モジュール１３、および、判断モジュール１２を含む。キャプチャーモジュール１１は、キャプチャーレートで、電子装置の複数のスクリーンフレームをキャプチャーする。たとえば、電子装置は、デスクトップ型コンピュータ、または、携帯インターネット機器(Mobile Internet Device、MID)、たとえば、ノートパソコン、スマートフォン、および、タブレット型コンピュータである。符号化モジュール１３は、符号化レートで、キャプチャーモジュール１１によりキャプチャーされるスクリーンフレームＳＦを符号化し、符号化されたスクリーンフレームＥＳＦを出力する。リモートデスクトップシステムは、符号化されたスクリーンフレームＥＳＦをネットワーク、または、その他の通信方式により、遠隔の電子装置に伝送して表示する。
【００１３】
判断モジュール１２は、現在のスクリーンフレームＳＦが変化したか判断し、判断結果に基づいて、符号化モジュール１３の符号化レートを調整する。一つの実施例に、判断モジュール１２は、現在のスクリーンフレームＳＦの各画素と前のスクリーンフレームの各対応する画素を比較して、現在のスクリーンが変化するか判断する。たとえば、現在のスクリーンフレームＳＦの各画素と前のスクリーンフレームの対応する画素は、排他的論理和(XOR)操作により、現在のスクリーンが変化するか確定する。
【００１４】
本発明の一つの実施例において、現在のスクリーンフレームＳＦが変化しない時、判断モジュール１２は、符号化モジュール１３の符号化レートを減少させる。たとえば、初めに、符号化モジュール１３は、２４〜３０ｆｐｓの符号化レートで、スクリーンフレームＳＦを符号化する。判断モジュール１２が、現在のスクリーンフレームＳＦが変化しないと判断する時、符号化モジュール１３の符号化レートは、徐々に、２０,１０,１または０ｆｐｓに減少する。理解できることは、判断モジュール１２が、現在のスクリーンフレームＳＦが変化しないと判断する時、符号化モジュール１３の符号化レートは、直接、２４〜３０ｆｐｓから１〜０ｆｐｓに減少することである。
【００１５】
一方、現在のスクリーンフレームＳＦが変化する時、判断モジュール１２は、符号化モジュール１３の符号化レートを増加させる。たとえば、判断モジュール１２が、現在のスクリーンフレームＳＦが変化すると判断する時、符号化モジュール１３の符号化レートは、０ｆｐｓまたは１ｆｐｓから１０、２０、２４〜３０ｆｐｓに徐々に増加する。理解できることは、遠隔のユーザーに、よりよい即時制御感を感じさせるため、判断モジュール１２が、現在のスクリーンフレームが変化すると判断する時、符号化モジュール１３の符号化レートが、直接、０または１ｆｐｓから２４〜３０ｆｐｓに増加させる。一つの実施例に、符号化レートは、０から１００ｆｐｓの間で調整することができる。
【００１６】
注意すべきことは、判断モジュール１２は、判断結果に従って、キャプチャーモジュール１１のキャプチャーレートを調整することもできることである。たとえば、現在のスクリーンフレームＳＦが変化しないとき、キャプチャーモジュール１１のキャプチャーレートは減少させることができ、たとえば、２４〜３０ｆｐｓから２０、１０、１または０ｆｐｓに減少する。現在のスクリーンフレームＳＦが変化する時、キャプチャーモジュール１１のキャプチャーレートは増加することができ、たとえば、１または０ｆｐｓから１０、２０、２４〜３０ｆｐｓに増加する。一つの実施例に、キャプチャーレートは０から１００ｆｐｓの間で調整できる。一つの実施例において、符号化レートはキャプチャレート以下である。
【００１７】
上述の記述に基づくと、本発明のビデオ符号化システム１０は、現在のスクリーンフレームが変化するかに基づいて、符号化レートおよび／またはキャプチャーレートを調節することができる。従って、システムリソース利用とエネルギー消費が減少する。
【００１８】
図２を参照すると、本発明の別の実施例によるビデオ符号化システム１０aは、さらに、検出モジュール１４を含んで、ヒューマンインターフェースデバイス(Human Interface Device, HID)２０、たとえば、キーボード、マウス、および、別の入力装置の入力信号を検出して、電子装置が操作されているか判断する。電子装置が操作されている時、検出モジュール１４は、相応しい制御信号を提供して、キャプチャーモジュール１１のキャプチャーレートおよび／または符号化モジュール１３の符号化レートを増加させる。たとえば、検出モジュール１４は、判断モジュール１２により、キャプチャーレートおよび／または符号化レートを調整することができるが、この限りではない。検出モジュール１４は、直接、キャプチャーモジュール１１のキャプチャーレートおよび／または符号化モジュール１３の符号化レートを調整することができ、図２中の破線で示される。上述の記述に基づくと、キャプチャーレートが０ｆｐｓに減少するとき、キャプチャーモジュール１１は、検出モジュール１４の検出結果に従って、スクリーンフレームＳＦをキャプチャーするのを回復することができる。
【００１９】
図４を参照すると、本発明のさらに別の実施例によるビデオ符号化システム１０ｂは、さらに、ネットワーク検出モジュール１５を含んで、ネットワーク状態(network status)NSを検出して、ネットワークが混雑しているか判断する。混雑している時、ネットワーク検出モジュール１５は、相応しい制御信号を提供して、キャプチャーモジュール１１のキャプチャーレートおよび／または符号化モジュール１３の符号化レートを減少させることができる。同様に、図４の実線に示されるように、ネットワーク検出モジュール１５は、判断モジュール１２により、キャプチャレートおよび／または符号化レートを調整することができる。或いは、図４の破線に示されるように、直接、キャプチャーモジュール１１のキャプチャーレートおよび／または符号化モジュール１３の符号化レートを調整する。たとえば、ネットワークが正常な状況下で、ディスプレイフレームが変化する時、キャプチャーレートおよび／または符号化レートを増加すべきである。しかし、ネットワークが混雑時、符号化されたスクリーンフレームＥＳＦは受信端に伝送されず、この時、キャプチャーレートおよび／または符号化レートを減少させて、システムリソース利用とエネルギー消費を減少させることができる。
【００２０】
本発明は、リモートデスクトップシステムに応用するビデオ符号化方法も開示する。図３を参照すると、本発明の実施例によるリモートデスクトップシステムに応用するビデオ符号化方法は、キャプチャーレートで、電子装置の複数のスクリーンフレームをキャプチャーする工程(Ｓ３１)と、符号化レートで、スクリーンフレームを符号化する工程(Ｓ３２)、および、現在のスクリーンが変化するか判断し、判断結果に従って、キャプチャーレートおよび／または符号化レートを調整する工程(Ｓ３３)、を含む。たとえば、現在のスクリーンフレームが変化しないとき、キャプチャーレートおよび／または符号化レートを減少させ(Ｓ３４)、工程Ｓ３１のキャプチャーレートおよび／または工程３２の符号化レートをリセットする。一方、現在のスクリーンフレームが変化する時、キャプチャーレートおよび／または符号化レートを増加させ(Ｓ３５)、工程Ｓ３１のキャプチャーレートおよび／または工程Ｓ３２の符号化レートをリセットする。詳細な実施方式は前述のようであり、ここに詳述しない。
【００２１】
図５を参照すると、一つの実施例において、本発明のビデオ符号化方法は、さらに、ヒューマンインターフェースデバイスの入力信号を検出して(Ｓ３６)、電子装置が操作されているか判断し、ヒューマンインターフェースデバイスの入力イベントを検出する場合、キャプチャーレートおよび／または符号化レートを増加させる工程を含む。このほか、工程Ｓ３３は、さらに、ネットワークが混雑しているか判断して、キャプチャーレートおよび／または符号化レートを調整する。詳細な説明は前述したので、ここで詳述しない。注意すべきことは、図５に示される実施例中、スクリーンフレームをキャプチャーする工程(Ｓ３１)の後、すぐに、スクリーンフレームが変化するかを判断すると共に、キャプチャーレートを対応調整することである。例えば、キャプチャーレートが低下する時、符号化レートがそれに応じて低下する。反対に、キャプチャーレートが増加する時、符号化レートもそれに応じて増加する。つまり、キャプチャレートを調整することにより、キャプチャレートに応じる符号化レートを調整することができる。コンピュータ可読媒体も開示される。
【００２２】
本発明の実施例によると、コンピュータ可読媒体は、コンピュータプログラムが保存され、コンピュータプログラムは電子装置によりロードされて、図３または図５に示されるビデオ符号化方法を実行する。本発明のビデオ符号化方法の詳細な説明は前述のようであり、ここで詳述しない。
【００２３】
総合すると、本発明のビデオ符号化システムと方法は、現在のスクリーンが変化するかに従って、符号化レートおよび／またはキャプチャーレートを調整する。従って、スクリーンフレームが変化しない時、システムリソース利用とエネルギー消費が大幅に減少することができる。このほか、本発明のビデオ符号化システム、および、方法は、さらに、ヒューマンインターフェースデバイスの入力イベント、または、ネットワーク状態を検出して、キャプチャーレートおよび／または符号化レートを弾性的に調整することができる。
【００２４】
本発明では好ましい実施例を前述の通り開示したが、これらは決して本発明に限定するものではなく、当該技術を熟知する者なら誰でも、本発明の精神と領域を脱しない範囲内で各種の変動や修飾を加えることができ、従って本発明の保護範囲は、特許請求の範囲で指定した内容を基準とする。
【符号の説明】
【００２５】
１０、１０a、１０b  ビデオ符号化システム
１１  キャプチャーモジュール
１２  判断モジュール
１３  符号化モジュール
１４  検出モジュール
１５  ネットワーク検出モジュール
２０  ヒューマンインターフェースデバイス
ＥＳＦ  符号化されたスクリーンフレーム
ＳＦ  スクリーンフレーム
Ｓ３１〜Ｓ３６  工程
【図１】
2013236377.tif 000003
【図２】
2013236377.tif 000004
【図３】
2013236377.tif 000005
【図４】
2013236377.tif 000006
【図５】
2013236377.tif 000007