JP4038949B2 - 再生装置および方法 - Google Patents
再生装置および方法 Download PDFInfo
- Publication number
- JP4038949B2 JP4038949B2 JP34208399A JP34208399A JP4038949B2 JP 4038949 B2 JP4038949 B2 JP 4038949B2 JP 34208399 A JP34208399 A JP 34208399A JP 34208399 A JP34208399 A JP 34208399A JP 4038949 B2 JP4038949 B2 JP 4038949B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- block
- code
- length
- unit
- 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
Links
Images
Landscapes
- Television Signal Processing For Recording (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
【発明の属する技術分野】
この発明は、可変長符号化によって圧縮符号化された画像データの記録媒体への記録、ならびに、記録媒体からの再生を行う再生装置および方法に関する。
【0002】
【従来の技術】
ディジタルVTR(Video Tape Recorder) に代表されるように、ディジタルビデオ信号およびディジタルオーディオ信号を記録媒体に記録し、また、記録媒体から再生するようなデータ記録再生装置が知られている。ディジタルビデオ信号は、データ容量が膨大となるため、所定の方式で圧縮符号化されて記録媒体に記録されるのが一般的である。近年では、MPEG2(Moving Picture Experts Group 2)方式が圧縮符号化の標準的な方式として知られている。
【0003】
上述のMPEG2を始めとする画像圧縮技術では、可変長符号を用いてデータの圧縮率を高めている。したがって、圧縮しようとする画像の複雑さによって、1画面分、例えば1フレームあるいは1フィールド当たりの圧縮後の符号量が変動する。
【0004】
一方、磁気テープやディスク記録媒体といった記録媒体にビデオ信号を記録する記録装置、特にVTRにおいては、1フレームや1フィールドが等長化の単位とされる。すなわち、1フレームや1フィールド当たりの符号量を一定値以下に収め、セクタやセグメントと称される、記憶媒体の一定容量の領域に記録する。
【0005】
VTRに等長化方式が採用される最大の理由は、記録媒体である磁気テープ上での等長化単位、すなわち、1フレームや1フィールド単位での編集が可能になるためである。また、記録時間に比例して記録媒体が消費されるため、記録総量や残量を、正確に求めることができ、高速サーチによる頭出し処理も容易に行えるという利点がある。また、記録媒体の制御の観点からは、例えば記録媒体が磁気テープであれば、等長化方式でデータを記録することで、力学的に駆動される磁気テープを等速度に保って走行させることで安定化を図れるという利点を有する。これらの利点は、ディスク記録媒体であっても、同様に適用させることができる。
【0006】
可変長符号化方式と、等長化方式とでは、上述のように、相反する性質を有する。近年では、ビデオ信号を非圧縮のベースバンド信号で入力し、内部でMPEG2やJPEG(Joint Photographic Experts Group)といった可変長符号により圧縮符号化を施して、記録媒体に記録する記録装置が出現している。また、可変長符号を用いて圧縮符号化されたストリームを直接的に入出力および記録/再生するような記録再生装置も提案されている。このような記録再生装置では、例えばMPEG2方式で圧縮符号化されたストリームが、機器に直接的に入力され、また、機器から出力される。
【0007】
なお、繁雑さを避けるため、以下では、ディジタルビデオ信号の等長化の単位をフレームとし、可変長符号を用いた圧縮符号化方式をMPEG2であるとして説明する。
【0008】
【発明が解決しようとする課題】
ベースバンド信号をMPEG方式に基づきエンコードして記録する場合には、記録装置のエンコーダが等長化処理を行うことになる。すなわち、記録装置に入力されたディジタルビデオ信号がMPEGエンコーダに供給され、フレーム毎に一定の符号量に納まるようにエンコードされる。エンコードされたディジタルビデオ信号は、フレーム毎に区切られた記録媒体上の領域に、フレーム分のストリームが記録される。例えば、記録媒体がヘリカルトラックで記録がなされる磁気テープであれば、所定数のトラック毎に1フレーム分のストリームが記録される。この場合には、何ら問題は生じない。
【0009】
ここで、予め可変長符号を用いて圧縮符号化されたストリームが記録装置に直接的に入力され、入力されたこのストリームを例えば上述の磁気テープに記録する場合について考える。この場合には、入力されたストリームにおいて、等長化単位(1フレーム)の符号量がその上限に収まっている保証が無いという問題点があった。
【0010】
例えば、ある記録装置で、1フレーム分のデータを4トラック以内に記録されるように定められている場合に、入力されたストリームが4トラックに記録可能なデータ量を超過しているような場合が有り得る。
【0011】
このとき、若し、その記録装置が、ストリームを入力された順で、フレーム毎に記録するようなものであれば、入力されたあるフレームの符号量がフレームを記録可能な容量の上限を越えた場合、そのフレームのストリームは、その機器に所定の等長化容量分だけが記録され、残りは捨てられることになる。この場合には、そのフレームを再生した場合に、例えば画面の下端部が欠落してしまうことになるという問題点があった。
【0012】
また、この場合には、捨てられたストリームは、途中で切断されたことになり、再生時には、次フレームとの境界においてシンタクスエラーが発生する可能性がある。すなわち、ストリームには、所定のシンタクスに基づき、ストリームの内容を示す情報が所定の位置に格納されており、この情報に基づき、再生時の復号化処理などが行われる。したがって、再生時にシンタクスエラーが発生すると、ストリームの復号化処理を行うデコーダが暴走したり、ハングアップしてしまう可能性もあるという問題点があった。
【0013】
さらに、入力されたストリームが確実に、その装置に対応した等長化処理がなされているという前提で設計された、エラーに対する耐性が弱い記録装置も存在する。このような記録装置では、ストリームの記録の段階で、処理に破綻を来すことになるという問題点があった。
【0014】
この場合、例えば、入力ストリームの、その装置の等長化の長さから溢れた符号が次のフレームの領域に侵入し、次のフレームの容量と記録位置を圧迫することになる。この段階で、既に記録媒体を等長化する意味が失われている。飴フレームのデータに圧迫されて押された次フレームが、さらに次のフレームを押すことが繰り返され、やがて、記録系のメモリがオーバーフローしてしまうという危険性もある。
【0015】
したがって、この発明の目的は、装置の等長化の容量よりも大きな容量の等長化ストリームが入力されても破綻しない再生装置および方法を提供することにある。
【0018】
また、この発明は、第1のブロック毎に可変長符号化され終端を示す識別情報が付加され、複数の第1のブロックからなる第2のブロックが構成され、可変長符号化されたデータを固定枠に当てはめ、固定枠からはみ出たデータを他の固定枠の空き領域に詰め込んで等長化を行い、等長化単位でデータが記録された記録媒体を再生する再生装置において、可変長符号化された等長化の対象となるデータが、第1のブロックを跨がって第2のブロック単位で、重要なデータから重要ではないデータの順に並べ替えられた第2のブロックを、先頭から所定長の固定枠に当てはめ、固定枠からはみ出た部分を空き領域のある他の固定枠に詰め込んでパッキングし、等長化の対象となるデータ量が等長化単位の容量を越えるときは、重要ではないデータが等長化単位からはみ出るようにし、等長化単位からはみ出た部分を記録しないようにされて記録媒体に記録されたデータを再生する再生手段と、再生手段で再生されたデータをチェックし、データが所定の規定を満たしているかどうか判断するチェック手段と、再生手段で再生されたデータに対し、並べ替えられたブロック内のデータの順序を元の順序に並べ替える符号配列逆変換手段とを有し、チェック手段によるチェックの結果、再生手段で再生されたデータが所定の規定を満たしていないと判断されたときに、はみ出た部分が記録されなかった第1のブロックに対して、終端を示す識別情報を付加するようにしたことを特徴とする再生装置である。
【0019】
また、この発明は、第1のブロック毎に可変長符号化され終端を示す識別情報が付加され、複数の第1のブロックからなる第2のブロックが構成され、可変長符号化されたデータを固定枠に当てはめ、固定枠からはみ出たデータを他の固定枠の空き領域に詰め込んで等長化を行い、等長化単位でデータが記録された記録媒体を再生する再生方法において、可変長符号化された等長化の対象となるデータが、第1のブロックを跨がって第2のブロック単位で、重要なデータから重要ではないデータの順に並べ替えられた第2のブロックを、先頭から所定長の固定枠に当てはめ、固定枠からはみ出た部分を空き領域のある他の固定枠に詰め込んでパッキングし、等長化の対象となるデータ量が等長化単位の容量を越えるときは、重要ではないデータが等長化単位からはみ出るようにし、等長化単位からはみ出た部分を記録しないようにされて記録媒体に記録されたデータを再生する再生のステップと、再生のステップで再生されたデータをチェックし、データが所定の規定を満たしているかどうか判断するチェックのステップと、再生のステップで再生されたデータに対し、並べ替えられたブロック内のデータの順序を元の順序に並べ替える符号配列逆変換のステップとを有し、チェックのステップによるチェックの結果、再生のステップで再生されたデータが所定の規定を満たしていないと判断されたときに、はみ出た部分が記録されなかった第1のブロックに対して、終端を示す識別情報を付加するようにしたことを特徴とする再生方法である。
【0021】
この発明は、第1のブロック毎に可変長符号化され終端を示す識別情報が付加され、複数の第1のブロックからなる第2のブロックが構成され、可変長符号化された等長化の対象となるデータが、第1のブロックを跨がって第2のブロック単位で、重要なデータから重要ではないデータの順に並べ替えられた第2のブロックを、先頭から所定長の固定枠に当てはめ、固定枠からはみ出た部分を空き領域のある他の固定枠に詰め込んでパッキングし、等長化の対象となるデータ量が等長化単位の容量を越えるときは、重要ではないデータが等長化単位からはみ出るようにし、等長化単位からはみ出た部分を記録しないようにされて記録媒体に記録されたデータを再生し、再生されたデータをチェックし、データが所定の規定を満たしているかどうか判断し、再生されたデータに対し、並べ替えられたブロック内のデータの順序を元の順序に並べ替えるようにされ、チェックの結果、再生されたデータが所定の規定を満たしていないと判断されたときに、はみ出た部分が記録されなかった第1のブロックに対して、終端を示す識別情報を付加するようにしているため、記録時に規定のビットレートを越えるレートのデータストリームが入力され、入力されたデータストリームに対して等長化を行った際に等長化単位からはみ出て捨てられたブロックの終端を示す識別情報が欠損していても、再生に破綻を来すことが避けられる。
【0022】
【発明の実施の形態】
以下、この発明をディジタルVTRに対して適用した一実施形態について説明する。この一実施形態は、放送局の環境で使用して好適なもので、互いに異なる複数のフォーマットのビデオ信号の記録/再生を可能とするものである。
【0023】
この一実施形態では、圧縮方式としては、例えばMPEG2方式が採用される。MPEG2は、動き補償予測符号化と、DCTによる圧縮符号化とを組み合わせたものである。MPEG2のデータ構造は、階層構造をなしている。図1は、一般的なMPEG2のデータストリームの階層構造を概略的に示す。図1に示されるように、データ構造は、下位から、マクロブロック層(図1E)、スライス層(図1D)、ピクチャ層(図1C)、GOP層(図1B)およびシーケンス層(図1A)となっている。
【0024】
図1Eに示されるように、マクロブロック層は、DCTを行う単位であるDCTブロックからなる。マクロブロック層は、マクロブロックヘッダと複数のDCTブロックとで構成される。スライス層は、図1Dに示されるように、スライスヘッダ部と、1以上のマクロブロックより構成される。ピクチャ層は、図1Cに示されるように、ピクチャヘッダ部と、1以上のスライスとから構成される。ピクチャは、1画面に対応する。GOP層は、図1Bに示されるように、GOPヘッダ部と、フレーム内符号化に基づくピクチャであるIピクチャと、予測符号化に基づくピクチャであるPおよびBピクチャとから構成される。
【0025】
Iピクチャ(Intra-coded picture:イントラ符号化画像) は、符号化されるときその画像1枚の中だけで閉じた情報を使用するものである。従って、復号時には、Iピクチャ自身の情報のみで復号できる。Pピクチャ(Predictive-coded picture :順方向予測符号化画像)は、予測画像(差分をとる基準となる画像)として、時間的に前の既に復号されたIピクチャまたはPピクチャを使用するものである。動き補償された予測画像との差を符号化するか、差分を取らずに符号化するか、効率の良い方をマクロブロック単位で選択する。Bピクチャ(Bidirectionally predictive-coded picture :両方向予測符号化画像)は、予測画像(差分をとる基準となる画像)として、時間的に前の既に復号されたIピクチャまたはPピクチャ、時間的に後ろの既に復号されたIピクチャまたはPピクチャ、並びにこの両方から作られた補間画像の3種類を使用する。この3種類のそれぞれの動き補償後の差分の符号化と、イントラ符号化の中で、最も効率の良いものをマクロブロック単位で選択する。
【0026】
従って、マクロブロックタイプとしては、フレーム内符号化(Intra) マクロブロックと、過去から未来を予測する順方向(Forward) フレーム間予測マクロブロックと、未来から過去を予測する逆方向(Backward)フレーム間予測マクロブロックと、前後両方向から予測する両方向マクロブロックとがある。Iピクチャ内の全てのマクロブロックは、フレーム内符号化マクロブロックである。また、Pピクチャ内には、フレーム内符号化マクロブロックと順方向フレーム間予測マクロブロックとが含まれる。Bピクチャ内には、上述した4種類の全てのタイプのマクロブロックが含まれる。
【0027】
GOPには、最低1枚のIピクチャが含まれ、PおよびBピクチャは、存在しなくても許容される。最上層のシーケンス層は、図1Aに示されるように、シーケンスヘッダ部と複数のGOPとから構成される。
【0028】
MPEGのフォーマットにおいては、スライスが1つの可変長符号系列である。可変長符号系列とは、可変長符号を正しく復号化しなければデータの境界を検出できない系列である。
【0029】
また、シーケンス層、GOP層、ピクチャ層およびスライス層の先頭には、それぞれ、バイト単位に整列された所定のビットパターンを有するスタートコードが配される。この、各層の先頭に配されるスタートコードを、シーケンス層においてはシーケンスヘッダコード、他の階層においてはスタートコードと称し、ビットパターンが〔00 00 01 xx〕(16進表記)とされる。2桁ずつ示され、〔xx〕は、各層のそれぞれで異なるビットパターンが配されることを示す。
【0030】
すなわち、スタートコードおよびシーケンスヘッダコードは、4バイト(=32ビット)からなり、4バイト目の値に基づき、後に続く情報の種類を識別できる。これらスタートコードおよびシーケンスヘッダコードは、バイト単位で整列されているため、4バイトのパターンマッチングを行うだけで捕捉することができる。
【0031】
さらに、スタートコードに続く1バイトの上位4ビットが、後述する拡張データ領域の内容の識別子となっている。この識別子の値により、その拡張データの内容を判別することができる。
【0032】
なお、マクロブロック層およびマクロブロック内のDCTブロックには、このような、バイト単位に整列された所定のビットパターンを有する識別コードは、配されない。
【0033】
各層のヘッダ部について、より詳細に説明する。図1Aに示すシーケンス層では、先頭にシーケンスヘッダ2が配され、続けて、シーケンス拡張3、拡張およびユーザデータ4が配される。シーケンスヘッダ2の先頭には、シーケンスヘッダコード1が配される。また、図示しないが、シーケンス拡張3およびユーザデータ4の先頭にも、それぞれ所定のスタートコードが配される。シーケンスヘッダ2からから拡張およびユーザデータ4までがシーケンス層のヘッダ部とされる。
【0034】
シーケンスヘッダ2には、図2に内容と割当ビットが示されるように、シーケンスヘッダコード1、水平方向画素数および垂直方向ライン数からなる符号化画像サイズ、アスペクト比、フレームレート、ビットレート、VBV(Video Buffering Verifier)バッファサイズ、量子化マトリクスなど、シーケンス単位で設定される情報がそれぞれ所定のビット数を割り当てられて格納される。
【0035】
シーケンスヘッダに続く拡張スタートコード後のシーケンス拡張3では、図3に示されるように、MPEG2で用いられるプロファイル、レベル、色差フォーマット、プログレッシブシーケンスなどの付加データが指定される。拡張およびユーザデータ4は、図4に示されるように、シーケンス表示()により、原信号のRGB変換特性や表示画サイズの情報を格納できると共に、シーケンススケーラブル拡張()により、スケーラビリティモードやスケーラビリティのレイヤ指定などを行うことができる。
【0036】
シーケンス層のヘッダ部に続けて、GOPが配される。GOPの先頭には、図1Bに示されるように、GOPヘッダ6およびユーザデータ7が配される。GOPヘッダ6およびユーザデータ7がGOPのヘッダ部とされる。GOPヘッダ6には、図5に示されるように、GOPのスタートコード5、タイムコード、GOPの独立性や正当性を示すフラグがそれぞれ所定のビット数を割り当てられて格納される。ユーザデータ7は、図6に示されるように、拡張データおよびユーザデータを含む。図示しないが、拡張データおよびユーザデータの先頭には、それぞれ所定のスタートコードが配される。
【0037】
GOP層のヘッダ部に続けて、ピクチャが配される。ピクチャの先頭には、図1Cに示されるように、ピクチャヘッダ9、ピクチャ符号化拡張10、ならびに、拡張およびユーザデータ11が配される。ピクチャヘッダ9の先頭には、ピクチャスタートコード8が配される。また、ピクチャ符号化拡張10、ならびに、拡張およびユーザデータ11の先頭には、それぞれ所定のスタートコードが配される。ピクチャヘッダ9から拡張およびユーザデータ11までがピクチャのヘッダ部とされる。
【0038】
ピクチャヘッダ9は、図7に示されるように、ピクチャスタートコード8が配されると共に、画面に関する符号化条件が設定される。ピクチャ符号化拡張10では、図8に示されるように、前後方向および水平/垂直方向の動きベクトルの範囲の指定や、ピクチャ構造の指定がなされる。また、ピクチャ符号化拡張10では、イントラマクロブロックのDC係数精度の設定、VLCタイプの選択、線型/非線型量子化スケールの選択、DCTにおけるスキャン方法の選択などが行われる。
【0039】
拡張およびユーザデータ11では、図9に示されるように、量子化マトリクスの設定や、空間スケーラブルパラメータの設定などが行われる。これらの設定は、ピクチャ毎に可能となっており、各画面の特性に応じた符号化を行うことができる。また、拡張およびユーザデータ11では、ピクチャの表示領域の設定を行うことが可能となっている。さらに、拡張およびユーザデータ11では、著作権情報を設定することもできる。
【0040】
ピクチャ層のヘッダ部に続けて、スライスが配される。スライスの先頭には、図1Dに示されるように、スライスヘッダ13が配され、スライスヘッド13の先頭に、スライススタートコード12が配される。図10に示されるように、スライススタートコード12は、当該スライスの垂直方向の位置情報を含む。スライスヘッダ13には、さらに、拡張されたスライス垂直位置情報や、量子化スケール情報などが格納される。
【0041】
スライス層のヘッダ部に続けて、マクロブロックが配される(図1E)。マクロブロックでは、マクロブロックヘッダ14に続けて複数のDCTブロックが配される。上述したように、マクロブロックヘッダ14にはスタートコードが配されない。図11に示されるように、マクロブロックヘッダ14は、マクロブロックの相対的な位置情報が格納されると共に、動き補償モードの設定、DCT符号化に関する詳細な設定などを指示する。
【0042】
マクロブロックヘッダ14に続けて、DCTブロックが配される。DCTブロックは、図12に示されるように、可変長符号化されたDCT係数およびDCT係数に関するデータが格納される。
【0043】
なお、図1では、各層における実線の区切りは、データがバイト単位に整列されていることを示し、点線の区切りは、データがバイト単位に整列されていないことを示す。すなわち、ピクチャ層までは、図13Aに一例が示されるように、符号の境界がバイト単位で区切られているのに対し、スライス層では、スライススタートコード12のみがバイト単位で区切られており、各マクロブロックは、図13Bに一例が示されるように、ビット単位で区切ることができる。同様に、マクロブロック層では、各DCTブロックをビット単位で区切ることができる。一方、復号および符号化による信号の劣化を避けるためには、符号化データ上で編集することが望ましい。このとき、PピクチャおよびBピクチャは、その復号に、時間的に前のピクチャあるいは前後のピクチャを必要とする。そのため、編集単位を1フレーム単位とすることができない。この点を考慮して、この一実施形態では、1つのGOPが1枚のIピクチャからなるようにしている。
【0044】
また、例えば1フレーム分の記録データが記録される記録領域が所定のものとされる。MPEG2では、可変長符号化を用いているので、1フレーム期間に発生するデータを所定の記録領域に記録できるように、1フレーム分の発生データ量が制御される。さらに、この一実施形態では、磁気テープへの記録に適するように、1スライスを1マクロブロックから構成すると共に、1マクロブロックを、所定長の固定枠に当てはめる。
【0045】
図14は、この一実施形態におけるMPEGストリームのヘッダを具体的に示す。図1で分かるように、シーケンス層、GOP層、ピクチャ層、スライス層およびマクロブロック層のそれぞれのヘッダ部は、シーケンス層の先頭から連続的に現れる。図14は、シーケンスヘッダ部分から連続した一例のデータ配列を示している。
【0046】
先頭から、12バイト分の長さを有するシーケンスヘッダ2が配され、続けて、10バイト分の長さを有するシーケンス拡張3が配される。シーケンス拡張3の次には、拡張およびユーザデータ4が配される。拡張およびユーザデータ4の先頭には、4バイト分のユーザデータスタートコードが配され、続くユーザデータ領域には、SMPTEの規格に基づく情報が格納される。
【0047】
シーケンス層のヘッダ部の次は、GOP層のヘッダ部となる。8バイト分の長さを有するGOPヘッダ6が配され、続けて拡張およびユーザデータ7が配される。拡張およびユーザデータ7の先頭には、4バイト分のユーザデータスタートコードが配され、続くユーザデータ領域には、既存の他のビデオフォーマットとの互換性をとるための情報が格納される。
【0048】
GOP層のヘッダ部の次は、ピクチャ層のヘッダ部となる。9バイトの長さを有するピクチャヘッダ9が配され、続けて9バイトの長さを有するピクチャ符号化拡張10が配される。ピクチャ符号化拡張10の後に、拡張およびユーザデータ11が配される。拡張およびユーザデータ11の先頭側133バイトに拡張およびユーザデータが格納され、続いて4バイトの長さを有するユーザデータスタートコード15が配される。ユーザデータスタートコード15に続けて、既存の他のビデオフォーマットとの互換性をとるための情報が格納される。さらに、ユーザデータスタートコード16が配され、ユーザデータスタートコード16に続けて、SMPTEの規格に基づくデータが格納される。ピクチャ層のヘッダ部の次は、スライスとなる。
【0049】
マクロブロックについて、さらに詳細に説明する。スライス層に含まれるマクロブロックは、複数のDCTブロックの集合であり、DCTブロックの符号化系列は、量子化されたDCT係数の系列を0係数の連続回数(ラン)とその直後の非0系列(レベル)を1つの単位として可変長符号化したものである。マクロブロックならびにマクロブロック内のDCTブロックには、バイト単位に整列した識別コードが付加されない。
【0050】
マクロブロックは、画面(ピクチャ)を16画素×16ラインの格子状に分割したものである。スライスは、例えばこのマクロブロックを水平方向に連結してなる。連続するスライスの前のスライスの最後のマクロブロックと、次のスライスの先頭のマクロブロックとは連続しており、スライス間でのマクロブロックのオーバーラップを形成することは、許されていない。また、画面のサイズが決まると、1画面当たりのマクロブロック数は、一意に決まる。
【0051】
画面上での垂直方向および水平方向のマクロブロック数を、それぞれmb_heightおよびmb_widthと称する。画面上でのマクロブロックの座標は、マクロブロックの垂直位置番号を、上端を基準に0から数えたmb_rowと、マクロブロックの水平位置番号を、左端を基準に0から数えたmb_columnとで表すように定められている。画面上でのマクロブロックの位置を一つの変数で表すために、macroblock_addressを、
macroblock_address=mb_row×mb_width+mb_column
このように定義する。
【0052】
ストリーム上でのスライスとマクロブロックの順は、macroblock_addressの小さい順でなければいけないと定められている。すなわち、ストリームは、画面の上から下、左から右の順に伝送される。
【0053】
MPEGでは、1スライスを1ストライプ(16ライン)で構成することが多いが、画面の左端から可変長符号化が始まり、右端で終わる。従って、VTRによってそのままMPEGエレメンタリストリームを記録した場合、高速再生時に、再生できる部分が画面の左端に集中し、均一に更新することができない。また、データのテープ上の配置を予測できないため、テープパターンを一定の間隔でトレースしたのでは、均一な画面更新ができなくなる。さらに、1箇所でもエラーが発生すると、画面右端まで影響し、次のスライスヘッダが検出されるまで復帰できない。このために、1スライスを1マクロブロックで構成するようにしている。
【0054】
図15は、この一実施形態による記録再生装置の記録側の構成の一例を示す。記録時には、端子100から入力されたディジタル信号がSDI(Serial Data Interface) 受信部101に供給される。SDIは、(4:2:2)コンポーネントビデオ信号とディジタルオーディオ信号と付加的データとを伝送するために、SMPTEによって規定されたインターフェイスである。SDI受信部101で、入力されたディジタル信号からディジタルビデオ信号とディジタルオーディオ信号とがそれぞれ抽出され、ディジタルビデオ信号は、MPEGエンコーダ102に供給され、ディジタルオーディオ信号は、ディレイ103を介してECCエンコーダ109に供給される。ディレイ103は、ディジタルオーディオ信号とディジタルビデオ信号との時間差を解消するためのものである。
【0055】
また、SDI受信部101では、入力されたディジタル信号から同期信号を抽出し、抽出された同期信号をタイミングジェネレータ104に供給する。タイミングジェネレータ104には、端子105から外部同期信号を入力することもできる。タイミングジェネレータ104では、入力されたこれらの同期信号および後述するSDTI受信部108から供給される同期信号のうち、指定された信号に基づきタイミングパルスを生成する。生成されたタイミングパルスは、この記録再生装置の各部に供給される。
【0056】
入力ビデオ信号は、MPEGエンコーダ102においてDCT(Discrete Cosine Transform) の処理を受け、係数データに変換され、係数データが可変長符号化される。MPEGエンコーダ102からの可変長符号化(VLC)データは、MPEG2に準拠したエレメンタリストリーム(ES)である。この出力は、記録側のマルチフォーマットコンバータ(以下、MFCと称する)106の一方の入力端に供給される。
【0057】
一方、入力端子107を通じて、SDTI(Serial Data Transport Interface) のフォーマットのデータが入力される。この信号は、SDTI受信部108で同期検出される。そして、バッファに一旦溜め込まれ、エレメンタリストリームが抜き出される。抜き出されたエレメンタリストリームは、記録側MFC106の他方の入力端に供給される。同期検出されて得られた同期信号は、上述したタイミングジェネレータ104に供給される。
【0058】
一実施形態では、例えばMPEG ES(MPEGエレメンタリストリーム)を伝送するために、SDTI(Serial Data Transport Interface)−CP(Content Package) が使用される。このESは、4:2:2のコンポーネントであり、また、上述したように、全てIピクチャのストリームであり、1GOP=1ピクチャの関係を有する。SDTI−CPのフォーマットでは、MPEG ESがアクセスユニットへ分離され、また、フレーム単位のパケットにパッキングされている。SDTI−CPでは、十分な伝送帯域(クロックレートで27MHzまたは36MHz、ストリームビットレートで270M bpsまたは360M bps)を有しており、1フレーム期間で、バースト的にESを送ることが可能である。
【0059】
すなわち、1フレーム期間のSAVの後からEAVまでの間に、システムデータ、ビデオストリーム、オーディオストリーム、AUXデータが配される。1フレーム期間全体にデータが存在せずに、その先頭から所定期間バースト状にデータが存在する。フレームの境界においてSDTI−CPのストリーム(ビデオおよびオーディオ)をストリームの状態でスイッチングすることができる。SDTI−CPは、クロック基準としてSMPTEタイムコードを使用したコンテンツの場合に、オーディオ、ビデオ間の同期を確立する機構を有する。さらに、SDTI−CPとSDIとが共存可能なように、フォーマットが決められている。
【0060】
上述したSDTI−CPを使用したインターフェースは、TS(Transport Stream)を転送する場合のように、エンコーダおよびデコーダがVBV(Video Buffer Verifier) バッファおよびTBs(Transport Buffers) を通る必要がなく、ディレイを少なくできる。また、SDTI−CP自体が極めて高速の転送が可能なこともディレイを一層少なくする。従って、放送局の全体を管理するような同期が存在する環境では、SDTI−CPを使用することが有効である。
【0061】
なお、SDTI受信部108では、さらに、入力されたSDTI−CPのストリームからディジタルオーディオ信号を抽出する。抽出されたディジタルオーディオ信号は、ECCエンコーダ109に供給される。
【0062】
記録側MFC106は、セレクタおよびストリームコンバータを内蔵する。記録側MFC106は、例えば1個の集積回路内に構成される。記録側MFC106において行われる処理について説明する。上述したMPEGエンコーダ102およびSDTI受信部108から供給されたMPEG ESは、セレクタで何方か一方を選択され、ストリームコンバータに供給される。
【0063】
ストリームコンバータでは、MPEG2の規定に基づきDCTブロック毎に並べられていたDCT係数を、1マクロブロックを構成する複数のDCTブロックを通して、周波数成分毎にまとめ、まとめた周波数成分を並べ替える。また、ストリームコンバータは、エレメンタリストリームの1スライスが1ストライプの場合には、1スライスを1マクロブロックからなるものにする。さらに、ストリームコンバータは、1マクロブロックで発生する可変長データの最大長を所定長に制限する。これは、高次のDCT係数を0とすることでなしうる。並べ替えられた変換エレメンタリストリームは、ECCエンコーダ109に供給される。
【0064】
ECCエンコーダ109は、大容量のメインメモリが接続され(図示しない)、パッキングおよびシャフリング部、オーディオ用外符号エンコーダ、ビデオ用外符号エンコーダ、内符号エンコーダ、オーディオ用シャフリング部およびビデオ用シャフリング部などを内蔵する。また、ECCエンコーダ109は、シンクブロック単位でIDを付加する回路や、同期信号を付加する回路を含む。ECCエンコーダ109は、例えば1個の集積回路で構成される。
【0065】
なお、一実施形態では、ビデオデータおよびオーディオデータに対するエラー訂正符号としては、積符号が使用される。積符号は、ビデオデータまたはオーディオデータの2次元配列の縦方向に外符号の符号化を行い、その横方向に内符号の符号化を行い、データシンボルを2重に符号化するものである。外符号および内符号としては、リードソロモンコード(Reed-Solomon code) を使用できる。
【0066】
ECCエンコーダ109における処理について説明する。エレメンタリストリームのビデオデータは、可変長符号化されているため、各マクロブロックのデータの長さが不揃いである。パッキングおよびシャフリング部では、マクロブロックが固定枠に詰め込まれる。このとき、固定枠からはみ出たオーバーフロー部分は、固定枠のサイズに対して空いている領域に順に詰め込まれる。
【0067】
また、画像フォーマット、シャフリングパターンのバージョン等の情報を有するシステムデータが、後述するシスコン121から供給され、図示されない入力端から入力される。システムデータは、パッキングおよびシャフリング部に供給され、ピクチャデータと同様に記録処理を受ける。システムデータは、ビデオAUXとして記録される。また、走査順に発生する1フレームのマクロブロックを並び替え、テープ上のマクロブロックの記録位置を分散させるシャフリングが行われる。シャフリングによって、変速再生時に断片的にデータが再生される時でも、画像の更新率を向上させることができる。
【0068】
パッキングおよびシャフリング部からのビデオデータおよびシステムデータ(以下、特に必要な場合を除き、システムデータを含む場合も単にビデオデータと称する)は、ビデオデータに対して外符号化の符号化を行うビデオ用外符号エンコーダに供給され、外符号パリティが付加される。外符号エンコーダの出力は、ビデオ用シャフリング部で、複数のECCブロックにわたってシンクブロック単位で順番を入れ替える、シャフリングがなされる。シンクブロック単位のシャフリングによって特定のECCブロックにエラーが集中することが防止される。シャフリング部でなされるシャフリングを、インターリーブと称することもある。ビデオ用シャフリング部の出力は、メインメモリに書き込まれる。
【0069】
一方、上述したように、SDTI受信部108あるいはディレイ103から出力されたディジタルオーディオ信号がECCエンコーダ109に供給される。この一実施形態では、非圧縮のディジタルオーディオ信号が扱われる。ディジタルオーディオ信号は、これらに限らず、オーディオインターフェースを介して入力されるようにもできる。また、図示されない入力端子から、オーディオAUXが供給される。オーディオAUXは、補助的データであり、オーディオデータのサンプリング周波数等のオーディオデータに関連する情報を有するデータである。オーディオAUXは、オーディオデータに付加され、オーディオデータと同等に扱われる。
【0070】
オーディオAUXが付加されたオーディオデータ(以下、特に必要な場合を除き、AUXを含む場合も単にオーディオデータと称する)は、オーディオデータに対して外符号の符号化を行うオーディオ用外符号エンコーダに供給される。オーディオ用外符号エンコーダの出力がオーディオ用シャフリング部に供給され、シャフリング処理を受ける。オーディオシャフリングとして、シンクブロック単位のシャフリングと、チャンネル単位のシャフリングとがなされる。
【0071】
オーディオ用シャフリング部の出力は、メインメモリに書き込まれる。上述したように、メインメモリには、ビデオ用シャフリング部の出力も書き込まれており、メインメモリで、オーディオデータとビデオデータとが混合され、1チャンネルのデータとされる。
【0072】
メインメモリからデータが読み出され、シンクブロック番号を示す情報等を有するIDが付加され、内符号エンコーダに供給される。内符号エンコーダでは、供給されたデータに対して内符号の符号化を施す。内符号エンコーダの出力に対してシンクブロック毎の同期信号が付加され、シンクブロックが連続する記録データが構成される。
【0073】
ECCエンコーダ109から出力された記録データは、記録アンプなどを含むイコライザ110に供給され、記録RF信号に変換される。記録RF信号は、回転ヘッドが所定に設けられた回転ドラム111に供給され、磁気テープ112上に記録される。回転ドラム111には、実際には、隣接するトラックを形成するヘッドのアジマスが互いに異なる複数の磁気ヘッドが取り付けられている。
【0074】
記録データに対して必要に応じてスクランブル処理を行っても良い。また、記録時にディジタル変調を行っても良く、さらに、パーシャル・レスポンスクラス4とビタビ符号を使用しても良い。なお、イコライザ110は、記録側の構成と再生側の構成とを共に含む。
【0075】
図16は、上述した回転ヘッドにより磁気テープ上に形成されるトラックフォーマットの一例を示す。この例では、1フレーム当たりのビデオおよびオーディオデータが4トラックで記録されている。互いに異なるアジマスの2トラックによって1セグメントが構成される。すなわち、4トラックは、4セグメントからなる。セグメントを構成する1組のトラックに対して、アジマスと対応するトラック番号〔0〕とトラック番号〔1〕が付される。トラックのそれぞれにおいて、両端側にビデオデータが記録されるビデオセクタが配され、ビデオセクタに挟まれて、オーディオデータが記録されるオーディオセクタが配される。この図16は、テープ上のセクタの配置を示すものである。
【0076】
この例では、4チャンネルのオーディオデータを扱うことができるようにされている。A1〜A4は、それぞれオーディオデータの1〜4chを示す。オーディオデータは、セグメント単位で配列を変えられて記録される。また、ビデオデータは、この例では、1トラックに対して4エラー訂正ブロック分のデータがインターリーブされ、Upper SideおよびLower Sideのセクタに分割され記録される。
【0077】
Lower Sideのビデオセクタには、所定位置にシステム領域(SYS)が設けられる。システム領域は、例えば、Lower Sideのビデオセクタの先頭側と末尾側とに、トラック毎に交互に設けられる。
【0078】
なお、図16において、SATは、サーボロック用の信号が記録されるエリアである。また、各記録エリアの間には、所定の大きさのギャップが設けられる。
【0079】
図16は、1フレーム当たりのデータを4トラックで記録する例であるが、記録再生するデータのフォーマットによっては、1フレーム当たりのデータを8トラック、6トラックなどで記録するようにができる。
【0080】
図16Bに示されるように、テープ上に記録されるデータは、シンクブロックと称される等間隔に区切られた複数のブロックからなる。図16Cは、シンクブロックの構成を概略的に示す。シンクブロックは、同期検出するためのSYNCパターン、シンクブロックのそれぞれを識別するためのID、後続するデータの内容を示すDID、データパケットおよびエラー訂正用の内符号パリティから構成される。データは、シンクブロック単位でパケットとして扱われる。すなわち、記録あるいは再生されるデータ単位の最小のものが1シンクブロックである。シンクブロックが多数並べられて(図16B)、例えばビデオセクタが形成される。
【0081】
図15の説明に戻り、再生時には、磁気テープ112から回転ドラム111で再生された再生信号が再生アンプなどを含むイコライザ110の再生側の構成に供給される。イコライザ110では、再生信号に対して、等化や波形整形などがなされる。また、ディジタル変調の復調、ビタビ復号等が必要に応じてなされる。イコライザ110の出力は、ECCデコーダ113に供給される。
【0082】
ECCデコーダ113は、上述したECCエンコーダ109と逆の処理を行うもので、大容量のメインメモリと、内符号デコーダ、オーディオ用およびビデオ用それぞれのデシャフリング部ならびに外符号デコーダを含む。さらに、ECCデコーダ113は、ビデオ用として、デシャフリングおよびデパッキング部、データ補間部を含む。同様に、オーディオ用として、オーディオAUX分離部とデータ補間部を含む。ECCデコーダ113は、例えば1個の集積回路で構成される。
【0083】
ECCデコーダ113における処理について説明する。ECCデコーダ113では、先ず、同期検出を行いシンクブロックの先頭に付加されている同期信号を検出し、シンクブロックを切り出す。データは、シンクブロック毎に内符号エンコーダに供給され、内符号のエラー訂正がなされる。内符号エンコーダの出力に対してID補間処理がなされ、内符号によりエラーとされたシンクブロックのID例えばシンクブロック番号が補間される。IDが補間された再生データは、ビデオデータとオーディオデータとに分離される。
【0084】
上述したように、ビデオデータは、MPEGのイントラ符号化で発生したDCT係数データおよびシステムデータを意味し、オーディオデータは、PCM(Pulse Code Modulation) データおよびオーディオAUXを意味する。
【0085】
分離されたオーディオデータは、オーディオ用デシャフリング部に供給され、記録側のシャフリング部でなされたシャフリングと逆の処理を行う。デシャフリング部の出力がオーディオ用の外符号デコーダに供給され、外符号によるエラー訂正がなされる。オーディオ用の外符号デコーダからは、エラー訂正されたオーディオデータが出力される。訂正できないエラーがあるデータに関しては、エラーフラグがセットされる。
【0086】
オーディオ用の外符号デコーダの出力から、オーディオAUX分離部でオーディオAUXが分離され、分離されたオーディオAUXがECCデコーダ113から出力される(経路は省略する)。オーディオAUXは、例えば後述するシスコン121に供給される。また、オーディオデータは、データ補間部に供給される。データ補間部では、エラーの有るサンプルが補間される。補間方法としては、時間的に前後の正しいデータの平均値で補間する平均値補間、前の正しいサンプルの値をホールドする前値ホールド等を使用できる。
【0087】
データ補間部の出力がECCデコーダ113からのオーディオデータの出力であって、ECCデコーダ113から出力されたオーディオデータは、ディレイ117およびSDTI出力部115に供給される。ディレイ117は、後述するMPEGデコーダ116でのビデオデータの処理による遅延を吸収するために設けられる。ディレイ117に供給されたオーディオデータは、所定の遅延を与えられて、SDI出力部118に供給される。
【0088】
分離されたビデオデータは、デシャフリング部に供給され、記録側のシャフリングと逆の処理がなされる。デシャフリング部は、記録側のシャフリング部でなされたシンクブロック単位のシャフリングを元に戻す処理を行う。デシャフリング部の出力が外符号デコーダに供給され、外符号によるエラー訂正がなされる。訂正できないエラーが発生した場合には、エラーの有無を示すエラーフラグがエラー有りを示すものとされる。
【0089】
外符号デコーダの出力がデシャフリングおよびデパッキング部に供給される。デシャフリングおよびデパッキング部は、記録側のパッキングおよびシャフリング部でなされたマクロブロック単位のシャフリングを元に戻す処理を行う。また、デシャフリングおよびデパッキング部では、記録時に施されたパッキングを分解する。すなわち、マクロブロック単位にデータの長さを戻して、元の可変長符号を復元する。さらに、デシャフリングおよびデパッキング部において、システムデータが分離され、ECCデコーダ113から出力され、後述するシスコン121に供給される。
【0090】
デシャフリングおよびデパッキング部の出力は、データ補間部に供給され、エラーフラグが立っている(すなわち、エラーのある)データが修整される。すなわち、変換前に、マクロブロックデータの途中にエラーがあるとされた場合には、エラー箇所以降の周波数成分のDCT係数が復元できない。そこで、例えばエラー箇所のデータをブロック終端符号(EOB)に置き替え、それ以降の周波数成分のDCT係数をゼロとする。同様に、高速再生時にも、シンクブロック長に対応する長さまでのDCT係数のみを復元し、それ以降の係数は、ゼロデータに置き替えられる。さらに、データ補間部では、ビデオデータの先頭に付加されているヘッダがエラーの場合に、ヘッダ(シーケンスヘッダ、GOPヘッダ、ピクチャヘッダ、ユーザデータ等)を回復する処理もなされる。
【0091】
DCTブロックに跨がって、DCT係数がDC成分および低域成分から高域成分へと並べられているため、このように、ある箇所以降からDCT係数を無視しても、マクロブロックを構成するDCTブロックのそれぞれに対して、満遍なくDCならびに低域成分からのDCT係数を行き渡らせることができる。
【0092】
データ補間部から出力されたビデオデータがECCデコーダ113の出力であって、ECCデコーダ113の出力は、再生側のマルチフォーマットコンバータ(以下、再生側MFCと略称する)114に供給される。再生側MFC114は、上述した記録側MFC106と逆の処理を行うものであって、ストリームコンバータを含む。再生側MFC114は、例えば1個の集積回路で構成される。
【0093】
ストリームコンバータでは、記録側のストリームコンバータと逆の処理がなされる。すなわち、DCTブロックに跨がって周波数成分毎に並べられていたDCT係数を、DCTブロック毎に並び替える。これにより、再生信号がMPEG2に準拠したエレメンタリストリームに変換される。
【0094】
ストリームコンバータの入出力は、記録側と同様に、マクロブロックの最大長に応じて、十分な転送レート(バンド幅)を確保しておく。マクロブロック(スライス)の長さを制限しない場合には、画素レートの3倍のバンド幅を確保するのが好ましい。
【0095】
ストリームコンバータの出力が再生側MFC114の出力であって、再生側MFC114の出力は、SDTI出力部115およびMPEGデコーダ116に供給される。
【0096】
MPEGデコーダ116は、エレメンタリストリームを復号し、ビデオデータを出力する。すなわち、MPEGデコーダ142は、逆量子化処理と、逆DCT処理とがなされる。復号ビデオデータは、SDI出力部118に供給される。上述したように、SDI出力部118には、ECCデコーダ113でビデオデータと分離されたオーディオデータがディレイ117を介して供給されている。SDI出力部118では、供給されたビデオデータとオーディオデータとを、SDIのフォーマットにマッピングし、SDIフォーマットのデータ構造を有するストリームへ変換される。SDI出力部118からのストリームが出力端子120から外部へ出力される。
【0097】
一方、SDTI出力部115には、上述したように、ECCデコーダ113でビデオデータと分離されたオーディオデータが供給されている。SDTI出力部115では、供給された、エレメンタリストリームとしてのビデオデータと、オーディオデータとをSDTIのフォーマットにマッピングし、SDTIフォーマットのデータ構造を有するストリームへ変換される。変換されたストリームは、出力端子119から外部へ出力される。
【0098】
図15において、シスコン121は、例えばマイクロコンピュータからなり、この記憶再生装置の全体の動作を制御する。またサーボ122は、シスコン121と互いに通信を行いながら、磁気テープ112の走行制御や回転ドラム111の駆動制御などを行う。
【0099】
図17Aは、MPEGエンコーダ102のDCT回路から出力されるビデオデータ中のDCT係数の順序を示す。SDTI受信部108から出力されるMPEG ESについても同様である。以下では、MPEGエンコーダ102の出力を例に用いて説明する。DCTブロックにおいて左上のDC成分から開始して、水平ならびに垂直空間周波数が高くなる方向に、DCT係数がジグザグスキャンで出力される。その結果、図17Bに一例が示されるように、全部で64個(8画素×8ライン)のDCT係数が周波数成分順に並べられて得られる。
【0100】
このDCT係数がMPEGエンコーダのVLC部によって可変長符号化される。すなわち、最初の係数は、DC成分として固定的であり、次の成分(AC成分)からは、ゼロのランとそれに続くレベルに対応してコードが割り当てられる。従って、AC成分の係数データに対する可変長符号化出力は、周波数成分の低い(低次の)係数から高い(高次の)係数へと、AC1 ,AC2 ,AC3 ,・・・と並べられたものである。可変長符号化されたDCT係数をエレメンタリストリームが含んでいる。
【0101】
上述した記録側MFC106に内蔵される、記録側のストリームコンバータでは、供給された信号のDCT係数の並べ替えが行われる。すなわち、それぞれのマクロブロック内で、ジグザグスキャンによってDCTブロック毎に周波数成分順に並べられたDCT係数がマクロブロックを構成する各DCTブロックにわたって周波数成分順に並べ替えられる。
【0102】
図18は、この記録側ストリームコンバータにおけるDCT係数の並べ替えを概略的に示す。(4:2:2)コンポーネント信号の場合に、1マクロブロックは、輝度信号Yによる4個のDCTブロック(Y1 ,Y2 ,Y3 およびY4 )と、色度信号Cb,Crのそれぞれによる2個ずつのDCTブロック(Cb1 ,Cb2 ,Cr1 およびCr2 )からなる。
【0103】
上述したように、MPEGエンコーダ102では、MPEG2の規定に従いジグザグスキャンが行われ、図18Aに示されるように、各DCTブロック毎に、DCT係数がDC成分および低域成分から高域成分に、周波数成分の順に並べられる。一つのDCTブロックのスキャンが終了したら、次のDCTブロックのスキャンが行われ、同様に、DCT係数が並べられる。
【0104】
すなわち、マクロブロック内で、DCTブロックY1 ,Y2 ,Y3 およびY4 、DCTブロックCb1 ,Cb2 ,Cr1 およびCr2 のそれぞれについて、DCT係数がDC成分および低域成分から高域成分へと周波数順に並べられる。そして、連続したランとそれに続くレベルとからなる組に、〔DC,AC1 ,AC2 ,AC3 ,・・・〕と、それぞれ符号が割り当てられるように、可変長符号化されている。
【0105】
記録側ストリームコンバータでは、可変長符号化され並べられたDCT係数を、一旦可変長符号を解読して各係数の区切りを検出し、マクロブロックを構成する各DCTブロックに跨がって周波数成分毎にまとめる。この様子を、図18Bに示す。最初にマクロブロック内の8個のDCTブロックのDC成分をまとめ、次に8個のDCTブロックの最も周波数成分が低いAC係数成分をまとめ、以下、順に同一次数のAC係数をまとめるように、8個のDCTブロックに跨がって係数データを並び替える。
【0106】
並び替えられた係数データは、DC(Y1 ),DC(Y2 ),DC(Y3 ),DC(Y4 ),DC(Cb1 ),DC(Cb2 ),DC(Cr1 ),DC(Cr2 ),AC1 (Y1 ),AC1 (Y2 ),AC1 (Y3 ),AC1 (Y4 ),AC1 (Cb1 ),AC1 (Cb2 ),AC1 (Cr1 ),AC1 (Cr2 ),・・・である。ここで、DC、AC1 、AC2 、・・・は、図17を参照して説明したように、ランとそれに続くレベルとからなる組に対して割り当てられた可変長符号の各符号である。
【0107】
記録側ストリームコンバータで係数データの順序が並べ替えられた変換エレメンタリストリームは、ECCエンコーダ109に内蔵されるパッキングおよびシャフリング部に供給される。マクロブロックのデータの長さは、変換エレメンタリストリームと変換前のエレメンタリストリームとで同一である。また、MPEGエンコーダ102において、ビットレート制御によりGOP(1フレーム)単位に固定長化されていても、マクロブロック単位では、長さが変動している。パッキングおよびシャフリング部では、マクロブロックのデータを固定枠に当てはめる。
【0108】
図19は、パッキングおよびシャフリング部でのマクロブロックのパッキング処理を概略的に示す。マクロブロックは、所定のデータ長を持つ固定枠に当てはめられ、パッキングされる。このとき用いられる固定枠のデータ長を、記録および再生の際のデータの最小単位であるシンクブロックのデータ長と一致させている。これは、シャフリングおよびエラー訂正符号化の処理を簡単に行うためである。図19では、簡単のため、1フレームに8マクロブロックが含まれるものと仮定する。
【0109】
可変長符号化によって、図19Aに一例が示されるように、8マクロブロックの長さは、互いに異なる。この例では、固定枠である1シンクブロックのデータ領域の長さと比較して、マクロブロック#1のデータ,#3のデータおよび#6のデータがそれぞれ長く、マクロブロック#2のデータ,#5のデータ,#7のデータおよび#8のデータがそれぞれ短い。また、マクロブロック#4のデータは、1シンクブロックと略等しい長さである。
【0110】
パッキング処理によって、マクロブロックが1シンクブロック長の固定長枠に詰め込まれる。過不足無くデータを詰め込むことができるのは、1フレーム期間で発生するデータ量が固定量に制御されているからである。図19Bに一例が示されるように、1シンクブロックと比較して長いマクロブロックは、シンクブロック長に対応する位置で分割される。分割されたマクロブロックのうち、シンクブロック長からはみ出た部分(オーバーフロー部分)は、先頭から順に空いている領域に、すなわち、長さがシンクブロック長に満たないマクロブロックの後ろに、詰め込まれる。
【0111】
図19Bの例では、マクロブロック#1の、シンクブロック長からはみ出た部分が、先ず、マクロブロック#2の後ろに詰め込まれ、そこがシンクブロックの長さに達すると、マクロブロック#5の後ろに詰め込まれる。次に、マクロブロック#3の、シンクブロック長からはみ出た部分がマクロブロック#7の後ろに詰め込まれる。さらに、マクロブロック#6のシンクブロック長からはみ出た部分がマクロブロック#7の後ろに詰め込まれ、さらにはみ出た部分がマクロブロック#8の後ろに詰め込まれる。こうして、各マクロブロックがシンクブロック長の固定枠に対してパッキングされる。
【0112】
各マクロブロックに対応する可変長データの長さは、記録側ストリームコンバータにおいて予め調べておくことができる。これにより、このパッキング部では、VLCデータをデコードして内容を検査すること無く、マクロブロックのデータの最後尾を知ることができる。
【0113】
図20は、上述したECCエンコーダ109のより具体的な構成を示す。図20において、164がICに対して外付けのメインメモリ160のインターフェースである。メインメモリ160は、SDRAMで構成されている。インターフェース164によって、内部からのメインメモリ160に対する要求を調停し、メインメモリ160に対して書込み/読出しの処理を行う。また、パッキング部137a、ビデオシャフリング部137b、パッキング部137cによって、パッキングおよびシャフリング部137が構成される。
【0114】
図21は、メインメモリ160のアドレス構成の一例を示す。メインメモリ160は、例えば64MビットのSDRAMで構成される。メインメモリ160は、ビデオ領域250、オーバーフロー領域251およびオーディオ領域252を有する。ビデオ領域250は、4つのバンク(vbank#0、vbank#1、vbank#2およびvbank#3)からなる。4バンクのそれぞれは、1等長化単位のディジタルビデオ信号が格納できる。
【0115】
なお、1等長化単位は、発生するデータ量を略目標値に制御する単位である。例えば、磁気テープへの記録フォーマットにより、1フレーム分のデータを記録するように定められたトラック数に記録可能なデータ量が1等長化単位とされる。
【0116】
図21中の、部分Aは、ビデオ信号の1シンクブロックのデータ部分を示す。1シンクブロックには、フォーマットによって異なるバイト数のデータが挿入される。複数のフォーマットに対応するために、最大のバイト数以上であって、処理に都合の良いバイト数例えば256バイトが1シンクブロックのデータサイズとされている。
【0117】
ビデオ領域の各バンクは、さらに、パッキング用領域250Aと内符号化エンコーダへの出力用領域250Bとに分けられる。オーバーフロー領域251は、上述のビデオ領域に対応して、4つのバンクからなる。さらに、オーディオデータ処理用の領域252をメインメモリ160が有する。
【0118】
この一実施形態では、各マクロブロックのデータ長標識を参照することによって、パッキング部137aが固定枠長データと、固定枠を越える部分であるオーバーフローデータとをメインメモリ160の別々の領域に分けて記憶する。固定枠長データは、シンクブロックのデータ領域の長さ以下のデータであり、以下、ブロック長データと称する。ブロック長データを記憶する領域は、各バンクのパッキング処理用領域250Aである。オーバーフローデータは、オーバーフローチャート領域251に記憶される。ブロック長より短いデータ長の場合には、メインメモリ160の対応する領域に空き領域を生じる。ビデオシャフリング部137bが書込みアドレスを制御することによってシャフリングを行う。ここで、ビデオシャフリング部137bは、ブロック長データのみをシャフリングし、オーバーフロー部分は、シャフリングせずに、オーバーフローデータに割り当てられた領域に書込まれる。
【0119】
次に、パッキング部137cが外符号エンコーダ139へのメモリにオーバーフロー部分をパッキングして読み込む処理を行う。すなわち、メインメモリ160から外符号エンコーダ139に用意されている1ECCブロック分のメモリに対してブロック長のデータを読み込み、若し、ブロック長のデータに空き領域が有れば、そこにオーバーフロー部分を読み込んでブロック長にデータが詰まるようにする。そして、1ECCブロック分のデータを読み込むと、読み込み処理を一時中断し、外符号エンコーダ139によって外符号のパリティを生成する。外符号パリティは、外符号エンコーダ139のメモリに格納する。外符号エンコーダ139の処理が1ECCブロック分終了すると、外符号エンコーダ139からデータおよび外符号パリティを内符号を行う順序に並び替えて、メインメモリ160のパッキング処理用領域250Aと別の出力用領域250Bに書き戻す。ビデオシャフリング部140は、この外符号の符号化が終了したデータをメインメモリ160へ書き戻す時のアドレスを制御することによって、シンクブロック単位のシャフリングを行う。
【0120】
このようにブロック長データとオーバーフローデータとを分けてメインメモリ160の第1の領域250Aへのデータの書込み(第1のパッキング処理)、外符号エンコーダ139へのメモリにオーバーフローデータをパッキングして読み込む処理(第2のパッキング処理)、外符号パリティの生成、データおよび外符号パリティをメインメモリ160の第2の領域250Bに書き戻す処理が1ECCブロック単位でなされる。外符号エンコーダ139がECCブロックのサイズのメモリを備えることによって、メインメモリ160へのアクセスの頻度を少なくすることができる。
【0121】
そして、1ピクチャに含まれる所定数のECCブロック(例えば32個のECCブロック)の処理が終了すると、1ピクチャのパッキング、外符号の符号化が終了する。そして、インターフェース164を介してメインメモリ160の領域250Bから読出したデータがID付加部148、内符号エンコーダ147、同期付加部150で処理され、並列直列変換部124によって、同期付加部150の出力データがビットシリアルデータに変換される。出力されるシリアルデータがパーシャル・レスポンスクラス4のプリコーダ125により処理される。この出力が必要に応じてディジタル変調され、記録アンプ110を介して、回転ドラム111に設けられた回転ヘッドに供給される。
【0122】
なお、ECCブロック内にヌルシンクと称する有効なデータが配されないシンクブロックを導入し、記録ビデオ信号のフォーマットの違いに対してECCブロックの構成の柔軟性を持たせるようになされる。ヌルシンクは、パッキングおよびシャフリングブロック137のパッキング部137aにおいて生成され、メインメモリ160に書込まれる。従って、ヌルシンクがデータ記録領域を持つことになるので、これをオーバーフロー部分の記録用シンクとして使用することができる。
【0123】
オーディオデータの場合では、1フィールドのオーディオデータの偶数番目のサンプルと奇数番目のサンプルとがそれぞれ別のECCブロックを構成する。ECCの外符号の系列は、入力順序のオーディオサンプルで構成されるので、外符号系列のオーディオサンプルが入力される毎に外符号エンコーダ136が外符号パリティを生成する。外符号エンコーダ136の出力をメインメモリ160の領域252に書込む時のアドレス制御によって、シャフリング部137がシャフリング(チャンネル単位およびシンクブロック単位)を行う。
【0124】
さらに、126で示すCPUインターフェースが設けられ、システムコントローラとして機能する外部のCPU127からのデータを受け取り、内部ブロックに対してパラメータの設定が可能とされている。複数のフォーマットに対応するために、シンクブロック長、パリティ長を始め多くのパラメータを設定することが可能とされている。
【0125】
パラメータの1つとしての”パッキング長データ”は、パッキング部137aおよび137bに送られ、パッキング部137a、137bは、これに基づいて決められた固定枠(図19Aで「シンクブロック長」として示される長さ)にVLCデータを詰め込む。
【0126】
パラメータの1つとしての”パック数データ”は、パッキング部137bに送られ、パッキング部137bは、これに基づいて1シンクブロック当たりのパック数を決め、決められたパック数分のデータを外符号エンコーダ139に供給する。
【0127】
パラメータの1つとしての”ビデオ外符号パリティ数データ”は、外符号エンコーダ139に送られ、外符号エンコーダ139は、これに基づいた数のパリティが発生されるビデオデータの外符号の符号化を行う。
【0128】
パラメータの1つとしての”ID情報”および”DID情報”のそれぞれは、ID付加部148に送られ、ID付加部148は、これらID情報およびDID情報をメインメモリ160から読み出された単位長のデータ列に付加する。
【0129】
パラメータの1つとしての”ビデオ内符号用パリティ数データ”および”オーディオ内符号用パリティ数データ”のそれぞれは、内符号エンコーダ149に送られ、内符号エンコーダ149は、これらに基づいた数のパリティが発生されるビデオデータとオーディオデータの内符号の符号化を行う。なお、内符号エンコーダ149には、パラメータの1つである”シンク長データ”も送られており、これにより、内符号化されたデータの単位長(シンク長)が規制される。
【0130】
また、パラメータの1つとしてのシャフリングテーブルデータがビデオ用シャフリングテーブル(RAM)128vおよびオーディオ用シャフリングテーブル(RAM)128aに格納される。シャフリングテーブル128vは、ビデオシャフリング部137bおよび140のシャフリングのためのアドレス変換を行う。シャフリングテーブル128aは、オーディオシャフリング137のためのアドレス変換を行う。
【0131】
この発明では、記録時に、1フレームの画像データが可変長符号化により1等長化単位を越えた場合、1フレーム全体で1等長化単位を越えないように、パッキングにより移動されたデータを捨てるようにする。図22および図23を用いて、可変長符号化されたマクロブロックのパッキングおよびパッキングされたデータの磁気テープ112への記録について、概略的に説明する。
【0132】
図22は、1フレームの画像データが可変長符号化により1等長化単位を越えない場合の例である。図22Aに一例が示されるように、画面上で分散されていたマクロブロックMB1〜4がシャフリングされ、図22Bのように順に並べられる。これらマクロブロックMB1〜4は、MPEGエンコーダにより符号化され、図22Bに示されるように、マクロブロック毎に、スライススタートコードに続けて順に並べられる。各マクロブロックは、先頭にスライススタートコードを付されると共に、輝度信号Y、色差信号Cb、Crの順にデータが並べ替えられる。
【0133】
図22Bに示される各マクロブロックは、それぞれ固定枠に当てはめられ、固定枠長のセグメントに割り当てられる。固定枠からはみ出た部分300、301および302は、図22Cに示されるように、セグメントに割り当てられたマクロブロックが固定枠長よりも短い、他のセグメントに移動され、パッキングされる。また、各マクロブロックにおいて、DCT係数は、DC成分を先頭に、AC成分の次数の低い方から高い方へと順に並べられている。したがって、他のセグメントに移動された部分300、301および302は、より周波数成分の高い係数が格納される。すなわち、移動された部分300、301および302は、再生画像において、視覚的に影響の小さいデータが格納されているということができる。
【0134】
このようにパッキングされたデータは、図22Dに一例が示されるように、各トラックにおいてセグメントが等しく割り当てられ、磁気テープ112上に記録される。この図22Dに示される例では、1トラックに4セグメントが割り当てられ、8トラックを用いて1フレームが記録されるフォーマットとなっている。
【0135】
1フレームの画像データを可変長符号化したデータ量が1等長化単位と等しいか、または、1等長化単位未満であれば、1フレーム分の全セグメントがデータで満たされるか、図22Cに一例が示されるように、最後のセグメントに空き領域が生じる。これを磁気テープ112に記録すると、図22Dに一例が示されるように、1フレームを構成する複数トラック(この例では8トラック)の最後のトラックの末尾側に、データの記録されない空き領域が生じる。
【0136】
図23は、1フレームの画像データが可変長符号化により1等長化単位を越える場合の例である。上述した図22Aおよび図22Bと同一の経過を辿って図23Aの状態に至る。図23Aにおいて、固定枠からはみ出た部分300’、301’および302’がそれぞれマクロブロックが固定枠長よりも短い、他のセグメントに移動される。
【0137】
一方、この図23の例では、1フレームの画像データを可変長符号化した際のデータ量が、例えば図23Aに示される余り部分303の分だけ1等長化単位を越えている。この一実施形態では、この余り部分303は、磁気テープ112に記録を行う以前に捨てられる。余り部分303が捨てられたデータが磁気テープ112に記録される。図23Bに示されるように、1フレームを構成する最後のトラックまで、等しくデータが詰め込まれ記録される。
【0138】
上述したように、パッキングにより、DCT係数における周波数成分の高い次数側からデータが他のセグメントに移動される。また、各マクロブロックは、画面上の位置に対してシャフリングされてパッキングされる。そのため、データが捨てられたことによる、視覚的な影響は、極めて小さい。
【0139】
次に、この一実施形態についてさらに詳細に説明する。図24は、この一実施形態を実現するための構成を、概念的に示す。この図24に示される構成は、上述した図15の構成から主要な部分を抜き出したものである。図24において、上述の図15に対応する部分には同一の番号を付し、詳細な説明を省略する。
【0140】
記録側について説明する。ベースバンドビデオ信号、すなわち、上述したSDIのインターフェイスに対応したディジタルビデオ信号は、MPEGエンコーダ102に供給され、DCTされ、さらに、可変長符号化される。MPEGエンコーダ102の出力は、セレクタ310を介して符号配列変換回路311に供給される。
【0141】
一方、上述したSDTIのフォーマットのディジタルビデオ信号からMPEGESが抜き出されたデータストリームがセレクタ310を介して符号配列変換回路311に供給される。すなわち、既に可変長符号化されているデータストリームがここで供給される。このデータストリームは、例えばこの装置の外部で生成され供給されるもので、ビットレートがこの装置が対応できるビットレートより高い可能性を有する。このとき、入力されたデータストリームの1フレーム分のデータ量がこの装置による1等長化単位の容量を越えている可能性がある。
【0142】
符号配列変換回路311は、上述した記録側MFC106に内蔵される、記録側ストリームコンバータに相当する。すなわち、符号配列変換回路311に供給されたデータストリームは、図18を用いて既に述べたように、マクロブロックのそれぞれについてDCT係数をDC成分を先頭にしてAC成分の低次から高次へと並べ替えられる。
【0143】
図25、図26および図27を用いて、符号配列変換回路311による処理について、さらに詳細に説明する。図25、図26および図27において、DCT係数のDC成分を「DC」として表し、AC成分を「AC」と表す。AC成分において、零係数の連続回数(ラン)とその直後の非零係数のレベル(レベル)とをまとめたものを、「rAC」と表す。各AC成分の後ろにハイフンによって連結され付される数値は、AC成分の次数を表す。
【0144】
また、図27Aおよび図28Aの各ブロックは、それぞれDCTブロックを示す。すなわち、図27Aおよび図28Aの8個のブロックは、1マクロブロックを構成するDCTブロックに対応する。これらの図において、DCおよびAC成分の後ろに括弧[]付きで付された「Y0」、「Cr1」などは、DCTブロックの種類を示す。
【0145】
符号配列変換回路311に入力されるデータストリームは、MPEGの規格に準じたもので、図25Aに一例が示されるように、DCTブロック毎に、DC成分およびACの低周波成分から高周波成分への順でDCT係数が並べられている。DCTブロックの終端には、EOBが配される。一方、符号配列変換回路311から出力されるデータストリームは、図25Bに一例が示されるように、1マクロブロック中でDCTブロックを跨いで各周波数成分毎にDCT係数がまとめられる。すなわち、DC成分のブロックを先頭に、AC成分のDCT係数が低次から高次へと次数毎にまとめて並べられ、出力される。
【0146】
図25Aの、符号配列変換回路311に入力されるデータストリームについて、さらに詳細に説明する。MPEGエンコーダでは、画像データがマクロブロックに分割され、マクロブロック内の複数のDCTブロック毎にDCTがなされる。図26Aは、DCTされた後のデータを、DCTブロック毎に示す。各DCTブロックは、DC成分およびAC成分の低次から高次の、64個のDCT係数からなる。DCTブロックは、実際には、図26Bに一例が示されるように、係数が0ではない次数と、係数が0になる次数とが存在する。また、各係数は、それぞれ所定のビット幅(例えば12ビット)を有する。
【0147】
次に、図26のようにDCTされたDCT係数に対して可変長符号化を施す。先ず、DCTブロック毎に、係数が0係数の連続回数である「ラン」と、その直後の非0係数の「レベル」とにまとめられ、符号化される。この様子を、図27Bに示す。なお、「ラン」と「レベル」とをまとめて符号化したものを、以下では、「ラン&レベル符号」と称する。ラン&レベル符号は、ビット方向に可変長符号化され、例えば、1〜24ビットが与えられる。図27Aは、DCT係数がラン&レベル符号にまとめられたDCTブロックを示す。各ブロックには、終端に、ブロックの最後を示すEOB(End Of Block)が付加される。EOBは、例えば2乃至は4ビットの所定のビットパターンからなる。
【0148】
図25Aに示すデータストリームは、この図27Aに示される各DCTブロックを、EOBで次のDCTブロックに接続されるように出力することで得られるものである。上述のMPEGエンコーダ102からの出力や、直接的に入力される、SDTIのフォーマットのディジタルビデオ信号からMPEG ESが抜き出されたデータストリームは、この図25Aに示される構造を有している。
【0149】
図25Aのような構造のデータストリームが符号配列変換回路311に入力される。図28は、符号配列変換回路311の一例の構成を示す。入力されたデータストリームは、VLC復号部350に供給される。VLC復号部350では、入力されたデータストリームの可変長符号を復号化し、ラン&レベル符号を元の状態に戻し、シーケンスヘッダコードおよび各層のスタートコードのパターンマッチングを行い、各層のヘッダ部を抽出し、入力されたデータストリームのフォーマットを検出する。
【0150】
フォーマットを検出することにより、1マクロブロックに含まれるDCTブロックの数を知ることができる。この例では、1マクロブロックに含まれるDCTブロックの数は、画像データが4:2:2のシステムでは8個になり、4:2:0のシステムでは6個になる。例えば、この1マクロブロックに含まれるDCTブロックの数によって、後述するメモリ351への書き込みや、メモリ351からの読み出しが制御される。
【0151】
可変長符号を復号化されフォーマットなどを調べられたデータは、VLC復号部350で、再び入力されたデータストリームと同じように、可変長符号化される。VLC復号部からの出力は、メモリ351に供給される。メモリ351では、VLC復号部350でのフォーマットの検出結果に基づき、供給されたデータストリームを書き込むアドレスが制御される。例えば、ラン&レベル符号のそれぞれに24ビットの領域が与えられ、図27Aに示されるように、DCTブロック毎に行方向に書き込まれていき、EOBを書き込んだところで、次の行に移り、次のDCTブロックが書き込まれる。
【0152】
1マクロブロックのデータが全て書き込まれたら、書き込まれたデータが読み出される。読み出しは、図27Aの配置における列方向に向けてなされる。DCTブロックを跨いで同列に並んだラン&レベル符号を読んでいき、1マクロブロックのDCTブロックを1列について一巡したら、最初のDCTブロックに戻り、次の列について、同様に読んでいく。同列にデータが存在しない行は、飛び越して読み出される。
【0153】
このようにデータの読み出しを行った結果、図25Bの例のように、1マクロブロックを構成する全DCTブロックにわたりデータが存在する列、例えばDC成分やACの成分の低周波数側といった1マクロブロックのストリームの前側では、同一の次数の係数がDCTブロックを跨いで連続的にまとめて配列される。一方、ストリームの後半では、1マクロブロックの全DCTブロックにわたりデータが存在するとは限らず、縦方向の同一列においてデータの存在しないDCTブロックが飛ばされ、データが現れた順に配列されたデータストリームが符号配列変換回路311から出力される。
【0154】
符号配列変換回路311の出力は、ECCエンコーダ109に供給される。データストリームは、ECCエンコーダ109のパッキング部137でパッキング処理される。上述した余り部分303を捨てる処理は、ECCエンコーダ109のパッキング部137で行うことができる。例えば、上述したようにメインメモリ160から外符号エンコーダ139にデータが読み込まれ、1ECCブロック毎に外符号の符号化がなされる。外符号エンコーダ139による、1ピクチャに対応する所定数のECCブロック(この例では、32個のECCブロック)の外符号の符号化処理が終了した後に、メインメモリ160のオーバーフロー領域251に処理されないで残されたデータが、余り部分303として捨てられる。
【0155】
このようにして余り部分303を捨てられ、外符号の符号化されたデータは、メインメモリ160から読み出されてID付加、内符号の符号化および同期信号の付加など所定の処理をされ、ECCエンコーダ109から出力される。ECCエンコーダ109の出力は、図15のイコライザ110の記録側の構成に対応する記録アンプ312を介して、回転ドラム111に供給され、磁気テープ112に記録される。
【0156】
再生側について説明する。磁気テープ112から再生された再生データは、図15のイコライザ110の再生側の構成に対応する再生アンプ313を介して、ECC113に供給される。ECC113では、内符号および外符号の復号化がなされ、記録側でパッキング処理されたデータを元に戻すため、デパッキング処理がなされる。記録側で、1等長化単位からはみ出した余り部分303を捨てた場合には、デパッキング処理によって、データが余りが捨てられた状態、すなわち、余り部分303が削除された状態に戻される。
【0157】
ECC113の出力が符号配列逆変換回路314に供給される。符号配列逆変換回路314は、上述した再生側MFC114に内蔵される、再生側ストリームコンバータに相当する。符号配列逆変換回路314に供給される再生データストリームは、上述の図25Bに示されるように、1マクロブロック中でDCTブロックを跨いで各周波数成分毎にDCT係数がまとめられ、DC成分のブロックを先頭に、AC成分のDCT係数が低次から高次へと次数毎にまとめて並べられている。符号配列逆変換回路314では、この再生データストリームを、図25Aで上述した、MPEGの規定に準じたデータストリームに並べ替える。
【0158】
その際、符号配列逆変換回路314では、シンタクスチェックを行い、供給された再生データストリームがMPEGのシンタクスに反していないかどうか判断する。シンタクスチェックにより、記録側で1等長化単位からはみ出した余り部分303を捨てたことでシンタクスエラーが発生したとされたら、符号配列逆変換回路314において、シンタクスエラーを修復するような処理がなされる。符号配列逆変換回路314の詳細については、後述する。
【0159】
符号配列逆変換回路314の出力は、MPEG ESとしてそのまま出力される。あるいは、符号配列逆変換回路314の出力は、MPEGデコーダ116に供給され、可変長符号を復号化され、SDIのフォーマットのディジタルビデオ信号として出力される。
【0160】
図29は、符号配列逆変換回路314の一例の構成を示す。供給された再生データストリームは、VLC復号部360に供給される。VLC復号部360では、供給された再生データストリームの可変長符号を復号化して分解し、ラン&レベル符号とその符号長を、それぞれメモリ361に供給する。また、VLC復号部360では、供給された再生データストリームから各層のヘッダ情報などを抽出し、シンタクスチェックを行う。シンタクスチェックは、例えば以下のように行う。
【0161】
VLC復号部360では、スライススタートコードを検出して、それぞれのスライス中に存在するEOB数を調べる。一方、抽出されたヘッダ情報から、1スライス中に含まれるべきDCTブロック数が分かる(例えば、4:2:2システムならば8個)ので、その数とそれぞれのスライス中に存在するEOB数とを比較し、これらが一致しないスライスでは、記録時に余り部分303が捨てられ、ストリームが欠損したことによってシンタクスエラーが生じたものと判断される。
【0162】
メモリ361では、供給されたラン&レベル符号および符号長を、それぞれ所定のアドレスに書き込む。例えば、DCT係数に対応するラン&レベル符号の次数が各列にそれぞれ割り当てられ、1マクロブロックに含まれるDCTブロックY0〜Cr1が各行にそれぞれ割り当てられる。すなわち、図30Aに一例が示されるように、再生データストリームの順に供給されたラン&レベル符号は、図中にスタートで示される位置から列方向(図の縦方向)に向けて書き込まれる。1マクロブロックに含まれるとされたDCTブロック数(この例では8個)を一巡すると、最初のDCTブロックY0の行に戻り、次の次数のラン&レベル符号が同様にして、列方向に書き込まれる。
【0163】
書き込み時において、EOBが書き込まれた行は、EOBの後ろにはデータが書き込まれない。図30Aの例では、4個のラン&レベル符号の後ろにEOBが書き込まれるDCTブロックY2の行が、最初にEOBが現れる行である。DCTブロックY2の行にEOBが書き込まれ、その列の書き込みが終了すると、最初の行に戻り、次の列の書き込みがなされる。次の列では、DCTブロックY2の行は、スキップされる。すなわち、DCTブロックY1の行にラン&レベル符号が書き込まれ、次には、DCTブロックY3の行にラン&レベル符号が書き込まれる。このようにラン&レベル符号およびEOBが書き込まれ、最後に、最もラン&レベル符号が多く長い行の末尾にEOBが書き込まれ、メモリ361に対する書き込みが正常に終了される。
【0164】
読み出しは、図30Bに一例が示されるように、書き込み時に対して列方向と行方向とを入れ替えて行われる。図中のスタートで示される位置から、行方向(図の横方向)に向けてラン&レベル符号を順次読み出し、EOBが読み出されたら、次の行の先頭から読み出す。このように読み出しを行うことで、DCTブロック毎に、DCT係数が低次から高次へと並べられた、MPEGの規格に準じた順番で、データが出力される。
【0165】
なお、メモリ361からは、ラン&レベルと共に、対応する符号長も読み出される。
【0166】
メモリ361から出力されたラン&レベルおよび符号長は、それぞれ可変長符号接続部362に供給される。可変長符号接続部362では、ラン&レベルを、共に供給された符号長に基づき所定に接続して出力する。これにより、図25Aで上述したような、MPEGの規格に準じたデータストリームが出力される。
【0167】
ここで、記録時に、1フレームのデータが1等長化単位のデータ量を超過し、固定枠からはみ出したデータ(余りの部分303)が捨てられた場合について考える。余りの部分303にEOBが含まれている場合、その余りの部分303の元のDCTブロックには、EOBが欠損しており、そのマクロブロックが正常終了していないことになる。
【0168】
上述したように、この一実施形態においては、符号配列逆変換回路314で、入力された再生データストリームに対してシンタクスチェックを施し、欠損しているEOBが無いかどうか検出し、欠損した箇所にEOBを挿入し、修復を行う。
【0169】
図31を用いて、欠損箇所にEOBを挿入する処理について説明する。メモリ361に対するラン&レベルおよびEOBの書き込みは、上述の図30Aの例と同様に行われる。ここで、EOBが欠損していれば、EOBで終了していない行、すなわち、EOBで終了していないDCTブロックが存在することになる。図31Aの例では、DCTブロックY3およびCb1がEOBで終了しておらず、記録時に1等長化単位からはみ出て余りの部分303として捨てられた部分を有するブロックであることが示される。
【0170】
また、このとき、最後に書き込まれた最終符号(図31Aの例では、DCTブロックCb1の最後の符号)は、その符号自体が切断されている可能性があり、信頼性に欠ける。すなわち、ラン&レベル符号は、それぞれ符号長が異なるため、例えば最終符号の符号長が最終符号の1つ前に書き込まれる符号(この例では、DCTブロックY3の第10個目の符号)の符号長よりも長い場合、最終符号が最終符号の1つ前に書き込まれた符号の符号長で切断されてしまうことになる。
【0171】
符号配列逆変換回路314では、EOBの存在しない行に対して、末尾にEOBを挿入する。例えば、メモリ361からDCTブロック毎にデータを読み出し、可変長符号接続部362に供給してそれぞれのDCTブロックを接続する際に、各ブロックの末尾にEOBが無ければ、所定の位置にEOBを挿入する。この様子を、図31Bに示す。こうすることによって、全てのDCTブロックの末尾がEOBで終了することになり、MPEGの規定に準ずるデータストリームが得られる。
【0172】
EOBは、上述したように2乃至は4ビットの所定のビット列であるので、例えば図示されない所定のレジスタにEOBのビット列を予め記憶させておき、それを用いるようにできる。また、これに限らず、例えば図15のような構成において、シスコン121でEOBを生成するようにしてもよい。
【0173】
また、図31AのDCTブロックCb1の最後の符号のように、信頼性に欠けるとされた符号は、図31Aに示されるように、削除する。削除された部分は、図のように空けておく(0の符号で埋める)ようにしてもよいし、削除された部分を詰めてEOBを挿入するようにしてもよい。
【0174】
なお、上述では、EOBの挿入を、可変長符号接続部362で行うとしたが、これはこの例に限定されない。例えば、メモリ361にデータが書き込まれている状態で、所定のアドレスにEOBを書き込むようにしてもよい。
【0175】
上述では、この発明がMPEGやJPEGのデータストリームを記録するディジタルVTRに適用されるように説明したが、これはこの例に限定されるものではない。例えば、この発明は、可変長符号化を用いた他の方式で圧縮符号化されたデータストリームを記録する場合にも、適用可能である。
【0176】
さらに、この発明は、記録媒体が磁気テープ以外であっても適用可能である。データストリームが直接的に記録されるのであれば、例えば、ハードディスクやDVD(Digital Versatile Disc)といったディスク状記録媒体や、半導体メモリを記録媒体に用いたRAMレコーダなどにも適用可能なものである。
【0177】
さらに、上述では、この発明が圧縮画像データを記録する場合に適用されるように説明したが、これはこの例に限定されるものではない。例えば、AC−3(Audio Code Number 3) 、AAC(Advanced Audio Coding) およびATRAC(AdaptiveTranform Acoustic Coding)などの、音声圧縮技術を採用した音声データ記録装置にも適用可能なものである。
【0178】
【発明の効果】
以上説明したように、この発明によれば、ブロック毎に可変長符号化されたデータを固定枠に当てはめ固定枠長のセグメントに割り当て、固定枠からはみ出た部分を、空き領域のある他のセグメントに詰め込むようにし、例えば1フレームといった等長化単位で等長化して、記録媒体に記録する際に、等長化単位からはみ出た余りの部分を捨てるようにしている。そのため、規定のビットレートを越えるデータストリームが入力された場合でも、記録回路の破綻や、記録メディアおよび記録フォーマットの破綻を来さないという効果がある。
【0179】
また、再生時には、記録時に余りの部分を捨ててEOBが欠損した箇所にEOBを挿入することで、EOBの欠損に因るシンタクスエラーを修正するようにしている。そのため、記録時に規定のビットレートを越える入力がなされても、再生時に、重大な画像の乱れや不正なストリームの再生などのトラブルを防止することができる効果がある。
【図面の簡単な説明】
【図1】MPEG2のデータの階層構造を概略的に示す略線図である。
【図2】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図3】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図4】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図5】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図6】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図7】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図8】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図9】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図10】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図11】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図12】MPEG2のストリーム中に配されるデータの内容とビット割り当てを示す略線図である。
【図13】データのバイト単位の整列を説明するための図である。
【図14】一実施形態におけるMPEGストリームのヘッダを具体的に示す略線図である。
【図15】一実施形態による記録再生装置の記録側の構成の一例を示すブロック図である。
【図16】磁気テープ上に形成されるトラックフォーマットの一例を示す略線図である。
【図17】ビデオエンコーダの出力の方法と可変長符号化を説明するための略線図である。
【図18】ビデオエンコーダの出力の順序の並び替えを説明するための略線図である。
【図19】順序の並び替えられたデータをシンクブロックにパッキングする処理を説明するための略線図である。
【図20】ECCエンコーダのより具体的な構成を示すブロック図である。
【図21】メインメモリのアドレス構成の一例を示す略線図である。
【図22】可変長符号化されたマクロブロックのパッキングおよびパッキングされたデータの磁気テープへの記録について説明するための略線図である。
【図23】可変長符号化されたマクロブロックのパッキングおよびパッキングされたデータの磁気テープへの記録について説明するための略線図である。
【図24】この発明の一実施形態を実現するための構成を概念的に示すブロック図である。
【図25】符号配列変換回路に入出力される一例のデータストリームを示す略線図である。
【図26】量子化された一例のDCT係数を示す略線図である。
【図27】ランとレベルとをまとめ、EOBを付加した様子を示す略線図である。
【図28】符号配列変換回路の一例の構成を示すブロック図である。
【図29】符号配列逆変換回路の一例の構成を示すブロック図である。
【図30】再生時の符号配列変換を説明するための略線図である。
【図31】再生時の符号配列変換の際にEOBを付加することを説明するための略線図である。
【符号の説明】
1・・・シーケンスヘッダコード、2・・・シーケンスヘッダ、3・・・シーケンス拡張、4・・・拡張およびユーザデータ、5・・・GOPスタートコード、6・・・GOPヘッダ、7・・・ユーザデータ、8・・・ピクチャスタートコード、9・・・ピクチャヘッダ、10・・・ピクチャ符号化拡張、11・・・拡張およびユーザデータ、12・・・スライススタートコード、13・・・スライスヘッダ、14・・・マクロブロックヘッダ、101・・・SDI受信部、102・・・MPEGエンコーダ、106・・・記録側マルチフォーマットコンバータ(MFC)、108・・・SDTI受信部、109・・・ECCエンコーダ、112・・・磁気テープ、113・・・ECCデコーダ、114・・・再生側MFC、115・・・SDTI出力部、116・・・MPEGデコーダ、118・・・SDI出力部、137a,137c・・・パッキング部、137b・・・ビデオシャフリング部、139・・・外符号エンコーダ、140・・・ビデオシャフリング、149・・・内符号エンコーダ、303・・・余り部分、311・・・符号配列変換回路、314・・・符号配列逆変換回路
Claims (6)
- 第1のブロック毎に可変長符号化され終端を示す識別情報が付加され、複数の第1のブロックからなる第2のブロックが構成され、可変長符号化されたデータを固定枠に当てはめ、固定枠からはみ出たデータを他の固定枠の空き領域に詰め込んで等長化を行い、等長化単位でデータが記録された記録媒体を再生する再生装置において、
可変長符号化された等長化の対象となるデータが、第1のブロックを跨がって第2のブロック単位で、重要なデータから重要ではないデータの順に並べ替えられた上記第2のブロックを、先頭から所定長の固定枠に当てはめ、上記固定枠からはみ出た部分を空き領域のある他の上記固定枠に詰め込んでパッキングし、上記等長化の対象となるデータ量が上記等長化単位の容量を越えるときは、上記重要ではないデータが上記等長化単位からはみ出るようにし、上記等長化単位からはみ出た部分を記録しないようにされて記録媒体に記録されたデータを再生する再生手段と、
上記再生手段で再生されたデータをチェックし、該データが所定の規定を満たしているかどうか判断するチェック手段と、
上記再生手段で再生されたデータに対し、上記並べ替えられた上記ブロック内のデータの順序を元の順序に並べ替える符号配列逆変換手段と
を有し、
上記チェック手段によるチェックの結果、上記再生手段で再生されたデータが上記所定の規定を満たしていないと判断されたときに、上記はみ出た部分が記録されなかった上記第1のブロックに対して、終端を示す識別情報を付加するようにしたことを特徴とする再生装置。 - 請求項1に記載の再生装置において、
上記チェック手段は、上記第1のブロックの終端を示す識別情報が上記第2のブロック内に存在する個数に基づき上記判断を行うことを特徴とする再生装置。 - 請求項1に記載の再生装置において、
上記チェック手段によるチェックの結果、上記再生手段で再生されたデータが上記所定の規定を満たしていないと判断されたときに、上記第2のブロックの最後に書き込まれたデータを削除するようにしたことを特徴とする再生装置。 - 請求項3に記載の再生装置において、
上記削除された上記データの部分を0の符号で埋めるようにしたことを特徴とする再生装置。 - 請求項3に記載の再生装置において、
上記削除された上記データの部分を詰めて上記終端を示す識別情報を挿入するようにしたことを特徴とする再生装置。 - 第1のブロック毎に可変長符号化され終端を示す識別情報が付加され、複数の第1のブロックからなる第2のブロックが構成され、可変長符号化されたデータを固定枠に当てはめ、固定枠からはみ出たデータを他の固定枠の空き領域に詰め込んで等長化を行い、等長化単位でデータが記録された記録媒体を再生する再生方法において、
可変長符号化された等長化の対象となるデータが、第1のブロックを跨がって第2のブロック単位で、重要なデータから重要ではないデータの順に並べ替えられた上記第2のブロックを、先頭から所定長の固定枠に当てはめ、上記固定枠からはみ出た部分を空き領域のある他の上記固定枠に詰め込んでパッキングし、上記等長化の対象となるデータ量が上記等長化単位の容量を越えるときは、上記重要ではないデータが上記等長化単位からはみ出るようにし、上記等長化単位からはみ出た部分を記録しないようにされて記録媒体に記録されたデータを再生する再生のステップと、
上記再生のステップで再生されたデータをチェックし、該データが所定の規定を満たしているかどうか判断するチェックのステップと、
上記再生のステップで再生されたデータに対し、上記並べ替えられた上記ブロック内のデータの順序を元の順序に並べ替える符号配列逆変換のステップと
を有し、
上記チェックのステップによるチェックの結果、上記再生のステップで再生されたデータが上記所定の規定を満たしていないと判断されたときに、上記はみ出た部分が記録されなかった上記第1のブロックに対して、終端を示す識別情報を付加するようにしたことを特徴とする再生方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34208399A JP4038949B2 (ja) | 1999-12-01 | 1999-12-01 | 再生装置および方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34208399A JP4038949B2 (ja) | 1999-12-01 | 1999-12-01 | 再生装置および方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2001160263A JP2001160263A (ja) | 2001-06-12 |
JP2001160263A5 JP2001160263A5 (ja) | 2006-05-11 |
JP4038949B2 true JP4038949B2 (ja) | 2008-01-30 |
Family
ID=18351036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34208399A Expired - Fee Related JP4038949B2 (ja) | 1999-12-01 | 1999-12-01 | 再生装置および方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4038949B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008017295A (ja) * | 2006-07-07 | 2008-01-24 | Ntt Docomo Inc | カラー画像符号化方法、装置及びプログラム、並びに、カラー画像復号方法、装置及びプログラム |
-
1999
- 1999-12-01 JP JP34208399A patent/JP4038949B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001160263A (ja) | 2001-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4010066B2 (ja) | 画像データ記録装置および記録方法、並びに画像データ記録再生装置および記録再生方法 | |
KR20020075897A (ko) | 스트림 처리 장치 | |
JP3921841B2 (ja) | 信号処理装置および方法、ならびに、記録装置、再生装置および記録再生装置 | |
JP4182641B2 (ja) | データ処理装置および方法、ならびに、記録装置および方法 | |
US6643729B2 (en) | Data processing apparatus and data recording apparatus | |
WO2001058171A1 (en) | Recording device and method, and reproducing device and method | |
US6970938B2 (en) | Signal processor | |
KR100739262B1 (ko) | 기록 장치 및 기록 방법과, 재생 장치 및 재생 방법 | |
US20020071491A1 (en) | Signal processor | |
JP3775265B2 (ja) | 信号処理装置および方法、記録再生装置および方法、ならびに、再生装置および方法 | |
JP2001169251A (ja) | 記録装置および方法、ならびに、再生装置および方法 | |
KR100681992B1 (ko) | 기록 장치 및 방법 | |
JP4038949B2 (ja) | 再生装置および方法 | |
JP2001155437A (ja) | 記録装置および方法 | |
JP4432284B2 (ja) | 記録装置および方法 | |
JP2001169243A (ja) | 記録装置および方法、ならびに、再生装置および方法 | |
JP3978903B2 (ja) | データ記録装置、データ記録方法、データ処理装置、およびデータ処理方法 | |
JP2000149455A (ja) | データ記録装置および記録方法、データ記録再生装置および記録再生方法、並びにデータ記録媒体 | |
JP2001218162A (ja) | 記録装置および方法 | |
JP2000134110A (ja) | データ伝送装置および伝送方法 | |
JP2000132914A (ja) | データ処理装置およびデータ記録装置 | |
JP2000312341A (ja) | データ伝送装置および方法、記録装置、ならびに、記録再生装置 | |
JP2001346163A (ja) | 記録装置および方法、再生装置および方法、ならびに、記録再生装置および方法 | |
JP2002171241A (ja) | ストリーム伝送装置および方法 | |
JP2000152174A (ja) | 画像データ処理装置および方法、並びに画像データ記録装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060314 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060314 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070726 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070807 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070903 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070925 |
|
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: 20071016 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071029 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101116 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101116 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111116 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121116 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |