[go: up one dir, main page]

JP2001502125A - Improvements in or related to data transmission - Google Patents

Improvements in or related to data transmission

Info

Publication number
JP2001502125A
JP2001502125A JP09535959A JP53595997A JP2001502125A JP 2001502125 A JP2001502125 A JP 2001502125A JP 09535959 A JP09535959 A JP 09535959A JP 53595997 A JP53595997 A JP 53595997A JP 2001502125 A JP2001502125 A JP 2001502125A
Authority
JP
Japan
Prior art keywords
buffer
rate
data
encoder
bit rate
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
Application number
JP09535959A
Other languages
Japanese (ja)
Inventor
リチャード ジョセフ バツジ,ミカエル
ジョルダン,ジョン
Original Assignee
エヌディーエス リミテッド
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 エヌディーエス リミテッド filed Critical エヌディーエス リミテッド
Publication of JP2001502125A publication Critical patent/JP2001502125A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video 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/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/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • H04N21/23655Statistical multiplexing, e.g. by controlling the encoder to alter its bitrate to optimize the bandwidth utilization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

(57)【要約】 本発明の一つの態様によれば、下流のデコーダバッファの要件を定めるためにエンコーダバッファへのデータ入力のレートをモニターする段階と、エンコーダからのデータ出力のレートの変化を、エンコーダバッファへのデータ入力のレートの変化から所定の時間だけ遅らせるよう、モニター段階に応じでエンコーダバッファを制御する段階とによって構成されるディジタルデータ伝送システムでデータの処理量を変化させる方法が提供される。この予測的技術によってビットレートを継目なしに瞬間的に変化させることができる。継目なしビットレート変化とは、受信側でビットストリームの復号化に中断がなく、また受信側で異常なアーチファクトがないことを意味する。したがって、ビットレートを継目なしに変化させるためには、受信器バッファはオーバフロー又はアンダフローしてはならず、受信器がフレームを利得したりスキップしたりする必要がないように、ビットストリームのタイムスタンプ(時刻印)オフセット(レートバッファ遅延)は、一定であるべきである。 According to one aspect of the invention, monitoring the rate of data input to an encoder buffer to determine requirements of a downstream decoder buffer, and monitoring changes in the rate of data output from the encoder. Controlling the encoder buffer according to a monitoring step so as to delay the data input rate to the encoder buffer by a predetermined time from a change in the rate of data input to the encoder buffer. Is done. With this predictive technique, the bit rate can be changed instantaneously and seamlessly. Seamless bit rate change means that there is no interruption in the decoding of the bitstream on the receiving side and no abnormal artifacts on the receiving side. Therefore, in order to seamlessly change the bit rate, the receiver buffer must not overflow or underflow, and the time of the bit stream must be such that the receiver does not need to gain or skip frames. The stamp (time stamp) offset (rate buffer delay) should be constant.

Description

【発明の詳細な説明】 コード化データ伝送システムにおけるバッファ制御 本発明は、データ伝送の改良、さらに詳しくはディジタルコード化データの伝 送の改良に関する。 ディジタルデータを送信し、及び/又は受信するための典型的なシステムによ って、いくつかの画像(ビデオ)、音声及び関連サービスが多重化され、単一の ディジタル伝送チャネルを通じて送信され、受信され、そのあと復号化(デコー ド)される。この型のシステムはMPEGII標準のもとで作動する。サービスの 数、したがって各サービスあたりの伝送帯域幅の費用はビットレート(ビット転 送速度)によって定まる。したがって、画質の向上、つまりビートレートの低減 はサービス提供者にとってきわめて重要である。 ビットレートと画質の向上は、同時係属出願GB 9517130.2に記載 された統計的多重化を用いて達成された。この出願によると、個々のチャネル又 はエンコーダを通るデータのビットレートは、全体としてのシステムに対して利 用可能な総合的リソース(資源)に応じて変えられる。エンコーダを「Stat Mux(統計的多重化)グループ」といっしよにすることにより、またこれら のエンコーダのためのビットレート条件についてリアルタイムで決定することに よって、このグループについて画質が最高となるように、ビットレートを割当て ることができる。 明らかに、ビットレートが継続的に変化するときには、送信端と受信端の両方 でのバッファ内のデータ記憶の管理が重要である。記憶バッファは、エンコーダ の直後か、又は直前にある。 現在のシステム(固定モード又は統計的多重化モード)での主要な問 題の一つは、ビットレート変化の問題である。通常はシステムがビットレートを 変化させようとするときには、データレート(データ速度、データ転送率)が増 加又は減少する。このデータレートの変化の結果としてデコーダバッファのオー バフロー又はアンダフローとなり、これによって受信側で画像の形成上の問題が 発生する。 本発明は、統計的多重化モード又は標準的な固定ビットレート、可変画質モー ドの両方で作動するシステムのためのエンコーダ及びデコーダバッファ内でのデ ータ管理の問題に向けられている。さらに詳しくは、本発明は、画質を維持しな がら、またデコーダバッファのオーバフローとアンダフローを防止しながら、シ ステムのビットレートを変化させる問題に関するものである。 本発明の一つの態様によれば、エンコーダバッファから下流でのデコーダバッ ファの要件を定めるためにエンコーダバッファへのデータ入力のレートをモニタ ーする段階と、エンコーダバッファへのデータ入力のレートの変化に対して、エ ンコーダからのデータ出力のレートの変化を所定時間だけ遅延させるために、モ ニター段階に対応してエンコーダバッファを制御する段階とによって構成される ディジタルデータ伝送システムでのデータ伝送方法が提供される。 この予見的技術によって、継目なしにビットレートを瞬間的に変化させる要求 条件が達成される。継目なしビットレート変化とは、受信側でビットストリーム の復号化に中断がなく、また受信側で異常なアーチファクトがないことを意味す る。したがって、ビットレートを継目なしに変化させるためには、受信器バッフ ァはオーバフロー又はアンダフローしてはならず、受信器がフレームを利得した りスキップしたりする必要がないように、ビットストリームのタイムスタンプ( 時刻印)オフセット(レートバッファ遅延)は、一定であるべきである。 データがエンコーダに入り、デコーダバッファを出るに要する時間に応じてデ ータの出力を遅らせると有利である。好ましい例では、この時間はデコーダのタ イムスタンプに設定される。 本発明の第2の態様によれば、エンコーダバッファの下流でのデコーダバッフ ァの要件を定めるためにエンコーダバッファへのデータ入力のレートをモニター するためのモニター手段と、エンコーダバッファへのデータ入力のレートの変化 に対して、エンコーダからのデータ出力のレートの変化を所定時間だけ遅延させ るために、モニター段階に対応してエンコーダバッファを制御するための制御部 とによって構成されるディジタルデータ伝送システムでのデータ伝送装置が提供 される。 付属図面により例を挙げて説明する。 図1は、本発明による放送システムの概略図である。 図2は、エンコーダバッファ及びデコーダバッファの図である。 図3は、エンコーダバッファの特徴を示す図である。 図4は、本発明の第1の実施例により、継目なしビットレート変化を達成する 方法を示ず図である。 図5は、統計的多重化システムでのバッファ管理を示す図である。 図6は、異なる種類のフレームのバッファ占有に対する効果を示す図である。 図7は、エンコーダ量子化前スケーリングパラメータと、リニア品質の関係を 示すグラフである。 図8は、本発明の第2の実施例により、継目なしビットレート変化を達成する 方法を示す図である。 図1に放送システムを示すが、これは統計的多重化システム10を含んでいる 。統計的多重化システムは、上記の同時係属出願に記載されたものであっても、 また他の種類の統計的多重化システムであってもよい。 ビデオ信号などの信号12が複数のエンコーダ14のうちの1つによってコード 化されて、統計的多重化システムを通り、伝送信号16が発生される。通常はビ デオ信号はエンコーダにより圧縮される。次に伝送信号は受信器18へと伝送さ れ、そこで複数のデコーダ20のうちの1つによってビデオ信号へと復号化され る。このビデオ信号は、見るために表示されるか、又は必要なときには別の受信 器へと再伝送される。図1の装置では、送信端から受信端への伝送は衛星経由で 行われる。明らかに、衛星伝送の代わりに、別の伝送手段を用いることができる 。エンコーダとデコーダはそれぞれバッファ13及び23を含み、これらについ ては以下に詳しく説明する。 図1のシステムは統計的多重化(Stat Mux)システムを示している。 しかし、ある状況のもとではユーザーは放送システムを「統計的多重化」モード ではなく固定モードで作動することを望むことが理解されている。 以下で明らかとなるように、システムはどちらのモードでも作動することがで きる。 MPEG受信器又はデコーダバッファは、サイズが1.8Mbits又はそれ 以上に限定されている。このレートバッファは、一定量のビットレート変化を受 入れることができる。しかし、デコーダバッファでアンダフロー又はオーバフロ ーを起こさずに、ビットレートの無限の変化を受入れることはできない。本発明 は、受信側バッファの限界が侵害されないようにエンコーダレートバッファを管 理することによって、継目なしビットレート変化の範囲を改善するための技術を 提供する。 図2は、それぞれエンコーダレートバッファ24とデコーダレートバッファ2 7を示している。すでに述べたように、MPEG標準によって、受信器レートバ ッファの最大サイズは1.8Mbitであることが定め られている。MPEG標準デコーダバッファを備えた受信器のアンダフロー又は オーバフローを防止するために、エンコーダも同じ最大レートバッファ1.8M bitでなくてはならない。エンコーダバッファ自体は2つの部分により構成さ れている。すなわち、レートバッファ25と、その下の記憶領域26である。こ の記憶領域をここではスタフィングバッファと呼び、その上側レベルをスタフィ ングレベルと呼ぶ。このスタフィングレベルは、レートバッファの仮想上のフロ アと同等であり、これにつては以下で詳しく述べる。レートバッファはデータの 到達をスムーズに行うためのエンコーダバッファの部分である。圧縮ビデオデー タの場合、データは「バースト」レートで到達する。レートバッファは、このバ ーストデータをほとんど一定の、安定した出力ビットレートへと平滑化するため にエンコーダに設けられている。 レートバッファからビデオ圧縮部(図示せず)までフィードバック機構が設け られ、バッファに入るデータが、出るよりも多いときには、バッファが充満する ようになっている。レートバッファが充満するにつれて、高い量子化因子QPが 選択される。この効果によって、より少ないデータがレートバッファへと入る。 エンコーダレートバッファ占有と量子化因子の間でマッピングが行われる。占有 が高ければ高いほど、マッピングは高くなる。したがってレートバッファが空の ときには、最も低い量子化因子1が選ばれ、レートバッファが一杯のときには、 最も高い量子化因子が選ばれる。 エンコーダバッファの入力部からの圧縮データを、データがデコーダバッファ から抽出される点まで転送するには、特定の長さの時間を要する。この時間はd ts遅延として知られ、タイムスタンプ(時刻印)により定まる。このタイムス タンプはデータの所定のフレームと関連があり、これはどのフレームがデコーダ バッファから除去され、次に解凍 (減圧)されるかを確認するために、受信器によって用いられる。デコーダのタ イムスタンプは、システム内のデータ量がエンコーダバッファとデコーダバッフ ァの間で分けられるように選ばれる。エンコーダバッファとデコーダバッファ内 のデータの総量は次のように定められる。 総データ=DTS遅延×ビットレート (1) エンコーダレートバッファの占有とデコーダレートバッファの間には相互(正 逆)関係が成立する。エンコーダレートバッファが一杯になるとデコーダレート バッファは空になり、またその逆も真である。したがって、受信器でのオーバフ ローとアンダフローを防止するために、エンコーダレートバッファの最大サイズ はデコーダバッファの最大サイズと同じである。 また任意の時点でのシステム内のデータの総量も、バッファ容量の量と種類に より表すことができる。言い換えれば、データの総量は、レートバッファ及びい わゆるスタフィングバッファの両方で利用可能なバッファ空間に等しい。すなわ ち、 総データ=スタフィングバッファ容量+レートバッファ容量 レートバッファ容量は、MPEGII適合システムでは1.8Mbitに等しい から 総データ=スタフィングバッファ容量+1.8Mbit …(2) (1)を(2)に代入すると、 スタフィングバッファ容量=(dts遅延×ビットレート)−1.8Mbi t dts遅延の値は、ユーザによって、又はシステム内の制御コンピュータによ って変化させることができるが、この変数は不変とすることが好ましい。したが って、ビットレートを変化させるためにはスタフィン グバッファ容量を変える必要があることがわかった。 ビットレートを1つの値から他の値へ変える能力が長い間求められてきた。本 発明は次のような特徴を有するいわゆる継目なしビットレート変更(を行う方法 )を提供する。 a) 受信器の崩壊(アンダフロー又はオーバフロー)とならないようにビ ットレートを変える。 b) dts遅延、すなわち、ビデオのタイムスタンプオフセットを変えない ようなビットレート変更を行い、受信器がクレームを利得又はスキップする必要 がないようにする。 c) 極端なコード化アーチファクトが起こらないようにビートレートを変 える。 継目なしビットレート変更は、瞬間的に、又は一定時間にわたって達成するこ とができ、瞬間的継目なしビットレート変更は計算することができる。エンコー ダレートバッファのサイズ、dts遅延、及びスタフィングバッファのサイズが 与えられているときは瞬間最大ビットレートは次のように決定できる。 瞬間的に生じる最小ビットレートは、エンコーダバッファ占有によって定まる 。エンコーダバッファ内のデータが多いほど最小ビットレートは高くなる。最小 ビートレートは次のように与えられる。 これは瞬間的に達成することができ、受信器バッファのアンダフローを起こさ ないような最低ビットレートである。 上記のような瞬間的範囲の外でのビットレートを達成するためには、ビットレ ート変更が有限の段階で行われるような緩慢なビットレート変更を用いることが できる。式3から、また、dts遅延が一定であるとすると、レートバッファの サイズは最大限1.8Mbitに限定される。 そこで スタフィングバッファ容量が増加すると最大ビットレートはより高くなる。実 際にはスタフィングバッファ容量は、フレームあたり100Kbitのレートに 限定されることなく増加することができる。システムの条件に応じて、他のレー トを用いることもできる。 スタフィングバッファ容量を増加するためのメカニズムを図3に示す。エンコ ーダバッファ24は、すでに述べたように2つの部分を含んでいる。つまり、レ ートバッファ25とスタフィングバッファ26である。エンコーダレートバッフ ァには仮想フロア54と天井56が設けられている。レートバッファ全体は通常 は絶対サイズに固定されているが、エンコーダバッファ自休の中で上下にスライ ドさせることができる。レートバッファ25を徐々に上へスライドさせると、同 時にチャネルのビットレートは増加する。レートバッファをこのように上へスラ イドさせると、より多くのデータがエンコーダバッファ内に入る。なぜなら、レ ー トバッファが上へスライドするにつれて、一定の占有に対して量子化因子QPは 当然後退するからである。 図4a、4b、4c及び4dは、継目なしビットレート変更の機能を実行する ための実施例を示している。説明しやすくするために、データが入るレート(速 度)が、データが出るレートに等しいと仮定する。もちろん、そうでない場合も ある。なぜなら、受信器バッファの限界及びその効果、又は、入るデータに対す る量子化因子の効果が考慮に入れられていないからである。図4aは正常レベル のレートバッファ(RB)とスタフィングバッファ(SB)を示している。デー タはレートバッファ内では量子化因子Qaである。入ってくるデータが変化する ときは、データをもっと高いビットレートでデコータへ伝送する必要があるかも しれない。この高いビットレートが、瞬間的に達成できる値よりも大きいときに は、スタフィングバッファの容量を増加させる必要がある。このようなときには 、レートバッファはエンコーダバッファを上へスライドさせ、こうしてスタフィ ングバッファ容量を増加させる。この例ではデータレベルは不変であるから、こ れによって量子化因子は低くなる。言い換えれば、システム内のデータの総量は 同じであるが、Qa>Qbである。ビットレートをもっと高くする必要があると きには、レートバッファはさらにエンコーダバッファを上へとスライドさせ、ス タフィングバッファはさらに大きくなる。出入りするデータのレートが同じとき には、Qa>Qb>Qcである。ビットレートの要件が低下すると、レートバッ ファは次第に下へとスライドして図4dに示す位置にくる。ここではデータの量 子化因子Qdはきわめて高い。 同時に、スタフィングバッファを最小の0へと低下させることによって、瞬間 的に達成できるよりも低いビットレートを選ぶことができる。このあと、レート バッファのサイズを1.8Mbit以下へと下げるこ とによって、さらに低いビットレートを達成することができる。 考えられる変化の1例を下記に図3に関連して示す。 8Mbitへの瞬間的ビットレート変更が必要なときには、これはフレームあ たり100Kbのステップで、2000000bits/秒のビットレートで達 成できる。すなわち6000000/100000、つまり60フレームの間に 60ステップで達成できる。8Mbits/秒のビットレートでは次のようなス タフィングバッファが必要である。 スタフィングバッファ容量=瞬間ビットレート×dts遅延 −レートバッファ容量=(8000000+0.5)− 1800000=2.2Mbits 最低ビットレートは、どのサイズのレートバッファが受諾可能かによって異な るが、通常は0.5Mbitが受諾可能である。したがって上記の例では、最小 レートバッファ=0.5Mbitであり、最小スタフィングバッファ=0Mbi tである。 固定レートシステムでは、システムが充分に作動するようにバッファ管理を考 慮に入れなくてはならない。考慮に入れなくてはならない主要な特徴は次の通り である。デコーダバッファが有限サイズであるという事実。継目なしビットレー ト変更が必要であること(つまり、視覚的作用やデコーダ破壊がないこと)。ま たIフレームで大量のデータが発生 されるので、Iフレーム内でのQP(エンコーダ量子化前スケーリングパラメー タ)の多重変化を防止するために、エンコーダを充満させる。この最後の点を考 慮に入れないと、主観的によくない結果が生じることが多い。 統計的多重化(Stat Mux)システムでは、バッファ時間遅延は一般に すでに割当てられており、バッファ管理のために変更したり調節したりできない 。統計的多重化システムは、より高い、又はより低いビットレートへ同じように ジャンプできるように、バッファレベルを初期化し、Iフレームを平滑化できる よう適切なデータを保持する。Iフレームの平滑化によりビットレートの振れの バランスをとる必要がある。さらに、エンコーダ内の残留データによってビット レートの振れが抑制されることがあるため、エンコーダ内にはできるだけ少ない データを記憶することが好ましい。通常はIフレームの平滑化のため約0.6M bitが必要であり、したがってデコーダを分割し、デコーダバッファレベルの 中心をこの点に合わせるべきである。そこで2Mbitのデコーダを備えた統計 的多重化システムは1.3Mbitのデコーダレベルで初期化される。この初期 レベルを作り出すビットレートは多重化コードにより決定される。バッファ遅延 がタイムスタンピングによって固定されると仮定すると、デコーダとエンコーダ のレベルを計算することができる。たとえば、8Mbit/秒がビットレートの ための最良の推定値であり、Tが0.2秒であるとStat Mux コンピュ ータが決定するようなシステムでは、バッファレベルは図5に示すようになる。 ビットレートBは上記のように最大ビットレート11.5Mbits/秒から最 小値4.5Mbits/秒へとジャンプできる。 ビットレートを調節するごとに、QPの値を再割当てしなくてはならない。各 ビットレート調節が最後のものと想定しなくてはならないから である。これはIフレーム中にエンコーダバッファは充満せず、デコーダが空に ならないようにするため行わなくてはならない。上記の方法に従うことによって 新しいエンコーダデータレベル(QP=31)が現在のデータレベルよりも低く なるようなレベルにビットレートが落ちないようにすることができる。もしこれ が起こるようなことになれば、データの一体性が危険にさらされることになるで あろう。 本発明の第2の実施例を図8に関連して説明する。上記の実施例と同様に、エ ンコーダバッファ80は2つの部分を含んでいる。レートバッファ82と、可変 又はスタフィングバッファ84である。また図に示すように、エンコーダバッフ ァのさまざまな点にビットレートA、B及びCがある。ビットレートAはエンコ ーダ又はレートバッファに入るデータのビットレートであり、ビットレートBは レートバッファから可変バッファへのビットレートであり、ビットレートCはエ ンコーダ又は可変バッファを出るときのビットレートである。エンコーダバッフ ァは、レートバッファを出るデータの量が常にレートバッファに入るデータの量 に等しくなるように調節される。言い換えれば、ビットレートAはビットレート Bに等しい。本発明の前の実施例と同様に、エンコーダバッファに入るときのビ ットレートが時間とともにどのように変化するかを知ることはできない。これは 伝送され、又は放送される素材の種類によって異なる。したがって、ビットレー トAは常に変化しており、ビットレートBも変化している。放送される素材の出 所によって、ビットレートAが変化すると瞬間的にビットレートBに変化が起き る。 デコーダ又は受信器のバッファ90がアンダフロー又はオーバフローとならな いように、ビットレートCはビットレートA及び/又はBに応じて瞬間的に変化 することはできない。もし変化すればデコーダがオーバフロー又はアンダフロー となる良いチャンスとなり、いずれの場合に もデコーダは破綻する。受信器バッファへ送られるデータが多すぎないよう、又 は少なすぎないように、ビットレートCを調節しなくてはならない。この実施例 では、これはCのビットレートの変化を遅らせることによって行われる。このよ うな典型的遅延はタイムスタンプ時間dtsである。言い換えると、ビットレー トCはビットレートA(又はB)よりも1タイムスタンプ時間だけ遅れる。 すでに述べたように、タイムスタンプ時間は、データがエンコーダバッファに 「挿入」される時から、復号化のためにデコーダバッファから「除去」される時 までの時間である。言い換えれば、タイムスタンプ遅延は、データがここに示し たシステム内にある合計時間である。この遅延によりビットレートCの変化をず らせることによって、デコーダバッファ内にきわめて正常なデータレベルが確立 され、オーバフロー又はアンダフローの確率はゼロとなる。 IフレームはB又はPフレームよりも多くのデータを作り出す傾向があるので 、エンコーダバッファのレベルを上昇させやすい。したがって、システムはIフ レーム、中にQP値を変えようとすると考えられる。これによって画面の下部で 画質が低下し、主観的に出力を悪化させる。そこで、本発明は、QPを同じに保 持するための予知トラックを定め、エンコーダバッファを全画像グループ上の一 定の点へと戻す。予知トラックによって、図6に示すようにエンコーダバッファ 占有のための三角形の波形ができる。実線は目標トラックを示し、2本の点線は 高い方及び低い方のQPトラックを表している。レベルが目標からそれると補整 が行われて目標が再確立される。QPを計算するためのこのトラッキング計画( スキーム)は、Stat Muxシステムと固定レートシステムの両方に適して いる。スキームはフレーム内でQPを安定させ、Stat Muxは多重フレー ム上でQPを安定させる。 さまざまな点でQPの値を確認すると、Stat Muxシステムの重要な条 件であるリニア品質QAを推定することができる。QPとQAの関係を図7のグラ フに示す。 このシステムでは1対を超えるエンコーダとデコーダがあること、また各対は 上記のように作動されることに注目すべきである。好ましいシステムでは、St at Muxモードで作動すると、1対のエンコーダバッファ及びデコーダバッ ファの作動が、別の対の作動により影響を受ける。これはとくに、2つの対が同 じStat Muxグループにあり、ビットレートが制限される場合について言 える。 このシステムでは、システムの作動に対する主要な制御因子は、入ってくるデ ータが駆動力であるという事実である。システムは予測に基づいて作動し、入っ てくるデータと、下流で何が発生するかの予知に応じて調整が行われる。システ ムへのすべてのデータ入力は管理されなくてはならず、品質をできるだけ低下さ せないで通すようにしなくてはならない。デコーダではスペースについて有限の 制限があり、本発明ではシステムが崩壊する前にこれが作り出す問題に対処する ことが重要である。これは、システムが受信側で生じる問題を予知することがで き、送信側でデータを操作して問題を防止できることを意味する。言い換えれば 、システムは開ループシステムとして作動することができる。エンコーダに提供 されるビデオ信号のQPの値を予知することによってデコーダバッファがアンダ フローとなるか、オーバフローとなるかを推定することができる。いずれかが起 こる可能性があるときには、エンコーダデータを操作して、予想されるアンダフ ローやオーバフローが起こらないようにする。 上記の説明で述べたデータはビデオテープデータであり、このデータと一般に 関連しているヘッダとフッタを含むことに注目すべきである。 正常に送信されるその他のデータについては詳細に述べなかった。このようなデ ータとしては、音声データ、同期化情報データ、技術精通者に明らかとなるよう なその他のデータがある。このようなデータは正常なやり方で伝送される。 上に述べた技術によって、限定されない範囲の値にわたってMPEGビデオエ ンコーダで継目なしに変化するビットレートが提供される。MCC(多重制御コ ンピュータ)などの制御コンピュータを用いて、狭い範囲のビットレートを達成 することができ、瞬間的でない、より広い範囲(のビットレート)は、可変サイ ズのスタフィングバッファや可動レートバッファを有することにより達成される 。非瞬間的なビットレート変化は、増分的に変化するビットレート、またスタフ ィングバッファへの増分調節に基づいて定まる。The present invention relates to improved data transmission, and more particularly to improved transmission of digitally coded data. With a typical system for transmitting and / or receiving digital data, several images (video), audio and related services are multiplexed and transmitted and received over a single digital transmission channel. It is decoded later. This type of system operates under the MPEG II standard. The number of services, and thus the cost of transmission bandwidth per service, is determined by the bit rate (bit rate). Therefore, improvement of the image quality, that is, reduction of the beat rate, is extremely important for the service provider. Improvements in bit rate and image quality have been achieved using statistical multiplexing as described in co-pending application GB 9517130.2. According to this application, the bit rate of data passing through individual channels or encoders is varied depending on the total resources available for the system as a whole. By referring to the encoders as "Stat Mux (statistical multiplexing) groups" and by determining the bit rate requirements for these encoders in real time, the best image quality is obtained for this group. , Bit rate can be assigned. Obviously, when the bit rate changes continuously, it is important to manage the data storage in the buffer at both the transmitting end and the receiving end. The storage buffer is immediately after or just before the encoder. One of the major problems in current systems (fixed mode or statistical multiplexing mode) is that of bit rate variation. Usually, when the system attempts to change the bit rate, the data rate (data rate, data transfer rate) increases or decreases. As a result of this change in data rate, an overflow or underflow of the decoder buffer occurs, which causes a problem in image formation on the receiving side. The present invention addresses the problem of data management in encoder and decoder buffers for systems operating in both a statistical multiplexing mode or a standard fixed bit rate, variable quality mode. More particularly, the present invention relates to the problem of changing the bit rate of a system while maintaining image quality and preventing decoder buffer overflow and underflow. According to one aspect of the invention, monitoring the rate of data input to the encoder buffer to determine the requirements of the decoder buffer downstream from the encoder buffer; and And a step of controlling an encoder buffer corresponding to a monitoring step in order to delay a change in the rate of data output from the encoder by a predetermined time. . This predictive technique achieves the requirement of seamlessly changing the bit rate instantaneously. Seamless bit rate change means that there is no interruption in the decoding of the bitstream on the receiving side and no abnormal artifacts on the receiving side. Therefore, in order to seamlessly change the bit rate, the receiver buffer must not overflow or underflow, and the time of the bit stream must be such that the receiver does not need to gain or skip frames. The stamp (time stamp) offset (rate buffer delay) should be constant. It is advantageous to delay the output of the data according to the time it takes for the data to enter the encoder and exit the decoder buffer. In the preferred example, this time is set to the decoder time stamp. According to a second aspect of the invention, monitoring means for monitoring the rate of data input to the encoder buffer to determine the requirements of the decoder buffer downstream of the encoder buffer, and the rate of data input to the encoder buffer In order to delay the change of the rate of the data output from the encoder by a predetermined time in response to the change in A data transmission device is provided. This will be described by way of example with reference to the accompanying drawings. FIG. 1 is a schematic diagram of a broadcasting system according to the present invention. FIG. 2 is a diagram of an encoder buffer and a decoder buffer. FIG. 3 is a diagram illustrating characteristics of the encoder buffer. FIG. 4 is a diagram illustrating a method of achieving a seamless bit rate change according to the first embodiment of the present invention. FIG. 5 is a diagram illustrating buffer management in the statistical multiplexing system. FIG. 6 shows the effect of different types of frames on buffer occupancy. FIG. 7 is a graph showing a relationship between a scaling parameter before encoder quantization and linear quality. FIG. 8 is a diagram illustrating a method of achieving a seamless bit rate change according to the second embodiment of the present invention. FIG. 1 shows a broadcast system, which includes a statistical multiplexing system 10. The statistical multiplexing system may be that described in the above-mentioned co-pending application or may be another type of statistical multiplexing system. A signal 12, such as a video signal, is encoded by one of a plurality of encoders 14 and passes through a statistical multiplexing system to generate a transmission signal 16. Usually, the video signal is compressed by an encoder. The transmission signal is then transmitted to a receiver 18 where it is decoded by one of a plurality of decoders 20 into a video signal. This video signal is displayed for viewing or retransmitted to another receiver when needed. In the apparatus of FIG. 1, transmission from the transmitting end to the receiving end is performed via a satellite. Obviously, other means of transmission can be used instead of satellite transmission. The encoder and decoder include buffers 13 and 23, respectively, which are described in more detail below. The system of FIG. 1 illustrates a statistical multiplexing (Stat Mux) system. However, it has been understood that, under certain circumstances, a user desires to operate the broadcast system in a fixed mode rather than a "statistical multiplexing" mode. As will become apparent below, the system can operate in either mode. MPEG receivers or decoder buffers are limited in size to 1.8 Mbits or larger. This rate buffer can accept a certain amount of bit rate change. However, infinite changes in bit rate cannot be accepted without underflow or overflow in the decoder buffer. The present invention provides a technique for improving the range of seamless bit rate changes by managing the encoder rate buffer so that the limitations of the receiving buffer are not violated. FIG. 2 shows an encoder rate buffer 24 and a decoder rate buffer 27, respectively. As already mentioned, the MPEG standard specifies that the maximum size of the receiver rate buffer is 1.8 Mbit. To prevent underflow or overflow of a receiver with an MPEG standard decoder buffer, the encoder must also have the same maximum rate buffer of 1.8 Mbit. The encoder buffer itself is composed of two parts. That is, the rate buffer 25 and the storage area 26 thereunder. This storage area is here called a stuffing buffer, and the upper level is called a stuffing level. This stuffing level is equivalent to the virtual floor of the rate buffer, which will be described in detail below. The rate buffer is a part of the encoder buffer for making the data reach smoothly. For compressed video data, the data arrives at a "burst" rate. A rate buffer is provided in the encoder to smooth this burst data to an almost constant, stable output bit rate. A feedback mechanism is provided from the rate buffer to the video compressor (not shown) so that when more data enters the buffer than exits, the buffer fills. As the rate buffer fills, a higher quantization factor Q P is selected. This effect causes less data to enter the rate buffer. A mapping is made between the encoder rate buffer occupancy and the quantization factor. The higher the occupancy, the higher the mapping. Thus, when the rate buffer is empty, the lowest quantization factor 1 is selected, and when the rate buffer is full, the highest quantization factor is selected. It takes a certain amount of time to transfer the compressed data from the input of the encoder buffer to the point where the data is extracted from the decoder buffer. This time is known as the dts delay and is determined by a time stamp. This timestamp is associated with a given frame of data, which is used by the receiver to ascertain which frame is removed from the decoder buffer and then decompressed. The decoder time stamp is chosen so that the amount of data in the system is divided between the encoder buffer and the decoder buffer. The total amount of data in the encoder buffer and the decoder buffer is determined as follows. Total data = DTS delay × bit rate (1) A mutual (forward / reverse) relationship is established between the occupation of the encoder rate buffer and the decoder rate buffer. When the encoder rate buffer is full, the decoder rate buffer is empty and vice versa. Therefore, to prevent overflow and underflow at the receiver, the maximum size of the encoder rate buffer is the same as the maximum size of the decoder buffer. Also, the total amount of data in the system at any time can be represented by the amount and type of buffer capacity. In other words, the total amount of data is equal to the buffer space available in both the rate buffer and the so-called stuffing buffer. That is, the total data = the stuffing buffer capacity + the rate buffer capacity The rate buffer capacity is equal to 1.8 Mbit in the MPEGII compliant system, so the total data = the stuffing buffer capacity + 1.8 Mbit (2) substituting, stuffing buffer capacity = (dt s delay × bitrate) -1.8Mbi t value of dt s delay, by the user or can be varied by the control computer in the system, the variable and invariable Is preferred. Therefore, it was found that it was necessary to change the stuffing buffer capacity in order to change the bit rate. The ability to change the bit rate from one value to another has long been sought. The present invention provides a so-called seamless bit rate change (method of performing) having the following features. a) Change the bit rate so that the receiver does not collapse (underflow or overflow). b) Make a dt s delay, ie a bit rate change that does not change the time stamp offset of the video, so that the receiver does not need to gain or skip claims. c) Change the beat rate to avoid extreme coding artifacts. The seamless bit rate change can be achieved instantaneously or over a period of time, and the instantaneous seamless bit rate change can be calculated. The size of the encoder rate buffers, dt s delay, and the maximum bit rate the moment when the size of the stuffing buffer is given can be determined as follows. The instantaneous minimum bit rate is determined by the encoder buffer occupancy. The more data in the encoder buffer, the higher the minimum bit rate. The minimum beat rate is given as follows. This is the lowest bit rate that can be achieved instantaneously and does not cause receiver buffer underflow. To achieve a bit rate outside the instantaneous range as described above, a slow bit rate change can be used in which the bit rate change occurs in a finite stage. From Equation 3, and assuming that the dt s delay is constant, the size of the rate buffer is limited to a maximum of 1.8 Mbit. Therefore As the stuffing buffer capacity increases, the maximum bit rate becomes higher. In practice, the stuffing buffer capacity can be increased without being limited to a rate of 100 Kbits per frame. Other rates may be used depending on system requirements. FIG. 3 shows a mechanism for increasing the stuffing buffer capacity. The encoder buffer 24 includes two parts as described above. That is, the rate buffer 25 and the stuffing buffer 26. A virtual floor 54 and a ceiling 56 are provided in the encoder rate buffer. The entire rate buffer is usually fixed in absolute size, but can be slid up and down during the encoder buffer self-suspended. As the rate buffer 25 is slid up gradually, the bit rate of the channel increases at the same time. When the rate buffer is slid up in this manner, more data enters the encoder buffer. This is because as the rate buffer slides up, the quantization factor Q P naturally recedes for a certain occupancy. 4a, 4b, 4c and 4d show an embodiment for performing the function of seamless bit rate change. For simplicity, assume that the rate at which data enters is equal to the rate at which data exits. Of course, that is not always the case. This is because the limitations of the receiver buffer and its effect, or the effect of the quantization factor on the incoming data, are not taken into account. FIG. 4a shows a normal level rate buffer (RB) and a stuffing buffer (SB). The data is the quantization factor Qa in the rate buffer. When the incoming data changes, it may be necessary to transmit the data to the decoder at a higher bit rate. When this high bit rate is greater than can be achieved instantaneously, the stuffing buffer capacity must be increased. In such a case, the rate buffer slides the encoder buffer up, thus increasing the stuffing buffer capacity. Since the data level is unchanged in this example, this results in a lower quantization factor. In other words, the total amount of data in the system is the same, but Qa> Qb. When the bit rate needs to be higher, the rate buffer slides the encoder buffer further up and the stuffing buffer becomes larger. When the rates of incoming and outgoing data are the same, Qa>Qb> Qc. As the bit rate requirement decreases, the rate buffer gradually slides down to the position shown in FIG. 4d. Here, the data quantization factor Qd is extremely high. At the same time, by lowering the stuffing buffer to a minimum of zero, one can choose a lower bit rate than can be achieved instantaneously. Thereafter, a lower bit rate can be achieved by reducing the size of the rate buffer to 1.8 Mbit or less. One example of a possible change is shown below in connection with FIG. When an instantaneous bit rate change to 8 Mbits is required, this can be achieved at a bit rate of 200000 bits / sec in 100 Kb steps per frame. That is, 600000/100000, that is, 60 steps can be achieved during 60 frames. At a bit rate of 8 Mbits / sec, the following stuffing buffer is required. Stuffing buffer capacity = instantaneous bit rate × dt s delay - the rate buffer capacity = (8000000 + 0.5) - 1800000 = 2.2Mbits minimum bit rate, but the rate buffer of any size differs depending Acceptable, usually 0. 5 Mbit is acceptable. Therefore, in the above example, the minimum rate buffer = 0.5 Mbit and the minimum stuffing buffer = 0 Mbit. In fixed rate systems, buffer management must be taken into account for the system to work well. The main features that must be taken into account are: The fact that the decoder buffer is of finite size. Requires a seamless bit rate change (ie, no visual effects or decoder corruption). Also, since a large amount of data is generated in an I frame, the encoder is filled to prevent multiple changes of Q P (encoder pre-quantization scaling parameter) in the I frame. Failure to take this last point into account often results in subjectively poor results. In a statistical multiplexing (Stat Mux) system, the buffer time delay is generally already allocated and cannot be changed or adjusted for buffer management. The statistical multiplexing system initializes the buffer level so that it can jump to a higher or lower bit rate as well, and holds the appropriate data so that I-frames can be smoothed. It is necessary to balance the fluctuation of the bit rate by smoothing the I frame. Furthermore, since fluctuations in the bit rate may be suppressed by residual data in the encoder, it is preferable to store as little data as possible in the encoder. Usually about 0.6 Mbits is needed for smoothing the I-frame, so the decoder should be split and the decoder buffer level should be centered on this point. Thus, a statistical multiplexing system with a 2 Mbit decoder is initialized with a 1.3 Mbit decoder level. The bit rate that produces this initial level is determined by the multiplexing code. Assuming that the buffer delay is fixed by time stamping, the decoder and encoder levels can be calculated. For example, in a system where 8 Mbit / s is the best estimate for the bit rate and the Stat Mux computer determines that T is 0.2 seconds, the buffer levels will be as shown in FIG. The bit rate B can jump from the maximum bit rate of 11.5 Mbits / sec to the minimum value of 4.5 Mbits / sec as described above. Each time the bit rate is adjusted, the value of Q P must be reassigned. This is because each bit rate adjustment must be assumed to be the last one. This must be done to prevent the encoder buffer from filling up during the I-frame and the decoder from becoming empty. By following the above method, it is possible to prevent the bit rate from dropping to a level where the new encoder data level (Q P = 31) is lower than the current data level. If this were to happen, data integrity would be compromised. A second embodiment of the present invention will be described with reference to FIG. As in the previous embodiment, encoder buffer 80 includes two parts. A rate buffer 82 and a variable or stuffing buffer 84. Also, as shown, there are bit rates A, B and C at various points in the encoder buffer. Bit rate A is the bit rate of the data entering the encoder or rate buffer, bit rate B is the bit rate from the rate buffer to the variable buffer, and bit rate C is the bit rate at exiting the encoder or variable buffer. The encoder buffer is adjusted so that the amount of data exiting the rate buffer is always equal to the amount of data entering the rate buffer. In other words, the bit rate A is equal to the bit rate B. As in the previous embodiment of the present invention, it is not possible to know how the bit rate upon entering the encoder buffer changes over time. This depends on the type of material being transmitted or broadcast. Therefore, the bit rate A is constantly changing, and the bit rate B is also changing. When the bit rate A changes depending on the source of the material to be broadcast, the bit rate B changes instantaneously. The bit rate C cannot change instantaneously depending on the bit rates A and / or B so that the decoder or receiver buffer 90 does not underflow or overflow. If it does, there is a good chance that the decoder will overflow or underflow, in which case the decoder will fail. The bit rate C must be adjusted so that not too much or too little data is sent to the receiver buffer. In this embodiment, this is done by delaying the change in the bit rate of C. Such typical delay is a time stamp time dt s. In other words, the bit rate C lags the bit rate A (or B) by one time stamp time. As already mentioned, the timestamp time is the time from when data is "inserted" into the encoder buffer until it is "removed" from the decoder buffer for decoding. In other words, the timestamp delay is the total time the data has been in the system shown here. By shifting the change in bit rate C by this delay, a very normal data level is established in the decoder buffer, and the probability of overflow or underflow is zero. Because I frames tend to produce more data than B or P frames, it is easier to raise the level of the encoder buffer. Therefore, it is believed that the system attempts to change the Q P value during the I frame. This lowers image quality at the bottom of the screen and subjectively worsens output. Thus, the present invention determines a predictive track to keep Q P the same and returns the encoder buffer to a fixed point on all image groups. The predictive track produces a triangular waveform for encoder buffer occupancy as shown in FIG. The solid line represents the target track and the two dashed lines represent the higher and lower QP tracks. If the level deviates from the goal, compensation is made and the goal is re-established. This tracking scheme for calculating Q P is suitable for both Stat Mux and fixed rate systems. The scheme stabilizes Q P within a frame, and the Stat Mux stabilizes Q P over multiple frames. Knowing the value of Q P at various points, one can estimate the linear quality Q A , an important condition of the Stat Mux system. The relationship between Q P and Q A is shown in the graph of FIG. It should be noted that there are more than one pair of encoders and decoders in this system, and that each pair is operated as described above. In a preferred system, when operating in Stat Mux mode, the operation of one pair of encoder and decoder buffers is affected by the operation of another pair. This is especially true when the two pairs are in the same Stat Mux group and the bit rate is limited. In this system, the main controlling factor for the operation of the system is the fact that the incoming data is the driving force. The system operates on predictions and adjusts for incoming data and predictions of what will happen downstream. All data input to the system must be controlled and passed through with as little quality as possible. The decoder has a finite limit on space, and it is important in the present invention to address the problems it creates before the system collapses. This means that the system can foresee problems that occur on the receiving side and manipulate the data on the transmitting side to prevent the problems. In other words, the system can operate as an open loop system. By predicting the value of Q P of the video signal provided to the encoder, it is possible to estimate whether the decoder buffer underflows or overflows. When either is likely, the encoder data is manipulated to prevent the expected underflow or overflow. It should be noted that the data described in the above description is videotape data and includes a header and footer generally associated with this data. Other data that was successfully transmitted was not described in detail. Such data includes audio data, synchronization information data, and other data as will be apparent to those skilled in the art. Such data is transmitted in a normal manner. The techniques described above provide a seamlessly varying bit rate with an MPEG video encoder over an unlimited range of values. Using a control computer such as an MCC (Multiple Control Computer), a narrow range of bit rates can be achieved, and the non-instantaneous, wider range (bit rate) is a variable size stuffing buffer or movable rate buffer. This is achieved by having Non-instantaneous bit rate changes are determined based on incrementally changing bit rates and incremental adjustments to the stuffing buffer.

【手続補正書】特許法第184条の8第1項 【提出日】平成10年6月24日(1998.6.24) 【補正内容】 明細書 データ伝送における又はデータ伝送に関する改良 本発明は、データ伝送の改良、さらに詳しくはディジタルコード化データの伝 送の改良に関する。 ディジタルデータを送信し、及び/又は受信するための典型的なシステムによ って、いくつかの画像(ビデオ)、音声及び関連サービスが多重化され、単一の ディジタル伝送チャネルを通じて送信され、受信され、そのあと復号化(デコー ド)される。この型のシステムはMPEGII標準のもとで作動する。サービスの 数、したがって各サービスあたりの伝送帯域幅の費用はビットレート(ビット転 送速度)によって定まる。したがって、画質の向上、つまりビートレートの低減 はサービス提供者にとってきわめて重要である。 ビットレートと画質の向上は、現在EP0759667A2として公開されて いる同時係属出願GB9517130.2に記載された統計的多重化を用いて達 成された。この出願によると、個々のチャネル又はエンコーダを通るデータのビ ットレートは、全体としてのシステムに対して利用可能な総合的リソース(資源 )に応じて変えられる。エンコーダを「Stat Mux(統計的多重化)グル ープ」といっしょにすることにより、またこれらのエンコーダのためのビットレ ート条件についてリアルタイムで決定することによって、このグループについて 画質が最高となるように、ビットレートを割当てることができる。 明らかに、ビットレートが継続的に変化するときには、送信端と受信端の両方 でのバッファ内のデータ記憶の管理が重要である。記憶バッファは、エンコーダ の直後か、又は直前にある。 現在のシステム(固定モード又は統計的多重化モード)での主要な問 題の一つは、ビットレート変化の問題である。通常はシステムがビットレートを 変化させようとするときには、データレート(データ速度、データ転送率)が増 加又は減少する。このデータレートの変化の結果としてデコーダバッファのオー バフロー又はアンダフローとなり、これによって受信側で画像の形成上の問題が 発生する。 本発明は、統計的多重化モード又は標準的な固定ビットレート、可変画質モー ドの両方で作動するシステムのためのエンコーダ及びデコーダバッファ内でのデ ータ管理の問題に向けられている。さらに詳しくは、本発明は、画質を維持しな がら、またデコーダバッファのオーバフローとアンダフローを防止しながら、シ ステムのビットレートを変化させる問題に関するものである。 本発明の一つの態様によれば、エンコーダバッファから下流での所定のデコー ダバッファの要件を定めるためにエンコーダバッファへのデータ入力のレートを モニターする段階と、エンコーダバッファへのデータ入力のレートの変化に対し て、エンコーダバッファからのデータ出力のレートの変化を所定時間だけ遅延さ せるために、モニター段階に対応してエンコーダバッファを所定の方法で制御す る段階とによって構成されるディジタルデータ伝送システムでのデータ伝送方法 が提供される。 この予見的技術によって、継目なしにビットレートを瞬間的に変化させる要求 条件が達成される。継目なしビットレート変化とは、受信側でビットストリーム の復号化に中断がなく、また受信側で異常なアーチファクトがないことを意味す る。したがって、ビットレートを継目なしに変化させるためには、受信器バッフ ァはオーバフロー又はアンダフローしてはならず、受信器がフレームを利得した りスキップしたりする必要がないように、ビットストリームのタイムスタンプ( 時刻印)オフセット(レートバッファ遅延)は、一定であるべきである。 データがエンコーダに入り、デコーダバッファを出るに要する時間に応じてデ ータの出力を遅らせると有利である。好ましい例では、この時間はデコーダのタ イムスタンプに設定される。 本発明の第2の態様によれば、エンコーダバッファの下流での所定のデコーダ バッファの要件を定めるためにエンコーダバッファへのデータ入力のレートをモ ニターするためのモニター手段と、エンコーダバッファへのデータ入力のレート の変化に対して、エンコーダバッファからのデータ出力のレートの変化を所定時 間だけ遅延させるために、モニター段階に対応してエンコーダバッファを所定の 方法で制御するための制御部とによって構成されるディジタルデータ伝送システ ムでのデータ伝送装置が提供される。 付属図面により例を挙げて説明する。 図1は、本発明によ、る放送システムの概略図である。 図2は、エンコーダバッファ及びデコーダバッファの図である。 図3は、エンコーダバッファの特徴を示す図である。 図4は、本発明の第1の実施例により、継目なしビットレート変化を達成する 方法を示す図である。 図5は、統計的多重化システムでのバッファ管理を示す図である。 図6は、異なる種類のフレームのバッファ占有に対する効果を示す図である。 図7は、エンコーダ量子化前スケーリングパラメータと、リニア品質の関係を 示すグラフである。 図8は、本発明の第2の実施例により、継目なしビットレート変化を達成する 方法を示す図である。 図1に放送システムを示すが、これは統計的多重化システム10を含んでいる 。統計的多重化システムは、上記の同時係属出願に記載された ものであっても、また他の種類の統計的多重化システムであってもよい。ビデオ 信号などの信号12が複数のエンコーダ14のうちの1つによってコード化され て、統計的多重化システムを通り、伝送信号16が発生される。通常はビデオ信 号はエンコーダにより圧縮される。次に伝送信号は受信器18へと伝送され、そ こで複数のデコーダ20のうちの1つによってビデオ信号へと復号化される。こ のビデオ信号は、見るために表示されるか、又は必要なときには別の受信器へと 再伝送される。図1の装置では、送信端から受信端への伝送は衛星経由で行われ る。明らかに、衛星伝送の代わりに、別の伝送手段を用いることができる。エン コーダとデコーダはそれぞれバッファ13及び23を含み、これらについては以 下に詳しく説明する。 図1のシステムは統計的多重化(Stat Mux)システムを示している。 しかし、ある状況のもとではユーザーは放送システムを「統計的多重化」モード ではなく固定モードで作動することを望むことが理解されている。 以下で明らかとなるように、システムはどちらのモードでも作動することがで きる。 MPEG受信器又はデコーダバッファは、サイズが1.8Mbits又はそれ 以上に限定されている。このレートバッファは、一定量のビットレート変化を受 入れることができる。しかし、デコーダバッファでアンダフロー又はオーバフロ ーを起こさずに、ビットレートの無限の変化を受入れることはできない。本発明 は、受信側バッファの限界が侵害されないようにエンコーダレートバッファを管 理することによって、継目なしビットレート変化の範囲を改善するための技術を 提供する。 図2は、それぞれエンコーダレートバッファ24とデコーダレートバッファ27 を示している。すでに述べたように、MPEG標準によって、 受信器レートバッファの最大サイズは1.8Mbitであることが定められてい る。MPEG標準デコーダバッファを備えた受信器のアンダフロー又はオーバフ ローを防止するために、エンコーダも同じ最大レートバッファ1.8Mbitで なくてはならない。エンコーダバッファ自体は2つの部分により構成されている 。すなわち、レートバッファ25と、その下の記憶領域26である。この記憶領 域をここではスタフィングバッファと呼び、その上側レベルをスタフィングレベ ルと呼ぶ。このスタフィングレベルは、レートバッファの仮想上のフロアと同等 であり、これにつては以下で詳しく述べる。レートバッファはデータの到達をス ムーズに行うためのエンコーダバッファの部分である。圧縮ビデオデータの場合 、データは「バースト」レートで到達する。レートバッファは、このバーストデ ータをほとんど一定の、安定した出力ビットレートへと平滑化するためにエンコ ーダに設けられている。 レートバッファからビデオ圧縮部(図示せず)までフィードバック機構が設け られ、バッファに入るデータが、出るよりも多いときには、バッファが充満する ようになっている。レートバッファが充満するにつれて、高い量子化因子QPが 選択される。この効果によって、より少ないデータがレートバッファへと入る。 エンコーダレートバッファ占有と量子化因子の間でマッピングが行われる。占有 が高ければ高いほど、マッピングは高くなる。したがってレートバッファが空の ときには、最も低い量子化因子1が選ばれ、レートバッファが一杯のときには、 最も高い量子化因子が選ばれる。 エンコーダバッファの入力部からの圧縮データを、データがデコーダバッファ から抽出される点まで転送するには、特定の長さの時間を要する。この時間はD TS遅延として知られ、タイムスタンプ(時刻印)により定まる。このタイムス タンプはデータの所定のフレームと関連があ り、これはどのフレームがデコーダバッファから除去され、次に解凍(減圧)さ れるかを確認するために、受信器によって用いられる。デコーダのタイムスタン プは、システム内のデータ量がエンコーダバッファとデコーダバッファの間で分 けられるように選ばれる。エンコーダバッファとデコーダバッファ内のデータの 総量は次のように定められる。 総データ=DTS遅延×ビットレート (1) エンコーダレートバッファの占有とデコーダレートバッファの間には相互(正 逆)関係が成立する。エンコーダレートバッファが一杯になるとデコーダレート バッファは空になり、またその逆も真である。したがって、受信器でのオーバフ ローとアンダフローを防止するために、エンコーダレートバッファの最大サイズ はデコーダバッファの最大サイズと同じである。 また任意の時点でのシステム内のデータの総量も、バッファ容量の量と種類に より表すことができる。言い換えれば、データの総量は、レートバッファ及びい わゆるスタフィングバッファの両方で利用可能なバッファ空間に等しい。ずなわ ち、 総データ=スタフィングバッファ容量+レートバッファ容量 レートバッファ容量は、MPEGII適合システムでは1.8Mbitに等しい から 総データ=スタフィングバッファ容量+1.8Mbit …(2) (1)を(2)に代入すると、 スタフィングバッファ容量=(DTS遅延×ビットレート)− 1.8Mbit DTS遅延の値は、ユーザによって、又はシステム内の制御コンピュータによ って変化させることができるが、この変数は不変とすることが 好ましい。したがって、ビットレートを変化させるためにはスタフィングバッフ ァ容量を変える必要があることがわかった。 ビットレートを1つの値から他の値へ変える能力が長い間求められてきた。本 発明は次のような特徴を有するいわゆる継目なしビットレート変更(を行う方法 )を提供する。 a) 受信器の崩壊(アンダフロー又はオーバフロー)とならないようにビ ットレートを変える。 b) DTS遅延、すなわち、ビデオのタイムスタンプオフセットを変えな いようなビットレート変更を行い、受信器がクレームを利得又はスキップする必 要がないようにする。 c) 極端なコード化アーチファクトが起こらないようにビートレートを変 える。 継目なしビットレート変更は、瞬間的に、又は一定時間にわたって達成するこ とができ、瞬間的継目なしビットレート変更は計算することができる。エンコー ダレートバッファのサイズ、DTS遅延、及びスタフィングバッファのサイズが 与えられているときは瞬間最大ビットレートは次のように決定できる。 瞬間的に生じる最小ビットレートは、エンコーダバッファ占有によって定まる 。エンコーダバッファ内のデータが多いほど最小ビットレートは高くなる。最小 ビートレートは次のように与えられる。 これは瞬間的に達成することができ、受信器バッファのアンダフローを起こさ ないような最低ビットレートである。 上記のような瞬間的範囲の外でのビットレートを達成するためには、ビットレ ート変更が有限の段階で行われるような緩慢なビットレート変更を用いることが できる。式3から、また、DTS遅延が一定であるとすると、レートバッファの サイズは最大限1.8Mbitに限定される。 そこで スタフィングバッファ容量が増加すると最大ビットレートはより高くなる。実 際にはスタフィングバッファ容量は、フレームあたり100Kbitのレートに 限定されることなく増加することができる。システムの条件に応じて、他のレー トを用いることもできる。 スタフィングバッファ容量を増加するためのメカニズムを図3に示す。エンコ ーダバッファ24は、すでに述べたように2つの部分を含んでいる。つまり、レ ートバッファ25とスタフィングバッファ26である。エンコーダレートバッフ ァには仮想フロア54と天井56が設けられている。レートバッファ全体は通常 は絶対サイズに固定されているが、エンコーダバッファ自体の中で上下にスライ ドさせることができる。レートバッファ25を徐々に上へスライドさせると、同 時にバッファの実効 サイズが増加し、その結果チャネルのビットレートは増加する。レートバッファ をこのように上へスライドさせると、より多くのデータがエンコーダバッファ内 に入る。なぜなら、レートバッファが上へスライドするにつれて、一定の占有に 対して量子化因子QPは当然後退するからである。 図4a、4b、4c及び4dは、継目なしビットレート変更の機能を実行する ための一実施例を示している。説明しやすくするために、データがエンコーダバ ッファに入るレート(速度)が、データが出るレートに等しいと仮定する。もち ろん、そうでない場合もある。なぜなら、受信器バッファの限界及びその効果、 又は、入るデータに対する量子化因子の効果が考慮に入れられていないからであ る。図4aは正常満杯レベルのレートバッファ(RB)とスタフィングバッファ (SB)を示している。データはレートバッファ内では量子化因子Qaである。 入ってくるデータが変化するときは、データをもっと高いビットレートでデコー タへ伝送する必要があるかもしれない。この高いビットレートが、瞬間的に達成 できる値よりも大きいときには、スタフィングバッファの容量を増加させる必要 がある。このようなときには、レートバッファはエンコーダバッファを上へスラ イドさせ、こうしてスタフィングバッファ容量を増加させる。この例ではデータ 満杯レベルは不変であるから、これによって量子化因子は低くなる。言い換えれ ば、システム内のデータの総量は同じであるが、Qa>Qbである。ビットレー トをもっと高くする必要があるときには、レートバッファはさらにエンコーダバ ッファを上へとスライドさせ、スタフィングバッファはさらに大きくなる。出入 りするデータのレートが同じときには、Qa>Qb>Qcである。ビットレート の要件が低下すると、レートバッファは次第に下へとスライドして図4dに示す 位置にくる。ここではデータの量子化因子Qdはきわ めて高い。 同時に、スタフィングバッファを最小の0へと低下させることによって、瞬間 的に達成できるよりも低いビットレートを選ぶことができる。このあと、レート バッファのサイズを1.8Mbit以下へと下げることによって、さらに低いビ ットレートを達成することができる。 考えられる変化の1例を下記に図3に関連して示す。 8Mbitへの瞬間的ビットレート変更が必要なときには、これはフレームあ たり100Kbのステップで、2000000bits/秒のビットレートで達 成できる。すなわち6000000/100000)つまり60フレームの間に 60ステップで達成できる。8Mbits/秒のビットレートでは次のようなス タフィングバッファが必要である。 スタフィングバッファ容量=瞬間ビットレート×DTS遅延 −レートバッファ容量=(8000000+0.5)− 1800000=2.2Mbits 最低ビットレートは、どの最低サイズのレートバッファが受諾可能かによって 異なるが、通常はかかる最低サイズとして0.5Mbitが受諾可能である。し たがって上記の例では、最小レートバッファ=0.5Mbitであり、最小スタ フィングバッファ=0Mbitである。 固定レートシステムでは、システムが充分に作動するようにバッファ ットレートBは上記のように最大ビットレート11.5Mbits/秒から最小 値4.5Mbits/秒へとジャンプできる。 ビットレートを調節するごとに、QPの値を再割当てしなくてはならない。各 ビットレート調節が最後のものと想定しなくてはならないからである。これはI フレーム中にエンコーダバッファは充満せず、デコーダが空にならないようにす るため行わなくてはならない。上記の方法に従うことによって新しいエンコーダ データレベル(QP=31)が現在のデータレベルよりも低くなるようなレベル にビットレートが落ちないようにすることができる。もしこれが起こるようなこ とになれば、データの一体性が危険にさらされることになるであろう。 本発明の第2の実施例を図8に関連して説明する。上記の実施例と同様に、エ ンコーダバッファ80は2つの部分を含んでいる。レートバッファ82と、可変 又はスタフィングバッファ84である。また図に示すように、エンコーダバッフ ァのさまざまな点にビットレートA、B及びCがある。ビットレートAはエンコ ーダ又はレートバッファに入るデータのビットレートであり、ビットレートBは レートバッファから可変バッファへのビットレートであり、ビットレートCはエ ンコーダ又は可変バッファを出るときのビットレートである。エンコーダバッフ ァは、レートバッファを出るデータの量が常にレートバッファに入るデータの量 に等しくなるように調節される。言い換えれば、ビットレートAはビットレート Bに等しい。本発明の前の実施例と同様に、エンコーダバッファに入るときのビ ットレートが時間とともにどのように変化するかを知ることはできない。これは 伝送され、又は放送される素材の種類によって異なる。したがって、図8を参照 するとビットレートAは常に変化しており、ビットレートBも変化している。放 送される素材の出所によって、ビットレートAが変化すると瞬間的にビットレー トBに変化が起き る。 デコーダ又は受信器のバッファ90がアンダフロー又はオーバフローとならな いように、ビットレートCはビットレートA及び/又はBに応じて瞬間的に変化 することはできない。もし変化すればデコーダがオーバフロー又はアンダフロー となる良いチャンスとなり、いずれの場合にもデコーダは破綻する。受信器バッ ファへ送られるデータが多すぎないよう、又は少なすぎないように、ビットレー トCを調節しなくてはならない。この実施例では、これはCのビットレートの変 化を遅らせることによって行われる。このような典型的遅延はタイムスタンプ時 間DTSである。言い換えると、ビットレートCはビットレートA(又はB)よ りも1タイムスタンブ時間だけ遅れる。 すでに述べたように、タイムスタンプ時間は、データがエンコーダバッファに 「挿入」される時から、復号化のためにデコーダバッファから「除去」される時 までの時間である。言い換えれば、タイムスタンプ遅延は、データがここに示し たシステム内にある合計時間である。この遅延によりビットレートCの変化をず らせることによって、デコーダバッファ内にきわめて正常なデータレベルが確立 され、オーバフロー又はアンダフローの確率はゼロとなる。 IフレームはB又はPフレームよりも多くのデータを作り出す傾向があるので 、エンコーダバッファのレベルを上昇させやすい。したがって、システムはIフ レーム中にQPの値を変えようとすると考えられる。これによって画面の下部で 画質が低下し、主観的に出力を悪化させる。そこで、本発明は、QPを同じに保 持するための予知トラックを定め、エンコーダバッファを全画像グループ上の一 定の点へと戻す。予知トラックによって、図6に示すようにエンコーダバッファ 占有のための三角形の波形ができる。実線は目標トラックを示し、2本の点線は 高い方及び 請求の範囲 1. エンコーダバッファから下流の所定のデコーダバッファの要件を定めるた めに、エンコーダバッファへのデータ入力のレートをモニターする段階と、 エンコーダバッファへのデータ入力のレートの変化に対して、エンコーダ バッファからのデータ出力のレートの変化を所定時間だけ遅延させるために、モ ニター段階に対応してエンコーダバッファを所定の方法で制御する段階とを、 有するディジタルデータ伝送システムでのデータ伝送方法。 2. データがエンコーダバッファに入り、デコーダバッファを出るのに要する 時間に応じた時間だけデータの出力を遅延させることを更に有する請求項1に記 載の方法。 3. デコーダのタイムスタンプに所定の遅延を設定することを更に有する請求 項2に記載の方法。 4. エンコーダバッファが少なくとも第1部分と第2部分を備え、第1部分の サイズが実質的に固定されていることを更に有する、前記請求項のいずれかに記 載の方法。 5. 第2部分が可変サイズであることを更に有する、請求項4に記載の方法。 6. 第1部分から第2部分へデータを転送することを更に有する、請求項4又 は5に記載の方法。 7. エンコーダバッファへのデータ入力のレートの変化に応じて第1部分から 第2部分へのデータの流れのレートを変えることを更に有する、請求項6に記載 の方法。 8. エンコーダバッファからデコーダバッファへデータを伝送することを更に 有する、前記請求項のいずれかに記載の方法。 9. 放送システムとしてのシステムを提供することを更に有する、前記請求項 のいずれかに記載の方法。 10. 統計的多重化能力を有する放送システムを提供することを更に有する、 請求項9に記載の方法。 11. エンコーダバッファから下流の所定のデコーダバッファの要件を定める ためにエンコーダバッファへのデータ入力のレートをモニターするためのモニタ ー手段と、 エンコーダバッファへのデータ入力のレートの変化に対して、エンコーダ バッファからのデータ出力のレートの変化を所定時間だけ遅延させるために、モ ニター段階に対応してエンコーダバッファを所定の方法で制御する制御部とを、 有する、ディジタルデータ伝送システムでのデータ伝送装置。 12. データがエンコーダに入り、デコーダバッファを出るのに要する時間に 応じた時間だけエンコーダバッファからのデータの出力を遅延させる請求項11 に記載の装置。 13. 前記時間がデコーダのタイムスタンプに設定されている請求項12に記 載の装置。 14. エンコーダバッファが少なくとも第1部分と第2部分を備え、第1部分 のサイズが実質的に固定されている請求項11から13のいずれかに記載の装置 。 【図3】【図6】 【図7】 [Procedure for Amendment] Article 184-8, Paragraph 1 of the Patent Act [Date of Submission] June 24, 1998 (1998.24.24) [Content of Amendment] Description Improvement in or related to data transmission The present invention relates to improved data transmission, and more particularly to improved transmission of digitally encoded data. With a typical system for transmitting and / or receiving digital data, several images (video), audio and related services are multiplexed and transmitted and received over a single digital transmission channel. It is decoded later. This type of system operates under the MPEG II standard. The number of services, and thus the cost of transmission bandwidth per service, is determined by the bit rate (bit rate). Therefore, improvement of the image quality, that is, reduction of the beat rate, is extremely important for the service provider. Improvements in bit rate and image quality have been achieved using statistical multiplexing as described in co-pending application GB 9517130.2, currently published as EP 0 759 667 A2. According to this application, the bit rate of data passing through individual channels or encoders is varied depending on the total resources available for the system as a whole. By combining the encoders with the "Stat Mux (Statistical Multiplexing) Group" and by determining the bit rate conditions for these encoders in real time, the bit quality is maximized for this group. Rates can be assigned. Obviously, when the bit rate changes continuously, it is important to manage the data storage in the buffer at both the transmitting end and the receiving end. The storage buffer is immediately after or just before the encoder. One of the major problems in current systems (fixed mode or statistical multiplexing mode) is that of bit rate variation. Usually, when the system attempts to change the bit rate, the data rate (data rate, data transfer rate) increases or decreases. As a result of this change in data rate, an overflow or underflow of the decoder buffer occurs, which causes a problem in image formation on the receiving side. The present invention addresses the problem of data management in encoder and decoder buffers for systems operating in both a statistical multiplexing mode or a standard fixed bit rate, variable quality mode. More particularly, the present invention relates to the problem of changing the bit rate of a system while maintaining image quality and preventing decoder buffer overflow and underflow. According to one aspect of the invention, monitoring the rate of data input to the encoder buffer to determine requirements of a given decoder buffer downstream from the encoder buffer, and changing the rate of data input to the encoder buffer. Controlling the encoder buffer in a predetermined manner corresponding to the monitoring step in order to delay the change in the rate of data output from the encoder buffer by a predetermined time. A data transmission method is provided. This predictive technique achieves the requirement of seamlessly changing the bit rate instantaneously. Seamless bit rate change means that there is no interruption in the decoding of the bitstream on the receiving side and no abnormal artifacts on the receiving side. Therefore, in order to seamlessly change the bit rate, the receiver buffer must not overflow or underflow, and the time of the bit stream must be such that the receiver does not need to gain or skip frames. The stamp (time stamp) offset (rate buffer delay) should be constant. It is advantageous to delay the output of the data according to the time it takes for the data to enter the encoder and exit the decoder buffer. In the preferred example, this time is set to the decoder time stamp. According to a second aspect of the invention, monitoring means for monitoring the rate of data input to the encoder buffer to determine requirements of a given decoder buffer downstream of the encoder buffer, and data input to the encoder buffer And a control unit for controlling the encoder buffer in a predetermined manner corresponding to the monitoring stage in order to delay the change in the rate of the data output from the encoder buffer by a predetermined time with respect to the change in the rate. A data transmission device in a digital data transmission system is provided. This will be described by way of example with reference to the accompanying drawings. FIG. 1 is a schematic diagram of a broadcasting system according to the present invention. FIG. 2 is a diagram of an encoder buffer and a decoder buffer. FIG. 3 is a diagram illustrating characteristics of the encoder buffer. FIG. 4 is a diagram illustrating a method of achieving a seamless bit rate change according to the first embodiment of the present invention. FIG. 5 is a diagram illustrating buffer management in the statistical multiplexing system. FIG. 6 shows the effect of different types of frames on buffer occupancy. FIG. 7 is a graph showing a relationship between a scaling parameter before encoder quantization and linear quality. FIG. 8 is a diagram illustrating a method of achieving a seamless bit rate change according to the second embodiment of the present invention. FIG. 1 shows a broadcast system, which includes a statistical multiplexing system 10. The statistical multiplexing system may be that described in the above-mentioned co-pending application or may be another type of statistical multiplexing system. A signal 12, such as a video signal, is encoded by one of a plurality of encoders 14 and passes through a statistical multiplexing system to generate a transmission signal 16. Usually, the video signal is compressed by an encoder. The transmission signal is then transmitted to a receiver 18 where it is decoded by one of a plurality of decoders 20 into a video signal. This video signal is displayed for viewing or retransmitted to another receiver when needed. In the apparatus of FIG. 1, transmission from the transmitting end to the receiving end is performed via a satellite. Obviously, other means of transmission can be used instead of satellite transmission. The encoder and decoder include buffers 13 and 23, respectively, which are described in more detail below. The system of FIG. 1 illustrates a statistical multiplexing (Stat Mux) system. However, it has been understood that, under certain circumstances, a user desires to operate the broadcast system in a fixed mode rather than a "statistical multiplexing" mode. As will become apparent below, the system can operate in either mode. MPEG receivers or decoder buffers are limited in size to 1.8 Mbits or larger. This rate buffer can accept a certain amount of bit rate change. However, infinite changes in bit rate cannot be accepted without underflow or overflow in the decoder buffer. The present invention provides a technique for improving the range of seamless bit rate changes by managing the encoder rate buffer so that the limitations of the receiving buffer are not violated. FIG. 2 shows an encoder rate buffer 24 and a decoder rate buffer 27, respectively. As already mentioned, the MPEG standard specifies that the maximum size of the receiver rate buffer is 1.8 Mbit. To prevent underflow or overflow of the receiver with the MPEG standard decoder buffer, the encoder must also have the same maximum rate buffer of 1.8 Mbit. The encoder buffer itself is composed of two parts. That is, the rate buffer 25 and the storage area 26 thereunder. This storage area is here called a stuffing buffer, and the upper level is called a stuffing level. This stuffing level is equivalent to the virtual floor of the rate buffer, which will be described in detail below. The rate buffer is a part of the encoder buffer for making the data reach smoothly. For compressed video data, the data arrives at a "burst" rate. A rate buffer is provided in the encoder to smooth this burst data to an almost constant, stable output bit rate. A feedback mechanism is provided from the rate buffer to the video compressor (not shown) so that when more data enters the buffer than exits, the buffer fills. As the rate buffer fills, a higher quantization factor Q P is selected. This effect causes less data to enter the rate buffer. A mapping is made between the encoder rate buffer occupancy and the quantization factor. The higher the occupancy, the higher the mapping. Thus, when the rate buffer is empty, the lowest quantization factor 1 is selected, and when the rate buffer is full, the highest quantization factor is selected. It takes a certain amount of time to transfer the compressed data from the input of the encoder buffer to the point where the data is extracted from the decoder buffer. This time is known as the DTS delay and is determined by a time stamp. This timestamp is associated with a given frame of data, which is used by the receiver to ascertain which frame is removed from the decoder buffer and then decompressed. The decoder time stamp is chosen so that the amount of data in the system is divided between the encoder buffer and the decoder buffer. The total amount of data in the encoder buffer and the decoder buffer is determined as follows. Total data = DTS delay × bit rate (1) A mutual (forward / reverse) relationship is established between the occupation of the encoder rate buffer and the decoder rate buffer. When the encoder rate buffer is full, the decoder rate buffer is empty and vice versa. Therefore, to prevent overflow and underflow at the receiver, the maximum size of the encoder rate buffer is the same as the maximum size of the decoder buffer. Also, the total amount of data in the system at any time can be represented by the amount and type of buffer capacity. In other words, the total amount of data is equal to the buffer space available in both the rate buffer and the so-called stuffing buffer. That is, the total data = the stuffing buffer capacity + the rate buffer capacity The rate buffer capacity is equal to 1.8 Mbit in the MPEGII compliant system, so the total data = the stuffing buffer capacity + 1.8 Mbit (2) (2) ), The stuffing buffer capacity = (DTS delay × bit rate) −1.8 Mbit The value of the DTS delay can be changed by the user or by the control computer in the system, but this variable remains unchanged. Is preferred. Therefore, it was found that it was necessary to change the stuffing buffer capacity in order to change the bit rate. The ability to change the bit rate from one value to another has long been sought. The present invention provides a so-called seamless bit rate change (method of performing) having the following features. a) Change the bit rate so that the receiver does not collapse (underflow or overflow). b) Make a DTS delay, ie, a bit rate change that does not change the video timestamp offset, so that the receiver does not need to gain or skip claims. c) Change the beat rate to avoid extreme coding artifacts. The seamless bit rate change can be achieved instantaneously or over a period of time, and the instantaneous seamless bit rate change can be calculated. Given the size of the encoder rate buffer, the DTS delay, and the size of the stuffing buffer, the instantaneous maximum bit rate can be determined as follows. The instantaneous minimum bit rate is determined by the encoder buffer occupancy. The more data in the encoder buffer, the higher the minimum bit rate. The minimum beat rate is given as follows. This is the lowest bit rate that can be achieved instantaneously and does not cause receiver buffer underflow. To achieve a bit rate outside the instantaneous range as described above, a slow bit rate change can be used in which the bit rate change occurs in a finite stage. From equation 3, and assuming that the DTS delay is constant, the size of the rate buffer is limited to 1.8 Mbit at the maximum. Therefore As the stuffing buffer capacity increases, the maximum bit rate becomes higher. In practice, the stuffing buffer capacity can be increased without being limited to a rate of 100 Kbits per frame. Other rates may be used depending on system requirements. FIG. 3 shows a mechanism for increasing the stuffing buffer capacity. The encoder buffer 24 includes two parts as described above. That is, the rate buffer 25 and the stuffing buffer 26. A virtual floor 54 and a ceiling 56 are provided in the encoder rate buffer. The entire rate buffer is usually fixed in absolute size, but can be slid up and down within the encoder buffer itself. Sliding the rate buffer 25 up gradually increases the effective size of the buffer at the same time, thereby increasing the bit rate of the channel. When the rate buffer is slid up in this manner, more data enters the encoder buffer. This is because as the rate buffer slides up, the quantization factor Q P naturally recedes for a certain occupancy. 4a, 4b, 4c and 4d show one embodiment for performing the function of seamless bit rate change. For simplicity, assume that the rate at which data enters the encoder buffer (the rate) is equal to the rate at which data exits. Of course, that is not always the case. This is because the limitations of the receiver buffer and its effect, or the effect of the quantization factor on the incoming data, are not taken into account. FIG. 4a shows a normal full level rate buffer (RB) and a stuffing buffer (SB). The data is the quantization factor Qa in the rate buffer. When the incoming data changes, it may be necessary to transmit the data to the decoder at a higher bit rate. When this high bit rate is greater than can be achieved instantaneously, the stuffing buffer capacity must be increased. In such a case, the rate buffer slides the encoder buffer up, thus increasing the stuffing buffer capacity. This results in a lower quantization factor since the data full level is unchanged in this example. In other words, the total amount of data in the system is the same, but Qa> Qb. When the bit rate needs to be higher, the rate buffer slides the encoder buffer further up and the stuffing buffer becomes larger. When the rates of incoming and outgoing data are the same, Qa>Qb> Qc. As the bit rate requirement decreases, the rate buffer gradually slides down to the position shown in FIG. 4d. Here, the data quantization factor Qd is extremely high. At the same time, by lowering the stuffing buffer to a minimum of zero, one can choose a lower bit rate than can be achieved instantaneously. Thereafter, a lower bit rate can be achieved by reducing the size of the rate buffer to 1.8 Mbit or less. One example of a possible change is shown below in connection with FIG. When an instantaneous bit rate change to 8 Mbits is required, this can be achieved at a bit rate of 200000 bits / sec in 100 Kb steps per frame. That is, 600000/100000), that is, 60 steps can be achieved during 60 frames. At a bit rate of 8 Mbits / sec, the following stuffing buffer is required. Stuffing buffer capacity = instantaneous bit rate x DTS delay-rate buffer capacity = (800000 + 0.5)-1800000 = 2.2Mbits The minimum bit rate depends on which minimum size rate buffer is acceptable, but usually this minimum 0.5 Mbit is acceptable as the size. Therefore, in the above example, the minimum rate buffer = 0.5 Mbit and the minimum stuffing buffer = 0 Mbit. In a fixed rate system, the buffer rate B can jump from a maximum bit rate of 11.5 Mbits / sec to a minimum value of 4.5 Mbits / sec, as described above, for the system to operate satisfactorily. Each time the bit rate is adjusted, the value of Q P must be reassigned. This is because each bit rate adjustment must be assumed to be the last one. This must be done to prevent the encoder buffer from filling up during the I frame and the decoder from becoming empty. By following the above method, it is possible to prevent the bit rate from dropping to a level where the new encoder data level (Q P = 31) is lower than the current data level. If this were to happen, data integrity would be compromised. A second embodiment of the present invention will be described with reference to FIG. As in the previous embodiment, encoder buffer 80 includes two parts. A rate buffer 82 and a variable or stuffing buffer 84. Also, as shown, there are bit rates A, B and C at various points in the encoder buffer. Bit rate A is the bit rate of the data entering the encoder or rate buffer, bit rate B is the bit rate from the rate buffer to the variable buffer, and bit rate C is the bit rate at exiting the encoder or variable buffer. The encoder buffer is adjusted so that the amount of data exiting the rate buffer is always equal to the amount of data entering the rate buffer. In other words, the bit rate A is equal to the bit rate B. As in the previous embodiment of the present invention, it is not possible to know how the bit rate upon entering the encoder buffer changes over time. This depends on the type of material being transmitted or broadcast. Therefore, referring to FIG. 8, the bit rate A is constantly changing, and the bit rate B is also changing. When the bit rate A changes depending on the source of the material to be broadcast, the bit rate B changes instantaneously. The bit rate C cannot change instantaneously depending on the bit rates A and / or B so that the decoder or receiver buffer 90 does not underflow or overflow. If it does, there is a good chance that the decoder will overflow or underflow, in which case the decoder will fail. The bit rate C must be adjusted so that not too much or too little data is sent to the receiver buffer. In this embodiment, this is done by delaying the change in the bit rate of C. Such a typical delay is the time stamp time DTS. In other words, the bit rate C lags the bit rate A (or B) by one time stub. As already mentioned, the timestamp time is the time from when data is "inserted" into the encoder buffer until it is "removed" from the decoder buffer for decoding. In other words, the timestamp delay is the total time the data has been in the system shown here. By shifting the change in bit rate C by this delay, a very normal data level is established in the decoder buffer, and the probability of overflow or underflow is zero. Because I frames tend to produce more data than B or P frames, it is easier to raise the level of the encoder buffer. Therefore, the system may attempt to change the value of Q P during an I-frame. This lowers image quality at the bottom of the screen and subjectively worsens output. Thus, the present invention determines a predictive track to keep Q P the same and returns the encoder buffer to a fixed point on all image groups. The predictive track produces a triangular waveform for encoder buffer occupancy as shown in FIG. The solid line indicates the target track, and the two dotted lines indicate the higher one and the claims. Monitoring the rate of data input to the encoder buffer to determine the requirements of a given decoder buffer downstream from the encoder buffer; and outputting data from the encoder buffer for changes in the rate of data input to the encoder buffer. Controlling the encoder buffer in a predetermined manner corresponding to the monitoring step in order to delay the change of the rate by a predetermined time. 2. The method of claim 1, further comprising delaying the output of data by a time corresponding to a time required for data to enter and exit the encoder buffer. 3. 3. The method of claim 2, further comprising setting a predetermined delay on a decoder timestamp. 4. The method according to any of the preceding claims, wherein the encoder buffer comprises at least a first part and a second part, further comprising that the size of the first part is substantially fixed. 5. The method of claim 4, further comprising the second portion being of variable size. 6. The method according to claim 4 or 5, further comprising transferring data from the first part to the second part. 7. 7. The method of claim 6, further comprising varying a rate of data flow from the first portion to the second portion in response to a change in a rate of data input to the encoder buffer. 8. The method according to any of the preceding claims, further comprising transmitting data from an encoder buffer to a decoder buffer. 9. The method according to any of the preceding claims, further comprising providing the system as a broadcast system. 10. The method of claim 9, further comprising providing a broadcast system having statistical multiplexing capabilities. 11. Monitoring means for monitoring the rate of data input to the encoder buffer to determine the requirements of a given decoder buffer downstream from the encoder buffer; and for changing the rate of data input to the encoder buffer, A control unit for controlling an encoder buffer in a predetermined manner corresponding to a monitoring stage in order to delay a change in the rate of data output by a predetermined time. 12. The apparatus of claim 11, wherein the output of data from the encoder buffer is delayed by a time corresponding to a time required for data to enter the encoder and exit the decoder buffer. 13. The apparatus of claim 12, wherein the time is set to a decoder time stamp. 14. Apparatus according to any of claims 11 to 13, wherein the encoder buffer comprises at least a first part and a second part, the size of the first part being substantially fixed. FIG. 3 FIG. 6 FIG. 7

Claims (1)

【特許請求の範囲】 1. エンコーダバッファから下流のデコーダバッファの要件を定めるために、 エンコーダバッファへのデータ入力のレートをモニターする段階と、 エンコーダバッファへのデータ入力のレートの変化に対して、エンコーダ からのデータ出力のレートの変化を所定時間だけ遅延させるために、モニター段 階に対応してエンコーダバッファを制御する段階とを、有するディジタルデータ 伝送システムでのデータ伝送方法。 2. データがエンコーダバッファに入り、デコーダバッファを出るのに要する 時間に応じた時間だけデータの出力を遅延させることを更に有する請求項1に記 載の方法。 3. デコーダのタイムスタンプに所定の遅延を設定することを更に有する請求 項2に記載の方法。 4. エンコーダバッファが少なくとも第1部分と第2部分を備え、第1部分の サイズが実質的に固定されていることを更に有する、前記請求項のいずれかに記 載の方法。 5. 第2部分が可変サイズであることを更に有する、請求項4に記載の方法。 6. 第1部分から第2部分へデータを転送することを更に有する、請求項4又 は5に記載の方法。 7. エンコーダバッファへのデータ入力のレートの変化に応じて第1部分から 第2部分へのデータの流れのレートを変えることを更に有する、請求項6に記載 の方法。 8. エンコーダバッファからデコーダバッファへデータを伝送することを更に 有する、前記請求項のいずれかに記載の方法。 9. 放送システムとしてのシステムを提供することを更に有する、前記請求項 のいずれかに記載の方法。 10. 統計的多重化能力を有する放送システムを提供することを更に有する、 請求項9に記載の方法。 11. エンコーダバッファから下流のデコーダバッファの要件を定めるために エンコーダバッファへのデータ入力のレートをモニターするためのモニター手段 と、 エンコーダバッファへのデータ入力のレートの変化に対して、エンコーダ からのデータ出力のレートの変化を所定時間だけ遅延させるために、モニター段 階に対応してエンコーダバッファを制御する制御部とを、 有する、ディジタルデータ伝送システムでのデータ伝送装置。 12. データがエンコーダに入り、デコーダバッファを出るのに要する時間に 応じた時間だけエンコーダバッファからのデータの出力を遅延させる請求項11 に記載の装置。 13. 前記時間がデコーダのタイムスタンプに設定されている請求項12に記 載の装置。 14. エンコーダバッファが少なくとも第1部分と第2部分を備え、第1部分 のサイズが実質的に固定されている請求項11から13のいずれかに記載の装置 。 15. 第2部分が可変サイズである請求項14に記載の装置。 16. データが第1部分から第2部分へ転送される請求項14又は15に記載 の装置。 17. 第1部分から第2部分へのデータの流れのレートの変更がエンコーダバ ッファへのデータ入力のレートの変化に直接従っている請求項16に記載の装置 。 18. エンコーダバッファからデコーダバッファへデータが転送される前記請 求項のいずれかに記載の装置。 19. 前記システムが放送システムである前記請求項のいずれかに記載の装置 。 20. 前記放送システムが統計的多重化システムである請求項19に記載の装 置。[Claims] 1. To define the requirements of the decoder buffer downstream from the encoder buffer, Monitoring the rate of data input to the encoder buffer;       Changes in the rate of data input to the encoder buffer Monitor stage to delay the change in the rate of data output from the Controlling the encoder buffer corresponding to the floor. Data transmission method in the transmission system. 2. Data required to enter encoder buffer and exit decoder buffer The method according to claim 1, further comprising delaying output of data by a time corresponding to the time. The method described. 3. Claims further comprising: setting a predetermined delay to the decoder timestamp. Item 3. The method according to Item 2. 4. An encoder buffer includes at least a first portion and a second portion, wherein the first portion has The method according to any of the preceding claims, further comprising the size being substantially fixed. The method described. 5. The method of claim 4, further comprising the second portion being of variable size. 6. 5. The method of claim 4, further comprising transferring data from the first part to the second part. Is the method described in 5. 7. From the first part according to the change of the rate of the data input to the encoder buffer 7. The method of claim 6, further comprising changing a rate of data flow to the second part. the method of. 8. Further transmitting data from the encoder buffer to the decoder buffer. A method according to any preceding claim. 9. The claim, further comprising providing the system as a broadcast system. The method according to any of the above. 10. Further comprising providing a broadcast system with statistical multiplexing capabilities; The method according to claim 9. 11. To define the requirements of the decoder buffer downstream from the encoder buffer Monitoring means for monitoring the rate of data input to the encoder buffer When,       Changes in the rate of data input to the encoder buffer Monitor stage to delay the change in the rate of data output from the A control unit that controls the encoder buffer corresponding to the floor,   A data transmission device in a digital data transmission system. 12. The time it takes for data to enter the encoder and exit the decoder buffer 12. The output of data from the encoder buffer is delayed by a corresponding time. An apparatus according to claim 1. 13. 13. The method according to claim 12, wherein the time is set in a time stamp of a decoder. On-board equipment. 14. An encoder buffer comprising at least a first part and a second part, the first part Device according to any of claims 11 to 13, wherein the size of the device is substantially fixed. . 15. The apparatus of claim 14, wherein the second portion is of variable size. 16. 16. The method according to claim 14, wherein data is transferred from the first part to the second part. Equipment. 17. Changing the rate of data flow from the first part to the second part is 17. Apparatus as claimed in claim 16, wherein the rate of data input to the buffer is directly followed. . 18. The data transfer from the encoder buffer to the decoder buffer; An apparatus according to any of the preceding claims. 19. Apparatus according to any of the preceding claims, wherein the system is a broadcast system. . 20. 20. The apparatus of claim 19, wherein said broadcasting system is a statistical multiplexing system. Place.
JP09535959A 1996-04-04 1997-04-04 Improvements in or related to data transmission Pending JP2001502125A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB9607162.6 1996-04-04
GBGB9607162.6A GB9607162D0 (en) 1996-04-04 1996-04-04 Improvements in or relating to the transmission of data
PCT/GB1997/000948 WO1997038532A1 (en) 1996-04-04 1997-04-04 Buffer control in a coded data transmission system

Publications (1)

Publication Number Publication Date
JP2001502125A true JP2001502125A (en) 2001-02-13

Family

ID=10791637

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09535959A Pending JP2001502125A (en) 1996-04-04 1997-04-04 Improvements in or related to data transmission

Country Status (4)

Country Link
EP (1) EP0891673A1 (en)
JP (1) JP2001502125A (en)
GB (1) GB9607162D0 (en)
WO (1) WO1997038532A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061399A (en) * 1997-05-28 2000-05-09 Sarnoff Corporation Method and apparatus for information stream frame synchronization
JP4270754B2 (en) * 1998-07-10 2009-06-03 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Data compression assembly having multiple data compression channels
US7145912B1 (en) 2000-03-23 2006-12-05 Tut Systems, Inc. Demultiplexing a statistically multiplexed MPEG transport stream into CBR single program transport streams
EP1783945A3 (en) * 2000-10-13 2014-09-03 Sony Corporation Data communication quality control system, transmission system and receiver
EP2557787B1 (en) * 2002-11-29 2016-02-24 Sony Corporation Encoding apparatus and the method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0670663A1 (en) * 1994-03-02 1995-09-06 Laboratoires D'electronique Philips S.A.S. Method of and apparatus for coding digital signals representing a sequence of images
US5534937A (en) * 1994-04-14 1996-07-09 Motorola, Inc. Minimum-delay jitter smoothing device and method for packet video communications
DE69517966T2 (en) * 1994-12-28 2001-02-15 Koninklijke Philips Electronics N.V., Eindhoven BUFFER MANAGEMENT IN COMPRESSION SYSTEMS WITH VARIABLE BITRATE
US5619341A (en) * 1995-02-23 1997-04-08 Motorola, Inc. Method and apparatus for preventing overflow and underflow of an encoder buffer in a video compression system

Also Published As

Publication number Publication date
GB9607162D0 (en) 1996-06-12
WO1997038532A1 (en) 1997-10-16
EP0891673A1 (en) 1999-01-20

Similar Documents

Publication Publication Date Title
US6327421B1 (en) Multiple speed fast forward/rewind compressed video delivery system
JP3681391B2 (en) Encoder buffer with effective size that automatically changes with channel bit rate
USRE48953E1 (en) Hypothetical reference decoder
US6381254B1 (en) Moving image encoding device/method, moving image multiplexing device/method, and image transmission device
US6493388B1 (en) Rate control and buffer protection for variable bit rate video programs over a constant rate channel
US6643327B1 (en) Statistical multiplexer and remultiplexer that accommodates changes in structure of group of pictures
US7652993B2 (en) Multi-stream pro-active rate adaptation for robust video transmission
US20140294099A1 (en) Video quality of sevice management and constrained fidelity constant bit rate video encoding systems and methods
KR101014451B1 (en) Video server systems and methods on demand
US20050002453A1 (en) Network-aware adaptive video compression for variable bit rate transmission
US20040153951A1 (en) Transmitting and receiving real-time data
EP2919453A1 (en) Video stream switching
US6504850B1 (en) Encoded signal transmission method and encoded signal transmission apparatus
US20040013136A1 (en) Systems and methods for providing on-demand datacasting
US20070110168A1 (en) Method for generating high quality, low delay video streaming
JP2001502125A (en) Improvements in or related to data transmission
KR100236822B1 (en) Method for determining multiplex rate of variable bit rate signal
EP1571769B1 (en) Encoding/transmission device and encoding/transmission method
US8862758B1 (en) System and method for controlling one or more media stream characteristics
HK1145413B (en) Video encoder