(57)【要約】  復号化するためのシステムおよび方法が、参照IDおよび少なくとも1つのフラグf(n)を含むパラメータセットNALユニットを受信するステップを含み、すべてのnについて、方法は、少なくとも1つのフラグf(n)が設定されていない場合に、同じ参照IDを有するパラメータセットの値v(n)を保持するステップと、少なくとも1つのフラグf(n)が設定されている場合に、同じ参照IDを有するパラメータセットの値v(n)を、受信したパラメータセットNALユニットの値v(n)に置換するステップとを含む。
2014512736.tif 000002
【特許請求の範囲】
【請求項１】
参照IDおよび少なくとも1つのフラグf(n)を含むパラメータセットNALユニットを受信するステップを含む、復号化の方法であって、
すべてのnについて、nは、パラメータセットにおける値の数であり、
前記方法がさらに、
前記少なくとも1つのフラグf(n)が設定されていない場合に、同じ参照IDを有するパラメータセットの値v(n)を保持するステップと、
前記少なくとも1つのフラグf(n)が設定されている場合に、前記同じ参照IDを有する前記パラメータセットの前記値v(n)を、受信したパラメータセットNALユニットの値v(n)に置換するステップと
を含む方法。
【請求項２】
前記少なくとも1つのフラグf(n)が、ブーリアン値として表現される、請求項1に記載の方法。
【請求項３】
前記受信したパラメータセットNALユニットが、少なくとも2つのフラグf(n)を含み、前記フラグがグループ化され、グループ内のf(n)についての値が整数によって表現される、請求項1に記載の方法。
【請求項４】
前記受信したパラメータセットNALユニットが、少なくとも2つのフラグf(n)を含み、前記フラグがグループ化され、グループ内のf(n)についての値が整数によって表現される、請求項2に記載の方法。
【請求項５】
前記パラメータセットNALユニットが、複数のパラメータセットIDを含む、請求項1に記載の方法。
【請求項６】
前記パラメータセットNALユニットが、複数のパラメータセットIDを含む、請求項2に記載の方法。
【請求項７】
前記パラメータセットNALユニットが、複数のパラメータセットIDを含む、請求項3に記載の方法。
【請求項８】
参照IDおよび少なくとも1つのフラグf(n)を含むパラメータセットNALユニットを受信し、受信したパラメータセットNALユニットを復号化するように構成された復号器を含む、復号化するためのシステムであって、
すべてのnについて、nは、パラメータセットにおける値の数であり、
前記復号器がさらに、
前記少なくとも1つのフラグf(n)が設定されていない場合に、同じ参照IDを有するパラメータセットの値v(n)を保持し、
前記少なくとも1つのフラグf(n)が設定されている場合に、前記同じ参照IDを有する前記パラメータセットの前記値v(n)を、前記受信したパラメータセットNALユニットの値v(n)に置換するように構成されている、
システム。
【請求項９】
前記少なくとも1つのフラグf(n)が、ブーリアン値として表現される、請求項8に記載のシステム。
【請求項１０】
前記受信したパラメータセットNALユニットが、少なくとも2つのフラグf(n)を含み、前記フラグがグループ化され、グループ内のf(n)についての値が整数によって表現される、請求項8に記載のシステム。
【請求項１１】
前記受信したパラメータセットNALユニットが、少なくとも2つのフラグf(n)を含み、前記フラグがグループ化され、グループ内のf(n)についての値が整数によって表現される、請求項9に記載のシステム。
【請求項１２】
前記パラメータセットNALユニットが、複数のパラメータセットIDを含む、請求項8に記載のシステム。
【請求項１３】
前記パラメータセットNALユニットが、複数のパラメータセットIDを含む、請求項9に記載のシステム。
【請求項１４】
前記パラメータセットNALユニットが、複数のパラメータセットIDを含む、請求項10に記載のシステム。
【請求項１５】
参照IDおよび少なくとも1つのフラグf(n)を含むパラメータセットNALユニットを受信するように、プロセッサに指示するための一組の命令を含む、非一時的なコンピュータ可読記録媒体であって、
すべてのnについて、nは、パラメータセットにおける値の数であり、
前記命令がさらに、
前記少なくとも1つのフラグf(n)が設定されていない場合に、同じ参照IDを有するパラメータセットの値v(n)を保持し、
前記少なくとも1つのフラグf(n)が設定されている場合に、前記同じ参照IDを有する前記パラメータセットの前記値v(n)を、受信したパラメータセットNALユニットの値v(n)に置換するように指示する、
コンピュータ可読記録媒体。
【請求項１６】
前記少なくとも1つのフラグf(n)が、ブーリアン値として表現される、請求項15に記載のコンピュータ可読記録媒体。
【請求項１７】
前記受信したパラメータセットNALユニットが、少なくとも2つのフラグf(n)を含み、前記フラグがグループ化され、グループ内のf(n)についての値が整数によって表現される、請求項15に記載のコンピュータ可読記録媒体。
【請求項１８】
前記受信したパラメータセットNALユニットが、少なくとも2つのフラグf(n)を含み、前記フラグがグループ化され、グループ内のf(n)についての値が整数によって表現される、請求項16に記載のコンピュータ可読記録媒体。
【請求項１９】
前記パラメータセットNALユニットが、複数のパラメータセットIDを含む、請求項15に記載のコンピュータ可読記録媒体。
【請求項２０】
前記パラメータセットNALユニットが、複数のパラメータセットIDを含む、請求項16に記載のコンピュータ可読記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
優先権の主張
本出願は、「Parameter Set Maintenance in Video Coding」と題され、2011年3月10日に出願された米国仮出願第61/451,286号の優先権を主張するものであり、この開示を、その全体において参照により本明細書に組み込む。
【０００２】
本出願は、ビデオ符号化に関し、より詳細には、International Telecommunication Union(「ITU」)、Place de Nations、CH-1211 Geneva 20、Switzerland、またはhttp://www.itu.int/rec/T-REC-H.264より入手可能であり、その全体において参照により本明細書に組み込まれるITU-T Rec. H.264「Advanced video coding for generic audiovisual services」2010年3月などのビデオ符号化標準における、パラメータセットの更新に関連した情報の表現に関する。
【背景技術】
【０００３】
図1を参照すると、ITU-T Rec. H.264は、復号化プロセスのために必要とされるパラメータであって、パラメータセットとして知られるデータ構造において復号器で利用可能となる(ビットストリーム内または帯域外で伝達される)2つ以上のスライスに関する、パラメータを要求している。Rec. H.264は、2つのパラメータセットのタイプ、すなわち、ピクチャパラメータセット(112)(所与のピクチャに関する)と、シーケンスパラメータセット(111)(所与のシーケンス(グループオブピクチャ、すなわちGOPとしても知られる)に関する)とを含む。シーケンスパラメータセットおよびピクチャパラメータセットは、スライス(106)のスライスヘッダにおけるフィールド(105)によって参照されるときに「アクティブ化される」。スライスヘッダは、アクティブ化されるべきピクチャパラメータセット(108)への参照(107)を含み、このパラメータセットは、その参照値によって識別される。たとえば、ピクチャパラメータセット(101)について、その参照値(103)は0である。ピクチャパラメータセットは、アクティブ化されるべきシーケンスパラメータセット(110)への参照(109)を作成する参照値(114)を含む。パラメータセットは、それ自身の参照値(たとえば、ピクチャパラメータセット(101)についての値(103)、またはシーケンスパラメータセット(102)についての値(113))が、それぞれ、(ピクチャパラメータセットのための)スライスヘッダ(105)における参照値、または(シーケンスパラメータセットのための)参照するピクチャパラメータセット(114)と同じであるときに、参照される。
【０００４】
復号器は、パラメータセットのタイプ(111)(112)ごとに、2つ以上のパラメータセット位置を備えることができる。ピクチャのすべてのスライスについて、スライスヘッダは、同じピクチャパラメータセットを指し、シーケンスのすべてのピクチャについて、使用されるピクチャパラメータセットは、同じシーケンスパラメータセットを指す。
【０００５】
復号器における1つの一般的な実装方針は、パラメータセットのタイプごとに、固定長のテーブルを保持することである。H.264は、そのようなテーブルの最大サイズを指定している。パラメータセットNALユニットが到着すると、パラメータセット参照値(103)または(113)は、テーブルにおける記憶位置を決定する。シーケンスパラメータセットとピクチャパラメータセットとの差別化は、NALユニットタイプ(図示せず)を通して行われる。
【０００６】
スライスパラメータセットなどの他のパラメータセットのタイプは、たとえば、wftp3.itu.int/av-arch/jvt-site/2002_05_Fairfax/JVT-C078.docより入手可能な、M. HannukselaおよびY.K. Wangによる、JVT contribution JVT-C078「Coding of Parameter Sets」2002年5月に提案されており、これをその全体において本明細書に組み込む。
【０００７】
図4aを参照すると、ピクチャパラメータセットまたはシーケンスパラメータセットであってよいパラメータセット(401)が示されている。パラメータセット(401)は、単一の記憶位置参照(403)のみを含むことが、強調されるべきである。復号器によって受信されるとき、記憶位置参照(403)は、既に説明したように、復号器によって保持されてよいパラメータセットテーブルにおける、パラメータセットの記憶位置を識別するために使用されてよい。
【０００８】
図2を参照すると、たとえば、ITU-T Rec. H.264に準拠した復号器において、パラメータセットが、そっくりそのまま伝達される必要がある。新たに生成され、(復号器へと)伝送されるパラメータセット(201)は、そのパラメータの1つとして、その参照識別情報(ID)(202)を含み、参照IDは、パラメータセットテーブル(204)における記憶位置(203)を指すために使用されてよい。復号時、受信したパラメータセットは、ID(202)によって示される位置(203)に、復号器によって記憶される(205)。パラメータセットは、ここでは灰色陰影(grayshade)によって示されるオプション部(206)を含むことができる。それらのオプション部は、伝達されないとき、パラメータセットが位置(203)に記憶されると、オプションデータを有するパラメータセットを同じ位置(203)に伝送することによって以前に定義されていたとしても、未定義である。言い換えれば、未定義なデータ部分を有するパラメータセットの伝送は、パラメータセットテーブルの中のエントリにおいて、事前に定義されていた部分でさえ無効にする。H.264はそのような機構を使用しないが、パラメータセットの未定義な部分は、考えられる限り意味を伝えることができる。たとえば、パラメータセットの所与の部分が未定義である場合、復号器は、たとえば、標準において定義され得るデフォルト値の使用を推測することができる。
【０００９】
符号化効率の観点から、更新されたパラメータセット全体を送信するのではなく、パラメータセットの一部のみを更新することが好都合なことがある。パラメータセットの他の部分を再伝送することなく、デフォルト値にフォールバックするよう復号器を強制するために、パラメータセットの一部を(選択的に)「未定義にする」こともまた好都合なことがある。さらに、たとえば、小さな変更を大部分が未変更のパラメータセットに実装するよう、パラメータセットのコピーされたバージョンを更新するために、復号器においてパラメータセットの内容を1つの所与の位置から別の位置にコピーするよう考慮することも好都合なことがある。
【００１０】
したがって、ビデオビットストリーム内で、または帯域外で、1つもしくは複数のパラメータセットまたはその一部を、更新する、未定義にする、および/またはコピーするよう可能にする機構が望ましいことがある。
【発明の概要】
【課題を解決するための手段】
【００１１】
開示される主題は、パラメータセット保持のための技法を提供する。1つまたは複数のパラメータセットに作用し得る条件付き置換によるパラメータセット更新機構、パラメータセットまたはその一部を未定義にするためのパラメータセット保持メッセージ、および示されたパラメータセットの内容を異なるパラメータセットの示された位置にコピーするのを可能にするパラメータセット保持メッセージが開示される。
【００１２】
一実施形態において、事前に受信され復号化されたパラメータセットと同じタイプで、同じIDを有するパラメータセットNALユニットを受信すると、事前に受信され復号化されたパラメータセットにおける値であって、新たに受信したパラメータセットNALユニットには存在しない値が保たれる。同じ実施形態または別の実施形態において、シンタックス要素を使用して、パラメータセットの1つまたは複数の値のうちのどれが、パラメータセットNALユニットに存在するかを示す。また、パラメータセット全体もしくはその一部をコピーする、および/または無効にする技法が開示される。
【００１３】
同じ実施形態または別の実施形態において、フラグが、パラメータセットNALユニットの値の存在を示すことができる。パラメータセットNALユニットを受信すると、復号器は、フラグが設定されたその状態におけるパラメータセットの部分を上書きし、フラグが消去されたパラメータセットの部分をそのままにしておく。
【００１４】
同じ実施形態または別の実施形態において、パラメータセットNALユニットは、2つ以上の記憶位置を含むことができる。
【００１５】
同じ実施形態または別の実施形態において、パラメータセット保持データ構造が、ビットストリーム内に存在する。
【００１６】
同じ実施形態または別の実施形態において、パラメータセット保持データ構造は、NALユニットの形式である。
【００１７】
同じ実施形態または別の実施形態において、パラメータセット保持データ構造は、コピーコマンドおよび無効化コマンドのうちの少なくとも1つを含むことができる。
【００１８】
同じ実施形態または別の実施形態において、コピーコマンドは、ソースパラメータセットIDと、目的先パラメータセットIDとを含むことができる。
【００１９】
同じ実施形態または別の実施形態において、無効化コマンドは、無効にされるべきパラメータセットIDを含むことができる。
【００２０】
開示される主題のさらなる特徴、性質、およびさまざまな利点は、以下の詳細な説明および添付の図面からさらに明らかになるであろう。
【図面の簡単な説明】
【００２１】
【図１】先行技術(ITU-T Rec. H.264)に従ったパラメータセットの概略図である。
【図２】先行技術に従ったパラメータセット伝送の概略図である。
【図３】本発明の実施形態に従ったパラメータセット更新の概略図である。
【図４ａ】先行技術に従ったパラメータセットの概略図である。
【図４ｂ】本発明の実施形態に従った、複数の位置に記憶されてよいパラメータセットの概略図である。
【図５】本発明の実施形態に従ったパラメータセット保持メッセージの概略図である。
【図６】本発明の実施形態を実装するために好適なコンピュータシステムを示す図である。
【発明を実施するための形態】
【００２２】
図面は、本開示に組み込まれて、その一部をなしている。特に明記しない限り、図面全体を通して、同じ参照番号および参照文字は、図示される実施形態の同様の特徴、要素、コンポーネント、または部分を表すために使用される。さらに、これより開示される主題が図面を参照して詳細に説明されるが、それは例証的な実施形態に関連してそのように行われる。
【００２３】
本明細書では、パラメータセット保持のための技法、すなわち、1)パラメータセットの一部の条件付き置換によるパラメータセット更新、2)復号器を強制して、受信したパラメータセットNALユニットの内容を2つ以上の記憶位置に記憶する、および/または条件付きで置換するための複数のパラメータセットID値の使用、パラメータセット全体をコピーする、または無効にするのを可能にするメッセージ、ならびにパラメータセットの一部のみの無効化を考慮した技法を開示する。
【００２４】
便宜上、本開示は、パラメータセットテーブルにおける識別された位置にパラメータセットを記憶することを含む実装方針を仮定した開示される主題を説明しており、したがって、記憶位置、パラメータセットテーブルおよびテーブルエントリ、ならびに同様の専門用語に言及する。他の実装方針もまた可能であってよく、開示される主題はそれらの実装において同様に使用されてもよい。
【００２５】
パラメータセット更新
図3は、パラメータセットID(302)における値「2」によって示されるような位置「2」に記憶されるべきパラメータセット(301)(ピクチャパラメータセット、シーケンスパラメータセット、または任意の他の形式のパラメータセットであってよい)を示しており、パラメータセット(301)は、その存在がフラグ(304)によって信号伝達されるオプション部(303)を含む。オプション部(303)は、ここでは斜線陰影によって識別される特定の内容を有し、ここでは数字「1」によって識別されるフラグ(304)が設定される。
【００２６】
復号器による受信および処理の後で、パラメータセットは、パラメータセットテーブル(306)の位置「2」(305)に記憶される。オプション部は、それが存在したとき、斜線陰影(307)によって示されるように、やはり記憶されている。用語「記憶される」は、たとえば、パラメータセットが、そのパラメータセットID(値「2」)を参照することによって取り出され得ることを意味してよい。テーブルにおける位置2にそれを記憶することは、パラメータセットを編成する便宜的な形の1つにすぎない。
【００２７】
さらにタイムライン(308)を進むと、別のパラメータセット(309)が受信され、やはり位置「2」に記憶されることになるが、これは「0」にセットされたフラグ(310)が示すように、符号化されていないオプション部を有する。
【００２８】
実施形態によれば、復号器による受信および処理の後で、受信したパラメータセットは、パラメータセットにおいて示された位置、ここでは位置「2」(311)に記憶される。斜線陰影(307)によって示されるパラメータセットの一部の内容は、最後の伝送から変更していることがある。
【００２９】
実施形態によれば、受信後、オプション部は、(先行技術による場合のように)未定義ではなく、ここでは斜線陰影(307)によって示される、それが以前に有した値を保有している。
【００３０】
上述した機構は、パラメータセットの更新を考慮している。パラメータセットは、多くのオプション部を含み、そのそれぞれが受信したパラメータセットにおけるオプション部の存在または不在を示すフラグ(または他の情報)を有することができるので、パラメータセットの個々の部分は、送信されたパラメータセットに含まれても、または送信されたパラメータセットから省かれてもよく、省かれた部分は、事前に伝送された値を再利用することができる。
【００３１】
より形式的に表して、パラメータセットは、n値v(n)を含むことができると仮定する。n値v(n)は、単一のシンタックス要素、または有利にはなんらかの意味関係を有するシンタックス要素のグループであってよい。たとえば、ループフィルタ制御、柔軟なマクロブロック順序、または類似のツールに関係したすべての情報に関するシンタックス要素のグループが形成されてよい。
【００３２】
一組のフラグf(n)が、n値について挿入されてよく、ここで、f(n)は、パラメータセットNALユニットにおけるv(n)の存在または不在を示す。たとえば、f(n)が0である場合、パラメータ値v(n)は、パラメータセットNALユニットにおいて存在していなくてよく、f(n)が1である場合、パラメータv(n)は、パラメータセットNALユニットにおいて存在していてよい。フラグf(n)は、ブーリアンフラグであってよく、または他の表現が選ばれてもよい。たとえば、値v(n)ごとに個々のフラグを有する代わりに、フラグf(n)の設定の1つまたは複数の頻繁な組み合わせがグループ化されてもよく、それらのグループが、たとえば、可変長コードで表される整数によって信号伝達されてもよい。f(n)の実際の表現に関わらず、結果として、パラメータセットNALユニットにおける値v(n)は、この時オプションであり、いかなる表現でf(n)が符号化されても、値v(n)の存在はf(n)によって示される。
【００３３】
既に説明した機構を使用して、これらのオプション値のそれぞれは、パラメータセット更新において含まれても、省かれてもよく、それにより、すべてのv(n)を伝送するオーバーヘッドなしに、1つまたは複数のv(n)の条件付き置換を考慮する。たとえば、3つの値v(n)が存在し、すなわち、nが0から2の範囲であると仮定する。パラメータセットNALユニットは、f(0)=0、f(1)=1、およびf(2)=0を含むことができ、v(1)は、値のための新しい設定に等しい。復号器においてパラメータセットNALユニットを復号すると、v(1)は、復号器において事前に既知であるv(1)を置換し、しかし、v(0)およびv(2)は、NALユニットを復号化する前のまま残る。
【００３４】
説明した更新機構は、それらの値の大きな割合を保有しつつ、多少の変更が必要な多数のパラメータセットが存在する場合に、とりわけよく機能することができる。この使用は、パラメータセット伝送において2つ以上の記憶位置を使用するオプションを導入することにより、対応されてよい。
【００３５】
複数のパラメータセット参照値
図4bを参照すると、復号器(402)によって受信されたパラメータセットは、2つ以上の記憶位置を示すために使用されてよい2つ以上のパラメータセット参照値を含むことができる。3つのそのような位置(404)の決められた数が示されている。これらの数のいずれも、「記憶してはならない」ことを示すあらかじめ定義された値と異なっていれば、復号器は、パラメータセットのコピーを与えられた位置に記憶することができる。たとえば、位置参照がバイナリ整数形式で符号化されたと仮定すると、最大数が、「記憶してはならない」を示すことができる。しかしながら、そのような位置の変数を利用することができる。たとえば、ある整数値は、後に続く記憶位置の数を示すことができ、または各記憶位置に関連付けられたビットは、別の記憶位置が後に続くかどうかを示すことができる。
【００３６】
パラメータセット伝送において複数のパラメータ参照値を可能にすることは、最少のオーバーヘッドで、場合により多数の同一パラメータセットでパラメータセットテーブルにポピュレートすることを考慮している。これらのパラメータセットは、既に説明したパラメータセット更新機構を使用して、変更されてもよい。
【００３７】
パラメータセットコピーメッセージ
多くの同一値を有する複数のパラメータセットの効率的な伝送の問題に対応するための別のオプションは、パラメータセット保持メッセージにおいて符号化されてよいコピーコマンドの使用である。
【００３８】
ITU Rec. H.264のシンタックス構造において、パラメータセット保持メッセージのための1つの適切な場所は、NALユニットタイプを確保することによってこの目的のために取り置かれたNALユニットタイプであってよい。しかしながら、ビットストリーム内の他の場所も同様に適切であってよい。
【００３９】
図5は、パラメータセット保持NALユニットのための例示的なシンタックスを示す。具体的には、コピーメッセージNALユニット(505)、および未定義メッセージNALユニット(506)が示されている。とりわけNALユニットタイプ(これは、ITU Rec. H.264などの先行技術、または他の適切な符号化スキームにより符号化されていてよい)を示すNALユニットヘッダ(NUH)(501)に続いて、ビットフィールドCMD(502)が、保持コマンドのタイプを示すことができる。本明細書では、2つのそのようなコマンド、すなわち、「コピー」および「未定義」を開示しているが、今後追加されるコマンドに備える拡張機構を含むことが好都合なことがあり、拡張機構はこのケースでは、(2つのメッセージ「コピー」と「未定義」とを区別するための最小値となる)1ビットよりも大きなCMDビットフィールド(502)を作成することによって実装されてよい。
【００４０】
保持コマンドタイプのビットフィールドに続いて、発行される保持コマンドに固有であってよい他のビットが続く。コピーコマンドについて、1つの設計上の選択は、ソースパラメータセット位置(503)のためのビットフィールドであり、これに目的先パラメータセット位置(504)のための別のビットフィールドが後に続く。他の例が、既に上で説明したような機構を使用して、2つ以上の目的先の信号伝達を可能にしてもよい。
【００４１】
パラメータセット無効化メッセージ
引き続き図5を参照すると、例示的な未定義メッセージ(506)のシンタックスがまた示されている。未定義メッセージは、NALユニットヘッダ(501)、およびパラメータセット保持コマンドのタイプ、すなわち「未定義」を示す、CMDビットフィールドで始まる。これに、その全体において未定義な状態に設定される必要がある、パラメータセットの1つまたは複数の識別情報(507)が後に続いてよい。
【００４２】
部分的なパラメータセットの無効化
いくつかのシナリオでは、(上で説明したようなパラメータセット全体とは対照的に)パラメータセットのうちの一部のみを「未定義」として設定することが好都合なことがある。パラメータセットのそれらの部分は識別される必要があるため、メッセージは、有利には、(上のコピーメッセージおよび未定義メッセージのような)汎用的なものではなく、むしろパラメータセット更新メッセージのような固有のものであってよい。1つの設計上の選択は、各値フィールドv(n)の始まりに、「未定義」を示すフラグu(n)を含めることである。パラメータセット更新メッセージが送信されると、フラグf(n)が設定され、フラグu(n)もまた設定され、次いで(存在する場合)、v(n)の残り部分は復号器によって無視され、v(n)が未定義として設定される。
【００４３】
開示される主題に従って、本明細書で説明したパラメータセット保持の技法は、ハードウェアおよびソフトウェアの任意の好適な組み合わせを使用して実装されてよいことが理解されるだろう。たとえば、符号器は、適切な場合、(ビットをワイヤ上に保存する)デルタ符号化を使用することができる、パラメータセット符号化モジュールを含むことができる。復号器は、ワイヤからデルタ符号化されたパラメータセットを取り出すためのパラメータセット復号化モジュールを含み、符号化されていないオプション部をパッチしないことによって、適用することができる。上述したレート推定および制御技法を実装し、動作させるためのソフトウェア(すなわち、命令)は、コンピュータ可読媒体で提供されてよく、コンピュータ可読媒体は、限定せずに、ファームウェア、メモリ、記憶デバイス、マイクロコントローラ、マイクロプロセッサ、集積回路、ASIC、オンラインでダウンロード可能な媒体、および他の利用可能な媒体を含むことができる。
【００４４】
コンピュータシステム
上で説明した方法を、コンピュータ可読命令を使用するコンピュータソフトウェアとして実装し、コンピュータ可読媒体に物理的に保存することができる。コンピュータソフトウェアは、任意の好適なコンピュータ言語を使用して、符号化されてよい。ソフトウェア命令は、さまざまなタイプのコンピュータ上で実行されてよい。たとえば、図6は、本開示の実施形態を実装するために好適なコンピュータシステム600を示す。
【００４５】
図6に示すコンピュータシステム600のためのコンポーネントは、本質的に例示であり、本開示の実施形態を実装するコンピュータソフトウェアの使用または機能性の範囲に関して、いかなる限定を示唆することも意図していない。コンポーネントの構成もまた、コンピュータシステムの例示的な実施形態に示すコンポーネントの任意の1つ、またはその組み合わせに関する任意の依存性または要件を有するものとして解釈されるべきでない。コンピュータシステム600は、集積回路、プリント回路基板、(移動電話またはPDAなどの)小型ハンドヘルドデバイス、パーソナルコンピュータ、またはスーパーコンピュータを含む、多くの物理的な形態を有することができる。
【００４６】
コンピュータシステム600は、ディスプレイ632と、1つまたは複数の入力デバイス633(たとえば、キーパッド、キーボード、マウス、スタイラスなど)と、1つまたは複数の出力デバイス634(たとえば、スピーカ)と、1つまたは複数の記憶デバイス635と、さまざまなタイプの記憶媒体636とを含む。
【００４７】
システムバス640は、幅広いサブシステムを連結する。当業者が理解するように、「バス」は、共通の機能を供給する複数のデジタル信号線を指す。システムバス640は、メモリバス、周辺バス、およびさまざまなバスアーキテクチャのうちのいずれかを使用するローカルバスを含む、いくつかのタイプのバス構造のうちのいずれかであってよい。例として、限定せずに、そのようなアーキテクチャは、業界標準アーキテクチャ(ISA)バス、拡張ISA(EISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、ビデオエレクトロニクススタンダーズアソシエーションローカル(VLB)バス、ペリフェラルコンポーネントインターコネクト(PCI)バス、PCIエクスプレスバス(PCI-X)、およびアクセラレーテッドグラフィックスポート(AGP)バスを含む。
【００４８】
プロセッサ601(中央処理装置、すなわちCPUとも呼ばれる)は、命令、データ、またはコンピュータアドレスの一時的なローカル記憶のために、キャッシュメモリユニット602をオプションで含む。プロセッサ601は、メモリ603を含む記憶デバイスに結合される。メモリ603は、ランダムアクセスメモリ(RAM)604および読み出し専用メモリ(ROM)605を含む。本技術分野でよく知られる通り、ROM605は、データおよび命令を一方向でプロセッサ601に転送する働きをし、RAM604は、通常、データおよび命令を双方向なやり方で転送するために使用される。これらのタイプのメモリは共に、以下で説明する任意の好適なコンピュータ可読媒体を含むことができる。
【００４９】
固定記憶装置608がまた、オプションで記憶制御ユニット607を介して、プロセッサ601に双方向で結合される。固定記憶装置608は、追加のデータ記憶容量を提供し、以下で説明するコンピュータ可読媒体のうちのいずれかをやはり含むことができる。記憶装置608は、オペレーティングシステム609、EXEC610、アプリケーションプログラム612、データ611などを記憶するために使用されてよく、記憶装置608は、通常、一次記憶装置よりも低速な二次記憶媒体(ハードディスクなど)である。記憶装置608内に保有された情報は、適切な場合、標準的なやり方で仮想メモリとしてメモリ603に組み込まれてよいことを認識されたい。
【００５０】
プロセッサ601はまた、グラフィック制御621、ビデオインターフェース622、入力インターフェース623、出力インターフェース、記憶装置インターフェースなどの、さまざまなインターフェースに結合され、これらのインターフェースは次いで、適切なデバイスへと結合される。一般的に、入力/出力デバイスは、ビデオディスプレイ、トラックボール、マウス、キーボード、マイクロフォン、タッチセンサ式ディスプレイ、トランスデューサカードリーダ、磁気もしくは紙テープリーダ、タブレット、スタイラス、音声もしくは手書き認識装置、バイオメトリクスリーダ、またはその他のコンピュータのうちのいずれかであってよい。プロセッサ601は、ネットワークインターフェース620を使用して、別のコンピュータまたは電気通信ネットワーク630に結合されてよい。そのようなネットワークインターフェース620により、上で説明した方法を実施する過程において、CPU601は、ネットワーク630から情報を受信でき、またはネットワークへと情報を出力できることが企図される。さらに、本開示の方法の実施形態は、CPU601上で単独で実行することができ、または処理の一部を共有するリモートCPU601と連携して、インターネットなどのネットワーク630上で実行することもできる。
【００５１】
さまざまな実施形態によれば、ネットワーク環境にあるとき、すなわち、コンピュータシステム600がネットワーク630に接続されているとき、コンピュータシステム600は、ネットワーク630にやはり接続されている他のデバイスと通信することができる。通信は、ネットワークインターフェース620を介して、コンピュータシステム600へ、およびコンピュータシステム600から送信されてよい。たとえば、別のデバイスからの要求または応答などの、1つまたは複数のパケットの形式で入ってくる通信が、ネットワーク630からネットワークインターフェース620において受信され、処理のためにメモリ603の選択されたセクションに記憶されてよい。別のデバイスへの要求または応答などの、やはり1つまたは複数のパケットの形式で出ていく通信も、メモリ603の選択されたセクションにまた記憶され、ネットワークインターフェース620においてネットワーク630へと送出されてよい。プロセッサ601は、処理のためにメモリ603に記憶されたこれらの通信パケットにアクセスすることができる。
【００５２】
加えて、本開示の実施形態はさらに、さまざまなコンピュータ実装動作を実施するためのコンピュータコードを有するコンピュータ可読媒体を備えたコンピュータ記憶製品に関する。媒体およびコンピュータコードは、本開示の目的のために特別に設計され、構築されたものであってよく、または、コンピュータソフトウェア技術における当業者によく知られ、入手可能な種類のものであってもよい。コンピュータ可読媒体の例には、ハードディスク、フロッピー（登録商標）ディスク、および磁気テープなどの磁気媒体、CD-ROMおよびホログラフィックデバイスなどの光学媒体、フロプティカルディスクなどの磁気光学媒体、ならびに特定用途向け集積回路(ASIC)、プログラマブル論理デバイス(PLD)、ROMデバイスおよびRAMデバイスなどの、プログラムコードを記憶し、実行するように特別に構成されたハードウェアデバイスが含まれるが、これらに限定されない。コンピュータコードの例には、コンパイラによって生成されるようなマシンコード、およびインタプリタを使用してコンピュータによって実行されるより高レベルなコードを含むファイルが含まれる。当業者はまた、目下開示される主題と関連して使用されるとき、用語「コンピュータ可読媒体」が、伝送媒体、搬送波、または他の一時的な信号を包含しないことを理解すべきである。
【００５３】
例として、限定とせずに、アーキテクチャ600を有するコンピュータシステムは、メモリ603などの1つまたは複数の有形なコンピュータ可読媒体において具体化されたソフトウェアを、プロセッサ601が実行した結果としての機能性を提供することができる。本開示のさまざまな実施形態を実装するソフトウェアは、メモリ603に記憶され、プロセッサ601によって実行されてよい。特定のニーズに従って、コンピュータ可読媒体は、1つまたは複数のメモリデバイスを含むことができる。メモリ603は、大容量記憶デバイス635などの1つもしくは複数の他のコンピュータ可読媒体から、または通信インターフェースを介した1つもしくは複数の他のソースから、ソフトウェアを読み込むことができる。ソフトウェアは、メモリ603に記憶されたデータ構造を定義すること、およびソフトウェアによって定義されたプロセスに従ってそのようなデータ構造を変更することを含む、本明細書で説明した特定のプロセス、または特定のプロセスの特定の部分を、プロセッサ601に実行させることができる。それに加えて、または代替として、コンピュータシステムは、論理ハードワイヤード、または別のやり方で回路に具体化された結果としての機能性を提供することができ、機能性は、ソフトウェアの代わりに、またはソフトウェアと共に動作して、本明細書で説明した特定のプロセス、または特定のプロセスの特定の部分を実行することができる。ソフトウェアへの言及は、論理を包含することができ、適切な場合、逆もまた同様である。コンピュータ可読媒体への言及は、実行のためのソフトウェアを記憶する回路(集積回路(IC)など)、実行のための論理を具体化する回路、または適切な場合、その両方を包含することができる。本開示は、ハードウェアおよびソフトウェアの任意の好適な組み合わせを包含する。
【００５４】
本開示は、いくつかの例示的な実施形態を説明してきたが、開示される主題の範囲内に入る変更形態、置換形態、およびさまざまな代替均等物が存在する。開示される主題の方法および装置を実装する多くの代替的なやり方が存在することにもまた留意されたい。
【符号の説明】
【００５５】
600  コンピュータシステム
601  プロセッサ
602  キャッシュメモリユニット
603  メモリ
604  ランダムアクセスメモリ
605  読み出し専用メモリ
607  記憶制御ユニット
608  固定記憶装置
609  オペレーティングシステム
610  EXEC
611  データ
612  アプリケーションプログラム
620  ネットワークインターフェース
630  電気通信ネットワーク
621  グラフィック制御
622  ビデオインターフェース
623  入力インターフェース
632  ディスプレイ
633  入力デバイス
634  出力デバイス
635  記憶デバイス
636  記憶媒体
640  システムバス
【図４ａ】
2014512736.tif 000003
【図４ｂ】
2014512736.tif 000004
【図１】
2014512736.tif 000005
【図２】
2014512736.tif 000006
【図３】
2014512736.tif 000007
【図５】
2014512736.tif 000008
【図６】
2014512736.tif 000009
【国際調査報告】
2014512736.tif 000010