JP4058578B2 - Encoding apparatus and encoding method - Google Patents

Encoding apparatus and encoding method Download PDF

Info

Publication number
JP4058578B2
JP4058578B2 JP10734599A JP10734599A JP4058578B2 JP 4058578 B2 JP4058578 B2 JP 4058578B2 JP 10734599 A JP10734599 A JP 10734599A JP 10734599 A JP10734599 A JP 10734599A JP 4058578 B2 JP4058578 B2 JP 4058578B2
Authority
JP
Japan
Prior art keywords
code amount
encoded data
systems
target code
encoding
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.)
Expired - Fee Related
Application number
JP10734599A
Other languages
Japanese (ja)
Other versions
JP2000299868A (en
JP2000299868A5 (en
Inventor
弘道 上野
寛司 三原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP10734599A priority Critical patent/JP4058578B2/en
Publication of JP2000299868A publication Critical patent/JP2000299868A/en
Publication of JP2000299868A5 publication Critical patent/JP2000299868A5/ja
Application granted granted Critical
Publication of JP4058578B2 publication Critical patent/JP4058578B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、符号化装置及び符号化方法に関し、例えばディジタル衛星放送に適用することができる。本発明は、1つの画面を分割して複数系統により符号化処理した後、1の符号化器により符号化処理したフォーマットにまとめる際に、全体の符号量を複数系統に割り振った符号量を、制御コードの変更により変化する符号量により補正して目標符号量を設定することにより、1つのビデオストリームを複数系統により符号化処理する場合でも、VBVバッファの破綻を有効に回避することができるようにする。
【0002】
【従来の技術】
従来、ディジタル衛星放送等においては、MPEG(Moving Picture Experts Group)の手法によりデータ圧縮して複数チャンネルのビデオデータを伝送するようになされている。
【0003】
すなわち図6は、ディジタル衛星放送システムを示すブロック図であり、このディジタル衛星放送システム1においては、地上局2より放送衛星3に放送波をアップリンクすると共に、放送衛星3より放送波をダウンリンクし、このダウンリンクされた放送波を地上の一般家庭、さらにはケーブルテレビの放送局4等で受信する。
【0004】
ここで地上局2において、符号化装置5A、5B、……、5Nは、MPEGの手法であるITU−T勧告H.262 ISO/IEC13818−2及びISO/IEC13818−3に従って、順次入力されるビデオ信号によるデータストリームDA、DB、……、DNを符号化処理してデータ圧縮し、トランスポートストリームTPA、TPB、……、TPNを生成する。
【0005】
マルチプレクサ(MUX)6は、この符号化装置5A、5B、……、5Nより出力されるトランスポートストリームTPA、TPB、……、TPNを、オーディオ信号のトランスポートストリームと共にパケット化し、電子番組ガイドのパケット等と多重化処理する。これによりマルチプレクサ6は、複数の番組と付随する情報とを時分割多重化して多重化ストリームを出力する。
【0006】
変調器(MOD)7は、この多重化ストリームを変調して変調信号を生成する。地上局2では、このようにして生成した複数の変調信号を周波数多重化して放送波を生成し、この放送波をアンテナ8より放送衛星3にアップリンクする。
【0007】
ケーブルテレビの放送局4においては、放送衛星3よりダウンリンクされる放送波をアンテナ9で受信し、この放送波をダウンコンバートして各受信端末10A、10B、……、10Nに導く。各受信端末10A、10B、……、10Nは、この放送波より所定周波数帯域の放送波を選択的に受信して多重化ストリームを復調し、この多重化ストリームより所望の番組を選択する。ケーブルテレビの放送局4は、このようにして受信した所望の番組を改めて多重化処理して一般家庭に配信する。これに対して一般家庭にあっては、1つ又は複数台の受信端末によりそれぞれ所望の番組を選択的に受信するようになされている。
【0008】
図7は、符号化装置5A〜5Nを示すブロック図である。符号化装置5A〜5Nにおいて、並べ替え回路12は、ビデオ信号によるデータストリームDA、DB、……、DNをGOP(Group Of Pictures )単位で区切り、各ピクチャーをIピクチャー、Pピクチャー又はBピクチャーに設定する。並べ替え回路12は、このピクチャーの設定に応じてピクチャー単位でデータストリームの配列を変更して出力する。
【0009】
走査変換・マクロブロック化回路13は、並べ替え回路12から出力されるデータストリームを内蔵のメモリに一旦保持して出力することにより、各ピクチャー内において、このデータストリームの配列を変更して出力する。これにより走査変換・マクロブロック化回路13は、ラスタ走査順にマクロブロックが連続するように、さらに各マクロブロック内においては、ラスタ走査順に画像データが連続するようにしてビデオ信号によるデータストリームを出力する。
【0010】
動き検出回路14は、Pピクチャー及びBピクチャーに設定されたピクチャーの各マクロブロックについて、例えばブロックマッチングの手法を適用して、所定の予測フレームを基準にした動きベクトルを検出して出力する。
【0011】
動き補償情報決定部15は、この動きベクトル検出の際に使用された予測残差に基づいて、フォーマットにより許される動き補償方法を選択し、その選択結果を動きベクトルと共に動き補償回路16に出力する。なおここでこの動き補償方法としては、例えばBピクチャーに設定されたマクロブロックについては、前予測、後予測、双方向予測がある。
【0012】
動き補償回路16は、この動き補償情報決定部15の決定に基づいて、予測フレームの画像データを動き補償して出力する。
【0013】
減算回路17は、動き検出回路14を介して走査変換・マクロブロック化回路13より出力されるデータストリームを入力し、このデータストリームがIピクチャーの場合、このデータストリームを何ら処理することなく、続くディスクリートコサイン変換回路(DCT)18に出力する。これに対してデータストリームがPピクチャー又はBピクチャーの場合、動き補償回路16の出力データをこのデータストリームから減算し、その結果得られる差分データを続くディスクリートコサイン変換回路18に出力する。
【0014】
ディスクリートコサイン変換回路18は、この減算回路18の出力データをディスクリートコサイン変換処理し、その結果得られる係数データを出力する。量子化回路19は、符号回路制御部20の制御により量子化テーブルを切り換え、順次入力される係数データを量子化処理して出力する。
【0015】
逆量子化回路21は、この量子化回路19の出力データを逆量子化処理して出力し、逆ディスクリートコサイン変換回路(逆DCT)22は、この逆量子化回路21の出力データを逆ディスクリートコサイン変換処理して出力する。加算回路23は、この逆ディスクリートコサイン変換回路21の出力データに動き補償回路16の出力データを加算し、これにより予測フレームの画像データを生成する。
【0016】
可変長符号化回路24は、量子化回路19の出力データを可変長符号化処理して出力する。このとき可変長符号化回路24は、動き補償回路16で動き補償に使用した動きベクトルの情報等を併せて符号化処理し、この符号化処理結果を多重化処理して出力する。バッファメモリ25は、この可変長符号化回路24の出力データを一旦保持して所定の伝送速度により出力する。このときバッファメモリ25は、ヘッダ等のデータを所定のタイミングで介挿し、これにより符号化結果であるトランスポートストリームを所定フォーマットにより出力する。
【0017】
符号化制御部20は、このバッファメモリ25の空き容量を監視し、この監視結果より、量子化回路19における量子化テーブルを切り換え、これにより符号発生量を一定の範囲に設定して、VBV(Video Buffering Verifier)バッファが破綻しないようにする。なおここでVBVバッファは、復号側に配置されるバッファメモリであり、このVBVバッファがオーバーフロー、アンダーフローすると、復号結果において画像が途絶えたりすることになる。符号化制御部20では、復号側において正しくトランスポートストリームを復号できるように、発生符号量を制御するようになされている。
【0018】
【発明が解決しようとする課題】
ところでこの種の符号化装置においては、地上波の放送等に使用される4:3のアスペクト比による通常のビデオ信号を符号化処理する符号化装置と、11:9のアスペクト比による高品位のビデオ信号を符号化処理する符号化装置とがある。ディジタル衛星放送にあっては、これらのビデオ信号による放送が混在する場合も考えられることにより、通常のビデオ信号を符号化処理する符号化装置を使用して、必要に応じて高品位のビデオ信号を符号化処理することができれば、便利であると考えられる。
【0019】
この場合、例えば図8に示すように、高品位のビデオ信号による1つの画面を複数の領域に分割して符号化処理した後、符号化処理結果を1つに纏める方法が考えられる。
【0020】
すなわちこの図8に示す場合にあっては、1つの画面を水平方向に3分割、垂直方向に2分割し、各領域のビデオ信号をそれぞれ通常の符号化装置A〜Fにより符号化処理する。このようにすると、各符号化装置A〜Fにおいては、図9及び図10に示すように、マクロブロックを単位にした水平方向に連続する領域であるスライス層を単位にして、同時並列的に符号化結果が出力される(図10(A)〜(F))。
【0021】
これにより元の1画面のスライス層を単位にして符号化データが連続するようにこれらの符号化データを時分割多重化して並べ直すことにより、1の符号化装置により符号化処理した配列による符号化結果を得ることができる(図10(G))。
【0022】
さらに各符号化装置より出力される符号化データにおいては、図11(A)に示すように、1つのピクチャーの先頭にヘッダーが割り当てられていることにより、各符号化装置より出力される符号化データのヘッダーA〜Fを取り除くと共に、元の1画面に1のヘッダーTを割り当てて、ヘッダーについて、1の符号化装置により符号化処理したフォーマットに変更することができる(図11(B))。
【0023】
また図12(A)に示すように、各符号化装置より出力される符号化データにおいては、各スライス層の先頭にマクロブロックアドレスインクリメント(MB Adress Increment :符号MIにより示す)が配置され、このマクロブロックアドレスインクリメントのデータにより直前のスライス層の終了端マクロブロックからのマクロブロック数が記述される。従って各符号化装置より出力される符号化データにおいては、各スライス層のマクロブロックアドレスインクリメントにおいては、値1にセットされていることになる。
【0024】
これにより図12(B)に示すように、各マクロブロックアドレスインクリメントを、元の1画面におけるスライス層の終了端のマクロブロックを基準にしたマクロブロック数に設定し直して、マクロブロックアドレスインクリメントについても、1の符号化装置により符号化処理したフォーマットに変換することができる。なおこの図12においては、各符号化装置において、水平方向40マクロブロック(40MB)、垂直方向30マクロブロック(30MB)により符号化処理していることにより、最も走査開始端側の領域については、何らマクロブロックアドレスインクリメントを変更する必要がないのに対し、続く水平方向走査側の第2及び第3の領域については、マクロブロックアドレスインクリメントをそれぞれ値1から値41、値1から値81に変更することが必要になる。
【0025】
ところがこのようにしてビデオストリームを複数系統により符号化処理して1の符号化処理によるフォーマットにまとめる場合、VBVバッファが破綻する恐れがある。
【0026】
すなわち各符号化装置において、マクロブロックアドレスインクリメント等の制御コードを含めた発生符号量が目標符号量になるように量子化テーブルを切り換えることにより、VBVバッファが破綻しないように発生符号量が制御される。
【0027】
ところがこのようにヘッダー、マクロブロックアドレスインクリメントを設定直すと、各符号化装置に設定した目標符号量と、全体をまとめたトランスポートストリームおける発生符号量とが相違するようになる。
【0028】
具体的に、この場合、ヘッダーにおいては、6個のヘッダーが1つの纏められることにより、纏められた符号化データにおいては、各符号化装置に設定された目標符号量に比して、実際の発生符号量が低下することになる。
【0029】
これに対してマクロブロックアドレスインクリメントは、可変長符号化処理されて伝送されることにより、値1の場合、1ビット長により、値41の場合、18ビット長により、値81の場合、30ビット長により伝送される。これにより値1のビット長によるマクロブロックアドレスインクリメントを値41に変更すると、符号量は2バイト+1ビット(18ビット−1ビット=17ビット)増加し、この場合伝送の際の0スタッフィングにより、結局1スライス層当たり3バイト符号量が増加することになる。従ってこの場合、1台の符号化装置で、垂直方向にスライス層を33マクロブロック分生成することにより、このマクロブロックアドレスインクリメントの変更により、全体として198バイト(3バイト×33マクロブロック×2)も符号量が増大することになる。
【0030】
また値1のビット長によるマクロブロックアドレスインクリメントを値81に変更すると、符号量は3バイト+5ビット(30ビット−1ビット=29ビット)増加し、この場合、伝送の際の0スタッフィングにより、結局1スライス層当たり、4バイト符号量が増加することになる。従ってこの場合、1台の符号化装置で、垂直方向にスライス層を33マクロブロック分生成することにより、このマクロブロックアドレスインクリメントの変更により、全体として264バイト(4バイト×33マクロブロック×2)も符号量が増大することになる。
【0031】
従って全体としてはマクロブロックアドレスインクリメントの変更により、各符号化装置に設定された目標符号量に比して、462バイトも符号量が増大することになる。このように目標符号量と実際の発生符号量と相違すると、VBVバッファの破綻を完全に防止できなくなる。
【0032】
本発明は以上の点を考慮してなされたもので、1つのビデオストリームを複数系統により符号化処理する場合でも、VBVバッファの破綻を有効に回避することができる符号化装置及び符号化方法を提案しようとするものである。
【0033】
【課題を解決するための手段】
かかる課題を解決するため請求項1、請求項6、請求項7又は請求項11に係る発明においては、符号化装置又は符号化方法に適用して、複数系統の符号化データを多重化処理すると共に、ヘッダを変更し、又はヘッダ及びマクロブロックアドレスインクリメントを変更し、入力ビデオ信号を1つの符号化器で符号化処理したフォーマットによる総合の符号化データを生成するようにして、総合の符号化データにおける符号量が所定値となるように、所定値を複数系統の符号化手段に割り振った当初設定の符号量を、前記総合の符号化データでヘッダを変更することにより変化する符号量、又は前記総合の符号化データでヘッダ及びマクロブロックアドレスインクリメントを変更することにより変化する符号量で補正して、各系統の目標符号量を設定する。
【0034】
請求項1、請求項6、請求項7又は請求項11に係る構成によれば、1つの画面を分割して複数系統により符号化処理した後、1の符号化器により符号化処理したフォーマットによる総合の符号化データに変換する場合でも、この総合の符号化データにおける符号量を所望の符号量とすることができ、これによりVBVバッファの破綻を有効に回避することができる。
【0035】
【発明の実施の形態】
以下、適宜図面を参照しながら本発明の実施の形態を詳述する。
【0036】
(1)第1の実施の形態
(1−1)第1の実施の形態の構成
図2は、本発明の第1の実施の形態に係る符号化装置を示すブロック図である。この符号化装置31において、フレームメモリ(FM)32A〜32Fは、高品位のビデオ信号によるデータストリームD1をそれぞれ所定期間の間取り込むと共に、取り込んだビデオストリームD1を順次出力し、これにより図8について上述したと同様に、1つの画面を6分割して形成される各領域の画像データを続く符号化器33A〜33Fに出力する。
【0037】
符号化器33A〜33Fは、図7について上述した符号化装置と同様に構成され、それぞれフレームメモリ32A〜32Fから出力される画像データを符号化処理してトランスポートストリームDFA〜DFFを出力する。この処理において、各符号化器33A〜33Fは、中央処理ユニット(CPU)34により設定される目標符号量を基準にして、発生符号量がこの目標符号量となるように量子化テーブルを設定してトランスポートストリームDFA〜DFFを生成する。
【0038】
ストリーム接続器35は、これらトランスポートストリームDFA〜DFFの配列を並べ直して時分割多重化すると共に、図11及び図12について上述したように、ヘッダー等の制御コードを変更することにより、これらトランスポートストリームDFA〜DFFをまとめて、1つの符号化器により生成した場合と同一フォーマットによるトランスポートストリームTPを出力する。
【0039】
中央処理ユニット34は、このトランスポートストリームTPに割り当てる総合の符号量を符号化器33A〜33Fに割り振った当初設定の符号量を、ヘッダー、マクロブロックアドレスインクリメントである制御コードの変更により変化する符号量により補正して、各符号化器33A〜33Fの目標符号量Tを設定する。なおこの実施の形態において、この当初設定の符号量は、符号化器33A〜33Fに符号量を等分に割り振った等分の符号量Tpである。これにより中央処理ユニット34は、ストリーム接続器35における制御コードの変更に伴う符号量の変化を考慮して、各符号化器33A〜33Fに目標符号量を設定する。
【0040】
具体的に中央処理ユニット34は、図1に示すように、最も走査開始端側の領域より生成されるトランスポートストリームDFAについては、ストリーム接続器35においてヘッダーが単に付け替えられるだけであり(図1(A)及び(B)、さらにヘッダーについては符号量が変化しないことにより、このトランスポートストリームDFAを生成する符号化器32Aに対しては、トランスポートストリームTPにおける目標符号量の1/6の符号量Tbを目標符号量に設定する。
【0041】
これに対して他の領域より生成されるトランスポートストリームDFB〜DFFにおいては、ストリーム接続器35において、ヘッダーが取り除かれ、また必要に応じてマクロブロックアドレスインクリメントが更新されることにより、次式により示す符号量Tを目標符号量に設定する。
【0042】
【数1】

Figure 0004058578
【0043】
なおここで、Tbは、トランスポートストリームTPの目標符号量の1/6の符号量であり、Hは、ヘッダーの符号量、ΔMは、更新により変化するマクロブロックアドレスインクリメントの符号量である。
【0044】
これによりこの実施の形態では、符号化器33B〜33Fについては、符号化処理結果よりヘッダーを取り除くと共に、マクロブロックアドレスインクリメントを変更したとき、トランスポートストリームTPの目標符号量の1/6の符号量Tpとなるように目標符号量が設定されるようになされている。
【0045】
(1−2)第1の実施の形態の動作
以上の構成において、順次入力される高品位のビデオ信号によるデータストリームD1は(図2)、フレームメモリ32A〜32Fに選択的に入力され、これによりこのデータストリームD1の1画面を6分割した各領域の画像データがフレームメモリ32A〜32Fにそれぞれ入力される。さらにこれら各画像データがそれぞれ符号化器33A〜33Fにより符号化処理される。
【0046】
さらにその符号化処理結果である符号化データDFA〜DFFがストリーム接続器35に入力され、ここでマクロブロック単位でラスタ走査順に順次符号化結果が連続するように配列されて1つのストリームに変換される。さらに元の1つのピクチャーに1つのヘッダを割り当てるように、不要なヘッダが除去され、またこの残る1つのヘッダが元の1画面に対応するように変更される。さらに正しいマクロブロックアドレスを示すようにマクロブロックアドレスインクリメントが変更され、これらにより複数系統による符号化処理結果が、1の符号化器による符号化処理結果のフォーマットに変換される。
【0047】
これにより符号化装置31においては、通常のビデオ信号を符号化処理する符号化器33A〜33Fを用いて高品位のビデオ信号を符号化処理することができ、例えば通常のビデオ信号と高品位のビデオ信号とを伝送する放送システムに適用して、わざわざ高品位のビデオ信号用の符号化装置を設置しなくても、柔軟に設備を運用してこれらのビデオ信号を伝送することが可能となる。
【0048】
このようにしてビデオ信号を符号化処理して伝送する際に、符号化装置31においては、中央処理ユニット34により、トランスポートストリームTPに割り当てる符号量を符号化器33A〜33Fに割り振った当初設定の符号量Tpに対して、この符号量Tpをヘッダ、マクロブロックアドレスインクリメントである制御コードの変更により変化する符号量により補正して、各符号化器33A〜33Fの目標符号量Tが設定され、この目標符号量Tにより各符号化器33A〜33Fで符号化データが生成される。
【0049】
これにより符号化装置31では、ストリーム接続器35における制御コードの変更に伴う符号量の変化を考慮して、各符号化器33A〜33Fに目標符号量が設定され、トランスポートストリームにおける最終的な目標符号量が所定値に維持される(この場合は符号量Tb×6による符号量)。これにより符号化装置31では、複数系統による符号化データより1系統の符号化データを生成する場合でも、この1系統の符号化データを意図した符号量により生成することができ、これによりVBVバッファの破綻を防止することができる。
【0050】
(1−3)第1の実施の形態の効果
以上の構成によれば、トランスポートストリームTPに割り当てる符号量を符号化器33A〜33Fに割り振った符号量Tpに対して、この符号量Tpをヘッダ、マクロブロックアドレスインクリメントの制御コードの変更により変化する符号量により補正して、各符号化器33A〜33Fの目標符号量Tを設定することにより、複数系統による符号化データをまとめて1系統の符号化データを生成する場合でも、この1系統の符号化データを意図した符号量により生成することができ、これによりVBVバッファの破綻を防止することができる。
【0051】
(2)第2の実施の形態
図3は、図1との対比により目標符号量の設定の説明に供する略線図である。第2の実施の形態に係る符号化装置においては、この目標符号量の設定に係る中央処理ユニットの構成が異なる点を除いて第1の実施の形態に係る符号化装置31と同一に構成される。従って、以下の説明においては、図2の構成を流用して説明し、重複した説明は省略する。
【0052】
この実施の形態において、中央処理ユニットは、制御コードの変更により変化する各系統の符号化データFDA〜DFF全体の符号量を符号化器32A〜32に等分に配分して、目標符号量を設定する。なお図2においては、ヘッダの除去により変化する符号量については、記載を省略して説明する。
【0053】
これによりこの実施の形態においては、制御コードを除いた実質的に画像データの符号化に割り当てる符号量が、第1の実施の形態に比して、各符号化器32A〜32Fで等分に近づくようになされている。
【0054】
図3に示す構成によれば、制御コードの変更により変化する各系統の符号化データFDA〜DFF全体の符号量を符号化器32A〜32に等分に配分して、目標符号量を設定するようにしても、第1の実施の形態と同様の効果を得ることができる。
【0055】
また制御コードを除いた実質的に画像データの符号化に割り当てる符号量が、第1の実施の形態に比して、各符号化器32A〜32Fで等分に近づくことにより、各符号化器32A〜32Fによる画質の差異を低減することができる。
【0056】
(3)第3の実施の形態
図4は、図1との対比により目標符号量の設定の説明に供する略線図である。第3の実施の形態に係る符号化装置においては、この目標符号量の設定に係る中央処理ユニットの構成が異なる点を除いて第1の実施の形態に係る符号化装置31と同一に構成される。従って、以下の説明においては、図2の構成を流用して説明し、重複した説明は省略する。
【0057】
この実施の形態において、中央処理ユニットは、複数系統の符号化データDFA〜DFFにおける制御コードを除いた符号量が等しくなるように、各符号化データFDA〜DFFの目標符号量を設定する。
【0058】
図4に示す構成によれば、複数系統の符号化データDFA〜DFFにおける制御コードを除いた符号量が等しくなるように、制御コードの変更により変化する各系統の符号化データFDA〜DFF全体の符号量を配分して目標符号量を設定するようにしても、第1の実施の形態と同様の効果を得ることができる。
【0059】
また制御コードを除いた実質的に画像データの符号化に割り当てる符号量が各符号化器32A〜32Fで等しいことにより、第2の実施の形態に比して、さらに一段と各符号化器32A〜32Fによる画質の差異を低減することができる。
【0060】
(4)第4の実施の形態
図5は、図1との対比により目標符号量の設定の説明に供する略線図である。第4の実施の形態に係る符号化装置においては、この目標符号量の設定に係る中央処理ユニットの構成が異なる点を除いて第1の実施の形態に係る符号化装置31と同一に構成される。従って、以下の説明においては、図2の構成を流用して説明し、重複した説明は省略する。
【0061】
この実施の形態において、中央処理ユニットは、制御コードの変更により変化する複数系統の符号化データ全体の符号量を、一定の符号化処理の条件により発生する符号量に応じて適応的に配分して、目標符号量を設定する。
【0062】
具体的に、中央処理ユニットは、例えば動きベクトルを検出する際に検出される差分絶対値和を困難度のデータとして使用して、この困難度のデータにより一定の符号化処理の条件により発生する符号量を検出する。さらにこの困難度のデータにより制御コードの変更により変化する複数系統の符号化データ全体の符号量を適応的に配分する。
【0063】
図5に示す構成によれば、制御コードの変更により変化する複数系統の符号化データ全体の符号量を、一定の符号化処理の条件により発生する符号量に応じて配分して目標符号量を設定するようにしても、第1の実施の形態と同様の効果を得ることができる。
【0064】
さらに符号化の困難度に応じて符号量を配分することにより、さらに一段と各符号化器32A〜32Fによる画質の差異を低減することができる。
【0065】
(5)他の実施の形態
なお上述の実施の形態においては、1つの画面を水平方向に3等分、垂直方向に2等分して複数系統の符号化データを生成する場合について述べたが、本発明はこれに限らず、例えば各スライス層を順次循環的に各符号化器に割り当てて複数系統の符号化データを生成する場合等、1つの画面を複数の領域に分割して複数系統の符号化データを生成する場合に広く適用することができる。なお、各スライス層を順次循環的に各符号化器に割り当てて複数系統の符号化データを生成する場合等、元の1画面のスライス層を単位にして画面を分割する場合にあっては、マクロブロックアドレスインクリメントは変更を要しないことにより、この場合にはヘッダの変更により変化する符号量だけ考慮して目標符号量を設定すれば良い。
【0066】
また上述の実施の形態においては、1画面を分割して各符号化器で符号化処理する場合について述べたが、本発明はこれに限らず、例えば連続する2つのフレームをそれぞれ3台の符号化器に割り当てて符号化処理する場合等にも広く適用することができる。なおこの場合1つの画面を3つの領域に分割することになる。
【0067】
また上述の実施の形態においては、MPEGによりビデオ信号を符号化処理する場合について述べたが、本発明はこれに限らず、種々のフォーマットにより符号化処理する場合に広く適用することができる。
【0068】
【発明の効果】
上述のように本発明によれば、1つの画面を分割して複数系統により符号化処理した後、1の符号化器により符号化処理したフォーマットにまとめる際に、全体の符号量を複数系統に割り振った符号量を、制御コードの変更により変化する符号量により補正して目標符号量を設定することにより、1つのビデオストリームを複数系統により符号化処理する場合でも、VBVバッファの破綻を有効に回避することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る符号化装置の動作の説明に供する略線図である。
【図2】図1の符号化装置の全体構成を示すブロック図である。
【図3】本発明の第2の実施の形態に係る符号化装置の動作の説明に供する略線図である。
【図4】本発明の第3の実施の形態に係る符号化装置の動作の説明に供する略線図である。
【図5】本発明の第4の実施の形態に係る符号化装置の動作の説明に供する略線図である。
【図6】ディジタル衛星放送システムを示すブロック図である。
【図7】従来の符号化装置の構成を示すブロック図である。
【図8】画面の分割を示す略線図である。
【図9】スライス層の説明に供する略線図である。
【図10】複数系統の符号化データより1系統の符号化データを生成する説明に供する略線図である。
【図11】ヘッダーの処理の説明に供する略線図である。
【図12】マクロブロックアドレスインクリメントの変更の説明に供する略線図である。
【符号の説明】
5A〜5N、31……符号化装置、32A〜32F……フレームメモリ、32A〜33F……符号化器、34……中央処理ユニット、35……ストリーム接続器[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an encoding device and an encoding method, and can be applied to, for example, digital satellite broadcasting. The present invention divides one screen and performs encoding processing by a plurality of systems, and then collects the entire code amount allocated to a plurality of systems when summarizing into a format encoded by one encoder. By correcting the amount of code that is changed by changing the control code and setting the target amount of code, even when one video stream is encoded by a plurality of systems, it is possible to effectively avoid a VBV buffer failure. To.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, in digital satellite broadcasting or the like, a plurality of channels of video data are transmitted after being compressed by a moving picture experts group (MPEG) technique.
[0003]
That is, FIG. 6 is a block diagram showing a digital satellite broadcast system. In this digital satellite broadcast system 1, the broadcast wave is uplinked from the ground station 2 to the broadcast satellite 3, and the broadcast wave is downlinked from the broadcast satellite 3. Then, the downlink broadcast wave is received by a general household on the ground, and further by a cable television broadcasting station 4 or the like.
[0004]
Here, in the ground station 2, the encoding devices 5A, 5B,..., 5N are ITU-T recommendation H.264, which is an MPEG technique. 262 In accordance with ISO / IEC 13818-2 and ISO / IEC 13818-3, the data streams DA, DB,..., DN are sequentially encoded and compressed by the video signals input thereto, and the transport streams TPA, TPB,. , TPN is generated.
[0005]
The multiplexer (MUX) 6 packetizes the transport streams TPA, TPB,..., TPN output from the encoding devices 5A, 5B,. Multiplexed with packets. Thereby, the multiplexer 6 time-division-multiplexes a plurality of programs and accompanying information and outputs a multiplexed stream.
[0006]
A modulator (MOD) 7 modulates the multiplexed stream to generate a modulated signal. In the ground station 2, a plurality of modulated signals generated in this way are frequency-multiplexed to generate a broadcast wave, and this broadcast wave is uplinked to the broadcast satellite 3 from the antenna 8.
[0007]
In the broadcast station 4 of the cable television, the broadcast wave downlinked from the broadcast satellite 3 is received by the antenna 9, and this broadcast wave is down-converted and guided to the receiving terminals 10A, 10B,. Each receiving terminal 10A, 10B,..., 10N selectively receives a broadcast wave of a predetermined frequency band from the broadcast wave, demodulates the multiplexed stream, and selects a desired program from the multiplexed stream. The broadcast station 4 of the cable television again multiplexes the desired program received in this way and distributes it to a general household. On the other hand, in a general home, a desired program is selectively received by one or a plurality of receiving terminals.
[0008]
FIG. 7 is a block diagram showing the encoding devices 5A to 5N. In the encoding devices 5A to 5N, the rearrangement circuit 12 divides the data streams DA, DB,..., DN by video signals in units of GOP (Group Of Pictures), and each picture is divided into an I picture, a P picture, or a B picture. Set. The rearrangement circuit 12 changes the arrangement of the data stream in units of pictures according to the setting of the picture and outputs it.
[0009]
The scan conversion / macroblocking circuit 13 temporarily holds the data stream output from the rearrangement circuit 12 in the built-in memory and outputs it, thereby changing the arrangement of the data stream in each picture and outputting the data stream. . As a result, the scan conversion / macroblocking circuit 13 outputs a data stream of a video signal so that the macroblocks are continuous in the raster scan order, and in each macroblock, the image data is continuous in the raster scan order. .
[0010]
The motion detection circuit 14 detects and outputs a motion vector based on a predetermined prediction frame, for example, by applying a block matching method to each macroblock of a picture set as a P picture and a B picture.
[0011]
The motion compensation information determination unit 15 selects a motion compensation method allowed by the format based on the prediction residual used in the motion vector detection, and outputs the selection result to the motion compensation circuit 16 together with the motion vector. . Here, as this motion compensation method, for example, for a macroblock set in a B picture, there are pre-prediction, post-prediction, and bidirectional prediction.
[0012]
Based on the determination of the motion compensation information determination unit 15, the motion compensation circuit 16 performs motion compensation on the image data of the prediction frame and outputs the motion compensation image data.
[0013]
The subtraction circuit 17 receives the data stream output from the scan conversion / macroblocking circuit 13 via the motion detection circuit 14, and if this data stream is an I picture, the data stream continues without any processing. Output to the discrete cosine transform circuit (DCT) 18. On the other hand, when the data stream is a P picture or a B picture, the output data of the motion compensation circuit 16 is subtracted from the data stream, and the resulting difference data is output to the subsequent discrete cosine transform circuit 18.
[0014]
The discrete cosine transform circuit 18 performs discrete cosine transform processing on the output data of the subtraction circuit 18 and outputs coefficient data obtained as a result. The quantization circuit 19 switches the quantization table under the control of the encoding circuit control unit 20, quantizes the sequentially input coefficient data, and outputs the result.
[0015]
The inverse quantization circuit 21 performs inverse quantization processing on the output data of the quantization circuit 19 and outputs the result. The inverse discrete cosine transform circuit (inverse DCT) 22 outputs the output data of the inverse quantization circuit 21 to the inverse discrete cosine. Convert and output. The adder circuit 23 adds the output data of the motion compensation circuit 16 to the output data of the inverse discrete cosine transform circuit 21, thereby generating image data of the predicted frame.
[0016]
The variable length coding circuit 24 subjects the output data of the quantization circuit 19 to variable length coding processing and outputs the result. At this time, the variable length coding circuit 24 performs coding processing together with information on the motion vector used for motion compensation by the motion compensation circuit 16, and multiplexes and outputs the result of the coding processing. The buffer memory 25 temporarily holds the output data of the variable length coding circuit 24 and outputs it at a predetermined transmission rate. At this time, the buffer memory 25 inserts data such as a header at a predetermined timing, and thereby outputs a transport stream as an encoding result in a predetermined format.
[0017]
The encoding control unit 20 monitors the free capacity of the buffer memory 25, and switches the quantization table in the quantization circuit 19 based on the monitoring result, thereby setting the code generation amount within a certain range and VBV ( Video Buffering Verifier) Ensure that the buffer does not fail. Here, the VBV buffer is a buffer memory arranged on the decoding side. If this VBV buffer overflows or underflows, the image is interrupted in the decoding result. The encoding control unit 20 controls the amount of generated code so that the transport stream can be correctly decoded on the decoding side.
[0018]
[Problems to be solved by the invention]
By the way, in this type of encoding apparatus, an encoding apparatus that encodes a normal video signal with an aspect ratio of 4: 3 used for terrestrial broadcasting and the like, and a high-quality image with an aspect ratio of 11: 9 are used. There is an encoding device that encodes a video signal. In digital satellite broadcasting, it can be considered that broadcasts of these video signals are mixed, so that a high-definition video signal can be used as required by using an encoding device that encodes a normal video signal. If it can be encoded, it is considered convenient.
[0019]
In this case, for example, as shown in FIG. 8, it is possible to divide one screen using a high-definition video signal into a plurality of regions and perform encoding processing, and then combine the encoding processing results into one.
[0020]
That is, in the case shown in FIG. 8, one screen is divided into three parts in the horizontal direction and divided into two parts in the vertical direction, and the video signals in each region are encoded by ordinary encoding devices A to F, respectively. In this way, in each of the encoding devices A to F, as shown in FIG. 9 and FIG. 10, the slice layers that are continuous regions in the horizontal direction in units of macroblocks are used as a unit and simultaneously in parallel. The encoding result is output (FIGS. 10A to 10F).
[0021]
As a result, these encoded data are time-division multiplexed and rearranged so that the encoded data is continuous in units of the original slice layer of one screen, and thereby the code by the array subjected to the encoding process by one encoding device. Can be obtained (FIG. 10G).
[0022]
Further, in the encoded data output from each encoding device, as shown in FIG. 11 (A), since a header is assigned to the head of one picture, the encoding data output from each encoding device is provided. The headers A to F of the data are removed, and one header T is assigned to the original one screen, and the header can be changed to a format encoded by one encoding device (FIG. 11B). .
[0023]
Also, as shown in FIG. 12A, in the encoded data output from each encoding device, a macro block address increment (MB Address Increment: indicated by a code MI) is arranged at the head of each slice layer. The macro block address increment data describes the number of macro blocks from the end macro block of the immediately preceding slice layer. Accordingly, in the encoded data output from each encoding device, the value 1 is set in the macro block address increment of each slice layer.
[0024]
As a result, as shown in FIG. 12B, each macro block address increment is reset to the number of macro blocks based on the macro block at the end of the slice layer in the original one screen. Also, it can be converted into a format encoded by one encoding device. In FIG. 12, each encoding device performs encoding processing with 40 macroblocks (40 MB) in the horizontal direction and 30 macroblocks (30 MB) in the vertical direction. While there is no need to change the macroblock address increment, the macroblock address increment is changed from the value 1 to the value 41 and from the value 1 to the value 81 for the second and third regions on the subsequent horizontal scanning side. It becomes necessary to do.
[0025]
However, when a video stream is encoded by a plurality of systems and combined into a format by one encoding process in this way, the VBV buffer may break down.
[0026]
That is, in each encoding device, the generated code amount is controlled so that the VBV buffer does not fail by switching the quantization table so that the generated code amount including the control code such as macro block address increment becomes the target code amount. The
[0027]
However, if the header and macroblock address increment are reset as described above, the target code amount set in each encoding device and the generated code amount in the transport stream that is a whole are different.
[0028]
Specifically, in this case, in the header, six headers are combined into one, and in the combined encoded data, the actual code amount is set as compared with the target code amount set in each encoding device. The generated code amount is reduced.
[0029]
On the other hand, the macroblock address increment is transmitted after being subjected to variable length coding processing, so that the value 1 is 1 bit length, the value 41 is 18 bits length, the value 81 is 30 bits. Transmitted by length. As a result, when the macroblock address increment due to the bit length of the value 1 is changed to the value 41, the code amount increases by 2 bytes + 1 bit (18 bits-1 bit = 17 bits). The amount of 3-byte code per slice layer will increase. Therefore, in this case, the slice layer is generated for 33 macroblocks in the vertical direction by one encoding device, and the macroblock address increment is changed to 198 bytes as a whole (3 bytes × 33 macroblocks × 2). Also, the amount of code increases.
[0030]
If the macroblock address increment due to the bit length of the value 1 is changed to the value 81, the code amount increases by 3 bytes + 5 bits (30 bits-1 bits = 29 bits). In this case, due to 0 stuffing at the time of transmission, The 4-byte code amount increases per slice layer. Therefore, in this case, the slice layer is generated for 33 macroblocks in the vertical direction by one encoding device, and as a result of the change of the macroblock address increment, 264 bytes as a whole (4 bytes × 33 macroblocks × 2) Also, the amount of code increases.
[0031]
Therefore, as a whole, the code amount increases by 462 bytes compared to the target code amount set in each encoding device by changing the macroblock address increment. Thus, if the target code amount is different from the actual generated code amount, the VBV buffer failure cannot be completely prevented.
[0032]
The present invention has been made in consideration of the above points. An encoding apparatus and an encoding method capable of effectively avoiding a VBV buffer failure even when one video stream is encoded by a plurality of systems. It is what we are going to propose.
[0033]
[Means for Solving the Problems]
In order to solve this problem, claim 1 is provided. , Claim 6, 7 or 11 In the invention according to the present invention, it is applied to an encoding device or an encoding method, Multiplexed encoded data is multiplexed, and the header is changed, or the header and macroblock address increment are changed, and the total encoded data in a format in which the input video signal is encoded by one encoder. So that the code amount in the overall encoded data becomes a predetermined value, the initial code amount allocated to the plurality of systems of encoding means is used as a header with the overall encoded data. Is corrected by changing the code amount that changes by changing the header amount and the macro block address increment in the total encoded data, Set the target code amount.
[0034]
Claim 1 , Claim 6, 7 or 11 According to the configuration 1 Even when converting one screen into a plurality of systems and then converting to a total encoded data in a format encoded by one encoder, the code amount in the total encoded data is set to a desired value. The amount of code can be set, and thus the failure of the VBV buffer can be effectively avoided.
[0035]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings as appropriate.
[0036]
(1) First embodiment
(1-1) Configuration of the first embodiment
FIG. 2 is a block diagram showing an encoding apparatus according to the first embodiment of the present invention. In this encoding device 31, the frame memories (FM) 32A to 32F capture a data stream D1 of a high-quality video signal for a predetermined period, respectively, and sequentially output the captured video stream D1, thereby FIG. Similarly to the above, the image data of each area formed by dividing one screen into 6 is output to the subsequent encoders 33A to 33F.
[0037]
The encoders 33A to 33F are configured in the same manner as the encoding apparatus described above with reference to FIG. 7, encode the image data output from the frame memories 32A to 32F, respectively, and output the transport streams DFA to DFF. In this processing, each of the encoders 33A to 33F sets a quantization table so that the generated code amount becomes the target code amount with reference to the target code amount set by the central processing unit (CPU) 34. To generate transport streams DFA to DFF.
[0038]
The stream connector 35 rearranges the arrangement of these transport streams DFA to DFF and performs time division multiplexing, and changes the control code such as the header as described above with reference to FIGS. The port streams DFA to DFF are collected and a transport stream TP having the same format as that generated by one encoder is output.
[0039]
The central processing unit 34 changes the initial code amount assigned to the encoders 33A to 33F to the total code amount assigned to the transport stream TP by changing the control code that is the header and macroblock address increment. The target code amount T of each of the encoders 33A to 33F is set by correcting with the amount. In this embodiment, the initially set code amount is an equal code amount Tp obtained by equally allocating the code amount to the encoders 33A to 33F. Thereby, the central processing unit 34 sets the target code amount in each of the encoders 33A to 33F in consideration of the change in the code amount accompanying the change of the control code in the stream connector 35.
[0040]
Specifically, as shown in FIG. 1, the central processing unit 34 simply replaces the header in the stream connector 35 with respect to the transport stream DFA generated from the region closest to the scanning start end (FIG. 1). (A) and (B), and the code amount of the header does not change, so that the encoder 32A that generates this transport stream DFA has 1/6 of the target code amount in the transport stream TP. The code amount Tb is set to the target code amount.
[0041]
On the other hand, in the transport streams DFB to DFF generated from other areas, the stream connector 35 removes the header and updates the macroblock address increment as necessary. The indicated code amount T is set as the target code amount.
[0042]
[Expression 1]
Figure 0004058578
[0043]
Here, Tb is Trang The code amount is 1/6 of the target code amount of the sport stream TP, H is the code amount of the header, and ΔM is the code amount of the macroblock address increment that changes due to the update.
[0044]
Thereby, in this embodiment, for the encoders 33B to 33F, when the header is removed from the encoding processing result and the macroblock address increment is changed, Trang The target code amount is set so that the code amount Tp is 1/6 of the target code amount of the sport stream TP.
[0045]
(1-2) Operation of the first embodiment
In the above configuration, the data stream D1 by the high-definition video signal sequentially input (FIG. 2) is selectively input to the frame memories 32A to 32F, whereby each screen obtained by dividing one screen of this data stream D1 into six parts The image data of the area is input to the frame memories 32A to 32F, respectively. Further, these image data are encoded by the encoders 33A to 33F, respectively.
[0046]
Further, the encoded data DFA to DFF, which are the encoding processing results, are input to the stream connector 35, where the encoding results are sequentially arranged in a raster scan order in units of macroblocks and converted into one stream. The Further, unnecessary headers are removed so that one header is assigned to one original picture, and the remaining one header is changed to correspond to one original screen. Further, the macro block address increment is changed so as to indicate the correct macro block address, and thereby, the encoding process result by a plurality of systems is converted into the format of the encoding process result by one encoder.
[0047]
As a result, the encoding device 31 can encode high-quality video signals using the encoders 33A to 33F that encode normal video signals. For example, a normal video signal and high-quality video signals can be encoded. When applied to a broadcasting system for transmitting video signals, it is possible to flexibly operate the equipment and transmit these video signals without having to install a high-quality video signal encoding device. .
[0048]
When the video signal is encoded and transmitted in this way, in the encoding device 31, the central setting unit 34 initially sets the amount of code allocated to the transport stream TP to the encoders 33A to 33F. The code amount Tp is corrected by a code amount that is changed by changing the control code that is the header and macroblock address increment, and the target code amount T of each of the encoders 33A to 33F is set. The encoded data is generated by the encoders 33A to 33F based on the target code amount T.
[0049]
As a result, the encoding device 31 sets the target code amount in each of the encoders 33A to 33F in consideration of the change in the code amount accompanying the change of the control code in the stream connector 35, and finally sets the final code in the transport stream. The target code amount is maintained at a predetermined value (in this case, the code amount by the code amount Tb × 6). As a result, the encoding device 31 can generate encoded data of one system with an intended code amount even when generating encoded data of one system from encoded data of a plurality of systems. Bankruptcy can be prevented.
[0050]
(1-3) Effects of the first embodiment
According to the above configuration, the code amount Tp allocated to the encoders 33A to 33F is changed by changing the control code for incrementing the header and macroblock address with respect to the code amount Tp allocated to the encoders 33A to 33F. Even when the encoded data of a plurality of systems are combined to generate one system of encoded data by setting the target code amount T of each of the encoders 33A to 33F, the one system is corrected. Encoded data can be generated with an intended code amount, thereby preventing the VBV buffer from failing.
[0051]
(2) Second embodiment
FIG. 3 is a schematic diagram for explaining the setting of the target code amount in comparison with FIG. The encoding apparatus according to the second embodiment is configured the same as the encoding apparatus 31 according to the first embodiment except that the configuration of the central processing unit relating to the setting of the target code amount is different. The Therefore, in the following description, the configuration of FIG. 2 will be used for explanation, and redundant explanation will be omitted.
[0052]
In this embodiment, the central processing unit equally distributes the code amount of the entire encoded data FDA to DFF of each system that changes due to the change of the control code to the encoders 32A to 32, and sets the target code amount. Set. In FIG. 2, the description of the code amount that changes due to the removal of the header is omitted.
[0053]
As a result, in this embodiment, the amount of code allocated to the encoding of image data excluding the control code is divided equally between the encoders 32A to 32F as compared with the first embodiment. It is made to approach.
[0054]
According to the configuration shown in FIG. 3, the code amount of the entire encoded data FDA to DFF of each system that is changed by changing the control code is equally distributed to the encoders 32A to 32, and the target code amount is set. Even if it does, the effect similar to 1st Embodiment can be acquired.
[0055]
In addition, since the code amount substantially allocated to the encoding of the image data excluding the control code approaches equal parts in each of the encoders 32A to 32F as compared with the first embodiment, each encoder Differences in image quality due to 32A to 32F can be reduced.
[0056]
(3) Third embodiment
FIG. 4 is a schematic diagram for explaining the setting of the target code amount in comparison with FIG. The encoding apparatus according to the third embodiment is configured the same as the encoding apparatus 31 according to the first embodiment except that the configuration of the central processing unit relating to the setting of the target code amount is different. The Therefore, in the following description, the configuration of FIG. 2 will be used for explanation, and redundant explanation will be omitted.
[0057]
In this embodiment, the central processing unit sets the target code amount of each encoded data FDA to DFF so that the code amounts excluding control codes in the encoded data DFA to DFF of a plurality of systems are equal.
[0058]
According to the configuration shown in FIG. 4, the entire encoded data FDA to DFF of each system that is changed by changing the control code so that the code amount excluding the control code in the encoded data DFA to DFF of the plurality of systems becomes equal. Even if the code amount is allocated and the target code amount is set, the same effect as that of the first embodiment can be obtained.
[0059]
Further, since the amount of code allocated to the encoding of the image data excluding the control code is substantially the same in each of the encoders 32A to 32F, the encoders 32A to 32A are further improved compared to the second embodiment. Differences in image quality due to 32F can be reduced.
[0060]
(4) Fourth embodiment
FIG. 5 is a schematic diagram for explaining the setting of the target code amount in comparison with FIG. The encoding apparatus according to the fourth embodiment is configured the same as the encoding apparatus 31 according to the first embodiment except that the configuration of the central processing unit relating to the setting of the target code amount is different. The Therefore, in the following description, the configuration of FIG. 2 will be used for explanation, and redundant explanation will be omitted.
[0061]
In this embodiment, the central processing unit adaptively distributes the code amount of the entire encoded data of a plurality of systems that change due to the change of the control code according to the code amount generated according to a certain encoding process condition. To set the target code amount.
[0062]
Specifically, the central processing unit For example The sum of absolute differences detected when detecting a motion vector is used as difficulty level data, and the amount of code generated under certain coding processing conditions is detected from the difficulty level data. Furthermore, the code amount of the entire encoded data of a plurality of systems, which changes due to the change of the control code, is adaptively distributed by the difficulty level data.
[0063]
According to the configuration shown in FIG. 5, the code amount of the entire encoded data of a plurality of systems that change due to the change of the control code is distributed according to the code amount generated according to a certain encoding process condition, and the target code amount is obtained. Even if it is set, the same effect as in the first embodiment can be obtained.
[0064]
Furthermore, by allocating the code amount according to the degree of encoding difficulty, the difference in image quality between the encoders 32A to 32F can be further reduced.
[0065]
(5) Other embodiments
In the above-described embodiment, a case has been described where one screen is divided into three equal parts in the horizontal direction and divided into two equal parts in the vertical direction to generate a plurality of systems of encoded data. However, the present invention is not limited to this. For example, when each slice layer is sequentially and cyclically assigned to each encoder to generate multiple systems of encoded data, such as when one screen is divided into multiple areas to generate multiple systems of encoded data Can be widely applied to. In addition, when dividing each slice layer in units of the original slice layer, such as when each slice layer is sequentially and cyclically assigned to each encoder to generate encoded data of a plurality of systems, Since the macro block address increment does not need to be changed, in this case, the target code amount may be set in consideration of only the code amount that changes due to the change of the header.
[0066]
Further, in the above-described embodiment, the case where one screen is divided and the encoding process is performed by each encoder has been described. However, the present invention is not limited to this. For example, two consecutive frames are each represented by three codes. The present invention can also be widely applied to the case of assigning to an encoder and performing encoding processing. In this case, one screen is divided into three areas.
[0067]
In the above-described embodiment, the case where the video signal is encoded by MPEG has been described. However, the present invention is not limited to this, and the present invention can be widely applied to cases where encoding is performed by various formats.
[0068]
【The invention's effect】
As described above, according to the present invention, when one screen is divided and encoded by a plurality of systems and then combined into a format encoded by one encoder, the entire code amount is divided into a plurality of systems. By correcting the allocated code amount with the code amount that changes by changing the control code and setting the target code amount, even when one video stream is encoded by multiple systems, the failure of the VBV buffer is effectively performed It can be avoided.
[Brief description of the drawings]
FIG. 1 is a schematic diagram for explaining an operation of an encoding apparatus according to a first embodiment of the present invention.
FIG. 2 is a block diagram showing an overall configuration of the encoding apparatus in FIG. 1;
FIG. 3 is a schematic diagram for explaining an operation of an encoding apparatus according to a second embodiment of the present invention.
FIG. 4 is a schematic diagram for explaining an operation of an encoding apparatus according to a third embodiment of the present invention.
FIG. 5 is a schematic diagram for explaining an operation of an encoding apparatus according to a fourth embodiment of the present invention.
FIG. 6 is a block diagram showing a digital satellite broadcasting system.
FIG. 7 is a block diagram showing a configuration of a conventional encoding device.
FIG. 8 is a schematic diagram illustrating division of a screen.
FIG. 9 is a schematic diagram for explanation of a slice layer.
FIG. 10 is a schematic diagram for explanation of generating encoded data of one system from encoded data of a plurality of systems.
FIG. 11 is a schematic diagram for explanation of header processing;
FIG. 12 is a schematic diagram for explaining a change in macro block address increment;
[Explanation of symbols]
5A to 5N, 31 ... Encoder, 32A to 32F ... Frame memory, 32A to 33F ... Encoder, 34 ... Central processing unit, 35 ... Stream connector

Claims (11)

入力ビデオ信号を複数系統に振り分けて出力する画像分割手段と、
目標符号量を制御目標としたレート制御により、前記画像分割手段から出力される前記複数系統のビデオ信号を系統毎にそれぞれ符号化処理して複数系統の符号化データを出力する複数系統の符号化手段と、
前記複数系統の符号化データを多重化処理すると共に、ヘッダ及びマクロブロックアドレスインクリメントを変更し、前記入力ビデオ信号を1つの符号化器で符号化処理したフォーマットによる総合の符号化データを生成するデータ処理手段と、
前記複数系統の符号化手段における前記目標符号量をそれぞれ設定する目標符号量設定手段とを備え、
前記目標符号量設定手段は、
前記総合の符号化データにおける符号量が所定値となるように、前記所定値を前記複数系統の符号化手段に割り振った当初設定の符号量を、前記総合の符号化データで前記ヘッダ及びマクロブロックアドレスインクリメントを変更することにより変化する符号量で補正して、前記各系統の目標符号量を設定する
ことを特徴とする符号化装置。
Image dividing means for distributing and outputting input video signals to a plurality of systems ,
Multiple-system encoding that encodes the plurality of video signals output from the image dividing means for each system by rate control with a target code amount as a control target, and outputs a plurality of systems of encoded data Means,
Data that multiplexes the plurality of systems of encoded data, changes header and macroblock address increments, and generates comprehensive encoded data in a format in which the input video signal is encoded by a single encoder. Processing means;
Target code amount setting means for setting the target code amount in the plurality of systems of encoding means , respectively ,
The target code amount setting means includes:
The initial code amount assigned to the plurality of systems of encoding means is set to the header code and the macro block with the total encoded data so that the code amount in the total encoded data becomes a predetermined value. An encoding apparatus, wherein the target code amount of each system is set by correcting with a code amount that changes by changing the address increment .
前記目標符号量設定手段は、
前記系統毎に、前記当初設定の符号量から、前記各系統の符号化データで前記ヘッダ及びマクロブロックアドレスインクリメントを変更することにより変化する符号量をそれぞれ減算することにより、前記各系統の目標符号量を設定する
ことを特徴とする請求項1に記載の符号化装置。
The target code amount setting means includes:
For each system, by subtracting the code amount that changes by changing the header and macroblock address increment in the encoded data of each system from the initially set code amount , the target code of each system The encoding device according to claim 1, wherein an amount is set.
前記目標符号量設定手段は、
前記総合の符号化データで前記ヘッダ及びマクロブロックアドレスインクリメントを変更することにより変化する符号量を前記複数系統に配分して、各系統の前記当初設定の符号量から減算することにより、前記各系統の目標符号量を設定する
ことを特徴とする請求項1に記載の符号化装置。
The target code amount setting means includes:
By distributing the code amount that changes by changing the header and macroblock address increment in the overall encoded data to the plurality of systems, and subtracting from the initially set code amount of each system, each system The encoding device according to claim 1, wherein a target code amount is set.
前記目標符号量設定手段は、
前記複数系統の符号化データにおける制御コードを除いた符号量が等しくなるように、前記目標符号量を設定する
ことを特徴とする請求項1に記載の符号化装置。
The target code amount setting means includes:
The encoding apparatus according to claim 1, wherein the target code amount is set so that code amounts excluding control codes in the encoded data of the plurality of systems are equal.
前記目標符号量設定手段は、
前記総合の符号化データで前記ヘッダ及びマクロブロックアドレスインクリメントを変更することにより変化する符号量を、各系統の符号化データで検出される困難度に応じて分配して、前記当初設定の符号量からそれぞれ減算することにより、前記各系統の目標符号量を設定する
ことを特徴とする請求項1に記載の符号化装置。
The target code amount setting means includes:
The code amount that is changed by changing the header and macroblock address increment in the overall encoded data is distributed according to the degree of difficulty detected in the encoded data of each system, and the initially set code amount The encoding apparatus according to claim 1 , wherein a target code amount of each of the systems is set by subtracting each from .
入力ビデオ信号を複数系統に振り分けて出力する画像分割ステップと、
目標符号量を制御目標としたレート制御により、前記画像分割ステップから出力される前記複数系統のビデオ信号を系統毎にそれぞれ符号化処理して複数系統の符号化データを出力する複数系統の符号化ステップと、
前記複数系統の符号化データを多重化処理すると共に、ヘッダ及びマクロブロックアドレスインクリメントを変更し、前記入力ビデオ信号を1つの符号化器で符号化処理したフォーマットによる総合の符号化データを生成するデータ処理ステップと、
前記複数系統の符号化ステップにおける前記目標符号量をそれぞれ設定する目標符号量設定ステップとを備え、
前記目標符号量設定ステップは、
前記総合の符号化データにおける符号量が所定値となるように、前記所定値を前記複数系統の符号化手段に割り振った当初設定の符号量を、前記総合の符号化データで前記ヘッダ及びマクロブロックアドレスインクリメントを変更することにより変化する符号量で補正して、前記各系統の目標符号量を設定する
ことを特徴とする符号化方法。
An image dividing step for distributing the input video signal to a plurality of systems and outputting it,
Multiple-system encoding that encodes the plurality of video signals output from the image division step for each system and outputs encoded data of a plurality of systems by rate control with a target code amount as a control target Steps,
Data that multiplexes the plurality of systems of encoded data, changes header and macroblock address increments, and generates comprehensive encoded data in a format in which the input video signal is encoded by a single encoder. Processing steps;
A target code amount setting step for setting each of the target code amounts in the encoding steps of the plurality of systems ,
The target code amount setting step includes:
The initial code amount assigned to the plurality of systems of encoding means is set to the header code and the macro block with the total encoded data so that the code amount in the total encoded data becomes a predetermined value. An encoding method, wherein the target code amount of each system is set by correcting with a code amount that changes by changing the address increment .
入力ビデオ信号を複数系統に振り分けて出力する画像分割手段と、Image dividing means for distributing and outputting input video signals to a plurality of systems,
目標符号量を制御目標としたレート制御により、前記画像分割手段から出力される前記複数系統のビデオ信号を系統毎にそれぞれ符号化処理して複数系統の符号化データを出力する複数系統の符号化手段と、Multiple-system encoding that encodes the plurality of video signals output from the image dividing means for each system by rate control with a target code amount as a control target, and outputs a plurality of systems of encoded data Means,
前記複数系統の符号化データを多重化処理すると共に、ヘッダを変更し、前記入力ビデオ信号を1つの符号化器で符号化処理したフォーマットによる総合の符号化データを生成するデータ処理手段と、A data processing means for multiplexing the plurality of systems of encoded data, changing a header, and generating integrated encoded data in a format in which the input video signal is encoded by a single encoder;
前記複数系統の符号化手段における前記目標符号量をそれぞれ設定する目標符号量設定手段とを備え、A target code amount setting means for setting each of the target code amounts in the plurality of systems of encoding means,
前記目標符号量設定手段は、The target code amount setting means includes:
前記総合の符号化データにおける符号量が所定値となるように、前記所定値を前記複数系統の符号化手段に割り振った当初設定の符号量を、前記総合の符号化データで前記ヘッダを変更することにより変化する符号量で補正して、前記各系統の目標符号量を設定するThe header is changed with the total encoded data for the initially set code amount assigned to the plurality of systems of encoding means so that the code amount in the total encoded data becomes a predetermined value. The target code amount of each system is set by correcting with the code amount that changes depending on
ことを特徴とする符号化装置。An encoding apparatus characterized by that.
前記目標符号量設定手段は、The target code amount setting means includes:
前記系統毎に、前記当初設定の符号量から、前記各系統の符号化データで前記ヘッダを変更することにより変化する符号量をそれぞれ減算することにより、前記各系統の目標符号量を設定するFor each of the systems, the target code amount of each system is set by subtracting the code amount that changes by changing the header with the encoded data of each system from the initially set code amount.
ことを特徴とする請求項7に記載の符号化装置。The encoding apparatus according to claim 7.
前記目標符号量設定手段は、The target code amount setting means includes:
前記総合の符号化データで前記ヘッダを変更することにより変化する符号量を前記複数系統に配分して、各系統の前記当初設定の符号量から減算することにより、前記各系統の目標符号量を設定するBy distributing the code amount that is changed by changing the header with the overall encoded data to the plurality of systems, and subtracting from the initial code amount of each system, the target code amount of each system is obtained. Set
ことを特徴とする請求項7に記載の符号化装置。The encoding apparatus according to claim 7.
前記目標符号量設定手段は、The target code amount setting means includes:
前記総合の符号化データで前記ヘッダを変更することにより変化する符号量を、各系統の符号化データで検出される困難度に応じて分配して、前記当初設定の符号量からそれぞれ減算することにより、前記各系統の目標符号量を設定するDistributing the code amount that is changed by changing the header with the overall encoded data according to the degree of difficulty detected in the encoded data of each system, and subtracting from the initially set code amount, respectively. To set the target code amount of each system
ことを特徴とする請求項7に記載の符号化装置。The encoding apparatus according to claim 7.
入力ビデオ信号を複数系統に振り分けて出力する画像分割ステップと、
目標符号量を制御目標としたレート制御により、前記画像分割ステップから出力される前記複数系統のビデオ信号を系統毎にそれぞれ符号化処理して複数系統の符号化データを出力する複数系統の符号化ステップと、
前記複数系統の符号化データを多重化処理すると共に、ヘッダを変更し、前記入力ビデオ信号を1つの符号化器で符号化処理したフォーマットによる総合の符号化データを生成するデータ処理ステップと、
前記複数系統の符号化ステップにおける前記目標符号量をそれぞれ設定する目標符号量設定ステップとを備え、
前記目標符号量設定ステップは、
前記総合の符号化データにおける符号量が所定値となるように、前記所定値を前記複数系統の符号化手段に割り振った当初設定の符号量を、前記総合の符号化データで前記ヘッダを変更することにより変化する符号量で補正して、前記各系統の目標符号量を設定する
ことを特徴とする符号化方法
An image dividing step for distributing the input video signal to a plurality of systems and outputting it,
Multiple-system encoding that encodes the plurality of video signals output from the image division step for each system and outputs encoded data of a plurality of systems by rate control with a target code amount as a control target Steps,
A data processing step of multiplexing the plurality of systems of encoded data, changing a header, and generating integrated encoded data in a format in which the input video signal is encoded by a single encoder;
A target code amount setting step for setting each of the target code amounts in the encoding steps of the plurality of systems,
The target code amount setting step includes:
The header is changed with the total encoded data, with the initial code amount allocated to the plurality of encoding means, so that the code amount in the total encoded data becomes a predetermined value. The target code amount of each system is set by correcting with the code amount that changes depending on the situation.
An encoding method characterized by the above .
JP10734599A 1999-04-15 1999-04-15 Encoding apparatus and encoding method Expired - Fee Related JP4058578B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10734599A JP4058578B2 (en) 1999-04-15 1999-04-15 Encoding apparatus and encoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10734599A JP4058578B2 (en) 1999-04-15 1999-04-15 Encoding apparatus and encoding method

Publications (3)

Publication Number Publication Date
JP2000299868A JP2000299868A (en) 2000-10-24
JP2000299868A5 JP2000299868A5 (en) 2006-02-02
JP4058578B2 true JP4058578B2 (en) 2008-03-12

Family

ID=14456709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10734599A Expired - Fee Related JP4058578B2 (en) 1999-04-15 1999-04-15 Encoding apparatus and encoding method

Country Status (1)

Country Link
JP (1) JP4058578B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4633464B2 (en) * 2002-10-21 2011-02-16 エヌエックスピー ビー ヴィ Sub-image manipulation in compressed video signals

Also Published As

Publication number Publication date
JP2000299868A (en) 2000-10-24

Similar Documents

Publication Publication Date Title
JP3569303B2 (en) Data separation processor
KR100255718B1 (en) Priority selection apparatus as for a video signal processor
US5956088A (en) Method and apparatus for modifying encoded digital video for improved channel utilization
EP0928116A2 (en) Error correction encoding method and apparatus, data transmission method, receiving method and receiver
KR100950867B1 (en) A method for processing packetized video data, a method fro decoding image data, and a video broadcasting method
EP0573517B1 (en) An hdtv compression system
US6654421B2 (en) Apparatus, method and computer program product for transcoding a coded multiplexed sound and moving picture sequence
US6870886B2 (en) Method and apparatus for transcoding a digitally compressed high definition television bitstream to a standard definition television bitstream
EP0893027B1 (en) Compressed-video distribution system having a statistical multiplexer with transcoders
JP3708974B2 (en) Coded video signal processing device
JP2004297820A (en) Video signal encoding system
WO1997019559A9 (en) Method and apparatus for modifying encoded digital video for improved channel utilization
US6504855B1 (en) Data multiplexer and data multiplexing method
CA2689760C (en) Method and apparatus for distributing video program material
US20010014122A1 (en) Method and apparatus for video compression and restructuring
JP4058578B2 (en) Encoding apparatus and encoding method
US20040240555A1 (en) Device for transmitting television pictures and device for receiving said pictures
US20010039661A1 (en) Cable television system using a transcoding process to vary bit rate
Drury et al. Picture quality and multiplex management in digital video broadcasting systems
US6798836B1 (en) Device for transmitting television pictures and device for receiving said pictures
EP0980186A2 (en) Method and apparatus for managing a decoder buffer
KR20050032102A (en) Device and method for decoding and digital broadcast receiving apparatus
Zdepski et al. Overview of the Grand Alliance HDTV video compression system
Thom et al. Digital Video Telemetry System
JPH07107490A (en) Device for encoding and decoding video signal

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051214

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051214

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20051214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071010

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071106

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071204

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101228

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees