(57)【要約】ビデオビットストリームを符号化し、コンピュータネットワークを介して復号化コンピュータシステムへ送信することができる。ビットストリームは、符号化コンピュータシステムがビットストリームからの損失データについて通知されていないときは標準予測構造に従うことができる。ビットストリームにおける損失データの通知を受信する可能性がある。損失データは、ビットストリームの参照フレームの少なくとも一部を含む可能性がある。これに応じて、同期予測フレームが、ビットストリームの１つ又は複数の前に送信されたフレームを参照するが損失データは参照しない予測により、動的に符号化され得る。同期予測フレームは、ビットストリーム内の位置に挿入される。ビットストリーム内のこの位置は、標準予測構造に従うと損失データを参照したであろう予測に係る異なる予測フレームを挿入するように、標準予測構造が指示したであろう位置である。
2015512219.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータにより実施される方法であって、
符号化コンピュータシステムが、ビデオビットストリームを符号化し、コンピュータネットワークを介して復号化コンピュータシステムへ送信するステップであって、前記ビットストリームは、前記符号化コンピュータシステムが前記ビットストリームからの損失データを通知されていないときは標準予測構造に従う、ステップと、
前記符号化コンピュータシステムが前記ビットストリーム内の損失データの通知を受信するステップであって、前記損失データは、前記ビットストリームの参照フレームの少なくとも一部を備える、ステップと、
前記通知に応答して、前記符号化コンピュータシステムが、前記ビットストリーム内の１つ又は複数の他の前に送信されたフレームを参照するが前記損失データは参照しない予測を用いる同期予測フレームを、動的に符号化するステップと、
前記符号化コンピュータシステムが、前記同期予測フレームを前記ビットストリーム内の位置に挿入するステップであって、該位置は、前記標準予測構造に従うと前記損失データを参照したであろう予測に係る異なる予測フレームを挿入するように、前記標準予測構造が指示したであろう位置である、ステップと
を含む、方法。
【請求項２】
前記同期予測フレームは、予測キーフレームを備え、該予測キーフレームの予測は、前記参照フレームに先行する１つ又は複数の他のキーフレームを参照するものに限られる、請求項１に記載の方法。
【請求項３】
前記同期予測フレームは、長期予測キーフレームであり、該長期予測キーフレームの予測は、前記損失データに先行する１つ又は複数の他のキーフレームを参照するものに限られる、請求項１に記載の方法。
【請求項４】
前記異なる予測フレームは、前記参照フレームの拡張レイヤを参照することがあり、前記同期予測フレームは、前記損失データに先行する１つ又は複数のキーフレームを参照する予測を用いるキーフレームである、請求項１に記載の方法。
【請求項５】
前記損失データは、前記参照フレームの前記拡張レイヤの少なくとも一部を備える、請求項４に記載の方法。
【請求項６】
前記損失データは、前記参照フレームのベースレイヤの少なくとも一部を備え、前記ベースレイヤは、前記拡張レイヤの予測によって参照される、請求項４に記載の方法。
【請求項７】
前記損失データは、損失した拡張レイヤの少なくとも一部を備え、前記同期予測フレームは、アンカフレームであり、アンカフレームは、該アンカフレームのベースレイヤを参照する拡張レイヤを備え、前記アンカフレームの前記拡張レイヤの予測は、前記損失した拡張レイヤを参照することを避け、前記異なる予測フレームは前記損失した拡張レイヤを参照していた、請求項１に記載の方法。
【請求項８】
前記アンカフレームの前記ベースレイヤの予測は、前記損失データの少なくとも一部を含むフレームの前記ベースレイヤを参照する、請求項７に記載の方法。
【請求項９】
コンピュータシステムであって、
少なくとも１つのプロセッサと、
少なくとも１つのプロセッサによって実行されると、少なくとも１つのプロセッサに、
ビデオビットストリームを符号化し、コンピュータネットワークを介して復号化コンピュータシステムへ送信するステップであって、前記ビットストリームは、前記符号化コンピュータシステムが前記ビットストリームからの損失データを通知されていないときは標準予測構造に従う、ステップと、
前記ビットストリーム内の損失データの通知を受信するステップであって、前記損失データは、前記ビットストリームの参照フレームの少なくとも一部を備える、ステップと、
前記通知に応答して、前記損失データを参照しない予測による同期予測フレームを動的に符号化し、前記ビットストリーム内に挿入することによって、前記標準予測構造を修正するテップと
を含む動作を実行させる命令を備えるメモリと、
を備える、コンピュータシステム。
【請求項１０】
少なくとも１つのプロセッサによって実行されると、該少なくとも１つのプロセッサに、
符号化コンピュータシステムが、リアルタイムビデオビットストリームを符号化し、コンピュータネットワークを介して復号化コンピュータシステムへ送信するステップであって、前記ビットストリームは、前記符号化コンピュータシステムが前記ビットストリームからの損失データを通知されていないときは標準予測構造に従う、ステップと、
前記符号化コンピュータシステムが前記ビットストリーム内の損失データの通知を受信するステップであって、前記損失データは、前記ビットストリームの参照フレームの少なくとも一部を備える、ステップと、
前記通知に応答して、前記符号化コンピュータシステムが、前記ビットストリーム内の１つ又は複数の他の前に送信されたフレームを参照するが前記損失データは参照しない予測に係る予測キーフレームを、動的に符号化するステップと、
前記符号化コンピュータシステムが、前記予測キーフレームを前記ビットストリーム内の位置に挿入するステップであって、該位置は、位置は、前記標準予測構造に従うと前記損失データを参照したであろう予測に係る異なる予測フレームを挿入するように、前記標準予測構造が指示したであろう位置である、ステップと
を含む動作を実行させるコンピュータ実行可能命令を有する、１つ又は複数のコンピュータ読取可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同期予測ビデオフレームの動的な挿入に関する。
【背景技術】
【０００２】
ビデオデータの予測符号化は、符号化効率を向上させることができる。しかしながら、予測符号化は、伝送中に一部のビデオデータが失われるとき（全ては到着しないか、あるいは到達するのが遅すぎること等により）「ドリフト」生じる可能性がある。「ドリフト」とは、後続フレームにおける欠損データによるエラー伝播を指す。例えば第１のビデオフレーム（ピクチャとも呼ばれることがある）が失われるとき、第１のフレームに続く第２のフレームは、第１のフレームを参照する予測を使用して符号化されることがある。したがって、復号化コンピュータシステムは、第２のフレームを正しく復号することができないことがある。また、第３のフレームが第２のフレームを参照する予測を使用して符号化されることもある。実際、損失フレーム（すなわち、そのフレームのデータの少なくとも一部が失われたフレーム）によるエラーは、予測符号化の損失フレームに対する依拠に起因して、後続フレームを復号化するときにより悪化する可能性がある。会議システムでは、このドリフト問題に対処するため、イントラ符号化されたフレームがビットストリームに挿入されることがある。例えばイントラ符号化されたフレームを、周期的にビットストリームに挿入することがある。別の例として、符号化コンピュータシステムは、ビットストリームからデータが失われたことを通知されると、イントラ符号化されたフレームを動的に挿入することがある。
【発明の概要】
【０００３】
本開示は、同期予測ビデオフレームを動的に挿入することに関する。本明細書において使用されるとき、動的に挿入される同期ビデオフレームは、動的に挿入され、かつ損失データのような指定のデータに依拠する予測を行うことを避ける、ビデオフレームである。これらの動的に挿入されるフレームは、前のフレームを参照して予測的に符号化されるので、これらのフレームは、同等のイントラ符号化フレームよりも効率的であり得る。しかしながら、同期予測ビデオフレームは、損失データを参照する予測を避けることによって、ドリフトをなくした同期を可能にすることができる。
【０００４】
一実施形態において、ツール及び方法は、符号化コンピュータシステムが、ビデオストリームを符号化し、コンピュータネットワークを介して復号化コンピュータシステムへ送信することを含むことができる。符号化コンピュータシステムがビットストリームからの損失データを通知されていないとき、ビットストリームは標準予測構造（regular  prediction  structure）に従うことができる。符号化コンピュータシステムは、ビットストリームにおける損失データの通知を受信することができる。損失データは、ビットストリームの参照フレームの少なくとも一部を含み得る。また、符号化コンピュータシステムは、ビットストリーム内の１つ又は複数の他の前に送信されたフレームを参照し、かつ損失データは参照しない予測を用いて、同期予想されるフレームを動的に符号化することによって、通知に応答することができる。符号化コンピュータシステムは、同期予測フレームをビットストリーム内の位置に挿入することができるが、このビットストリーム内の位置は、標準予測構造が、該標準予測構造に従うと損失データを参照することになる予測に係る、異なる予測フレームの挿入を指示したであろう位置である。
【０００５】
この「発明の概要」の記載は、以下の「発明を実施するための形態」において更に説明される概念の選択を簡単な形で紹介するのに提供される。この「発明の概要」の記載は、特許請求に係る主題の主要な特徴又は本質的特徴を特定するようには意図されておらず、また特許請求に係る主題の範囲を限定するのに用いられるようにも意図されていない。同様に、本発明は、「背景技術」、「発明を実施するための形態」又は図面において検討される特定の方法、ツール、環境、欠点又は利点に対処する実装に限定されない。
【図面の簡単な説明】
【０００６】
【図１】説明される実施形態の１つ又は複数を実装することができる適切なコンピューティング環境のブロック図である。
【図２】ビデオ伝送環境の概略図である。
【図３】周期的なキーフレームを有する標準予測構造（上）と動的なキーフレームを有する対応の予測構造（下）の例を示す概略図である。
【図４】周期的なキーフレームを有する標準予測構造（上）と動的な長期予測キーフレームを有する対応の予測構造（下）の例を示す概略図である。
【図５】周期的なキーフレームを有する標準予測構造（上）と動的なアンカ予測フレームを有する対応の予測構造（下）の例を示す概略図である。
【図６】同期予測ビデオフレームの動的な挿入の方法のフローチャートである。
【図７】同期予測ビデオフレームの動的な挿入の別の方法のフローチャートである。
【図８】同期予測ビデオフレームの動的な挿入の更に別の方法のフローチャートである。
【発明を実施するための形態】
【０００７】
本明細書で説明される実施形態は、符号化コンピュータシステムが、ブットストリームからデータが失われたことを通知されたときのビットストリームの符号化の改善のための方法又はツールを対象とする。そのような改善は、様々な方法及びツールを別個に又は組み合わせて使用することで得られることがある。
【０００８】
そのような方法及び技術は、異なるタイプの標準予測構造について、異なるタイプの同期予測ビデオフレームを動的に挿入することを含み得る。例えば他のキーフレームを参照するものに限定して予測を行う周期的なキーフレームを有するビットストリームでは、符号化コンピュータシステムがビットストリームからの損失データを通知されると、キーフレームを動的に挿入することができる。別の例として、周期的キーフレームを有さないが、長期参照キーフレームを許容するビットストリームでは、符号化コンピュータシステムがビットストリームからの損失データについて通知されると、長期参照キーフレームを動的に挿入することができる。長期参照キーフレームは、標準フレームより長い間アクティブなフレーム枠（デコーダフレームバッファ内で保持されるべきフレームの枠）で保持されるキーフレームである。例えば長期参照キーフレームは、符号化コンピューティングシステムが、アクティブなフレームの枠からキーフレームを除去するという明示的な通知を送るまで、アクティブなフレーム内に保持され得る。別の例として、ベースレイヤ及び拡張レイヤを有するビットストリームでは、フレームのベースレイヤは、前のフレームのベースレイヤを参照するが、前のフレームの拡張レイヤは参照しない予測を使用して符号化され、フレームの拡張レイヤは、前のフレームの拡張レイヤは参照するが、前のフレームのベースレイヤは参照しない予測を使用して符号化され得る。この標準予測構造では、符号化コンピュータシステムが、フレームの拡張レイヤからのデータは失われたが、そのフレームのベースレイヤからのデータは失われていないということを通知されると、符号化コンピューティングシステムは動的にアンカフレームを挿入することができる。本明細書で使用されるとき、アンカフレームとは、ベースレイヤが、前のフレームのベースレイヤを参照する予測を用いて予測的に符号化され、拡張レイヤが、参照フレーム内の他のレイヤ（例えばベースレイヤ）のみを参照するようにイントラ符号化されるフレームである。
【０００９】
したがって、本明細書で説明されるツール及び方法から１つ又は複数の利点が実現される。例えば同期予測ビデオフレームの動的な挿入は、予測が前のフレームからのデータを参照する何らかの予測符号化を使用することによる効率を保ちつつ、ドリフトをなくした同期を可能にすることができる。
【００１０】
添付の特許請求の範囲において定義される主題は、必ずしも本明細書で説明される利点に限定されない。本発明の特定の実装は、本明細書で説明される利点の全て又は一部を提供することもあり、また提供しないこともある。様々な方法に関する動作は、本明細書において説明の目的で特定の逐次的順序で説明されているが、この説明法は、特定の順序付けが必要とされない限り、動作の順序における再配置を包含することを理解されたい。例えば逐次的に説明される動作を、一部の場合において再配置するか同時に実行してもよい。さらに、簡略化の目的で、フローチャートでは、特定の技法を他の技法とともに使用することができる様々な方法を示していないことがある。
【００１１】
本明細書で説明される技術は、本明細書で説明されるシステムの１つ若しくは複数を用いて、及び／又は１つ若しくは複数の他のシステムを用いて使用され得る。例えば本明細書で説明される様々なプロシージャは、ハードウェア又はソフトウェアとともに、あるいはその双方の組み合わせで実装され得る。例えば特定用途向け集積回路、プログラマグル論理アレイ及び他のハードウェアデバイスのような専用のハードウェア実装を、本明細書で説明される技術の１つ又は複数の少なくとも一部を実装するように構築することができる。様々な実施形態の装置及びシステムを含み得る適用は、様々な電気的及びコンピュータシステムを広く含むことができる。諸技術は、モジュール間及びモジュール中を通信され得る制御及びデータ信号に関連する、２つ又はそれ以上の固有の相互接続されるハードウェアモジュール及びデバイスを使用して、あるいは特定用途向け集積回路の一部として実装され得る。例として、諸実装は、分散処理、コンポーネント／オブジェクト分散処理及び並行処理を含むことができる。さらに、仮想コンピュータシステム処理が、本明細書で説明される技術又は機能の１つ又は複数を実装するように構築される可能性がある。
【００１２】
Ｉ．  例示的なコンピューティング環境
図１は、説明される実施形態の１つ又は複数が実装され得る適切なコンピューティング環境（１００）の一般的な例を図示している。例えば１つ又は複数のこのようなコンピューティング環境を、符号化コンピューティング環境として、復号化コンピューティング環境として、並びに／あるいは符号化コンピュータシステムと１つ又は複数の復号化コンピュータシステムとの間のビデオビットストリームの伝送を容易にするサーバとして使用することができる。一般に、様々な異なる汎用又は専用のコンピューティングシステム構成を使用することができる。本明細書で説明されるツール及び方法とともに使用するのに適した周知のコンピューティングシステム構成の例には、これらに限定されないが、サーバファーム及びサーバクラスタ、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルド又はラップトップデバイス、スレートデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記システム又はデバイスのいずれかを含む分散コンピューティング環境等が含まれる。
【００１３】
本発明は、多様な汎用又は専用のコンピューティング環境において実装され得るので、コンピューティング環境（１００）は、本発明の使用又は機能の範囲に関していかなる限定をも示唆するように意図されていない。
【００１４】
図１を参照すると、コンピューティング環境（１００）は、少なくとも１つの処理ユニット又はプロセッサ（１１０）と、メモリ（１２０）とを含む。図１では、この最も基本的な構成（１３０）が破線内に含まれている。処理ユニット（１１０）は、コンピュータ実行可能命令を実行し、実際の又は仮想プロセッサとすることができる。マルチ処理システムにおいて、複数の処理ユニットがコンピュータ実行可能命令を実行して、処理能力を向上させる。メモリ（１２０）は、揮発性メモリ（例えばレジスタ、キャッシュ、ＲＡＭ）、非揮発性メモリ（例えばＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ）又はこれらの２つの何らかの組み合わせとすることができる。メモリ（１２０）は、同期予測ビデオフレームの動的な挿入を実装するソフトウェア（１８０）を格納する。
【００１５】
図１の様々なブロックは、明確性のために線で示されているが、実際には、様々なコンポーネントの線引きはこのように明確ではなく、比喩的に言うと、図１及び以下で検討される他の図面の線は、より正確には、グレーで不鮮明なものであろう。例えばディスプレイデバイスのようなプレゼンテーションコンポーネントを、Ｉ／Ｏコンポーネントと考えてもよい。またプロセッサがメモリを有する。本発明者らは、そのようなことが技術的性質であることを認識しており、図１の図形は単に、本発明の１つ又は複数の実施形態との関連で使用され得る例示のコンピューティングデバイスの例にすぎないことを繰り返し述べておく。「ワークステーション」、「サーバ」、「ラップトップ」、「ハンドヘルドデバイス」等のようなカテゴリ間に区別はなく、これら及び「コンピュータ」、「コンピューティング環境」若しくは「コンピューティングデバイス」への言及は全て図１の範囲内に含まれる。
【００１６】
コンピューティング環境（１００）は、付加的な機能を有することがある。図１において、コンピューティング環境（１００）は、ストレージ（１４０）と、１つ又は複数の入力デバイス（１５０）と、１つ又は複数の出力デバイス（１６０）と、１つ又は複数の通信接続部（１７０）を含む。バス、コントローラ又はネットワークのような相互接続機構（図示せず）が、コンピューティング環境（１００）のコンポーネントを相互に接続する。典型的に、オペレーティングシステムソフトウェア（図示せず）は、コンピューティング環境（１００）内で動作する他のソフトウェアの動作環境を提供し、コンピューティング環境（１００）のコンポーネントのアクティビティを調整する。
【００１７】
ストレージ（１４０）は、取外し可能であっても取外し不可能であってもよく、コンピュータ読取可能記憶媒体を含み得る。コンピュータ読取可能記憶媒体は、磁気ディスク、磁気テープ又はカセット、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ、あるいは情報を格納するのに使用することができ、コンピューティング環境（１００）内でアクセス可能な任意の他の媒体等である。ストレージ（１４０）は、ソフトウェア（１８０）用の命令を格納する。
【００１８】
入力デバイス（１５０）は、キーボード、マウス、ペン又はトラックボールのようなタッチ入力デバイス、音声入力デバイス、スキャンデバイス、ネットワークアダプタ、ＣＤ／ＤＶＤリーダ、あるいは入力をコンピューティング環境（１００）に提供する別のデバイスとすることができる。出力デバイス（１６０）は、ディスプレイ、プリンタ、スピーカ、ＣＤ／ＤＶＤライタ、ネットワークアダプタ、あるいは出力をコンピューティング環境（１００）から提供する別のデバイスとすることができる。
【００１９】
通信接続部（１７０）は、通信媒体を介して別のコンピューティングエンティティとの通信を可能にする。したがって、コンピューティング環境（１００）は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス若しくは別の一般的なネットワークノードのような１つ又は複数のリモートコンピューティングデバイスとの論理接続を使用するネットワーク環境で動作してもよい。通信媒体は、データ又はコンピュータ実行可能命令のような情報や要求を、変調データ信号で伝達する。変調データ信号は、信号内に情報を符号化する方法により設定又は変更された特性の１つ又は複数を有する信号である。限定ではなく例として、通信媒体は、電気、光、ＲＦ、赤外線、音響又は他の担体により実装される有線又は無線の技術を含む。
【００２０】
ツール及び方法を、コンピュータ読取可能媒体の一般的なコンテキストで説明することができる。コンピュータ読取可能媒体は、記憶媒体又は通信媒体とすることができる。コンピュータ読取可能記憶媒体は、コンピューティング環境内でアクセス可能な任意の記憶媒体とすることができるが、コンピュータ読取可能記憶媒体という用語は伝播信号を指すことはなく、その反対もそうである。限定ではなく例として、コンピューティング環境（１００）では、コンピュータ読取可能記憶媒体は、メモリ（１２０）、ストレージ（１４０）及びこれらの組み合わせを含む。
【００２１】
ツール及び方法を、コンピュータ実行可能命令の一般的なコンテキストで説明することができる。コンピュータ実行可能命令は、プログラムモジュール等に含まれ、コンピューティング環境内で、対象となる実際のプロセッサ又は仮想プロセッサ上で実行される。一般に、プログラムモジュールは、特定のタスクを実行するか特定の抽象データ型を実装する、ルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造等を含む。プログラムモジュールの機能は、様々な実施形態に応じて、プログラムモジュール間で組み合わせてもよく、分割してもよい。プログラムモジュールのコンピュータ実行可能命令は、ローカル又は分散コンピューティング環境において実行され得る。分散コンピューティング環境では、プログラムモジュールを、ローカルとリモート双方のコンピュータ記憶媒体に配置してもよい。
【００２２】
説明の目的で、詳細な説明では、「決定する」、「選択する」、「調整する」、「動作する」等の用語を使用して、コンピューティング環境におけるコンピュータの動作を説明している。これら及び他の類似の用語は、コンピュータによって実行される動作の高レベルの抽象化であり、人間（ユーザのような）による動作の実行が明示的に記載されていない限り、人間によって実行される動作と混同されるべきではない。これらの用語に対応する実際のコンピュータの動作は、実装に応じて変化する。
【００２３】
ＩＩ．  同期予測ビデオフレームの動的な挿入
Ａ．  システム及び環境
図２は、ビデオ伝送環境（２００）の概略図であり、このビデオ伝送環境とともに、説明される実施形態の１つ又は複数が実装され得る。環境（２００）は符号化コンピュータシステム（２１０）を含むことができる。符号化コンピュータシステム（２１０）は、規格又はプロトコルに従ってビデオデータを符号化し、該ビデオデータをビットストリーム（２２０）で１つ又は複数の復号化コンピュータシステム（２３０）に伝送する。これは、様々な異なる符号化の規格及び技術のいずれかを使用して行うことができる。例えばスケーラブルビデオ規格を使用してもよい。そのようなスケーラブルビデオ符号化規格の例は、ＩＴＵ−Ｔ  勧告  Ｈ．２６４（２０１１年６月）において説明されるようなＨ．２６４  ＳＶＣ（scalable  video  coding）であるが、本明細書で説明される技術を、他の規格で用いてもよい。ビットストリーム（２２０）は、コンピュータネットワーク（２４０）を介して伝送されることが可能であり、コンピュータネットワーク（２４０）は、グローバルコンピュータネットワーク（例えばインターネット）及び／又は１つ若しくは複数の他のネットワーク（例えばエクストラネット、ローカルエリアネットワーク、ワイドエリアネットワーク等）を含み得る。この伝送は伝送サーバ（２５０）にも補助され得る。例えば伝送サーバ（２５０）は、符号化コンピュータシステム（２１０）と復号化コンピュータシステム（２３０）との間のインタミディアリとして機能することができる。また符号化コンピュータシステム（２１０）は、自身のビットストリームを符号化して、これらを復号化コンピュータシステム（２３０）のような他のコンピュータシステムに送信することができ、復号化コンピュータシステム（２３０）はビデオビットストリームを受信して復号化することができる。一例において、コンピュータシステム（２１０及び２３０）は、ビデオ会議のようなリアルタイムのオーディオビジュアルイベントに参加していることがあり、この場合、ビデオビットストリームは複数のコンピュータシステム間で送信される。
【００２４】
ビットストリーム（２２０）内のデータは、復号化コンピュータシステム（２３０）への伝送中に失われる可能性がある。例えば損失データは遅れることがあるので、データが復号化コンピューティングシステムに届くのが、使用には遅すぎることがあり、あるいはデータが復号化コンピュータシステムに届かないこともある。いずれにしても、そのデータは失われたと考えられる。復号化コンピュータシステム（２３０）及び／又は伝送サーバ（２５０）は、１つ又は複数の損失通知（loss  notice）を符号化コンピュータシステム（２１０）に送信して、損失したデータを識別する（例えばどのフレーム及び／又はフレームレイヤが損失データの全体又は一部を含んでいたかを識別する）。損失通知（２６０）は、ビットストリーム（２２０）と同じプロトコルを使用する伝送で送信されるか、１つ又は複数の帯域外通信で送信され得る。そのような損失通知（２６０）を受信すると、符号化コンピュータシステム（２１０）は、同期予測ビデオフレーム（２７０）を符号化してビットストリーム（２２０）内に挿入する。同期予測ビデオフレーム（２７０）は、予測を使用して符号化されるが、この場合、この予測は、損失通知（２６０）で識別されるデータを、直接的にも間接的にも参照しない（予測は、損失通知（２６０）内で識別されるデータを参照せず、損失通知（２６０）内で識別されるデータを参照するデータも参照しない等）。そのようなビデオフレーム（２７０）を使用して、損失データに起因して同期されていなかった復号化コンピュータシステム（２３０）を符号化コンピュータシステム（２１０）と同期させることができる。
【００２５】
したがって、ビデオフレーム（２７０）は、損失データに起因して生じるドリフトをなくすことができる。同期予測ビデオフレーム（２７０）は、損失データを含むフレームの後にある次のフレームであるか、又は何らかの後方のフレームであり得る。例えば符号化コンピュータシステム（２１０）は、該符号化コンピュータシステム（２１０）がビットストリーム（２２０）内の１つ又は複数の後続フレームを符号化して送信するまで、損失通知（２６０）を受信しないことがある。損失データを含むフレームと、同期予測ビデオフレーム（２７０）との間のインターリーブするフレームについて、復号化コンピュータシステム（２３０）は、これらのインターリーブするフレームを落とすか隠すこと等によって、損失データへの依拠による悪影響を避ける低減する手段を講じることができる。
【００２６】
Ｂ．  同期予測ビデオフレームの動的な挿入の例
符号化コンピュータシステム（２１０）は、異なる技術及び／又は異なるタイプの挿入された同期予測ビデオフレーム（２７０）を使用して同期を可能にする。Ｈ．２６４  ＳＶＣのようなスケーラブルな符号化されたビデオについて、（データ損失の通知と該データ損失の位置（例えばどのフレーム及び／又はどのレイヤか）を受信することにより）損失の位置を分析すること、及びレイヤ間の依存性と予測符号化構造に基づいて適切な同期情報を挿入することにより、性能が改善され得る。以下の説明では、動的な同期ビデオフレームの挿入が、例としてＨ．２６４  ＳＶＣからの一部の予測符号化構造との関連で説明されるが、ツール及び方法は他の規格にも適用可能である。そのような方法及びツールの一部の例を、次に図３〜図５を参照して検討する。
【００２７】
ここで図３を参照すると、周期的なキーフレームを有する標準予測構造（３００）の例が図示されている。各フレームは、ベースレイヤ（３０２）と拡張レイヤ（３０４）（又は図示していないが複数の拡張レイヤ）とを含むことができ、予測の参照が、同じフレーム内又は異なるフレームのレイヤ間の矢印で示されている。ビデオは、拡張レイヤを追加するかフレームから省くことによってスケーリングされ得る。例えば拡張レイヤは、追加の品質特徴（例えばより小さな量子化ステップサイズ）及び／又はより高い空間解像度を追加することがある。例えば予測構造（３００）は、周期的なキーフレームを有するＨ．２６４の中粒度のスケーラビリティ（ＭＧＳ：medium  grain  scalability）のビットストリームの予測構造とすることができる。図示される標準予測構造（３００）は、逐次順に０から１０まで番号が付けられたフレームを示しており、図３〜図５の他の予測構造内のフレームについても同様の順番が示されている。
【００２８】
標準予測構造（３００）は、瞬時復号化リフレッシュ（ＩＤＲ：instantaneous  decoding  refresh）型のキーフレーム（３１０）（フレーム０）で開始することができるが、このフレームは、イントラ符号化されたキーフレームである。本明細書で使用されるとき、キーフレームは、インターフレーム予測を行わないもの、又は他のキーフレームを参照するインターフレーム予測のみを行うものに限定されるフレームである。ＩＤＲ型のキーフレーム（３１０）は、イントラフレーム予測を行うことができ、該イントラフレーム予測では、（品質拡張レイヤのような）拡張レイヤ（３０４）は、そのフレームのベースレイヤ及び潜在的にはそのフレームの低い拡張レイヤを（直接又は間接的に）参照する予測により符号化される。加えて、ＩＤＲ型のキーフレーム（３１０）は、後続フレームが、ＩＤＲ型のキーフレーム（３１０）に先行するフレームへの予測参照を含むべきでないことを伝えることができる。
【００２９】
ＩＤＲ型のキーフレーム（３１０）の後に、標準予測フレーム（３３０）（フレーム１、２、３、４、６、７、８及び９）が続く。標準予測フレーム（３３０）はそれぞれ、ベースレイヤ（３０２）と拡張レイヤ（３０４）とを含むことができる。標準予測フレーム（３３０）の各ベースレイヤ（３０２）は、前のフレームの最も高い拡張レイヤを参照する予測を用いて符号化され得る。標準予測フレーム（３３０）の各拡張レイヤ（３０４）は、同様に前のフレームの最も高い拡張レイヤを参照し、かつベースレイヤ（３０２）及び／又は同じフレームの１つ又は複数の低い拡張レイヤを参照する予測を用いて符号化され得る。
【００３０】
図３の標準予測構造（３００）は、予測キーフレーム（３２０）（フレーム５及び１０）の周期的な挿入を含むことができる。各予測キーフレーム（３２０）は、他のキーフレーム（３２０及び／又は３１０）を参照するが、標準予測フレームは参照しない予測を含むことができる。したがって、予測キーフレーム（３２０）は、前のキーフレームが失われていない限りにおいて、符号化コンピュータシステムと復号化コンピュータシステムとの間の同期を可能にすることができる。したがって、標準予測フレーム（３３０）に使用される保護と比べて、予測キーフレーム（３２０）について、損失に対する追加の保護を用いてもよい。キーフレーム（３１０又は３２０）が失われる場合、次いで符号化コンピュータシステムは、その損失の通知があると、ＩＤＲ型のキーフレーム（３２０）を挿入することができる。
【００３１】
引き続き図３を参照して、動的な予測キーフレームを有する予測構造（３５０）について検討する。予測構造（３５０）は、符号化コンピュータシステムが損失データ（３６０）の通知を受け取ることを除いて、上述の標準予測構造（３００）と同じものとすることができ、損失データ（３６０）を含むレイヤは、図３〜図５において黒く塗りつぶされている。フレーム６において、損失データ（３６０）が拡張レイヤ（３０４）にあるが、ベースレイヤ（３０２）は失われていない。標準予測構造（３００）に従った場合、次の標準予測フレーム（３３０）（フレーム７）は、損失のある拡張レイヤ（すなわち、損失データを有する拡張レイヤ）を参照する予測を行っていたであろう。しかしながら、符号化コンピュータシステムは、損失データの通知を受信し、予測キーフレーム（３２０）を符号化してフレーム７として挿入することができる。この予測キーフレーム（３２０）は、前のキーフレーム（フレーム５）を参照するが、損失データ（３６０）を有する標準予測フレーム（３３０）は参照しない予測を含むことができる（予測キーフレーム（３２０）は、そのような標準予測フレーム（３３０）を参照しないものに限られるためである）。したがって、フレーム７として挿入される予測キーフレーム（３２０）は、同期予測ビデオフレームとして機能して、フレーム６の拡張レイヤ（３０４）内の損失データ（３６０）から生じ得るドリフトをなくすことができる。
【００３２】
引き続き図３を参照すると、フレーム９では、損失データ（３６０）がフレーム９のベースレイヤ（３０２）にある。ベースレイヤ（３０２）内のデータが失われ、フレーム９の拡張レイヤ（３０４）は、ベースレイヤ（３０２）を参照する予測を含むので、（フレーム９の拡張レイヤ（３０４）の周囲を破線で示しているように）拡張レイヤ（３０４）を正しく復号化することができない。したがって、フレーム９の拡張レイヤ（３０４）を参照する予測を用いる後続フレームを正しく復号化することができないことになり、その結果、これらの後続フレームにおいてドリフトが生じる。しかしながら、符号化コンピュータシステムは、フレーム９内の損失データ（３６０）の通知を受信し、予測キーフレーム（３２０）を符号化してビットストリーム内にフレーム１０として挿入することによって応答することができ、その結果、フレーム１０は、フレーム７として符号化されて挿入された予測キーフレーム（３２０）のように、同期予測ビデオフレームとして機能することができる。予測キーフレーム（３２０）は、何らかのインターフレーム予測を使用するので、これらの予測キーフレームは、ＩＤＲ型のキーフレームのようなイントラ符号化されるフレームよりも、より効率的に符号化されることが可能であり、同期及び損失データからドリフトをなくすことも可能にすることができる。
【００３３】
次に図４を参照して、同期予測ビデオフレームの動的な挿入の使用の別の例を検討する。例えばこれは、Ｈ２６４  ＳＶＣ規格によるＭＧＳ構造とともに用いられてもよい。周期的なキーフレームを有さない標準予測構造（４００）が図４の上部に図示されている。標準予測構造（４００）は、図示されるように標準ＩＤＲ型のキーフレーム（４１０）で、あるいはＬＩＤＲ型のキーフレーム（４１２）（図４の下部を参照されたい）で開始することができる。ＬＩＤＲ型のキーフレーム（４１２）は、長期フレームが、長期フレームでないフレーム（例えば標準ＩＤＲ型のキーフレーム）を用いて行われるものよりも長いアクティブフレーム枠で保持され得ることを除いて、上述のＩＤＲ型のキーフレーム（４１０）と同様であり得る。ＩＤＲフレーム（４１０）の後に、標準予測フレーム（４３０）が続くことができる。この標準予測フレーム（４３０）は、上述の標準予測フレーム（３３０）と同じものとすることができる。フレーム（４１０及び４３０）はそれぞれ、上述のようにベースレイヤ（４０２）と１つ又は複数の拡張レイヤ（４０４）を有することができる。
【００３４】
図４の下部に予測構造（４５０）を図示しており、予測構造（４５０）は、その開始部にＬＩＤＲ型のキーフレーム（４１２）を有し、その後方に動的な予測キーフレームを有する。図示されるように、フレーム６の拡張レイヤ（４０４）及びフレーム９のベースレイヤ（４０２）は、損失データ（４６０）を含む。これらの場合において、符号化コンピュータシステムは、長期予測キーフレーム（４２０）を符号化してビットストリームに挿入することによって、損失データの各通知に対して応答することができる。そのようなフレームは、ＬＩＤＲ型キーフレーム（４１２）に関連して上述したように、標準フレームよりも長く保持され得る。したがって、最新のキーフレームは、少なくとも別のキーフレームが符号化されて送信されるまで、復号化バッファに保持され得る。また、長期予測キーフレーム（４２０）は、他のキーフレームを参照することができる予測を含むことができるが、標準予測フレーム（４３０）を参照しないものに限られる。したがって、各長期予測キーフレーム（４２０）は、データを損失した後に、結果して生じるドリフトをなくすことができる、符号化コンピュータシステムと復号化コンピュータシステムとの同期を可能する同期予測フレームとして機能することができる。
【００３５】
次に図５を参照して、異なる予測構造を有する同期予測ビデオフレームの使用の別の例を検討する。予測キーフレームを有しない標準予測構造（５００）が図５の上部に図示されている。標準予測構造（５００）は、上述の標準予測構造（４００）と同様のものとすることができる。しかしながら、それぞれの標準予測フレーム（５３０）は、前のフレームの拡張レイヤ（５０４）を参照するのではなく、前のフレームのベースレイヤ（５０２）を参照する予測を含むベースレイヤを有することができる。例として、標準予測構造（５００）は、Ｈ．２６４  ＳＶＣ規格の下で粗粒にスケーラブルな（ＣＧＳ：coarse grain scalable）ビットストリーム又は空間的にスケーラブルなビットストリームに従って構造化され得る。
【００３６】
図５の下部に、動的なアンカ予測フレームを有する予測構造（５５０）を図示している。図５に示されるように、フレーム６の拡張レイヤ（５０４）とフレーム９のベースレイヤ（５０２）は損失データ（５６０）を含む。フレーム６の拡張レイヤ（５０４）における損失データ（５６０）の通知を受信したことに応答して、符号化コンピュータシステムは、アンカ予測フレームを符号化してフレーム７として挿入することができる。アンカ予測フレームは、フレーム６のベースレイヤ（５０２）を参照する予測を用いるベースレイヤ（５０２）を含むことができる。アンカ予測フレーム（５２０）のベースレイヤ（５０２）を、標準予測フレーム（５２０）として符号化することができ、フレーム７の拡張レイヤ（５０４）は、イントラフレーム参照を含むもののみに限られる予測を含むことができる。したがって、アンカ予測フレームは、前のフレームのベースレイヤ（５０２）を参照するイントラフレーム予測を含んで、符号化効率を向上させることができるが、損失データ（５６０）を含むフレーム６の拡張レイヤ（５０４）を参照するインターフレーム予測を避けることができる。
【００３７】
フレーム９のベースレイヤ（５０２）における損失データ（５６０）の通知を受信したことに応答して、符号化コンピュータシステムは、ＩＤＲ型のキーフレーム（５１０）を符号化してフレーム１０として挿入し、フレーム９内の損失データ（５６０）からのドリフトをなくすことができる。
【００３８】
上記のタイプの同期予測フレームの組み合わせを使用することも可能であることに留意されたい。例えばアンカ予測フレーム（５２０）と長期予測キーフレーム（４２０）との組み合わせを使用して、同じビットストリーム（例えばＨ．２６４  ＣＧＳビットストリーム）の損失に対処することも可能である。
【００３９】
ＩＩＩ．同期予測ビデオフレームの動的な挿入の方法
同期予測ビデオフレームの動的な挿入のための幾つかの方法を以下で検討する。これらの方法の各々は、コンピューティング環境で実行され得る。例えば各方法は、少なくとも１つのプロセッサと、（メモリが命令（例えばオブジェクト、コード）を格納し、プロセッサがこれらの命令を実行し、プロセッサがこの方法を行うとき）少なくとも１つのプロセッサによって実行されると少なくとも１つのプロセッサに方法を実行させる命令を含むメモリとを含むコンピュータシステムにおいて実行され得る。同様に、１つ又は複数のコンピュータ読取可能記憶媒体は、そのコンピュータ読取可能記憶媒体上に具現化され、少なくとも１つのプロセッサによって実行されると、少なくとも１つのプロセッサに本方法を実行させる、コンピュータ実行可能な命令を有する。
【００４０】
図６を参照して、動的予測ビデオフレームの動的な挿入の方法を説明する。この方法は、符号化システムがビットストリームを符号化し（６０５）、コンピュータネットワークを介して復号化コンピュータシステムに送信すること（６１０）を含むことができる。ビデオビットストリームは、符号化コンピュータシステムが、ビットストリームからの損失データを通知されていないとき、標準予測構造に従うことができる。符号化コンピュータシステムは、ビットストリームにおける損失データの通知を受信することができる（６２０）。損失データは、ビットストリームの参照フレームの少なくとも一部を含むことができる。この通知に応答して、符号化コンピュータシステムは、損失データを参照することなく、ビットストリームの１つ又は複数の他の前に送信されたフレームを参照する予測を用いる同期予測フレームを、動的に符号化することができる（６３０）。符号化コンピュータシステムは、標準予測構造によると損失データを参照したであろう予測に係る異なる予測フレームを挿入するように、標準予測構造が指示したであろうビットストリーム内の位置に、同期予測フレームを挿入することができる。
【００４１】
同期予測フレームは、予測キーフレームを含むことができ、該予測キーフレームの予測は、参照フレームに先行する１つ又は複数の他のキーフレームを参照するものに限られる。予測キーフレームの予測は、１つ又は複数のイントラ符号化されたキーフレーム（例えばＩＤＲフレーム）及び／又は１つ又は複数の予測キーフレームを参照することができる。
【００４２】
同期予測フレームは、長期予測キーフレームとすることができ、該長期予測キーフレームの予測は、損失データに先行する１つ又は複数の他のキーフレームを参照するものに限られる。長期予測キーフレームは、１つ又は複数の他の長期キーフレームを参照することができる。
【００４３】
標準構造の下で符号化されて送信されていた異なる予測フレームは、参照フレームの拡張レイヤを参照していたフレームである可能性もある。同期予測フレームは、損失フレームに先行する１つ又は複数のキーフレームを参照する予測によるキーフレームとすることができる。損失データは、参照フレームの拡張レイヤの少なくとも一部、及び／又は参照フレームのベースレイヤの少なくとも一部を含むことがある。ベースレイヤは、拡張レイヤの予測によって参照される可能性がある。
【００４４】
損失データは、損失した拡張レイヤの少なくとも一部を含むことがあり、同期予測フレームは、該同期予測フレームのベースレイヤを参照する拡張レイヤを含むことがある。同期予測フレームの拡張レイヤの予測は、損失した拡張レイヤを参照するのを避けることができる。加えて、異なる予測フレームの拡張レイヤは、損失データの少なくとも一部を有する拡張レイヤを参照していたフレームである可能性がある。同期予測フレームのベースレイヤの予測は、損失データの少なくとも一部を含むフレームのベースレイヤを参照し得る。
【００４５】
次に図７を参照して、同期予測ビデオフレームの動的な挿入の方法を説明する。本方法は、ビデオビットストリームを符号化して（７０５）、コンピュータネットワークを介して復号化コンピュータシステムへ送信すること（７１０）を含むことができる。ビデオビットストリームは、符号化コンピュータシステムが、ビットストリームからの損失データについて通知されていないとき、標準予測構造に従うことができる。ビットストリームにおける損失データの通知が受信され得る（７２０）。ここで、損失データは、ビットストリームの参照フレームの少なくとも一部を含み得る。通知に応答して、標準予測構造は、損失データを参照しない予測により同期予測フレームを符号化し、ビットストリームに挿入することによって動的に修正され得る（７３０）。
【００４６】
同期予測フレームを挿入することは、同期予測フレームをビットストリーム内の位置に挿入することを含むことができ、このビットストリーム内の位置は、標準予測構造によると損失データを参照することになる予測に係る異なる予測フレームを挿入するように、標準予測構造が指示したであろう位置である。異なるフレームは、参照フレームの拡張レイヤを参照したであろうフレームとすることができる。例えば参照フレームの拡張レイヤは、品質拡張レイヤ又は空間拡張レイヤであってよい。損失データは、拡張レイヤの少なくとも一部を含んでもよく、同期予測フレームの予測は、拡張レイヤを参照せず、拡張レイヤの下のベースレイヤを参照することができる。同期予測フレームは、ビットストリーム内の損失データに先行する１つ又は複数のキーフレームを参照する予測を用いるキーフレームを含むことができる。
【００４７】
次に図８を参照して、同期予測ビデオフレームの動的な挿入の更に別の方法を説明する。本方法は、符号化コンピュータシステムが、リアルタイムビデオビットストリームを符号化して（８０５）、コンピュータネットワークを介して伝送サーバ経由で復号化コンピュータシステムへと送信すること（８１０）を含むことができる。ビデオビットストリームは、符号化コンピュータシステムが、ビットストリームからの損失データについて通知されていないとき、フレーム間の標準予測構造に従うことができる。符号化コンピュータシステムは、ビットストリーム内の損失データの通知を受信することができる（８２０）。損失データは、ビットストリームの参照フレームの少なくとも一部を含むことができる。通知に応答して、符号化コンピュータシステムは、予測キーフレームを動的に符号化すること（８３０）ができ、この予測キーフレームの予測は、参照フレームに先行するビットストリーム内の１つ又は複数の他のキーフレームを参照するが、参照フレームは参照しない。予測キーフレームは、標準予測構造が、該標準予測構造によると損失データを参照することになる予測に係る異なる予測フレームを挿入するように指示したであろうビットストリーム内の位置に挿入され得る。
【００４８】
本主題を、構造的特徴及び／又は方法的動作に特有の言語で説明してきたが、特許請求の範囲において定義される主題は、必ずしも上述の具体的な特徴又は動作に限定されないことを理解されたい。むしろ、上述の具体的な特徴又は動作は、請求項を実装する例示的な形式として開示される。
【図１】
2015512219.tif 000003
【図２】
2015512219.tif 000004
【図３】
2015512219.tif 000005
【図４】
2015512219.tif 000006
【図５】
2015512219.tif 000007
【図６】
2015512219.tif 000008
【図７】
2015512219.tif 000009
【図８】
2015512219.tif 000010
【国際調査報告】
2015512219.tif 000011
2015512219.tif 000012