(57)【特許請求の範囲】
【請求項１】
入力データを、独立符号化するピクチャータイプと、相互に関連させて符号化するピクチャータイプとに分けて、それぞれのピクチャータイプに応じて符号化して得られる符号化データを所定時間内に再生されるべきパック列としてパック化し、得られた前記パック列を複数集めて符号化におけるひとつの独立した単位であるユニットを形成し、前記ユニットを複数個集めて符号化におけるひとつの独立した更に大きな単位であるセルを形成するデータ符号化方法において、
符号化を行う前記入力データの符号化レートをあらかじめ所定の値に決定し、
前記入力データを前記ピクチャータイプに応じて符号化する際に発生する符号量を、前記符号化レートに対応して定まる前記ピクチャータイプ毎の目標符号量に一致させるように符号量制御して符号化し、
前記目標符号量に符号化した符号化データを前記パック列としてパック化し、得られた前記パック列を複数集めて前記ユニットを形成し、
前記セルを構成する前記ユニット毎に、前記符号化レートと前記所定時間と前記ユニットに対応した所定の画素単位数とにより、前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスを算出し、
前記各ユニット内の各ピクチャータイプの前記符号化データのうち少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスを、前記独立符号化されるピクチャータイプの目標符号量を基に算出し、
算出した前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスと、前記各ユニット内の少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスとを記述した再生情報記述用のパックを当該ユニットの先頭に格納することを特徴とするデータ符号化方法。
【請求項２】
前記入力データの符号化時の符号量制御では、前記目標符号量に対して所定量だけ低く設定した仮目標符号量にて符号化を行い、当該仮目標符号量での符号化による発生符号量と前記目標符号量との差を無効ビットで調整して、前記目標符号量に制御することを特徴とする請求項１記載のデータ符号化方法。
【請求項３】
入力データを、独立符号化するピクチャータイプと、相互に関連させて符号化するピクチャータイプとに分けて、それぞれのピクチャータイプに応じて符号化して得られる符号化データを所定時間内に再生されるべきパック列としてパック化し、得られた前記パック列を複数集めて符号化におけるひとつの独立した単位であるユニットを形成し、前記ユニットを複数個集めて符号化におけるひとつの独立した更に大きな単位であるセルを形成するデータ符号化装置において、
符号化を行う前記入力データの符号化レートをあらかじめ所定の値に決定する符号化レート決定手段と、
前記入力データを前記ピクチャータイプに応じて符号化する際に発生する符号量を、前記符号化レートに対応して定まる前記ピクチャータイプ毎の目標符号量に一致させるように符号量制御して符号化する符号量制御手段と、
前記目標符号量に符号化した符号化データを前記パック列としてパック化し、得られた前記パック列を複数集めて前記ユニットを形成するユニット化手段と、
前記セルを構成する前記ユニット毎に、前記符号化レートと前記所定時間と前記ユニットに対応した所定の画素単位数とにより、前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスを算出すると共に、前記各ユニット内の各ピクチャータイプの前記符号化データのうち少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスを、前記独立符号化されるピクチャータイプの目標符号量を基に算出するアドレス算出手段と、
算出した前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスと、前記各ユニット内の少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスとを記述した再生情報記述用のパックを当該ユニットの先頭に格納する格納手段とを具備してなることを特徴とするデータ符号化装置。
【請求項４】
前記符号量制御手段は、前記目標符号量に対して所定量だけ低く設定した仮目標符号量を生成する仮目標符号量生成手段と、当該仮目標符号量での符号化による発生符号量と前記目標符号量との差を無効ビットで調整して、前記目標符号量に制御する調整手段とを備えることを特徴とする請求項３記載のデータ符号化装置。
【請求項５】
前記符号量制御手段で用いている前記目標符号量は、予め所定の符号化レートに対応するピクチャータイプ毎の目標符号量値を記憶した記憶手段から得ることを特徴とする請求項３又は請求項４記載のデータ符号化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば符号化したオーディオ及びビデオデータをそれぞれ所定時間内に再生されるべきパック列としてユニット内に格納するデータ符号化方法及び装置に関し、特に、オーディオ及びビデオデータの符号化に先行して、それらの符号化データの符号量に相当する値から算出されるデータ長や開始アドレスなどのナビゲーションデータを記述するような符号化において、画質を安定に保ちながら実現することができるデータ符号化方法及び装置に関する。
【０００２】
【従来の技術】
近年は、動画に対するデータ圧縮方式がＭＰＥＧ（Moving Picture Image Coding Expert Group）方式として国際標準化されるに至っている。このＭＰＥＧ方式は、映像データを可変圧縮する方式として知られている。このＭＰＥＧ方式には、ＭＰＥＧ１（ＭＰＥＧフェーズ１）やＭＰＥＧ２（ＭＰＥＧフェーズ２）と呼ばれる圧縮方式が規定されている。
【０００３】
具体的には、ＭＰＥＧは、幾つかの技術を組み合わせて作成されており、先ず、入力画像信号から動き補償器で復号化した画像信号を差し引くことで時間冗長部分の削減を行う。
【０００４】
予測の方法には、基本的なモードとして、過去の画像からの予測を行うモードと、未来の画像からの予測を行うモードと、過去と未来の両方の画像からの予測を行うモードとの３モードが存在する。またこれらのモードは、１６画素×１６画素のマクロブロック（ＭＢ：Macroblock）毎に切り替えて使用できる。予測方法は、入力画像に与えられたピクチャタイプ（Picture＿Type）によって決定される。ピクチャタイプには、片方向ピクチャ間予測符号化画像（Ｐピクチャ：P-picture）と、双方向ピクチャ間予測符号化画像（Ｂピクチャ：B-Picture）と、ピクチャ内独立符号化画像（Ｉピクチャ：I-picture）がある。過去の画像から予測を行って符号化するモードと予測をしないでそのマクロブロックを独立に符号化するモードとの２つのモードが存在するのが、Ｐピクチャ（片方向ピクチャ間予測符号化画像）である。また、未来の画像からの予測を行うモードと、過去の画像からの予測を行うモードと、過去と未来の両方の画像からの予測を行うモードと、予測をしないで独立に符号化するモードの４つのモードが存在するのが、Ｂピクチャ（双方向ピクチャ間予測符号化画像）である。そして、全てのマクロブロックを独立に符号化するのが、Ｉピクチャ（ピクチャ内独立符号化画像）である。なお、Ｉピクチャはイントラピクチャと呼ばれ、このため、片方向ピクチャ間予測符号化画像と双方向ピクチャ間予測符号化画像は非イントラピクチャということができる。
【０００５】
動き補償では、動き領域をマクロブロック毎にパターンマッチングすることによってハーフペル精度で動きベクトルを検出し、その検出した動きベクトルの動き分だけマクロブロックをシフトしてから予測する。動きベクトルは、水平方向と垂直方向の動きベクトルが存在し、何処からの予測かを示すＭＣ（Motion Compensation）モードとともにマクロブロックの付加情報として伝送される。
【０００６】
Ｉピクチャから次のＩピクチャの前のピクチャまではＧＯＰ（Group Of Picture）と呼ばれ、蓄積メディアなどで使用される場合には、一般に約１５ピクチャ程度が１ＧＯＰとして使用される。
【０００７】
図９には、ＭＰＥＧが適用されるオーディオビデオ符号化装置のうち、ビデオエンコーダの基本的な構成を示している。
【０００８】
この図９において、入力端子１０１には入力画像信号が供給され、この入力画像信号は演算器１０２と後述する動き補償予測器１１１に送られる。
【０００９】
演算器１０２では、動き補償予測器１１１にて復号化した画像信号と入力画像信号との差分が求められ、その差分画像信号がＤＣＴ器１０３に送られる。
【００１０】
ＤＣＴ器１０３では、供給された差分画像信号を直交変換する。ここでＤＣＴ（Discrete Cosine Transform）とは、余弦関数を積分核とした積分変換を有限空間への離散変換とする直交変換である。ＭＰＥＧではマクロブロックを４分割した８×８のＤＣＴブロックに対して、２次元ＤＣＴを行う。なお、一般に、ビデオ信号は低域成分が多く、高域成分が少ないため、ＤＣＴを行うと係数が低域に集中する。このＤＣＴ器１０３でのＤＣＴによって得られたデータ（ＤＣＴ係数）は、量子化器１０４に送られる。
【００１１】
量子化器１０４では、ＤＣＴ器１０３からのＤＣＴ係数を量子化する。この量子化器１０４における量子化では、量子化マトリックスという８×８の２次元周波数を視覚特性で重み付けした値と、その全体をスカラー倍する量子化スケールという値で乗算した値とを量子化値として、ＤＣＴ係数をその量子化値で除算する。なお、当該ビデオエンコーダにて符号化された後の符号化データを、後にデコーダ（ビデオ復号装置）で復号して逆量子化するときは、そのビデオエンコーダにて使用した量子化値で乗算を行うことにより、元のＤＣＴ係数に近似している値を得ることができる。量子化器１０４にて量子化されたデータは、可変長符号化器（ＶＬＣ）１０５に送られる。
【００１２】
ＶＬＣ１０５は、量子化器１０４からの量子化データを可変長符号化する。このＶＬＣ１０５では、量子化された値のうち、直流（ＤＣ）成分に対しては、予測符号化の一つであるＤＰＣＭ（differential pulse code modulation）を使用して符号化する。一方、交流（ＡＣ）成分に対しては、低域から高域に向けていわゆるジグザグスキャン（zigzag scan）を行い、ゼロのラン長及び有効係数値を１つの事象とし、出現確率の高いものから符号長の短い符号を割り当てていく、いわゆるハフマン符号化を行う。また、このＶＬＣ１０５には、動き補償予測器１１１から動きベクトルと予測モードの情報も供給され、当該ＶＬＣ１０５は、可変長符号化データと共に、これら動きベクトルと予測モードの情報をマクロブロックの付加情報として出力する。ＶＬＣ１０５にて可変長符号化されたデータは、バッファメモリ１０６に送られる。
【００１３】
バッファメモリ１０６では、ＶＬＣ１０５からの可変長符号化データを一時蓄える。その後、このバッファメモリ１０６から所定の転送レートで読み出された符号化データ（符号化ビットストリーム）は、出力端子１１３から出力されることになる。
【００１４】
また、その出力される符号化データにおけるマクロブロック毎の発生符号量情報は、後述する符号量制御器１１２に送信される。この符号量制御器１１２は、マクロブロック毎の発生符号量と目標符号量との差分である誤差符号量を求め、当該誤差符号量に応じた符号量制御信号を生成して量子化器１０４にフィードバックすることにより、発生符号量制御を行う。当該符号量制御のために量子化器１０４にフィードバックされる符号量制御信号は、量子化器１０４における量子化スケールを制御するための信号である。
【００１５】
一方、量子化器１０４にて量子化された画像データは、逆量子化器１０７にも送られる。
【００１６】
この逆量子化器１０７では、量子化器１０４からの量子化データを逆量子化する。この逆量子化により得られたＤＣＴ係数データは、逆ＤＣＴ器１０８に送られる。
【００１７】
逆ＤＣＴ器１０８は、逆量子化器１０７からのＤＣＴ係数データを逆ＤＣＴした後、演算器１０９に送る。
【００１８】
演算器１０９では、逆ＤＣＴ器１０８の出力信号に動き補償予測器１１１からの予測差分画像を加算する。これにより、画像信号が復元される。
【００１９】
この復元された画像信号は、画像メモリ１１０に一時蓄えられた後、読み出されて動き補償予測器１１１に送られる。
【００２０】
画像メモリ１１０から動き補償予測器１１１に送られた画像信号は、演算器１０２にて差分画像を計算するためのリファレンスの復号化画像を生成するために使用される。
【００２１】
動き補償予測器１１１では、入力画像信号から動きベクトルを検出し、その検出した動きベクトルの動き分だけ画像をシフトしてから予測を行う。この予測によりえられた予測差分画像信号が、演算器１０２及び１０９に送られることになる。また、動き補償予測器１１１にて検出された動きベクトルは、予測モード（ＭＣモード）の情報と共に、ＶＬＣ１０５に送られる。
【００２２】
なお、上述のように差分画像信号の符号化を行うのはＰピクチャ及びＢピクチャの場合であり、Ｉピクチャの場合には入力画像信号をそのまま符号化する。
【００２３】
図１０には、図９に示したビデオエンコーダにて符号化された符号化データを復号するビデオデコーダの基本的な構成を示す。
【００２４】
この図１０において、入力端子１２１には符号化データが供給される。この符号化データは、可変長復号化器（ＶＬＤ）１２２に送られる。このＶＬＤ１２２は、図９のＶＬＣ１０５における可変長符号化の逆処理である可変長復号化を行う。当該可変長復号により得られるデータは、図９のＶＬＣ１０５への入力である量子化データに、動きベクトル及び予測モードの情報が付加されたものに相当する。ＶＬＤ１２２での可変長復号化により得られた量子化データは、逆量子化器１２３に送られる。
【００２５】
逆量子化器１２３では、ＶＬＤ１２２からの量子化データを逆量子化する。当該逆量子化されたデータは、図９の量子化器１０４への入力であるＤＣＴ係数データに相当する。この逆量子化器１２３での逆量子化により得られたＤＣＴ係数データは、逆ＤＣＴ器１２４に送られる。また、動きベクトル及び予測モードの情報は、当該逆量子化器１２３から動き補償予測器１２７に送られる。
【００２６】
逆ＤＣＴ器１２４では、逆量子化器１２３からのＤＣＴ係数を逆ＤＣＴする。当該逆ＤＣＴ器１２４にて逆ＤＣＴされたデータは、図９のＤＣＴ器１０３への入力である差分画像信号に相当する。この逆ＤＣＴ器１２４にて逆ＤＣＴされた差分画像信号は、演算器１２５に送られる。
【００２７】
演算器１２５では、逆ＤＣＴ器１２４からの差分画像信号に、動き補償予測器１２７からの予測差分画像を加算する。これにより、復号化データすなわち画像信号が復元される。この復元された画像信号は、図９の入力端子１０１への入力画像信号に略々相当する。当該復元された画像信号（復号化データ）は、出力端子１２８から出力されると同時に、一時、画像メモリ１２６に蓄えられた後、動き補償予測器１２７に送られる。
【００２８】
動き補償予測器１２７では、動きベクトル及び予測モードに基づいて、画像メモリ１２６から供給された画像信号から予測差分画像を生成し、この予測差分画像を演算器１２５に送る。
【００２９】
ＭＰＥＧ２では、前述したように、ビデオデータ及びオーディオデータを同期して転送、且つ再生できるように、それぞれのデータを基準時刻を用いて表現した転送開始時刻と再生時刻を設定することが規定されているが、これらの転送開始時刻や再生開始時刻の情報だけでは、通常再生には問題がないものの、早送りや巻き戻し再生、ランダム再生等の特殊再生や、インタラクティブ性をシステムに持たせる等の再生処理が困難であることが指摘されている。
【００３０】
このようなことから、特開平８−２７３３０４号公報に開示されているように、ＭＰＥＧにて符号化されたオーディオ及びビデオデータを所定時間内に再生されるべきパック列としてビデオオブジェクトユニット内に格納し、さらに、このユニットを再生するための再生情報及びサーチをするためのサーチ情報を、当該パック列の先頭にナビゲーションデータとして記録したようなアプリケーションが存在する。
【００３１】
ビデオオブジェクトユニット及びナビゲーションデータについては特開平８−２７３３０４号公報にて既に開示及び詳述されているため、その詳細な説明は省略するが、図１１に示すように、ビデオオブジェクトユニット８５は複数集まってセル８４を構成し、またセル８４は複数集まってビデオオブジェクト８３を構成し、さらに、このビデオオブジェクト８３が複数集まってビデオオブジェクトセット８２を構成している。
【００３２】
ビデオオブジェクトユニット８５は、１つのナビゲーションパック８６を先頭に有するパック列として定義されている。また、このビデオオブジェクトユニット８５内には、ＭＰＥＧ規格に定められたビデオパック８８、副映像パック９０及びオーディオパック９１が配置される。また、ビデオオブジェクトユニット８５には再生順序に従った番号が付されており、当該ビデオオブジェクトユニット８５の再生時間はビデオオブジェクトユニット８５中に含まれる単数又は複数個のＧＯＰから構成されるビデオデータの再生時間に相当する。
【００３３】
ナビゲーションパック８６には、ビデオオブジェクトユニット８５を再生するための再生制御情報及びサーチをするためのサーチ情報等が、ナビゲーションデータとして配されている。再生制御情報は、ビデオオブジェクトユニット８５内のビデオデータの再生状態に同期してプレゼンテーションするため、つまり表示の内容を変更するためのナビゲーションデータである。すなわち再生制御情報は、プレゼンテーションデータの状態に従って再生条件を決定するための情報であり、データストリーム上に分散配置されたリアルタイム制御データである。また、サーチ情報は、ビデオオブジェクトユニット８５のサーチを実行する為のナビゲーションデータである。すなわち、当該サーチ情報は、順早送り／逆早戻し再生とシームレス再生のための情報であり、データストリーム上に分散配置されたリアルタイム制御データである。
【００３４】
特に、ビデオオブジェクトユニット８５をサーチするためのサーチ情報には、セル８４内の先頭アドレスを特定する為の情報が記述される。すなわち、ビデオオブジェクトユニット８５のサーチ情報には、当該サーチ情報を含むビデオオブジェクトユニット８５を基準の第０番とし、再生順序に従って順方向に再生するためのアドレス（フォワードアドレス）として、第１番（＋１）から第２０番（＋２０）、第６０番（＋６０）、第１２０番（＋１２０）及び第２４０番（＋２４０）までのビデオオブジェクトユニット８５の番号（スタートアドレス）が記載される。同様に、ビデオオブジェクトユニット８５のサーチ情報には、当該サーチ情報を含むビデオオブジェクトユニット８５を基準の第０番とし、再生順序とは逆方向に再生するためのアドレス（バックワードアドレス）として第１番（−１）から第２０番（−２０）、第６０番（−６０）、第１２０番（−１２０）及び第２４０番（−２４０）までのビデオオブジェクトユニット８５のスタートアドレスが記載される。
【００３５】
【発明が解決しようとする課題】
ところで、上述のようなビデオオブジェクトユニットを再生するための再生制御情報及びサーチをするためのサーチ情報を含むナビゲーションデータを、ＭＰＥＧ符号化を開始する前に、ナビゲーションパック内に記述するためには、記憶容量の大きなメモリが必要であり、さらに当該符号化が終了した後に、その符号化結果（符号量）を観測して、所定の再生情報情報を算出して、ナビゲーションデータを生成しなければならない。
【００３６】
また、特開平８−２７３３０４号公報に記載されているように、そのビデオオブジェクトユニットを再生順序で第０番とし、そのビデオオブジェクトユニットを基準として、少なくともその再生順序で前後１５番まで再生されるビデオオブジェクトユニットのアドレス、再生順序において第２０番、第３０番、第６０番、第１２０番、及び第２４０番までのビデオオブジェクトユニットのアドレスを記述しようとした場合、基本的にＭＰＥＧビデオの符号化データが可変長符号化によるものであるため、いわゆる２パスによる符号化などのように、全部のビデオ符号化データが揃ってからでないと、ビデオオブジェクトユニットのアドレスを算出することができず、したがって、リアルタイムな符号化とナビゲーションデータの記録が出来ない。
【００３７】
本発明は、上述の課題に鑑みてなされたものであり、最小限の容量のメモリでビデオオブジェクトユニットを再生するための再生制御情報及びサーチをするためのサーチ情報を記述するナビゲーションデータを、符号化が開始される前に記述することを可能とし、また、どのような符号化レートであっても最適な画質を維持したまま、リアルタイムな符号化とナビゲーションデータの記載とを可能とするデータ符号化方法及び装置の提供を目的とする。
【００３８】
【課題を解決するための手段】
請求項１に記載の本発明に係るデータ符号化方法は、上述の課題を解決するために、入力データを、独立符号化するピクチャータイプと、相互に関連させて符号化するピクチャータイプとに分けて、それぞれのピクチャータイプに応じて符号化して得られる符号化データを所定時間内に再生されるべきパック列としてパック化し、得られた前記パック列を複数集めて符号化におけるひとつの独立した単位であるユニットを形成し、前記ユニットを複数個集めて符号化におけるひとつの独立した更に大きな単位であるセルを形成するデータ符号化方法において、
符号化を行う前記入力データの符号化レートをあらかじめ所定の値に決定し、
前記入力データを前記ピクチャータイプに応じて符号化する際に発生する符号量を、前記符号化レートに対応して定まる前記ピクチャータイプ毎の目標符号量に一致させるように符号量制御して符号化し、
前記目標符号量に符号化した符号化データを前記パック列としてパック化し、得られた前記パック列を複数集めて前記ユニットを形成し、
前記セルを構成する前記ユニット毎に、前記符号化レートと前記所定時間と前記ユニットに対応した所定の画素単位数とにより、前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスを算出し、
前記各ユニット内の各ピクチャータイプの前記符号化データのうち少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスを、前記独立符号化されるピクチャータイプの目標符号量を基に算出し、
算出した前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスと、前記各ユニット内の少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスとを記述した再生情報記述用のパックを当該ユニットの先頭に格納する。
【００３９】
請求項２に記載の本発明に係るデータ符号化方法は、上述の課題を解決するために、前記入力データの符号化時の符号量制御では、前記目標符号量に対して所定量だけ低く設定した仮目標符号量にて符号化を行い、当該仮目標符号量での符号化による発生符号量と前記目標符号量との差を無効ビットで調整して、前記目標符号量に制御する。
【００４０】
請求項３に記載の本発明に係るデータ符号化装置は、上述の課題を解決するために、入力データを、独立符号化するピクチャータイプと、相互に関連させて符号化するピクチャータイプとに分けて、それぞれのピクチャータイプに応じて符号化して得られる符号化データを所定時間内に再生されるべきパック列としてパック化し、得られた前記パック列を複数集めて符号化におけるひとつの独立した単位であるユニットを形成し、前記ユニットを複数個集めて符号化におけるひとつの独立した更に大きな単位であるセルを形成するデータ符号化装置において、
符号化を行う前記入力データの符号化レートをあらかじめ所定の値に決定する符号化レート決定手段と、
前記入力データを前記ピクチャータイプに応じて符号化する際に発生する符号量を、前記符号化レートに対応して定まる前記ピクチャータイプ毎の目標符号量に一致させるように符号量制御して符号化する符号量制御手段と、
前記目標符号量に符号化した符号化データを前記パック列としてパック化し、得られた前記パック列を複数集めて前記ユニットを形成するユニット化手段と、
前記セルを構成する前記ユニット毎に、前記符号化レートと前記所定時間と前記ユニットに対応した所定の画素単位数とにより、前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスを算出すると共に、前記各ユニット内の各ピクチャータイプの前記符号化データのうち少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスを、前記独立符号化されるピクチャータイプの目標符号量を基に算出するアドレス算出手段と、
算出した前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスと、前記各ユニット内の少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスとを記述した再生情報記述用のパックを当該ユニットの先頭に格納する格納手段とを具備してなる。
【００４１】
請求項４に記載の本発明に係るデータ符号化装置は、上述の課題を解決するために、前記符号量制御手段は、前記目標符号量に対して所定量だけ低く設定した仮目標符号量を生成する仮目標符号量生成手段と、当該仮目標符号量での符号化による発生符号量と前記目標符号量との差を無効ビットで調整して、前記目標符号量に制御する調整手段とを備える。
【００４２】
請求項５に記載の本発明に係るデータ符号化装置は、上述の課題を解決するために、前記符号量制御手段で用いている前記目標符号量は、予め所定の符号化レートに対応するピクチャータイプ毎の目標符号量値を記憶した記憶手段から得る。
【００４９】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態の説明を行う。
【００５０】
図１には、本発明のデータ符号化方法及び装置が適用される第１の実施の形態のオーディオビデオ符号化装置の概略的な構成を示す。なお、図１には、ビデオデータの符号化を行うビデオエンコーダの構成を主に示しており、オーディオデータの符号化を行うオーディオエンコーダの構成については図示を省略している。
【００５１】
この図１において、入力端子１には入力画像信号が供給され、この入力画像信号は演算器２と動き補償予測器１１に送られる。
【００５２】
演算器２では、動き補償予測器１１にて復号化した画像信号と入力画像信号との差分を求め、その差分画像信号をＤＣＴ器３に送る。なお、差分画像信号の符号化を行うのはＰピクチャ及びＢピクチャの場合であり、Ｉピクチャの場合には入力画像信号をそのまま符号化するが、以下の説明では差分画像信号を符号化する場合を例に挙げて説明する。
【００５３】
ＤＣＴ器３では、演算記２から供給された差分画像信号を直交変換する。このＤＣＴ器３でのＤＣＴ処理によって得られたデータ（ＤＣＴ係数）は、量子化器４に送られる。
【００５４】
量子化器４では、ＤＣＴ器３からのＤＣＴ係数を量子化し、その量子化データを可変長符号化（ＶＬＣ）器５に送る。
【００５５】
ＶＬＣ器５では、量子化器４からの量子化データを可変長符号化する。また、このＶＬＣ器５には、動き補償予測器１１から動きベクトルと予測モードの情報も供給され、当該ＶＬＣ器５は、可変長符号化データと共に、これら動きベクトルと予測モードの情報をマクロブロックの付加情報として出力する。当該ＶＬＣ器５にて可変長符号化されたデータは、一時、バッファメモリ６に蓄えられた後、このバッファメモリ６から所定の転送レートで読み出され、ビデオ符号化データとして後述するユニット化器１７に送られる。
【００５６】
また、バッファメモリ６から出力されるビデオ符号化データにおけるマクロブロック毎の発生符号量は、符号量制御器１２に送信される。この符号量制御器１２は、マクロブロック毎の発生符号量と、後述するピクチャ目標符号量との差分である誤差符号量を求め、当該誤差符号量に応じた符号量制御信号を生成して量子化器４にフィードバックすることにより、発生符号量制御を行う。当該符号量制御のために量子化器４にフィードバックされる符号量制御信号は、量子化器４における量子化スケールを制御するための信号である。
【００５７】
一方、量子化された画像データは、逆量子化器７にも送られる。
【００５８】
逆量子化器７では、量子化器４からの量子化データを逆量子化する。この逆量子化により得られたＤＣＴ係数データは、逆ＤＣＴ器８に送られる。
【００５９】
逆ＤＣＴ器８では、逆量子化器７からのＤＣＴ係数データを逆ＤＣＴ処理した後、演算器９に送る。
【００６０】
演算器９では、動き補償予測器１１からの予測差分画像と逆ＤＣＴ器８からの信号とを加算する。これにより、画像信号が復元される。この復元された画像信号は、一時、画像メモリ１０に蓄えられた後、動き補償予測器１１に送られる。当該画像メモリ１０から動き補償予測器１１に送られた画像信号は、演算器２にて差分画像を計算するためのリファレンスの復号化画像を生成するために使用される。
【００６１】
動き補償予測器１１では、入力画像信号から動きベクトルを検出し、その検出した動きベクトルの動き分だけ画像をシフトしてから予測を行う。この予測により得られた予測差分画像信号が、演算器２及び演算器９に送られることになる。また、動き補償予測器１１にて検出された動きベクトルは、予測モード（ＭＣモード）の情報と共に、ＶＬＣ器５に送られる。
【００６２】
ここまでの構成は前述した図９と略々同様であるが、本発明の第１の実施の形態のオーディオビデオ符号化装置では、更に以下のような構成を有している。
【００６３】
オーディオビデオ符号化レート決定器１３では、これから符号化しようとするオーディオ及びビデオの符号化レートが決定される。なお、このオーディオ及びビデオの符号化レートは、ユーザが決定しても、また、自動的に設定されても良い。当該決定された符号化レート情報はピクチャ目標符号量計算器１４及びユニットアドレス計算器１５に送られる。
【００６４】
ピクチャ目標符号量計算器１４では、オーディオビデオ符号化レート決定器１３から供給された符号化レート情報に基づいて、ＭＰＥＧにて規定されているところのピクチャタイプ毎に、目標符号量を計算する。
【００６５】
例えば、Ｉピクチャの目標符号量をＴ(I) 、Ｐピクチャの目標符号量をＴ(P) 、Ｂピクチャの目標符号量をＴ(B) とし、ＧＯＰ内にＩピクチャ１枚、Ｐピクチャ４枚、Ｂピクチャ１０枚の構成とすると、これらピクチャ目標符号量の計算式は例えば以下の式（１）〜式（３）のようになる。ただし、式中のＮはビデオ転送レート（Ｍｂｐｓ）である。
【００６６】
Ｔ(I)＝100×Ｎ（ｋビット）                （１）
Ｔ(P)＝ 40×Ｎ（ｋビット）                （２）
Ｔ(B)＝ 24×Ｎ（ｋビット）                （３）
ピクチャ目標符号量計算器１４では、これら式（１）〜式（３）のような計算によって、各ピクチャタイプにおける目標符号量を求める。
【００６７】
こうして決定されたピクチャ目標符号量情報は、符号量制御器１２とユニットアドレス計算器１５に送信される。
【００６８】
ここで、当該第１の実施の形態のオーディオビデオ符号化装置の符号量制御器１２での処理を、図２を用いて以下に説明する。
【００６９】
この図２において、符号量制御器１２の端子３３には、バッファメモリ６からのマクロブロック毎の発生符号量情報が入力される。また、端子３２には、ピクチャ目標符号量計算器１４にて決定されたピクチャ目標符号量情報が入力され、端子３１からは、量子化器４に対する符号量制御信号（量子化スケールを制御するための信号、すなわち量子化値）が出力される。
【００７０】
目標符号量発生符号量比較器３５では、端子３３を介してバッファメモリ６から供給された発生符号量と、端子３２を介してピクチャ目標符号量計算器１４から供給されたピクチャ目標符号量とを比較し、ピクチャ目標符号量に対する発生符号量との誤差符号量を生成する。この誤差符号量情報は、フィードバック量子化値決定器３４に送られる。
【００７１】
フィードバック量子化値決定器３４では、例えば誤差符号量を所定の間蓄積し、ピクチャ目標符号量よりも発生符号量の方が大きいことを当該誤差符号量が示している場合、その誤差符号量に比例して量子化値が大きくなるように符号量制御信号を設定する（量子化スケールを大きくする）。一方、発生符号量よりもピクチャ目標符号量の方が大きいことを当該誤差符号量が示している場合、その誤差符号量に比例して量子化値が小さくなるように符号量制御信号を設定する（量子化スケールを小さくする）。これにより、各ピクチャの符号量は、決定されたピクチャ目標符号量に制御される。
【００７２】
図１に戻って、ピクチャ目標符号量計算器１４で計算されたピクチャ目標符号量情報とオーディオビデオ符号化レート決定器１３にて決定された符号化レート情報は、ユニットアドレス計算器１５に送信される。
【００７３】
このユニットアドレス計算器１５では、図３に示すように、サーチのために、あるビデオオブジェクトユニットを基準として少なくともその前後に再生される所定数のビデオオブジェクトユニットのアドレスＴＥＡや、ビデオオブジェクトユニット内のＩピクチャを構成できるデータの終了アドレス１ＥＡ、ビデオオブジェクトユニット内の最初のＰピクチャを構成できるデータの終了アドレス２ＥＡ・・・・を、ピクチャ目標符号量計算器１４にて各ピクチャ毎に計算された目標符号量情報とオーディオビデオ符号化レート決定器１３から送信される符号化レート情報、すなわちビデオレートVideoRate（ｋｂｐｓ），オーディオレートAudioRate（ｋｂｐｓ）とを用いて、次式（４）〜式（６）のように算出する。
【００７４】
ＴＥＡ＝（VideoRate＋AudioRate）×15／29.97               （４）
１ＥＡ＝Ｔ(I)＋AudioRate×１／29.97                       （５）
２ＥＡ＝Ｔ(I)＋２×Ｔ(B)＋Ｔ(P)＋AudioRate×４／29.97     （６）
但し、単位はｋ（キロ）ビットである。また、ここでは、ビデオオブジェクトユニットは１５フレームで丁度１ＧＯＰであり、ＩピクチャやＰピクチャの間にあるＢピクチャは２枚であることが分かっていると仮定する。また、オーディオデータは固定転送レートと仮定し、単位時間当たりのサンプル数を固定としているが、オーディオデータの符号化が可変長符号化であれば、ビデオデータに対応した位置の（ビデオデータが出力される時間に対応する）オーディオデータの符号量を考慮して計算すればよい。なお、このようなことは、ピクチャ目標符号量計算器１４、もしくは後述の目標符号量メモリをオーディオ用に装備することにより実現可能である。
【００７５】
上述したように、本実施の形態のオーディオビデオ符号化装置によれば、必要な位置までの符号量が計算でき、したがってビデオオブジェクトユニットのアドレスが計算できる。これらの情報は、ナビゲーションデータ生成器１６に送られる。
【００７６】
ナビゲーションデータ生成器１６は、そのビデオオブジェクトユニットを再生順序で第０番として、そのビデオオブジェクトユニットを基準として少なくともその再生順序で前後１５番まで再生されるビデオオブジェクトユニット、再生順序において第２０番、第３０番、第６０番、第１２０番、及び第２４０番までのビデオオブジェクトユニットのアドレスなどを、必要に応じてアドレスをスカラー倍することで計算し、所定の順番にレイアウトして、ユニット化器１７へ送信する。
【００７７】
ユニット化器１７では、端子１９から供給されたオーディオ符号化データと、バッファメモリ６から供給されたビデオ符号化データと、ナビゲーションデータ生成器１６から供給されたナビゲーションデータとを用いて、図１１にて説明したようなビデオオブジェクトユニットを生成し、そのユニット化された符号化データを出力する。すなわち当該ユニット化器１７では、送信されてきたナビゲーションデータをパケット化（パック化）すると共にビデオ符号化データとオーディオ符号化データなどをパケット化（パック化）し、さらにナビゲーションデータのパケット（ナビゲーションパック）を先頭に配置し、その後にビデオデータのパケット（ビデオパック）とオーディオデータのパケット（オーディオパック）などを配置して、所定の１つのビデオオブジェクトユニットを生成し、この１つのビデオオブジェクトユニットを送信する。当該１つのビデオオブジェクトユニットを送信し終わると、次のビデオオブジェクトユニットのためのナビゲーションデータを受け取って同様にユニット化する。これらのユニット化された符号化データは出力端子１８から出力される。
【００７８】
上述したように本発明の第１の実施の形態のオーディオビデオ符号化装置においては、余分なメモリを持たずに、ビデオオブジェクトユニットを再生するための再生制御情報及びサーチをするためのサーチ情報を記述するナビゲーションデータを、符号化が開始される前に、記録することが可能となる。
【００７９】
また、当該第１の実施の形態のオーディオビデオ符号化装置においては、符号化レート値に対応するピクチャタイプ毎の目標符号量値を決定できるので、それらの値をＭＰＥＧの符号化を行うに当たって、統計的に最も画質が良くなる値にすることにより、どのような符号化レートでも最適な画質を維持したまま、符号化を行うことが可能となる。
【００８０】
次に、図４には、本発明の第２の実施の形態のオーディオビデオ符号化装置の概略構成を示す。なお、この図４に示すオーディオビデオ符号化装置において、図１と同一の構成要素には同じ指示符号を付し、それらの説明は省略し、図１とは異なる構成要素についてのみ説明する。
【００８１】
この図４に示す第２の実施の形態のオーディオビデオ符号化装置では、図１のピクチャ目標符号量計算器１４の代わりに、予め所定の符号化レート（転送レート）に対応するピクチャタイプ毎の目標符号量値のテーブルを記録したメモリ（ピクチャ目標符号量メモリ２０）を設けている。また、この第２の実施の形態の場合のオーディオビデオ符号量レート決定器１３は、符号量レート情報として、１Ｍ（メガ）ｂｐｓから８Ｍｂｐｓまでの値を１Ｍｂｐｓ単位で選択した８種類のレート情報を出力して、ピクチャ目標符号量メモリ２０に供給する。
【００８２】
したがって、ピクチャ目標符号量メモリ２０からは、オーディオビデオ符号量レート決定器１３にて８種類のうち何れかが選択されたレート情報に対応したピクチャタイプ毎の目標符号量値が出力されることになる。
【００８３】
表１には、８種類の符号化レート（転送レート）と、それらに対応するピクチャタイプ毎の目標符号量値のテーブルの一例を示す。すなわちこの表１のテーブルは、８種類の各々の符号化レート（転送レート）に対応して、ＭＰＥＧで符号化した場合の一般の動画像が統計的に最も画質（Ｓ／Ｎ）が良くなる符号量比率によって設定されたＩピクチャ、Ｐピクチャ、Ｂピクチャの目標符号量を表している。なお、ピクチャ目標符号量メモリ２０は、この表１のテーブルを記憶したＲＯＭで良い。
【００８４】
【表１】
0003651302.tif 000002
この第２の実施の形態のオーディオビデオ符号化装置によれば、第１の実施の形態のオーディオビデオ符号化装置と同様の効果を有するだけでなく、ピクチャ目標符号量の計算が不要であるため、構成の簡略化を図ることができる。
【００８５】
次に、図５には、本発明の第３の実施の形態のオーディオビデオ符号化装置の概略構成を示す。また、図６には当該第３の実施の形態のオーディオビデオ符号化装置の符号量制御器２１の概略構成を示す。なお、この図５及び図６において、図１，図２と同一の構成要素には同じ指示符号を付し、それらの説明は省略し、図１，図２とは異なる構成要素についてのみ説明する。
【００８６】
図５に示す第２の実施の形態のオーディオビデオ符号化装置は、ＶＬＣ器５とバッファメモリ６との間に後述する無効ビット付加器２２を設けると共に、符号量制御器２１が図６のような構成を有している。
【００８７】
図６に示す符号量制御器２１において、端子３３を介してバッファメモリ６から供給された発生符号量情報は、目標符号量発生符号量比較器３５に送られると同時に、無効ビット計算器３８にも送られる。また、端子３２を介してピクチャ目標符号量計算器１４から供給されたピクチャ目標符号量情報は、目標符号量メモリ３７に送られる。
【００８８】
目標符号量メモリ３７は、端子３２を介して供給されたピクチャ目標符号量情報を一時蓄積し、その後読み出して仮目標符号量設定器３６と無効ビット計算器３８に供給する。
【００８９】
仮目標符号量設定器３６は、目標符号量メモリ３７から供給されたピクチャ目標符号量の値の約１０％程度低めの値を、仮ピクチャ目標符号量として設定する。この仮ピクチャ目標符号量は、目標符号量発生符号量比較器３５に送られる。
【００９０】
したがって、この図６の場合、目標符号量発生符号量比較器３５は、端子３３を介してバッファメモリ６から供給された発生符号量と、仮目標符号量設定器３６にて設定された仮ピクチャ目標符号量とを比較し、仮ピクチャ目標符号量に対する発生符号量との誤差符号量を生成する。この誤差符号量情報は、フィードバック量子化値決定器３４に送られる。
【００９１】
フィードバック量子化値決定器３４では、その誤差符号量を所定の間蓄積し、仮ピクチャ目標符号量よりも発生符号量の方が大きいことを当該誤差符号量が示している場合、その誤差符号量に比例して量子化値が大きくなるように符号量制御信号を設定する（量子化スケールを大きくする）。一方、発生符号量よりも仮ピクチャ目標符号量の方が大きいことを当該誤差符号量が示している場合、その誤差符号量に比例して量子化値が小さくなるように符号量制御信号を設定する（量子化スケールを小さくする）。これにより、各ピクチャの符号量は、決定された仮ピクチャ目標符号量に制御される。
【００９２】
一方、無効ビット計算器３８では、１ピクチャ分の符号化が終了した時点で、予めバッファメモリ６から入力されたマクロブロック毎の発生符号量を加算して、１ピクチャの総発生符号量とピクチャ目標符号量との差を計算し、ピクチャ目標符号量に足りない分の符号量を、無効ビット符号量情報として出力する。この無効ビット符号量情報は、端子３９を介して図５の無効ビット付加器２２に送られる。
【００９３】
図５の無効ビット付加器２２では、ＶＬＣ器５からの符号化データに、符号量制御器２１からの無効ビット符号量情報に対応した無効ビットを付加する。これにより、当該無効ビット付加器２２から出力されるデータは、ピクチャ目標符号量に合うように正確に制御されたデータとなり、この符号化データがバッファメモリ６に送られる。
【００９４】
この第３の実施の形態のオーディオビデオ符号化装置によれば、第１の実施の形態のオーディオビデオ符号化装置と同様の効果を有するだけでなく、符号量を非常に正確に制御できるので、ナビゲーションデータの内容と実際の符号化データとが矛盾する可能性を非常に低くすることが可能である。
【００９５】
次に、図７には、本発明の第４の実施の形態のオーディオビデオ符号化装置の概略構成を示す。なお、この図７において、図１と同一の構成要素には同じ指示符号を付し、それらの説明は省略し、図１とは異なる構成要素についてのみ説明する。
【００９６】
この図７に示す第４の実施の形態のオーディオビデオ符号化装置は、後述するユニットメモリ２５とユニットアドレス検出器２６とが設けられており、バッファメモリ６から出力されたビデオ符号化データをユニットメモリ２４に送るようにしている。また、当該第４の実施の形態のオーディオビデオ符号化装置は、図１に示したピクチャ毎に目標符号量を計算するピクチャ目標符号量計算器１４に代えて、オーディオビデオ符号化レート決定器１３により決定された符号化レートに基づいて、ビデオオブジェクトユニット毎に固定的な目標符号量を計算するユニット目標符号量計算器２３が設けられ、また、図１に示した符号量制御器１２に代えて、後述するように符号量を制御する符号量制御器２４が設けられている。
【００９７】
この図７において、ユニット目標符号量計算器２３は、オーディオビデオ符号化レート決定器１３からの符号化レート情報に基づいて、ビデオオブジェクトユニット毎の固定的な目標符号量を計算する。
【００９８】
例えば、ユニット目標符号量をＴ(U)とし、また、１ビデオオブジェクトユニットを１ＧＯＰ、１ＧＯＰを１５フレームとすると、この１ビデオオブジェクトユニットは時間にして０．５秒に相当するので、当該ユニット目標符号量Ｔ(U)の計算式は例えば以下の式（７）のようになる。ただし、式中のＮは転送レート（Ｍｂｐｓ）である。
【００９９】
Ｔ(U)＝Ｎ／２（Ｍビット）             （７）
ユニット目標符号量計算器２３では、当該式（７）の計算によって、ビデオオブジェクトユニット毎の目標符号量を求める。
【０１００】
こうして決定されたユニット目標符号量は、符号量制御器２４に送信される。
【０１０１】
符号量制御器２４の基本的な構成は、前述した第１の実施の形態の図２の構成と略々同じであるが、その動作については以下のようになされている。当該第４の実施の形態の場合の符号量制御器２４の動作を、前述の図２を流用して説明する。
【０１０２】
この第４の実施の形態の場合、図２の端子３２には、ユニット目標符号量計算器２３にて決定されたビデオオブジェクトユニット毎の固定的な目標符号量情報が入力される。このビデオオブジェクトユニット毎の固定的な目標符号量情報は、図２の目標符号量発生符号量比較器３５に入力する。
【０１０３】
ここで、この第４の実施の形態の場合、符号量制御器２４では、ビデオオブジェクトユニット毎の固定的な目標符号量に基づいて、ピクチャ単位での目標符号量の計算を行い、さらにこのピクチャ単位での目標符号量に基づいて発生符号量を制御する。
【０１０４】
以下に、当該符号量制御器２４における、ビデオオブジェクトユニット毎の固定的な目標符号量に基づいたピクチャ単位での目標符号量の計算と発生符号量の制御までの流れについて説明する。
【０１０５】
先ず、符号量制御器２４では、第１のステップとして、ビデオオブジェクトユニット毎の固定的な目標符号量に基づいて各ピクチャへの符号量配分を行う。
【０１０６】
具体的に説明すると、当該符号量制御器２４では、第１のステップとして、目標符号量発生符号量比較器３５において、ＧＯＰ内の各ピクチャに対する目標符号量を、符号化対象のピクチャを含めＧＯＰ内で未だ符号化されていないピクチャに対する目標符号量Ｒを基にして配分する。この配分をＧＯＰ内の符号化ピクチャ順に繰り返す。その際、以下のような２つの仮定を用いて各ピクチャへの目標符号量を設定する。
【０１０７】
第１の仮定として、各ピクチャを符号化する際に用いる平均量子化スケールと発生符号量との積は、画面が変化しない限りピクチャタイプ毎に一定値となると仮定する。各ピクチャを符号化した後、各ピクチャタイプ毎に所定の重み付けパラメータ（例えば画面の複雑さを示す重み付けパラメータ）Ｘｉ，Ｘｐ，Ｘｂを、以下の式（８）〜式（１０）により更新する。
【０１０８】
Ｘｉ＝Ｓｉ×Ｑｉ          （８）
Ｘｐ＝Ｓｐ×Ｑｐ          （９）
Ｘｂ＝Ｓｂ×Ｑｂ          （１０）
なお、これら式中のｉはＩピクチャを、ｐはＰピクチャを、ｂはＢピクチャを表す。また、これら式中のＳｉ，Ｓｐ，Ｓｂは各ピクチャの一つ前の同ピクチャタイプの符号化結果の発生符号量であり、Ｑｉ，Ｑｐ，Ｑｂは各ピクチャの符号化時の平均量子化スケールである。すなわち、重み付けパラメータＸｉ，Ｘｐ，Ｘｂは、これら式（８）〜式（１０）から、一つ前の同ピクチャタイプの符号化結果の発生符号量Ｓと平均量子化スケールＱの積で定義される。
【０１０９】
また、第２の仮定として、独立符号化されるＩピクチャの量子化スケールＱｉを基準とし、このＩピクチャの量子化スケールＱｉとＰピクチャの量子化スケールＱｐとの比率ＫｐがＫｐ＝１．０、Ｉピクチャの量子化スケールＱｉとＢピクチャの量子化スケールＱｂとの比率ＫｂがＫｂ＝１．４となるときに、常に全体の画質が最適化（理想的な画質が達成される）されると仮定する。
【０１１０】
これら第１，第２の仮定の元で、当該第４の実施の形態では、例えば以下の式（１１）〜（１３）により、Ｉピクチャの目標符号量Ｔｉ、Ｐピクチャの目標符号量Ｔｐ、Ｂピクチャの目標符号量Ｔｂを求める。
【０１１１】
【数１】
0003651302.tif 000003
ただし、これら式（１１）〜式（１３）中のＮｐ，ＮｂはＧＯＰ内のＰピクチャやＢピクチャの未符号化ピクチャ枚数である。
【０１１２】
すなわち、先ず、ＧＯＰ内の未符号化ピクチャのうち、符号化対象となるピクチャとピクチャタイプの異なるピクチャについては、画質最適化条件のもとで、そのピクチャの発生する符号量が、符号化対象ピクチャの発生符号量の何倍となるか推定する。
【０１１３】
次に、未符号化ピクチャ全体で発生する推定符号量が、符号化対象ピクチャの何枚分の符号量に相当するかを求める。符号化対象ピクチャに対する目標符号量は、未符号化ピクチャに対する目標符号量Ｒを、この枚数で割ることによって与えられる。このようにして求めた目標符号量を基にして、各ピクチャタイプを符号化する毎に、ＧＯＰ内の未符号化ピクチャに対して目標符号量Ｒを、下記式（１４）〜式（１６）のように更新する。
【０１１４】
Ｒ＝Ｒ−Ｓｉ              （１４）
Ｒ＝Ｒ−Ｓｐ              （１５）
Ｒ＝Ｒ−Ｓｂ              （１６）
さらに、この第４の実施の形態では、目標符号量発生符号量比較器３５において、上述した第１のステップで求められた各ピクチャに対する目標符号量Ｔｉ，Ｔｐ，Ｔｂと、図２の端子３３を介してバッファメモリ６から供給された実際の発生符号量とを比較し、各ピクチャ目標符号量に対する発生符号量との誤差符号量を生成する。この誤差符号量情報は、フィードバック量子化値決定器３４に送られる。
【０１１５】
次に、第４の実施の形態の符号量制御器２４では、第２のステップとして、フィードバック量子化値決定器３４において、各ピクチャに対する目標符号量Ｔｉ，Ｔｐ，Ｔｂと実際の発生符号量とを一致させるために、各ピクチャタイプ毎に独立に設定した３種類の仮想バッファの容量を元に、量子化スケールをマクロブロック単位のフィードバック制御で求める。
【０１１６】
すなわち、先ず、ｊ番目のマクロブロック符号化に先立ち、仮想バッファの占有量を、下記式（１７）〜（１９）にて求める。
【０１１７】
【数２】
0003651302.tif 000004
これら式中のｄ０i，ｄ０p，ｄ０bは各ピクチャタイプ毎の仮想バッファの初期占有量で、Ｂjはピクチャの先頭からｊ番目のマクロブロックまでの発生ビット量、ＭＢ＿cntはＩピクチャ内のマクロブロック数である。
【０１１８】
次に、ｊ番目のマクロブロックに対する量子化スケールＱｊを下記式（２０）により計算する。
【０１１９】
Ｑj＝ｄｊ×３１／ｒ      （２０）
なお、式中のｒはフィードバックの応答速度を決定するパラメータであり、当該ｒは下記式（２１）で与えられる。
【０１２０】
ｒ＝２×bit_rate／picture_rata      （２１）
上述したアルゴリズムは、ＭＰＥＧ標準化で使用されたテストモデルＴＭ５に記載されており、１９９５年テレビジョン学会誌vol49、No.4、P４５５〜４５６にも掲載されている。
【０１２１】
これにより、各ピクチャの符号量は、決定された目標符号量に制御される。
【０１２２】
図７に戻って、ユニット目標符号量計算器２３で計算されたビデオオブジェクトユニットの目標符号量情報は、ユニットアドレス計算器１５に送信される。
【０１２３】
このユニットアドレス計算器１５では、前述した図３と同様に、サーチのためにそのビデオオブジェクトユニットを基準として少なくともその前後に再生される所定数のビデオオブジェクトユニットのアドレスＴＥＡを、ユニット目標符号量情報とオーディオビデオ符号量決定器１３から送信される符号化レート情報、すなわちビデオレートＶＲ（ｋｂｐｓ），オーディオレートＡＲ（ｋｂｐｓ）とを用いて、前記式（４）のように算出する。
【０１２４】
また、この第４の実施の形態においても前述の第１の実施の形態と同様に、オーディオデータは固定転送レートと仮定し、単位時間当たりのサンプル数を固定としているが、オーディオデータの符号化が可変長符号化であれば、ビデオデータに対応した位置の（ビデオデータが出力される時間に対応する）オーディオデータの符号量を考慮して計算すればよい。なお、このようなことは、ユニット目標符号量計算器２３、もしくは前述した第２の実施の形態の目標符号量メモリをオーディオ用に装備することにより実現可能である。
【０１２５】
次に、当該第４の実施の形態の場合、バッファメモリ６からの符号化データは、ユニットメモリ２５にも送信されて記憶される。ユニットメモリ２５に記憶されたビデオオブジェクトユニットのデータからは、当該ビデオオブジェクトユニット内の第１リファレンスのアドレス１ＶＥＡ、第２リファレンスのアドレス２ＶＥＡ、第３リファレンスのアドレス３ＶＥＡが、ユニットアドレス検出器２６により検出され、その値がユニットアドレス計算器１５に送られる。
【０１２６】
ここで、ＭＰＥＧでは、ピクチャの先頭に「Picture_start_code(0x00000100)」という一意に識別できる４バイトのコードが記述されていて、ビデオオブジェクトユニットの先頭から、２番目、５番目、８番目までのバイト数がそれぞれ、１ＶＥＡ、２ＶＥＡ、３ＶＥＡのアドレスに相当する。
【０１２７】
したがって、ユニットアドレス計算器１５では、前記図３に示したように、サーチのために、ビデオオブジェクトユニット内のＩピクチャを構成できるデータの終了アドレス１ＥＡ、ビデオオブジェクトユニット内の２番目のＰピクチャを構成できるデータの終了アドレス２ＥＡを、ユニット目標符号量計算器２３にて各ビデオオブジェクトユニット毎に計算された目標符号量情報とオーディオビデオ符号化レート決定器１３から送信される符号化レート情報、すなわちこの第４の実施の形態の場合はオーディオレートAudioRate（ｋｂｐｓ）を用いて、次式（２２）〜式（２４）のように算出する。
【０１２８】
１ＥＡ＝１ＶＥＡ＋AudioRate×１／29.97       （２２）
２ＥＡ＝２ＶＥＡ＋AudioRate×４／29.97       （２３）
３ＥＡ＝３ＶＥＡ＋AudioRate×７／29.97       （２４）
但し、これら式（２２）〜式（２４）において単位はｋビット、ビデオオブジェクトユニットは１５フレームで丁度１ＧＯＰ、ＩピクチャやＰピクチャの間にあるＢピクチャは２枚であることが分かっていると仮定する。また、オーディオデータは固定転送レートと仮定し、単位時間当たりのサンプル数を固定としているが、オーディオデータの符号化が可変長符号化であれば、ビデオデータに対応した位置の（ビデオデータが出力される時間に対応する）オーディオデータの符号量を考慮して計算すればよい。また、このようなことは、ユニット目標符号量計算器２３、もしくは前述した第２の実施の形態の目標符号量メモリをオーディオ用に装備することにより実現可能である。
【０１２９】
この第４の実施の形態のユニットアドレス計算器１５では、上述したユニットアドレス検出器２６で検出した各アドレス情報により、必要な位置までの符号量が計算でき、したがってビデオオブジェクトユニットのアドレスが計算できる。その後、これらの情報はナビゲーションデータ生成器１６に入力され、当該ナビゲーションデータ生成器１６では、そのビデオオブジェクトユニットを再生順序で第０番として、そのビデオオブジェクトユニットを基準として少なくともその再生順序で前後１５番まで再生されるビデオオブジェクトユニット、再生順序において第２０番、第３０番、第６０番、第１２０番、及び第２４０番まのビデオオブジェクトデータユニットのアドレスなど、必要に応じて、アドレスをスカラー倍することで計算し、所定の順番にレイアウトして、ユニット化器１７の送信する。
【０１３０】
ユニット化器１７では、前述の各実施の形態と同様に、端子１９から供給されたオーディオ符号化データと、バッファメモリ６から出力されユニットメモリ２５及びユニットアドレス検出器２６を介したビデオ符号化データと、ナビゲーションデータ生成器１６から供給されたナビゲーションデータとを用いて、図１１にて説明したようなビデオオブジェクトユニットを生成し、そのユニット化された符号化データを出力する。
【０１３１】
上述したように本発明の第４の実施の形態のオーディオビデオ符号化装置においては、余分なメモリを持たずに、ビデオオブジェクトユニットを再生するための再生制御情報及びサーチをするためのサーチ情報を記述するナビゲーションデータを、符号化が開始される前に、記録することが可能となる。
【０１３２】
次に、図８には、本発明の第５の実施の形態のオーディオビデオ符号化装置の概略構成を示す。なお、この図８に示す第５の実施の形態は、前述した第３の実施の形態と同様にＶＬＣ器５とバッファメモリ６の間に無効ビット付加器２２を設けると共に、上述した第４の実施の形態と同様にバッファメモリ６とユニット化器１７の間にユニットメモリ２５とユニットアドレス検出器２６を設けるようにした例である。図８の例では、図５及び図７と同一の構成要素には同じ指示符号を付してそれらの説明は省略し、図５及び図７とは異なる構成要素についてのみ説明する。
【０１３３】
すなわち、この第５の実施の形態のオーディオビデオ符号化装置において、符号量制御器２１では、前述した図６のような構成を有し、ピクチャ目標符号量から仮ピクチャ目標符号量を設定し、その仮ピクチャ目標符号量とバッファメモリ６からの発生符号量とを比較し、その比較結果に応じて量子化値を制御すると共に、無効ビットを計算する。また、無効ビット付加器２２では、ＶＬＣ器５からの符号化データに、符号量制御器２１からの無効ビット符号量情報に対応した無効ビットを付加することで、当該無効ビット付加器２２からピクチャ目標符号量に正確に合った符号化データが出力される。
【０１３４】
また、この第５の実施の形態のオーディオビデオ符号化装置において、バッファメモリ６から出力された符号化データはユニットメモリ２５に記憶され、当該ユニットメモリ２５のデータから、ユニットアドレス検出器２６によりビデオストリームの第１，第２，第３リファレンスのアドレス１ＶＥＡ，２ＶＥＡ，３ＶＥＡが検出され、さらに、ユニットアドレス計算器１５にてビデオオブジェクトユニットのアドレスを計算する。
【０１３５】
当該第５の実施の形態のオーディオビデオ符号化装置によれば、上述した第４の実施の形態と同様に、余分なメモリを持たずに、ビデオオブジェクトユニットを再生するための再生制御情報及びサーチをするためのサーチ情報を記述するナビゲーションデータを、符号化が開始される前に記録することが可能となるだけでなく、前述した第３の実施の形態と同様に、符号量を非常に正確に制御できるので、ナビゲーションデータの内容と実際の符号化データとが矛盾する可能性を非常に低くすることも可能である。
【０１３６】
【発明の効果】
請求項１及び請求項３に記載の本発明に係るデータ符号化方法及びデータ符号化装置によれば、入力データを、独立符号化するピクチャータイプと、相互に関連させて符号化するピクチャータイプとに分けて、それぞれのピクチャータイプに応じて符号化して得られる符号化データを所定時間内に再生されるべきパック列としてパック化し、得られた前記パック列を複数集めて符号化におけるひとつの独立した単位であるユニットを形成し、前記ユニットを複数個集めて符号化におけるひとつの独立した更に大きな単位であるセルを形成して符号化を行う時に、符号化を行う前記入力データの符号化レートをあらかじめ所定の値に決定し、前記入力データを前記ピクチャータイプに応じて符号化する際に発生する符号量を、前記符号化レートに対応して定まる前記ピクチャータイプ毎の目標符号量に一致させるように符号量制御して符号化し、前記目標符号量に符号化した符号化データを前記パック列としてパック化し、得られた前記パック列を複数集めて前記ユニットを形成し、前記セルを構成する前記ユニット毎に、前記符号化レートと前記所定時間と前記ユニットに対応した所定の画素単位数とにより、前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスを算出し、前記各ユニット内の各ピクチャータイプの前記符号化データのうち少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスを、前記独立符号化されるピクチャータイプの目標符号量を基に算出し、算出した前記各ユニットを基準として時間的に前後に位置する他のユニットの先頭アドレスと、前記各ユニット内の少なくとも前記独立符号化されるピクチャータイプを構成できる前記符号化データの前記各ユニット内での終了アドレスとを記述した再生情報記述用のパックを当該ユニットの先頭に格納しているので、各アドレスを、符号化が開始される前に記録することが可能であり、また、符号化レート値に対応するピクチャータイプ毎の目標符号量を決定できるので、符号化を行うに当って、それらの値を統計的にもっとも信号品質が良くなる値にすることで、どのような符号化レートでも最適な信号品質を維持したまま、符号化を行うことが可能となる。
【０１３７】
請求項２及び請求項４に記載の本発明に係るデータ符号化方法及びデータ符号化装置によれば、前記入力データの符号化時の符号量制御の際に、前記目標符号量に対して所定量だけ低く設定した仮目標符号量にて符号化を行い、当該仮目標符号量での符号化による発生符号量と前記目標符号量との差を無効ビットで調整して、前記目標符号量に制御することにより、符号量が非常に正確に制御できるので、実際の符号化データとアドレスとが矛盾する可能性を非常に低くすることが可能である。
【０１３８】
請求項５に記載の本発明に係るデータ符号化装置によれば、前記符号量制御手段で用いている前記目標符号量は、予め所定の符号化レートに対応するピクチャータイプ毎の目標符号量値を記憶した記憶手段から得ているので、データ符号化装置の構成を簡略化することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態のオーディオビデオ符号化装置の概略構成を示すブロック図である。
【図２】本発明の第１の実施の形態のオーディオビデオ符号化装置の符号量制御器の具体的構成をブロック図である。
【図３】ユニットアドレス計算器の計算内容の説明に用いる図である。
【図４】本発明の第２の実施の形態のオーディオビデオ符号化装置の概略構成を示すブロック図である。
【図５】本発明の第３の実施の形態のオーディオビデオ符号化装置の概略構成を示すブロック図である。
【図６】本発明の第３の実施の形態のオーディオビデオ符号化装置の符号量制御器の具体的構成をブロック図である。
【図７】本発明の第４の実施の形態のオーディオビデオ符号化装置の概略構成を示すブロック図である。
【図８】本発明の第５の実施の形態のオーディオビデオ符号化装置の概略構成を示すブロック図である。
【図９】従来のビデオエンコーダの概略構成を示すブロック図である。
【図１０】従来のビデオデコーダの概略構成を示すブロック図である。
【図１１】ビデオオブジェクトユニットとナビゲーションデータが配されるビデオオブジェクトセットの構成説明に用いる図である。
【符号の説明】
１…画像信号の入力端子、２、９…演算器、３…ＤＣＴ器、４…量子化器、５…ＶＬＣ、６…バッファメモリ、７…逆量子化器、８…逆ＤＣＴ器、１０…画像メモリ、１１…動き補償予測器、１２…符号量制御器（符号量制御手段）、１３…オーディオビデオ符号化レート決定器（符号化レート決定手段）、１４…ピクチャ目標符号量計算器（目標符号量決定手段）、１５…ユニットアドレス計算器（アドレス決定手段）、１６…ナビゲーションデータ生成器（記述手段）、１７…ユニット化器（ユニット化手段）、１８…出力端子、１９…オーディオ符号化のデータ入力端子、２０…ピクチャ目標符号量メモリ、２１…符号量制御器、２２…無効ビット付加器、２３…ユニット目標符号量計算器、２４…符号量制御器、２５…ユニットメモリ、２６…ユニットアドレス検出器、３１…符号量制御信号の出力端子、３２…目標符号量情報の入力端子、３３…発生符号量の入力端子、３４…フィードバック量子化値決定器、３５…目標符号量発生符号量比較器、３６…仮目標符号量設定器、３７…目標符号量メモリ、３８…無効ビット計算器、３９…無効ビット符号量情報の出力端子
【図１】
0003651302.tif 000005
【図２】
0003651302.tif 000006
【図３】
0003651302.tif 000007
【図４】
0003651302.tif 000008
【図５】
0003651302.tif 000009
【図６】
0003651302.tif 000010
【図７】
0003651302.tif 000011
【図８】
0003651302.tif 000012
【図９】
0003651302.tif 000013
【図１０】
0003651302.tif 000014
【図１１】
0003651302.tif 000015