JP2014523693A - ビデオ符号化及び復号化における待ち時間の低減 - Google Patents

ビデオ符号化及び復号化における待ち時間の低減 Download PDF

Info

Publication number
JP2014523693A
JP2014523693A JP2014518537A JP2014518537A JP2014523693A JP 2014523693 A JP2014523693 A JP 2014523693A JP 2014518537 A JP2014518537 A JP 2014518537A JP 2014518537 A JP2014518537 A JP 2014518537A JP 2014523693 A JP2014523693 A JP 2014523693A
Authority
JP
Japan
Prior art keywords
frame
latency
frames
video
syntax elements
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014518537A
Other languages
English (en)
Other versions
JP6059219B2 (ja
JP2014523693A5 (ja
Inventor
ジェイ サリバン,ゲイリー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2014523693A publication Critical patent/JP2014523693A/ja
Publication of JP2014523693A5 publication Critical patent/JP2014523693A5/ja
Application granted granted Critical
Publication of JP6059219B2 publication Critical patent/JP6059219B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

ビデオフレームの並べ替えに起因する待ち時間を制限することにより、及びビデオフレームの符号化データに伴う1又は複数のシンタックスエレメントでフレーム並べ替え待ち時間の制約を示すことにより、ビデオ符号化及び復号化の際の待ち時間を低減する技術及びツールを提供する。例えば、ビデオエンコーダを有するリアルタイム通信ツールは、フレーム並べ替え待ち時間の制約を示すシンタックスエレメントを設定し、次にシンタックスエレメントを出力する。このフレーム並べ替え待ち時間の制約は、ビデオシーケンスの複数のフレーム間のフレーム間依存性と一致する。ビデオデコーダを有する対応するリアルタイム通信ツールは、フレーム並べ替え待ち時間の制約を示すシンタックスエレメントを受信し、該シンタックスエレメントに基づきフレーム並べ替え待ち時間の制約を決定し、フレーム並べ替え待ち時間の制約を用いて、(出力順序の観点から)再構成フレームの出力準備ができたときを決定する。

Description

本発明は、ビデオ符号化及び復号化における待ち時間の低減に関する。
技術者は、デジタルビデオのビットレートを低減するために圧縮(ソースコーディング又はソースエンコーディングとも呼ばれる)を用いる。圧縮は、情報をより低いビットレート形式に変換することにより、ビデオ情報を格納及び送信するコストを低減する。伸張(デコーディングとも呼ばれる)は、圧縮形式から元の情報のバージョンを再構成する。「コーデック」は、エンコーダ/デコーダシステムである。
過去20年間に亘り、様々なビデオコーデック規格が採用されてきた。このような規格は、H.261、H.262(MPEG−2又はISO/IEC13818−2)、H.263及びH264(AVC又はISO/IEC14496−10)規格、並びにMPEG−1(ISO/IEC11172−2)、MPEG−4 Visual(ISO/IEC14496−2)及びSMPTE421M規格を含む。更に最近は、HEVC規格を策定中である。ビデオコーデック規格は、通常、符号化ビデオビットストリームのシンタックスのオプションを定め、符号化及び復号化の際に特定の機能が用いられるとき、ビットストリーム内のパラメータを詳細に記述する。多くの場合、ビデオコーデック規格は、デコーダが復号化する際に正しい結果を達成するために実行すべき復号化動作に関する詳細も提供する。
圧縮の基本的目標は、良好なレート歪み性能を提供することである。したがって、特定のビットレートで、エンコーダは、最高品質のビデオを提供しようとする。或いは、特定レベルの品質/元のビデオに対する忠実さで、エンコーダは、最低ビットレートの符号化ビデオを提供しようとする。実際には、使用シナリオに依存して、符号化時間、符号化の複雑さ、符号化リソース、復号化時間、復号化の複雑さ、復号化リソース、全体の遅延、及び/又は再生の滑らかさも、符号化及び復号化中に行われる決定に影響を与える。
例えば、記憶装置からのビデオ再生、ネットワーク接続を介してストリーミングされる符号化データからのビデオ再生、及び(あるビットレートから別のビットレートへの、又はある規格から別の規格への)ビデオのトランスコーディングのような使用シナリオを検討する。エンコーダ側では、このような用途は、全く時間に依存しないオフライン符号化を可能にする。したがって、エンコーダは、ビデオを圧縮する最も効率的な方法を見付けるために、符号化時間を増大し、符号化中に使用されるリソースを増大でき、それによりレート歪み性能を向上できる。デコーダ側で少量の遅延が許容可能な場合、エンコーダは、例えばシーケンスの遙か前方にあるピクチャからのピクチャ間依存性を利用することにより、レート歪み性能を更に向上できる。
また、遠隔デスクトップ会議、監視ビデオ、ビデオ電話、及び他のリアルタイム通信シナリオのような使用シナリオを検討する。このような用途は、時間に依存する。入力ピクチャの記録と出力ピクチャの再生との間の短い待ち時間が、性能の主要な要因である。非リアルタイム通信に適用される符号化/復号化ツールがリアルタイム通信シナリオに適用されるとき、全体の待ち時間は、許容できない程長くなる場合が多い。これらのツールが符号化及び復号化中に導入する遅延は、通常のビデオ再生の性能を向上し得るが、それらはリアルタイム通信を台無しにしてしまう。
纏めると、ビデオ符号化及び復号化において待ち時間を減少させる技術及びツールを提示する。この技術及びツールは、待ち時間を低減し、リアルタイム通信における反応を向上する。例えば、技術及びツールは、ビデオフレームの並べ替えに起因する待ち時間を制限することにより、及びビデオフレームの符号化データに伴う1又は複数のシンタックスエレメントでフレーム並べ替え待ち時間の制約を示すことにより、全体の待ち時間を低減する。
本願明細書に記載の技術及びツールの一態様によると、ビデオエンコーダのようなツール、ビデオエンコーダを有するリアルタイム通信ツール、又は他のツールは、待ち時間の制約(例えば、ビデオシーケンスの複数のフレーム間のフレーム間依存性と一致するフレーム並べ替え待ち時間の制約)を示す1又は複数のシンタックスエレメントを設定する。ツールは、シンタックスエレメントを出力し、それにより、フレームの出力順序の観点から、再構成フレームが出力準備ができたときの決定をより簡単且つ迅速に実現する。
本願明細書に記載の技術及びツールの別の態様によると、ビデオデコーダのようなツール、ビデオデコーダを有するリアルタイム通信ツール、又は他のツールは、待ち時間の制約(例えば、フレーム並べ替え待ち時間の制約)を示す1又は複数のシンタックスエレメントを受信し解析する。ツールは、ビデオシーケンスの複数のフレームの符号化データも受信する。符号化データの少なくとも一部は、フレームのうちの1つを再構成するために復号化される。ツールは、シンタックスエレメントに基づき制約を決定でき、次に待ち時間の制約を用いて、(出力順序の観点から)再構成フレームの出力準備ができたときを決定できる。ツールは、再構成フレームを出力する。
本発明の前述の及び他の目的、特徴及び利点は、添付の図面を参照して進められる以下の詳細な説明から一層明らかになるだろう。
幾つかの記載の実施形態が実装され得る例示的なコンピューティングシステムの図である。 幾つかの記載の実施形態が実装され得る例示的なネットワーク環境の図である。 幾つかの記載の実施形態が実装され得る例示的なネットワーク環境の図である。 幾つかの記載の実施形態が実装され得る関連する例示的なエンコーダシステム図である。 幾つかの記載の実施形態が実装され得る関連する例示的なデコーダシステム図である。 例示的なシリーズにおけるフレームの符号化順序及び出力順序を示す図である。 例示的なシリーズにおけるフレームの符号化順序及び出力順序を示す図である。 例示的なシリーズにおけるフレームの符号化順序及び出力順序を示す図である。 例示的なシリーズにおけるフレームの符号化順序及び出力順序を示す図である。 例示的なシリーズにおけるフレームの符号化順序及び出力順序を示す図である。 待ち時間の制約を示す1又は複数のシンタックスエレメントを設定し出力する例示的な技術を示すフローチャートである。 待ち時間の減少した復号化のための例示的な技術を示すフローチャートである。
詳細な説明は、ビデオ符号化及び復号化において待ち時間を減少させる技術及びツールを提示する。この技術及びツールは、待ち時間を減少するのを助け、リアルタイム通信における反応を向上する。
ビデオ符号化/復号化シナリオでは、入力ビデオフレームが受信されたときとフレームが再生されるときとの間の特定の遅延は避けられない。フレームは、エンコーダにより符号化され、デコーダへ配信され、デコーダにより復号化される。そして、特定量の待ち時間が、符号化リソース、復号化リソース及び/又はネットワーク帯域についての実際的制限により引き起こされる。しかしながら、他の待ち時間は回避できる。例えば、待ち時間は、レート歪み性能を向上するために(例えばシーケンスの遙か前方にあるピクチャからのフレーム間依存性を利用するために)、エンコーダ及びデコーダにより導入される可能性がある。このような待ち時間は、レート歪み性能、プロセッサ稼働率又は再生の滑らかさの点で不利益があるかも知れないが、低減できる。
ここに記載される技術及びツールにより、待ち時間を抑制することにより(したがって、フレーム間依存性の時間範囲を制限することにより)及び待ち時間の制約をデコーダに示すことにより、待ち時間は減少される。例えば、待ち時間の制約は、フレーム並べ替え待ち時間の制約である。代替で、待ち時間の制約は、秒、ミリ秒、又は別の時間量の観点からの制約である。次に、デコーダは、待ち時間の制約を決定し、どのフレームが出力する準備ができているかを決定するときに該制約を使用できる。このように、遅延は、遠隔デスクトップ会議、ビデオ電話、監視ビデオ、ウェブカメラビデオ及び他のリアルタイム通信アプリケーションの場合に減少できる。
ここに記載する幾つかの技術革新は、H.264及び/又はHEVC規格に特有のシンタックスエレメント及び動作を参照して説明される。これらの技術革新は、他の規格又はフォーマットでも実施できる。
より一般的には、本願明細書に記載する例に対して種々の代替が可能である。フローチャート図を参照して説明する特定の技術は、フローチャートに示す段階の順序を変更することにより、特定の段階を分割し、繰り返し、又は省略する等により変更できる。ビデオ符号化及び復号化の待ち時間を減少する種々の態様は、組みあわせて又は別個に用いることができる。異なる実施形態は、1又は複数の記載の技術及びツールを用いる。ここに記載する技術及びツールの幾つかは、背景で述べた1又は複数の問題を解決する。通常、所与の技術/ツールは、これらの全ての問題を解決しない。
<I. 例示的なコンピューティングシステム>
図1は、幾つかの記載の技術及びツールが実施され得る適切なコンピューティングシステム(100)の汎用的な例を示す。技術及びツールは多様な汎用又は特定目的コンピューティングシステムで実施できるので、コンピューティングシステム(100)は使用又は機能の範囲に関する如何なる限定も示唆しない。
図1を参照すると、コンピューティングシステム(100)は、1又は複数の処理ユニット(110、115)及びメモリ(120、125)を有する。図1では、この最も基本的な構成(130)は破線で囲まれる。処理ユニット(110、115)は、コンピュータ実行可能命令を実行する。処理ユニットは、汎用中央演算処理装置(CPU)、ASIC(application-specific integrated circuit)のプロセッサ又は任意の他の種類のプロセッサであり得る。マルチプロセッシングシステムでは、処理能力を増大するために複数の処理ユニットがコンピュータ実行可能命令を実行する。例えば、図1は、中央処理ユニット(110)と共にグラフィック処理ユニット又はコプロセッシングユニット(115)も示す。有形メモリ(120、125)は、処理ユニットによりアクセス可能な、揮発性メモリ(例えば、レジスタ、キャッシュ、RAM)、不揮発性メモリ(例えば、ROM、EEPROM、フラッシュメモリ等)、又は2つの組みあわせであっても良い。メモリ(120、125)は、処理ユニットによる実行に適するコンピュータ実行可能命令の形式で、ビデオ符号化及び復号化の待ち時間を減少する1又は複数の技術革新を実施するソフトウェア(180)を格納する。
コンピュータシステムは、追加機能を有しても良い。例えば、コンピューティングシステム(100)は、記憶装置(140)、1又は複数の入力装置(150)、1又は複数の出力装置(160)、1又は複数の通信接続(170)を有する。バス、制御部又はネットワークのような相互接続メカニズム(図示しない)は、コンピューティングシステム(100)のコンポーネントを相互接続する。通常、オペレーティングシステムソフトウェア(図示しない)は、コンピューティングシステム(100)において実行する他のソフトウェアのために動作環境を提供し、コンピューティングシステム(100)のコンポーネントの活動を調整する。
有形記憶装置(140)は、取り外し可能又は取り外し不可能であっても良く、磁気ディスク、磁気テープ若しくはカセット、CD−ROM、DVD、又は非一時的方法で情報を格納するために使用可能な且つコンピューティングシステム(100)内でアクセス可能な任意の他の媒体を含む。記憶装置(140)は、ビデオ符号化及び復号化の待ち時間を減少する1又は複数の技術革新を実施するソフトウェア(180)のための命令を格納する。
入力装置(150)は、キーボード、マウス、ペン又はトラックボールのようなタッチ入力装置、音声入力装置、スキャン装置、又はコンピューティングシステム(100)に入力を供給する別の装置であっても良い。ビデオ符号化では、入力装置(150)は、カメラ、ビデオカード、TVチューナカード、又はアナログ若しくはデジタル形式でビデオ入力を受け付ける同様の装置、又はビデオサンプルをコンピューティングシステム(100)に読み込むCD−ROM若しくはCD−RWであっても良い。出力装置(160)は、ディスプレイ、プリンタ、スピーカ、CDライタ、又はコンピューティングシステム(100)から出力を供給する別の装置であっても良い。
通信接続(170)は、通信媒体を介して他のコンピューティングエンティティとの通信を可能にする。通信媒体は、コンピュータ実行可能命令、オーディオ又はビデオ入力又は出力、又は変調データ信号内の他のデータのような情報を伝達する。変調データ信号は、1又は複数の特性セットを有する信号であるか、又は信号内の情報をエンコードするために変更されても良い。例として、限定ではなく、通信媒体は、電気的、光学的、RF又は他のキャリアを使用できる。
技術及びツールは、コンピュータ可読媒体の一般的概念で記載され得る。コンピュータ可読媒体は、コンピューティング環境内でアクセス可能な任意の利用可能な有形媒体である。例として、限定ではなく、コンピューティングシステム(100)と共に、コンピュータ可読媒体は、メモリ(120、125)、記憶装置(140)及びそれらの任意の組みあわせを有する。
技術及びツールは、対象の実際の又は仮想のプロセッサ上のコンピューティングシステムで実行される、プログラムモジュールに含まれるようなコンピュータ実行可能命令の一般的概念で記載され得る。概して、プログラムモジュールは、特定のタスクを実行し又は特定の抽象データ型を実装する、ルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造、等を含む。プログラムモジュールの機能は、種々の実施形態で必要に応じて結合され又はプログラムモジュール間で分割されても良い。プログラムモジュールのためのコンピュータ実行可能命令は、ローカル又は分散型コンピューティングシステム内で実行されても良い。
用語「システム」及び「装置」は本願明細書では同義的に用いられる。文脈上特に断らない限り、いずれの用語も、コンピューティングシステム又はコンピューティング装置の種類に関して如何なる限定も示唆しない。概して、コンピューティングシステム又はコンピューティング装置は、ローカル又は分散型であり、特定目的ハードウェア及び/又は汎用ハードウェアと本願明細書に記載の機能を実施するソフトウェアとの任意の組合せを含み得る。
提示のために、詳細な説明は、コンピューティングシステム内のコンピュータ動作を記載するために「決定する」及び「使用する」のような用語を用いる。これらの用語は、コンピュータにより実行される動作の高レベルの抽象化であり、人間により行われる動作と混同されるべきではない。これらの用語に対応する実際のコンピュータ動作は、実装に依存して変化する。
<II. 例示的なネットワーク環境>
図2A及び2Bは、ビデオエンコーダ(220)及びビデオデコーダ(270)を有する例示的なネットワーク環境(201、202)を示す。エンコーダ(220)及びデコーダ(270)は、適切な通信プロトコルを用いて、ネットワーク(250)を介して接続される。ネットワーク(250)は、インターネット又は他のコンピュータネットワークを含み得る。
図2Aに示すネットワーク環境(201)では、各リアルタイム通信(RTC)ツール(210)は、双方向通信のためにエンコーダ(220)及びデコーダ(270)の両方を含む。所与のエンコーダ(220)は、エンコーダ(220)からの符号化データを受け付ける対応するデコーダ(270)と共に、SMPTE421M規格、ISO−IEC14496−10規格(H.264又はAVCとしても知られる)、HEVC規格、別の規格、又は独自フォーマットに従う出力を生成できる。双方向通信は、ビデオ会議、ビデオ電話、又は他の2者間通信シナリオの一部であり得る。ず 2Aのネットワーク環境(201)は2つのリアルタイム通信ツール(210)を有するが、代わりに、ネットワーク環境(201)は、多者通信に参加する3以上のリアルタイム通信ツール(210)を有することも可能である。
リアルタイム通信ツール(210)は、エンコーダ(220)による符号化を管理する。図3は、リアルタイム通信ツール(210)に含まれ得る例示的なエンコーダシステム(300)を示す。代替で、リアルタイム通信ツール(210)は、別のエンコーダシステムを用いる。リアルタイム通信ツール(210)は、デコーダ(270)による復号化も管理する。図4は、リアルタイム通信ツール(210)に含まれ得る例示的なデコーダシステム(400)を示す。代替で、リアルタイム通信ツール(210)は、別のデコーダシステムを用いる。
図2Bに示すネットワーク環境(202)では、符号化ツール(212)は、デコーダ(270)を含む複数の再生ツール(214)に配信するためにビデオを符号化するエンコーダ(220)を有する。一方向通信は、ビデオ監視システム、ウェブカメラ監視システム、遠隔デスクトップ会議プレゼンテーション、又はビデオが符号化されある場所から1又は複数の他の場所へ送信される他のシナリオのために提供され得る。図2Bのネットワーク環境(202)は2つの再生ツール(214)を有するが、ネットワーク環境(202)は、より多くの又はより少ない再生ツール(214)を有することも可能である。概して、再生ツール(214)は、符号化ツール(212)と通信し、受信すべき再生ツール(214)のビデオストリームを決定する。再生ツール(214)は、このストリームを受信し、受信符号化データを適切な期間の間バッファリングし、復号化及び再生を始める。
図3は、符号化ツール(212)に含まれ得る例示的なエンコーダシステム(300)を示す。代替で、符号化ツール(212)は、別のエンコーダシステムを用いる。符号化ツール(212)は、1又は複数の再生ツール(214)との接続を管理するサーバ側制御ロジックも有し得る。図4は、再生ツール(214)に含まれ得る例示的なデコーダシステム(400)を示す。代替で、再生ツール(214)は、別のデコーダシステムを用いる。再生ツール(214)は、符号化ツール(212)との接続を管理するクライアント側制御ロジックも有し得る。
幾つかの場合には、待ち時間(例えば、フレーム並べ替え待ち時間)を示すためのシンタックスエレメントの使用は、特定の規格又はフォーマットに固有である。例えば、符号化データは、規格又はフォーマットに従って定められる基本符号化ビデオビットストリームのシンタックスの一部として、又は符号化データに関連する定められたメディアメタデータとして、待ち時間の制約を示す1又は複数のシンタックスエレメントを含み得る。このような場合には、リアルタイム通信ツール(210)、符号化ツール(212)及び/又は待ち時間の減少した再生ツール(214)は、コーデックに依存する。ここで、これらのツールが行う決定は、特定の規格又はフォーマットのビットストリームシンタックスに依存し得る。
他の場合には、待ち時間(例えば、フレーム並べ替え待ち時間)の制約を示すためのシンタックスエレメントの使用は、特定の規格又はフォーマットの範囲外である。例えば、待ち時間の制約を示すシンタックスエレメントは、メディア送信ストリームのシンタックス、メディア記憶ファイル、又はより一般的にはメディアシステム多重プロトコル若しくは転送プロトコルの一部として伝達され得る。或いは、待ち時間を示すシンタックスエレメントは、メディア特性交渉プロトコルに従って、リアルタイム通信ツール(210)、符号化ツール(212)及び/又は再生ツール(214)の間で交渉され得る。このような場合には、リアルタイム通信ツール(210)、符号化ツール(212)及び/又は待ち時間の減少した再生ツール(214)は、コーデックに依存しない。ここで、これらのツールは、符号化中に設定されたフレーム間依存性に対する制御レベルを条件に、任意の利用可能なビデオエンコーダ及びデコーダと共に動作し得る。
<III. 例示的なエンコーダシステム>
図3は、幾つかの記載の実施形態が実装され得る関連する例示的なエンコーダシステム(300)の図である。エンコーダシステム(300)は、リアルタイム通信のための短待ち時間符号化モード、トランスコーディングモード、及びファイル若しくはストリームからのメディア再生のための通常符号化モードのような複数の符号化モードのうちの任意のモードで動作可能な汎用符号化ツールであり得る。或いは、エンコーダシステム(300)は、前述の符号化モードのうちの1つに適応される特定目的符号化ツールであり得る。エンコーダシステム(300)は、オペレーティングシステムモジュールとして、アプリケーションライブラリの一部として、又は独立型アプリケーションとして実装できる。概して、エンコーダシステム(300)は、ビデオソース(310)からソースビデオフレームシーケンス(311)を受信し、チャネル(390)への出力として符号化データを生成する。チャネルへ出力される符号化データは、待ち時間の減少した復号化を実現するために、待ち時間(例えば、フレーム並べ替え待ち時間)についての制約を示す1又は複数のシンタックスエレメントを含み得る。
ビデオソース(310)は、カメラ、チューナカード、記憶媒体、又は他のデジタルビデオソースであり得る。ビデオソース(310)は、例えば30フレーム毎秒のフレームレートでビデオフレームシーケンスを生成する。本願明細書で用いられるように、用語「フレーム」は、概して、ソース、符号化又は再構成画像データを表す。プログレッシブビデオでは、フレームはプログレッシブビデオフレームである。例示的な実施形態では、インタレースビデオでは、インタレースビデオフレームは符号化の前にデインタレースされる。代替で、2つの相補的インタレースビデオフィールドは、インタレースビデオフレーム又は別個のフィールドとして符号化される。プログレッシブビデオフレームを示すこととは別に、用語「フレーム」は、単一のペアリングされていないビデオフィールド、ビデオフィールドの相補的ペア、所与の時間のビデオオブジェクトを表すビデオブジェクトプレーン、又は大きな画像内の関心領域を示し得る。ビデオオブジェクトプレーン又は領域は、シーンの複数のオブジェクト又は領域を含む大きな画像の一部であり得る。
到来するソースフレーム(311)は、複数のフレームバッファ記憶領域(321、322、...、32n)を含むソースフレーム一時記憶記憶領域(320)に格納される。フレームバッファ(321、322、等)は、ソースフレーム記憶領域(320)に1つのソースフレームを保持する。1又は複数のソースフレーム(311)がフレームバッファ(321、322、等)に格納された後、フレームセレクタ(330)は、ソースフレーム記憶領域(320)から個々のソースフレームを周期的に選択する。エンコーダ(340)への入力のためにフレームがフレームセレクタ(330)により選択される順序は、フレームがビデオソース(310)により生成される順序と異なっても良い。例えば、フレームは、時間的後方予測を実現するために順序の前の方にあっても良い。エンコーダ(340)の前に、エンコーダシステム(300)は、選択されたフレーム(331)を符号化する前に前処理(例えば、フィルタリング)を実行するプリプロセッサ(図示しない)を有し得る。
エンコーダ(340)は、選択されたフレーム(331)を符号化し、符号化フレーム(341)を生成し、メモリ管理制御信号(342)も生成する。現在フレームが符号化された最初のフレームではない場合、符号化処理を実行するとき、エンコーダ(340)は、復号化フレーム一時記憶記憶領域(360)に格納されている1又は複数の前に符号化/復号化したフレーム(369)を用いても良い。このような格納された復号化フレーム(369)は、現在ソースフレーム(331)のコンテンツのインターフレーム予測のための参照フレームとして用いられる。概して、エンコーダ(340)は、動き推定及び補償、周波数変換、量子化及びエントロピ符号化のような符号化タスクを実行する複数の符号化モジュールを有する。エンコーダ(340)により実行される正確な動作は、圧縮フォーマットに依存して変化し得る。出力符号化データのフォーマットは、Windows(登録商標) Media Videoフォーマット、VC−1フォーマット、MPEG−xフォーマット(例えば、MPEG-1、MPEG-2又はMPEG-4)、H.26xフォーマット(例えば、H.261、H.262、H.263、H.264)、HEVCフォーマット又は他のフォーマットであり得る。
符号化フレーム(341)及びメモリ管理制御信号(342)は、復号化処理エミュレータ(350)により処理される。復号化処理エミュレータ(350)は、デコーダの機能の一部、例えば、動き推定及び補償でエンコーダ(340)により用いられる参照フレームを再構成するための復号化タスクを実施する。復号化処理エミュレータ(350)は、メモリ管理制御信号(342)を用いて、所与の符号化フレーム(341)が、符号化されるべき後続フレームのインターフレーム予測で参照フレームとして用いるために、再構成され及び格納される必要があるか否かを決定する。制御信号(342)が符号化フレーム(341)は格納される必要があると示す場合、復号化処理エミュレータ(350)は、符号化フレーム8341)を受信し対応する復号化フレーム(351)を生成するデコーダにより行われる復号化処理をモデル化する。こうするとき、エンコーダ(340)が復号化フレーム記憶領域(360)に格納された復号化フレーム(369)を用いているとき、復号化処理エミュレータ(350)も、復号化処理の一部として記憶領域(360)からの復号化フレーム(369)を用いる。
復号化フレーム一時記憶記憶領域(360)は、複数のフレームバッファ記憶領域(361、362、...、36n)を有する。復号化処理エミュレータ(350)が、参照フレームとしての使用のためにエンコーダ(340)によりもはや必要とされないフレームを有するフレームバッファ(361、362、...、36n)を識別するために、メモリ管理制御信号(342)を用いて、記憶領域(360)のコンテンツを管理する。復号化処理をモデル化した後に、復号化処理エミュレータ(350)は、この方法で識別されたフレームバッファ(361、362等)に新たな復号化フレーム(351)を格納する。
符号化フレーム(341)及びメモリ管理制御信号(342)も、一時符号化データ領域(370)にバッファリングされる。符号化データ領域(370)に集められた符号化データは、基本符号化ビデオビットストリームのシンタックスの一部として、待ち時間の制約を示す1又は複数のシンタックスエレメントを有し得る。或いは、符号化データ領域(370)に集められた符号化データは、符号化ビデオデータに関連するメディアメタデータの一部として(例えば、1又は複数の相補的拡張情報(supplemental enhancement information:SEI)メッセージ又はビデオ使用性情報(video usability information:VUI)メッセージ内の1又は複数のパラメータとして)、待ち時間の制約を示すシンタックスエレメントを有し得る。
一時符号化データ領域(370)から集められたデータ(371)は、チャネルエンコーダ(380)により処理される。チャネルエンコーダ(380)は、メディアストリームとして送信するために集められたデータをパケット化し得る。この場合、チャネルエンコーダ(380)は、メディア送信ストリームのシンタックスの一部として、待ち時間の制約を示すシンタックスエレメントを追加できる。或いは、チャネルエンコーダ(380)は、ファイルとして格納するために集められたデータを編成し得る。この場合、チャネルエンコーダ(380)は、メディア格納ファイルのシンタックスの一部として、待ち時間の制約を示すシンタックスエレメントを追加できる。或いは、更に一般的には、チャネルエンコーダ(380)は、1又は複数のメディアシステム多重化プロトコル又は転送プロトコルを実装できる。この場合、チャネルエンコーダ(380)は、プロトコルのシンタックスの一部として、待ち時間の制約を示すシンタックスエレメントを追加できる。チャネルエンコーダ(380)は、格納、通信接続又は出力のための別のチャネルを表すチャネル(390)に出力を提供する。
<IV. 例示的なデコーダシステム>
図4は、幾つかの記載の実施形態が実装され得る関連する例示的なデコーダシステム(400)の図である。デコーダシステム(400)は、リアルタイム通信のための短待ち時間復号化モード、及びファイル若しくはストリームからのメディア再生のための通常復号化モードのような複数の復号化モードのうちの任意のモードで動作可能な汎用復号化ツールであり得る。或いは、デコーダシステム(400)は、前述の復号化モードのうちの1つに適応される特定目的復号化ツールであり得る。デコーダシステム(400)は、オペレーティングシステムモジュールとして、アプリケーションライブラリの一部として、又は独立型アプリケーションとして実装できる。概して、デコーダシステム(400)は、符号化データをチャネル(410)から受信し、出力先(490)への出力として再構成フレームを生成する。符号化データは、待ち時間の減少した復号化を実現するために、待ち時間(例えば、フレーム並べ替え待ち時間)についての制約を示す1又は複数のシンタックスエレメントを含み得る。
デコーダシステム(400)は、格納、通信接続又は符号化データのための別のチャネルを表すチャネル(410)を入力として有する。チャネル(410)は、チャネル符号化された符号化データを生成する。チャネルデコーダ(420)は、符号化データを処理できる。例えば、チャネルデコーダ(420)は、メディアストリームとして送信するために集められたデータをデパケット化し得る。この場合、チャネルデコーダ(420)は、メディア送信ストリームのシンタックスの一部として、待ち時間の制約を示すシンタックスエレメントを解析(パース、parse)できる。或いは、チャネルデコーダ(420)は、ファイルとして格納するために集められた符号化ビデオデータを分離する。この場合、チャネルデコーダ(420)は、メディア格納ファイルのシンタックスの一部として、待ち時間の制約を示すシンタックスエレメントを解析(パース、parse)できる。或いは、更に一般的には、チャネルデコーダ(420)は、1又は複数のメディアシステム逆多重化プロトコル又は転送プロトコルを実装できる。この場合、チャネルデコーダ(420)は、プロトコルのシンタックスの一部として、待ち時間の制約を示すシンタックスエレメントを解析できる。
チャネルデコーダ(420)から出力される符号化データ(421)は、十分な量のデータが受信されるまで、一時符号化データ領域(430)に格納される。符号化データ(421)は、符号化フレーム(431)及びメモリ管理制御信号(432)を有する。符号化データ領域(430)内の符号化データ(421)は、基本符号化ビデオビットストリームのシンタックスの一部として、待ち時間の制約を示す1又は複数のシンタックスエレメントを有し得る。或いは、符号化データ領域(430)内の符号化データ(421)は、符号化ビデオデータに関連するメディアメタデータの一部として(例えば、1又は複数のSEIメッセージ又はVUIメッセージ内の1又は複数のパラメータとして)、待ち時間の制約を示すシンタックスエレメントを有し得る。概して、符号化データ領域(430)は、符号化データ(421)がデコーダ(450)により使用されるまで、符号化データ(421)を一時的に格納する。この点で、符号化フレーム(431)及びメモリ管理制御信号(432)の符号化データは、符号化データ領域(430)からデコーダ(450)へ送られる。復号化が続くにつれ、新しい符号化データが符号化データ領域(430)に追加され、符号化データ領域(430)に残っている古い符号化データはデコーダ(450)へ送られる。
デコーダ(450)は、符号化フレーム(431)を周期的に復号化して対応する復号化フレーム(451)を生成する。適切な場合、復号化処理を実行するとき、デコーダ(450)は、1又は複数の以前復号化フレーム(469)をインターフレーム予測の参照フレームとして用いても良い。デコーダ(450)は、このような以前復号化フレーム(469)を復号化フレーム一時記憶記憶領域(460)から読み出す。概して、デコーダ(450)は、エントロピ復号化、逆量子化、逆周波数変換、及び動き補償のような復号化タスクを実行する複数の復号化モジュールを有する。デコーダ(450)により実行される正確な動作は、圧縮フォーマットに依存して変化し得る。
復号化フレーム一時記憶記憶領域(460)は、複数のフレームバッファ記憶領域(461、462、...、46n)を有する。復号化フレーム記憶領域(460)は、復号化ピクチャバッファの一例である。デコーダ(450)は、メモリ管理制御信号(432)を用いて、復号化フレーム(451)を格納できるフレームバッファ(461、462等)を識別する。デコーダ(450)は、そのフレームバッファに復号化フレーム(451)を格納する。
出力シーケンサ(480)は、メモリ管理制御信号(432)を用いて、出力順序で生成されるべき次のフレームが復号化フレーム記憶領域(460)内で利用できるときを識別する。符号化−復号化システムの待ち時間を低減するために、出力シーケンサ(480)は、待ち時間の制約を示すシンタックスエレメントを用いて、出力順序で生成されるべきフレームの識別を迅速に処理する。出力順序で生成されるべき次のフレーム(481)が復号化フレーム記憶領域(460)内で利用可能なとき、該フレームは、出力シーケンサ(480)により読み出され、出力先(490)(例えば、ディスプレイ)に出力される。概して、フレームが復号化フレーム記憶領域(460)から出力シーケンサ(480)により出力される順序は、フレームがデコーダ(450)により復号化される順序と異なっても良い。
<V. 待ち時間の低減した符号化及び復号化を実現するシンタックスエレメント>
大部分のビデオコーデックシステムでは、符号化順序(復号化順序又はビットストリーム順序とも称される)は、ビデオフレームがビットストリーム内の復号化データ内に現れる、したがって復号化中に処理される順序である。符号化順序は、符号化前にフレームがカメラによりキャプチャされる順序と異なっても良く、復号化フレームが復号化後に表示、格納又はその他の場合には出力される順序(出力順序又は表示順序)と異なっても良い。出力順序に対するフレームの並べ替えは、(主に圧縮性能の観点で)有利であるが、符号化及び復号化処理のエンドエンド間の待ち時間を増大してしまう。
本願明細書に記載の技術及びツールは、ビデオフレームの並べ替えに起因する待ち時間を低減し、また、並べ替え待ち時間の制約に関する情報をデコーダシステムに提供することにより、デコーダシステムによる待ち時間の低減も実現する。このような待ち時間の低減は、多くの目的で有用である。例えば、待ち時間の低減は、ビデオ会議システムを用いた双方向ビデオ通信で生じるタイムラグを低減するために用いることができ、遠隔にいる参加者間の会話の流れ及び通信の双方向性がより素早く且つ自然になる。
A.出力タイミング及び出力順序のためのアプローチ
H.264規格によると、デコーダは、復号化フレームの出力準備ができたときを決定するために2つのアプローチを用いることができる。デコーダは、(例えば、ピクチャタイミングSEIメッセージ内で伝達されるとき)復号化タイムスタンプ及び出力タイムスタンプの形式のタイミング情報を用いることができる。或いは、デコーダは、復号化フレームが出力準備ができたときを決定するために種々のシンタックスエレメントで伝達されるバッファリング性能限界を用いることができる。
タイミング情報は、各復号化フレームに関連付けることができる。デコーダは、復号化フレームが出力できるときを決定するためにタイミング情報を用いることができる。しかしながら、実際には、このようなタイミング情報は、デコーダには利用可能でないかも知れない。さらに、タイミング情報が利用可能なときでも、幾つかのデコーダは、(デコーダがタイミング情報が利用可能か否かに拘わらず動作するよう設計されているために)実際にはこの情報を用いない。
バッファリング性能限界は、シンタックスエレメントmax_dec_frame_buffering、シンタックスエレメントnum_reorder_frames、相対順序情報(「ピクチャ順番(picture order count)」と称される)及びビットストリーム内で伝達される他のメモリ管理制御情報を含む、H.264規格(及びHEVC規格のドラフトバージョン)に従う幾つかのシンタックスエレメントで示される。シンタックスエレメントmax_dec_frame_buffering(又はMaxDpbFramesとして指定される導出された変数)は、フレームバッファのユニット内の復号化ピクチャバッファ(decoded picture buffer:DPB)の所要サイズを指定する。したがって、シンタックスエレメントmax_dec_frame_bufferingは、符号化ビデオシーケンスに用いられるトップレベルのメモリ容量を表し、デコーダに正しい順序でピクチャを出力させる。シンタックスエレメントnum_reorder_frames(又はmax_num_reorder_frames)は、符号化順序で任意のフレーム(又は相補的フィールドペア、又は非ペアフィールド)に先行する及び出力順序で後続するフレーム(又は相補的フィールドペア、又は非ペアフィールド)の最大数を示す。言い換えると、num_reorder_framesは、ピクチャ並べ替えに必要なメモリ容量についての制約を指定する。シンタックスエレメントmax_num_ref_framesは、シーケンス内の任意のピクチャのインター予測のために復号化処理により用いられ得る短期及び長期参照フレーム(又は相補的参照フィールドペア、又は非ペア参照フィールド)の最大数を指定する。シンタックスエレメントmax_num_ref_framesは、復号化参照ピクチャのマーク付けのためにスライディングウインドウの大きさも決定する。num_reorder_framesと同様に、max_num_ref_framesは必要メモリ容量についての制約を指定する。
デコーダは、max_dec_frame_buffering(又はMaxDpbFrames)及びnum_reorder_framesシンタックスエレメントを用いて、バッファリング性能限界を超えたときを決定する。これは、例えば、新しい復号化フレームがDPBに格納する必要があるが、DPB内に利用可能な残り領域がないときに生じる。この状況では、デコーダは、ピクチャ順番情報を用いて、復号化されたピクチャの中からどれが出力順序で最も早いかを識別する。次に、出力順序で最も早いピクチャが出力される。このような処理は、格納する必要のある新しいピクチャの到着によりピクチャがDPBの「外にはじき出される」ので、「バンピング」と呼ばれることが多い。
デコーダは、max_dec_frame_buffering(又はMaxDpbFrames)及びnum_reorder_framesシンタックスエレメントで示される情報は、デコーダで必要なメモリ容量を決定するのに十分である。しかしながら、ピクチャを出力するための「バンピング」処理を制御するために用いられるとき、このような情報の使用は、望ましくない待ち時間を導入し得る。H.264規格で定められるように、max_dec_frame_buffering及びnum_reorder_framesシンタックスエレメントは、任意の特定のピクチャに適用され得る並べ替えの量についての限界を定めず、したがってエンドエンド間待ち時間についての限界を定めない。これらのシンタックスエレメントの値に関係なく、特定のピクチャは出力前の任意の長い時間の間、DPB内に保持され得る。この長い時間は、エンコーダによるソースピクチャの事前バッファリングにより追加される実質的待ち時間に対応する。
B.フレーム並べ替え待ち時間の制約を示すシンタックスエレメント
本願明細書に記載の技術及びツールは、ビデオ通信システムにおける待ち時間を低減する。符号化ツール、リアルタイム通信ツール又は他のツールは、符号化ビデオシーケンス内の任意のフレームに適用できる並べ替え範囲についての限界を設定する。例えば、この限界は、出力順序において符号化ビデオシーケンス内の任意の所与のフレームに先行できるフレーム及び符号化順序において後続できるフレームの数として表される。この限界は、シーケンス内の任意の特定のフレームについて許容される並べ替え待ち時間を制限する。言い方を変えると、この限界は、任意の特定のフレームに適用できる符号化順序と出力順序との間の並べ替えの時間範囲を(フレームの観点で)制限する。並べ替え順序の制限は、エンドエンド間遅延を低減するのに役立つ。また、このような限界の設定は、待ち時間の低減が重要な使用シナリオのためのリアルタイムシステムの交渉プロトコル又はアプリケーション仕様で有用であり得る。
1又は複数のシンタックスエレメントは、フレーム並べ替え待ち時間についての制約を示す。フレーム並べ替え待ち時間についての制約を伝達することは、双方向リアルタイム通信又は他の使用シナリオでのシステムレベルの交渉を可能にする。これは、フレーム並べ替え待ち時間についての制約を直接表しメディアストリーム又はセッションの特性を特徴付ける方法を提供する。
ビデオデコーダは、復号化ビデオフレームの出力の待ち時間を低減させるために、フレーム並べ替え待ち時間についての示された制約を用いることができる。特に、フレーム「バンピング」処理と比べて、フレーム並べ替え待ち時間についての制約を伝達することは、デコーダが、出力準備のできているDPB内のフレームをより簡単に且つ素早く識別することを可能にする。例えば、デコーダは、フレームの符号化順序と出力順序との間の差を計算することにより、DPB内のフレームの待ち時間状態を決定できる。フレームの待ち時間状態をフレーム並べ替え待ち時間についての制約と比較することにより、デコーダは、フレーム並べ替え待ち時間についての制約に達したときを決定できる。デコーダは、この限界に達したフレームを直ちに出力できる。これは、種々のシンタックスエレメント及び追跡構造を用いる「バンピング」処理と比べて、デコーダが出力準備のできているフレームをより迅速に識別するのを助ける。このように、デコーダは、復号化フレームが出力できるときを迅速に(且つ早く)決定できる。フレームが出力できるときをデコーダがより迅速に(及び早く)識別できるほど、デコーダは、ディスプレイ又は後続の処理段階により迅速に(及び早く)ビデオを出力できる。
したがって、フレーム並べ替え待ち時間についての制約を用いて、デコーダは、復号化フレーム記憶領域が一杯になる前に、復号化フレーム記憶領域からフレームを出力し始めることができるが、依然として適合した復号化を提供できる(つまり、フレームが別の従来の方式を用いて復号化されたフレームとビットレベルで正確に一致するように、全てのフレームを復号化する)。これは、待ち時間シンタックスエレメントにより示される(フレーム)遅延が復号化フレーム記憶領域の(フレーム単位の)サイズより遙かに小さいとき、遅延を有意に低減する。
図5A−5Eは、異なるフレーム間依存性を有するフレームのシリーズ(501−505)を示す。シリーズは、(1)ピクチャ並べ替えに必要なメモリ容量についての制約(つまり、例えばシンタックスエレメントnum_reorder_framesで示されるような、並べ替えの目的で参照フレームを格納するために用いられるフレームバッファの数)、及び(2)例えば、変数MaxLatencyFramesにより指定されるようなフレーム並べ替え待ち時間についての制約、の異なる値により特徴付けられる。図5A−5Eでは、所与のフレームF について、下付文字jは出力順序内のフレームの位置を示し、上付文字kは符号化順序内のフレームの位置を示す。フレームは、出力順序で示され、出力順序では下付文字の値は左から右へ増大する。矢印は、動き補償のためのフレーム間依存性を示す。これにより、符号化順序において先行するフレームは、符号化順序において後続のフレームの予測に用いられる。簡単のため、図5A−5Eは、(参照フレームが変わり得るマクロブロック、ブロック等のレベルではなく)フレームレベルでのフレーム間依存性を示す。図5A−5Eは、所与のフレームのための参照フレームとして最大2フレームを示す。実際には、幾つかの実装では、所与のフレーム内の異なるマクロブロック、ブロック等が、異なる参照フレームを用いることができ、2以上の参照フレームを所与のフレームのために用いることができる。
図5Aでは、シリーズ(501)は9個のフレームを有する。出力順序における最後のフレームF は、最初のフレームF を参照フレームとして用いる。シリーズ(501)内の他のフレームは、最後のフレームF 及び最初のフレームF の両方を参照フレームとして用いる。これは、フレームF が最初に復号化され、次にフレームF が続き、次にフレームF が続く、等である。図5Aに示すシリーズ(501)では、num_reorder_framesの値は1である。デコーダシステムの処理の任意の時点で、図5Aに示すフレームのうち、並べ替え目的で復号化フレーム記憶領域に格納されるフレームは1個のみ(F )である。(最初のフレームも、参照フレームF として用いられ格納されるが、並べ替え目的では格納されない。最初のフレームF の出力順序は中間フレームの出力順序より小さいので、最初のフレームF はnum_reorder_framesの目的でカウントされない。)num_reorder_framesが低い値にもかかわらず、シリーズ(501)は比較的長い待ち時間を有する。MaxLatencyFramesの値は7である。最初のフレームF を符号化した後、エンコーダは、次のフレームF がシリーズ(501)の最後のフレームF に依存するので、出力順序で次のフレームF を符号化する前に、8以上のソースフレームをバッファリングするまで待つ。MaxLatencyFramesの値は、事実上、任意の特定の符号化フレームについて下付文字の値と上付文字の値との間の最大許容差である。
図5Bで、図5Aのシリーズ(501)のように、シリーズ(502)は9個のフレームを有するが、フレーム間依存性は異なる。フレームの時間的並べ替えは、短い範囲に渡って生じる。その結果、シリーズ(502)は非常に小さい待ち時間を有し、MaxLatencyFramesの値は1である。num_reorder_framesの値は依然として1である。
図5Cでは、シリーズ(503)は10個のフレームを有する。最長フレーム間依存性は、図5の最長フレーム間依存性よりも(時間的範囲の点で)短いが、図5Bの最長フレーム間依存性よりも長い。シリーズ(503)は、num_reorder_framesの同じく低い値1を有するが、MaxLatencyFramesの比較的低い値2を有する。したがって、シリーズ(503)は、図5Aのシリーズ(501)よりも小さいエンドエンド間待ち時間を可能にするが、図5Bのシリーズ(502)の許容可能待ち時間ほど小さくはない。
図5Dで、シリーズ(504)は、フレーム間依存性に従う3つの時間レイヤを有する時間的階層構造に編成されるフレームを有する。最下位の時間分解能レイヤは、最初のフレームF 及び最後のフレームF を有する。次の時間分解能レイヤは、最初のフレームF を追加し、最初のフレームF 及び最後のフレームF に依存する。最上位の時間分解能レイヤは、残りのフレームを追加する。図5Dに示すシリーズ(504)は、少なくとも最上位の時間分解能レイヤで、最後のフレームF の符号化順序と出力順序との間の差により、num_reorder_framesの比較的低い値2を有するが、MaxLatencyFramesの比較的高い値7を有する。中間の時間分解能レイヤ又は最下位の時間分解能レイヤのみが復号化される場合、フレーム並べ替え遅延についての制約は、(中間レイヤでは)1又は(最下位レイヤでは)0まで低減できる。種々の時間分解能で待ち時間の低減した復号化を実現するために、シンタックスエレメントは、時間的階層構造内の異なるレイヤについてフレーム並べ替え待ち時間の制約を示すことができる。
図5Eで、シリーズ(505)は、異なるフレーム間依存性に従う3つの時間レイヤを有する時間的階層構造に編成されるフレームを有する。最下位の時間分解能レイヤは、最初のフレームF 、中間フレームF 及び最後のフレームF を有する。次の時間分解能レイヤは、(最初のフレームF 及び中間フレームF に依存する)フレームF と(中間フレームF 及び最後のフレームF に依存する)フレームF を追加する。最上位の時間分解能レイヤは、残りのフレームを追加する。図5Dのシリーズ(504)と比べると、図5Eのシリーズ(505)は、少なくとも最上位の時間分解能レイヤで、中間フレームF 及び最後のフレームF の符号化順序と出力順序との間の差により、num_reorder_framesの比較的低い値2を有するが、MaxLatencyFramesの比較的低い値3を有する。中間の時間分解能レイヤ又は最下位の時間分解能レイヤのみが復号化される場合、フレーム並べ替え遅延についての制約は、(中間レイヤでは)1又は(最下位レイヤでは)0まで低減できる。
図5A−5Eに示す例では、MaxLatencyFramesの値が分かる場合、デコーダは、出力順序で先行するフレームを受信すると、中間出力のために準備の出来ている特定のフレームを識別できる。所与のフレームで、フレームの出力順序の値からフレームの符号化順序の値を差し引いたものは、MaxLatencyFramesの値に等しくても良い。この場合、所与のフレームは、出力順序で先行するフレームが受信されると直ぐに出力のために準備される。(これに対し、このようなフレームは、追加フレームが受信されるまで又はシーケンスの終わりに達するまで、num_reorder_framesだけを用いて出力の準備ができていると識別できなかった。)特に、デコーダは、MaxLatencyFramesの値を用いて以下のフレームの早期の出力を可能にすることができる。
・図5Aのシリーズ(501)中、フレームF
・図5Bのシリーズ(502)中、フレームF 、F 、F 、F
・図5Cのシリーズ(503)中、フレームF 、F 、F
・図5Dのシリーズ(504)中、フレームF
・図5Eのシリーズ(505)中、フレームF 、F
さらに、システムレベルでのMaxLatencyFramesの値の宣言又は交渉は、num_reorder_framesを用いた並べ替え記憶容量の測定及び該容量の指示によっては使用できない方法で、ビットストリーム又はセッションの待ち時間特性の要約表現を提供できる。
C.例示的な実装
フレーム並べ替え待ち時間の制約を示すシンタックスエレメントは、実装に依存して種々の方法で伝達できる。シンタックスエレメントは、シーケンスパラメータセット(sequence parameter set:SPS)、ピクチャパラメータセット(picture parameter set:PPS)又はビットストリームの他の要素の一部として伝達され、SEIメッセージ、VUIメッセージ又は他のメタデータの一部として伝達され、又は特定の他の方法で伝達され得る。任意の実装において、制約値を示すシンタックスエレメントは、符号無し指数ゴロム符号化、特定の他の形式のエントロピ符号化、又は固定長符号化を用いることにより符号化され、次に伝達できる。デコーダは、シンタックスエレメントを受信した後に、対応する復号化を実行する。
第1の実装では、フラグmax_latency_limitation_flagが伝達される。このフラグが第1の2進値(例えば0)を有する場合、フレーム並べ替え待ち時間について如何なる制約も課せられない。この場合、max_latency_framesシンタックスエレメントの値は、伝達されないか無視される。その他の場合(フラグが1のような第2の2進値を有する場合)、max_latency_framesシンタックスエレメントの値は、フレーム並べ替え待ち時間の制約を示すために伝達される。例えば、この場合、max_latency_framesシンタックスエレメントの伝達された値は、任意の非負整数値であり得る。
第2の実装では、シンタックスエレメントmax_latency_frames_plus1は、フレーム並べ替え待ち時間の制約を示すために伝達される。max_latency_frames_plus1が第1の2進値(例えば0)を有する場合、フレーム並べ替え待ち時間について如何なる制約も課せられない。他の値(例えば、非ゼロ値)では、フレーム並べ替え待ち時間についての制約の値は、max_latency_frames_plus1−1に設定される。例えば、max_latency_frames_plus1の値は、包括的に0乃至232−2の範囲内である。
同様に、第3の実装では、シンタックスエレメントmax_latency_framesは、フレーム並べ替え待ち時間の制約を示すために伝達される。max_latency_framesが第1の値(例えば最大値)を有する場合、フレーム並べ替え待ち時間について如何なる制約も課せられない。他の値(例えば、最大値より小さい値)では、フレーム並べ替え待ち時間についての制約の値は、max_latency_framesに設定される。
第4の実装では、フレーム並べ替え待ち時間についての制約は、フレームメモリの最大サイズに関連して示される。例えば、待ち時間の制約は、num_reorder_framesシンタックスエレメントに対する増大として伝達される。通常、(フレームの観点の)フレーム並べ替え待ち時間についての制約は、num_reorder_framesより大きいか又はそれに等しい。待ち時間の制約を伝達する際にビットを節約するために、(例えば、符号無し指数ゴロム符号化、特定の他の形式のエントロピ符号化を用いて)待ち時間の制約とnum_reorder_framesとの間の差が符号化され、そして伝達される。シンタックスエレメントmax_latency_increase_plus1は、フレーム並べ替え待ち時間の制約を示すために伝達される。max_latency_increase_plus1が第1の値(例えば0)を有する場合、フレーム並べ替え待ち時間について如何なる制約も課せられない。他の値(例えば、非ゼロ値)では、フレーム並べ替え待ち時間についての制約の値は、num_reorder_frames+max_latency_increase_plus1−1に設定される。例えば、max_latency_increase_plus1の値は、包括的に0乃至232−2の範囲内である。
代替で、フレーム並べ替え待ち時間についての制約を示す1又は複数のシンタックスエレメントは、他の特定の方法で伝達される。
D.待ち時間の制約を示す他の方法
前述の例の多くでは、待ち時間の制約は、フレーム数の観点で表されるフレーム並べ替え待ち時間についての制約である。より一般的には、待ち時間の制約は、フレーム数の観点から表される、又は秒、ミリ秒若しくは別の時間指標の観点から表される遅延についての制約である。例えば、待ち時間の制約は、1秒又は0.5秒のような絶対時間指標として表すことができる。エンコーダは、このような時間指標を(ビデオのフレームレートを考慮して)フレーム数に変換し、次にビデオシーケンスの複数のフレーム間のフレーム間依存性がフレーム数と一致するようにビデオを符号化する。或いは、フレーム並べ替え及びフレーム間依存性に関係なく、エンコーダは、時間指標を用いて、符号化ビデオのビットレート、符号化の複雑さ、ネットワーク帯域幅などの短期間変動を平滑化するために遅延が用いられる範囲を制限できる。デコーダは、この時間指標を用いて、フレームが復号化ピクチャバッファから出力され得るときを決定できる。
待ち時間の制約は、送信側と受信側との間で交渉され、符号化ビデオのビットレートの短期的変動を平滑化する能力、符号化の複雑さの短期的変動を平滑化する能力、ネットワーク帯域幅の短期的変動を平滑化する能力、及び/又は増大する遅延から利益を享受する別の要因で、応答をトレードオフする(遅延がない)。このような交渉では、フレームレートと独立した方法で待ち時間の制約を定め特徴付けることが有用であり得る。次に、制約は、ビデオのフレームレートを考慮して、符号化及び復号化中に適用できる。或いは、制約は、ビデオのフレームレートに関係なく、符号化及び復号化中に適用できる。
E.シンタックスエレメントを設定及び出力する一般的な技術
図6は、待ち時間の低減した復号化を実現するシンタックスエレメントを設定及び出力する例示的な技術(600)を示す。例えば、図2A及び2Bを参照して説明したリアルタイム通信ツール又は符号化ツールは、技術(600)を実行する。或いは、別のツールが技術(600)を実行する。
始めに、ツールは、ビデオシーケンスの複数のフレーム間のフレーム間依存性に一致する待ち時間(例えば、フレーム並べ替え待ち時間、時間指標の観点からの待ち時間)についての制約を示す1又は複数のシンタックスエレメントを設定する(610)。ツールがビデオエンコーダを有するとき、同一のツールがフレームを受信し、フレームを符号化して(フレーム並べ替え待ち時間の制約と一致するフレーム間依存性を用いて)符号化データを生成し、そして格納又は送信のために符号化データを出力し得る。
通常、フレーム並べ替え待ち時間の制約は、ビデオシーケンス内の任意のフレームに対して許容される並べ替え待ち時間である。制約は、種々の方法で表すことができるが、種々の他の意味を有する。例えば、制約は、出力順序で所与のフレームに先行できるが符号化順序で所与のフレームに続くことができるフレームの最大数の観点で表現できる。或いは、制約は、ビデオシーケンス内の任意のフレームについて、符号化順序と出力順序との間の最大差として表すことができる。或いは、個々のフレームに焦点を当てると、制約は、ビデオシーケンス内の所与の特定のフレームに関連する並べ替え待ち時間として表すことができる。或いは、フレームのグループに焦点を当てると、制約は、ビデオシーケンス内のフレームのグループに関連する並べ替え待ち時間として表すことができる。或いは、制約は特定の他の方法で表すことができる。
次に、ツールは、シンタックスエレメントを出力する(620)。これは、複数のフレームの出力順序の観点から、再構成フレームが出力準備ができたときの決定を実現する。シンタックスエレメントは、基本符号化ビデオストリーム内のシーケンスパラメータセット又はピクチャパラメータセットの一部として、フレームの符号化データも含むメディア格納ファイル又はメディア送信ストリームのシンタックスの一部として、(例えば、システムレベルの交渉の際のストリーム又はセッションパラメータ値の交換中に)メディア特性交渉プロトコルの一部として、フレームの符号化データと共に多重化されたメディアシステム情報の一部として、又は(例えば、SEIメッセージ又はVUIメッセージ内の)フレームの符号化データに関連するメディアメタデータの一部として、出力できる。異なるシンタックスエレメントが、メモリ容量要件を示すために出力され得る。例えば、(max_dec_frame_bufferingのような)バッファサイズシンタックスエレメントはDPBの最大サイズを示すことができ、(num_reorder_framesのような)フレームメモリシンタックスエレメントは並べ替えのためのフレームメモリの最大サイズを示すことができる。
待ち時間の制約の値は、V.C章で記載したような種々の方法で表すことができる。例えば、ツールは、シンタックスエレメントの存在又は不在を示すフラグを出力する。フラグがシンタックスエレメントは不在であると示す場合、待ち時間の制約は、不定であるか、又は既定値を有する。その他の場合、シンタックスエレメントは、待ち時間の制約に従い、待ち時間の制約を示す。或いは、シンタックスエレメントの1つの値が、待ち時間の制約は不定又は既定値であると示し、シンタックスエレメントの他の可能な値が、待ち時間の制約に値する整数を示す。或いは、待ち時間の制約がフレーム並べ替え待ち時間の制約である場合には、シンタックスエレメントの所与の値は、並べ替えのためのフレームメモリの最大サイズに対するフレーム並べ替え待ち時間の制約に値する整数を示す。これは、num_reorder_framesのような異なるシンタックスエレメントで示される。或いは、待ち時間の制約は特定の他の方法で表される。
幾つかの実装では、ビデオシーケンスのフレームは、時間的階層構造に従って編成される。この場合、異なるシンタックスエレメントは、時間的階層構造の異なる時間レイヤについてのフレーム並べ替え待ち時間の異なる制約を示し得る。
F.シンタックスエレメントを受信及び使用する一般的な技術
図7は、待ち時間の低減した復号化を実現するシンタックスエレメントを受信及び使用する例示的な技術(700)を示す。例えば、図2A及び2Bを参照して説明したリアルタイム通信ツール又は再生ツールは、技術(700)を実行する。或いは、別のツールが技術(700)を実行する。
始めに、ツールは、待ち時間(例えば、フレーム並べ替え待ち時間、時間指標の観点からの待ち時間)についての制約を示す1又は複数のシンタックスエレメントを受信し解析する(710)。例えば、解析は、待ち時間の制約を示す1又は複数のシンタックスエレメントをビットストリームから読み出すことを含む。ツールは、ビデオシーケンスの複数のフレームの符号化データも受信する(720)。ツールは、シンタックスエレメントを解析し、シンタックスエレメントに基づき待ち時間の制約を決定できる。通常、フレーム並べ替え待ち時間の制約は、ビデオシーケンス内の任意のフレームに対して許容される並べ替え待ち時間である。前の章で述べたように、制約は、種々の方法で表すことができるが、種々の他の意味を有する。シンタックスエレメントは、基本符号化ビデオストリーム内のシーケンスパラメータセット又はピクチャパラメータセットの一部として、メディア格納ファイル又はメディア送信ストリームのシンタックスの一部として、メディア特性交渉プロトコルの一部として、符号化データと共に多重化されたメディアシステム情報の一部として、又は符号化データに関連するメディアメタデータの一部として、伝達できる。ツールは、メモリ容量要件を示す異なるシンタックスエレメント、例えばmax_dec_frame_bufferingのようなバッファサイズシンタックスエレメント及びnum_reorder_framesのようなフレームメモリシンタックスエレメントを受信し解析できる。
待ち時間の制約の値は、V.C章で記載したような種々の方法で表すことができる。例えば、ツールは、シンタックスエレメントの存在又は不在を示すフラグを受信する。フラグがシンタックスエレメントは不在であると示す場合、待ち時間の制約は、不定であるか、又は既定値を有する。その他の場合、シンタックスエレメントは、待ち時間の制約に従い、待ち時間の制約を示す。或いは、シンタックスエレメントの1つの値が、待ち時間の制約は不定又は既定値であると示し、シンタックスエレメントの他の可能な値が、待ち時間の制約に値する整数を示す。或いは、待ち時間の制約がフレーム並べ替え待ち時間の制約である場合には、シンタックスエレメントの所与の値は、並べ替えのためのフレームメモリの最大サイズに対するフレーム並べ替え待ち時間の制約に値する整数を示す。これは、num_reorder_framesのような異なるシンタックスエレメントで示される。或いは、待ち時間の制約は特定の他の方法で伝達される。
図7に戻り、ツールは、フレームのうちの1つを再構成するために符号化データの少なくとも一部を復号化する(730)。ツールは、再構成フレームを出力する(740)。これを行う際、ツールは、例えば、ビデオシーケンスのフレームの出力順序の観点で、再構成フレームの出力準備ができるときを決定するために、待ち時間の制約を用いることができる。
幾つかの実装では、ビデオシーケンスのフレームは、時間的階層構造に従って編成される。この場合、異なるシンタックスエレメントは、時間的階層構造の異なる時間レイヤについてのフレーム並べ替え待ち時間の異なる制約を示し得る。ツールは、出力の時間分解能に依存して、フレーム並べ替え待ち時間の異なる制約のうちの1つを選択できる。
開示の発明の原理を適用できる多くの可能な実施形態に照らし、図示の実施形態は本発明の単なる好適な例であり、本発明を限定するものと考えられるべきではないことが理解される。むしろ、本発明の範囲は添付の請求の範囲によって定められる。したがって、出願人は、添付の請求の範囲の範囲及び精神の範囲内に包含される全てを出願人の発明として請求する。

Claims (10)

  1. ビデオデコーダを備えるコンピューティングシステムにおいて、
    待ち時間の制約を示す1又は複数のシンタックスエレメントを受信し解析するステップと、
    ビデオシーケンスの複数のフレームの符号化データを受信するステップと、
    前記ビデオデコーダで、前記複数のフレームのうちの1つを再構成するために、前記符号化データの少なくとも一部を復号化するステップと、
    前記の再構成されたフレームを出力するステップと、
    を有する方法。
  2. 前記待ち時間の制約は、フレーム並べ替え待ち時間の制約であり、前記方法は、
    前記1又は複数のシンタックスエレメントを解析するステップと、
    前記1又は複数のシンタックスエレメントに基づき、前記フレーム並べ替え待ち時間の制約を決定するステップと、
    前記フレーム並べ替え待ち時間の制約を用いて、前記ビデオシーケンスの前記複数のフレームの出力順序の観点から、前記再構成されたフレームの出力準備ができたときを決定するステップと、
    を更に有する請求項1に記載の方法。
  3. 前記ビデオシーケンスの前記複数のフレームは、時間的階層構造に従って編成され、異なるシンタックスエレメントは、前記時間的階層構造の異なる時間レイヤについてのフレーム並べ替え待ち時間の異なる制約を示し、前記方法は、前記出力の時間分解能に依存して、前記フレーム並べ替え待ち時間の異なる制約のうちの1つを選択するステップ、を更に有する請求項2に記載の方法。
  4. 前記待ち時間の制約は、フレーム並べ替え待ち時間の制約であり、前記フレーム並べ替え待ち時間の制約は、前記ビデオシーケンス内の任意のフレームについて許容される並べ替え待ち時間である、請求項1に記載の方法。
  5. 前記1又は複数のシンタックスエレメント及び前記符号化データは、符号化ビデオビットストリームのシンタックスの一部として伝達され、前記方法は、
    復号化ピクチャバッファの最大サイズを示すバッファサイズシンタックスエレメント及び並べ替えのためのフレームメモリの最大サイズを示すフレームメモリシンタックスエレメントを受信及び解析するステップであって、前記バッファサイズシンタックスエレメント及び前記フレームメモリシンタックスエレメントは、前記待ち時間の制約を示す前記1又は複数のシンタックスエレメントと異なる、ステップ、
    を更に有する請求項1に記載の方法。
  6. 前記1又は複数のシンタックスエレメントは、シーケンスパラメータセット、ピクチャパラメータセット、前記符号化データも含むメディア格納ファイルのシンタックス、前記符号化データも含むメディア送信ストリームのシンタックス、メディア特性交渉プロトコル、前記符号化データと共に多重化されたメディアシステム情報、又は前記符号化データに関連するメディアメタデータの一部として伝達される、請求項1に記載の方法。
  7. 前記1又は複数のシンタックスエレメントの1つの可能な値は、前記待ち時間の制約が不定である又は既定値を有すると示し、前記1又は複数のシンタックスエレメントの他のの可能な値は、前記待ち時間の制約に値する整数を示し、又は
    前記1又は複数のシンタックスエレメントの値は、並べ替えのためのフレームメモリの最大サイズに対する前記待ち時間の制約に値する整数を示し、前記並べ替えのためのフレームメモリの最大サイズは、異なるシンタックスエレメントで示される、請求項1に記載の方法。
  8. コンピューティングシステムにおいて、
    ビデオシーケンスの複数のフレーム間のフレーム間依存性と一致する待ち時間の制約を示す1又は複数のシンタックスエレメントを設定するステップと、
    前記1又は複数のシンタックスエレメントを出力するステップであって、それにより、前記複数のフレームの出力順序の観点から、再構成フレームの出力準備ができたときの決定を実現する、ステップと、
    を有する方法。
  9. 前記待ち時間の制約は、フレーム並べ替え待ち時間の制約であり、前記コンピューティングシステムはビデオエンコーダを備え、前記方法は、
    ビデオシーケンスの複数のフレームを受信するステップと、
    前記ビデオエンコーダで、符号化データを生成するために前記複数のフレームを符号化するステップであって、前記符号化するステップは、前記フレーム並べ替え待ち時間の制約と一致する前記フレーム間依存性を用いる、ステップと、
    格納又は送信のために前記符号化データを出力するステップと、
    を更に有する請求項8に記載の方法。
  10. プロセッサとメモリと記憶装置とを有するコンピューティングシステムであって、前記コンピューティングシステムは、
    フレーム並べ替え待ち時間の制約を示す1又は複数のシンタックスエレメントを受信し解析するステップと、
    前記1又は複数のシンタックスエレメントに基づき前記フレーム並べ替え待ち時間の制約を決定するステップであって、前記フレーム並べ替え待ち時間の制約は、出力順序で所与のフレームに先行でき符号化順序で該所与のフレームの後に続くことができるフレームの最大数の観点で表される、ステップと、
    ビデオシーケンスの複数のフレームの符号化データを受信するステップと、
    ビデオデコーダで、前記複数のフレームのうちの1つを再構成するために、前記符号化データの少なくとも一部を復号化するステップと、
    前記の再構成されたフレームを出力するステップであって、前記ビデオシーケンスの前記複数のフレームの出力順序の観点から、前記再構成されたフレームの出力準備ができたときを決定するために前記フレーム並べ替え待ち時間の制約を用いるステップを含む、ステップと、
    を有する方法を実行するようにされたコンピューティングシステム。
JP2014518537A 2011-06-30 2011-10-11 ビデオ符号化及び復号化における待ち時間の低減 Active JP6059219B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161571553P 2011-06-30 2011-06-30
US61/571,553 2011-06-30
US13/270,969 US8837600B2 (en) 2011-06-30 2011-10-11 Reducing latency in video encoding and decoding
US13/270,969 2011-10-11
PCT/US2011/055835 WO2013002818A1 (en) 2011-06-30 2011-10-11 Reducing latency in video encoding and decoding

Publications (3)

Publication Number Publication Date
JP2014523693A true JP2014523693A (ja) 2014-09-11
JP2014523693A5 JP2014523693A5 (ja) 2014-11-06
JP6059219B2 JP6059219B2 (ja) 2017-01-11

Family

ID=47390681

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014518537A Active JP6059219B2 (ja) 2011-06-30 2011-10-11 ビデオ符号化及び復号化における待ち時間の低減

Country Status (28)

Country Link
US (17) US8837600B2 (ja)
EP (4) EP4246968A3 (ja)
JP (1) JP6059219B2 (ja)
KR (1) KR101944565B1 (ja)
CN (2) CN105721880B (ja)
AU (1) AU2011371809B2 (ja)
BR (1) BR112013033552B1 (ja)
CA (1) CA2840427C (ja)
CL (1) CL2013003736A1 (ja)
CO (1) CO6862115A2 (ja)
DK (1) DK3691268T3 (ja)
ES (1) ES2958967T3 (ja)
HK (2) HK1195430A1 (ja)
HR (1) HRP20231180T1 (ja)
HU (1) HUE063498T2 (ja)
IL (2) IL230189A (ja)
LT (1) LT3691268T (ja)
MX (1) MX2013015154A (ja)
MY (1) MY189650A (ja)
NZ (1) NZ619406A (ja)
PL (1) PL3691268T3 (ja)
PT (1) PT3691268T (ja)
RS (1) RS64742B1 (ja)
RU (1) RU2587467C2 (ja)
SG (1) SG10201408609SA (ja)
TW (3) TWI587693B (ja)
WO (1) WO2013002818A1 (ja)
ZA (1) ZA201308553B (ja)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI587693B (zh) 2011-06-30 2017-06-11 微軟技術授權有限責任公司 用於減少視訊編碼及解碼中之延遲的方法、系統及電腦可讀取媒體
KR20130058584A (ko) 2011-11-25 2013-06-04 삼성전자주식회사 복호화기의 버퍼 관리를 위한 영상 부호화 방법 및 장치, 그 영상 복호화 방법 및 장치
CN104160701B (zh) 2012-01-27 2017-06-30 太阳专利托管公司 图像编码方法、图像解码方法、图像编码装置、及图像解码装置
FR2994785A1 (fr) * 2012-08-23 2014-02-28 France Telecom Procede de traitement d'un flux multimedia, terminal de communication, serveur et produit programme d'ordinateur correspondant.
US9161039B2 (en) 2012-09-24 2015-10-13 Qualcomm Incorporated Bitstream properties in video coding
KR101561012B1 (ko) 2012-09-28 2015-10-15 텔레폰악티에볼라겟엘엠에릭슨(펍) 비디오 시퀀스의 픽처의 디코딩 및 인코딩
US9374585B2 (en) 2012-12-19 2016-06-21 Qualcomm Incorporated Low-delay buffering model in video coding
JP5811106B2 (ja) * 2013-01-11 2015-11-11 セイコーエプソン株式会社 映像処理装置、表示装置および映像処理方法
WO2014196198A1 (ja) * 2013-06-05 2014-12-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
CN104685318B (zh) * 2013-06-27 2018-01-26 松下电器(美国)知识产权公司 运动传感器装置、电路、记录介质以及图像处理装置
CN104603574B (zh) * 2013-07-01 2017-10-13 松下电器(美国)知识产权公司 具有多个光源的运动传感器装置
CN105379273B (zh) * 2013-07-14 2019-03-15 夏普株式会社 对来自比特流的视频进行解码的方法和设备
US9674257B2 (en) * 2013-12-31 2017-06-06 Echostar Technologies L.L.C. Placeshifting live encoded video faster than real time
JP5866499B2 (ja) * 2014-02-24 2016-02-17 パナソニックIpマネジメント株式会社 監視カメラシステム及び監視カメラシステムの制御方法
US10419703B2 (en) * 2014-06-20 2019-09-17 Qualcomm Incorporated Automatic multiple depth cameras synchronization using time sharing
DE102014214750B3 (de) * 2014-07-28 2015-06-11 Reimar Lenz Bildaufnahmesystem mit schnell vibrierendem Global-Shutter-CMOS-Sensor
TWI500904B (zh) * 2014-09-18 2015-09-21 Vivotek Inc 立體攝影機及用來測量立體攝影機與基準面之距離的自動測距方法
US10283091B2 (en) * 2014-10-13 2019-05-07 Microsoft Technology Licensing, Llc Buffer optimization
US10075692B2 (en) * 2015-01-28 2018-09-11 Hfi Innovation Inc. Method of simple intra mode for video coding
US10638140B2 (en) 2015-05-29 2020-04-28 Qualcomm Incorporated Slice level intra block copy and other video coding improvements
US10003813B2 (en) * 2015-06-25 2018-06-19 Samsung Electronics Co., Ltd. Method and system for decoding by enabling optimal picture buffer management
CN106358042B (zh) 2015-07-17 2020-10-09 恩智浦美国有限公司 使用视频图像的帧间预测的并行解码器
US11051026B2 (en) 2015-08-31 2021-06-29 Intel Corporation Method and system of frame re-ordering for video coding
US10962780B2 (en) * 2015-10-26 2021-03-30 Microsoft Technology Licensing, Llc Remote rendering for virtual images
TWI632814B (zh) 2016-11-11 2018-08-11 財團法人工業技術研究院 視訊畫幀產生方法及其系統
FR3058858A1 (fr) * 2016-11-15 2018-05-18 Orange Procede et dispositif de codage et de decodage d'une sequence multi-vues
KR102342051B1 (ko) 2017-08-08 2021-12-22 삼성전자주식회사 영상 처리 장치, 영상 처리 방법 및 영상 디스플레이 시스템
US10412383B2 (en) 2017-08-15 2019-09-10 Google Llc Compressing groups of video frames using reversed ordering
US10748844B2 (en) * 2017-12-30 2020-08-18 Intel Corporation Stress isolation for silicon photonic applications
CN108833932B (zh) * 2018-07-19 2021-01-05 湖南君瀚信息技术有限公司 一种实现高清视频超低延迟编解码及传输的方法及系统
JP7167194B2 (ja) 2018-08-21 2022-11-08 ロヴィ ガイズ, インコーポレイテッド リアルタイム適応ビットレートトランスコーディングおよびトランスコードされたメディアの伝送のためのシステムおよび方法
US10911791B2 (en) * 2019-01-09 2021-02-02 Netflix, Inc. Optimizing encoding operations when generating a buffer-constrained version of a media title
CN113366853B (zh) 2019-02-02 2024-08-02 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的缓冲区初始化
WO2020156541A1 (en) 2019-02-02 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Data storage in buffers for intra block copy in video coding
US10992960B2 (en) 2019-02-06 2021-04-27 Jared Michael Cohn Accelerated video exportation to multiple destinations
CN113545068B (zh) 2019-03-01 2023-09-15 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的基于顺序的更新
EP3915265A4 (en) * 2019-03-01 2022-06-22 Beijing Bytedance Network Technology Co., Ltd. DIRECTION-BASED PREDICTION FOR INTRA BLOCK COPY IN VIDEO CODING
EP3915252A4 (en) 2019-03-04 2022-03-23 Beijing Bytedance Network Technology Co., Ltd. IMPLEMENTATION OF ASPECTS IN AN INTRA BLOCK COPY IN VIDEO ENCODING
KR102677020B1 (ko) 2019-07-06 2024-06-19 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 카피를 위한 가상 예측 버퍼
JP7359934B2 (ja) 2019-07-10 2023-10-11 北京字節跳動網絡技術有限公司 映像符号化におけるイントラブロックコピーのためのサンプル識別
KR102695788B1 (ko) 2019-07-11 2024-08-14 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 복사를 위한 비트스트림 적합 제약
US11064194B2 (en) 2019-10-31 2021-07-13 Western Digital Technologies, Inc. Encoding digital videos using controllers of data storage devices
CN113497932B (zh) * 2020-04-07 2022-10-18 上海交通大学 测量视频传输时延的方法、系统及介质
WO2021243044A1 (en) * 2020-05-27 2021-12-02 Let's Jam, Llc Methods and systems for synchronizing multimedia
US20230224484A1 (en) * 2020-06-09 2023-07-13 Lg Electronics Inc. Dpb operation-based image or video coding
CN112351285B (zh) * 2020-11-04 2024-04-05 北京金山云网络技术有限公司 视频编码、解码方法和装置、电子设备和存储介质
CN112468875B (zh) * 2020-11-30 2022-03-29 展讯通信(天津)有限公司 视频解码帧的显示输出控制方法及装置、存储介质、终端
WO2023075563A1 (ko) * 2021-11-01 2023-05-04 엘지전자 주식회사 피쳐 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US11425423B1 (en) 2022-03-10 2022-08-23 Yendo Hu Memory storage for motion estimation and visual artifact redcution

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004088736A (ja) * 2002-06-28 2004-03-18 Matsushita Electric Ind Co Ltd 動画像の符号化方法、復号化方法、データストリーム、データ記録媒体およびプログラム
JP2006506027A (ja) * 2002-11-06 2006-02-16 ノキア コーポレイション 予測基準値用並びに表示用ピクチャのバッファ処理
JP2010541471A (ja) * 2007-10-05 2010-12-24 トムソン ライセンシング マルチビュー・ビデオ(mvc)コーディング・システムにビデオ・ユーザビリティ情報(vui)を組み込むための方法と装置
US20110002397A1 (en) * 2007-04-13 2011-01-06 Nokia Corporation Video coder
JP2013535884A (ja) * 2010-07-13 2013-09-12 クゥアルコム・インコーポレイテッド ビデオデータをストリーミングするためのビデオ切替え

Family Cites Families (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4309754A (en) 1979-07-30 1982-01-05 International Business Machines Corp. Data interface mechanism for interfacing bit-parallel data buses of different bit width
US4642756A (en) 1985-03-15 1987-02-10 S & H Computer Systems, Inc. Method and apparatus for scheduling the execution of multiple processing tasks in a computer system
EP0537721B1 (en) 1991-10-15 1998-11-25 Hewlett-Packard Company Hardware-configured operating system kernel for a multitasking processor
US6002801A (en) 1995-04-18 1999-12-14 Advanced Micro Devices, Inc. Method and apparatus for improved video decompression by selection of IDCT method based on image characteristics
DE19530483A1 (de) 1995-08-18 1997-02-20 Siemens Ag Einrichtung und Verfahren zur Echtzeit-Verarbeitung einer Mehrzahl von Tasks
US5861920A (en) * 1996-11-08 1999-01-19 Hughes Electronics Corporation Hierarchical low latency video compression
JPH10229420A (ja) 1997-02-17 1998-08-25 Matsushita Electric Ind Co Ltd 通信システム
US5909559A (en) 1997-04-04 1999-06-01 Texas Instruments Incorporated Bus bridge device including data bus of first width for a first processor, memory controller, arbiter circuit and second processor having a different second data width
US6006303A (en) 1997-08-28 1999-12-21 Oki Electric Industry Co., Inc. Priority encoding and decoding for memory architecture
EP0909094A1 (en) 1997-10-07 1999-04-14 CANAL+ Société Anonyme Multithread data processor
CN1199471C (zh) 1997-11-28 2005-04-27 松下电器产业株式会社 提高了处理效率的图象声音处理装置
JP3935252B2 (ja) 1997-12-26 2007-06-20 キヤノン株式会社 画像形成装置及びジョブ処理方法
US6823016B1 (en) 1998-02-20 2004-11-23 Intel Corporation Method and system for data management in a video decoder
JPH11252552A (ja) 1998-03-05 1999-09-17 Sony Corp ビデオ信号の圧縮符号化方法及び圧縮符号化装置、並びに、圧縮符号化データの多重化方法及び多重化装置
US6298166B1 (en) 1998-03-30 2001-10-02 Seiko Epson Corporation Image transformations in the compressed domain
US6859496B1 (en) 1998-05-29 2005-02-22 International Business Machines Corporation Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel
JP4146950B2 (ja) 1998-11-04 2008-09-10 キヤノン株式会社 画像形成装置、画像形成装置における表示制御方法及び記憶媒体
US6768774B1 (en) 1998-11-09 2004-07-27 Broadcom Corporation Video and graphics system with video scaling
US6637031B1 (en) * 1998-12-04 2003-10-21 Microsoft Corporation Multimedia presentation latency minimization
US6249288B1 (en) 1998-12-14 2001-06-19 Ati International Srl Multi thread display controller
US7370325B1 (en) 1999-02-19 2008-05-06 Lucent Technologies Inc. Eager evaluation of tasks in a workflow system
US6771824B1 (en) 1999-12-28 2004-08-03 Lucent Technologies Inc. Adaptive variable length decoding method
US6574279B1 (en) 2000-02-02 2003-06-03 Mitsubishi Electric Research Laboratories, Inc. Video transcoding using syntactic and semantic clues
JP2002010216A (ja) 2000-04-20 2002-01-11 Canon Inc 復号化装置及びその制御方法並びに記憶媒体
US7206016B2 (en) 2000-05-01 2007-04-17 Polycom, Inc. Filtering artifacts from multi-threaded video
EP1156674A1 (en) 2000-05-19 2001-11-21 THOMSON multimedia Method and device for decoding a video data stream in special reproduction modes
US6963347B1 (en) 2000-08-04 2005-11-08 Ati International, Srl Vertex data processing with multiple threads of execution
GB2366464A (en) 2000-08-14 2002-03-06 Nokia Mobile Phones Ltd Video coding using intra and inter coding on the same data
US20040117427A1 (en) 2001-03-16 2004-06-17 Anystream, Inc. System and method for distributing streaming media
US7366236B1 (en) 2001-06-04 2008-04-29 Cisco Sytems Canada Co. Source adaptive system and method for 2D iDCT
WO2003058860A2 (en) * 2001-12-31 2003-07-17 Bae Systems Information And Electronic Systems Integration Inc. System for peak detection among multiple signals
US7920624B2 (en) 2002-04-01 2011-04-05 Broadcom Corporation Inverse quantizer supporting multiple decoding processes
US7034897B2 (en) 2002-04-01 2006-04-25 Broadcom Corporation Method of operating a video decoding system
US6963613B2 (en) 2002-04-01 2005-11-08 Broadcom Corporation Method of communicating between modules in a decoding system
EP3054680B1 (en) 2002-04-19 2019-06-05 Panasonic Intellectual Property Corporation of America Motion vector calculating method
US7787539B2 (en) * 2002-07-17 2010-08-31 Broadcom Corporation Decoding and presentation time stamps for MPEG-4 advanced video coding
JP3534742B1 (ja) * 2002-10-03 2004-06-07 株式会社エヌ・ティ・ティ・ドコモ 動画像復号方法、動画像復号装置、及び動画像復号プログラム
EP2557788A1 (en) 2002-11-29 2013-02-13 Sony Corporation Encoding apparatus and the method
US7099389B1 (en) 2002-12-10 2006-08-29 Tut Systems, Inc. Rate control with picture-based lookahead window
CN1751518B (zh) 2003-02-18 2010-12-01 诺基亚有限公司 图像编码方法
JP4750350B2 (ja) 2003-03-13 2011-08-17 パナソニック株式会社 タスク切換装置、方法及びプログラム
US7646817B2 (en) 2003-03-28 2010-01-12 Microsoft Corporation Accelerating video decoding using a graphics processing unit
US7627039B2 (en) 2003-09-05 2009-12-01 Realnetworks, Inc. Parallel video decoding
US7869503B2 (en) 2004-02-06 2011-01-11 Apple Inc. Rate and quality controller for H.264/AVC video coder and scene analyzer therefor
JP4095559B2 (ja) 2004-02-13 2008-06-04 株式会社東芝 H.264コーデックic、dvd再生装置、h.264コーデック方法
JP2007526687A (ja) 2004-02-19 2007-09-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 可変ブロック長信号の復号化スキーム
EP2184919A3 (en) 2004-04-28 2010-07-28 Panasonic Corporation Stream generation apparatus, stream generation method, coding apparatus, coding method, recording medium and program thereof
US20060002479A1 (en) 2004-06-22 2006-01-05 Fernandes Felix C A Decoder for H.264/AVC video
US20050289505A1 (en) 2004-06-25 2005-12-29 Williams Stanley N Method and system for improving performance and scalability of applications that utilize a flow-based-programming methodology
US8291448B2 (en) 2004-09-15 2012-10-16 Nokia Corporation Providing zapping streams to broadcast receivers
JP4867235B2 (ja) 2004-10-26 2012-02-01 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
JP4375305B2 (ja) 2004-10-26 2009-12-02 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
US20060114995A1 (en) 2004-12-01 2006-06-01 Joshua Robey Method and system for high speed video encoding using parallel encoders
US20060126726A1 (en) 2004-12-10 2006-06-15 Lin Teng C Digital signal processing structure for decoding multiple video standards
US7430238B2 (en) 2004-12-10 2008-09-30 Micronas Usa, Inc. Shared pipeline architecture for motion vector prediction and residual decoding
US20060126744A1 (en) 2004-12-10 2006-06-15 Liang Peng Two pass architecture for H.264 CABAC decoding process
US7817723B2 (en) 2004-12-14 2010-10-19 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E. V. Apparatus and method of optimizing motion estimation parameters for encoding a video signal
EP1675402A1 (en) 2004-12-22 2006-06-28 Thomson Licensing Optimisation of a quantisation matrix for image and video coding
US9219917B2 (en) 2005-01-19 2015-12-22 Thomson Licensing Method and apparatus for real time parallel encoding
US7565021B2 (en) 2005-03-01 2009-07-21 Microsoft Corporation Efficient implementation of block-based transform on graphics processing unit
WO2006096612A2 (en) 2005-03-04 2006-09-14 The Trustees Of Columbia University In The City Of New York System and method for motion estimation and mode decision for low-complexity h.264 decoder
US20060215754A1 (en) 2005-03-24 2006-09-28 Intel Corporation Method and apparatus for performing video decoding in a multi-thread environment
JP4261508B2 (ja) 2005-04-11 2009-04-30 株式会社東芝 動画像復号装置
JP4374548B2 (ja) 2005-04-15 2009-12-02 ソニー株式会社 復号装置および方法、記録媒体、並びに、プログラム
US7920633B2 (en) 2005-04-22 2011-04-05 Broadcom Corporation Method and system for parallel processing video data
US8902989B2 (en) 2005-04-27 2014-12-02 Broadcom Corporation Decoder system for decoding multi-standard encoded video
EP1773063A1 (en) 2005-06-14 2007-04-11 Thomson Licensing Method and apparatus for encoding video data, and method and apparatus for decoding video data
US7119723B1 (en) 2005-07-28 2006-10-10 Texas Instruments Incorporated Decoding variable length codes while using optimal resources
KR100770704B1 (ko) 2005-08-04 2007-10-29 삼성전자주식회사 픽쳐 스킵 방법 및 장치
US8306112B2 (en) 2005-09-20 2012-11-06 Mitsubishi Electric Corporation Image encoding method and image decoding method, image encoder and image decoder, and image encoded bit stream and recording medium
JP2009510962A (ja) 2005-10-03 2009-03-12 ノキア コーポレイション 独立変数のための適応性可変長コード
MX2008004760A (es) 2005-10-12 2008-11-13 Thomson Licensing Region de codificacion de video h .264 escalable de interes.
US8767836B2 (en) 2006-03-27 2014-07-01 Nokia Corporation Picture delimiter in scalable video coding
US7694102B2 (en) 2006-03-30 2010-04-06 International Business Machines Corporation Systems and methods for self-tuning memory
EP1841072B1 (de) 2006-03-30 2016-06-01 Unify GmbH & Co. KG Verfahren und Einrichtung zum Dekodieren von schichtkodierten Daten
US7626518B2 (en) 2006-06-08 2009-12-01 Via Technologies, Inc. Decoding systems and methods in computational core of programmable graphics processing unit
US8369419B2 (en) 2006-06-16 2013-02-05 Via Technologies, Inc. Systems and methods of video compression deblocking
US7586425B2 (en) 2006-07-11 2009-09-08 Nokia Corporation Scalable video coding and decoding
US8699583B2 (en) 2006-07-11 2014-04-15 Nokia Corporation Scalable video coding and decoding
CN1960472A (zh) 2006-08-14 2007-05-09 中兴通讯股份有限公司 一种多媒体移动终端及其接收多媒体数据的处理方法
US8218640B2 (en) 2006-10-31 2012-07-10 Sony Computer Entertainment Inc. Picture decoding using same-picture reference for pixel reconstruction
US8121196B2 (en) 2006-11-02 2012-02-21 Corel Corporation Method and apparatus for multi-threaded video decoding
US7573407B2 (en) 2006-11-14 2009-08-11 Qualcomm Incorporated Memory efficient adaptive block coding
EP2092748A4 (en) 2006-12-14 2011-01-05 Thomson Licensing METHOD AND DEVICE FOR CODING AND / OR DECODING VIDEO DATA USING EXPANSION LAYER RESTRICTION FOR SOFTENCE SCALINGABILITY
WO2008079041A1 (en) 2006-12-27 2008-07-03 Intel Corporation Methods and apparatus to decode and encode video information
JP5535646B2 (ja) * 2007-01-05 2014-07-02 トムソン ライセンシング スケーラブル映像符号化用の仮想リファレンスデコーダ
KR101455161B1 (ko) * 2007-01-08 2014-10-28 톰슨 라이센싱 비디오 스트림 스플라이싱을 위한 방법 및 장치
US8411734B2 (en) 2007-02-06 2013-04-02 Microsoft Corporation Scalable multi-thread video decoding
CN102263950B (zh) 2007-05-17 2014-10-01 索尼株式会社 编码设备和编码方法以及解码设备和解码方法
US8396082B2 (en) 2007-06-05 2013-03-12 Core Wireless Licensing S.A.R.L. Time-interleaved simulcast for tune-in reduction
US8254455B2 (en) 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
US8265144B2 (en) 2007-06-30 2012-09-11 Microsoft Corporation Innovations in video decoder implementations
US9648325B2 (en) 2007-06-30 2017-05-09 Microsoft Technology Licensing, Llc Video decoding implementations for a graphics processing unit
US20090109988A1 (en) 2007-10-26 2009-04-30 Chowdhary Musunuri Video Decoder with an Adjustable Video Clock
US8121187B2 (en) 2007-12-05 2012-02-21 Alcatel Lucent Method and apparatus for performing multiple bit rate video encoding and video stream switching
WO2010057027A1 (en) * 2008-11-14 2010-05-20 Transvideo, Inc. Method and apparatus for splicing in a compressed video bitstream
TW201032597A (en) 2009-01-28 2010-09-01 Nokia Corp Method and apparatus for video coding and decoding
US8189666B2 (en) 2009-02-02 2012-05-29 Microsoft Corporation Local picture identifier and computation of co-located information
US20110002376A1 (en) * 2009-07-01 2011-01-06 Wham! Inc. Latency Minimization Via Pipelining of Processing Blocks
JP5604825B2 (ja) * 2009-08-19 2014-10-15 ソニー株式会社 画像処理装置および方法
WO2011043885A1 (en) 2009-10-06 2011-04-14 Dow Global Technologies Llc. Extruded polystyrene foam with broad comonomer content distribution
US9237387B2 (en) 2009-10-06 2016-01-12 Microsoft Technology Licensing, Llc Low latency cacheable media streaming
CN101938341B (zh) * 2010-09-17 2012-12-05 东华大学 一种跨节点控制的在线视频流选择性重传方法
US8885729B2 (en) 2010-12-13 2014-11-11 Microsoft Corporation Low-latency video decoding
TWI587693B (zh) 2011-06-30 2017-06-11 微軟技術授權有限責任公司 用於減少視訊編碼及解碼中之延遲的方法、系統及電腦可讀取媒體
KR20130058584A (ko) * 2011-11-25 2013-06-04 삼성전자주식회사 복호화기의 버퍼 관리를 위한 영상 부호화 방법 및 장치, 그 영상 복호화 방법 및 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004088736A (ja) * 2002-06-28 2004-03-18 Matsushita Electric Ind Co Ltd 動画像の符号化方法、復号化方法、データストリーム、データ記録媒体およびプログラム
JP2006506027A (ja) * 2002-11-06 2006-02-16 ノキア コーポレイション 予測基準値用並びに表示用ピクチャのバッファ処理
US20110002397A1 (en) * 2007-04-13 2011-01-06 Nokia Corporation Video coder
JP2010541471A (ja) * 2007-10-05 2010-12-24 トムソン ライセンシング マルチビュー・ビデオ(mvc)コーディング・システムにビデオ・ユーザビリティ情報(vui)を組み込むための方法と装置
JP2013535884A (ja) * 2010-07-13 2013-09-12 クゥアルコム・インコーポレイテッド ビデオデータをストリーミングするためのビデオ切替え

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6015041484; Rickard Sjoberg: 'On num_reorder_frames and max_dec_frame_buffering' Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 5th Me JCTVC-E339, 20110320, P.1-P.4, JCTVC *

Also Published As

Publication number Publication date
EP4246968A3 (en) 2023-12-06
US11601683B2 (en) 2023-03-07
US9729898B2 (en) 2017-08-08
CA2840427A1 (en) 2013-01-03
US20200404337A1 (en) 2020-12-24
CN103621085A (zh) 2014-03-05
TWI587693B (zh) 2017-06-11
HK1195430A1 (zh) 2014-11-07
US20230014518A1 (en) 2023-01-19
EP4246967A3 (en) 2023-12-20
US9426495B2 (en) 2016-08-23
EP2727341A1 (en) 2014-05-07
LT3691268T (lt) 2023-10-10
WO2013002818A1 (en) 2013-01-03
EP2727341A4 (en) 2015-03-11
US20160316228A1 (en) 2016-10-27
TW201625008A (zh) 2016-07-01
US8837600B2 (en) 2014-09-16
US10924766B2 (en) 2021-02-16
US20170094316A1 (en) 2017-03-30
US11641487B2 (en) 2023-05-02
KR20140043767A (ko) 2014-04-10
US12075097B2 (en) 2024-08-27
CL2013003736A1 (es) 2014-08-01
TW201301899A (zh) 2013-01-01
US20130003864A1 (en) 2013-01-03
US20220394307A1 (en) 2022-12-08
US10003824B2 (en) 2018-06-19
RU2587467C2 (ru) 2016-06-20
IL247175A (en) 2017-11-30
US11601682B2 (en) 2023-03-07
CN103621085B (zh) 2016-03-16
EP2727341B1 (en) 2020-04-08
EP3691268B1 (en) 2023-08-30
NZ619406A (en) 2016-01-29
US20180249184A1 (en) 2018-08-30
RS64742B1 (sr) 2023-11-30
MX2013015154A (es) 2014-03-27
BR112013033552A2 (pt) 2017-02-07
AU2011371809B2 (en) 2016-07-14
HUE063498T2 (hu) 2024-01-28
US11641485B2 (en) 2023-05-02
HK1226567A1 (zh) 2017-09-29
US20210127138A1 (en) 2021-04-29
EP4246968A2 (en) 2023-09-20
PL3691268T3 (pl) 2024-02-19
US20230239509A1 (en) 2023-07-27
US11601684B1 (en) 2023-03-07
TW201728180A (zh) 2017-08-01
CN105721880B (zh) 2019-04-05
SG10201408609SA (en) 2015-02-27
US11601681B2 (en) 2023-03-07
US11871040B2 (en) 2024-01-09
BR112013033552B1 (pt) 2022-02-22
MY189650A (en) 2022-02-23
RU2013158832A (ru) 2015-07-10
CA2840427C (en) 2018-03-06
KR101944565B1 (ko) 2019-01-31
JP6059219B2 (ja) 2017-01-11
US20140348249A1 (en) 2014-11-27
US10805640B2 (en) 2020-10-13
ZA201308553B (en) 2015-02-25
DK3691268T3 (da) 2023-10-02
HRP20231180T1 (hr) 2024-01-05
US20240080485A1 (en) 2024-03-07
TWI606722B (zh) 2017-11-21
US9743114B2 (en) 2017-08-22
IL230189A (en) 2016-09-29
US11451830B2 (en) 2022-09-20
CN105721880A (zh) 2016-06-29
TWI533677B (zh) 2016-05-11
US20230010753A1 (en) 2023-01-12
US20230015752A1 (en) 2023-01-19
US11641486B2 (en) 2023-05-02
US20230008752A1 (en) 2023-01-12
US20170311000A1 (en) 2017-10-26
US20230017770A1 (en) 2023-01-19
EP3691268A1 (en) 2020-08-05
CO6862115A2 (es) 2014-02-10
PT3691268T (pt) 2023-09-20
EP4246967A2 (en) 2023-09-20
US20230020316A1 (en) 2023-01-19
ES2958967T3 (es) 2024-02-16

Similar Documents

Publication Publication Date Title
US12075097B2 (en) Reducing latency in video encoding and decoding
AU2011371809A1 (en) Reducing latency in video encoding and decoding

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140919

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140919

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150523

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151020

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20160119

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20160218

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20160322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160420

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161208

R150 Certificate of patent or registration of utility model

Ref document number: 6059219

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250