JP2009033775A - 非同期コード化システムにおける適応性ビットレート制御のための方法および装置 - Google Patents
非同期コード化システムにおける適応性ビットレート制御のための方法および装置 Download PDFInfo
- Publication number
- JP2009033775A JP2009033775A JP2008291574A JP2008291574A JP2009033775A JP 2009033775 A JP2009033775 A JP 2009033775A JP 2008291574 A JP2008291574 A JP 2008291574A JP 2008291574 A JP2008291574 A JP 2008291574A JP 2009033775 A JP2009033775 A JP 2009033775A
- Authority
- JP
- Japan
- Prior art keywords
- video
- rate
- picture
- mpeg
- bit
- 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.)
- Pending
Links
- 230000003044 adaptive effect Effects 0.000 title claims description 30
- 238000000034 method Methods 0.000 title abstract description 38
- 230000006835 compression Effects 0.000 abstract description 27
- 238000007906 compression Methods 0.000 abstract description 27
- 230000001360 synchronised effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 14
- 230000002123 temporal effect Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2401—Monitoring of the client buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/242—Synchronization processes, e.g. processing of PCR [Program Clock References]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Abstract
【課題】非同期コード化システムにおいて、コード化ビットストリームの出力ビットレートを制御する好適な方法を提供すること。
【解決手段】非同期コード化システムにおいて、コード化ビットストリームの出力ビットレートを制御する方法であって、該非同期コード化システムは、第1のクロックを有し、ビットストリームを第1のレートで出力するビデオ圧縮エンジンと、第2のクロックを有し、ビットストリームを第2のレートで出力するビデオエンコーダとを含む。ビットストリームの出力レートを決定する技術であって、その出力レートは、そのビットストリームから読み出された情報を利用可能な帯域幅に適応させることによって決定される技術である。デジタルフライホイールは、連続的なフィードバックを、コード化システムから、ビデオ圧縮エンジンへと、両者のクロックレートが適切に同期化された状態を維持することを確実にするために供給する。
【選択図】図2
【解決手段】非同期コード化システムにおいて、コード化ビットストリームの出力ビットレートを制御する方法であって、該非同期コード化システムは、第1のクロックを有し、ビットストリームを第1のレートで出力するビデオ圧縮エンジンと、第2のクロックを有し、ビットストリームを第2のレートで出力するビデオエンコーダとを含む。ビットストリームの出力レートを決定する技術であって、その出力レートは、そのビットストリームから読み出された情報を利用可能な帯域幅に適応させることによって決定される技術である。デジタルフライホイールは、連続的なフィードバックを、コード化システムから、ビデオ圧縮エンジンへと、両者のクロックレートが適切に同期化された状態を維持することを確実にするために供給する。
【選択図】図2
Description
(発明の分野)
本発明は、概して、可変レートビットストリームの伝送に関し、より具体的には、起こり得る帯域幅オーバーフローを検出し、防ぐ方法に関する。特に、本発明は、非同期コード化システムにおける、コード化されたビットストリームの適応性のある高精度ビットレート制御に関する。
本発明は、概して、可変レートビットストリームの伝送に関し、より具体的には、起こり得る帯域幅オーバーフローを検出し、防ぐ方法に関する。特に、本発明は、非同期コード化システムにおける、コード化されたビットストリームの適応性のある高精度ビットレート制御に関する。
(発明の背景)
近年、データ、特にビデオデータの伝送は、ビデオデータがしばしば高帯域幅を必要とし、バースト的(bursty)であり、時間的制約があるいうことに関連する問題点を提示して来た。従来、データ伝送は、電話会社によって提供される公衆変換回線網またはパケットネットワークで行われてきた。公衆変換回線網は、双方向音声用途用に設計されており、従って、厳しい時間的制約を満たす比較的低い帯域幅の回路を提供する。パケットネットワークは、コンピュータシステム間のデータ転送用に設計されている。唯一の制約は、データが最終的にその宛先に到達するということである。転送に関して利用可能な帯域幅は、ネットワークにおける輻輳の程度に依存する。従って、典型的には、パケットネットワークは、大量のデータのうちのあるデータが、いつ宛先に到達するかを保証しないし、どのような順序で到達するかということさえ保証しない。
近年、データ、特にビデオデータの伝送は、ビデオデータがしばしば高帯域幅を必要とし、バースト的(bursty)であり、時間的制約があるいうことに関連する問題点を提示して来た。従来、データ伝送は、電話会社によって提供される公衆変換回線網またはパケットネットワークで行われてきた。公衆変換回線網は、双方向音声用途用に設計されており、従って、厳しい時間的制約を満たす比較的低い帯域幅の回路を提供する。パケットネットワークは、コンピュータシステム間のデータ転送用に設計されている。唯一の制約は、データが最終的にその宛先に到達するということである。転送に関して利用可能な帯域幅は、ネットワークにおける輻輳の程度に依存する。従って、典型的には、パケットネットワークは、大量のデータのうちのあるデータが、いつ宛先に到達するかを保証しないし、どのような順序で到達するかということさえ保証しない。
従って、電話ネットワークもパケットネットワークも、時間的制約がある、高帯域幅のバーストデータの処理に良好に適応していないことが認識され得る。このようなデータの一例は、ISO/IEC13818−1および13818−2に示されるように、Motion Picture Experts Group(「MPEG」)MPEG−2規格に従って圧縮されたデジタルテレビである。
MPEG−2規格は、ビデオのデジタル表現を圧縮するためのコード化方式を定義する。そのコード化方式は、概して、ビデオイメージの空間的かつ時間的な冗長性が高いということを利用している。所与のビデオイメージは、領域全体が同じ外観である部分を複数有しているので、空間的冗長性がある。領域が広くなり、領域の数が増大するにつれ、イメージにおける空間的冗長度はより高くなる。シーケンス内のある所与のビデオイメージとその前後のイメージとの間に大きな変化がないことが多いので、時間的冗長性がある。2つのビデオイメージ間の変化が少なければ少ないほど、時間的冗長度はより高くなる。1イメージにおける空間的冗長度が高くなり、そのイメージが属するイメージシーケンス内の時間的冗長度が高くなるほど、その次に続くイメージを表すために必要になる情報のビットはより少なくなる。
MPEG−2圧縮方式は、圧縮されたピクチャのシーケンスとしてビデオイメージのシーケンスを提示し、各ピクチャは特定のときにデコードされる必要がある。ピクチャを圧縮し得る方法は三つある。第1の方法はイントラコーディングと呼ばれ、他のピクチャを参照することなく圧縮が行われる方法である。このコード化技術は、空間的冗長性を低減するが、時間的冗長性は低減されない。得られるピクチャは、概して、コード化によって空間的かつ時間的冗長性がともに低減したピクチャよりも大きい。この方法でコード化されたピクチャはI−ピクチャと呼ばれる。ある程度の数のI−ピクチャがシーケンスにおいて必要とされる。これは、第1に、シーケンス内の最初のピクチャはI−ピクチャである必要があり、第2に、I−ピクチャは伝送エラーからの復元を可能にするからである。
時間的冗長性は、前方または後方または両方のピクチャからの変化のセットとしてピクチャをコード化することによって低減される。MPEG−2においては、これは、移動補償された前方予測および後方予測を用いて実行される。ピクチャが前方移動補償予測のみを使用する場合、そのピクチャは予測コード化ピクチャ(Predictive−coded picture)またはPピクチャと呼ばれる。ピクチャが前方移動補償予測および後方移動補償予測の両方を用いる場合、2方向予測コード化ピクチャ(bi−directional predictive−coded picture)、または、省略してBピクチャと呼ばれる。概して、PピクチャはIピクチャよりもビットが少なく、Bピクチャは最もビット数が少ない。従って、所与のピクチャシーケンスをMPEG−2フォーマットでコード化するために必要なビット数は、ピクチャ内容自体だけでなく、上述のピクチャコード化タイプの分布に依存する。前述の記載から明らかなように、ニュース番組のメインキャスターのイメージをコード化するために必要なピクチャのシーケンスは、MTVでの曲の演奏のために必要なシーケンスよりも、I−ピクチャの数も少なく、大きさも小さく、BピクチャおよびPピクチャも小さい。結果として、ニュース番組のメインキャスターのイメージのMPEG−2表現は、MTVのシーケンスのイメージのMPEG−2表現よりもずっと小さくなる。
MPEG−2ピクチャは、典型的には、民生電子デバイス、すなわち、ケーブルテレビ(「CATV」)サービスプロバイダによって提供されるデジタルテレビやセットトップボックスなどの受信器によって受信される。デバイスの制約によって、MPEG−2ピクチャを格納するために利用可能なメモリの量が制限され得る。さらに、そのピクチャは、動画を生成するために用いられている。結果として、MPEG−2ピクチャは、次のMPEG−2ピクチャが必要なときに利用可能であり、現在送信されているピクチャを入れる空間がメモリ内にあるように、適切な順序でかつ時間間隔で、受信器に到達する必要がある。この技術において、データが足りなくなってしまったメモリはアンダーフローしたと言われ、一方保持できるデータよりも多いデータを受け取ってしまったメモリはオーバーフローしたと言われる。アンダーフローの場合、TVピクチャの動きは次のMPEG−2ピクチャが到達するまで停止する必要があり、オーバーフローの場合、メモリに納まらなかったデータは単に失われるだけである。
また、MPEG−2が、可変かつバースト的なビデオデータストリームと可変ビットレートコード化ストリームとの区別を理解することが重要である。実際、MPEG−2のもとでは、一定ビットレートストリーム(「CBR」)と可変ビットレートストリーム(「VBR」)が定義される。コード化されたCBRビデオシーケンスにおいては、比較的に動きの少ないテレビのニュースキャスターは、依然として、規定されたビットレートでコード化される。CBRシステムの制約は、ビデオ「パイプ(pipe)」が満たされていることを要求するので、Iピクチャ、PピクチャおよびBピクチャはすべて依然として比較的大きい。VBRにおいては、ビデオパイプを満たすというシステムの要求はないので、伝送されるピクチャは必要とされるだけの大きさである。
図1は、テレビイメージのシーケンスのMPEG−2ビットストリーム表現を搬送するチャネル16によって接続されているデジタルピクチャソース12およびテレビ14を含むシステム10を表す。デジタルピクチャソース12は、イメージの非圧縮デジタル表示(「UDR」)18を生成し、UDR18は、可変ビットレート(「VBR」)エンコーダ20に送られる。VBRエンコーダ20は、非圧縮デジタル表現をコード化して、可変レートビットストリーム(「VRBS」)22を生成する。可変レートビットストリーム22は、可変長の圧縮デジタルピクチャ24(a...n)のシーケンスである。MPEG−2規格に従ってコード化されるとき、ピクチャの長さは、イメージの複雑さと、I−ピクチャ、P−ピクチャまたはB−ピクチャのいずれであるかということとに依存する。
さらに、ピクチャの長さは、VBRエンコーダ20のコード化レートに依存する。そのレートは、変更され得る。概して、より多くのビットが用いられてピクチャがコード化されるほど、画質は、より良好になる。
さらに、ピクチャの長さは、VBRエンコーダ20のコード化レートに依存する。そのレートは、変更され得る。概して、より多くのビットが用いられてピクチャがコード化されるほど、画質は、より良好になる。
VRBS22は、チャネル16を介してVBRデコーダ26に転送される。VBRデコーダ26は、圧縮デジタルピクチャ24(a...n)をデコードして、非圧縮デジタルピクチャ28を生成する。次に、非圧縮デジタルピクチャ28は、テレビ14に供給される。テレビ14がデジタルテレビである場合、直接供給される。そうでない場合には、非圧縮デジタルピクチャ(「UDP」)28を標準アナログテレビ信号に変換し、これらの信号をテレビ14に供給する他の要素がある。当然、1つのエンコーダ20の出力を受け取るVBRデコーダ26の数は、任意の数であり得る。
図1において、チャネル16は、VRBS22を、パケット30のシーケンスとして転送する。パケットのシーケンスは、MPEG−2規格関連で、パケット基本ストリーム、または「PES」として公知である。従って、圧縮デジタルピクチャ24は、図1において、パケット30の可変長シーケンスとして表されている。従って、ピクチャ24(a)は「n」個のパケットを有し得、ピクチャ24(n)は、「k」個のパケットを有する。各ピクチャ24には、タイミング情報32が含まれる。タイミング情報は、2種類の情報、すなわち、クロック情報およびタイムスタンプを含む。クロック情報は、デコーダ26をエンコーダ20と同期化させるために用いられる。MPEG−2規格は、このクロック情報のことを、プログラムクロック基準(「PCR」)と呼ぶ。タイムスタンプは、いつピクチャがデコードされるかを規定するデコードタイムスタンプ(「DTS」)と、いつピクチャが実際に表示されるかを規定するプレゼンテーションタイムスタンプ(「PTS」)とを含む。タイムスタンプにおいて規定される時間は、クロック情報に関して規定される。VBRデコーダ26は、ピクチャ24をデコードし、これをTV14に供給するまで格納する、比較的少量のメモリを含む。このメモリを、図1において参照符号34で示し、以下、デコーダのビットバッファと呼ぶ。ビットバッファ34の大きさは、少なくとも、最大限のあり得るMPEG−2ピクチャを保持するために十分な大きさである必要がある。さらに、デコーダ26が、TV14にとって適切なときにピクチャ24を利用可能にすることができ、ビットバッファ34が決してオーバーフローまたはアンダーフローしないように、チャネル16はピクチャ24をビットバッファ34に供給する必要がある。ビットバッファ34は、デコーダがピクチャのタイムスタンプにおいてピクチャのデコードを開始する時間として規定される時間までに、ピクチャ24内のビットの全てがビットバッファに到達しなかった場合に、アンダーフローする。
次に、図2を参照すると、ここに典型的なMPEG−2エンコーダインプリメンテーションの概念的なブロック図が示されている。このインプリメンテーションにおいて固有の問題点は、以下により詳細に説明されるが、ビデオコード化エンジンからの可変PESビットレートがシステムレートと一致しないことに関する。この不一致によって生じる問題点は、明らかになる。図2に示すように、生のビデオ入力40は、ビデオコード化エンジン42に結合され、ビデオコード化エンジン42において、例えば、MPEG−2コード化アルゴリズムによって圧縮される。一定ビットレート(CBR)コード化システムにおいて、MPEG−2コード化エンジンは、コード化ビットバッファ44にあるコード化されたビットが、一定ビットレートRuで、コード化システム、すなわち、FPGAトランスポートパケット化器46に伝えられると想定している。このビットレートは、コード化ビットバッファレベルまたはシステムがコード化されたデータをコード化ビットストリームバッファから取り出す速度とは無関係に、ビデオコード化エンジンの内部ビットレート計算に依存する。この取り出す速度は、Rjとして公知である。
図2に示すように、コード化ビットストリームは、コード化ビットストリームバッファ
44からトランスポートパケット化器46に、ビットレートRjで伝えられる。トランスポートパケット化器46においてトランスポートパケットヘッダを追加することに起因して、トランスポートストリームパケット化器出力レートRtは、Rjと異なる(Rt>Rj)。CBRリアルタイムデジタルコード化システムにおいて、コード化されたビットが、デコーダ入力ビットバッファ(図1の34)に、生成された元のビットレートで連続的に供給されることがきわめて重要である。RuがRjと等しい場合、デコーダのバッファの制限は破られない。すなわち、オーバーフローまたはアンダーフローという結果のいずれにもならない。反対に、ビットが、Ru以外のビットレートでデコーダの入力ビットバッファに入る場合、デコーダバッファのオーバーフローまたはアンダーフローが起き、デコーダの出力におけるビデオの乱れが引き起こされる。可能な解決策の1つとして、コード化エンジンおよびコード化ビットストリーム処理回路の両方の制御に1つのシステムクロックを用いることを要求することである。しかし、図2に示す、現実世界におけるインプリメンテーションにおいて、この理想的な条件は満たされない。
44からトランスポートパケット化器46に、ビットレートRjで伝えられる。トランスポートパケット化器46においてトランスポートパケットヘッダを追加することに起因して、トランスポートストリームパケット化器出力レートRtは、Rjと異なる(Rt>Rj)。CBRリアルタイムデジタルコード化システムにおいて、コード化されたビットが、デコーダ入力ビットバッファ(図1の34)に、生成された元のビットレートで連続的に供給されることがきわめて重要である。RuがRjと等しい場合、デコーダのバッファの制限は破られない。すなわち、オーバーフローまたはアンダーフローという結果のいずれにもならない。反対に、ビットが、Ru以外のビットレートでデコーダの入力ビットバッファに入る場合、デコーダバッファのオーバーフローまたはアンダーフローが起き、デコーダの出力におけるビデオの乱れが引き起こされる。可能な解決策の1つとして、コード化エンジンおよびコード化ビットストリーム処理回路の両方の制御に1つのシステムクロックを用いることを要求することである。しかし、図2に示す、現実世界におけるインプリメンテーションにおいて、この理想的な条件は満たされない。
従って、デコーダのオーバーフローおよびアンダーフローがいずれも発生しないことを確実にするように、ビットレートRuとビットレートRjが十分に一致することを確実にする改善された方法および装置に対するニーズがある。これは、特に、CBRシステムに適用される場合に有用であり得る。このような解決策は、上記のようにさらなるクロックレートを用いるのではなく、システムに組み込まれた既に存在するクロックレートを利用する必要がある。
(項目1) 非同期コード化システムにおいて、コード化ビットストリームの出力ビットレートを制御する方法であって、該非同期コード化システムは、第1のクロックを有し、ビットストリームを第1のレートで出力するビデオ圧縮エンジンと、第2のクロックを有し、ビットストリームを第2のレートで出力するビデオエンコーダとを含み、該方法は、
該ビデオ圧縮エンジンからの該ビットストリーム出力を構文解析して、少なくとも、該ビットストリームにおける第1および第2の時間パラメータを識別する、工程と、
該ビデオコード化システムによるビデオ出力の各フレームについてビットエラー偏差を判定する工程であって、該ビットエラー偏差は、該第1および第2の時間パラメータから計算される、工程と、
該ビットエラー偏差に基づいて、該ビデオ圧縮エンジンの出力を調整する工程と
を包含する、方法。
(項目2) 前記ビットストリームは、MPEG−2ビットストリームである、項目1に記載の方法。
(項目3) 前記第1の時間パラメータは、MPEG−2タイムスタンプである、項目2に記載の方法。
(項目4) 前記MPEG−2タイムスタンプは、デコードタイムスタンプ(DTS)である、項目3に記載の方法。
(項目5) 前記MPEG−2タイムスタンプは、プレゼンテーションタイムスタンプ(PTS)である、項目3に記載の方法。
(項目6) 前記第2の時間パラメータは、ビデオバッファベリファイヤ遅延(VBV_delay)値である、項目1に記載の方法。
(項目7) 前記第2のクロックは、前記コード化システムのローカル時間を表すシステムタイムクロック(STC)である、項目1に記載の方法。
(項目8) 前記ビットエラー偏差は、タイムエラー偏差に基づく、項目1に記載の方法。
(項目9) 前記タイムエラー偏差(Terror)が、以下の式:
Terror(秒)=(VBV_delay−(DTS−STC))/90,000
で計算される、項目8に記載の方法。
(項目10) ビットエラー偏差(Berror)は、各フレームについて、以下の式:
Berror(ビット)=(Terror*Ru)/フレームレート
で計算されるが、ここで、Ruは、ビデオ圧縮エンジンがビットストリームを出力するレートを表す、項目9に記載の方法。
(項目1) 非同期コード化システムにおいて、コード化ビットストリームの出力ビットレートを制御する方法であって、該非同期コード化システムは、第1のクロックを有し、ビットストリームを第1のレートで出力するビデオ圧縮エンジンと、第2のクロックを有し、ビットストリームを第2のレートで出力するビデオエンコーダとを含み、該方法は、
該ビデオ圧縮エンジンからの該ビットストリーム出力を構文解析して、少なくとも、該ビットストリームにおける第1および第2の時間パラメータを識別する、工程と、
該ビデオコード化システムによるビデオ出力の各フレームについてビットエラー偏差を判定する工程であって、該ビットエラー偏差は、該第1および第2の時間パラメータから計算される、工程と、
該ビットエラー偏差に基づいて、該ビデオ圧縮エンジンの出力を調整する工程と
を包含する、方法。
(項目2) 前記ビットストリームは、MPEG−2ビットストリームである、項目1に記載の方法。
(項目3) 前記第1の時間パラメータは、MPEG−2タイムスタンプである、項目2に記載の方法。
(項目4) 前記MPEG−2タイムスタンプは、デコードタイムスタンプ(DTS)である、項目3に記載の方法。
(項目5) 前記MPEG−2タイムスタンプは、プレゼンテーションタイムスタンプ(PTS)である、項目3に記載の方法。
(項目6) 前記第2の時間パラメータは、ビデオバッファベリファイヤ遅延(VBV_delay)値である、項目1に記載の方法。
(項目7) 前記第2のクロックは、前記コード化システムのローカル時間を表すシステムタイムクロック(STC)である、項目1に記載の方法。
(項目8) 前記ビットエラー偏差は、タイムエラー偏差に基づく、項目1に記載の方法。
(項目9) 前記タイムエラー偏差(Terror)が、以下の式:
Terror(秒)=(VBV_delay−(DTS−STC))/90,000
で計算される、項目8に記載の方法。
(項目10) ビットエラー偏差(Berror)は、各フレームについて、以下の式:
Berror(ビット)=(Terror*Ru)/フレームレート
で計算されるが、ここで、Ruは、ビデオ圧縮エンジンがビットストリームを出力するレートを表す、項目9に記載の方法。
(好適な実施形態の詳細な説明)
本明細書は、新規とみなされる本発明の特徴を規定する請求の範囲を結論付けるが、本発明は図面に関連して以下の説明の考察からよりよく理解されると考えられている。図面では、同様の参照符号が繰返し使用されている。
本明細書は、新規とみなされる本発明の特徴を規定する請求の範囲を結論付けるが、本発明は図面に関連して以下の説明の考察からよりよく理解されると考えられている。図面では、同様の参照符号が繰返し使用されている。
ここで図3を参照すると、デジタルビデオエンコーダにおいて3つの主要な機能ブロックおよびタイムベースを示した、クロック周波数にしたがう周波数ブロック図が図示される。これらの三つのブロックは、異なる周波数で、かつ、そのクロックの任意の一つ同士の間で位相ロックすることなく、クロックされている。デジタルビデオエンコーダ50は、第1のブロック(それは、ビデオストリームを特定のビットレートRuでPESストリームにコード化するビデオ圧縮エンジン52である)を含む。この実施形態において、ビデオ圧縮エンジン52は、MPEG−2ビデオ圧縮エンジンプロセッサであり、100メガへヘルツ(「MHz」)クロック入力によってクロックされる。第2のブロックは、PESパイプラインまたはビデオコード化システム54によって表され、27MHzの第2の周波数で動作する。第3のブロック56は、第3の周波数(一般的には4.096MHz)で動作する、本発明による制御プロセッサを図示する。これは、MPEG IIビデオ圧縮プロセッサRuのコード化レートおよびPESパイプラインの臨界出力スロットレートRjに設定する。したがって、図3に図示されたコード化システムは、ブロック52、54、56において使用されるクロックが、それぞれ、異なった独立の周波数を有し得るという観点から非同期コード化システムであることが認識され得る。さらに、任意の一つのブロックの動作は、他のブロックの任意のものの異なるタイミング周波数に依存しない。しかし、これは、本発明によってのみ解決される課題の原因である。より詳細には、MPEG−2ビデオ圧縮プロセッサはビデオPESデータを圧縮し、100MHzプロセッサクロックから派生するそれ自体の計算だけに基づくレートRjでビデオPESデータを出力する。逆に、PESパイプラインは、圧縮PESビデオデータを、別個の27MHzクロックから派生するそれ自体のビットレート計算だけに基づくコード化システムの残りに転送している。したがって、理想的な状況では、Rjは、Ruに等しく、すなわち、RjとRuとの一致が、ビデオ圧縮エンジンからのビットレートを出力PESパイプラインにロックすることになる。上述したように、この問題を解決するための一つ方法は、単一のシステムクロックを用いて、コード化エンジンおよびコード化ビットストリーム処理回路の両方を制御することである。しかしながら、実世界のインプリメンテーションでは、これは、実用的ではなく、商業的に可能でもない。
したがって、ビットレートRuおよびRjを一致させる目的で、非同期適応レート制御方法を説明する。この非同期適応レート制御方法は、MPEG−2データストリームに既に組み込まれたタイミング情報を使用して、適切な時間を計算して、ビデオ圧縮エンジンレートRuと正確に一致するように、PESパイプライン出力レートRjを適応的に調整し、それにより、MPEGビデオビットストリームは、意図した時間においてデコーダに送達される。
ここで、図4を参照すると、ここでは、本発明による適応レート制御方法の概念的ブロック図が示されている。そのブロック図60は、適応レート制御方法を図示している。その方法では、MPEGビデオ圧縮エンジン62のPESビデオデータストリーム出力は調べられ、二つのビデオMPEGデータストリームエレメントを比較し、引き出された差を
、PESビデオフィールドプログラム可能ゲートアレイ(FPGA)ストリームパーサ66における適応的に調整されたデジタル「フライホイール」に対して使用する。R’jの一致された出力レートがR’uと等しくするようにMPEGビデオエンコーダ62の出力レートをPESパイプラインFIFO64に正確に一致させるために、このデジタル「フライホイール」は、制御プロセッサ68にインプリメントされ、ビデオストリームタイミング情報は、PESビデオFPGAストリームパーサ66から出力され、適応レート制御アルゴリズム(本明細書において以下で詳細に説明する)および制御プロセッサ68に影響され、PESパイプラインFIFO64に入力される。
、PESビデオフィールドプログラム可能ゲートアレイ(FPGA)ストリームパーサ66における適応的に調整されたデジタル「フライホイール」に対して使用する。R’jの一致された出力レートがR’uと等しくするようにMPEGビデオエンコーダ62の出力レートをPESパイプラインFIFO64に正確に一致させるために、このデジタル「フライホイール」は、制御プロセッサ68にインプリメントされ、ビデオストリームタイミング情報は、PESビデオFPGAストリームパーサ66から出力され、適応レート制御アルゴリズム(本明細書において以下で詳細に説明する)および制御プロセッサ68に影響され、PESパイプラインFIFO64に入力される。
ここで、図5を参照すると、ここでは、本発明による適応レート制御を行うように適応された装置の実施形態のブロック図を示す。デジタルビデオエンコーダ70は、ビデオ入力72で生ビデオ入力を供給し、それをビデオ圧縮エンジン74に供給する。そのビデオ圧縮エンジンは、生ビデオ入力を受け取り、特定のビデオ圧縮アルゴリズムまたはプロトコルにしたがってそれをコード化する。その例は、MPEG−2ビデオ圧縮コード化アルゴリズムである。制御プロセッサ76は、本明細書の下記で詳細に説明する適応レート制御アルゴリズムに準拠するコード化パラメータを設定し、モニタし、かつ、調整する。その圧縮されたコード化ビットストリームは、ビデオ圧縮エンジン74を出て、出力パイプラインに入力し、出力パイプライにおいて、それは、PES FIFOビットストリームバッファ80においてバッファリングされ、パケット化された例示的なストリームからトランスポートストリームに変換される。
さらに詳細には、ビデオ圧縮エンジン74に対する物理インターフェースは、周辺部品相互接続(Peripheral Component Interconnect)(「PCI」)バス77である。これは、パーソナルコンピュータで使用されるのと同じバス規格であり、PCIバス77は、ビデオ圧縮エンジン74をPCIターゲット78に接続する。PCIターゲット78は、圧縮ビデオデータストリームの物理「ターゲット」である。PCIターゲットに接続されるのは、フィールドプログラム可能ゲートアレイ(「FGPA」)PCIターゲットコントローラ82である。FPGA PCIターゲットコントローラ82は、ステートマシーンと制御信号とを有するカスタムプログラム化FPGAである。これは、PCIターゲットから圧縮ビデオデータを読み出し、PES FIFOビットストリームバッファ80にそれを書きこむ。PES FIFOビットストリームバッファ82は、圧縮ビデオデータを格納する大きなFIFOアレイである。そのPES
FIFOビットストリームバッファ82は重要な機能を提供する。なぜなら、ビデオ圧縮エンジン74とPCIターゲット78との間に配置されたPCIバス77は非決定的であるからである。すなわち、圧縮ビデオデータは、PCIバス77にわたって極めてバースト的である。ときどき、PCIバスにわたってバースト転送される、極めて大きな「I」ピクチャが存在する。他のときには、そのバスをわたって何も転送されない。PES FIFOビットストリームバッファは、このバーストのいくらかを吸収する。
FIFOビットストリームバッファ82は重要な機能を提供する。なぜなら、ビデオ圧縮エンジン74とPCIターゲット78との間に配置されたPCIバス77は非決定的であるからである。すなわち、圧縮ビデオデータは、PCIバス77にわたって極めてバースト的である。ときどき、PCIバスにわたってバースト転送される、極めて大きな「I」ピクチャが存在する。他のときには、そのバスをわたって何も転送されない。PES FIFOビットストリームバッファは、このバーストのいくらかを吸収する。
このFPGA PCIターゲットコントローラに接続されるのは、FPGA PESパイプラインコントローラ84である。FPGA PESパイプラインコントローラ84は、ステートマシーンと制御信号とを有する別のカスタムプログラム化FPGAである。これは、PES FIFOビットストリームバッファ80からデータを読み出し、それをFPGAトランスポートパケット化器86に転送する。FPGA PESパイプラインコントローラ84は、PES FIFOビットストリームバッファ80からデータが取り出されるレートを制御する。FPGAトランスポートパケット化器86は、PESストリームをトランスポートパケットストリームに変換する。FPGAトランスポートパケット化器86は、また、ビデオバッファベリファイ遅延(「VBV delay)およびデコードタイムスタンプ(「DTS」)の値のために圧縮ビデオデータを構文解析を行う。制御プロセッサ76を用いて、FPGAトランスポートパケット化器86を一意のプログラム識
別子(PID)で設定し、ビデオトランスポートパケットのPCR挿入間隔を設定する。その制御プロセッサ76は、また、上述のFPGAのそれぞれにおいて他のパラメータを関係させ、設定し得る。
別子(PID)で設定し、ビデオトランスポートパケットのPCR挿入間隔を設定する。その制御プロセッサ76は、また、上述のFPGAのそれぞれにおいて他のパラメータを関係させ、設定し得る。
図4および図5に対して上で示したように適応レート制御を提供するためには、ビットストリームの少なくとも第1の時間パラメータおよび第2の時間パラメータを特定するように、ビデオ圧縮エンジンからのビットストリーム出力を構文解析を行うことが必要である。好ましくは、時間パラメータは、ビットストリーム内に組み込れ、コード化MPEG−2ビデオデータストリーム内の2つのタイミングエレメントである。MPEG−2ビデオ圧縮によってビデオデータストリーム内に組み込まれたこれらの二つのデータ値は、例えば、DTSおよびVBV
delayである。これらの値は、例えば、MPEGビデオデコーダによって用いられ、適切な時間において各ビデオフレームをデコードし、表示する。第3のパラメータ、システム時間クロック(「STC」)は、コード化システムの現地時間である。これらの時間パラメータを用いて、下記にさらに詳細に本発明を説明するが、そのビデオストリーム内に組み込まれた他の時間パラメータもまた使用され得ることが理解されるべきである。例えば、上述したように、プログラムクロック基準および提示時間スタンプは、両方とも代替的であり、それらは、本発明に関連して使用され得る。ビデオ圧縮アルゴリズムおよびプロトコルに精通するものは他のものも理解する。
delayである。これらの値は、例えば、MPEGビデオデコーダによって用いられ、適切な時間において各ビデオフレームをデコードし、表示する。第3のパラメータ、システム時間クロック(「STC」)は、コード化システムの現地時間である。これらの時間パラメータを用いて、下記にさらに詳細に本発明を説明するが、そのビデオストリーム内に組み込まれた他の時間パラメータもまた使用され得ることが理解されるべきである。例えば、上述したように、プログラムクロック基準および提示時間スタンプは、両方とも代替的であり、それらは、本発明に関連して使用され得る。ビデオ圧縮アルゴリズムおよびプロトコルに精通するものは他のものも理解する。
PESパケット定義およびDTS位置は、以下に示すように特定され得る。
Terror(秒)=(VBV delay−(DTS−STC))4/90,000ここで、Terrorレートは、各フレームに対するビットエラー偏差またはエラー差異に変換される。このビットエラーレートはBerrorとよばれる。これは、ビデオコー
ド化レートRuとコード化システムレートRjとの間でフレームごとのビットの差異である。したがって、
Berror(bits)=(Terror*RU)/frame rateこのframe rateは、秒毎のフレーム数(例えば、NTSC信号に対して秒毎に29.97回およびPAL信号に対して秒毎に25回)に基づく。このBerror差異または偏差を用いて、図4および図5に説明されたデジタルフライホイール、および、そのデータがビデオ圧縮エンジンとビデオコード化システムとの間で転送されるレートを制御する、ビデオエンコーダパイプラインFPGAを調整する。R’jは、ビデオエンコーダビットレート出力Ruを正確に一致させる新たな調整出力レートである。したがって、
R’j=Rj+Berror
一定の構文解析、フィードバック、出力レート調整は、ビデオコード化プロセッサの出力をビデオコード化システムに対して高い精度で一致させる。図7−10は、適応レート制御アルゴリズムの精度を図示する。
ド化レートRuとコード化システムレートRjとの間でフレームごとのビットの差異である。したがって、
Berror(bits)=(Terror*RU)/frame rateこのframe rateは、秒毎のフレーム数(例えば、NTSC信号に対して秒毎に29.97回およびPAL信号に対して秒毎に25回)に基づく。このBerror差異または偏差を用いて、図4および図5に説明されたデジタルフライホイール、および、そのデータがビデオ圧縮エンジンとビデオコード化システムとの間で転送されるレートを制御する、ビデオエンコーダパイプラインFPGAを調整する。R’jは、ビデオエンコーダビットレート出力Ruを正確に一致させる新たな調整出力レートである。したがって、
R’j=Rj+Berror
一定の構文解析、フィードバック、出力レート調整は、ビデオコード化プロセッサの出力をビデオコード化システムに対して高い精度で一致させる。図7−10は、適応レート制御アルゴリズムの精度を図示する。
ここで、図6を参照すると、本発明による適応レート制御アルゴリズム100のフローチャートが図示される。そのフローチャートは、コード化およびPES
FIFO出力レートを初期出力レートに設定するボックス102から始まる。ここで、Ru=Rj−Rj*0.0015である。0.0015の値は、秒毎にスキップされるデ=ータの所定のパーセント(0.15%)であり、所定の数のバイトが、PES FIFOビットストリームバッファ80からFPGAトランスポートパッケージ化器86に転送される。同様に、RuおよびRjは、ともに、ビットレートのこの減少を反映するように設定される。したがって、デジタルカウンタは一定の周波数で固定される。
FIFO出力レートを初期出力レートに設定するボックス102から始まる。ここで、Ru=Rj−Rj*0.0015である。0.0015の値は、秒毎にスキップされるデ=ータの所定のパーセント(0.15%)であり、所定の数のバイトが、PES FIFOビットストリームバッファ80からFPGAトランスポートパッケージ化器86に転送される。同様に、RuおよびRjは、ともに、ビットレートのこの減少を反映するように設定される。したがって、デジタルカウンタは一定の周波数で固定される。
続くボックス104には、ビデオコード化プロセスを初期化し、FIFOを初期レベル限界まで満たすステップが示される。このステップは、公知のパラメータに基づいて、システムによって設定された初期限界までFIFOを満たすことによって、規定される。PES FIFOは、PESビットストリームバッファに書きこまれている圧縮ビデオデータのバースト性に起因して、初期の満たされたレベルに設定される。初期のFIFOレベルにより、データは、FIFOから連続的に読み出される一方で、エンプティおよびアンダーフローとなる(ビデオ破壊を生じる)ような可能性をFIFOに作成して、FIFOに書き込まれる圧縮データがない期間もある。
ここで、ボックス106を参照すると、VBV delay時間パラメータおよびDTS時間パラメータを特定し、調べるために、パッケージ化エレメンタリビデオストリームの構文解析を行うステップが示される。この情報は、各離散フレームに対して構文解析を行い、一つ一つのフレームに対して繰り返される。
ボックス108は、エンコーダシステム時間クロックまたはSTCを読み出す工程を示す。その後、ボックス110に示されるように、そのアルゴリズムは、引用した式に対して上で示したように、時間エラー差異、Terrorを計算する。その後、ボックス112において、上で引用した式にしたがって、時間エラー(Terror)をビットレートエラー(Berror)に変換するステップが示される。
次いで、ボックス114は、上で開示したように、R’j=Rj+BerrorとなるようにPES出力レートを調整することによってPES FIFO出力を調整するステップを示す。次いで、ステップ116は、プロセスが、コード化されるべきビデオ情報の次のフレームに続き、ステップ104とステップ106との間のステージにそのプロセスを戻すことを示す。ここで、次のビデオフレームは、ステップ106において説明された構文解析ステップを受ける。
本発明などの適応レート制御方法なしで、システムに固有の問題点を理解するために、具体的には、図7は、適応制御方法なしでMPEGコード化システムにおいてVBV delayとDTS−STCとの間の相違を示す。ミリ秒で測定された時間はY軸で示され、フレームに関するピクチャはX軸で示される。トレース130はミリ秒のVBV delayを示し、一方、トレース132はミリ秒のDTS−STCを示す。VBV delay曲線とDTS−STC曲線との間の差異は、RuおよびRjとの間のビットレート差異におけるエラーである。
このコンテキストにおいて、図8は、図7からのVBV:DTSエラー差異を示す。理想的には、エラー差異は、ゼロであるか、ゼロに極めて近い。しかし、図7の例において、偏差エラーは、32.0ミリ秒から53.0ミリ秒の範囲である。MPEG−2エンコーダのコンテキストにおいて、このVBV:DTS−STCエラーの量は重要である。実際には、DTSからVBV delayの任意の偏差は、圧縮ビデオデータストリームのデコーダへの転送におけるエラーを表す。任意の所与のビデオシーケンスに対して、デコーダの内部バッファがオーバーフローまたはアンダーフローする前に、デコーダによって耐久できるエラーの量を明示的に説明することは困難であり得る。これは、さらに、ビデオソース材料の複雑性にしたがってエラー差異が大きく変動するという事実によってさらに複雑化され、したがって、予想することは困難である。
ここで、図9を参照すると、本発明の適応レート制御方法を用いたビデオストリームレート制御が示される。図9は、適応レート制御方法をイネーブルにした条件での、絶対的なVBV delay値およびDTS−STC値を示す。図7で示されたのと同じスケールで、ライン142はVBV delayを示し、ライン144はDTS−STC遅延を示す。図9を精読すると認識され得るように、VBV delayおよびDTS−STCは同時発生し、理想に極めて近い。さらなる展望に関して、図10は、適応レート制御でのVBV delayおよびDTS−STCの図9からの絶対エラー差異が理想的なゼロに近いことを示す。これらのグラフの重要性は、それらが、コード化されたデータをエンコーダからデコーダに送達する際のタイミングエラーを表すエラー差異を示すことである。デコーダ内の異なるバッファレベル下で、圧縮ビデオデータの送達におけるこれらのタイミングエラーは、バッファオーバーフローおよびバッファアンダーフローを引き起こす。適応レート制御にともない、そのエンコーダは、必要とされる時間において圧縮ビデオデータを送達する。これにより、エンコーダシステムに、相互互換性およびロバスト性の利点が生じる。
最終的には、本システムの利点を示すために、図11は、ライン154によって示された、非適応レート制御を伴うコード化システムに対する、ライン150およびライン152によって示された、適応レート制御を伴うコード化潜在時間システムを示す。潜在時間は、Y軸に沿って示され、ミリ秒で測定される一方、秒当たりのメガビットで測定されたビットレートはX軸に沿ってプロットされる。したがって、ライン150およびライン152によって示された本発明の適応レート制御システムの重要な利点は、特に低いビットレートにおいて、潜在時間を1/2から2/3だけ減少させることであると認識され得る。システム潜在時間を短くすることがカスタマーアプリケーションの観点から強く望まれているため、これは重要である。例えば、デジタル衛星ニュース集合セットアップにおいて、システム潜在時間の増加は、スタジオと遠隔地との間の望ましくない遅延を引き起こす(遠隔地は、コード化し、送信する一方で、ローカルスタジオは受け取り、デコードする)。これは、異なる場所の間で「生」の質疑応答通信を邪魔する。
本発明が、レシーバにおけるオーバーフローまたはアンダーフローを避けるようにビットストリームを出力するための装置の製造方法および使用方法に関することを、上記の(詳細な説明)は当業者に開示している。これらの理由に対して、(詳細な説明)は、全て
の点で限定的ではなく、例示的であり、本明細書で開示される本発明の範囲は、(詳細な説明)から決定されるべきではなく、むしろ、特許法によって認められた十分な範囲で解釈されるように特許請求の範囲から決定されるべきである。
の点で限定的ではなく、例示的であり、本明細書で開示される本発明の範囲は、(詳細な説明)から決定されるべきではなく、むしろ、特許法によって認められた十分な範囲で解釈されるように特許請求の範囲から決定されるべきである。
本発明の好適な実施形態を図示し、説明してきたが、本発明はそのように限定されないことは明らかである。上掲の特許請求の範囲によって規定される本発明の意図および範囲から逸脱することなく、多くの改変、変更、変形、置換および均等が当業者には明らかである。
Claims (1)
- 非同期化コードシステムにおける適応性ビットレート制御のための装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/735,236 US6594316B2 (en) | 2000-12-12 | 2000-12-12 | Method and apparatus for adaptive bit rate control in an asynchronized encoding system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008244994A Division JP4303775B2 (ja) | 2000-12-12 | 2008-09-24 | 非同期コード化システムにおける適応性ビットレート制御のための方法および装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009033775A true JP2009033775A (ja) | 2009-02-12 |
Family
ID=24954904
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002550728A Expired - Fee Related JP4216595B2 (ja) | 2000-12-12 | 2001-12-11 | 非同期コード化システムにおける適応性ビットレート制御のための方法および装置 |
JP2008244994A Expired - Fee Related JP4303775B2 (ja) | 2000-12-12 | 2008-09-24 | 非同期コード化システムにおける適応性ビットレート制御のための方法および装置 |
JP2008291574A Pending JP2009033775A (ja) | 2000-12-12 | 2008-11-13 | 非同期コード化システムにおける適応性ビットレート制御のための方法および装置 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002550728A Expired - Fee Related JP4216595B2 (ja) | 2000-12-12 | 2001-12-11 | 非同期コード化システムにおける適応性ビットレート制御のための方法および装置 |
JP2008244994A Expired - Fee Related JP4303775B2 (ja) | 2000-12-12 | 2008-09-24 | 非同期コード化システムにおける適応性ビットレート制御のための方法および装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6594316B2 (ja) |
EP (1) | EP1342378B1 (ja) |
JP (3) | JP4216595B2 (ja) |
CA (1) | CA2431063A1 (ja) |
WO (1) | WO2002049364A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104520922A (zh) * | 2012-08-09 | 2015-04-15 | 雅马哈株式会社 | 音调生成分配设备和方法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7139743B2 (en) | 2000-04-07 | 2006-11-21 | Washington University | Associative database scanning and information retrieval using FPGA devices |
US20040228411A1 (en) * | 2003-05-12 | 2004-11-18 | Sony Corporation | Method and system for decoder clock control in presence of jitter |
JP2007524923A (ja) | 2003-05-23 | 2007-08-30 | ワシントン ユニヴァーシティー | Fpgaデバイスを使用するインテリジェントデータ記憶および処理 |
US10572824B2 (en) | 2003-05-23 | 2020-02-25 | Ip Reservoir, Llc | System and method for low latency multi-functional pipeline with correlation logic and selectively activated/deactivated pipelined data processing engines |
JP4988567B2 (ja) * | 2004-06-27 | 2012-08-01 | アップル インコーポレイテッド | マルチパスのビデオ符号化 |
US8005139B2 (en) | 2004-06-27 | 2011-08-23 | Apple Inc. | Encoding with visual masking |
US7660793B2 (en) | 2006-11-13 | 2010-02-09 | Exegy Incorporated | Method and system for high performance integration, processing and searching of structured and unstructured data using coprocessors |
US8588310B2 (en) * | 2010-08-31 | 2013-11-19 | General Instrument Corporation | Method and apparatus for managing delivery of bits to a decoder |
US8972923B2 (en) * | 2011-02-08 | 2015-03-03 | Maxeler Technologies Ltd. | Method and apparatus and software code for generating a hardware stream processor design |
WO2018119035A1 (en) | 2016-12-22 | 2018-06-28 | Ip Reservoir, Llc | Pipelines for hardware-accelerated machine learning |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5566208A (en) | 1994-03-17 | 1996-10-15 | Philips Electronics North America Corp. | Encoder buffer having an effective size which varies automatically with the channel bit-rate |
US5838686A (en) | 1994-04-22 | 1998-11-17 | Thomson Consumer Electronics, Inc. | System for dynamically allocating a scarce resource |
US5506844A (en) | 1994-05-20 | 1996-04-09 | Compression Labs, Inc. | Method for configuring a statistical multiplexer to dynamically allocate communication channel bandwidth |
US5652627A (en) | 1994-09-27 | 1997-07-29 | Lucent Technologies Inc. | System and method for reducing jitter in a packet-based transmission network |
US5543853A (en) * | 1995-01-19 | 1996-08-06 | At&T Corp. | Encoder/decoder buffer control for variable bit-rate channel |
US5677969A (en) | 1995-02-23 | 1997-10-14 | Motorola, Inc. | Method, rate controller, and system for preventing overflow and underflow of a decoder buffer in a video compression system |
GB9517130D0 (en) | 1995-08-22 | 1995-10-25 | Nat Transcommunications Ltd | Statistical multiplexing |
US5877812A (en) | 1995-11-21 | 1999-03-02 | Imedia Corporation | Method and apparatus for increasing channel utilization for digital video transmission |
US5862140A (en) | 1995-11-21 | 1999-01-19 | Imedia Corporation | Method and apparatus for multiplexing video programs for improved channel utilization |
US5861919A (en) | 1995-12-18 | 1999-01-19 | Divicom | Dynamic rate optimization for an ensemble of video encoders |
US5640388A (en) | 1995-12-21 | 1997-06-17 | Scientific-Atlanta, Inc. | Method and apparatus for removing jitter and correcting timestamps in a packet stream |
US5686963A (en) | 1995-12-26 | 1997-11-11 | C-Cube Microsystems | Method for performing rate control in a video encoder which provides a bit budget for each frame while employing virtual buffers and virtual buffer verifiers |
US5835493A (en) | 1996-01-02 | 1998-11-10 | Divicom, Inc. | MPEG transport stream remultiplexer |
US5719632A (en) | 1996-01-25 | 1998-02-17 | Ibm Corporation | Motion video compression system with buffer empty/fill look-ahead bit allocation |
US6240103B1 (en) | 1997-03-21 | 2001-05-29 | Scientific-Atlanta, Inc. | Method and apparatus for detecting and preventing bandwidth overflow in a statistical multiplexer |
US5936968A (en) | 1997-05-28 | 1999-08-10 | Sarnoff Corporation | Method and apparatus for multiplexing complete MPEG transport streams from multiple sources using a PLL coupled to both the PCR and the transport encoder clock |
GB2328099B (en) | 1997-08-08 | 2002-07-03 | British Broadcasting Corp | Processing coded video |
US6219067B1 (en) * | 1998-04-03 | 2001-04-17 | Sarnoff Corporation | Measures for characterizing compressed bitstreams |
-
2000
- 2000-12-12 US US09/735,236 patent/US6594316B2/en not_active Expired - Lifetime
-
2001
- 2001-12-11 JP JP2002550728A patent/JP4216595B2/ja not_active Expired - Fee Related
- 2001-12-11 CA CA002431063A patent/CA2431063A1/en not_active Abandoned
- 2001-12-11 WO PCT/US2001/047542 patent/WO2002049364A2/en active Application Filing
- 2001-12-11 EP EP01990058.8A patent/EP1342378B1/en not_active Expired - Lifetime
-
2008
- 2008-09-24 JP JP2008244994A patent/JP4303775B2/ja not_active Expired - Fee Related
- 2008-11-13 JP JP2008291574A patent/JP2009033775A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104520922A (zh) * | 2012-08-09 | 2015-04-15 | 雅马哈株式会社 | 音调生成分配设备和方法 |
Also Published As
Publication number | Publication date |
---|---|
CA2431063A1 (en) | 2002-06-20 |
JP4216595B2 (ja) | 2009-01-28 |
JP2009017595A (ja) | 2009-01-22 |
US6594316B2 (en) | 2003-07-15 |
EP1342378B1 (en) | 2013-07-24 |
WO2002049364A3 (en) | 2002-08-15 |
EP1342378A2 (en) | 2003-09-10 |
JP2005518680A (ja) | 2005-06-23 |
WO2002049364A2 (en) | 2002-06-20 |
JP4303775B2 (ja) | 2009-07-29 |
US20020159530A1 (en) | 2002-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4303775B2 (ja) | 非同期コード化システムにおける適応性ビットレート制御のための方法および装置 | |
US6157674A (en) | Audio and video data transmitting apparatus, system, and method thereof | |
EP1323312B1 (en) | Regeneration of program clock reference data for mpeg transport streams | |
US6654421B2 (en) | Apparatus, method and computer program product for transcoding a coded multiplexed sound and moving picture sequence | |
US6289129B1 (en) | Video rate buffer for use with push dataflow | |
US6324217B1 (en) | Method and apparatus for producing an information stream having still images | |
EP1002424B1 (en) | Processing coded video | |
JP3925311B2 (ja) | データ配信システム | |
US8189679B2 (en) | Content receiving apparatus, method of controlling video-audio output timing and content providing system | |
US8335262B2 (en) | Dynamic rate adjustment to splice compressed video streams | |
US7983345B2 (en) | Content receiving apparatus, video/audio output timing control method, and content provision system | |
EP0897245A2 (en) | MPEG frame processing method and apparatus | |
EP3135038B1 (en) | Class-based intelligent multiplexing over unmanaged networks | |
US8170401B2 (en) | Optimizing ad insertion by removing low information frames | |
EP1145559B1 (en) | Method and apparatus for delivering reference signal information within a specified time interval | |
JPH09312656A (ja) | 伝送装置およびその方法 | |
Chen | Video Buffer Management and MPEG Video Buffer Verifier | |
EP1161838A1 (en) | Method and apparatus for generating time stamp information | |
Reid | An MPEG-2 digital decoder design: A practical approach with emphasis on elementary stream data flows | |
Chen | Transcoder Buffer Dynamics and Regenerating Timestamps | |
Chen | Transport Packet Scheduling and Multiplexing | |
Haskell et al. | Timing Recovery for Variable Bit-Rate Video on ATM | |
JP2000232625A (ja) | 符号化データ編集多重化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081113 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090424 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20091002 |