JP3657971B2 - Decoding method and apparatus - Google Patents
Decoding method and apparatus Download PDFInfo
- Publication number
- JP3657971B2 JP3657971B2 JP2004324429A JP2004324429A JP3657971B2 JP 3657971 B2 JP3657971 B2 JP 3657971B2 JP 2004324429 A JP2004324429 A JP 2004324429A JP 2004324429 A JP2004324429 A JP 2004324429A JP 3657971 B2 JP3657971 B2 JP 3657971B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- bit
- synchronization
- synchronization code
- code string
- 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
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Time-Division Multiplex Systems (AREA)
- Television Systems (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Description
本発明は、無線伝送路のような誤り率の高い媒体を介して情報を伝送/蓄積するシステムに係り、高能率圧縮符号化によって得られた圧縮符号列を誤り訂正/検出符号化して伝送/蓄積するのに適した復号化方法及び装置に関する。 The present invention relates to a system for transmitting / accumulating information via a medium having a high error rate such as a radio transmission line, and transmitting / storing a compressed code string obtained by high-efficiency compression coding after error correction / detection coding. The present invention relates to a decoding method and apparatus suitable for storage.
例えば、無線TV電話、携帯情報端末、デジタルTV放送システムのように、画像や音声の情報をできるだけ少ない情報量となるように高能率に圧縮符号化して無線伝送路等を介して伝送するシステムにおいては、伝送路の誤り率が高いため、得られた符号列をいかに高品質に伝送するかが重要な課題となる。 For example, in a system such as a wireless TV phone, a portable information terminal, and a digital TV broadcast system, which compresses and encodes image and audio information with high efficiency so as to have as little information as possible and transmits the information via a wireless transmission path or the like. Since the error rate of the transmission path is high, how to transmit the obtained code string with high quality becomes an important issue.
このように誤り率の高い媒体を介して符号列の伝送/蓄積を行う場合に、誤り率を低減する手段として、BCH符号、RS符号、畳み込み等の誤り訂正符号が多く用いられる。また、受信側で誤り検出を可能にする手段としては、チェックサムやCRC等の誤り検出符号が用いられる。これらの誤り訂正/誤り検出は、伝送/蓄積する情報に余分なビット(冗長性)を一定の規則に従って付加し、復号の際に伝送/蓄積された符号列がこの規則に従っているかどうかを調べ、その結果によって誤りの訂正や検出を行うものである。 When a code string is transmitted / stored through a medium having a high error rate, error correction codes such as a BCH code, an RS code, and a convolution are often used as means for reducing the error rate. Further, as means for enabling error detection on the receiving side, an error detection code such as a checksum or CRC is used. These error correction / error detection adds an extra bit (redundancy) to the information to be transmitted / stored according to a certain rule, checks whether the code string transmitted / stored at the time of decoding conforms to this rule, Based on the result, error correction and detection are performed.
しかし、このように高能率圧縮符号化により得られた符号列を誤り訂正/検出符号に符号化して伝送/蓄積する方法は、伝送路/媒体での符号語誤りによって生じる同期外れを回復する同期回復手法との組み合わせが難しくなることが欠点である。同期回復手法としては、一意に復号可能な同期符号と呼ばれる符号を挿入し、同期外れが生じたときは同期符号を検出した時点から復号を再開する方法が多く用いられている。 However, the method of encoding / transmitting / accumulating the code string obtained by the high-efficiency compression encoding into the error correction / detection code is a method for recovering the loss of synchronization caused by the code word error in the transmission path / medium. The disadvantage is that it becomes difficult to combine with recovery techniques. As a synchronization recovery method, a method of inserting a code called a synchronization code that can be uniquely decoded and restarting decoding from the point in time when the synchronization code is detected when loss of synchronization occurs is often used.
同期符号を一意に復号可能な符号語とするためには、他の符号語の組み合わせで同期符号と同一のビットパターンが生じないように符号語を構成する必要がある。しかし、一般に誤り訂正/検出符号化では、ある特定のビットパターンの出現を避けるように符号語を構成することは困難であり、同期符号と同一ビットパターンが出現した場合には、同期符号の誤検出により擬似同期を引き起こしてしまうことになる。 In order to make the synchronization code a uniquely decodable codeword, it is necessary to configure the codeword so that the same bit pattern as that of the synchronization code does not occur in other codeword combinations. However, in general, in error correction / detection coding, it is difficult to construct a code word so as to avoid the appearance of a specific bit pattern. When the same bit pattern as the synchronization code appears, the synchronization code error is detected. Detection will cause pseudo-synchronization.
この問題を避けるために、誤り訂正/検出符号化を行った後に同期符号と同一のビットパターンが符号列中に存在するか否かを判定し、同一ビットパターンが存在する場合には、そのパターン中にある規則に従ってダミービットを挿入し、復号化装置において同一の規則でダミービットを削除することにより擬似同期を防ぐ方法が用いられている。しかし、誤りが生じやすい媒体を介して符号列を伝送/蓄積する場合には、この挿入ビットにも誤りが生じる可能性があり、新たな同期外れや擬似同期を引き起こすという問題点がある。 In order to avoid this problem, it is determined whether or not the same bit pattern as the synchronization code exists in the code string after performing error correction / detection coding. A method is used in which dummy bits are inserted according to a certain rule, and the dummy bits are deleted according to the same rule in the decoding apparatus to prevent pseudo-synchronization. However, when a code string is transmitted / stored via a medium that is prone to error, there is a possibility that an error also occurs in this inserted bit, which causes a problem of new loss of synchronization and pseudo synchronization.
また、符号列を誤り訂正/検出符号化し同期符号を挿入する場合、従来では同期符号と同期符号とで挟まれた同期区間の最後の部分で、誤り訂正/検出符号化すべき情報ビットの剰余を補うために多くの挿入ビットを符号列に付加する必要があるため、符号化効率が低下するという問題点もある。 Further, when error correction / detection coding is performed on a code string and a synchronization code is inserted, a remainder of information bits to be error correction / detection coded is conventionally stored at the last part of a synchronization interval sandwiched between the synchronization code and the synchronization code. In order to compensate, it is necessary to add many insertion bits to the code string, and there is a problem that the coding efficiency is lowered.
一方、誤り訂正/検出能力を高めるためには、伝送/蓄積する情報の冗長度を高めればよいが、こうすると同じ情報を送るのに必要なビット数は増える。このため、誤り訂正/検出能力を高めると、より伝送レートの高い伝送路が必要となったり、蓄積しなければならない情報のビット数が増加することになる。また、伝送レートや蓄積容量が同一ならば、冗長度が高いほど少ない情報しか伝送/蓄積できないことになる。画像や音声を高能率に圧縮符号化して伝送/蓄積する場合、誤り耐性を向上させるために冗長性を付加することは、伝送/蓄積レートが同一ならばより少ない情報量に圧縮符号化を行わなければならないことになり、画質や音質の低下を招くことになる。 On the other hand, in order to increase the error correction / detection capability, it is sufficient to increase the redundancy of information to be transmitted / stored. However, this increases the number of bits necessary to send the same information. For this reason, when the error correction / detection capability is increased, a transmission path with a higher transmission rate is required, or the number of bits of information to be accumulated increases. If the transmission rate and the storage capacity are the same, the higher the redundancy, the less information can be transmitted / stored. When image / sound is compressed and transmitted with high efficiency for transmission / accumulation, redundancy is added to improve error resilience. If the transmission / accumulation rate is the same, compression encoding is performed for a smaller amount of information. As a result, image quality and sound quality are degraded.
そこで、より少ない冗長度で高い誤り耐性を持たせる方法として、階層符号化と呼ばれる方法がある。これは高能率圧縮符号化された情報を誤りが画質や音質に与える大きさに応じて分類し、誤りの影響が大きい情報には冗長度が高くともより誤り訂正/検出能力の高い誤り訂正/検出符号を用い、誤りの影響があまり大きくない情報には誤り訂正/検出能力はそれほど高くないが冗長度が少ない誤り訂正/検出符号を用いることにより、全体に同一の誤り訂正/検出符号を用いる場合より同一の平均冗長度でより誤り耐性を高める方法である。 Therefore, there is a method called hierarchical coding as a method of giving high error tolerance with less redundancy. This classifies high-efficiency compression-coded information according to the magnitude of the error that affects the image quality and sound quality. Information with a large influence of error has a higher degree of error correction / detection capability even if the redundancy is high. By using a detection code and using an error correction / detection code that is not very high in error correction / detection capability but low redundancy for information that is not greatly affected by errors, the same error correction / detection code is used throughout. This is a method of increasing error resilience with the same average redundancy.
例えば、動画像の高能率圧縮符号化に多く用いられている動き補償予測と直交変換を組み合わせた符号化方式、すなわち、入力される動画像信号に対して動き補償予測を行い、その予測残差をDCT(離散コサイン変換)などにより直交変換する方式においては、誤りが生じると大きな画質劣化を生じる動きベクトル情報や、予測残差信号の直交変換係数のうちの低次係数には、誤り訂正/検出能力の強い誤り訂正/検出符号を用い、誤りの影響が小さい予測残差信号の直交変換係数のうちの高次係数には、誤り訂正/検出能力の弱い誤り訂正/検出符号を用いる。 For example, a motion compensation prediction that is often used for high-efficiency compression coding of moving images and an encoding method that combines orthogonal transformation, that is, motion compensation prediction is performed on an input moving image signal, and the prediction residual is In the method of orthogonally transforming the signal by DCT (Discrete Cosine Transform) or the like, error correction / An error correction / detection code having a strong detection capability is used, and an error correction / detection code having a weak error correction / detection capability is used as a higher-order coefficient among orthogonal transform coefficients of a prediction residual signal that is less affected by errors.
このような階層符号化を実現するためには、出力される符号列の途中で、誤り訂正/検出能力の異なる誤り訂正/検出符号を切り替える必要がある。誤り訂正/検出能力の異なる誤り訂正/検出符号を切り替える方法としては、誤り訂正/検出符号の種類を示すヘッダ情報を符号列に付加する方法がある。図11は、ヘッダ情報を付加して誤り訂正/検出符号を切り替えた符号列の例を示したものであり、この例では2種類の誤り訂正/検出符号FEC1およびFEC2を切り替えている。ヘッダ1101〜1104には、誤り訂正/検出符号の種類や符号語の数を示すヘッダ情報が入っている。符号化装置では、これらのヘッダ情報に続けて誤り訂正/検出符号化された符号語を並べ、復号化装置ではヘッダ情報を復号し、これに従って誤り訂正/検出符号の復号を行う。 In order to realize such hierarchical encoding, it is necessary to switch between error correction / detection codes having different error correction / detection capabilities in the middle of an output code string. As a method of switching between error correction / detection codes having different error correction / detection capabilities, there is a method of adding header information indicating the type of error correction / detection code to a code string. FIG. 11 shows an example of a code string in which header information is added and the error correction / detection code is switched. In this example, two types of error correction / detection codes FEC1 and FEC2 are switched. The headers 1101 to 1104 contain header information indicating the type of error correction / detection code and the number of code words. In the encoding apparatus, the code words that have been subjected to error correction / detection encoding are arranged after the header information, and in the decoding apparatus, the header information is decoded, and the error correction / detection code is decoded accordingly.
しかし、このようなヘッダ情報を付加することによって誤り訂正/検出符号を切り替える方法では、ヘッダ情報の付加によって伝送/蓄積しなければならない符号列のビット数が増加するという問題がある。画像や音声を高能率圧縮符号化して伝送/蓄積する場合、ヘッダ情報にビット数が割かれることは、画像や音声の高能率圧縮符号化に用いられるビット数が減少することになり、結果的に画質や音質の劣化を招く。 However, the method of switching the error correction / detection code by adding such header information has a problem that the number of bits of the code string that must be transmitted / stored increases by adding the header information. When transmitting / accumulating high-efficiency compression encoding and transmission of images and audio, the number of bits used for header information decreases the number of bits used for high-efficiency compression encoding of images and audio. In addition, image quality and sound quality are degraded.
上述したように、動画像信号などを高能率圧縮符号化した符号列に対して誤り訂正/検出符号化を行うと、任意のビットパターンが発生するため、誤り訂正/検出符号化と、一意に復号可能な同期符号を用いる同期回復手法との組み合わせた場合には、同期符号の誤検出による擬似同期という問題点があり、ダミービットの挿入により擬似同期を避ける操作を行った場合にも挿入ビットの誤りによって新たな同期外れや擬似同期を生じてしまうという問題点があった。 As described above, when error correction / detection encoding is performed on a code string obtained by performing high-efficiency compression encoding on a moving image signal or the like, an arbitrary bit pattern is generated. Therefore, error correction / detection encoding is uniquely performed. When combined with a synchronization recovery method using a decodable synchronization code, there is a problem of pseudo-synchronization due to erroneous detection of the synchronization code, and even if an operation to avoid pseudo-synchronization is performed by inserting a dummy bit, There has been a problem that a new synchronization loss or pseudo-synchronization may occur due to an error in.
また、符号列を誤り訂正/検出符号化し同期符号を挿入する場合、従来では同期区間の最後の部分で、誤り訂正/検出符号化すべき情報ビットの剰余を補うために多くの挿入ビットを用いる必要があるため、符号化効率が低下するという問題点があった。 Further, when error correction / detection coding is performed on a code string and a synchronization code is inserted, conventionally, it is necessary to use a large number of insertion bits to make up the remainder of information bits to be error correction / detection encoded at the last part of the synchronization interval. Therefore, there is a problem that the encoding efficiency is lowered.
さらに、ヘッダ情報を付加することにより誤り訂正/検出能力の異なる誤り訂正/検出符号を切り替える符号化/復号化装置では、ヘッダ情報の付加により伝送/蓄積しなければならないビット数が増加するため、画像や音声を高能率圧縮符号化して伝送/蓄積する場合には、画像や音声の情報に割り当てられる情報量が減少して画質や音質の低下を招くという問題点があった。 Furthermore, in an encoding / decoding device that switches error correction / detection codes having different error correction / detection capabilities by adding header information, the number of bits that must be transmitted / stored increases by adding header information. In the case of transmitting / accumulating high-efficiency compression-encoded images and sounds, there is a problem that the amount of information allocated to image and sound information is reduced, resulting in deterioration of image quality and sound quality.
本発明の主たる目的は、同期符号の誤検出による擬似同期や同期外れの問題を解決できる復号化方法及び装置を提供することにある。 A main object of the present invention is to provide a decoding method and apparatus capable of solving the problems of pseudo-synchronization and loss of synchronization due to erroneous detection of a synchronization code.
上記の課題を解決するため、本発明に係る復号化方法は、画像信号を圧縮符号化して生成される、ピクチャヘッダ、予測モード情報及び動きベクトル情報とDCT係数とを分けて符号化した可変長符号を多重化した多重化符号列を含む入力符号列中の予め周期的に定められた複数の同期符号挿入位置で同期符号を検出し、前記入力符号列中の多重化符号列に対し前記同期符号検出手段により検出された同期符号の位置を基準として逆多重化を行って可変長符号を生成し、生成された可変長符号を復号化して再生画像信号を出力することを特徴とする。 In order to solve the above problems, a decoding method according to the present invention is a variable length obtained by separately encoding a picture header, prediction mode information, motion vector information, and DCT coefficients, which are generated by compressing and encoding an image signal. A synchronization code is detected at a plurality of predetermined synchronization code insertion positions in an input code string including a multiplexed code string in which codes are multiplexed, and the synchronization is detected with respect to the multiplexed code string in the input code string The variable length code is generated by performing demultiplexing with reference to the position of the synchronization code detected by the code detection means, and the generated variable length code is decoded and a reproduced image signal is output.
本発明に係る復号化装置は、画像信号を圧縮符号化して生成される、ピクチャヘッダ、予測モード情報及び動きベクトル情報とDCT係数とを分けて符号化した可変長符号を多重化した多重化符号列を含む入力符号列中の予め周期的に定められた複数の同期符号挿入位置で同期符号を検出する同期符号検出手段と、入力符号列中の多重化符号列に対し前記同期符号検出手段により検出された同期符号の位置を基準として逆多重化を行って可変長符号を生成する逆多重化手段と、生成された可変長符号を復号化して再生画像信号を出力する復号化手段とを有することを特徴とする。 The decoding apparatus according to the present invention is a multiplexed code obtained by multiplexing a variable length code generated by separately encoding a picture header, prediction mode information, motion vector information, and DCT coefficients, which are generated by compressing and encoding an image signal. A synchronization code detecting means for detecting a synchronization code at a plurality of synchronization code insertion positions determined in advance in the input code string including the string, and the synchronization code detecting means for the multiplexed code string in the input code string Demultiplexing means for generating a variable length code by performing demultiplexing on the basis of the position of the detected synchronization code, and decoding means for decoding the generated variable length code and outputting a reproduced image signal It is characterized by that.
なお、本発明において同期符号とは符号列中に同期回復のために挿入される一意に復号可能な符号であり、例えば同期符号を挿入する符号列が、フレーム単位で入力される画像信号を圧縮符号化した複数種類の可変長符号を多重化した多重化符号列であれば、符号化フレームの区切りや、複数種類の可変長符号の区切りその他の区切りを示す符号である。 In the present invention, the synchronization code is a uniquely decodable code inserted in the code string for recovery of synchronization. For example, the code string into which the synchronization code is inserted compresses an image signal input in units of frames. In the case of a multiplexed code string obtained by multiplexing a plurality of types of encoded variable length codes, it is a code indicating a delimiter of encoded frames, a delimiter of a plurality of types of variable length codes, and other delimiters.
本発明によれば、符号化装置において複数種類の可変長符号を多重化した多重化符号列中に予め周期的に定められた同期符号挿入位置でのみ同期検出を行えば良く、符号列中の任意の位置に同期符号が挿入される従来方式に比べて同期符号検出の回数が削減される。 According to the present invention, it is only necessary to perform synchronization detection only at a synchronization code insertion position periodically determined in advance in a multiplexed code string obtained by multiplexing a plurality of types of variable-length codes in an encoding apparatus. Compared to the conventional method in which a synchronization code is inserted at an arbitrary position, the number of synchronization code detections is reduced.
また、ビット誤りによって復号化装置に入力されるビット列が同期符号と同一のビットパターンに変化してしまうことによる疑似同期の発生の確率は、この同期符号検出回数の削減に伴って減少するため、本発明によると疑似同期の発生を少なくすることができ、同期符号検出に伴う演算処理量も削減される。 In addition, since the probability of occurrence of pseudo-synchronization due to the bit string that is input to the decoding device due to a bit error changing to the same bit pattern as the synchronization code decreases with a reduction in the number of synchronization code detections, According to the present invention, the occurrence of pseudo-synchronization can be reduced, and the amount of calculation processing associated with synchronization code detection is also reduced.
以下、図面を参照して本発明の実施形態を説明する。
(第1の実施形態)
図1は、動き補償適応予測と直交変換符号化の一種である離散コサイン変換符号化を用いた高能率圧縮符号化装置に、本発明による誤り訂正/検出符号切り替え機能を有する符号化装置を組み合わせた動画像符号化装置の一実施形態を示すブロック図である。動き補償適応予測と離散コサイン変換符号化を組み合わせた符号化方式については、例えば文献1:安田浩編著、“マルチメディア符号化の国際標準”、丸善、(平成3年6月)等に詳しいので、動作の概略のみを説明する。また、本実施形態で用いられる誤り訂正/検出符号は、BCH符号のように情報ビットと検査ビットが分離されているものとする。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
(First embodiment)
FIG. 1 shows a combination of a coding apparatus having an error correction / detection code switching function according to the present invention and a high-efficiency compression coding apparatus using discrete cosine transform coding, which is a kind of motion compensated adaptive prediction and orthogonal transform coding. It is a block diagram which shows one Embodiment of the moving image encoding device. The coding method combining motion compensated adaptive prediction and discrete cosine transform coding is detailed in, for example, Reference 1: Hiroshi Yasuda, “International Standard for Multimedia Coding”, Maruzen, (June 1991), etc. Only the outline of the operation will be described. In addition, the error correction / detection code used in the present embodiment is such that information bits and check bits are separated as in a BCH code.
図1において、フレーム単位で入力される符号化対象の入力動画像信号131は、まずマクロブロック等の小領域単位で動き補償適応予測が行われる。すなわち、動き補償適応予測器101において、入力動画像信号131とフレームメモリ102中に蓄えられている既に符号化/局部復号化が行われた画像信号との間の動きベクトルが検出され、この動きベクトルに基づいて動き補償予測により予測信号132が作成される。この動き補償予測器101においては、動き補償予測符号化と、入力動画像信号131をそのまま符号化するフレーム内符号化(予測信号=0)のうち、符号化に用いて好適な方の予測モードが選択され、対応する予測信号132が出力される。
In FIG. 1, an input moving
予測信号132は減算器103に入力され、入力動画像信号131から予測信号132が減算されることによって予測残差信号133が出力される。予測残差信号133は、離散コサイン変換器104において一定の大きさのブロック単位で離散コサイン変換(DCT)され、DCT係数が生成される。このDCT係数は量子化器105で量子化される。量子化器105からの量子化されたDCT係数データは2分岐され、一方は第1の可変長符号化器106で可変長符号化され、他方は逆量子化器107で逆量子化された後、逆離散コサイン変換器108で逆離散コサイン変換(逆DCT)される。逆離散コサイン変換器108からの出力は加算器109において予測信号132と加算され、局部復号信号が生成される。この局部復号信号は、フレームメモリ102に記憶される。
The
一方、動き補償適応予測器101において決定された予測モードおよび動きベクトルの情報は、第2の可変長符号化器110で可変長符号化される。第1、第2の可変長符号化器106,110から出力される可変長符号(圧縮符号)は、多重化器111において多重化され、多重化符号列201となる。
On the other hand, the prediction mode and motion vector information determined by the motion compensated adaptive predictor 101 are variable length encoded by the second
多重化器111からは、多重化符号列201と、これに対応する誤り訂正/検出符号の種類を示すFEC種類識別信号202および同期符号の挿入を要求する同期符号挿入要求信号203が出力される。
The
これらの符号列202、FEC種類識別信号202および同期符号挿入要求信号203は、符号列202を誤り訂正/検出能力の異なる複数種類の誤り訂正/検出符号に切り替えて符号化する出力符号化装置200に入力され、最終的な出力符号列205が生成される。本実施形態においては、出力符号化装置200が本発明に係る符号化装置に相当する。
The
図2は、多重化器111における多重化の流れを示す図である。多重化は符号化フレームを単位として行われる。まず、同期符号301が多重化される。同期符号301が多重化されたときには、多重化器111から同期符号挿入要求信号203が出力され、多重化された符号語が同期符号であることが符号化装置200に知らされる。次に、多重化符号列201にその符号化フレームの各種符号化モードを示すピクチャヘッダ302が多重化される。次に、各領域における動き補償適応予測器MCにおける予測モードを示す予測モード情報303が多重化され、さらに動きベクトル情報304および予測残差信号のDCT係数(以下、これを残差DCT係数という)305が多重化される。ピクチャヘッダ302、予測モード情報303、動きベクトル情報304および残差DCT係数305を多重化するときには、それぞれに対応する誤り訂正/検出符号の種類を示すFEC種類識別信号202が出力される。
FIG. 2 is a diagram showing a multiplexing flow in the
誤りが混入すると画質が大きく劣化してしまうピクチャヘッダ302、予測モード情報303および動きベクトル情報304には、訂正/検出能力の高い誤り訂正/検出符号を用いる。一方、残差DCT係数305は、誤りが混入してもそれを検出して残差を0とすることで大きな画質劣化を防ぐことができるため、誤り訂正能力はそれほど高くする必要はなく、単に誤り検出を行うことができるようにするだけでもよい。 An error correction / detection code having a high correction / detection capability is used for the picture header 302, the prediction mode information 303, and the motion vector information 304 whose image quality is greatly deteriorated when an error is mixed. On the other hand, the residual DCT coefficient 305 can prevent a large deterioration in image quality by detecting even if an error is mixed and setting the residual to 0. Therefore, the error correction capability does not need to be so high. It is only necessary to enable error detection.
図3は、図1中の出力符号化装置200の構成を示すブロック図である。この出力符号化装置200は、ビット挿入器211、誤り訂正/検出切替符号化器212および符号列組立器213から構成される。また、図4は出力符号化装置200で生成される出力符号列205の一例を示す図である。図4において、PSCは同期符号、PHはピクチャヘッダ、MODEは予測モード情報、MVは動きベクトル情報、CHKは誤り訂正/検出符号の検査ビット、COEFは残差DCT係数、STUFFはスタッフィングビット(挿入ビット)である。この出力符号列205は、以下のような特徴を持っている。
FIG. 3 is a block diagram showing a configuration of
(1)同期符号PSCは、一定間隔(sync_periodビットおき)に配置された矢印で示される同期符号挿入位置のいずれかにのみ挿入される。sync_periodの長さは、同期符号PSCの長さと検査ビットCHKの最大長よりも大きくとる。検査ビットCHKは、同期符号挿入位置の直前に来るように位置ずらしが行わていれる。 (1) The synchronization code PSC is inserted only at one of the synchronization code insertion positions indicated by arrows arranged at regular intervals (every sync_period bits). The length of sync_period is larger than the length of the synchronization code PSC and the maximum length of the check bit CHK. The check bit CHK is shifted so as to come immediately before the synchronization code insertion position.
(2)1フレーム、つまり同期符号PSCと次のPSCとで挟まれた1同期期間の最後の部分の誤り訂正/検出符号は、最後に残った情報ビットだけを符号化する縮退符号とし、検査ビットCHK(図4の例ではCHK6)の位置ずらしを行うために必要なビット数だけスタッフィングビットSTUFFのビット挿入を行う。 (2) The error correction / detection code of the last part of one synchronization period sandwiched between one frame, that is, the synchronization code PSC and the next PSC, is a degenerate code that encodes only the last remaining information bit, Bit insertion of the stuffing bit STUFF is performed for the number of bits necessary to shift the position of the bit CHK (CHK6 in the example of FIG. 4).
(3)誤り訂正/検出符号の種類や数を示すFEC種類識別信号は、図4の出力符号列205中には存在しない。
(3) The FEC type identification signal indicating the type and number of error correction / detection codes does not exist in the
この出力符号列205では、上記(1)のように検査ビットCHKの位置ずらしを行っているため、矢印で示される同期符号挿入位置には検査ビットCHKが入ることが無く、従って検査ビットCHKによって擬似同期が発生する可能性は全く無い。また、上記(2)のようにフレームの最後の誤り訂正/検出符号化を行う場合、従来の技術では多くの挿入ビット(ダミービット)を挿入することが必要であったが、本実施形態ではフレームの最後が縮退符号となっているため、挿入ビット数は少なくてすむ。また、上記(3)のように誤り訂正/検出符号の種類や数を示すヘッダ情報を出力符号列205中に含ませていないため、これによる符号量の増加は無い。
In this
以下、このような出力符号列205を生成する図3の出力符号化装置200の構成と動作について、多重化器111から出力される図2の多重化符号列201および図4の出力符号列205と対応させて詳細に説明する。
Hereinafter, with respect to the configuration and operation of the
多重化器111で同期符号301が多重化されたとき、前述のように同期符号挿入要求信号203が出力される。同期符号301は、例えば図5のようにsync_0_len ビットの“0”、1ビットの“1”および同期符号301の種類を示すsync_nb_len ビットの“×××××”からなる。出力符号化装置200は、多重化器111からの同期符号301および同期符号挿入要求信号203を受けると、符号列組立器213から出力符号列205として同期符号(PSC)を出力する。
When the synchronization code 301 is multiplexed by the
ここで、同期符号301は図4に示したように出力符号列205中のsync_periodビットおきに配置された同期符号挿入位置のみにしか挿入することができないようになっているため、それまでに生成された出力符号列205の最後尾が同期符号挿入位置に無い場合には、後述のようにスタッフィングビットSTUFFを挿入して、同期符号301が同期符号挿入位置に来るようにする。
Here, since the synchronization code 301 can be inserted only at the synchronization code insertion positions arranged at every sync_period bits in the
同期符号301が出力符号列205に出力されると、以降ピクチャヘッダ302、予測モード情報303、動きベクトル情報304、残差DCT係数305が以下のように符号化される。まず、多重化器111から出力された多重化符号列201に対して、ビット挿入器211において擬似同期の発生を防ぐためのビット挿入が行われる。すなわち、出力符号列205中に同期符号301の符号語と同一のビットパターンがあると同期符号301を一意に復号できなくなることを防ぐために、必要に応じてビット挿入を行う。例えば、同期符号301が図5のようにsync_0_len ビットの“0”が連続する符号語ならば、同期符号301以外の符号列中にsync_0_len ビット以上“0”が連続しないように“1”を挿入すれば、擬似同期の発生を防ぐことができる。
When the synchronization code 301 is output to the
前述のように同期符号301は同期符号挿入位置にしか挿入されないため、この擬似同期の発生防止のためのビット挿入操作は同期符号挿入位置だけで行えばよい。そこで、これまでに生成された出力符号列205の総ビット数を示す計数値221を符号列組立器213から出力し、ビット挿入器211で計数値221に基づいてビット挿入が必要であるか否かを判定する。計数値221、つまり既に生成された出力符号列205の総ビット数を total_len とすれば、
0< total_len mod sync_period≦sync_0_len
となる区間で多重化符号列201中の“1”の数を計数し、この区間に“1”が全くなければ1ビットの“1”を挿入する。ここで、Amod BはAをBで除したときの剰余を表す。
As described above, since the synchronization code 301 is inserted only at the synchronization code insertion position, the bit insertion operation for preventing the occurrence of pseudo synchronization may be performed only at the synchronization code insertion position. Therefore, a
0 <total_len mod sync_period ≦ sync_0_len
The number of “1” s in the multiplexed
また、誤りによる同期符号301の誤検出の確率を低くするには、以下のようにビット挿入を行えばよい。 Further, in order to reduce the probability of erroneous detection of the synchronization code 301 due to an error, bit insertion may be performed as follows.
同期符号301にnビット誤りが混入した場合にも、同期符号301を検出するためには、後述する動画像復号化装置の入力復号化装置で真の同期符号とハミング距離がn以下の符号語は同期符号と判定する必要がある。しかし、同期符号301以外の符号列をそのままにしてこのような判定を行うと、同期符号301以外の符号列中にも同期符号とハミング距離がn以下のビットパターンが存在することがあり、これが同期符号挿入位置にあると誤まって同期符号301と判定されてしまう。 In order to detect the synchronization code 301 even when an n-bit error is mixed in the synchronization code 301, a codeword having a true synchronization code and a Hamming distance of n or less in an input decoding device of a moving image decoding device to be described later Must be determined as a synchronous code. However, if such a determination is made with the code string other than the synchronization code 301 as it is, a bit pattern having a synchronization code and a Hamming distance of n or less may exist in the code string other than the synchronization code 301. The synchronization code 301 is erroneously determined as being at the synchronization code insertion position.
そこで、ビット挿入器211で多重化符号列201に以下のようにビット挿入を行うことによって、多重化符号列201中の同期符号挿入位置にある同期符号以外の符号列を同期符号301とのハミング距離が2*n+1以上離れた値となるように変換する。具体的には、
0< total_len mod sync_period≦sync_0_len −(2*N+1)
となる区間での“1”の数(=n0とする)を計数し、n0が2*n+1以下であったら2*n+1−n0ビットの“1”を多重化符号列201に挿入する。
Therefore, the
0 <total_len mod sync_period ≦ sync_0_len− (2 * N + 1)
The number of “1” s in the interval (assuming n = n) is counted, and if n0 is 2 * n + 1 or less, 2 * n + 1−n0 bit “1” is inserted into the multiplexed
こうしてビット挿入器211でビット挿入が行われた後の符号化列222は、誤り訂正/検出符号の種類を示すFEC種類識別信号202と共に、誤り訂正/検出符号切替符号化部212に入力される。
The encoded
図6は、図3中の誤り訂正/検出符号切替符号化部212の構成を示すブロック図である。ラッチ回路603は、FEC種類識別信号202をラッチする回路であり、多重化器111から多重化符号列201への同期符号の出力が終了して同期符号挿入要求信号203が停止すると、FEC種類識別信号202をラッチし、ラッチした信号623を誤り訂正/検出符号化器604に供給する。
FIG. 6 is a block diagram showing a configuration of error correction / detection code
誤り訂正/検出符号化器604は、ラッチされた信号623に従ってビット挿入器211からの符号列222を誤り訂正/検出符号化し、情報ビット631および検査ビット632を生成して出力する。また、誤り訂正/検出符号化器604は1ブロックの誤り訂正/検出符号化が終了すると、ラッチ回路603に次のFEC種類識別信号202のラッチを指示するラッチ指示信号625を出す。ラッチ回路603は、このラッチ指示信号625に従ってラッチを行い、ラッチした信号623を誤り訂正/検出符号化器604に供給する。
The error correction /
出力符号化装置200では以上の動作が繰り返され、ビット挿入器211からのビット挿入後の符号列222は、誤り訂正/検出切替符号化器212で多重化器111から示されたFEC種類識別信号202に従って誤り訂正/検出符号の切り替えがなされながら、誤り訂正/検出符号化が行われる。FEC種類識別信号202は、1ブロックの誤り訂正/検出符号の符号化の終了時点でのみラッチ回路603でラッチされるため、この切り替え点までは同一の誤り訂正/検出符号が適用される。例えば、ピクチャヘッダ302はFEC1、予測モード情報303はFEC2という誤り訂正/検出符号を用いる場合、ピクチャヘッダ302のビット数がFEC1の1ブロックの情報ビット数より短い場合は、後続の予測モード情報303の誤り訂正/検出符号としては、FEC1の情報ビット数に達するまではFEC1が用いられる。
The
図7は、図3中の符号列組立器213の構成を示すブロック図である。この符号列組立器213は、出力符号列205のビット数を計数するカウンタ701、検査ビット632とそのビット数を一時的に記憶するバッファ702、出力符号列205を切り替える切替器703、および切替器703を制御する切替制御器704から構成される。
FIG. 7 is a block diagram showing the configuration of the code string assembler 213 in FIG. The code string assembler 213 includes a counter 701 that counts the number of bits of the
カウンタ701は、同期符号挿入要求信号203が入力すると同期符号長sync_len の値にリセットされ、同期符号の次のビットから順に次の同期符号が入力するまでカウントアップしていく。同期符号入力後、最初の検査ビット632が入力するまでは情報ビット631が出力されるように切替器703が動作する。検査ビット632が入力すると、バッファ702に記憶されると共に、そのビット数(検査ビット数)711がバッファ702から切替制御器704に出力される。
When the synchronization code
切替制御器704は、検査ビット数711とカウンタ701の計数値221を基に、前述のように検査ビット632が同期符号挿入位置に出力されないようにするための検査ビットずらしを行うように切替器703を制御する。例えば計数値221を bit_count 、検査ビット数711を check_len とすれば、
bit_count mod sync_period<sync_period− check_len
の時は情報ビット631を出力し、
sync_period− check_len ≦total _bits mod sync_period<sync_period
の時には、バッファ702に記憶された検査ビット713を出力する。以降、情報ビット631と検査ビット632を入力しながら、以上の処理を繰り返す。
Based on the number of check bits 711 and the
bit_count mod sync_period <sync_period− check_len
In this case, information bit 631 is output,
sync_period− check_len ≦ total _bits mod sync_period <sync_period
At this time, the
出力符号化装置200は、前述のように1フレームの最後の部分では誤り訂正/検出符号として縮退符号を用いることと、検査ビットの位置ずらしを行うためにビット挿入を行うため、それ以外の部分の通常とは異なった動作を行う。すなわち、多重化器111は1フレームの多重化符号列201の出力が終了すると、次のフレームの同期符号挿入要求信号203を出力する。これに対応して、図6の誤り訂正/検出切替符号化部212内の誤り訂正/検出符号化器604は、誤り訂正/検出符号の情報ビット631の不足分は挿入ビット発生器705から出力される予め定められたビットパターンであるとみなして、縮退符号を用いた誤り訂正/検出符号化を行う。このビットパターンは、全ビットを“1”としてもよいし、“0”としてもよいし、“0101……”のような特定のパターンの繰り返しでもよい。情報ビット631には、この補われた挿入ビットは出力しない。
The
図7の符号列組立器213では、情報ビット631を最後まで出力した後、切替器703をビット発生器705から入力に切り替え、バッファ702に記憶されている検査ビット713が次の同期符号の直前に配置されるように挿入ビットを挿入する。この挿入ビットの数stuffing_len は、1フレームの最後の情報ビット631を出力したときのカウンタ701の計数値221を total_len とし、最後に出力する検査ビット632のビット数をlast_check _len とすれば、
stuffing_len =sync_period−last_check _len −( total_len mod sync_period)
となる。なお、縮退符号を用いない場合は、最後の情報ビットlast_into_len の通常の情報ビットinto_len からの不足分(into_len −last_into_len )ビットのビット挿入を行い、さらに検査ビットの位置ずらしを行うためのビット挿入を行う必要がある。このため、縮退符号を用いる場合に比べinto_len −last_into_len +(into_len −last_into_len )mod sync_periodビット多くの挿入ビットが必要となってしまう。
In the code string assembler 213 in FIG. 7, after the
stuffing_len = sync_period-last_check _len-(total_len mod sync_period)
It becomes. If the degenerate code is not used, the shortest information bit last_into_len is inserted from the normal information bit into_len (into_len – last_into_len), and then the bit is inserted to shift the check bit. There is a need to do. For this reason, more insertion bits are required than in_len−last_into_len + (into_len−last_into_len) mod sync_period bits compared to the case of using a degenerate code.
符号列組立器213は、こうして切替器703を介して情報ビット631および挿入ビットを出力符号列205に出力した後、最後に検査ビット713に切り替えて出力符号列205に出力する。
The code string assembler 213 thus outputs the
次に、本実施形態に係る動画像復号化装置について説明する。
図8は、図1の動画像符号化装置に対応した動画像復号化装置の構成を示すブロック図である。図1の動画像符号化装置から出力された出力符号列205は伝送/蓄積系を経た後、入力符号列205′として入力復号化装置800に入力される。本実施形態においては、入力復号化装置800が本発明に係る復号化装置に相当する。
Next, the moving picture decoding apparatus according to the present embodiment will be described.
FIG. 8 is a block diagram showing a configuration of a moving picture decoding apparatus corresponding to the moving picture encoding apparatus of FIG. The
入力復号化装置800では、後続の逆多重化器811からの誤り訂正/検出符号の種類を示すFEC種類識別信号802に基づいて誤り訂正/検出符号を切り替えながら、誤り訂正/検出復号化された符号列801、同期符号検出信号803および誤り検出信号804が出力される。逆多重化器811は、これらの符号列801、同期符号検出信号803および誤り検出信号804を入力し、予測残差符号841と動き補償適応予測情報符号842を分離して出力する。
予測残差符号841および動き補償適応予測情報符号842は、それぞれ第1および第2の可変長復号器806および810に入力される。第1の可変長復号器806で復号された残差DCT係数831は、逆量子化器807で逆量子化、逆DCT器808で逆離散コサイン変換という一連の処理が施された後、加算器809で動き補償適応予測器801からの出力である動き補償適応予測信号832と加算されて再生画像信号850となる。再生画像信号850は、装置外へ出力されると共に、フレームメモリ820へ記録される。第2の可変長復号化器810で復号された動き補償適応予測情報は、動き補償適応予測器801に入力され、動き補償予測信号832が生成される。
Prediction
以上の処理は、図1の動画像符号化装置に対応して動画像を再生する処理であり、逆量子化器807、逆DCT器808、加算器809およびフレームメモリ820が行う処理は、それぞれ図1における逆量子化器107、逆DCT器108、加算器109およびフレームメモリ102のそれと実現手段は異なる場合もあるが、基本的に同一である。また、第1および第2の可変長復号器806,810、逆多重化器811および入力復号化装置800の処理は、符号列に誤りが混入した場合を除いて、それぞれ図1における可変長符号化器106,110、多重化器111および出力符号化装置200のそれと逆の処理である。
The above processing is processing for reproducing a moving image corresponding to the moving image encoding apparatus of FIG. 1. The processing performed by the inverse quantizer 807, inverse DCT device 808,
図9は、入力復号化装置800の構成を示すブロック図である。この入力復号化装置800は、入力符号列205′中の同期符号を検出する同期検出器901、入力符号列205′のビット数を計数するカウンタ902、入力符号列205′を情報ビット912と検査ビット913に分解して出力する符号列分解器903、誤り訂正/検出復号化器904および挿入ビット除去器905から構成される。
FIG. 9 is a block diagram showing the configuration of the
同期検出器901では、カウンタ902の計数値911に基づいて同期符号挿入位置でのみ同期符号の検出を行う。例えば、同期符号挿入位置の間隔をsync_period、計数値911を bit_count とし、同期符号の長さをsync_len とすれば、
0< bit_count %sync_period≦sync_len
の時のみ同期検出を行う。
ここで、同期符号の誤りを考慮した同期符号の検出を行っても良い。
The
0 <bit_count% sync_period ≦ sync_len
Synchronous detection is performed only when
Here, synchronization code detection may be performed in consideration of synchronization code errors.
図3中の出力符号化装置200内のビット挿入器211において、nビット以下の誤りを考慮して同期符号とのハミング距離が2*n+1離れるようにビット挿入による符号列変換を行っていれば、真の同期符号とのハミング距離がn以下のものを同期符号と判定しても、nビット以下の誤りの混入であれば誤同期検出は起こらない。
If the
図10は、符号列分解器903の構成を示すブロック図である。入力符号列205′は、後述する制御器1001で制御される第1の切替器1002で情報ビット1021と検査ビット913とに切り替えられる。第1の切替器1002から情報ビット1021が出力された場合、この情報ビット1021は第2の切替器1003を経てバッファ1004に情報ビット長だけ記憶される。カウンタ1005は、第2の切替器1003からの出力ビット数を計数する。このカウンタ1005の計数値1023は、比較器1006で誤り訂正/検出符号情報出力器1007から出力された情報ビット長1024と比較され、両者が一致したときにカウンタ1005がリセットされると共に、誤り訂正/検出符号の種類を示すFEC種類識別信号802がラッチ回路1008でラッチされ、さらにバッファ1004から情報ビット912が出力される。ラッチ回路1008の出力914は、誤り訂正/検出符号情報出力回路1007へ入力されると共に、図9中に示す誤り訂正/検出復号化器904に出力される。
FIG. 10 is a block diagram showing the configuration of the
前述のように、誤り訂正/検出符号の検査ビットは位置ずらしが施され、符号列205中後方の誤り訂正/検出符号の情報ビットの間に入っている。制御器1001は、この位置ずらしが施された検査ビットと情報ビットが分離されるように制御を行う。1ブロックの誤り訂正/検出符号の情報ビットの入力が終了すると、比較器1006において計数値1023と情報ビット長1024が一致する。制御器1001は、この一致信号を受けて誤り訂正/検出情報出力器1007から検査ビット長1025を取り込み、次の情報ビットの間に入っている検査ビットの位置を計算する。比較器1006で一致と判定されたときの符号列205′の入力ビット数の計数値911をbit _count 、検査ビット長をcheck _len とすれば、検査ビット開始位置check _start は
check _start =(bit _count /sync_period+1)*sync_period−check _len
となり、検査ビット終了位置check _end は、
check _end =(bit _count /sync_period+1)*sync_period
となる。制御器1001は、計数値911が check_start から check_end までの間、切替器1002を検査ビット913が出力されるように制御する。
As described above, the check bits of the error correction / detection code are shifted in position and are located between the information bits of the error correction / detection code at the rear of the
check _start = (bit _count / sync_period + 1) * sync_period-check _len
The check bit end position check_end is
check _end = (bit _count / sync_period + 1) * sync_period
It becomes. The
1フレームの最後は縮退符号で誤り訂正/検出符号化が行われているので、特別な処理を行う。1フレームの最後に達すると、同期検出器901から次のフレームの同期符号を検出したことを示す信号803が出力される。制御器1001は、この信号803を受けてフレームの最後の誤り訂正/検出符号の検査ビットの位置および情報ビットの不足ビット数を計算する。1フレームの最後の誤り訂正/検出符号を入力し始めたときの入力される符号列205′のビット数の計数値911を pre_last_count 、1フレームの符号列205′の入力が終了した時点の計数値911を total_count 、処理時点での計数値911を bit_count 、1フレーム最後の誤り訂正/検出符号の検査ビット長をlast_check _len 、それより一つ前の誤り訂正/検出符号の検査ビット長をpre _last_check _len とする。まず、誤り訂正符号が縮退符号であることおよびビット挿入が行われていることによる情報ビットの過不足分を計算する。1フレーム最後の誤り訂正/検出符号の情報ビットのうち、出力符号列205中に含まれているビット数last_info_len は、
last_inf0_len = total_count −last_check _len −pre _last_count −pre _last_check _len
である。last_info_len が誤り訂正符号の情報長info_len より短いときには縮退符号であると判定し、計数値1023がlast_info_len からinfo_len までは切替器1021を挿入ビット発生器1015から出力されるビットパターンに切り替えて、縮退による情報ビットの不足分を補う。この挿入ビット発生器1015からの出力ビットパターンは、符号化器の図7中の挿入ビット発生器705と同一のビットパターンを発生する。
Since error correction / detection encoding is performed with a degenerate code at the end of one frame, special processing is performed. When the end of one frame is reached, the
last_inf0_len = total_count −last_check _len −pre _last_count −pre _last_check _len
It is. When last_info_len is shorter than the information length info_len of the error correction code, it is determined that the code is a degenerate code. Make up for the shortage of information bits. The output bit pattern from the inserted
一方、last_info_len がinfo_len より長いときには、ビット挿入分と判定し計数値1023がinfo_len 以上となる部分については情報ビット912を出力しないようにする。検査ビットについては、
total _count −check _len <bit _count ≦total _count
の時の出力符号列205を検査ビットとして出力するように切替器1002を制御する。
On the other hand, when last_info_len is longer than info_len, it is determined that the bit is inserted, and the
total _count −check _len <bit _count ≦ total _count
The
誤り訂正/検出復号化器904は、符号列分解器903から出力された情報ビット912および検査ビット913を入力し、図10のラッチ回路1008でラッチされた誤り訂正/検出符号の種類を示すFEC種類識別信号914に基づいて誤り訂正/検出符号の復号化を行い、誤り訂正された符号列915と誤り検出信号804を出力する。
The error correction /
誤り訂正された符号列915は、挿入ビット除去器905に入力される。挿入ビット除去器905は、出力符号化装置200のビット挿入器211で挿入された擬似同期信号を防ぐための挿入ビットを取り除く処理を行う。前述のように、ビット挿入は同期挿入位置でのみ行われているため、計数器902の計数値911に基づいて同期挿入位置を判定する。
The error-corrected
例えば、同期符号語が図5に示すものとし、ビット挿入器211において同期符号とのハミング距離が2*n+1以上離れるように同期符号の最初のsync_len ビットの“0000…”の部分にビット挿入が行われている場合には、同期符号挿入位置からsync_0_len −(2*n+1)ビットの“1”の数(=n0とする)を計数し、n0が2*n+1以下であったら2*n+1−n0ビット削除する。ただし、挿入ビットは“1”であると定められているため、挿入ビット除去器905で挿入ビットと判定されたビットが“0”となっていたときは、同期符号挿入区間に誤りが混入したと考えられ、この場合には誤り検出信号804を出力する。
For example, it is assumed that the synchronization code word is shown in FIG. 5, and bit insertion is performed at the “0000...” Portion of the first sync_len bit of the synchronization code so that the Hamming distance from the synchronization code is 2 * n + 1 or more in the
以上のようにして入力復号化装置800で復号された符号列801は、逆多重化器811で逆多重化が行われる。これは図2に示したような多重化された符号語を分離して出力する操作である。この逆多重化器811は、第1および第2の可変長復号器806および810と連動して動作する。
The
まず、出力復号化装置800から同期符号検出信号803が入力されると、逆多重化器811はフレーム処理の初期状態に移る。次に、誤り訂正/検出符号の種類を示すFEC種類識別信号802としてピクチャヘッダに対する誤り訂正/検出符号の種類を出力し、符号列801を入力してピクチャヘッダ302を復号しピクチャヘッダに誤りが無いか判定する。誤りが無い場合には、FEC種類識別信号802として、予測モード情報303に対する誤り訂正/検出符号の種類を出力し、符号列801を入力して予測モード情報を逆多重化し、第2の可変長復号化器810へ出力する。
First, when the synchronization
第2の可変長復号化器810は、全ての予測モード情報を復号すると、その旨を示す信号を逆多重化器811に出力する。これを受けて、逆多重化器811は動きベクトル情報304に対する誤り訂正/検出符号の種類を示すFEC種類識別信号を出力し、動きベクトル情報304の逆多重化を開始する。逆多重化された動きベクトル情報は第2の可変長復号器810に出力され、復号化される。全ての動きベクトル情報の復号が終了すると、第2の可変長復号器810から逆多重化器811にその旨を示す信号が出力され、これを受けて逆多重化器811は残差DCT係数305に対する誤り訂正/検出符号の種類を示すFEC種類識別信号を出力すると共に、残差DCT係数を305を逆多重化して第1の可変長復号器806に出力する。この残差DCT係数305を第1の可変長復号器806で復号する。
When the second variable length decoder 810 decodes all prediction mode information, the second variable length decoder 810 outputs a signal indicating that to the
以上のように、誤り訂正/検出符号の種類は、逆多重化器811において出力符号化装置200と同一に定められた多重化の規則に基づいて判定される。このため、誤り訂正/検出符号の種類を示すヘッダ情報等を出力符号列205に含める必要はない。
As described above, the type of error correction / detection code is determined based on the multiplexing rule determined in the same way as the
誤り訂正/検出復号化器904において、誤り検出符号により入力符号列205′に誤りが混入していることが検出されることがある。また、前述のように挿入ビット除去器905で挿入ビットの誤りが検出されることもある。これらの場合には、入力復号化装置800から誤り検出符号804が出力される。さらには、可変長復号化の処理において可変長符号語テーブルに無い符号語が検出された場合にも、誤りが混入したと判定される。また、逆多重化器811における逆多重化処理において多重化の規則に違反する部分があると判定されたときも、誤りが混入したと判定される。これらの場合、入力復号化装置800および逆多重化器811は再生画像に大きな劣化が生じないように、以下のような処理を行う。
In the error correction /
(1)残差DCT係数で誤りが検出された場合は、当該部分の残差を0とする。予測モードとしてイントラ符号化モードが選択されていた場合は、既再生フレームや周囲の領域の再生画像信号から当該領域の再生画像信号を予測してもよい。 (1) If an error is detected in the residual DCT coefficient, the residual of that part is set to zero. When the intra coding mode is selected as the prediction mode, the reproduced image signal of the area may be predicted from the already reproduced frame or the reproduced image signal of the surrounding area.
(2)予測モード情報や動きベクトルで誤りが検出された場合は、周囲の領域の予測モード情報や動きベクトル情報から当該領域の予測モード情報や動きベクトル情報が推定できるときにはそれらを用い、それが不可能ならば既再生フレームや周囲の領域の再生画像信号から当該領域の再生画像信号を予測する。 (2) When an error is detected in the prediction mode information or motion vector, when the prediction mode information or motion vector information of the area can be estimated from the prediction mode information or motion vector information of the surrounding area, they are used. If impossible, the reproduced image signal of the area is predicted from the already reproduced frame and the reproduced image signal of the surrounding area.
(3)ピクチャヘッダに誤りが検出された場合は、それをそのまま復号すると非常に大きな画質劣化を生じる可能性があるため、前フレームの再生画像をそのまま現フレームの再生画像とする。 (3) If an error is detected in the picture header, decoding it as it is may cause a very large image quality degradation. Therefore, the reproduced image of the previous frame is used as it is as the reproduced image of the current frame.
以上の(1)(2)(3)処理において、可変長符号化を用いているために誤りが次の同期符号までの後続の符号にも波及している場合には、その部分についても同様の処理を行う。 In the above processes (1), (2), and (3), when variable length coding is used, if an error has spread to subsequent codes up to the next synchronization code, the same applies to that part. Perform the process.
上述の説明では、同期符号検出器901が同期符号挿入位置(sync_periodビットおき)でのみ同期符号の検出を行う例を示したが、伝送/蓄積媒体によってはビットの消失や誤ビットの挿入が起こる場合もある。このような場合は、同期符号挿入位置以外でも同期符号の検出を行い、同期符号が検出された位置を同期符号挿入位置と判定すればよい。
In the above description, an example in which the
(第2の実施形態)
次に、図12〜図14を参照して本発明に係る第2の実施形態について説明する。本実施形態による動画像符号化装置および動画像復号化装置は、ビット列の一部が消失してビット数が減少したり、余分なビットが付加されてビット数が増加するような伝送路/蓄積媒体で符号列の伝送/蓄積を行っても、同期検出を確実に行うことができるようにしたものである。
(Second Embodiment)
Next, a second embodiment according to the present invention will be described with reference to FIGS. The moving picture coding apparatus and moving picture decoding apparatus according to the present embodiment have a transmission path / accumulation in which a part of the bit string is lost and the number of bits is reduced or the number of bits is increased by adding extra bits. Even if code strings are transmitted / stored on a medium, synchronization detection can be reliably performed.
図12は、このようなビット付加/消失のある場合の同期検出の処理の原理を示すブロック図である。ここで、正しい同期符号は図12(a)に示すように、sync_0_len ビットの“0”と、1ビットの“1”からなるとする。なお、図12中の“×”は同期符号以外のビットである。 FIG. 12 is a block diagram showing the principle of synchronization detection processing when such bit addition / erasure is present. Here, as shown in FIG. 12A, a correct synchronization code is assumed to be composed of sync_0_len bit “0” and 1 bit “1”. Note that “x” in FIG. 12 is a bit other than the synchronization code.
図12(b)〜(e)は、ビット付加/消失によって同期符号がどのように変化するかを示したものである。ここで、付加/消失するビット数(Nid)は最大1ビットとしている。(b)は同期符号より前のビット列中で1ビット削除が起きた揚合であり、同期符号全体が1ビット前にシフトしている。(c)は同期符号より前のビット列中で1ビット付加が起きた場合であり、同期符号全体が1ビット後ろにシフトしている。(d)は同期符号中でビット削除が起きた場合であり、図中矢印のビット抜け位置から後ろが1ビット前にシフトしている。さらに、(e)は同期符号中で1ビット付加が起きた場合であり、図中矢印のビット付加位置に1ビット付加が起こり、それより後ろが1ビット後ろにシフトしている。 FIGS. 12B to 12E show how the synchronization code changes due to bit addition / erasure. Here, the maximum number of bits added / erased (Nid) is 1 bit. (B) is a summation in which 1-bit deletion has occurred in the bit string before the synchronization code, and the entire synchronization code is shifted forward by 1 bit. (C) shows a case where 1 bit is added in the bit string before the synchronization code, and the entire synchronization code is shifted backward by 1 bit. (D) shows a case where bit deletion has occurred in the synchronous code, and the back is shifted one bit forward from the bit missing position of the arrow in the figure. Further, (e) shows a case where 1 bit is added in the synchronization code, and 1 bit is added at the bit addition position indicated by an arrow in the figure, and the bit after that is shifted backward by 1 bit.
ビット付加/消失が起きても正しく同期を検出するためには、図12(b)〜(d)に示したビット列も同期符号と判定する必要がある。図12から分かるように、正しい同期符号挿入位置の±Nidビットの範囲に含まれる“1”の数は最大
sync_0_len −3*Nid
ビットである。従って、復号側で同期符号挿入位置の±Nidビットの範囲で同期検出を行い、この区間に含まれる“1”の数が上記の値以下だったらば同期符号と判定すればよい。また、符号化装置では図12(b)〜(d)のビットパターンが生じないように符号列の変換を行う。
In order to correctly detect synchronization even when bit addition / erasure occurs, the bit strings shown in FIGS. 12B to 12D must also be determined as synchronization codes. As can be seen from FIG. 12, the number of “1” included in the range of ± Nid bits at the correct synchronization code insertion position is the maximum.
sync_0_len -3 * Nid
Is a bit. Therefore, synchronization detection is performed in the range of ± Nid bits of the synchronization code insertion position on the decoding side, and if the number of “1” included in this section is equal to or less than the above value, it may be determined as a synchronization code. Also, the encoding apparatus converts the code string so that the bit patterns of FIGS. 12B to 12D do not occur.
以下、このような符号化装置/復号化装置を第1の実施形態との差異を中心に説明する。 Hereinafter, such an encoding device / decoding device will be described focusing on differences from the first embodiment.
第2の実施形態に係る動画像符号化装置は、第1の実施形態に係る動画像符号化装置と全体構成は同じであるが、図3中のビット挿入器211の動作が異なっている。図13に、ビット挿入器211の動作を示す。すなわち、第1の実施形態のビット挿入器211では、同期符号挿入区間でのみビット挿入操作を行っていたが、第2の実施形態におけるビット挿入器211では、最大Nidビットのビット付加/消失が起きても同期符号と同一のビットパターンが生じないようにするため、同期符号挿入区間±Nidビットの区間でビット挿入を行う。
The video encoding device according to the second embodiment has the same overall configuration as the video encoding device according to the first embodiment, but the operation of the
図3における計数値221を total_len 、同期符号挿入位置の間隔をsync_preriod とすれば、ビット挿入器211は
total _len mod sync_period=sync_period−Nid
(mod:剰余演算)
から、
total_len mod sync_period=sync_0_len −1−3*Nid
の区間での“1”の数(=n0とする)を計数し、n0が3*Nid+1未満であったら3*Nid+1−n0ビットの“1”を挿入する。
If the
total _len mod sync_period = sync_period−Nid
(Mod: remainder operation)
From
total_len mod sync_period = sync_0_len -1-3 * Nid
The number of “1” (= n0) in the interval is counted, and if n0 is less than 3 * Nid + 1, “1” of 3 * Nid + 1−n0 bits is inserted.
図13では、sync_period=12、sync_0_len =9、Nid=1の場合のビット挿入器211の動作例を示している。この例ではn0=2であるので、3*Nid+1−n0=2ビットの“1”を挿入する。
FIG. 13 shows an operation example of the
このようにビット挿入を行うことにより、同期符号挿入区間±Nidビットの“0”の数は3*Nidビット以上であることが保証され、同期符号と一意に識別することが可能である。 By performing bit insertion in this way, the number of “0” s in the synchronization code insertion interval ± Nid bits is guaranteed to be 3 * Nid bits or more, and can be uniquely identified from the synchronization code.
一方、第2の実施形態に係る動画像復号化装置は、第1の実施形態と全体構成は同一であるが、図9中の同期検出器901および挿入ビット除去器905の動作が異なっている。図14に、挿入ビット除去器905の動作を示す。
On the other hand, the moving picture decoding apparatus according to the second embodiment has the same overall configuration as that of the first embodiment, but the operations of the
すなわち、同期検出器901では最大Nidビットのビット付加/消失が起きても同期を検出するために、同期符号挿入位置の前後±Nidビットの範囲で同期符号の検出を行う。
In other words, the
まず、同期符号挿入位置毎に同期符号が存在するかを判定する。すなわち、カウンタ902の計数値911を bit_count すると、
bit_count mod sync_period=sync_period−Nid
から、
bit_count mod sync_period=sync_0_len −1+Nid
の間の“0”の数(=ns0とする)をカウントし、n0が3*Nid以下であたら、この区間に同期符号があると判定する。
First, it is determined whether a synchronization code exists for each synchronization code insertion position. That is, when the
bit_count mod sync_period = sync_period-Nid
From
bit_count mod sync_period = sync_0_len −1 + Nid
The number of “0” s in between (= ns0) is counted, and if n0 is 3 * Nid or less, it is determined that there is a synchronization code in this interval.
図14の動作例では、sync_period=12、sync_0_len =9、Nid=1の場合の例を示している。この例では( bit_count mod sync_period)が“11”から“8”の間で“0”の数をカウントする。図14の例ではns0=2であるので、同期符号と判定する。 The operation example of FIG. 14 shows an example in the case of sync_period = 12, sync_0_len = 9, and Nid = 1. In this example, the number of “0” is counted when (bit_count mod sync_period) is between “11” and “8”. In the example of FIG. 14, since ns0 = 2, it is determined as a synchronous code.
次に、同期符号があると判定された同期符号挿入区間で、ビット付加/消失によって符号列が何ビットシフトしているかを判定する。図14のようなsync_0_len ビットの場合、最後の“1”の位置からシフト量を判定する。具体的には、同期符号判定区間の最初からsync_0_len +1ビット目から見て最初にある “1”を探索し、この同期符号判定区間の最初から何ビット目にあるか(= first_1_pos ビットとする)を基に、
シフトビット数= first_1_pos −(sync_0_len +1+Nid)
(負の場合は前方シフト、正の場合は後方シフト)
として求める。図14の例では first_1_pos =10であるから、
シフトビット数=10−(9+1+1)=−1
となり、前方に1ビットシフトしていることが分かる。
Next, it is determined how many bits the code string has shifted due to the addition / erasure of bits in the synchronization code insertion section where it is determined that there is a synchronization code. In the case of sync_0_len bits as shown in FIG. 14, the shift amount is determined from the last “1” position. Specifically, the first “1” is searched from the start of the sync_0_len + 1 bit from the beginning of the synchronization code determination section, and what bit is present from the start of this synchronization code determination section (= first_1_pos bits) Based on
Number of shift bits = first_1_pos− (sync_0_len + 1 + Nid)
(Negative shift forward, positive shift backward)
Asking. In the example of FIG. 14, first_1_pos = 10.
Number of shift bits = 10− (9 + 1 + 1) = − 1
It can be seen that there is a 1-bit shift forward.
挿入ビット除去器905では、第1の実施形態と異なり、同期符号挿入位置±Nidビットの区間で挿入ビット除去処理を行う。すなわち、
bit_count mod sync_period=sync_period−Nid
から、
bit_count mod sync_period=sync_0_len −1−3*Nid
の区間での“1”の数(=n0とする)を計数し、n0が3*Nid+1以下であったら、3*Nid+1−n0ビットの“1”を除去する。
Unlike the first embodiment, the
bit_count mod sync_period = sync_period-Nid
From
bit_count mod sync_period = sync_0_len -1-3 * Nid
The number of “1” (= n0) in the interval is counted, and if n0 is 3 * Nid + 1 or less, “1” of 3 * Nid + 1−n0 bits is removed.
第2の実施形態において、伝送路や蓄積媒体でのビット付加/消失が起きた区間を何らかの形で判定できる場合、ビット付加/消失を考慮した同期検出処理やビット挿入処理、ビット除去処理は、その区間でのみ行うようにしてもよい。 In the second embodiment, when it is possible to determine in some form the section where bit addition / erasure has occurred in the transmission path or the storage medium, the synchronization detection processing, bit insertion processing, and bit removal processing considering bit addition / erasure are: You may make it carry out only in the area.
なお、前述した第1の実施形態に係る動画像復号化装置においても、伝送路や蓄積媒体でのビット付加/消失に対応した同期検出を行うために、同期検出器901では第2の実施形態と同様に同期符号挿入区間±Nidビットの区間で同期検出を行うようにしてもよい。この場合、同期符号以外の部分を誤って同期符号と判定する疑似同期が生じる可能性があるが、ビット付加/消失の起きやすい伝送路/蓄積媒体では同期検出ミスによる復号画像の品質劣化を抑えることができ、画質が向上する。
Note that in the video decoding apparatus according to the first embodiment described above, the
また、伝送路や蓄積媒体でのビット付加/消失が起きた区間を何らかの形で判定できる場合は、この処理はその区間でのみ行い、それ以外の区間では通常の同期検出を行うようにしてもよい。 In addition, when it is possible to determine in some form the section where bit addition / erasure has occurred in the transmission path or storage medium, this processing is performed only in that section, and normal synchronization detection is performed in other sections. Good.
さらに、上述した第1および第2の実施形態において、フレームの長さを示す情報(以下、フレーム長情報という)を用いて同期をさらに保護するようにしてもよい。図15、図16および図17は、フレーム長情報POINTERを用いた場合の符号列の例を示したものである。 Furthermore, in the first and second embodiments described above, synchronization may be further protected using information indicating the frame length (hereinafter referred to as frame length information). FIGS. 15, 16 and 17 show examples of code strings when the frame length information POINTER is used.
図15の例では、同期符号PSCの直後にフレーム長情報POINTERと、このフレーム長情報POINTERを保護する誤り訂正/検出符号のチェックビットCHKPが続いている。フレーム長情報POINTERには前フレームのビット数、すなわち前フレームの同期符号から現フレームの同期符号までのビット数を示す情報が記録されている。 In the example of FIG. 15, immediately after the synchronization code PSC, frame length information POINTER and an error correction / detection code check bit CHKP for protecting the frame length information POINTER follow. The frame length information POINTER records information indicating the number of bits of the previous frame, that is, the number of bits from the synchronization code of the previous frame to the synchronization code of the current frame.
符号化装置では、1フレームの符号列ビット数をカウントして、これをフレーム長情報POINTERに変換し、さらに誤り訂正/検出符号化を行ってチェックビットCHKPを生成する。そして、これらを図15に示すように次フレームの同期符号の直後に続けて符号列を生成する。 The encoding apparatus counts the number of code string bits in one frame, converts this into frame length information POINTER, and further performs error correction / detection encoding to generate check bits CHKP. Then, as shown in FIG. 15, a code string is generated immediately after the synchronization code of the next frame.
一方、復号化装置では、第1および第2の実施形態に述べたのと同様の方法で同期符号の検出を行った後、それに続くフレーム長情報POINTERとチェックビットCHKPを符号列から取り出し、誤り訂正/検出復号を行ってフレーム長情報POINTERを復号する。そして、復号されたフレーム長情報POINTERと、1つ前に検出された同期符号から現在の同期符号の位置までのビット数をカウントして求めた値(フレーム長カウント値)を比較し、同期符号の誤検出が無いかをチェックする。 On the other hand, in the decoding apparatus, after detecting the synchronization code by the same method as described in the first and second embodiments, the subsequent frame length information POINTER and the check bit CHKP are extracted from the code string, and the error is detected. Correction / detection decoding is performed to decode the frame length information POINTER. Then, the decoded frame length information POINTER is compared with a value (frame length count value) obtained by counting the number of bits from the synchronization code detected immediately before to the position of the current synchronization code. Check for false detections.
もし、フレーム長カウント値がフレーム長情報POINTERに示された前フレームの符号長と異なる場合には、同期符号の誤検出が起こった可能性があるため、フレーム長情報POINTERを用いて誤検出された同期符号の再検出を行う。すなわち、現在の同期符号からフレーム長情報POINTERで示されたビット数だけ前方に検出できなかった同期符号があると見なすこととする。この場合、1つ前に検出された同期符号から現在の同期符号までの区間は、1つ前の同期符号からフレーム長情報POINTERで示される位置までの区間と、そこから現在の同期符号までの区間の二つのフレームに分割して復号処理を行う。 If the frame length count value is different from the code length of the previous frame indicated in the frame length information POINTER, there is a possibility that an erroneous detection of the synchronization code has occurred, so that it is erroneously detected using the frame length information POINTER. Re-detection of the synchronization code. That is, it is assumed that there is a synchronization code that cannot be detected ahead by the number of bits indicated by the frame length information POINTER from the current synchronization code. In this case, the interval from the previous synchronization code to the current synchronization code is the interval from the previous synchronization code to the position indicated by the frame length information POINTER and the current synchronization code. The decoding process is performed by dividing the frame into two frames.
ただし、フレーム長情報POINTERで示されるビット数が、1つ前に検出された同期符号から現在の同期符号の位置までのビット数よりも多い場合には、フレーム長情報POINTERが誤っているものと見なし、上記の同記再検出処理は行わない。 However, if the number of bits indicated by the frame length information POINTER is greater than the number of bits from the previously detected synchronization code to the position of the current synchronization code, the frame length information POINTER is erroneous. The above-mentioned re-detection process is not performed.
フレーム長情報POINTERおよびチェックビットCHKPのビット数が多い場合には、図16に示すように同期符号PSC、フレーム長情報POINTER、チェックビットCHKPが複数の同期区間にわたるようにしてもよい。この場合、同期符号以外の符号列が同期符号と一定のハミング距離を保つようにするための符号化装置でのビット挿入処理および復号化装置でのビット削除処理は、フレーム長情報POINTERおよびチェックビットCHKPが存在する区間では行わないようにしてもよい。 When the number of bits of the frame length information POINTER and the check bit CHKP is large, the synchronization code PSC, the frame length information POINTER, and the check bit CHKP may extend over a plurality of synchronization sections as shown in FIG. In this case, the bit length processing in the encoding device and the bit deletion processing in the decoding device for ensuring that the code string other than the synchronization code keeps a constant Hamming distance from the synchronization code includes frame length information POINTER and check bits. It may not be performed in a section where CHKP exists.
図15および図16の例において、同期符号PSCの後半にその同期符号の種類を示す情報(フレーム同期符号、GOB同期符号の区別等)が含まれている場合、フレーム長情報POINTERだけでなく、同期符号PSCの後半ビットを誤り訂正符号で保護するようにしてもよい。これにより、同期符号の位置だけでなくその種類も正確に検出できるため、誤りに対する耐性がさらに向上する。 In the example of FIGS. 15 and 16, when information indicating the type of the synchronization code is included in the latter half of the synchronization code PSC (such as the distinction between the frame synchronization code and the GOB synchronization code), not only the frame length information POINTER, The latter half of the synchronization code PSC may be protected with an error correction code. As a result, not only the position of the synchronization code but also its type can be detected accurately, and the tolerance to errors is further improved.
図17の例では、フレーム長情報POINTERおよびチェックビットCHKPをフレームの最後(次のフレームの同期符号の直前)に置く例である。この場合、復号化装置では、次のフレームの同期符号を検出した後にその直前のフレーム長情報POINTERおよびチェックビットCHKPを取り出して誤り訂正/検出復号を行い、図15および図16と同様の処理により同期符号の再検出を行う。 In the example of FIG. 17, the frame length information POINTER and the check bit CHKP are placed at the end of the frame (immediately before the synchronization code of the next frame). In this case, in the decoding apparatus, after detecting the synchronization code of the next frame, the immediately preceding frame length information POINTER and check bit CHKP are extracted and error correction / detection decoding is performed, and the same processing as in FIGS. 15 and 16 is performed. Re-detect the synchronization code.
図15の例においては、同期符号は同期符号挿入位置にのみ存在するので、フレーム長情報POINTERはフレームのビット数を同期符号挿入問隔(=sync_periodビット)で割った値を記録してもよい。これにより、フレーム長を少ないビット数で表すことができる。 In the example of FIG. 15, since the synchronization code exists only at the synchronization code insertion position, the frame length information POINTER may record a value obtained by dividing the number of bits of the frame by the synchronization code insertion interval (= sync_period bits). . Thereby, the frame length can be expressed by a small number of bits.
また、第1および第2の実施形態では、誤り訂正/検出符号を符号化する情報の重要度に応じて変化させる階層符号化を行う例を示したが、フレーム内で同一の誤り訂正/検出符号を用いるようにしてもよいし、誤り訂正/検出符号を用いなくともよい。そのような場合でも、本実施形態で示したような同期符号以外の符号列が同期符号と予め定められた値以上のハミング距離を保つためのビット挿入処理、およびこれに対応した同期符号検出処理によって、同期を検出する能力は従来方式より向上する。 In the first and second embodiments, an example in which hierarchical encoding is performed in accordance with the importance of information for encoding an error correction / detection code has been described. However, the same error correction / detection is performed within a frame. A code may be used, or an error correction / detection code may not be used. Even in such a case, a bit insertion process for maintaining a hamming distance of a code string other than the synchronization code as shown in the present embodiment above a predetermined value with the synchronization code, and a synchronization code detection process corresponding thereto Thus, the ability to detect synchronization is improved over the conventional method.
また、以上の各実施形態の説明では動画像信号を高能率圧縮符号化して伝送/蓄積する例を示したが、本発明は静止画像や音声、データ等の伝送/蓄積にも応用することが可能である。例えば、静止画像信号を直交変換を用いて高能率圧縮符号化する場合には、変換係数の低域成分をより強く誤り保護するように誤り訂正/検出符号を切り替えて用いればよい。音声を駆動源と声道フィルタにモデル化して符号化する方法では、ピッチ周期や声道パラメータ等を強く誤り保護するように誤り訂正/検出符号を切り替えれば良い。 In the above description of each embodiment, an example of transmitting / accumulating a moving image signal after performing high-efficiency compression coding has been shown. However, the present invention can also be applied to transmission / accumulation of still images, audio, data, and the like. Is possible. For example, when high-efficiency compression coding is performed on a still image signal using orthogonal transform, the error correction / detection code may be switched and used so as to more strongly protect the low frequency component of the transform coefficient. In a method of encoding speech by modeling speech as a drive source and a vocal tract filter, the error correction / detection code may be switched so as to strongly protect the pitch period and vocal tract parameters.
(第3の実施形態)
次に、本発明に係る第3の実施形態について説明する。本実施形態は、誤り訂正/検出符号を用いないことが第1および第2の実施形態と異なる。
(Third embodiment)
Next, a third embodiment according to the present invention will be described. This embodiment differs from the first and second embodiments in that no error correction / detection code is used.
図18は、本実施形態に係る動画像符号化装置のブロック図である。図1と相対応する部分に同一符号を付して第1の実施形態との相違点を中心に説明すると、本実施形態では出力符号化装置200の構成および動作が異なる。また、多重化器111は、基本動作は図1の多重化器111と同一であるが、誤り訂正/検出符号を用いないことに伴って、多重化符号列201および同期符号挿入要求信号203のみを出力する。
FIG. 18 is a block diagram of a video encoding apparatus according to this embodiment. The same reference numerals are assigned to the portions corresponding to those in FIG. 1 and the differences from the first embodiment will be mainly described. In this embodiment, the configuration and operation of the
図19は、図18中の出力符号化装置200の構成を示すブロック図である。この出力符号化装置200は、出力符号列205のビット数を計数するカウンタ1701、出力符号列205を切り替える切替器1703、切替器1703を制御する切替制御器1704、およびスタッフィングビットを発生するスタッフィングビット発生器1705から構成される。
FIG. 19 is a block diagram showing a configuration of
図20は、図19の出力符号化装置200で生成される出力符号列205の一例を示す図である。図4の出力符号列と相対応する符号語には同一記号を用いて表記してある。図4と同様に同期符号PSCは周期的に、つまり一定区間(sync_periodビット)おきに配置された矢印で示される同期符号挿入位置のいずれかのみに挿入されている。図20では、誤り訂正/検出符号の検査ビットCHKが含まれないところが図4と異なる。出力符号列205の1フレームの最後の部分には、同期符号PSCが同期符号挿入位置に挿入されるように、スタッフィングビットSTUFFが挿入される。スタッフィングビットSTUFFのビット数は、sync_periodビット以下となる。
FIG. 20 is a diagram illustrating an example of an
以下、このような出力符号列205を生成する図19の出力符号化装置200の構成と動作について詳細に説明する。
Hereinafter, the configuration and operation of the
カウンタ1701は、多重化器111から同期符号挿入要求信号203が入力され、多重化符号列201として同期符号301の最初のビットが入力されると“1”にセットされ、同期符号301の全ビットが入力されると同期符号長sync_len にセットされる。その後、カウンタ1701は同期符号301の次のビットから順に次の同期符号の直前のビットが出力されるまでカウントアップしてゆく。
The counter 1701 is set to “1” when the synchronization code
切替制御器1704は、多重化符号列201として同期符号の最初のビットから次の同期符号の前のビットまでが入力されている時は、切替器1703を多重化符号列201の側に切り替え、多重化符号列201が出力符号列205として出力されるように制御する。
The switching controller 1704 switches the
そして、1フレームの最後の部分では、次の同期符号が同期符号挿入位置に挿入されるようにするためのビット挿入(ビットスタッフィング)を行う。多重化器111は、1フレームの多重化符号列201の出力が終了すると、次のフレームの同期符号挿入要求信号203を出力する。これを受けて切替制御器1704は、切替器1703をスタッフィングビット発生器1705の側に切り替え、スタッフィングビット1223を出力符号列205として出力する。このスタッフィングビット1223は全ビットを“1”としてもよいし、“0”としてもよいし、“0101…”のような特定のパターンとしてもよい。
In the last part of one frame, bit insertion (bit stuffing) is performed so that the next synchronization code is inserted at the synchronization code insertion position. When the output of the multiplexed
次に、本実施形態に係る動画像復号化装置について説明する。
図21は、図18の動画像符号化装置に対応した動画像復号化装置の構成を示すブロック図である。図8と相対応する部分に同一符号を付して第1の実施形態との相違点を中心に説明すると、本実施形態では入力符号化装置800の構成および動作が異なる。また、入力復号化装置800から逆多重器811に入力される信号は符号列801および同期符号検出信号803のみであり、逆多重器811から入力復号化装置800に入力される信号が無い。
Next, the moving picture decoding apparatus according to the present embodiment will be described.
FIG. 21 is a block diagram showing a configuration of a moving picture decoding apparatus corresponding to the moving picture encoding apparatus of FIG. The same reference numerals are assigned to the parts corresponding to those in FIG. 8 and the differences from the first embodiment will be mainly described. In this embodiment, the configuration and operation of the
図22は、入力復号化装置800の構成を示すブロック図である。この入力復号化装置800は、入力符号列205′中の同期符号を検出する同期検出器1901と、入力符号列205′のビット数を計数するカウンタ1902から構成される。
FIG. 22 is a block diagram showing the configuration of
カウンタ1902は、復号化の最初の段階では“0”にリセットされており、入力符号列205′が1ビット入力される度に計数値1911を“1”ずつカウントアップしていく。
The
同期検出器1901では、カウンタ1902の計数値1911に基づいて同期符号挿入位置でのみ同期符号の検出を行う。例えば、同期符号挿入間隔をsync_period、計数値1911を bit_count とし、同期符号の長さをsync_len とすれば、
0< bit_count mod sync_period≦sync_len
の時のみ同期検出を行う。ここで、A mod BはAをBで除したときの剰余を表す。同期検出器1901は、同期符号を検出すると同期符号検出信号803を出力する。
The
0 <bit_count mod sync_period ≦ sync_len
Synchronous detection is performed only when Here, A mod B represents the remainder when A is divided by B. When the
入力復号化装置からの符号列801は、入力符号列205′がそのまま出力され、逆多重化器811に入力される。以降、図21の動画像復号化装置と同様に逆多重化、復号化の処理が行われる。
The
フレームの最後のスタッフィングビットSTUFFを予め定められたビットパターンとした場合、逆多重化器811においてこのスタッフィングビットSTUFFが予め定められたパターンと一致するか判定し、一致しなかった場合には入力符号列205′中に誤りがあったと判定して、第1の実施形態で示した動画像符号化装置で述べたような画質劣化が大きくならないようにするための処理を行ってもよい。
When the last stuffing bit STUFF of the frame is a predetermined bit pattern, the
(第4の実施形態)
次に、本発明に係る第4の実施形態について説明する。
本実施形態に係る動画像符号化装置はその全体構成は図18の動画像符号化装置と同一であり、出力符号化装置の動作が第3の実施形態と異なる。
(Fourth embodiment)
Next, a fourth embodiment according to the present invention will be described.
The overall configuration of the video encoding apparatus according to this embodiment is the same as that of the video encoding apparatus of FIG. 18, and the operation of the output encoding apparatus is different from that of the third embodiment.
図23は、図18中の出力符号化装置200の構成を示すブロック図である。図19の出力符号化装置と相対応する部分に同一の符号を付してその差異を中心に説明すると、疑似同期符号を防止するためのビットスタッフィング処理を行うビット挿入器1211が追加されている。
FIG. 23 is a block diagram showing a configuration of
ビット挿入器1211において、多重化符号列201に対して疑似同期の発生の防ぐためのビット挿入が行われる。これは、出力符号列205中に同期符号と同一のビットパターンがあると同期符号を一意に復号できなくなるため、これを防ぐための処理である。例えば、同期符号が図5に示すようにsync_0_len ビットの“0”、1ビットの“1”および同期符号の種類を示すsync_nb_len ビットの“×××××”からなる場合、同期符号以外の符号列中にsync_0_len ビット以上“0”が連続しないように“1”を挿入すれば疑似同期の発生を防ぐことができる。
In the
同期符号は同期符号挿入装置にしか挿入されない。従って、疑似同期発生防止のためのビット挿入操作は同期符号挿入位置だけで行えばよい。そこで、出力符号列205の総ビット数を示す計数値1221に基づいてビット挿入が必要であるかを判定する。計数値1221を total_len とすれば、
0< total_len _ mod_sync_period≦sync_0_len
となる区間で多重化符号列201中の“1”の数を計数し、この区間に“1”が全く無くなければ1ビットの“1”を挿入する。ここで、A mod BはAをBで除したときの剰余を表す。
The synchronization code is inserted only into the synchronization code insertion device. Therefore, the bit insertion operation for preventing the occurrence of pseudo synchronization may be performed only at the synchronization code insertion position. Therefore, it is determined whether bit insertion is necessary based on the
0 <total_len_mod_sync_period ≦ sync_0_len
The number of “1” s in the multiplexed
また、誤りによる同期符号の誤検出の確率を低くするためには、以下のようにビット挿入を行えばよい。 Further, in order to reduce the probability of erroneous detection of a synchronization code due to an error, bit insertion may be performed as follows.
同期符号にnビット誤りが混入した場合にも同期符号を検出するためには、後述する動画像符号化装置の入力符号化装置で真の同期符号とハミング距離がn以下の符号語は同期符号と判定する必要がある。しかし、同期符号以外の符号列をそのままにしてこのような判定を行うと、同期符号以外の符号列中にも同期符号とハミング距離がn以下のビットパターンが存在することがあり、これが同期符号挿入位置にあると誤って同期符号と判定されてしまう。 In order to detect a synchronization code even when an n-bit error is mixed in the synchronization code, a code word having a true synchronization code and a Hamming distance of n or less in an input encoding device of a moving image encoding device described later is a synchronization code. It is necessary to judge. However, if such a determination is made with the code string other than the synchronization code as it is, there may be a bit pattern whose synchronization code and Hamming distance are n or less in the code string other than the synchronization code. If it is in the insertion position, it is erroneously determined as a synchronization code.
そこで、ビット挿入器211で多重化符号列201に以下のようにビット挿入を行うことによって、多重化符号列201中の同期符号挿入位置にある同期符号以外の符号列を同期符号とのハミング距離が2×n+1以上離れるように変換する。具体的には、
0< total_len _ mod_sync_period≦sync_0_len −(2×n+1)
となる区間での“1”の数(=n0とする)を計数し、n0が2×n+1未満であったら2×n+1−n0ビットの“1”を多重化符号列201に挿入する。
Therefore, the
0 <total_len_mod_sync_period ≦ sync_0_len− (2 × n + 1)
The number of “1” s in the interval (assumed to be n0) is counted. If n0 is less than 2 × n + 1, “1” of 2 × n + 1−n0 bits is inserted into the multiplexed
こうしてビット挿入が行われた後の符号列1222は、図19の出力符号化装置と同様にフレームの最後の区間のビット挿入(図20中STUFF)が行われ、出力符号列205として出力される。
The
次に、本実施形態に係る動画像復号化装置について説明する。動画像復号化装置の全体構成は図21の動画像復号化装置と同一であり、入力符号化装置800の動作が第3の実施形態と異なる。
Next, the moving picture decoding apparatus according to the present embodiment will be described. The overall configuration of the moving picture decoding apparatus is the same as that of the moving picture decoding apparatus in FIG. 21, and the operation of the
図24は入力復号化装置800の構成を示すブロック図である。図22の入力復号化装置と相対応する部分に同一の符号を付して第3の実施形態との差異を中心に説明するビット除去器1905が追加されている。
FIG. 24 is a block diagram showing the configuration of the
入力符号列205′は、挿入ビット除去器1905に入力され、図23の出力符号化装置のビット挿入器1211で挿入された疑似同期符号を防ぐための挿入ビットを取り除く処理を行う。前述のように、ビット挿入は同期符号挿入位置でのみ行われているため、計数器1902の計数値1911に基づいて同期符号挿入位置を判定する。
The
例えば、同期符号が図5に示す符号語であるものとし、ビット挿入器1211において同期符号とのハミング距離が2×n+1以上離れるように同期符号の最初の“0000…”の部分にビット挿入が行われている場合には、同期符号挿入位置からsync_0_len −(2×n+1)ビットの“1”の数を計数し、n0が2×n+1未満であったら2×n+1−n0ビット削除する。
For example, it is assumed that the synchronization code is the code word shown in FIG. 5, and bit insertion is performed at the first “0000...” Portion of the synchronization code so that the Hamming distance from the synchronization code is 2 × n + 1 or more in the
ここで、挿入ビットは“1”と定められているため、挿入ビットと判定されたビットが“0”となっていたときは、同期符号挿入区間に誤りが混入したと考えられる。この場合は、図示しない誤り検出信号を逆多重化器811に出力し、第1の実施形態で述べたのと同様に、再生画像に大きな劣化が生じないような処理を行ってもよい。
Here, since the inserted bit is defined as “1”, when the bit determined to be the inserted bit is “0”, it is considered that an error has been mixed in the synchronous code insertion section. In this case, an error detection signal (not shown) may be output to the
図23のビット挿入器1211でのビット挿入処理は、同期符号以外の全ての同期符号挿入区間にあらかじめ定められたビット数の挿入ビットを挿入するようにしてもよい。25はこのようなビット挿入処理を行ったときの出力符号列205の一例を示したものである。図中SBが挿入されたビットを示している。
In the bit insertion process in the
例えば、同期符号が図5に示すようにsync_0_len ビットの“0”、1ビットの“1”および同期符号の種類を示すsync_nb_len ビットの“xxxxx”からなる場合、同期符号挿入区間の最初からsync_0_len ビットの区間の予め定められた位置に1ビットの挿入ビットSBを挿入する。 For example, as shown in FIG. 5, when the sync code is composed of sync_0_len bit “0”, 1 bit “1”, and sync_nb_len bit “xxxx” indicating the type of the sync code, sync_0_len bits from the beginning of the sync code insertion interval A 1-bit insertion bit SB is inserted at a predetermined position in the interval.
挿入ビットSBは、常に“1”としてもよい。また、同期符号挿入区間の最初からsync_0_len ビットの区間のビットパターンに応じて、その区間の“1”の数が1個以上となるように適応的に挿入ビットSBを決定してもよい。 The insertion bit SB may always be “1”. Further, the insertion bit SB may be adaptively determined so that the number of “1” in the section becomes one or more according to the bit pattern of the section of sync_0_len bits from the beginning of the synchronization code insertion section.
さらに、挿入ビットSBを同期符号挿入区間の最初からsync_0_len ビットの区間の奇パリティとすることにより、同期符号と同一のビットパターンの出現を避けると共に、このビットパターンに混入した誤りの検出をも行うことが可能である。 Furthermore, by making the inserted bit SB an odd parity in the interval of sync_0_len bits from the beginning of the synchronization code insertion interval, it is possible to avoid the appearance of the same bit pattern as the synchronization code and to detect errors mixed in this bit pattern. It is possible.
図25(b)は、このようなビット挿入処理を行った出力符号列を示している。この例では、同期符号挿入位置から最初の部分に1ビットの挿入ビットSBを挿入している。この挿入ビットSBは、これと次のビットからsync_0_len −1ビットを合わせた区間の“1”の数が必ず奇数となるように決定する。例えば、図25(b)の左側の例では、挿入ビットSBは“1”となる。また、図25 (b)の右側の例では、挿入ビットSBの次のビットからsync_0_len −1ビットの区間が全て“0”であっても挿入ビットSBが“1”になるため、同期符号挿入区間に必ず1ビット以上の“1”が入ることになり、同期符号と同一のビットパターンは生じない。また、挿入ビットSBはパリティチェックビットとしても働くため、この区間に混入したビット誤りを検出することが可能である。 FIG. 25B shows an output code string subjected to such bit insertion processing. In this example, a 1-bit insertion bit SB is inserted in the first part from the synchronization code insertion position. The insertion bit SB is determined so that the number of “1” s in the section obtained by combining this and the next bit from the sync_0_len−1 bit is necessarily an odd number. For example, in the example on the left side of FIG. 25B, the insertion bit SB is “1”. In the example on the right side of FIG. 25 (b), since the inserted bit SB is “1” even if all the sections of the sync_0_len−1 bit from the bit next to the inserted bit SB are “0”, the synchronization code is inserted. A “1” of 1 bit or more is always included in the section, and the same bit pattern as the synchronization code does not occur. Further, since the inserted bit SB also functions as a parity check bit, it is possible to detect a bit error mixed in this section.
また、挿入ビットSBを次の同期符号挿入位置までの全ビットの奇パリティチェックビットとしてもよい。但し、挿入ビットのSB次のビットからsync_0_len −1ビットが全て“0”の場合のみ同期符号と同一のビットパターンの出現を避けるために、挿入ビットSBを必ず“1”とする。これにより、全ビットのパリティチェックによる誤り検出を行うことが可能である。 Further, the inserted bit SB may be an odd parity check bit of all bits up to the next synchronization code insertion position. However, the insertion bit SB is always set to “1” in order to avoid the appearance of the same bit pattern as the synchronization code only when the sync_0_len−1 bits from the SB-order bit of the insertion bit are all “0”. Thereby, it is possible to perform error detection by parity check of all bits.
誤りによる同期符号の誤検出の確率を低くするためには、より多くのビット数を挿入することが望ましい。例えば、nビットの誤りが入っても同期を正しく検出するためには、この区間の予め定められた位置に2×n+1ビットの“1”を挿入する。 In order to reduce the probability of erroneous detection of a synchronization code due to an error, it is desirable to insert a larger number of bits. For example, in order to correctly detect synchronization even when an error of n bits is input, 2 × n + 1 bits of “1” are inserted at predetermined positions in this interval.
本実施形態では、上述のビット挿入器1211の動作に対応して、図24のビット除去器1905の動作も異なったものになる。すなわち、ビット除去器1905ではビット挿入器1211でビット挿入を行った予め定められた位置の挿入ビットSBを削除する処理を行う。
In the present embodiment, the operation of the bit remover 1905 in FIG. 24 is also different from the operation of the bit inserter 1211 described above. That is, the bit remover 1905 performs a process of deleting the inserted bit SB at a predetermined position where the bit insertion is performed by the
ここで、挿入ビットSBを常に“1”とした場合には、入力符号列205′中のビット挿入位置にあるビットが“0”であったときビット誤りと判定して、誤り検出信号(図示しない)を逆多重化器811に出力し、復号画像に大きな劣化を生じないようにするための処理を行ってもよい。
Here, when the insertion bit SB is always “1”, when the bit at the bit insertion position in the
第1〜第4の実施形態においては、多重化器111における多重化は図2のように予測モード情報303、動きベクトル情報304、および、残差DCT計数305を符号化フレームを単位としてまとめて多重化する例を示したが、図26のように符号化領域(例えばマクロブロック、GOB等)単位に予測モード情報303、動きベクトル情報304、残差DCT計数305をまとめるように多重化してもよい。この場合、ピクチャヘッダ302と、それ以外の情報とで異なる誤り訂正/検出符号を用いてもよいし、同一の誤り訂正/検出符号を用いてもよい。あるいは、ピクチャヘッダのみに誤り訂正/検出符号を用いてもよいし、各フレームの予め定められたビット数の一部の符号列に誤り訂正/検出符号を用いてもよいし、誤り訂正/検出符号を全く用いなくともよい。
In the first to fourth embodiments, the multiplexing in the
また、フレーム(ピクチャ)単位だけでなく、フレーム内の部分領域や、複数のフレームをまとめたレイヤ単位で多重化を行い、これらの多重化単位(レイヤ単位)毎に同期符号を挿入してもよい。 Also, it is possible to multiplex not only in units of frames (pictures) but also in partial areas within the frames or in units of layers in which a plurality of frames are combined, and by inserting a synchronization code for each of these units of multiplexing (layer units) Good.
図28は、このような多重化の例を示したものである。この図28の例では、複数の符号化ブロックをまとめたマクロブロック、複数のマクロブロックをまとめたGOB、ピクチャ(フレーム)、複数のピクチャをまとめたセッションの4つのレイヤ毎に多重化を行う。これらのうち、セッション、ピクチャ、GOBの各レイヤは、それぞれの同期符号(図中SSC,SEC,PSC,GSC)を用いる。SSC,SEC,PSC,GSCにはそれぞれ異なる符号を用い、どのレイヤの同期符号が検出されたかを区別できるようにする。図5のような同期符号を用いる場合、同期符号の種類を示すsync_nb_len ビットの部分でこれらの同期符号の区別を行えばよい。 FIG. 28 shows an example of such multiplexing. In the example of FIG. 28, multiplexing is performed for each of four layers of a macro block in which a plurality of encoded blocks are grouped, a GOB in which a plurality of macro blocks are grouped, a picture (frame), and a session in which a plurality of pictures are grouped. Among these, the session, picture, and GOB layers use respective synchronization codes (SSC, SEC, PSC, and GSC in the figure). Different codes are used for SSC, SEC, PSC, and GSC, respectively, so that it is possible to distinguish which layer synchronization code is detected. In the case of using the synchronization code as shown in FIG. 5, it is only necessary to distinguish these synchronization codes by the sync_nb_len bit portion indicating the type of the synchronization code.
このような多重化を行った場合も、セッション、ピクチャ、GOBの同期符号の一部ないしは全てに対して前述の実施形態におけるフレーム同期符号と同様の処理を行ってもよい。図29は、このような処理を行った出力符号列の一例を示したものである。同図に示されるように、PSC,GSCの前にスタッフィングビットSTUFFが挿入されており、SSC,PSC,GSCは図中矢印の同期符号挿入位置に挿入されている。このため、前述の実施形態でフレーム同期符号PSCについて説明したのと同様に、各同期符号の検出精度が向上する。 Even when such multiplexing is performed, processing similar to the frame synchronization code in the above-described embodiment may be performed on some or all of the synchronization codes of the session, picture, and GOB. FIG. 29 shows an example of an output code string subjected to such processing. As shown in the figure, a stuffing bit STUFF is inserted before PSC and GSC, and SSC, PSC and GSC are inserted at the synchronization code insertion positions indicated by arrows in the figure. For this reason, the detection accuracy of each synchronization code is improved as described for the frame synchronization code PSC in the above-described embodiment.
図15、図16および図17のフレーム長情報POINTERと同様の長さ情報をセッション、ピクチャ、GOBの各同期符号に付加することも可能である。図15および図16のように、フレーム長情報POINTERに対して誤り訂正/検出符号による保護を行っている場合、フレーム長情報POINTERのみでなく、同期符号の種類を示すsync_nb_len ビットの部分に対しても併せて誤り訂正/検出符号を用いることにより、同期符号の位置のみでなく、その種類も正しく検出できる確率が向上する。また、セッション、ピクチャ、GOBのヘッダ情報(図中SH,PH,GF)の一部または全部も併せて誤り訂正/検出符号を用いて保護を行ってもよく、これによって各ヘッダ情報の誤り耐性も向上する。 It is also possible to add length information similar to the frame length information POINTER in FIGS. 15, 16, and 17 to each synchronization code of session, picture, and GOB. As shown in FIGS. 15 and 16, when the frame length information POINTER is protected by the error correction / detection code, not only the frame length information POINTER but also the sync_nb_len bit portion indicating the type of the synchronization code In addition, by using the error correction / detection code, the probability that not only the position of the synchronization code but also the type thereof can be detected correctly is improved. In addition, some or all of the header information (SH, PH, GF in the figure) of the session, picture, and GOB may be combined and protected using an error correction / detection code. Will also improve.
本実施形態のように疑似同期符号を防止するためのスタッフィング処理を行う場合、以下のような処理を行って同期符号挿入間隔sync_periodを同期符号の長さ以下にすることも可能である。 When performing stuffing processing for preventing pseudo-synchronous codes as in this embodiment, it is possible to make the synchronous code insertion interval sync_period less than or equal to the length of the synchronous code by performing the following processing.
まず、動画像符号化装置の出力符号化装量における処理について説明する。ここで、同期符号は図5に示すようにsync_0_len ビットの“0”と1ビットの“1”からなる符号語とする。図23の出力符号化装置において、ビット挿入器1211から出力したビット数を示す計数値1221を total_len とすれば、 total_len を同期符号挿入間隔sync_periodで除した剰余が、同期符号の最初の“0”のビット数sync_0_len から1を引いた値をsync_periodで除した剰余と一致したとき、すなわち、
total_len mod sync_period
=(sync_0_len −1)mod sync_period (1)
となったとき、そのときの出力ビットから(sync_0_len −1)ビット前までの出力ビット中の“1”の数(n1とする)を計数し、“1”が全くなかったら(すなわち、n1=0であったら)1ビットの“1”を挿入する。
First, the process in the output coding amount of the moving image coding apparatus will be described. Here, as shown in FIG. 5, the synchronization code is a code word composed of sync_0_len bit “0” and 1 bit “1”. 23, if the
total_len mod sync_period
= (Sync_0_len -1) mod sync_period (1)
Then, the number of “1” s in the output bits from the current output bit to (sync — 0_len−1) bits before (when n1) is counted, and if there is no “1” (that is, n1 = If it is 0) Insert a 1-bit "1".
図33(a)に、このような処理を行った出力符号列の例を示す。図中、下向きの矢印が同期符号挿入位置を示しており、同期符号は23ビットの“0”(すなわち、sync_0_len =23)と、1ビットの“1”からなる。図の例では同期符号挿入間隔sync_perod は同期符号の長さ(=24ビット)よりも短い8である。 FIG. 33A shows an example of an output code string obtained by performing such processing. In the drawing, a downward arrow indicates a synchronization code insertion position, and the synchronization code includes 23 bits of “0” (that is, sync — 0_len = 23) and 1 bit of “1”. In the illustrated example, the synchronization code insertion interval sync_perod is 8, which is shorter than the length of the synchronization code (= 24 bits).
図中、区間1〜4は前述のn1を計数する区間を示している。各区間で順次 “1”の数n1を計数し、n1=0であったらば、その区間の次のビットにスタッフィングビットを挿入する。区間1ではn1>0なので、スタッフィングの必要はない。区間2ではn1=0となるので、この区間の次に1ビットのスタッフィングビット3301を挿入する。区間3ではスタッフィング3301が挿入されたことにより、n1=1となるため、スタッフィングビットを挿入する必要はない。
In the figure,
以上のようなビットスタッフィング処理を行うことにより、出力符号列中の同期符号以外の部分で同期符号と同一のビットパターンが無くなるため、疑似同期を生じることが無くなる。 By performing the bit stuffing process as described above, the same bit pattern as that of the synchronization code is eliminated in the portion other than the synchronization code in the output code string, so that pseudo synchronization does not occur.
一方、伝送路誤りによる同期符号の誤検出の確率を低くするためには、以下のようにビット挿入を行えばよい。 On the other hand, in order to reduce the probability of erroneous detection of a synchronization code due to a transmission path error, bit insertion may be performed as follows.
同期符号にnビット誤りが混入した場合にも、同期符号を正しく検出するためには、ビット挿入1211において、出力符号列中の同期符号以外の部分と同期符号とのハミング距離が2×n+1以上になるようにビット挿入処理を行えばよい。
In order to correctly detect a synchronization code even when an n-bit error is mixed in the synchronization code, the Hamming distance between the portion other than the synchronization code in the output code string and the synchronization code is 2 × n + 1 or more in the
これは、図23における出力符号列205の総ビット数を示す計数値1221 total_len を同期符号挿入間隔sync_periodで除した剰余が、同期符号の最初の“0”のビット数sync_0_len から2×n+1を引いた値をsync_periodで除した剰余と一致したとき、すなわち、
total_len mod sync_period
=(sync_0_len −(2×n+1))mod sync_period (2)
となったとき、そのときの出力ビットから(sync_0_len −(2×n+1))ビット前までの出力ビット中の“1”の数(n1とする)を計数し、“1”の数が(2×n+1)未満、すなわち
n1<2×n+1
であったら、(2×n+1−n1)ビット“1”を挿入する。
This is because the remainder obtained by dividing the
total_len mod sync_period
= (Sync_0_len− (2 × n + 1)) mod sync_period (2)
Then, the number of “1” s (n1) in the output bits from the current output bit to (sync — 0_len− (2 × n + 1)) bits before is counted, and the number of “1” is (2 × n + 1), ie
n1 <2 × n + 1
In this case, (2 × n + 1−n1) bit “1” is inserted.
図5に示したような複数ビットの“0”から始まる同期符号を用いる場合、同期符号の直前のビット列中の“1”の数が少ないとこの部分で同期誤検出が起こることがある。これを防ぐために、同期符号からその直前の同期符号挿入位置までのsync_periodビットの区間の“1”のビット数が2×n+1ビット以上になるように、フレームの最後の区間のビット挿入(図20中、STUFF)を出力するようにしても良い。 In the case of using a synchronization code starting from “0” of a plurality of bits as shown in FIG. 5, if the number of “1” s in the bit string immediately before the synchronization code is small, synchronization erroneous detection may occur at this portion. In order to prevent this, the bit insertion in the last section of the frame is performed so that the number of bits of “1” in the section of the sync_period bit from the synchronization code to the immediately preceding synchronization code insertion position is 2 × n + 1 bits or more (FIG. 20). STUFF) may be output.
これには、必ず2×n+1ビット以上の“1”が含まれるSTUFFを用いてもよいし、あるいは出力符号列に応じてSTUFFを決定するようにしてもよい。すなわち、STUFFを含めた出力狩号列中の、同期符号の直前のsync_periodビットの“1”のビット数が2×n+1ビット以上になるように、STUFFを決定してもよい。 For this, an STUFF including “1” of 2 × n + 1 bits or more may be used, or the STUFF may be determined according to the output code string. That is, STUFF may be determined so that the number of “1” bits of the sync_period bits immediately before the synchronization code in the output sequence including STUFF is 2 × n + 1 bits or more.
図33(b)に、このような処理を行った出力符号列の例を示す。図中、区間1〜4は前述のn1を計数する区間を示している。各区聞で順次“1”の数をn1を計数し、n1<2×n+1であったらその区間の次のビットにスタッフィングビットを挿入する。区間2ではn1=1となるので、この区間の次に(2×n+1)−1=2ビットのスタッフィングビット3311を挿入する。区間3ではスタッフィング3311が挿入されたことによりn1=3となるため、スタッフィングビットを挿入する必要は無い。
FIG. 33B shows an example of an output code string obtained by performing such processing. In the figure,
さらに、同期符号の直前の部分での同期符号誤検出を防ぐために、以下のようにSTUFFを決定する。STUFFの直前のビットを3312とする。このビット3312の直前の同期符号挿入位置から直後の同期符号挿入位置までのsync_periodビット間(区間5)の“1”の数は1ビットしかないため、図5のような複数の“0”が連続する同期符号を用いる場合にはこの部分で同期誤検出を生じる可能性がある。このため、同期符号を挿入する位置を次の同期符号挿入位置までずらし、多くの“1”を含むSTUFF3313を出力する。これにより、同期符号の直前のsync_periodビット区間(区間6)には2×n+1ビット以上の“1”が含まれるようになるため、同期誤検出を防止することができる。
Further, STUFF is determined as follows to prevent erroneous detection of the synchronization code in the portion immediately before the synchronization code. The bit immediately before STUFF is 3312. Since the number of “1” s between the sync_period bits (section 5) from the synchronization code insertion position immediately before this
以上のようなビットスタッフィング処理を行うことにより、出力符号列中の同期符号以外の部分で同期符号とのハミング距離を2×n+1以上にすることができるため、同期誤検出の確率が減少する。 By performing the bit stuffing process as described above, the hamming distance from the synchronization code in the portion other than the synchronization code in the output code string can be set to 2 × n + 1 or more, so the probability of synchronization error detection decreases.
次に、動画像復号化装置の入力復号化装置における処理について説明する。図24のビット除去器1905において、入力した符号列のビット数を示す計数値1905を total_len とすれば、 total_len が1の条件を満たす値になった時点で、そのときの入力ビットから(sync_0_len −1)ビット前までの入力ビット中の“1”の数(n1とする)を計数し、“1”が全くなかったら、すなわち、n1=0であったら、1ビット削除する。
Next, processing in the input decoding device of the moving image decoding device will be described. In the bit remover 1905 of FIG. 24, if the
同期符号にnビット誤りが混入した場合にも同期符号を検出するために、ビット挿入器1211で出力符号列中の同期符号以外の部分と同期符号とのハミング距離力2×n+1以上になるようにビット挿入処理を行った場合には、次のような処理を行えばよい。 total_len が式(2)を満たす値になった時点で、そのときの入力ビットから(sync_0_len −(2×n+1))ビット前までの出力ビット中の“1”の数(n1とする)を計数し、“1”の数が(2×n+1)未満、すなわち
n1<(2×n+1)
であったら(2×n+1−n1)ビット削除する。
In order to detect a synchronization code even when an n-bit error is mixed in the synchronization code, the
n1 <(2 × n + 1)
(2 × n + 1−n1) bits are deleted.
出力符号化装置および入力復号化装置において以上のような処理を行って、同期符号挿入間隔sync_periodを同期符号の長さ以下の短いビット数とすることにより、スタッフィングブットSTUFFのビット数が削減され、符号化効率力が向上する。特に、同期符号の長さが長い場合や、多くの同期符号が挿入される場合には、このスタッフィングビットSTUFFのビット数削減による符号化効率向上の度合いが大きい。例えば、動画像符号化におけるGOB/スライスのように、画面を1ないし複数のマクロブロック、あるいはマクロブロックライン毎に区切り、その単位毎に同期符号を挿入する方式においては、多くの同期符号が挿入されるため、STUFFのビット数削減による符号化効率の度合いがより大きくなる。 By performing the above processing in the output encoding device and the input decoding device, the synchronization code insertion interval sync_period is set to a short number of bits less than or equal to the length of the synchronization code, thereby reducing the number of bits of the stuffing but STUFF, Encoding efficiency is improved. In particular, when the length of the synchronization code is long or when many synchronization codes are inserted, the degree of improvement in coding efficiency by reducing the number of bits of the stuffing bits STUFF is large. For example, in a method of dividing a screen into one or a plurality of macroblocks or macroblock lines and inserting a synchronization code for each unit, such as GOB / slice in moving image encoding, many synchronization codes are inserted. Therefore, the degree of encoding efficiency due to the reduction in the number of bits of STUFF is further increased.
また、図28のように複数のレイヤ構造の多重化を行う場合には、レイヤに応じで異なる長さの同期符号を用いるようにしても良い。 When multiplexing a plurality of layer structures as shown in FIG. 28, synchronization codes having different lengths may be used depending on the layers.
図34(a)は、このような同期符号の例を示したものである。4種類の同期符号のうち、SSC,SEC,PSCはいずれも23ビットの“0”、1ビットの“1”、および同期符号の種類を示す8ビットの合計32ビットからなる。一方、GOBレイヤの同期符号GSCは、16ビットの“0”と1ビットの“1”からなる17ビットの同期符号であり、他の同期符号より短い符号語である。 FIG. 34 (a) shows an example of such a synchronization code. Of the four types of synchronization codes, SSC, SEC, and PSC are each composed of 23 bits of “0”, 1 bit of “1”, and 8 bits indicating the type of synchronization code, for a total of 32 bits. On the other hand, the synchronization code GSC of the GOB layer is a 17-bit synchronization code composed of 16 bits “0” and 1 bit “1”, and is a codeword shorter than other synchronization codes.
このようにGSCのみを短い符号語としたのは、GOBは1ないし複数のマクロブロック(MB)からなる、画面内を小領域に区切った符号化単位であることから、一般にGOBレイヤの同期符号は他の同期符号に比べて数が多く、同期符号語長を短くすることで、出力符号列の符号量を削減することができるためである。また、このようにすると、同じ符号量ならばより多くのGSCを出力することができ、画面内をより細かなGOB領域に区切って符号化することが可能になるため、伝送路誤りが発生したときの再生画像の品質が向上する。 The reason why only GSC is used as a short codeword is that a GOB is a coding unit composed of one or a plurality of macroblocks (MB) and is divided into small areas in the screen. This is because the number of codes is larger than that of other synchronization codes, and the code amount of the output code string can be reduced by shortening the synchronization codeword length. In addition, if the code amount is the same, more GSC can be output, and the screen can be divided into smaller GOB areas and encoded, resulting in a transmission line error. The quality of the playback image is improved.
第4の実施形態で説明したような疑似同期を防止するための処理、すなわち、同期符号以外の符号列中に同期符号と同一のビットパターンを生じないようにするビットスタッフィング処埋を行うようにしてもよい。伝送路誤りによる同期符号の誤検出の確率を低くするためのビットスタッフィング処理、例えば、ビット長の長い同期符号(図34(a)の例ではSSC,SEC,PSC)と同一のビットパターンが生じないことだけが保証されているビット列に対しても、最も短い同期符号(図34(a)の例ではGSC)と同一のパターンが生じないようにビットスタッフィング処理を行えば、全ての同期符号と同一のビットパターンが生じないようにすることができる。この処理は、全レイヤの符号列に対して行ってもよいし、最も短い符号を用いるレイヤより下位のレイヤ(図の例ではGOBレイヤ、マクロブロックレイヤ)の符号列に対して行ってもよいし、そのレイヤよりも一つ上のレイヤ以下のレイヤ(ピクチャレイヤ、GOBレイヤ、マクロブロックレイヤ)の符号列に対して行ってもよい。さらに、この処理を予め定められたレイヤの符号列に対してのみ行ってもよい。 The process for preventing pseudo-synchronization as described in the fourth embodiment, that is, bit stuffing processing that prevents the same bit pattern as the synchronization code from occurring in the code string other than the synchronization code is performed. May be. Bit stuffing processing for reducing the probability of erroneous detection of a synchronization code due to a transmission path error, for example, the same bit pattern as a synchronization code having a long bit length (SSC, SEC, PSC in the example of FIG. 34A) is generated If bit stuffing processing is performed so that the same pattern as the shortest synchronization code (GSC in the example of FIG. 34 (a)) does not occur even for a bit string that is guaranteed not to exist, all synchronization codes It is possible to prevent the same bit pattern from occurring. This process may be performed on the code sequence of all layers, or may be performed on the code sequence of a layer lower than the layer using the shortest code (GOB layer and macroblock layer in the example in the figure). However, the processing may be performed on a code string of a layer (picture layer, GOB layer, macroblock layer) below the layer one layer above that layer. Furthermore, this process may be performed only on a code string of a predetermined layer.
伝送路誤りが生じても長さの異なる同期符号同土を識別しやすくするために、同期符号語およびその前後の処理を以下のようにしてもよい。 In order to make it easy to identify synchronization codes having different lengths even if a transmission path error occurs, the synchronization code word and the processes before and after the synchronization code word may be performed as follows.
(i) 複数ビットの“0”と、それに続く“1”からなる同期符号を用いる場合には、長い符号語と短い符号語で、この“1”の同期符号挿入位置から見た相対位置が異なるようにしてもよい。図34(b)の例では、PSCの“1”3411と、GSCの“1”3412は異なる位置にあり、別の同期符号中の同位量のビット(3411に対する3413、および3412に対する3414)はいずれも“0”である。このようにする事によリ同期符号およびその部分列のハミング距離が大きくなるため、伝送路誤りが生じても異なる同期符号同士を識別しやすくなる。 (i) When using a synchronization code consisting of a plurality of bits “0” followed by “1”, the relative position of the long codeword and the short codeword as viewed from the synchronization code insertion position of “1” is It may be different. In the example of FIG. 34 (b), the PSC “1” 3411 and the GSC “1” 3412 are in different positions, and the bits of the same amount in another synchronization code (3413 for 3411 and 3414 for 3412) are Both are “0”. By doing so, the Hamming distance between the re-synchronization code and its subsequence is increased, so that different synchronization codes can be easily identified even if a transmission path error occurs.
(ii)長さの短い同期符号の前にスタッフィングビットを挿入しても良い。例えば、図中3401のように長さの短いGSCの前に1ないし複数の“1”からなるスタッフィングビット3401を挿入することにより、OSCと他の同期符号の部分列とのハミング距離を大きくすることができる。
(ii) A stuffing bit may be inserted before a synchronization code having a short length. For example, by inserting a
(iii) 長さの短い同期符号の後ろにスタッフィングビットを挿入してもよい。例えば、長い同期符号中の同期符号の種類を識別する部分とのハミング距離が大きくなるように、GSCの後ろにビット挿入3402を行ってもよい。
(iii) A stuffing bit may be inserted after the short synchronization code. For example, the
(第5の実施形態)
次に、本発明に係る第5の実施形態について説明する。
本実施形態による動画像符号化装置および動画像復号化装置の全体の構成は第1の実施形態と同様であり、出力符号化装置200および入力復号化装置800の1同期区間の最初および最後の部分での処理がこれまでの実施形態と異なっている。
(Fifth embodiment)
Next, a fifth embodiment according to the present invention will be described.
The overall configuration of the video encoding device and the video decoding device according to this embodiment is the same as that of the first embodiment, and the first and last synchronization intervals of the
図27(a)(b)(c)は、本実施形態における動画像符号化装置からの出力符号列205の一例を示す図である。この出力符号列205は、同期符号PSCの後に前フレーム(フレームn−1)の符号列の一部2701が入っており、この符号列2701と現フレーム(nフレーム)の符号列との境界2703(現フレームの符号列のスタートポイント)、言い換えれば多重化符号列の境界を示すポインタ情報2702(SA)があり、これに伴い1フレームの最後のスタッフィングビット(図4中STUFF)が無くなっていることが図4の出力符号列と異なっている。
FIGS. 27A, 27B, and 27C are diagrams illustrating an example of an
動画像符号化装置内の出力符号化装置200においては、各同期符号挿入位置においてそのフレームの残りの符号列のビット数 resid_bit をチェックする。 resid_bit と同期符号PSCとポインタ情報SAのビット数の和が同期符号挿入間隔sync_periodビットよりも少ない場合には、そのフレームの残りの符号列を出力符号列205中に出力する前に、同期符号PSCを出力する。次に、ポインタ情報SA(この場合、 resid_bit を表す)を出力し、その後に残りの符号列2701を出力する。その後、次のフレームの符号列を出力していく。
The
動画像復号化装置内の入力符号化装置800においては、各同期符号挿入位置において同期符号の検出を行い、同期符号が検出された場合にはその後ろにポインタ情報SAとフレームの残りの情報が続いているものとして処理を行う。
In the
図27中のフレームn−1とフレームnの境界部を例に説明すると、同期符号PSCの直前2704までの復号処理を終えた後、その後ろの同期符号挿入区間で同期符号を検出し、同期符号が検出された場合には、次にポインタ情報2702の復号化し、フレームn−1の符号列があと何ビットあるかを求める。これを基にして、ポインタ情報の直後の符号列からポインタ情報で示されるビット数を取り出し(図27中2703まで)、これが2704に続くものとして符号列801を出力する。その後ろの符号列(図27中2703から)は次のフレーム、すなわちフレームnとして処理を行う。
The boundary part between frame n-1 and frame n in FIG. 27 will be described as an example. After the decoding process up to 2704 immediately before the synchronization code PSC is completed, a synchronization code is detected in the subsequent synchronization code insertion section, and synchronization is performed. If a code is detected, the
本実施形態においては、図27(a)に示すように出力符号列の一部または全てに対して誤り訂正/検出符号化を行ってもよい。この場合、誤り訂正/検出符号の種類は全て同じでもよいし、異なるものを用いてもよい。 In the present embodiment, as shown in FIG. 27A, error correction / detection encoding may be performed on a part or all of the output code string. In this case, all types of error correction / detection codes may be the same or different.
また、図27(b)に示すように、誤り訂正/検出符号化を行わないようにしてもよい。 Further, as shown in FIG. 27B, error correction / detection encoding may not be performed.
さらに、図27(c)のように、図15や図16に示したような1フレームの符号列ビット数を示すフレーム長情報POINTERを挿入してもよい。この場合、フレーム長情報POINTERは、そのフレームの同期符号PSCから次のフレームの同期符号PSCまでのビット数を表すようにしてもよい。 Furthermore, as shown in FIG. 27C, frame length information POINTER indicating the number of code string bits of one frame as shown in FIG. 15 or FIG. 16 may be inserted. In this case, the frame length information POINTER may represent the number of bits from the synchronization code PSC of the frame to the synchronization code PSC of the next frame.
図27(a)のように誤り訂正/検出符号化を行う場合、同期符号PSCから次の検査ビットCHKまでの部分の誤り訂正/検出符号化は、ポインタ情報SA、フレームn−1の残りの符号列2701および、2703以降のフレームnの符号列をまとめてひとつの情報ビットとして誤り訂正/検出符号を行う。
When error correction / detection encoding is performed as shown in FIG. 27A, error correction / detection encoding of the portion from the synchronization code PSC to the next check bit CHK is performed by using the pointer information SA and the remaining frame n-1. The error correction / detection code is performed as a single information bit by combining the
ポインタ情報SAは誤り訂正/検出符号化を行った情報としてもよい。この場合、同期符号PSC(あるいはその一部)、フレーム長情報POINTERとポインタ情報を合わせて誤り訂正/検出符号化を行うようにしてもよい。 The pointer information SA may be information that has been subjected to error correction / detection coding. In this case, the error correction / detection coding may be performed by combining the synchronization code PSC (or part thereof), the frame length information POINTER, and the pointer information.
次に、スタッフィングビットSTUFFの具体例を説明する。 Next, a specific example of the stuffing bit STUFF will be described.
図30(a)(b)は、上述したスタッフィングビットSTUFFの具体例としてのスタッフィングビットSTUFFの符号表の例を示した図である。図30(a)(b)のいずれも、出力符号列の逆方向から一意に復号できることが特徴であり、これによってスタッフィングビットSTUFFの開始位置を一意に特定できる。従って、スタッフィングビットSTUFFの直前の符号列の復号終了位置と、スタッフィングビットSTUFFの開始位置を比較することにより、符号列中に混入した誤りを検出できると共に、同期符号から逆方向に復号を行う符号化方式に用いた場合に逆方向復号の開始地点を特定することができる。 FIGS. 30A and 30B are diagrams showing examples of code tables of stuffing bits STUFF as specific examples of the above-described stuffing bits STUFF. Each of FIGS. 30A and 30B is characterized in that it can be uniquely decoded from the reverse direction of the output code string, and thereby the start position of the stuffing bit STUFF can be uniquely specified. Therefore, by comparing the decoding end position of the code string immediately before the stuffing bit STUFF and the start position of the stuffing bit STUFF, an error mixed in the code string can be detected, and a code for decoding backward from the synchronous code When used in the conversion method, the starting point of backward decoding can be specified.
さらに、図30(a)(b)の符号表に示すスタッフィングビットSTUFFは、その最初のビットが必ず“0”になっており、後述のような簡易的な復号による誤り検出が可能である。 Further, the stuffing bit STUFF shown in the code table of FIGS. 30A and 30B always has “0” as its first bit, and error detection by simple decoding as described later is possible.
図31は、図30(a)(b)の符号表に示したスタッフィングビットSTUFFを含む符号列の復号処理の例を示したものである。図31では、同期符号挿入位置の直前のスタッフィングビットの例を示しているが、これ以外の任意の同期符号挿入位置の直前にスタッフィングビットビットを挿入して同様の処理を行うことも可能である。図31中、矢印3101〜3103は順方向に復号化を行った場合のスタッフィングビットSTUFFの直前の符号列(“×××…”で示す)の復号終了位置の例であり、矢印の右端が復号終了位置を表す。符号列に誤りが混入しておらず、正常に復号化が行われた場合には、矢印3101のようにスタッフィングビットSTUFFの直前の符号列の復号終了位置とスタッフィングビットSTUFFの開始位置は一致する。
FIG. 31 shows an example of the decoding process of the code string including the stuffing bit STUFF shown in the code table of FIGS. 30 (a) and 30 (b). FIG. 31 shows an example of the stuffing bit immediately before the synchronization code insertion position, but it is also possible to perform the same processing by inserting a stuffing bit bit immediately before any other synchronization code insertion position. . In FIG. 31,
一方、符号列に誤りが混入した場合には、スタッフィングビットSTUFFの直前の符号列の復号終了位置は矢印3102、3103のようにスタッフィングビットSTUFFの開始位置とずれる。このような場合には、符号列に誤りがあったと判定する。
On the other hand, when an error is mixed in the code string, the decoding end position of the code string immediately before the stuffing bit STUFF is shifted from the start position of the stuffing bit STUFF as indicated by
復号化装置においては、スタッフィングビットSTUFFの直前の符号列の復号化が終了すると、次の同期符号挿入位置までスタッフィングビットSTUFFを読み込み、それが図30(a)(b)に示した符号表の符号に合致するかどうかを判定する。もし、スタッフィングビットSTUFFが符号表のいずれの符号にも合致しない場合は、誤りがあったと判定する。 In the decoding apparatus, when decoding of the code string immediately before the stuffing bit STUFF is completed, the stuffing bit STUFF is read up to the next synchronization code insertion position, which is the code table shown in FIGS. 30 (a) and 30 (b). Determine if it matches the sign. If the stuffing bit STUFF does not match any code in the code table, it is determined that an error has occurred.
スタッフィングビットSTUFFと符号表との合致を判定する場合、少数のビットの誤りを許容するようにしてもよい。こうすることにより、スタッフィングビットSTUFFそのものに誤りが入った場合の誤りの誤検出を低減することができる。 When determining a match between the stuffing bit STUFF and the code table, an error of a small number of bits may be allowed. By doing so, it is possible to reduce erroneous detection of errors when errors occur in the stuffing bit STUFF itself.
図30(a)の符号表は、必ず“0”で始まり後続のビットが“1”である。従って、スタッフィングビットSTUFFの直前の符号列の復号終了位置の次のビットが“0”であるか否かだけを判定して誤り検出を行ってもよいし、あるいは、最初の“0”と後続のいくつかの“1”のみから誤り検出を行ってもよい。このようにすると、誤り検出精度は若干低下するものの、復号化に要する処理量が削減される。このように全てのスタッフィングビットSTUFFが特定のビットないしは複数ビットからなる特定のビットパターンから始まる符号表を用いる場合には、復号化処理の簡略化を図ることができる。 The code table of FIG. 30A always starts with “0” and the subsequent bits are “1”. Therefore, error detection may be performed by determining only whether the next bit of the decoding end position of the code string immediately before the stuffing bit STUFF is “0”, or the first “0” and the following Error detection may be performed from only a few “1” s. In this way, the error detection accuracy is slightly reduced, but the amount of processing required for decoding is reduced. In this way, when a code table starting from a specific bit pattern consisting of specific bits or a plurality of bits is used for all stuffing bits STUFF, the decoding process can be simplified.
さらに、図30(a)(b)の符号表に示されるスタッフィングビットSTUFFは、“1”のビットを多く含んでおり、図5のように“0”が多く含まれる同期符号およびその一部分とのハミング距離が離れているため、疑似同期が発生する確率が低いという利点がある。具体的には、図30(a)の符号表ではスタッフィングビットSTUFFの最初のビットのみが全て“0”で、それ以外のビットは全て“1”であるため、オール“0”である同期符号およびその一部とのハミング距離は(スタッフィングビットSTUFFの長さ−1)となる。また、図30(b)の符号表ではスタッフィングビットSTUFFの最初と最後のビットのみが“0”で、それ以外のビットは全て“1”であるため、同期符号およびその一部とのハミング距離は(スタッフィングビットSTUFFの長さ−2)となる。このようにスタッフィングビットSTUFFと同期符号およびその一部分とのハミング距離を所定値以上、例えば(スタッフィングビットSTUFFの長さ−2)以上に選ぶことにより、符号列に誤りが混入しても疑似同期符号が発生しにくい。 Further, the stuffing bit STUFF shown in the code table of FIGS. 30A and 30B includes many “1” bits, and a synchronization code including many “0” and a part thereof as shown in FIG. Since the hamming distance is long, there is an advantage that the probability of occurrence of pseudo-synchronization is low. Specifically, in the code table of FIG. 30A, since only the first bit of the stuffing bit STUFF is all “0” and all other bits are “1”, the synchronization code is all “0”. The hamming distance with a part thereof is (the length of the stuffing bit STUFF-1). In the code table of FIG. 30B, only the first and last bits of the stuffing bit STUFF are “0”, and all other bits are “1”. Therefore, the Hamming distance between the synchronization code and a part thereof Is (the stuffing bit STUFF length-2). In this way, by selecting the hamming distance between the stuffing bit STUFF and the synchronization code and a part thereof to a predetermined value or more, for example, (the length of the stuffing bit STUFF−2) or more, even if an error is mixed in the code string, the pseudo synchronization code Is unlikely to occur.
この効果について、図32を用いて説明する。図32(a−0)、(b−0)はそれぞれ通常のスタッフィングビット(全てのビットが“0”)および図30(a)の符号表に示すスタッフィングビットSTUFFを用いたときの符号列の例を示したものであり、(a−1)、(b−1)はそれぞれ(a−0)、(b−0)に1ビットの誤りが混入したときの例を示したものである。図32(a−1)から分かるように、全てのビットが“0”である通常のスタッフィングビットでは1ビットの誤りが混入しただけで、(a−1)の破線で示すように同期符号と同一のビットパターンが生じるため、疑似同期が発生してしまう。これに対し、図30(a)の符号表に示すスタッフィングビットSTUFFは、図32(b−2)に示すように誤りが混入しても同期符号と同一のパターンにならないため、疑似同期が発生しない。 This effect will be described with reference to FIG. FIGS. 32 (a-0) and (b-0) are code strings obtained by using normal stuffing bits (all bits are “0”) and stuffing bits STUFF shown in the code table of FIG. 30 (a), respectively. An example is shown, and (a-1) and (b-1) show examples when a 1-bit error is mixed in (a-0) and (b-0), respectively. As can be seen from FIG. 32 (a-1), only one bit error is mixed in a normal stuffing bit in which all bits are “0”, and as shown by the broken line in (a-1), Since the same bit pattern is generated, pseudo synchronization occurs. On the other hand, the stuffing bit STUFF shown in the code table of FIG. 30A does not become the same pattern as the synchronous code even if an error is mixed as shown in FIG. do not do.
このように本実施形態によるスタッフィングビットは、符号列の誤りを容易に検出できると共に、符号列に誤りが混入しても疑似同期符号が発生しにくく、強い誤り耐性を持つという利点がある。 As described above, the stuffing bit according to the present embodiment has an advantage that an error in the code string can be easily detected, and even if an error is mixed in the code string, a pseudo-synchronous code is hardly generated and has a strong error resistance.
また、本実施形態によるスタッフィングビットは逆方向から一意に復号が可能であり、その開始位置すなわちスタッフィングビットビットSTUFFの直前の符号列の終了位置を特定できるため、情報符号列が順方向からも逆方向からも復号可能な符号語の場合、図31の矢印3104で示すようにSTUFFの直前の符号列を逆方向から復号することができる。
Further, the stuffing bit according to the present embodiment can be uniquely decoded from the reverse direction, and the start position, that is, the end position of the code string immediately before the stuffing bit bit STUFF can be specified, so that the information code string is reversed from the forward direction. In the case of a codeword that can also be decoded from the direction, the code string immediately before STUFF can be decoded from the reverse direction, as indicated by an
上述の実施形態において、スタッフィングビットSTUFFは、以下のように定めてもよい。 In the embodiment described above, the stuffing bit STUFF may be determined as follows.
(1)同期符号に図5に示したようにsync_0_len ビットの“0”が含まれる場合、スタッフィングビットSTUFFの全てないしは少なくとも同期符号挿入位置の全ビットを“1”とすることにより、同期符号の“0”の部分とスタッフィングビットSTUFFのハミング距離を離すことができる。従って、このようにすることにより、スタッフィングビットSTUFFに誤りが混入して擬似同期が発生する確率を減少させることができる。 (1) When the sync code includes “0” of the sync_0_len bit as shown in FIG. 5, the stuffing bit STUFF or at least all the bits at the sync code insertion position are set to “1”, thereby The Hamming distance between the “0” portion and the stuffing bit STUFF can be separated. Therefore, by doing this, it is possible to reduce the probability that an error is mixed in the stuffing bit STUFF and pseudo synchronization occurs.
(2)スタッフィングビットSTUFFは、その長さを表す符号語としてもよい。復号化装置において、スタッフィングビットSTUFF以外の符号列の復号が終了した地点より、STUFFの長さを判定すると共に、STUFFの復号を行ってSTUFFの長さ情報を復号する。この場合、もし両者が一致しなかった場合には符号列中に誤りが混入したと判定することができる。 (2) The stuffing bit STUFF may be a code word indicating the length. In the decoding apparatus, the length of the STUFF is determined from the point where the decoding of the code string other than the stuffing bit STUFF is completed, and the STUFF is decoded to decode the STUFF length information. In this case, if the two do not match, it can be determined that an error is mixed in the code string.
また、スタッフィングビットSTUFFの符号語は、その長さを2進数表現したものでもよい。例えば、STUFFが5ビットの場合、“5”を2進数表現した“00101”としてもよい。あるいは、2進数表現したものの“1”の補数や“2”の補数をとった値をスタッフィングビットSTUFFの符号語としてもよく、それによりSTUFF中の“0”のビットの数が減少するため、(1)で述べたのと同様に擬似同期の発生を抑えることができる。 The code word of the stuffing bit STUFF may be a binary representation of the length. For example, when STUFF is 5 bits, it is good also as "00101" which expressed "5" in binary number. Alternatively, a binary representation of the value of the complement of “1” or “2” may be used as the code word of the stuffing bit STUFF, thereby reducing the number of “0” bits in the STUFF. As described in (1), the occurrence of pseudo synchronization can be suppressed.
(3)順方向だけでなく、逆方向からも復号可能な符号語を用いて符号化を行った場合、復号装置においてフレームの終了地点からスタッフィングビットSTUFFを逆方向に復号して、その開始地点(STUFFと他の符号語との境界地点)を知る必要がある。そのような場合には、例えばSTUFFを“01111111”のように、1ビットないしは複数ビットの“0”で始まり残りが“1”の符号語として定めればよい。これにより、STUFFを逆方向から復号して “0”がある位置を探せば、その地点をSTUFFの開始地点と一意に判定することができる。また、この例ではスタッフィングビットSTUFFの最初の部分以外のビットは“1”であり、(1)で述べたと同様に擬似同期が発生する確率が減少する。 (3) When encoding is performed using a codeword that can be decoded not only in the forward direction but also in the reverse direction, the decoding apparatus decodes the stuffing bit STUFF in the reverse direction from the end point of the frame, and the start point It is necessary to know (the boundary point between STUFF and another code word). In such a case, for example, STUFF may be defined as a code word starting with 1 or multiple bits of “0”, such as “01111111”, and the remainder being “1”. Thus, if the STUFF is decoded from the reverse direction and a position having “0” is found, the point can be uniquely determined as the start point of the STUFF. In this example, the bits other than the first part of the stuffing bit STUFF are “1”, and the probability of occurrence of pseudo-synchronization is reduced as described in (1).
(4)スタッフィングビットSTUFFは出力符号列の一部または全てのビットの誤り訂正/検出符号の検査ビットや、パリティチェックビット等としてもよい。これにより、出力符号列中に混入したビット誤りの訂正/検出を行うことが可能である。 (4) The stuffing bit STUFF may be a check bit of an error correction / detection code of a part or all of the output code string, a parity check bit, or the like. Thus, it is possible to correct / detect bit errors mixed in the output code string.
以上の例のように、スタッフィングビットSTUFFを予め定められた規則に従って生成することにより、復号装置において入力符号列中のスタッフィング誤ットSTUFFをその生成規則と照合し、もしその生成規則に反すると判定された場合には、入力符号列中に誤りが混入したと判定することが可能である。これにより、動画像復号化装置において再生画像に大きな劣化が生じないような処理を行って、入力符号列中に誤りが混入したときの再生画像の品質を向上させることができる。 As in the above example, by generating the stuffing bit STUFF according to a predetermined rule, the decoding device checks the stuffing error STUFF in the input code string against the generation rule, and if it violates the generation rule If it is determined, it can be determined that an error is mixed in the input code string. As a result, it is possible to improve the quality of the reproduced image when an error is mixed in the input code string by performing processing so that the reproduced image does not significantly deteriorate in the video decoding device.
さらに、上記実施形態において同期符号挿入間隔sync_periodは、以下のように定めてもよい。 Furthermore, in the above embodiment, the synchronization code insertion interval sync_period may be determined as follows.
(1)誤り訂正/検出符号を用いる場合、同期符号挿入間隔sync_periodは復号化装置で同期検出を行う最小のビット数、すなわち同期符号の長さと誤り訂正/検出符号の検査ビットの最大値の和以上にとれば十分である。フレームの最後のスタッフィングビットSTUFFのビット数の平均値はsync_period/2であるので、sync_periodをこの同期検出可能な最小ビットにとることにより、スタッフィングビットSTUFFのビット数が削減され、符号化効率が向上する。 (1) When an error correction / detection code is used, the synchronization code insertion interval sync_period is the minimum number of bits for which synchronization detection is performed by the decoding apparatus, that is, the sum of the length of the synchronization code and the maximum value of the check bits of the error correction / detection code The above is enough. Since the average value of the number of bits of the last stuffing bit STUFF in the frame is sync_period / 2, the number of bits of the stuffing bit STUFF is reduced and the coding efficiency is improved by taking the sync_period as the minimum bit capable of synchronous detection. To do.
(2)誤り訂正/検出符号を用いない場合、同期符号挿入間隔sync_periodは復号化装置で同期検出を行う最小のビット数、すなわち同期符号の長さ以上あれば十分である。フレームの最後のスタッフィングビットSTUFFのビット数の平均はsync_period/2であるので、sync_periodをこの同期検出可能な最小ビットにとることにより、スタッフィングビットSTUFFのビット数が削減され、符号化効率が向上する。 (2) When no error correction / detection code is used, it is sufficient that the synchronization code insertion interval sync_period is equal to or greater than the minimum number of bits for detecting synchronization in the decoding apparatus, that is, the length of the synchronization code. Since the average number of bits of the last stuffing bit STUFF in the frame is sync_period / 2, the number of bits of the stuffing bit STUFF is reduced and the coding efficiency is improved by taking the sync_period as the minimum bit that can be detected synchronously. .
(3)図15、図16、図17および図27に示されるように、フレーム長情報POINTERを用いる場合には、同期符号挿入間隔sync_periodを同期符号の長さより短くしてもよい。これにより、スタッフィングビットSTUFFのビット数が削減され、符号化効率が向上する。 (3) As shown in FIGS. 15, 16, 17 and 27, when using frame length information POINTER, the synchronization code insertion interval sync_period may be shorter than the length of the synchronization code. Thereby, the number of bits of the stuffing bit STUFF is reduced, and the encoding efficiency is improved.
(4)伝送路や蓄積媒体において定められた間隔のパケットやセルに区切って伝送/蓄積を行う場合、同期符号挿入間隔sync_periodをパケットやセルの間隔に合わせるか、その間隔の約数になるようにしてもよい。これにより、パケットやセルの先頭は必ず同期符号挿入位置になるため、パケットロスやセルロスによりパケットやセルが起きた場合にも同期符号を検出することが可能である。 (4) When transmission / accumulation is performed by dividing into packets or cells having a predetermined interval in the transmission path or storage medium, the synchronization code insertion interval sync_period is adjusted to the packet or cell interval or a divisor of the interval. It may be. As a result, the beginning of the packet or cell always becomes the synchronization code insertion position, so that it is possible to detect the synchronization code even when a packet or cell occurs due to packet loss or cell loss.
(5)同期符号挿入間隔sync_periodは、1フレームの最小必要ビット数より短くすることが好ましい。これにより、スタッフィングビットSTUFFのビット数が削減され、符号化効率が向上する。 (5) The synchronization code insertion interval sync_period is preferably shorter than the minimum necessary number of bits of one frame. Thereby, the number of bits of the stuffing bit STUFF is reduced, and the encoding efficiency is improved.
(第6の実施形態)
次に、本発明に係る第6の実施形態について説明する。
図35は、本実施形態における動画像符号化装置の出力符号列の一例を示す図である。この出力符号列では、誤りによる同期符号の誤検出確率を低くするために、前述の実旅例で述べたようなビット挿入処理を行っている。また、予め定められた位置、あるいは同期符号から相対的にみて予め定められた位置に、ヘッダ情報等の情報が入っている。
(Sixth embodiment)
Next, a sixth embodiment according to the present invention will be described.
FIG. 35 is a diagram illustrating an example of an output code string of the video encoding device in the present embodiment. In this output code string, bit insertion processing as described in the above-described actual travel example is performed in order to reduce the false detection probability of the synchronization code due to an error. In addition, information such as header information is included at a predetermined position or a predetermined position relative to the synchronization code.
図35の(a)はビット挿入処理を行う前の符号列であり、(b)はビット挿入処理を行った後の出力符号列である。図中、斜線の部分3201,3202,3261,3262が定められた位量(同期符号から相対的に見て定められた位置)に入れる情報であり、白抜きの矢印3211、3212がその情報を入れる位置である。図35(b)中の符号列の情報3261、3262が(a)の符号列の情報3201、3202にそれぞれ相当し、場合によっては符号列(a)から符号列(b)への変換に際して、これらの情報に対しても変換(すなわち、情報3201から情報3261への変換および情報3202から情報3262への変換)が施されることがある。
FIG. 35A shows a code string before the bit insertion process, and FIG. 35B shows an output code string after the bit insertion process. In the figure, hatched
図35(b)中の3203は、ビット挿入処理によって挿入されたビットである。このビット挿入処理により、挿入ビットに後続するビット列は後方にずれてしまうため、定められた位置に入れる情報が定位置に入るように、その情報直前の符号列の一部を後方に移す処理を行う。例えば、情報3201の一つ前の同期符号3205からの挿入ビットの数の合計をNs1とすれば、情報3201の直前の図35(a)中の記号3221に示すNs1ビットを情報3201の直後の図35(b)中の記号3231の部分に移せばよい。
353 in FIG. 35B is a bit inserted by the bit insertion process. This bit insertion process shifts the bit string following the inserted bit backward, so that a part of the code string immediately before the information is moved backward so that the information to be entered at the predetermined position enters the fixed position. Do. For example, if the total number of inserted bits from the
情報3201,3202中に、符号列中の特定の位置を示すポインタ等の情報が含まれている場合には、これを変換する処理を行ってもよい。具体的には、例えば情報3201中に矢印3241で示す位置を示す情報が含まれている場合、この位置よりも挿入ビットの数Ns1だけ後ろの矢印3251で示す位置を指すように、情報3261中の位置を示す情報を変換するようにする。
If the
101…動き補償適応予測器
102…フレームメモリ
104…離散コサイン変換器
105…量子化器
107…逆量子化器
108…逆離散コサイン変換器
111…多重化器
131…入力動画像信号
200…出力符号化装置
201…多重化符号列
205…出力符号列
301…同期符号
302…ピクチャヘッダ
303…予測モード情報
304…動きベクトル情報
305…予測残差信号のDCT係数
402…同期符号挿入位置
212…ビット挿入器
211…符号列組立器
603…ラッチ回路
604…誤り訂正/検出符号化器
701…カウンタ
702…バッファ
705…挿入ビット発生器
801…動き補償適応予測器
820…フレームメモリ
807…逆量子化器
808…逆離散コサイン変換器
811…逆多重化器
800…入力復号化装置
850…再生画像信号
901,1901…同期符号検出器
902,1902…カウンタ
903…符号列分解器
904…誤り訂正/検出符号復号化器
905,1905…挿入ビット除去器
1005…カウンタ
1006…比較器
1015…挿入ビット発生器
1101〜1104…ヘッダ情報
1211…ビット挿入器
DESCRIPTION OF SYMBOLS 101 ... Motion compensation
Claims (9)
前記入力符号列中の多重化符号列に対し前記同期符号検出手段により検出された同期符号の位置を基準として逆多重化を行って可変長符号を生成する逆多重化手段と、
生成された可変長符号を復号化して再生画像信号を出力する復号化手段とを有することを特徴とする復号化装置。 Definition in an input code string including a multiplexed code string obtained by multiplexing a variable length code obtained by separately coding a picture header, prediction mode information and motion vector information, and a DCT coefficient, generated by compressing and coding an image signal Synchronization code detecting means for detecting a synchronization code at a plurality of synchronization code insertion positions,
Demultiplexing means for demultiplexing the multiplexed code string in the input code string with reference to the position of the synchronization code detected by the synchronization code detection means to generate a variable length code;
And a decoding unit that decodes the generated variable length code and outputs a reproduced image signal.
前記逆多重化手段は、前記多重化符号列を前記フレーム単位で逆多重化することを特徴とする請求項2に記載の復号化装置。 In the multiplexed code string, the variable length code is multiplexed in frame units of the image signal,
The decoding apparatus according to claim 2, wherein the demultiplexing means demultiplexes the multiplexed code string in units of frames.
前記逆多重化手段は、前記多重化符号列を前記部分領域単位で逆多重化することを特徴とする請求項2に記載の復号化装置。 In the multiplexed code string, the variable length code is multiplexed in units of partial areas of the frame of the image signal,
The decoding apparatus according to claim 2, wherein the demultiplexing means demultiplexes the multiplexed code string in units of the partial areas.
前記同期符号検出手段は、前記多重化符号列の前記フレーム単位で多重化された各多重化単位の終りの部分の直前または直後に位置する同期符号挿入位置で前記同期符号を検出し、
前記逆多重化手段は、前記多重化符号列を前記フレーム単位で逆多重化することを特徴とする請求項2に記載の復号化装置。 In the multiplexed code string, the variable length code is multiplexed in frame units of the image signal,
The synchronization code detection means detects the synchronization code at a synchronization code insertion position positioned immediately before or immediately after the end portion of each multiplexing unit multiplexed in the frame unit of the multiplexed code string,
The decoding apparatus according to claim 2, wherein the demultiplexing means demultiplexes the multiplexed code string in units of frames.
前記同期符号検出手段は、前記多重化符号列の前記部分領域単位で多重化された各多重化単位の終りの部分の直前または直後に位置する同期符号挿入位置で前記同期符号を検出し、
前記逆多重化手段は、前記多重化符号列を前記部分領域単位で逆多重化することを特徴とする請求項2に記載の復号化装置。 In the multiplexed code string, the variable length code is multiplexed in units of partial areas of the frame of the image signal,
The synchronization code detecting means detects the synchronization code at a synchronization code insertion position located immediately before or immediately after the end portion of each multiplexing unit multiplexed in the partial region unit of the multiplexed code string;
The decoding apparatus according to claim 2, wherein the demultiplexing means demultiplexes the multiplexed code string in units of the partial areas.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004324429A JP3657971B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27699395 | 1995-09-29 | ||
JP6145096 | 1996-03-18 | ||
JP16308296 | 1996-06-24 | ||
JP23236296 | 1996-09-02 | ||
JP2004324429A JP3657971B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003323691A Division JP3631488B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005102305A JP2005102305A (en) | 2005-04-14 |
JP3657971B2 true JP3657971B2 (en) | 2005-06-08 |
Family
ID=32034428
Family Applications (42)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24388396A Expired - Fee Related JP3597647B2 (en) | 1995-09-29 | 1996-09-13 | Encoding method and apparatus |
JP2003323690A Expired - Fee Related JP3597840B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323694A Expired - Lifetime JP3597843B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323696A Expired - Fee Related JP3597845B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323699A Expired - Lifetime JP3597848B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323702A Expired - Lifetime JP3597851B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323695A Expired - Fee Related JP3597844B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323700A Expired - Lifetime JP3597849B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323698A Expired - Lifetime JP3597847B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323691A Expired - Lifetime JP3631488B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323703A Expired - Lifetime JP3597852B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323693A Expired - Fee Related JP3597842B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323704A Expired - Fee Related JP3597853B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323697A Expired - Lifetime JP3597846B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323692A Expired - Fee Related JP3597841B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323701A Expired - Lifetime JP3597850B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2004324423A Expired - Lifetime JP3657965B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324412A Expired - Lifetime JP3657954B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324427A Expired - Lifetime JP3657969B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324422A Expired - Fee Related JP3657964B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324436A Expired - Lifetime JP3657978B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324414A Expired - Lifetime JP3657956B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324413A Expired - Lifetime JP3657955B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324429A Expired - Fee Related JP3657971B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324434A Expired - Fee Related JP3657976B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324424A Expired - Fee Related JP3657966B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324417A Expired - Fee Related JP3657959B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324420A Expired - Fee Related JP3657962B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324435A Expired - Fee Related JP3657977B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324411A Expired - Fee Related JP3657953B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324428A Expired - Lifetime JP3657970B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324421A Expired - Fee Related JP3657963B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324430A Expired - Fee Related JP3657972B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324426A Expired - Lifetime JP3657968B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324431A Expired - Fee Related JP3657973B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324432A Expired - Fee Related JP3657974B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324418A Expired - Fee Related JP3657960B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324415A Expired - Lifetime JP3657957B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324419A Expired - Fee Related JP3657961B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324416A Expired - Fee Related JP3657958B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324425A Expired - Lifetime JP3657967B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324433A Expired - Fee Related JP3657975B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
Family Applications Before (23)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24388396A Expired - Fee Related JP3597647B2 (en) | 1995-09-29 | 1996-09-13 | Encoding method and apparatus |
JP2003323690A Expired - Fee Related JP3597840B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323694A Expired - Lifetime JP3597843B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323696A Expired - Fee Related JP3597845B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323699A Expired - Lifetime JP3597848B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323702A Expired - Lifetime JP3597851B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323695A Expired - Fee Related JP3597844B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323700A Expired - Lifetime JP3597849B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323698A Expired - Lifetime JP3597847B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323691A Expired - Lifetime JP3631488B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323703A Expired - Lifetime JP3597852B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323693A Expired - Fee Related JP3597842B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323704A Expired - Fee Related JP3597853B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323697A Expired - Lifetime JP3597846B2 (en) | 1995-09-29 | 2003-09-16 | Encoding method and apparatus |
JP2003323692A Expired - Fee Related JP3597841B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2003323701A Expired - Lifetime JP3597850B2 (en) | 1995-09-29 | 2003-09-16 | Decoding method and apparatus |
JP2004324423A Expired - Lifetime JP3657965B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324412A Expired - Lifetime JP3657954B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324427A Expired - Lifetime JP3657969B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324422A Expired - Fee Related JP3657964B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324436A Expired - Lifetime JP3657978B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324414A Expired - Lifetime JP3657956B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324413A Expired - Lifetime JP3657955B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
Family Applications After (18)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004324434A Expired - Fee Related JP3657976B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324424A Expired - Fee Related JP3657966B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324417A Expired - Fee Related JP3657959B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324420A Expired - Fee Related JP3657962B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324435A Expired - Fee Related JP3657977B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324411A Expired - Fee Related JP3657953B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324428A Expired - Lifetime JP3657970B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324421A Expired - Fee Related JP3657963B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324430A Expired - Fee Related JP3657972B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324426A Expired - Lifetime JP3657968B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324431A Expired - Fee Related JP3657973B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324432A Expired - Fee Related JP3657974B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324418A Expired - Fee Related JP3657960B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324415A Expired - Lifetime JP3657957B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324419A Expired - Fee Related JP3657961B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324416A Expired - Fee Related JP3657958B2 (en) | 1995-09-29 | 2004-11-08 | Encoding method and apparatus |
JP2004324425A Expired - Lifetime JP3657967B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
JP2004324433A Expired - Fee Related JP3657975B2 (en) | 1995-09-29 | 2004-11-08 | Decoding method and apparatus |
Country Status (1)
Country | Link |
---|---|
JP (42) | JP3597647B2 (en) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1174868A (en) | 1996-09-02 | 1999-03-16 | Toshiba Corp | Information transmission method, coder/decoder in information transmission system adopting the method, coding multiplexer/decoding inverse multiplexer |
KR100377939B1 (en) * | 1998-09-01 | 2003-06-12 | 삼성전자주식회사 | Frame Composition Device and Method for Subframe Transmission in Mobile Communication System |
KR100673692B1 (en) * | 2000-03-16 | 2007-01-23 | 엘지엔시스(주) | Method for restoring error using parity block code |
JP2003061095A (en) * | 2001-08-08 | 2003-02-28 | Matsushita Electric Ind Co Ltd | Image encoder and image-encoding method |
DE60311231T2 (en) | 2002-01-22 | 2007-11-15 | Microsoft Corp., Redmond | METHOD FOR ENABLING DIRECT ACCESS AND SWEEPING IN A ENCLOSED VIDEO POWER |
KR20040042935A (en) * | 2002-11-14 | 2004-05-22 | 엘지전자 주식회사 | Code block segmentation apparatus and method for mobile communication system |
KR100894235B1 (en) * | 2004-01-28 | 2009-04-20 | 닛본 덴끼 가부시끼가이샤 | Content distribution method, encoding method, reception/reproduction method and device, and program |
JP2007195156A (en) * | 2005-12-21 | 2007-08-02 | Matsushita Electric Ind Co Ltd | Error controller and program |
JP5246804B2 (en) * | 2006-07-18 | 2013-07-24 | トムソン ライセンシング | Method and system for time synchronization |
JP2008042288A (en) * | 2006-08-02 | 2008-02-21 | Fujitsu Ltd | Signal processor and processing method |
EP2146343A1 (en) * | 2008-07-16 | 2010-01-20 | Deutsche Thomson OHG | Method and apparatus for synchronizing highly compressed enhancement layer data |
US8769624B2 (en) | 2011-09-29 | 2014-07-01 | Apple Inc. | Access control utilizing indirect authentication |
US9002322B2 (en) | 2011-09-29 | 2015-04-07 | Apple Inc. | Authentication with secondary approver |
US20130136193A1 (en) * | 2011-11-30 | 2013-05-30 | Samsung Electronics Co. Ltd. | Apparatus and method of transmitting/receiving broadcast data |
EP2790343B1 (en) * | 2011-12-08 | 2019-03-27 | Mitsubishi Electric Corporation | Frame generation method, optical transmission device and optical transmission system |
WO2014143776A2 (en) | 2013-03-15 | 2014-09-18 | Bodhi Technology Ventures Llc | Providing remote interactions with host device using a wireless device |
US10043185B2 (en) | 2014-05-29 | 2018-08-07 | Apple Inc. | User interface for payments |
EP3149554B1 (en) | 2014-05-30 | 2024-05-01 | Apple Inc. | Continuity |
US9967401B2 (en) | 2014-05-30 | 2018-05-08 | Apple Inc. | User interface for phone call routing among devices |
US10339293B2 (en) | 2014-08-15 | 2019-07-02 | Apple Inc. | Authenticated device used to unlock another device |
WO2016036603A1 (en) | 2014-09-02 | 2016-03-10 | Apple Inc. | Reduced size configuration interface |
US10216351B2 (en) | 2015-03-08 | 2019-02-26 | Apple Inc. | Device configuration user interface |
US20160358133A1 (en) | 2015-06-05 | 2016-12-08 | Apple Inc. | User interface for loyalty accounts and private label accounts for a wearable device |
DK179186B1 (en) | 2016-05-19 | 2018-01-15 | Apple Inc | REMOTE AUTHORIZATION TO CONTINUE WITH AN ACTION |
DK201670622A1 (en) | 2016-06-12 | 2018-02-12 | Apple Inc | User interfaces for transactions |
US10271069B2 (en) | 2016-08-31 | 2019-04-23 | Microsoft Technology Licensing, Llc | Selective use of start code emulation prevention |
US11431836B2 (en) | 2017-05-02 | 2022-08-30 | Apple Inc. | Methods and interfaces for initiating media playback |
US10992795B2 (en) | 2017-05-16 | 2021-04-27 | Apple Inc. | Methods and interfaces for home media control |
US20220279063A1 (en) | 2017-05-16 | 2022-09-01 | Apple Inc. | Methods and interfaces for home media control |
CN111343060B (en) | 2017-05-16 | 2022-02-11 | 苹果公司 | Method and interface for home media control |
US11144624B2 (en) | 2018-01-22 | 2021-10-12 | Apple Inc. | Secure login with authentication based on a visual representation of data |
US10996917B2 (en) | 2019-05-31 | 2021-05-04 | Apple Inc. | User interfaces for audio media control |
US11620103B2 (en) | 2019-05-31 | 2023-04-04 | Apple Inc. | User interfaces for audio media control |
US11392291B2 (en) | 2020-09-25 | 2022-07-19 | Apple Inc. | Methods and interfaces for media control with dynamic feedback |
EP4264460A1 (en) | 2021-01-25 | 2023-10-25 | Apple Inc. | Implementation of biometric authentication |
US11847378B2 (en) | 2021-06-06 | 2023-12-19 | Apple Inc. | User interfaces for audio routing |
-
1996
- 1996-09-13 JP JP24388396A patent/JP3597647B2/en not_active Expired - Fee Related
-
2003
- 2003-09-16 JP JP2003323690A patent/JP3597840B2/en not_active Expired - Fee Related
- 2003-09-16 JP JP2003323694A patent/JP3597843B2/en not_active Expired - Lifetime
- 2003-09-16 JP JP2003323696A patent/JP3597845B2/en not_active Expired - Fee Related
- 2003-09-16 JP JP2003323699A patent/JP3597848B2/en not_active Expired - Lifetime
- 2003-09-16 JP JP2003323702A patent/JP3597851B2/en not_active Expired - Lifetime
- 2003-09-16 JP JP2003323695A patent/JP3597844B2/en not_active Expired - Fee Related
- 2003-09-16 JP JP2003323700A patent/JP3597849B2/en not_active Expired - Lifetime
- 2003-09-16 JP JP2003323698A patent/JP3597847B2/en not_active Expired - Lifetime
- 2003-09-16 JP JP2003323691A patent/JP3631488B2/en not_active Expired - Lifetime
- 2003-09-16 JP JP2003323703A patent/JP3597852B2/en not_active Expired - Lifetime
- 2003-09-16 JP JP2003323693A patent/JP3597842B2/en not_active Expired - Fee Related
- 2003-09-16 JP JP2003323704A patent/JP3597853B2/en not_active Expired - Fee Related
- 2003-09-16 JP JP2003323697A patent/JP3597846B2/en not_active Expired - Lifetime
- 2003-09-16 JP JP2003323692A patent/JP3597841B2/en not_active Expired - Fee Related
- 2003-09-16 JP JP2003323701A patent/JP3597850B2/en not_active Expired - Lifetime
-
2004
- 2004-11-08 JP JP2004324423A patent/JP3657965B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324412A patent/JP3657954B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324427A patent/JP3657969B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324422A patent/JP3657964B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324436A patent/JP3657978B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324414A patent/JP3657956B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324413A patent/JP3657955B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324429A patent/JP3657971B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324434A patent/JP3657976B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324424A patent/JP3657966B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324417A patent/JP3657959B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324420A patent/JP3657962B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324435A patent/JP3657977B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324411A patent/JP3657953B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324428A patent/JP3657970B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324421A patent/JP3657963B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324430A patent/JP3657972B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324426A patent/JP3657968B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324431A patent/JP3657973B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324432A patent/JP3657974B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324418A patent/JP3657960B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324415A patent/JP3657957B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324419A patent/JP3657961B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324416A patent/JP3657958B2/en not_active Expired - Fee Related
- 2004-11-08 JP JP2004324425A patent/JP3657967B2/en not_active Expired - Lifetime
- 2004-11-08 JP JP2004324433A patent/JP3657975B2/en not_active Expired - Fee Related
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3657971B2 (en) | Decoding method and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20050308 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050310 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080318 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090318 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100318 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |