(57)【要約】各サンプルが極性Ｓ、８ビットの指数部Ｅ、２３ビットの仮数部Ｍよりなる浮動小数点形式信号サンプルＸを、整数化部１２で切り捨てにより２４ビット整数形式信号サンプルＹに変換し、整数信号サンプルＹを圧縮部１３で符号化して符号列Ｃａを出力する。差分生成部１４で整数信号サンプルＹの最上位の１より下位の桁数ｎに対応し、入力信号サンプルＸの仮数部Ｍの下位２３−ｎビットを取出し差分信号Ｚを生成し、差分信号Ｚを圧縮部１７でエントロピィ符号化して符号列Ｃｂを出力する。あるいは差分信号Ｚを圧縮せず、そのまま出力する。
2004114527.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）浮動小数点形式の第１信号サンプルを絶対値が小さくなるように切捨てを行って整数形式の第２信号サンプルに変換する過程と、
（ｂ）上記整数形式の第２信号サンプルを可逆圧縮して第１符号列を生成して出力する過程と、
（ｃ）上記整数形式の第２信号サンプルと上記浮動小数点形式の第１信号サンプルとの差分に対応する浮動小数点形式の差分信号を生成する過程と、
（ｄ）上記浮動小数点形式の差分信号の、上記整数形式の第２信号サンプルの最上位の１より下位のビット数により決まる非ゼロになり得るビット領域に対応する第２符号列を生成して出力する過程、
とを含む浮動小数点形式ディジタル信号可逆符号化方法。
【請求項２】
請求項１記載の符号化方法において、上記過程（ｄ）は、上記差分信号の、上記非ゼロになり得るビット領域を可逆圧縮して上記第２符号列を生成する過程を含む。
【請求項３】
請求項２記載の符号化方法において、上記非ゼロになり得るビット領域は、上記第１信号サンプルの仮数部における小数点以下の端数部分である。
【請求項４】
請求項２記載の符号化方法において、上記過程（ａ）は、
（ａ−１）上記第１信号サンプルの複数サンプル区間毎にその区間内の上記浮動小数点形式の第１信号サンプルの指数部の最大値を検出する過程と、
（ａ−２）上記区間内の上記第１信号サンプルの整数値に変換後の最大桁数が予め決めた値と成るように上記区間内の第１信号サンプルの上記指数部の値をそれぞれ上記検出した最大値に基いて決めた調整値だけ調整する過程と、
（ａ−３）上記指数部が調整された浮動小数点形式の上記区間内の第１信号サンプルを、上記整数形式に変換する過程と、
（ａ−４）上記調整値と対応した調整情報を符号化して補助符号を生成する過程、
とを含み、上記過程（ｄ）は上記補助符号も出力する。
【請求項５】
請求項２記載の符号化方法において、上記整数形式の第２信号サンプルのビット数ｂＩは上記浮動小数点形式の第１信号サンプルの仮数部のビット数ｂＭ以下であり、
上記第２符号列の生成過程は、上記整数形式の第２信号サンプルの最上位の１より下位のビット数に対応して決まる上記第１信号サンプルの仮数部における非ゼロになり得る多数部分の領域を、上記仮数部のビット数ｂＭと上記第２信号サンプルのビット数ｂＩとの差のビット数の上位側ビット領域と、残りの下位側ビット領域とに分けてそれぞれ可逆圧縮し、それらの符号を上記第２符号列として出力する過程を含む。
【請求項６】
請求項２記載の符号化方法において、上記過程（ｄ）は、フレーム毎にフレーム内の上記差分信号のサンプルの仮数部における非ゼロとなり得るビット領域である端数部分をそれらの最上位ビットをそろえて配置し、少なくともサンプル方向にビットを選択して複数のビット列を生成し、それぞれの上記ビット列を可逆圧縮して上記第２符号列を生成する過程を含む。
【請求項７】
請求項１記載の符号化方法において、上記ステップ（ｃ）は、フレーム毎にフレーム内の上記差分信号の端数部分を整数値サンプルとするサンプル列の平均値を求め、それぞれの整数値サンプルの値から上記平均値を減算した信号に対し、サンプル方向に予測を行い、その予測誤差を可逆圧縮符号化するとともに、上記平均値を符号化して上記第２符号列とする過程である。
【請求項８】
（ａ）第１符号列を復号伸張して整数形式の第１信号サンプルを生成する過程と、
（ｂ）上記第１信号サンプルの最上位の１より下位のビット数に応じて決まる非ゼロになり得る桁数に基いて、第２符号列から浮動小数点形式の差分信号を生成する過程と、
（ｃ）上記整数形式の第１信号サンプルを浮動小数点形式の第２信号サンプルに変換する過程と、
（ｄ）上記浮動小数点形式の第２信号サンプルと上記浮動小数点形式の差分信号を合成して浮動小数点形式の第３信号サンプルを生成する過程、
とを含む浮動小数点形式ディジタル信号復号化方法。
【請求項９】
請求項８記載の復号化方法において、上記差分信号を生成する過程（ｂ）は、上記第２符号列を復号伸張して上記非ゼロになり得る桁の端数部分を生成し、上記端数部分を使って上記浮動小数点形式の差分信号を生成する過程である。
【請求項１０】
請求項９記載の復号化方法において、補助符号を復号して調整情報を生成する過程と、上記整数形式の第１信号サンプル又は上記合成信号に対し、上記調整情報により桁調整する過程とを含む。
【請求項１１】
請求項９記載の復号方法において、上記第２符号列は第１符号系列と第２符号系列とを含み、
上記差分信号の生成過程（ｂ）は、
（ｂ−１）上記整数形式の第１信号サンプルのビット数と上記浮動小数点形式の第３信号サンプルの仮数部のビット数との差のビット数の上位側ビット領域に上記第１符号系列を復号伸張する過程と、
（ｂ−２）上記第２符号系列を下位側ビット領域に復号伸張する過程と、
（ｂ−３）上記上位側ビット領域の下位側に上記下位側ビット領域を付加して仮数部の端数部分として上記差分信号を生成する過程、
とを含む。
【請求項１２】
請求項９記載の復号化方法において、上記過程（ｂ）は、
（ｂ−１）フレーム毎に上記第２符号列を復号伸張して複数のビット列を得る過程と、
（ｂ−２）フレーム内のサンプル方向におけるサンプル位置とサンプル内の振幅方向における位置で規定されるビット位置を少なくともサンプル方向に走査して各ビット位置が対応する上記整数形式の第１信号サンプルの最上位の１より下位のビット数により決まる端数部分のビット長内にあるビット位置に各上記ビット列のビットを分配してフレーム内の差分信号の端数部分を再構成する過程と、
（ｂ−３）各上記端数部分の上位側に上記対応する第１信号サンプルの上記最上位の１より下位のビット数だけゼロを挿入して各差分信号の仮数部を再構成することにより、上記差分信号を生成する過程、
とを含む。
【請求項１３】
請求項８記載の復号化方法において、上記過程（ｂ）は、上記第２符号列を伸張復号してフレームごとのサンプルの平均値とフレーム内の各サンプルに対応する予測誤差から平均値が除かれた信号を得る過程と、上記平均値と平均値が除かれた信号を加算して端数部分を生成する過程と、上記端数部分の上位側に、上記整数値の最上位の１より下位のビット数だけ０を挿入して差分信号の仮数部を生成する過程とを含む。
【請求項１４】
入力された浮動小数点形式の第１信号サンプルを絶対値が小さくなるように切捨てを行って整数形式の第２信号サンプルに変換する整数化部と、
上記整数形式の第２信号サンプルが入力され、これを可逆圧縮して第１符号列を生成する第１圧縮部と、
上記整数形式の第２信号サンプルと上記浮動小数点形式の第１信号サンプルとの差分に対応する浮動小数点形式の差分信号を生成する差分生成部と、
上記浮動小数点形式の差分信号の、上記整数形式の第２信号サンプルの最上位の１より下位のビット数に応じて決まる非ゼロになり得るビット領域に対応する第２符号列を生成して出力する第２符号列生成手段、
とを含む浮動小数点形式ディジタル信号可逆符号化装置。
【請求項１５】
請求項１４に記載の符号化装置において、上記第２符号列生成手段は、上記差分信号を可逆圧縮し、圧縮結果を上記第２符号列として出力する第２圧縮部を含む。
【請求項１６】
請求項１５記載の符号化装置において、
上記第１ディジタル信号サンプルの複数サンプル区間毎にその区間内の上記浮動小数点形式の第１ディジタル信号サンプルの指数部の最大値を検出し、上記区間内の上記第１ディジタル信号サンプルの整数値に変換後の最大桁数が予め決めた値となるように上記区間内の第１ディジタル信号サンプルの上記指数部の値をそれぞれ上記検出した最大値に基いて決めた調整値だけ調整する桁調整部と、
上記調整値と対応した調整情報を符号化して補助符号を生成出力する補助符号化部、
とを含む。
【請求項１７】
請求項１５記載の符号化装置において、上記整数形式の第２信号サンプルのビット数ｂＩは上記浮動小数点形式の第１信号サンプルの仮数部のビット数ｂＭ以下であり、
上記第２圧縮部は、上記整数形式の第２信号サンプルの最上位の１より下位のビット数に対応して決まる上記第１信号サンプルの仮数部における非ゼロになり得る端数部分の領域中の、上記仮数部のビット数ｂＭと上記第２信号サンプルのビット数ｂＩとの差のビット数の上位側ビット領域を可逆圧縮符号化して第１符号系列を生成する第１圧縮符号化部と、上記端数部分の上記上位側ビット領域の下位側のビット領域を可逆圧縮符号化して第２符号系列を生成する第２圧縮符号化部とを含み、それら第１及び第２符号系列は上記第２符号列として出力される。
【請求項１８】
請求項１５記載の符号化装置において、上記差分生成部は、フレーム毎にフレーム内の上記差分信号のサンプルの仮数部における非ゼロとなり得るビット領域である端数部分をそれらの最上位ビットをそろえて配置し、少なくともサンプル方向にビットを選択して複数のビット列を生成するビット列生成主段を含み、上記第２圧縮部は上記ビット列を可逆圧縮して上記第２符号列を生成する。
【請求項１９】
請求項１５記載の符号化装置において、上記差分生成部は、フレーム毎にフレーム内の上記差分信号の端数部分を整数値サンプルとするサンプル列の平均値を求める平均値算出部と、それぞれの整数値サンプルと上記平均値との誤差を求める減算器と、上記誤差をサンプル方向に予測を行い、予測誤差を可逆圧縮符号化するとともに、上記平均値を符号化して上記第２符号列とする符号化部とを含む。
【請求項２０】
第１符号列が入力され、これを復号伸張して整数形式の第１信号サンプルを生成する第１伸張部と、
上記第１信号サンプルの最上位の１より下位のビット数に応じて決まる非ゼロになり得る桁数に基いて、第２符号列から浮動小数点形式の差分信号を生成する差分信号復号手段と、
上記整数形式の第１信号サンプルが入力され、これを浮動小数点形式の第２信号サンプルに変換する浮動小数点化部と、
上記浮動小数点形式の第２信号サンプルと上記浮動小数点形式の差分信号が入力され、これらを合成して浮動小数点形式の第３信号サンプルを生成する合成部と
を有する浮動小数点形式ディジタル信号復号化装置。
【請求項２１】
請求項２０記載の復号化装置において、上記差分信号復号手段は、上記第２符号列を復号伸張して上記非ゼロになり得る桁の端数部分を生成し、上記端数部分を使って上記浮動小数点形式の差分信号を生成する手段である。
【請求項２２】
請求項２１記載の復号化装置において、補助符合を復号して調整情報を生成する補助復号部と、上記整数形式の第１信号サンプル又は上記合成信号に対し、上記調整情報により桁調整する桁補正部とを含む。
【請求項２３】
請求項２０記載の復号化装置において、上記第２符号列は第１符号系列と第２符号系列とを含み、
上記第２伸張部は、上記整数形式の第１信号サンプルのビット数と上記浮動小数点形式の第３信号サンプルの仮数部のビット数との差のビット数の上位側ビット領域に上記第２符号系列を復号伸張する第３伸張部と、上記第２符号系列を下位側ビット領域に復号伸張する第４伸張部と、上記上位側ビット領域の下位側に上記下位側ビット領域を付加して仮数部の端数部分として上記差分信号を生成する合成部、とを含む。
【請求項２４】
請求項２０記載の復号化装置において、上記第２伸張部は、フレーム毎に上記第２符号列を復号伸張復号して複数のビット列を得る復号化部と、フレーム内のサンプル方向におけるサンプル位置とサンプル内の振幅方向における位置で規定されるビット位置を少なくともサンプル方向に走査して各ビット位置が対応する上記整数形式の第１信号サンプルの最上位の１より下位のビット数により決まる端数部分のビット長内にあるビット位置に各上記ビット列のビットを分配してフレーム内の差分信号の端数部分を再構成し、各上記端数部分の上位側に上記対応するサンプルの最上位の１より下位のビット数だけゼロを挿入して各差分信号の仮数部を再構成し、上記差分信号を生成する再構成手段とを含む。
【請求項２５】
請求項２０記載の復号化装置において、上記差分信号復号手段は、上記第２符号列を伸張復号してフレームごとのサンプルの平均値とフレーム内の各サンプルに対応する誤差を得る伸張復号部と、上記平均値と各誤差を加算して端数部分を生成する加算部と、上記端数部分の上位側に、上記第１サンプルの最上位の１より下位のビット数だけ０を挿入して差分信号の仮数部を生成する手段とを含む。
【請求項２６】
請求項１乃至７のいずれかに記載した浮動小数点形式ディジタル信号可逆符号化方法の各過程をコンピュータに実行させるための符号化プログラム。
【請求項２７】
請求項８乃至１３のいずれかに記載した浮動小数点形式ディジタル信号復号化方法の各過程をコンピュータに実行させるための復号化プログラム。
【請求項２８】
請求項２６又は２７に記載したプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】  この発明は音声、音楽、画像などのディジタル信号をより低い情報量に圧縮された符号に変換する符号化方法、その復号化方法、符号化装置、復号化装置、これらのプログラムに関する。
【背景技術】
【０００２】  音声、画像などの情報を圧縮する方法として、歪を許さない可逆な符号化方法がある。
圧縮率の高い非可逆の符号化を行い、その再生信号と原信号の誤差を可逆に圧縮することを組み合わせることで高い圧縮率で可逆な圧縮が可能となる。この組み合わせ圧縮方法が特許文献１に提案されている。この方法は前記文献に詳細に示されているが、以下に簡単に説明する。
符号器では、ディジタル入力信号（以下、入力信号サンプル系列とも呼ぶ）が、フレーム分割部で、例えば１０２４個の入力信号サンプルからなるフレーム単位に、順次分割され、このフレーム単位ごとにディジタル信号が非可逆圧縮符号化される。この符号化は、復号化時に元のディジタル入力信号をある程度再現できる方式であれば、入力信号に適した如何なる方式でもよい。例えば、上記ディジタル入力信号が音声であればＩＴＵ−ＴのＧ．７２９標準として勧告されている音声符号化などが利用でき、音楽であればＭＰＥＧ−４で採用されているＴｗｉｎ  ＶＱ（Ｔｒａｎｓｆｏｒｍ−Ｄｏｍａｉｎ  Ｗｅｉｇｈｔｅｄ  Ｉｎｔｅｒｌｅａｖｅｄ  Ｖｅｃｔｏｒ  Ｑｕａｎｔｉｚａｔｉｏｎ）符号化などが利用できる。この非可逆圧縮符号は局部復号され、この局部信号と元のディジタル信号との誤差信号が生成される。なお、実際的には、局部復号はする必要なく、非可逆圧縮符号を生成する際に得られる量子化信号と元のディジタル信号との誤差を求めればよい。この誤差信号の振幅は通常は元のディジタル信号の振幅よりもかなり小さい。よって、元のディジタル信号を可逆圧縮符号化するよりも、誤差信号を可逆圧縮符号化する方が情報量を小さくできる。【０００３】  この可逆圧縮符号化の効率を上げるために、この誤差信号の符号絶対値表現（極性と絶対値の２進数）されたサンプル列のフレーム内の全サンプルに対しそれらの各ビット位置、つまりＭＳＢ，第２ＭＳＢ，…，ＬＳＢ毎に、サンプル系列方向（時間方向）にビットを連結したビット列を生成する。即ち、ビット配列の変換が行われる。この各連結した同じビット位置の１０２４個のビットからなるビット列をここでは便宜上「等位ビット列」と呼ぶことにする。これに対し、各サンプルの極性も含む振幅値を表す１ワードのビット列を便宜上「振幅ビット列」と呼ぶことにする。誤差信号は振幅が小さいので、各サンプルの最上位から１つ又は連続する複数のビットは全て″０″となることが多い。そこで、それらのビット位置で連結して生成した等位ビット列は全て″０″のビット列となるので、予め決めた短い符号で表すことができ、誤差信号の可逆圧縮符号化効率を上げることができる。【０００４】  これら等位ビット列が可逆圧縮符号化される。可逆圧縮符号化としては、例えば、同一符号（１又は０）が連続する系列がある場合や頻繁に出表する系列がある場合を利用した、ハフマン符号化や算術符号化などのエントロピィ符号化などを用いることができる。
復号化側では、可逆圧縮符号が復号化され、その復号信号に対し、ビット配列の逆変換が行われ、即ち、フレーム毎に等位ビット列を振幅ビット列に変換し、得られた誤差信号が順次再生される。また、非可逆圧縮符号が復号化され、この復号信号と再生された誤差信号とが加算され、最後に、フレームごとの各加算信号が順次連結されて、元のディジタル信号系列が再生される。【０００５】  音声、画像などの情報の歪を許さない可逆な符号化方法としてはその他にも各種のものが知られている。音楽情報については例えば非特許文献１に示されている。従来の方法は何れも波形をそのままＰＣＭ信号としたものについての圧縮符号化方法であった。
しかし音楽の収録スタジオでは浮動小数点形式で波形が記録されて保存されることがある。浮動小数点形式の値は極性、指数部、仮数部に分離されている。例えば図１に示すＩＥＥＥ−７５４として標準化されている浮動小数点形式は３２ビットであり、上位ビットから極性１ビット、指数部８ビット、仮数部２３ビットで構成されている。極性をＳ、指数部の８ビットで表す値を１０進数でＥ、仮数部の２進数をＭとすると、この浮動小数点形式の数値は絶対値表現２進数で表わすと【０００６】
2004114527.tif 000003
【０００７】  ＩＥＥＥ−７５４によれば、Ｅ０＝２７−１＝１２７と決められており、これにより、式（１）中のＥ−Ｅ０は
−１２７≦Ｅ−Ｅ０≦１２８
の範囲の任意の値を取ることができる。ただし、Ｅ−Ｅ０＝−１２７の場合はａｌｌ″０″、Ｅ−Ｅ０＝１２８の場合はａｌｌ″１″と定義されている。
音声、音楽、画像の情報が浮動小数点形式のディジタル信号系列とされている場合は、浮動小数点形式の性質上″０″と″１″からなるビット列が乱雑な場合が多くなるため、前述したビット配列変換を行っても、エントロピィ圧縮符号化などによって高い圧縮率は期待できない。また浮動小数点形式のサンプル列は原アナログ波形と著しく異なったものとなりサンプル間の相関による冗長性がなく、前述の非特許文献１に示されている可逆予測符号化方法を適用しても高い圧縮率は期待できない。
【特許文献１】日本国特許出願公開２００１−４４８４７号
【非特許文献１】Ｍａｔ  Ｈａｎｓ，Ｒｏｎａｌｄ  Ｗ．Ｓｃｈａｆｅｒ，″Ｌｏｓｓｌｅｓｓ  Ｃｏｍｐｒｅｓｓｉｏｎ  ｏｆ  Ｄｉｇｉｔａｌ  Ａｕｄｉｏ″，ＩＥＥＥ  ＳＩＧＮＡＬ  ＰＲＯＣＥＳＳＩＮＧ  ＭＡＧＡＺＩＮＥ，Ｊｕｌｙ  ２００１，ｐ．２１−３２
【発明の開示】
【発明が解決しようとする課題】
【０００８】  この発明の目的は浮動小数点形式のディジタル信号に対して圧縮率が高く、歪が生じない可逆符号化、復号化方法、それらの装置及びそれらのプログラムを提供することにある。
この発明の符号化方法及び装置によれば、浮動小数点形式の第１信号サンプルを絶対値が小さくなるように切捨てを行って整数形式の第２信号サンプルに変換し、上記整数形式の第２信号サンプルを可逆圧縮して第１符号列を生成して出力し、上記整数形式の第２信号サンプルと上記浮動小数点形式の第１信号サンプルとの差分に対応する浮動小数点形式の差分信号を生成し、上記浮動小数点形式の差分信号の、上記整数形式の第２信号サンプルの最上位の１より下位のビット数により決まる非ゼロになり得るビット領域に対応する第２符号列を生成して出力する。【０００９】  このように整数形式の第１信号サンプルに変換することにより、原アナログ波形信号に近いものとなり、信号サンプル間の相関による冗長性を除く圧縮方法により効率よく圧縮することができ、差分信号は非ゼロになり得る桁についてのみ差分情報として出力するので効率が良い。
この発明の復号化方法及び装置によれば、第１符号列を復号伸張して整数形式の第１信号サンプルを生成し、上記第１信号サンプルの最上位の１より下位のビット数に応じて決まる非ゼロになり得る桁数に基いて、第２符号列から浮動小数点形式の差分信号を生成し、上記整数形式の第１信号サンプルを浮動小数点形式の第２信号サンプルに変換し、上記浮動小数点形式の第２信号サンプルと上記浮動小数点形式の差分信号を合成して浮動小数点形式の第３信号サンプルを生成する。
【発明の効果】
【００１０】  この発明によれば、浮動小数点形式のディジタル信号系列を能率よく圧縮することが可能となる。また通常の整数形式の系列の圧縮符号化モジュールを利用することができ、整数形式と浮動小数点形式の両方に対応しても処理の装置規模、プログラム規模はあまり大きくならない。
【図面の簡単な説明】
【００１１】［図１］ＩＥＥＥ−７５４の３２ビット浮動小数点のフォーマットを示す図。
［図２］この発明の第１実施形態の符号化装置の機能構成を示す図。
［図３］図２中の整数化部１２の動作を説明するための図。
［図４］図２中の整数化部１２における処理手順の例を示す図。
［図５］整数値の絶対値と、その値を示す浮動小数点の仮数部のビットとの対応を示す図。
［図６］整数値の絶対値と、差分ディジタル信号の極性、指数部および仮数部との関係を示す図。
［図７］差分ディジタル信号系列中の圧縮符号化される部分の例を示す図。
［図８］この発明の第１実施形態の復号化装置の機能構成を示す図。
［図９］この発明の第２実施形態の符号化装置の機能構成を示す図。
［図１０］桁調整処理手順を示すフローチャート。
［図１１］この発明の第２実施形態の復号化装置の機能構成を示す図。
［図１２］この発明の第２実施形態の符号化装置の変形機能構成を示す図。
［図１３］この発明の第２実施形態の復号化装置の変形機能構成を示す図。
［図１４Ａ］もともと浮動小数点信号であった入力浮動小数点形式信号Ｘに対する１６ビット整数化を説明するための図。
［図１４Ｂ］２４ビット整数値信号から生成された浮動小数点形式信号Ｘに対する１６ビット整数化を説明するための図。
［図１４Ｃ］１６ビット整数値信号から生成された浮動小数点信号Ｘに対する１６ビット整数化を説明するための図。
［図１５Ａ］図９Ａの場合の仮数部の非ゼロとなり得る領域を示す図。
［図１５Ｂ］図９Ｂの場合の仮数部の非ゼロとなり得る領域を示す図。
［図１６］この発明の第３実施形態の符号化装置の機能構成を示す図。
［図１７］この発明の第３実施形態の復号化装置の機能構成を示す図。
［図１８］仮数部をフレーム方向にビット走査して符号化する動作を説明するための図。
［図１９］図１８の符号化を実行する不圧縮部１７の構成例を示す図。
［図２０］図１９の符号化に対応した復号化装置における伸張部２３の構成例を示す図。
［図２１］フレーム方向のビット走査の他の例を示す図。
［図２２］フレーム方向のビット走査の他の例を示す図。
［図２３］フレーム方向のビット走査の更に他の例を示す図。
［図２４］第５実施形態の符号化装置の構成例を示す図。
［図２５］第５実施形態の復号化装置の構成例を示す図。
［図２６］この発明をコンピュータで実施する場合の構成を示す図。
【発明を実施するための最良の形態】
【００１２】第１実施形態
図２にこの発明による符号化装置の実施形態の機能構成を示す。この実施形態の符号化装置１００は、整数化部１２と、圧縮部１３と、差分生成部１４と、圧縮部１７とから構成されている。また、整数化部１２は桁数計算部１２Ａを有しており、差分生成部１４は符号小数点化部１５と、減算部１６とから構成されている。信号源１１から例えば音楽信号のサンプル列が３２ビットの浮動小数点形式の入力ディジタル信号サンプル（以下簡略して入力信号サンプルとも呼ぶ）Ｘの系列として出力される。この各ディジタル信号サンプルＸは２４ビットの整数形式で録音された信号の素材を変形、振幅調整、効果付加、混合などの加工をした結果、小数点以下の端数を含むようになったものを浮動小数点形式に変換したもの、あるいは、もともと２４ビットの整数形式で録音された信号を３２ビット浮動小数点形式に変換後、前記加工をした信号である。【００１３】  この浮動小数点形式の入力サンプルＸは整数化部１２に入力され、各サンプルごとに整数形式のディジタル信号サンプル（以下簡略して整数値信号サンプルとも呼ぶ）Ｙに変換される。先に述べたように前記例ではもともと２４ビットの整数形式の信号の素材を変形、振幅調整、効果付加などの加工をした場合が多く、振幅が大きく変化することがないのが一般的である。従って整数化部１２においては小数点以下の端数を切捨てる場合について図３を参照して説明する。整数形式の桁数は１６ビットあるいは２０ビットなどでもよいが、以降の説明では２４ビットを使用する。【００１４】  浮動小数点による波形の表現法として整数値の３２７６８（＝２１５）を１．０と正規化して表わす場合、あるいは整数値２２３を１．０と正規化して表す場合などもあるが、指数部の値が異なるだけで以下の説明と本質的な差異はない。
小数点の次の上位側ビットは、指数部の値Ｅが例えばＥ＝１４７であれば仮数部ＭのＭＳＢ側から１４７−１２７＝２０番目であり、図３Ａに示すように２３ビットの仮数部Ｍ中の上位側２０ビット（Ｍ１）が絶対値２進表現をした場合の整数部分の最上位の″１″より下位の部分であって、仮数部Ｍ中の下位側３ビット（Ｍ２）が絶対値２進表現をした場合の小数点以下の端数部分である。以下ではＭ１の部分を仮数部Ｍにおける整数部分と呼ぶ。従って、図３Ｂに示すように仮数部における整数部分（Ｍ１）中の最下位ビットが仮数部２３ビット中の最下位ビットとなるように、仮数部Ｍを３ビット下位方向にシフトすることによりこの小数点以下３ビット（Ｍ２）が溢れて切り捨てられる。このシフトにより仮数部Ｍの空き（この例では″０００″）となった最上位３ビット中の最下位ビット（即ち、２３ビットの最下位から２１ビット目）に式（１）における″１．Ｍ″の″１″に対応する″１″を設定することにより、切り捨てによる整数化された値が得られる（図３Ｃ参照）。あるいは、シフト前の２３ビットのＭＳＢの上位側に″１″を付加した２４ビットを３ビットシフトしてもよい。【００１５】  更に、このようにして得られた整数値を２の補数表現に変換する。つまり、浮動小数点形式の各ディジタル信号サンプルＸの極性ビットＳはそのまま最上位ビットとし、残りの２３ビットについては図３Ｃに得られた２３ビットを、極性Ｓが″０″（正）の場合は図３Ｃの２３ビットをそのまま用い、Ｓが″１″（負）であれば、図３Ｄに示すように２３ビットを全て論理反転、即ち″０″と″１″を交換した後に最下位ビットに″１″を加算する。最上位ビットは極性Ｓをそのまま用い、図３Ｅに示す２４ビットの補数表現された整数形式の信号サンプルＹが得られる。【００１６】  上述においては、主として、仮数部Ｍに小数点以下の端数部分と対応するビットが０ビット以上含まれている場合を想定し、１サンプルの浮動小数点形式の３２ビットディジタル信号を１サンプル２４ビットの整数形式のディジタル信号に変換した。しかし、例えば前記２４ビット整数形式の信号の素材の複数を混合などして加工する場合には１サンプルの振幅値が２４ビットで表わされる最大値より可成り大きくなっている場合もある。このようなＥ≧１５０の場合は例外処理として、指数部Ｅの値を前記例ではＥ＝１２７＋２３＝１５０に固定し、例外信号ｙを差分生成部１４に与えると共に、仮数部Ｍの隣接上位側に″１″を付加した″１Ｍ″の上位２３ビットをそのまま２の補数表現に変換して２４ビット整数形式の信号サンプルＹとする。また、後述の他の実施形態で説明するように、フレーム毎に適正な整数の範囲に収まるように、符号小数点値の指数部をΔＥで調整することで正規化して、その調整値ΔＥを補助情報として符号化してもよい。【００１７】  整数化部１２では例えば図４に示す処理を行うことになる。まず指数部Ｅが１５０以上か、つまり整数部が２３ビット以上であるかを調べ（Ｓ１）、２３ビットより少なければ、桁数計算部１２Ａで仮数部における整数部分の桁数Ｅ−Ｅ０＝ｎを求めて出力し（Ｓ２）、また仮数部Ｍを下位に（２３−ｎ）ビットだけシフトして端数部分を溢れ出し、得られた��数部分ｎビットの最下位から（ｎ＋１）ビット目に″１″を付加し（Ｓ３）、更にその上位側に全体で２３ビットとなるように″０″を補充したものを、極性Ｓを加味して２の補数表現の２４ビット整数形式に変換して整数形式信号サンプルＹを得る（Ｓ５）。つまり、最上位ビットに極性Ｓをそのまま用い、残りの２３ビットは、極性Ｓが″０″（正）であればステップＳ３でシフトして下位から（ｎ＋１）ビット目に″１″を加えた整数部分の最下位ビットから２３ビットまでをそのまま用い、Ｓが″１″（負）であれば前記シフトして″１″を加えた整数部の最下位ビットから２３ビットまでを、ビット反転して最下位ビットに″１″を加算して補数値を得る。ステップＳ１で指数部Ｅが１５０以上であれば、ステップＳ４でその指数部Ｅを１５０にしてステップＳ５で″１Ｍ″の上位２３ビットから整数形式の信号サンプルＹを生成する。【００１８】  なお、上述では仮数部Ｍに対し（２３−ｎ）ビットシフトして１サンプル２４ビットの絶対値表現２進数の整数値を求めたが、仮数部Ｍの図３ＡにＭ１で示す上位からｎ＝Ｅ−Ｅ０ビットを取り出し、その上位側に図３Ｃに示すように″１″付加してｎ＋１ビットとし、その上位側に（２２−ｎ）ビットの″０″を付加して２３ビットとし、更にその上位側に極性ビットＳを付加して全体で２４ビットにしてもよい。
以上のようにして整数化部１２で変換された整数値信号サンプルＹの系列は圧縮部１３で整数値として波形値の相関などを利用した効率のよい可逆圧縮法により圧縮符号化されて符号列Ｃａとして出力される。圧縮部１３における可逆圧縮は例えば前記非特許文献１に示されているように各サンプルごとに予測値（整数値）との差分を求め、その差分の系列を、従来の技術の項で述べたようにビット配列変換を行った後、つまり等位ビット列についてエントロピィ符号化すればよい。つまり整数値信号サンプルＹの系列は信号源１１の浮動小数点形式の入力ディジタル信号サンプルＸの系列の原アナログ信号波形と近似したものとなっている。従ってこの入力サンプルＸの系列は予測や変換を使って信号サンプル間の相関による冗長性を除くことにより効率の高い可逆圧縮符号化が可能となる。【００１９】  差分生成部１４では整数値信号サンプルＹと信号源１１よりの対応する浮動小数点形式の入力信号サンプルＸとの差分信号（誤差）Ｚが生成される。この例では整数値信号サンプルＹは浮動小数点化部１５で浮動小数点形式の信号サンプルＹ’に再変換され、その再変換された浮動小数点形式の信号サンプルＹ’が原浮動小数点形式の入力信号サンプルＸから減算部１６で減算されて浮動小数点形式の差分信号Ｚが生成される。
浮動小数点化部１５での変換は１サンプルの整数形式ディジタル信号が２４ビットの場合、まったくあいまい性や例外なく３２ビットの浮動小数点形式の入力信号に変換可能である。前述したように原浮動小数点形式のディジタル信号サンプルＸの指数部Ｅは１４９以下の場合が多く、この場合は信号サンプルＹ’と原浮動小数点形式の入力信号サンプルＸとの差分信号Ｚは、原入力信号サンプルＸの小数点以下の端数値と等しい。【００２０】  上述の差分生成部１４の説明は理解のためのものであって、現実には、整数値信号サンプルＹを浮動小数点化する必要はなく、差分生成部１４に入力サンプルＸとその仮数部の整数部分桁数ｎを入力し、例外信号ｙが与えられないときは、浮動小数点形式の各入力サンプルＸの極性Ｓと指数部Ｅ、仮数部Ｍの下位（２３−ｎ）ビットをそれぞれ差分Ｚの各サンプルの極性、指数部、仮数部の下位（２３−ｎ）ビットとし、仮数部中の上位ｎビットをすべて″０″とする。なお、仮数部の整数部分の桁数ｎ＝Ｅ−Ｅ０は、整数値信号サンプルＹの最上位の″１″より下位の桁数と等しい。例外信号ｙが与えられた場合は、極性は入力サンプルの極性Ｓ、指数部はＥ−１５０、仮数部は入力サンプルＸと信号サンプルＹ’の仮数部の差分とする。【００２１】  圧縮部１７は、整数値信号サンプルＹと浮動小数点形式の入力サンプルＸとの、対応サンプルごとの差分信号Ｚ、つまり差分生成部１４からの浮動小数点形式の差分信号Ｚを可逆圧縮符号化し、符号列Ｃｂを出力する。この圧縮部１７では整数化部１２から出力された仮数部の整数部分桁数ｎを用いて、浮動小数点形式の差分信号Ｚ中の各サンプルについて、″０″以外になり得る桁についてのみ可逆圧縮符号化を行う。浮動小数点形式の各入力サンプルＸは、
Ｘ＝１．Ｍ×２ｎ＝ＸＷ．ＸＦ
ただしＸＷ＝１ＭＩ（ＭＩより隣接上位側に１が付加された値）は２進整数部分、ＸＦ＝ＭＦは端数部分、とおくと、その仮数部Ｍにおける整数部分ＭＩに対応するビットと、端数部分（小数値）ＭＦに対応するビットは図５に示す関係にある。ただし、仮数部Ｍは式（１）におけるＭの上位側隣接１ビットを合わせて２４ビットの値として示し、絶対値表現２進数とした場合の小数点ＰＤの位置を便宜的に示してある。【００２２】  整数値の絶対値ＸＷが０の場合は、前式（１）においてＥ−Ｅ０＝−１２７の場合と、−１２６≦Ｅ−Ｅ０≦−１の場合がある。前者の場合はＥ＝０の特殊な場合であり、仮数部Ｍの全２３ビット″ｘ２３…ｘ１″の全てが端数部分ＭＦで、かつ、定義により入力信号サンプルＸの仮数部２３ビットがａｌｌ″０″である。−１２６≦Ｅ−Ｅ０≦−１の場合は仮数部がａｌｌ″０″ではない端数部分であり、いずれにしてもＥ−Ｅ０が負の場合は整数値信号サンプルＹの全ビットはａｌｌ″０″となり、差分信号はＺは入力サンプルＸと同じになるので、浮動小数点形式の信号サンプルＸの全３２ビットを全て符号化する。【００２３】  整数値の絶対値ＸＷが１の場合は、仮数部Ｍの２３ビット目より１ビット上位のビット（以下２４ビット目という）″１″により整数値ＸＷを表し、仮数部Ｍの２３ビット″ｘ２３…ｘ１″は端数値ＭＦを表わす。
整数値の絶対値ＸＷが２〜３の場合は２４ビット目の″１″と２３ビット目のｘ２３との２ビット″１ｘ２３″により整数値ＸＷを表わし、ｘ２３は仮数部Ｍ中の整数部分ＭＩを表し、″ｘ２２…ｘ１″の２２ビットで端数値ＭＦを表わす。
ＸＷが４〜７の場合は２４ビット目の″１″と２３ビット目ｘ２３、２２ビット目ｘ２２との３ビット″１ｘ２３ｘ２２″により整数値ＸＷを表わし、″ｘ２３ｘ２２″は仮数部Ｍ中の整数部分ＭＩを表し、″ｘ２１…ｘ１″の２１ビットにより端数値ＭＦを表わしている。【００２４】  ＸＷが２ｋ−１〜（２ｋ−１）の場合は、２４ビット目の″１″と、″ｘ２３…ｘ２３−（ｋ−２）″とのｋビットで整数値ＸＷを表わし、″ｘ２３ｘ２２…ｘ２３−（ｋ−２）″は仮数部Ｍ中の整数部分ＭＩを表し、″ｘ２３−（ｋ−１）…ｘ１″の（２３−ｋ）ビットで端数値ＭＦを表わす。
所で差分信号Ｚは３２ビット浮動小数点形式の入力サンプルＸから、整数値信号サンプルＹを３２ビット浮動小数点形式にしたサンプルＹ′を差し引いたものであるから、差分信号Ｚは、図６に示すようになる。整数値の絶対値ＸＷが０の場合は前述のＥ−Ｅ０が負の場合であり、差分信号Ｚの極性Ｓ、指数部Ｅ、仮数部Ｍは全て入力サンプルＸと同一になる。【００２５】  整数値の絶対値ＸＷが１の場合は、サンプルＹ′のＳ，ＥはそれぞれサンプルＸのそれらと同一となりＭは０となる。ここでは指数部の差分もとる。従って差分信号ＺのＳ，Ｅはそれぞれ必ずＸと同じ０，０となり、ＭはサンプルＸの仮数部Ｍと同一となる。
整数値ＸＷが２〜３の場合は、サンプルＹ′のＳ，Ｅはそれぞれ、サンプルＸのそれと同一となり、Ｍは２３ビット目ｘ２３がサンプルＸのＭのそれと同一となり、端数部分″ｘ２２…ｘ１″は全て″０″である。従って差分信号ＺのＳ，Ｅは必ず０となり、仮数部Ｍは上位１桁（２３ビット目）は必ず０となり、残りの端数部分″ｘ２２…ｘ１″がサンプルＸの対応する部分の値と同じであり、サンプルＸにより変化する。【００２６】  以下同様に、サンプルＸの整数値ＸＷが２ｋ−１〜（２ｋ−１）の場合、差分信号ＺのＳ，Ｅは必ず０となり、仮数部Ｍは、サンプルＸの仮数部Ｍの整数部分と対応する″ｘ２３…ｘ２３−（ｋ−２）″の上位（ｋ−１）桁（ビット）は必ず″０″となり、残りの″ｘ２３−（ｋ−１）…ｘ１″の２３−（ｋ−１）ビットはサンプルＸの仮数部Ｍのそれと同一値となり、サンプルＸにより変化する。整数形式ディジタル信号サンプルＹの整数値の範囲、つまり整数値の桁数ｎに応じて差分信号Ｚの非ゼロになり得る桁数ｈ＝２３−ｎが決まる。
このような関係があるから、浮動小数点形式差分信号Ｚについては、圧縮部１７において、整数化部１２から入力された仮数部の整数部分の桁数ｎを用い、対応差分信号Ｚ中の非ゼロになり得る下位ｈ＝（２３−ｎ）桁についてのみ可逆圧縮符号化する。つまり仮数部の整数部分の桁数ｎが０であれば指数部Ｅ、仮数部Ｍの全てを可逆圧縮符号化し、ｎ≠０であれば、仮数部Ｍ中の下位ｈ＝（２３−ｎ）ビットのみを可逆圧縮符号化する。以上から入力信号サンプルＸと仮数部の整数部分の桁数ｎとを差分生成部１４に入力して、差分信号Ｚを生成できることが理解されよう。【００２７】  圧縮部１７による差分信号Ｚの符号化は、前述のように入力信号サンプルＸのＥ−Ｅ０が−１２７〜０の場合は、差分信号Ｚは入力信号サンプルＸと同一になり、従って入力信号サンプルＸの全３２ビットを差分信号Ｚとして符号化する。Ｅ−Ｅ０が１〜２２の場合は、例えば差分信号サンプル系列Ｚ＝ｚ１，ｚ２，ｚ３…が図７に示す状態の場合、ｎ≠０の場合以外は非ゼロになり得る桁部分ＭＤのみを符号化する。この非ゼロになり得る桁についての符号化はその非ゼロになり得る桁数ｈごとに例えばハフマン符号化などのエントロピィ符号化を行うか、まとめて例えばユニバーサル符号化を行う。つまり図７中に斜線を施した部分のみをサンプルごとにあるいはフレーム単位など適当にまとめてエントロピィ符号化などの可逆圧縮符号化を行えばよい。なお極性Ｓは整数形式ディジタル信号サンプルＹの符号化により、符号Ｃａに含まれているため、差分信号Ｚの符号化の際に極性Ｓを符号化して送信する必要はない。また、より出力されており、受信側では整数値信号サンプルＹの極性を除く最上位の″１″より下位のビット数ｎからｎ＝Ｅ−Ｅ０を求めることができるので、桁数ｎを送信する必要はない。【００２８】  差分信号Ｚは小数点以下の桁数が多いこともあり、その場合、符号化の効率が悪い場合がある。従って、差分信号Ｚの非ゼロとなり得る桁を符号化せずそのまま符号列Ｃｂとして出力してもよい。あるいは、この差分信号Ｚを符号化した場合としない場合の情報量を比較し、情報量が小さくなるほうを選択してもよい。
なお前述したように浮動小数点形式のディジタル信号サンプルＸ自体の仮数部がＥ≧１５０の例外的な場合は、整数化部１２で指数部Ｅが１５０に固定されたことを示す例外信号ｙが差分生成部１４に与えられ、差分生成部１４はその指数部Ｅの値１５０とディジタル信号サンプルＸの指数部Ｅとの差分（Ｅ−１５０）を指数部とし、仮数部Ｍの差分を仮数部とする浮動小数点形式の差分信号Ｚを生成する。圧縮部１７は差分信号Ｚを可逆圧縮符号化し、その符号列Ｃｂとして出力する。【００２９】  図８に図２に示した符号化装置１００と対応するこの発明による復号化装置２００の実施形態を示す。
入力された符号列Ｃａは伸張部２１で可逆伸張復号化される。この可逆伸張復号化方法は、図２中の圧縮部１３で行った可逆圧縮符号化方法と対応し、その処理と逆の処理を行う。よってこの可逆伸張復号化により１サンプル２４ビットの整数形式のディジタル信号サンプルＹが生成される。また伸張部２１中の桁数出力部２１Ａにおいて、伸張復号された各サンプルごとの最上位の″１″より下位の桁数ｎを浮動小数点形式の仮数部における整数部分の桁数として求め、伸張部２３に与える。【００３０】  伸張部２３では、入力された符号列Ｃｂを可逆伸張復号化する。この可逆伸張復号化方法は図２中の圧縮部１７で行う可逆圧縮方法と対応したものとする。よってこの伸張部２３において、伸張復号されたビット列から、組立部２３Ａにより桁数ｎに基づいて、サンプルごとの３２ビット浮動小数点形式の差分（誤差）信号Ｚが組立てられ、出力される。図２の符号化装置１００における圧縮部１７で差分信号Ｚを圧縮しないでそのまま出力する場合は、復号化装置２００の伸張部２３において受信した符号列Ｃｂをそのまま差分信号Ｚとして使用する。【００３１】  組立て部２３Ａでは、伸張部２１からの最初のサンプルに対する桁数ｎと、伸張部２３で伸張復号されたビット列から、最初のサンプルと対応する部分としてｎ＝０でなければ、２３ビットの仮数部Ｍの下位２３−ｎ＝ｈビットとしてｈビットが取り出されて、図７中の最初のサンプルｚ１における斜線を施した部分よりなる１サンプル３２ビットの浮動小数点形式の差分信号ｚ１として組立てられる。極性Ｓの１ビット、指数部Ｅの８ビットはすべて０とし、また図７中の仮数部Ｍ中の整数値と対応する部分ＭＩは全て０とされる。次のサンプルに対して対応桁数ｎ≠０に応じて仮数部の下位２３−ｎ＝ｈビットとして伸張復号ビット列からｈビットを取り出して３２ビットの浮動小数点形式差分信号Ｚとし、以下同様にして図７に示したようなサンプル列ｚ２，ｚ３…が順次組立てられて出力される。ｎ＝０の場合は指数部Ｅの８ビットと仮数部Ｍの２３ビットが伸張復号ビット列から取り出されて浮動小数点形式ディジタル信号とする。この復号した差分信号Ｚは極性Ｓは常に０、指数部Ｅはｎ＝０以外は常に０、仮数部Ｍは下位の２３−ｎ＝ｈビットのみが非ゼロになり得るビットであり、その他は常に０であり、従って厳密な意味では浮動小数点表現ではないが、ここでは浮動小数点形式差分信号と云っていることに注意されたい。【００３２】  伸張部２１よりの２４ビット整数形式のディジタル信号サンプルＹは浮動小数点化部２２で１サンプル３２ビットの浮動小数点形式のディジタル信号サンプルＹ′に変換される。このディジタル信号サンプルＹ′は伸張部２３よりの浮動小数点形式の差分信号Ｚとが合成部２４で対応サンプルごとに加算合成され、浮動小数点形式のディジタル信号サンプルＸが再生される。各再生ディジタルサンプルＸの極性はディジタル信号サンプルＹ′のそれ、つまり復号された整数形式のディジタル信号サンプルＹの極性となり、サンプルＸの指数部Ｅはｎ＝０以外は、信号サンプルＹ′の指数部となり、仮数部Ｍは上位ｎ＝２３−ｈビットが信号サンプルＹ′の仮数部の上位ｎビットとなり、下位２３−ｎ＝ｈビットが差分信号Ｚの下位ｈビットとなる。
変形実施例
一般の浮動小数点ではなく、もともと２４ビットとか１６ビットの整数値のＰＣＭ信号を便宜上、浮動小数点に変換して符号化対象の系列を作成する場合がある。このような特殊な浮動小数点系列の場合には、前述した第１実施形態において０以外になり得る桁はなくなり、差分生成部１４よりの浮動小数点形式の差分（誤差）信号Ｚの極性Ｓ、指数部Ｅ、仮数部Ｍはすべてゼロとなり、送信する必要はない。この場合は、例えば補助情報として２ビットを用い、その２ビットが″００″であればもともとのディジタル信号が１サンプル１６ビットの整数値のみ、″０１″であれば１サンプル２４ビットの整数値のみ、″１０″であればそれ以外の信号であることを表わし、この２ビット補助情報を圧縮部１３の出力符号列Ｃａの先頭に追加し、前２者の場合は符号列Ｃｂを出力せず、後者の場合に符号列Ｃｂを出力することにより効率的な圧縮が可能となる。
第２実施形態
前述の図２の実施形態ではＥ≧１５０のサンプルに対し例外処理を行う場合を示したが、先に簡単にふれたように、フレーム毎の桁調整を行ってＥ≧１５０とならないようにしてもよい。ここではフレーム内で指数部Ｅの最大値が１５０＞Ｅ≧１５０−Ｋとなるように桁調整を行う場合の実施形態を図９を参照して説明する。【００３３】  この第２実施形態の符号化装置１００の機能構成例を図９に図２と対応する部分に同一参照番号を付けて示す。この第２実施形態では浮動小数点形式のディジタル信号サンプルＸの系列を、サンプル列分割部３１で複数の一定サンプル数ごとに、あるいはフレーム毎に分割し、この分割単位ごとに桁調整部３２で、整数形式の信号サンプルＹの桁数が適当な大きさ、つまり少なくとも整数形式に変換した際に２４ビット以内に納まるように指数部Ｅに対して以下のように桁調整を行う。
（ａ）浮動小数点形式のディジタル信号サンプルＸの振幅が大きく、各指数部Ｅがもともと１５０を超えている場合は、２４ビットの整数形式のディジタル信号サンプルＹに変換すると仮数部ＭのＬＳＢ側１又は複数ビットの情報が失われる。あるいは浮動小数点形式のディジタル信号サンプルＸの振幅が大きく、各指数部Ｅが１５０に近い値の場合は整数形式のディジタル信号サンプルＹに変換した際に、そのサンプルごとのディジタル値が頻繁に２４ビット整数値を超えることがある。これらのことが生じないように、ディジタル信号サンプルＸの指数部Ｅを、桁調整部３２において、前記分割単位ごとに、調整情報ΔＥだけ差し引いて１５０以下の値とする。【００３４】  （ｂ）浮動小数点形式のディジタル信号サンプルＸの振幅が小さく、変換された整数形式のディジタル信号サンプルＹの２４ビット中の最上位ビットの極性Ｓを除き、ＭＳＢから２１〜２３ビットが常に全て０となるような場合、振幅がわずか２ビット程度で表されることになるので整数形式のディジタル信号サンプルＹの系列の波形がアナログ波形に近いものとならず、整数形式のディジタル信号サンプルＹに変換する効果、つまり高い圧縮率で可逆圧縮符号化することが得られなくなる。また整数形式のディジタル信号サンプルＹの振幅値がＬＳＢ側２ビット程度で表される場合、信号サンプルＹを浮動小数点形式のディジタル信号に変換すると、その仮数部Ｍは全ビット″０″またはＭＳＢのみ″１″で他は全て″０″のように、ほとんどの桁のビットが″０″となってしまう。一方、符号小数点形式の入力ディジタル信号サンプルＸの仮数部Ｍは、信号サンプルＸの振幅が小さいときでも、大きな値をとり得るので、浮動小数点形式のディジタル信号サンプルＸとの誤差（差分）と対応した浮動小数点形式の差分信号ΔＸの仮数部Ｍは大きな振幅をとり、つまり全てのサンプルについて０となるビットの数が少なくなり、圧縮効率を上げることができない。【００３５】  このような問題が生じないように桁調整部３２では分割単位ごとに各指数部Ｅに調整情報ΔＥだけ加算して、仮数部Ｍ中の多くの情報が整数形式のディジタル信号サンプルＹに含まれるようにする。この場合、整数形式に変換した際に１サンプルのビット数が２４を超えないようにする。
桁調整部３２における調整情報ΔＥ（任意の極性の整数）は分割単位で変更が可能である。桁調整部３２において分割単位ごとに指数部Ｅの最大を調べ、整数化した時に１サンプルが２４ビットを超えない範囲で仮数部Ｍの情報をなるべく利用できるように調整情報ΔＥを決めればよい。【００３６】  図１０は桁調整部３２がフレーム毎に実行する桁調整の処理手順を示す。ここではサンプル列分割部３１により分割されたＮＦ個のサンプル毎に桁調整を行う場合を示す。
ステップＳ１でＮＦ個の入力サンプルを取り込み、ステップＳ２でｉ＝１とし，ΔＥ０としては、取り得ない十分小さい任意の値、例えばΔＥ０＝−１５０に初期設定する。
ステップＳ３でｉ番目のサンプルの指数部Ｅｉから１５０を減算して差ΔＥｉを得る。
ステップＳ４でΔＥｉが１つ前のΔＥｉ−１より大きいか判定し、大きくなければステップＳ６に移動する。【００３７】  ステップＳ５でΔＥｉがΔＥｉ−１より大きい場合は、ΔＥｉをΔＥｍａｘとして一時保存する。
ステップＳ６でｉ＝ＮＦとなったか判定し、なっていなければステップＳ７でｉを１歩進し、ステップＳ３に戻る。
ステップＳ６でｉ＝ＮＦとなっていれば、ステップＳ８でΔＥｍａｘを読み出し、１以上か判定する。１以上であればステップＳ１０に移る。
ステップＳ８でΔＥｍａｘが１以上でなければ、ステップＳ９でΔＥｍａｘが予め決めた−Ｋ（Ｋは１以上の整数）以下であるが判定し、そうであればステップＳ１０に移る。【００３８】  ステップＳ１０は、ΔＥｍａｘを補正情報ΔＥとし、ＮＦ個の各サンプルについてＥｉ’＝Ｅｉ−ΔＥにより桁調整を行い、得られたＥｉ’を補正されたＥｉとして使用し、整数化部１２に桁調整されたＮＦ個のサンプルを与え、終了する。ステップＳ９でΔＥｍａｘが−Ｋより小でない場合も終了する。
このようにステップＳ８においてΔＥｍａｘが１以上となることはディジタル信号サンプルＸの振幅が大きく指数部Ｅが１５０を超えている場合を検出している。ステップＳ９においてΔＥｍａｘが−Ｋ以下となることは、Ｘの振幅が小さく、波形の近似が悪い場合であり、例えばＫは２０〜２２程度の値に決めてもよい。【００３９】  このようにして桁調整された浮動小数点形式のディジタル信号サンプルを整数化部１２で整数形式のディジタル信号サンプルＹに変換しこの信号サンプルＹの系列を圧縮部１３で可逆圧縮符号化して符号列Ｃａを生成することは第１実施形態と同様である。また、差分信号Ｚについても第１実施形態と同様に仮数部Ｍの非ゼロとなり得るビットの領域を圧縮符号化部１７で符号化して符号列Ｃｂを出力する。
復号化の際に、符号化の際の浮動小数点形式のディジタル信号サンプルＸを可逆に得られるように調整情報ΔＥは補助符号化部３３でその極性、つまり加算か減算かを含めて符号化して補助符号列Ｃｃを生成する。【００４０】  図９に示した実施形態では、差分生成部１４において逆桁調整部３４で、整数形式のディジタル信号系列Ｙを、対応分割単位ごとの調整情報ΔＥだけ逆に桁調整する。つまり桁調整部３２で負の調整情報ΔＥを加算した場合（ステップＳ１０でΔＥが負の場合）は逆桁調整部３４において対応サンプルのディジタル信号の最上位ビットを除く２３ビットをΔＥビットだけ下位にシフトし、シフトで空いた各ビットに０を詰め、正の調整情報ΔＥを減算した場合（ステップＳ１０でΔＥが正の場合）は、対応サンプルのディジタル信号の最上位ビットを除く２３ビットをΔＥビットだけ上位にシフトし、つまりΔＥビットだけあふれさせ、下位ΔＥビットに１を詰めて２３＋ΔＥビットとする。【００４１】  この桁を逆調整した整数形式のディジタル信号サンプルＹを浮動小数点化部１５で浮動小数点形式のディジタル信号サンプルＹ’に変換し、この浮動小数点形式のディジタル信号サンプルＹ′と原浮動小数点形式のディジタル信号サンプルＸとの差分Ｚを減算部１６で求め、この浮動小数点形式の差分信号Ｚを圧縮部１７で可逆圧縮符号化して符号列Ｃｂを出力する。この場合は分割単位の符号列ＣａとＣｂと補助符号Ｃｃが出力されることになる。この実施形態においても差分信号Ｚは圧縮符号化せず、端数部だけをそのまま差分情報として出力してもよい。サンプル列分割部３１は図９中に破線で示すようにサンプル列分割した浮動小数点形式の信号サンプルＸが桁調整部３２と減算部１６に供給されるように設けてもよい。【００４２】  図１１は図９に示した符号化装置１００と対応する復号化装置２００の機能構成例を、図８の復号化装置２００と対応する部分に同一参照番号を付けて示す。符号列Ｃａは伸張部２１で分割単位で可逆伸張復号化され、整数形式のディジタル信号サンプルＹの系列が生成される。この実施形態では補助復号部４１で補助符号Ｃｃが復号されて調整情報ΔＥが生成される。この調整情報ΔＥにより整数形式のディジタル信号サンプルＹに対する桁補正Ｅｉ＋ΔＥが桁補正部４２で行われる。調整情報ΔＥが正であれば各ディジタル信号サンプルＹのビットを上位へΔＥビットシフトし、ΔＥが負であればディジタル信号サンプルＹのビットを下位へΔＥビットシフトする。この際、図９中の逆桁調整部３４と同様に１又は０詰めを行う。【００４３】  この桁補正部４２より整数形式のディジタル信号サンプルを浮動小数点化部２２で浮動小数点形式のディジタル信号サンプルＹ′に変換し、これと、差分情報Ｃｂを伸張部２３で可逆伸張復号化して得た浮動小数点形式の差分信号Ｚと合成部２４で加算合成する。この加算合成したディジタル信号を必要に応じて連結部４３により連続するサンプル列に連結して再生浮動小数点形式のディジタル信号サンプルＸの系列を得る。
変形例
図１２に図９と対応する部分に同一参照番号を付けて示すように、整数形式のディジタル信号サンプルＹに対し、逆桁調整を行うことなく、浮動小数点化部１５で浮動小数点形式のディジタル信号サンプルに変換し、この変換された浮動小数点形式のディジタル信号サンプルと桁調整部３２で桁調整された浮動小数点形式のディジタル信号サンプルとの差分を減算部１６で求め、浮動小数点形式の差分信号Ｚを求めてもよい。つまり差分生成部１４は原浮動小数点形式のディジタル信号サンプルＸと整数形式のディジタル信号サンプルＹとの差分信号を浮動小数点形式で求めればよく、図２、図９、図１２に示す何れの構成によってもよい。【００４４】  図１２と対応して復号化装置２００では図１３に示すように伸張部２１で可逆伸張復号化した整数形式のディジタル信号サンプルＹを、まず浮動小数点化部２２で浮動小数点形式のディジタル信号サンプルに変換し、これと、伸張部２３で可逆伸張復号化した浮動小数点形式の差分信号Ｚを合成部２４で加算合成し、その後、その合成ディジタル信号に対し、その指数部Ｅを、補助復号部４１により復号された調整情報ΔＥで桁補正部４２において桁補正して、再生浮動小数点形式のディジタル信号サンプルＸを得るようにしてもよい。
第３実施形態
上述の実施形態では、浮動小数点形式の入力信号サンプルＸの小数点以下の端数を切り捨てることにより整数化し、差分信号Ｚの仮数部における整数部分がａｌｌ″０″となることを利用して差分信号Ｚの圧縮効率を高める場合を示した。第３実施形態では、上記小数点以下の切捨てに加えて、更に整数部分も予め決めたビット数を切り捨てて整数値信号サンプルＹを生成する例を示す。以下の例では、小数点以下の切捨てによる１６ビットの整数値化において、更に８ビットの切捨てを行う場合を示すが、１７〜２３ビットの任意の整数値化にも適用できる。【００４５】  この第３実施形態によれば浮動小数点形式の入力信号サンプルＸが、もともと符号小数点信号であったのか、２４ビット整数値信号であったのか、１６ビット整数値信号であったのか区別する必要がなく、同じ処理によって符号化を行うことができるが、動作原理の説明上、浮動小数点形式の入力信号サンプルＸがもともと浮動小数点形式であった場合、極性１ビットを含む２４ビット整数値信号であった場合、極性１ビットを含む１６ビット整数値信号であった場合について順に説明する。
図１４Ａを参照して、もともと浮動小数点形式であった入力信号サンプルＸの１６ビット整数値化と、差分信号Ｚの生成を説明する。図において″ｘ″は″０″又は″１″のいずれかをとり得る（非ゼロとなり得る）。ＭＸは浮動小数点形式の入力信号サンプルＸの仮数部２３ビットを示し、上位ｎ（＝Ｅ−Ｅ０）ビットの整数部分と小数点以下の端数部分の境界を示す小数点位置をＰＤで示してある。サンプルＸの指数部ＥをＥ−８に削減することにより仮数部ＭＸの小数点位置ＰＤは８ビット上位にシフトする。その結果、図１４Ａの例では仮数部ＭＸの上位ｎ−８＝２ビット″ｘｘ″がシフト後の仮数部内の整数部分となっている。その整数部分２ビットの隣接上位側に″１″を加えてた″１ｘｘ″を１６ビット整数値信号サンプルＹの最下位ビットとする。【００４６】  １６ビット整数値信号サンプルＹを８ビット上位にシフトし、即ち、最下位に８ビットの″０″を付加してから浮動小数点形式の信号サンプルＹ’に変換する。従って、得られた浮動小数点形式の信号サンプルＹ’の指数部Ｅは＋８されたことになり、入力信号サンプルＸの指数部Ｅと同じ値になる。信号サンプルＹ’の仮数部ＭＹ’は、８ビット上位にシフトされた整数値信号サンプルＹの最上位の″１″より下位の整数部分、ここでは２ビットの″ｘｘ″を最上位ビットとし、それより下位は全て″０″とすることにより得られる。図１４Ａでは便宜上８ビットシフトする前のサンプルＹの最上位の″１″より下位の整数部″ｘｘ″と浮動小数点形式の信号サンプルＹ’に変換後の仮数部ＭＹ’の関係を示している。差分信号Ｚの仮数部ＭＺは仮数部ＭＸとＭＹ’の差分であり、Ｚの仮数部ＭＺの上位（ｎ−８）ビット、ここでは最上位２ビット、は″００″となり、それより下位（端数部分）は仮数部ＭＸの対応するビット位置の値と同じである。即ち、仮数部ＭＺの最上位の整数部分″００″に続く下位の全ビットは非ゼロとなり得る。【００４７】  差分信号Ｚについては仮数部Ｍのこの非ゼロとなり得る下位２３−（ｎ−８）ビットのみを符号化すればよい。仮数部ＭＺの必ず０となる上位（ｎ−８）ビットは、受信側で復号した整数値信号サンプルＹの最上位の″１″より下位の全ビット数と同じである。この仮数部Ｍの非ゼロとなり得る領域は図１５Ａに示すように、整数部分のビット数（ｎ−８）が増加すると共に減少する。
図１４Ｂは２４ビット整数値信号から浮動小数点形式の入力信号サンプルＸが生成された場合であり、従って、サンプルＸの仮数部ＭＸは図１４Ｂに示すように小数点ＰＤより下位で全ての桁が″０″となっている点が図１４Ａの仮数部ＭＸと異なる。図１４Ｂにおいても入力信号サンプルＸの指数部ＥをＥ−８にすることにより小数点ＰＤの位置が８ビット上位側にシフトするが、その結果から生成される１６ビット整数値信号サンプルＹは図１４Ａの場合と同じになる。従って、整数値信号サンプルＹを浮動小数点形式に変換したときの仮数部ＭＹ’も図１４Ａの場合と同様である。【００４８】  しかしながら、差分信号の仮数部ＭＺは仮数部ＭＸとＭＹ’の差分であり、図１４Ｂに示すように差分信号Ｚの仮数部ＭＺの整数部分は″００″となり、それより下位８ビットが非ゼロとなり得るビット範囲であり、更にその下位側は全てのビットが″０″となる。この非ゼロとなり得るビットの範囲は整数部分のビット数が増加するにつれ図１５Ｂに示すように下位側にずれていく。
図１４Ｃは極性１ビットを含む１６ビット整数値信号サンプルから浮動小数点形式の入力信号サンプルが作られている場合である。従って、２３ビットの仮数部ＭＸにおいて、小数点ＰＤと隣接する下位側８ビットは全て″０″であり、それより更に下位の桁も全て″０″である。小数点以下の桁数ｈはｈ＝２３−ｎとｎにより変化するが、８より小さくはならない点が図１４Ｂの場合と異なる。【００４９】  図１４Ｃにおいても入力信号サンプルＸの指数部ＥをＥ−８にすることにより小数点ＰＤの位置が８ビット上位側にシフトし、シフト後の整数部分″ｘｘ″から１６ビット整数値信号サンプルＹが図１４Ａ，１４Ｂと同様に生成される。従って、サンプルＹを浮動小数点形式に変換したときの仮数部ＭＹ’も図１４Ａ，１４Ｂの場合と同じである。また、差分信号Ｚの仮数部ＭＺは図１４Ｂの場合と同様にその最上位（ｎ−８）桁の整数部分が″０″となり、それに続く下位８ビットは非ゼロを取りえる範囲であり、その更に下位ビットは全て″０″となる。この場合も整数部分の桁数（ｎ−８）が増加すると図１５Ｂに示すように非ゼロとなり得る８ビットの下位側の″０″の桁数も減っていくが、８桁より小さくなることはない。【００５０】  以上の説明から明らかなように、符号小数点形式の入力信号サンプルＸのもとの信号が２４ビット整数値信号、１６ビット整数値信号、浮動小数点形式信号のいずれの場合であっても、８ビット切り捨てによる１６ビット整数値信号サンプルＹを生成するには、入力信号サンプルＸの指数部ＥをＥ−８として小数点位置を８ビット上位側にシフトし、仮数部ＭＸの整数部分である上位（ｎ−８）ビット、図の例では″ｘｘ″、に対しその上位側に″１″を加えた整数値″１ｘｘ″を最下位ビットとする１６ビット整数値信号サンプルＹを構成すればよい。また、差分信号Ｚの仮数部ＭＺは、入力信号サンプルＸの仮数部Ｍの最上位（ｎ−８）ビットを″０″とすることにより得られる。【００５１】  このようにして得られた１６ビット整数値信号サンプルＹに対しては、図２の実施形態と同様に圧縮符号化すればよい。一方、差分信号Ｚについては、その仮数部ＭＺを、常に″０″である最上位（ｎ−８）ビットについては符号化せず、それより下位の非ゼロとなり得る８ビットの領域と、更にそれより下位の残りの（２３−ｎ）ビットの領域を別々に圧縮符号化する。
上述の例では１６ビット整数値とするため、２３ビットの仮数部の小数点の位置を８ビット上位にシフトして、そのシフトした小数点以下を切り捨てる場合を示したが、一般に、２２≧ｍ≧８の任意の整数ｍビットの切捨てを行うには、入力信号サンプルの指数部ＥをＥ−ｍとして仮数部ＭＸの上位（ｎ−ｍ）ビットを整数部分とするように切捨てを行えばよい。また、差分信号Ｚの仮数部の圧縮符号化は、最上位（ｎ−ｍ）ビットの″０″は符号化せず、その下位のｍビットの非ゼロとなり得る領域と、更に下位の残りの（２３−ｎ）ビットの領域に分けて別々に符号化することにより効率のより符号化が可能となる。【００５２】  図１６に符号化装置の例を図２と対応する部分に同一参照符号を付けて示す。浮動小数点形式の入力信号サンプルＸは桁調整部３１で図１４Ａ，１４Ｂ，１４Ｃで説明したように指数部ＥをＥ−８とすることにより小数点位置は上位側に８ビットシフトされる。整数化部１２では８ビットシフトされた小数点以下の端数部分を切り捨てて、整数部分の上位側に″１″付加して１６（＝２４−８）ビットの整数形式の信号サンプルＹとする。この信号サンプルＹが圧縮部１３で可逆圧縮され、符号Ｃａが出力される。
またこの１６ビット整数形式の信号サンプルＹは逆桁調整部３２で桁調整部３１と同一ビット数８であるが逆方向に、つまり最下位に８ビットの″０″を挿入することにより上位に８ビットシフトして、２４ビットの整数形式信号サンプルとされる。この２４ビット整数形式に変換された信号サンプルは浮動小数点化部１５で浮動小数点形式の信号サンプルＹ′に変換される。この浮動小数点形式信号サンプルＹ′と入力信号サンプルＸとの差分が減算部１６でとられ、浮動小数点形式の差分信号Ｚが生成される。現実的にはこのような逆桁調整部３２、浮動小数点化部１５及び減算部１６の処理を行うことなく、差分生成部１４で整数化部１２よりの仮数部の整数部分の桁数ｎを用いて、ｎ≠０で各入力信号サンプルＸの仮数部ＭＸの下位８＋ｈ（＝１５−ｎ）ビットを取出し、ｎ＝０では指数部Ｅと仮数部ＭＸとを取出して差分信号Ｚとすればよい。【００５３】  圧縮部１７は分配部３３と２つの圧縮部１７ｈ、１７ｃとから構成されている。この差分信号Ｚは分配部３３に入力され、分配部３３には整数化部１２よりシフト後の各サンプルＸの仮数部の整数部分の桁数ｎが入力され、差分信号Ｚの各サンプルは、ｎ≠０の場合、桁数ｎに基づく非ゼロになり得る桁部分Ｚｈ、つまり下位のｈ＝１５−ｎビットと、整数形式信号サンプルＹを１サンプル２４ビットから１サンプル１６ビットに変更したことに基づく、つまり整数形式信号サンプルＹのビット数に基づく、非ゼロになり得る桁部分Ｚｃ、つまり下位第（ｈ＋１）ビット〜第（ｈ＋８）ビットとに分配する。ｎ＝０の場合、指数部Ｅの８ビットと仮数部の下位２３−８ビットを桁部分Ｚｈとして、上位８ビットを桁部分Ｚｃとして分配する。桁部分Ｚｈは圧縮部１７ｈで、桁部分Ｚｃは圧縮部１７ｃでそれぞれエントロピィ符号化などにより可逆圧縮符号化され、符号列Ｃｂ１，Ｃｂ２として出力される。【００５４】  従って圧縮部１７ｈには、主として仮数部Ｍにおける下位の非ゼロになり得るビットが入力され、これが可逆圧縮符号化される。もともとのディジタル信号が２４ビット又は１６ビットの整数値であれば図１４Ｂ，１４Ｃに示したようにｎ＝０以外は圧縮部１７ｈに入力される下位ｈ桁部分Ｚｈは全て″０″になるから、効率よく圧縮される。
圧縮部１７ｃでは、図１４Ａ，１４Ｂ，１４Ｃに示したように、入力信号サンプルＸがもともと一般浮動小数点の場合、２４ビット整数値の場合、１６ビット整数値の場合に関係なく、非ゼロになり得る下位第（ｈ＋１）〜第（ｈ＋８）ビットの８ビットが可逆圧縮符号化される。このようにすることにより、図２中の圧縮部１７で差分信号Ｚ中の非ゼロになりうるビットのすべてをまとめて圧縮符号化する場合より全体として効率よい圧縮が可能となる。【００５５】  この図１６に示した符号化装置と対応する復号化装置の実施形態を図１７に図８の復号装置と対応する部分に同一参照番号を付けて示す。符号列Ｃａは伸張部２１で可逆伸張復号されて１サンプル１６ビット整数形式の信号サンプルＹが復号される。伸張部２３は２つの伸張部２３ｈ、２３ｃと合成部４１とにより構成されており、符号列Ｃｂ１とＣｂ２はそれぞれ伸張部２３ｈ，２３ｃで可逆伸張復号化され、これらの復号されたビット列Ｂｈ，Ｂｃは合成部４１に入力される。合成部４１には伸張部２１で復号された各サンプルごとの整数値の最上位の″１″より下位のビット数ｎも入力される。ｎ≠０の場合は伸張部２３ｈの出力ビット列Ｂｈから、ｈ＝１５−ｎビットが取出され、伸張部２３ｃの出力ビット列Ｂｃから８ビットが取出されこれらが仮数部Ｍの２３ビット中の下位ｈビットと、その上位の８ビットとして合成される。以下同様に桁数ｎに応じ、ビット列ＢｈとＢｃからそれぞれｈビットと８ビットが取出されて合成される。ｎ＝０の場合は指数部Ｅとしての８ビットと２３−８＝１５ビットがビット列Ｂｈから取り出され、ビット列Ｂｃから８ビットが取り出され、この８ビットは前記１５ビットの上位側に挿入され、２３ビットの仮数部が生成される。【００５６】  復号された１６ビット整数形式信号サンプルＹは桁調整部４２で下位に８ビットの″０″を挿入することで上位へ８ビットシフトされ、２４ビット整数形式信号サンプルが得られる。その後、浮動小数点化部１５で３２ビット浮動小数点形式信号サンプルＹ′に変換される。この信号サンプルＹ′と差分信号Ｚとが合成部２４で合成されて、浮動小数点形式の信号サンプルＸが再生される。
上述において、整数形式信号サンプルＹを１サンプル１６ビット、２４ビットの場合としたが、２４ビット以下の任意の数ｍとしてもよく、その数ｍに応じて整数形式信号サンプルＹのサンプル当りのビット数変更に基づく、非ゼロになり得る桁数を決定すればよい。更に上述において、入力浮動小数点形式信号サンプルＸを、例えば１０２４サンプルごとのフレーム、または連続する複数のサンプルごと分割し、その分割単位ごとに圧縮符号化処理してもよい。このように分割単位ごとに圧縮符号化する場合は、整数化するビット数を分割単位ごとに都合のよいように決め、そのビット数を指定する補助符号も出力するようにしてもよい。【００５７】  図１６に示す符号化装置の圧縮部１７として図２で示した第１実施形態による圧縮部１７を使用し、図１７の復号化装置の伸張部２３として図８における伸張部２３を使用してもよい。即ち、その場合は符号化装置において第２実施形態で説明した１６ビットの整数値化を行うが、差分信号Ｚは非ゼロとなり得る２つの領域に分けず、図７で説明したように、仮数部の下位ｈ＝２３−ｎビットの符号化を行う。従って復号化装置の伸張部２３においては、符号Ｃｂからｈビットを復号化し、その上位にｎビットの″０″を挿入して仮数部を生成する。
第４実施形態
前述の第１実施形態では、差分信号Ｚの各サンプルの非ゼロとなり得る下位ｈ（＝２３−ｎ）ビットを可逆圧縮符号化する例を示したが、差分信号Ｚを例えば１フレームごとにフレーム方向に抽出したビット列を可逆圧縮符号化してもよい。その符号化方法を図１８を参照して以下に説明する。【００５８】  図１８では１フレームが１０２４サンプルにより構成された場合を示し、また各サンプルｉ（ｉ＝０〜１０２３）に対応して入力信号サンプルＸの仮数部のｎ（＝Ｅ−Ｅ０）ビット整数部分の整数値と、ｈ（＝２３−ｎ）ビットの端数部分のビット列を示してある。第１実施形態で図７を参照して説明したように、差分信号Ｚの各サンプルの仮数部Ｍの整数部分に対応する上位ｎビットは全て″０″であり、端数部分である下位ｈ＝２３−ｎビットが非ゼロとなり得るビットである。図１８の符号化方法では、差分信号の仮数部の下位ｈビットのみを、それらｈビットの最上位ビットＭＳＢをそろえて配列し、その配列における各サンプルの振幅方向の各ビット位置ｊのビットをフレーム方向に順次抽出して得たビット列Ｅｊを符号化を行う。【００５９】  サンプルによっては数部のビット長ｈ＝２３−ｎは異なるので、振幅方向における同一ビット位置ｊ（ｊ＝０〜ｈｍａｘ−１；ｈｍａｘはフレーム内のサンプルの最大端数部分ビット長）のフレーム方向のスキャンにおいて、ビットが存在しないサンプルはスキップする。スキップするか否かの判定は、サンプルｉの振幅方向のビット位置ｊで、そのサンプルの端数部分ビット長ｈとｊを比較し、ｈ≧ｊであればそのビット位置のビットを抽出し、ｈ＜ｊであればスキップして次のサンプルｉ＋１を判定すればよい。
例えばＭＳＢ側からｊ＝１７のビット位置におけるフレーム方向のスキャンにおいて、端数部分のビット長ｈ＝２３−６＝１７のサンプル番号ｉ＝０のサンプルは最下位にビットを有するが、端数部分のビット長２３−８＝１５のサンプル番号ｉ＝１のサンプルはＭＳＢ側から第１５番目以降（ｊ＝１４以降）にビットを持たないのでスキップされる。これら第１５番目の抽出されたビットを１フレーム分まとめてビット列Ｅ１６としてエントロピー符号化する。他のビット位置ｊについても同様である。エントロピー符号化として算術符号やゴロム符号を行うと下位層化ができるので便利である。【００６０】  復号側においては、復号した各整数値信号サンプルＹの最上位の″１″より下位のビット数ｎから整数部分の桁数ｎがわかるので、フレーム内の各差分信号Ｚの仮数部における端数部分のビット長ｈ＝２３−ｎがわかる。従って、復号した各ビット列Ｅｊに対し、フレーム内のサンプル番号ｉを順次走査してサンプル番号毎に振幅方向のビット位置ｊをｈと比較し、ｊ≦ｈならビット列Ｅｊのビット値をビット位置（ｉ，ｊ）に割り当てることで図１８の仮数部における端数部分を再構成することができる。この再構成された各サンプルの端数部分に対し、その上位側にサンプルに対応するｎビットの″０″を挿入することで差分信号の２３ビットの仮数部Ｍを再構成することができる。【００６１】  図１９は図１８の符号化方法を図２の圧縮符号化部１７に適用した場合の機能構成を示す。差分生成部１４（図２参照）からの差分信号Ｚの１フレーム分Ｚ０〜Ｚ１０２３が入力されると共に、対応する整数部分桁数ｎ０〜ｎ１０２３が記憶部１７Ｂに記憶される。制御部１７Ｃは各サンプルｉの整数部分桁数ｎｉに基づいて、入力差分信号Ｚｉの仮数部の上位ｎビットを除くｈ＝２３−ｎビットの端数部分をバッファ１７Ａに取り込む。これにより図１８に示した仮数部における端数部分の配列が得られる。次に、制御部１７Ｃは振幅方向のビット位置ｊ（＝０〜ｈｍａｘ−１）においてフレーム方向にサンプルを走査し、ｈ≧ｊを満足するビットを抽出してビット列Ｅｊを得て、圧縮部１７Ｄに与える。バッファ１７Ａ、記憶部１７Ｂ、制御部１７Ｃはビット列生成手段を構成している。圧縮部１７Ｄはビット列Ｅｊを可逆圧縮符号化して符号Ｃｂを出力する。【００６２】  図２０は図１９の圧縮符号化部１７に対応する図７における差分信号復号化手段としての伸張部２３の機能構成を示す。受信された符号Ｃｂは復号化部２３Ｄで復号されてビット列Ｅｊが得られる。一方、桁計算部２１Ａ（図７）からの整数桁数ｎの１フレーム分ｎ０〜ｎ１０２３が記憶部２３Ｂに記憶され、制御部２３Ｃはサンプル番号ｉの順に対応する端数桁数ｈｉ＝２３−ｎｉからｈｉ≧ｊを満足するビット位置（ｉ，ｊ）に対し、ビット列Ｅｊから順に１つずつビットを分配してバッファ２３Ａ内に配列記憶することを繰り返すことにより、図１８の端数部分のビット配列が得られる。１フレームについての全ビット列Ｅｊ，ｊ＝０〜ｈｍａｘ−１のビット配列が終了すると、制御部２３Ｃはバッファ２３Ａ内の各サンプルｉに対応した端数部分の上位側にｎｉビットの″０″を挿入して差分信号の仮数部を生成し、差分信号Ｚとして合成部２４（図７）に与える。バッファ２３Ａ、記憶部２３Ｂ、制御部２３Ｃは再構成手段を構成している。【００６３】  図１８の差分信号の仮数部の符号化においては、各ビット位置ｊでフレーム方向にビットを集めてビット列Ｅｊとし、符号化する場合を示したが、ビット位置の走査方法の他の例を以下に説明する。図２１ではサンプルの振幅方向の予め決めた複数ビット幅に渡って、ビット位置ｊの最後のサンプルのビットからビット位置ｊ−１の最初のサンプルのビット位置に続けて走査してビットを集め、複数のビット列Ｅ２，Ｅ１８，．．．を生成している。従って、得られるビット列Ｅｊの数は端数部分の最大ビット数ｈｍａｘより少なくなる。このビット走査においても、各サンプルｉのｈｉ＜ｊとなるビット位置はスキップする。このようなビット走査を行っても、各サンプルｉの端数部分桁数はｈｉ＝２３−ｎｉからわかるので、復号側においてはビット列Ｅｊのビットを前述と同様に分配していくことにより端数部分のビット配列を再構成することができる。【００６４】  図２２は更に他のビット走査の例を示す。図２１ではビット位置ｊのフレームの終わりからビット位置ｊ−１のフレームの始めに連続させることを複数ビット幅繰り返して走査したのに対し、ここではその複数ビット幅を振幅方向にＭＳＢ側から走査し、各サンプルｉのそのビット幅の終わりから次のサンプルｉ＋１のビット幅の始めに続けて操作することをフレームの最後のサンプルまで繰り返す。この例においても、条件ｈｉ＜ｊとなるビット位置はスキップされる。
図２３は図１８のビット走査における例外動作を説明するためのものである。切捨てによって整数部分がゼロになってしまう場合、即ちＥ−Ｅ０が負になる場合には指数部も含めて全３２ビットを符号化して送る必要がある。そこで、図２３に示すように、サンプルｉ＝３の整数部分がゼロであった場合（従ってｎ＝０）は、図２の圧縮部１７においてこのサンプルｉ＝３を仮数部のビット走査から除外して別途符号化する。【００６５】  入力信号サンプルＸが整数から変換された浮動小数点形式の信号サンプルであった場合の、元の整数の桁数と切り捨てた整数値の桁数が異なる場合、例えば図９Ｂ，１０Ｂで説明したように、２４ビット整数をそのまま浮動小数点とした信号サンプルを入力とし、１６ビットの整数に切り捨てて符号化した場合、差分信号の仮数部の端数部分の桁のうち、上位８桁は非ゼロとなり得るが、それ以外はゼロとなる。このような入力信号サンプルＸを符号化する場合に、例えば図１３の手法を使えば、ビット列Ｅ０〜Ｅ７は非ゼロとなり得るが、それより下位のビット列Ｅ８〜Ｅ２１は全て″０″となるので、効率的な符号化が可能である。同様に、図２１、２２の手法を使っても効率的な符号化が可能なことは容易に理解される。【００６６】  例えばオーディを信号の加工などで必要に応じて行われるように、２４ビットの整数値信号サンプルを１．５倍してから浮動小数点形式の信号に変換し、１６ビットの整数に切り捨てて符号化する場合、２４ビット整数値信号サンプルを１．５倍すれば少なくと小数点以下第１位が非ゼロとなり得るビットになる。即ち、図１４Ｂに示すサンプルＸの仮数部ＭＸの小数点ＰＤ以下第１位が非ゼロとなりえる。そのため、差分信号の仮数部ＭＺの非ゼロとなり得る領域は下位側に１ビット増加して９ビットになるが、この場合でも、その９ビットより下位側は全て″０″となるので、図１８、２１、２２、２３の手法を使って効率的な符号化が可能となる。また、全てゼロでなくても非ゼロ（即ち″１″）の頻度が桁ごとに偏る場合があるので、偏りに合わせて適応的に可逆符号化を適用することもできる。【００６７】  いずれの場合にも、差分信号の仮数部における端数部分のＭＳＢ側からの非ゼロとなり得る桁数がそろうので、効率的に圧縮符号化できる。
上述の図１８〜２３の仮数部の符号化方法は図２に基づく第１実施形態に適用する例として説明したが、図１４Ａ〜１７で説明した１６ビット整数値に切り捨て処理を行う場合にも適用できる。その場合は、図１６の圧縮部１７を図１９のように構成し、図１７の伸張部２３を図２０の伸張部のように構成すればよい。
また、端数部分の桁数が同じになるようにサンプルを並び替えてスキャンしてもよい。例えば桁数が２３となるサンプルだけを集め、次に桁数が２２となるサンプルを集め、順次桁数が小さくなるサンプルを集める。この並び替えの逆は追加情報がなくても一意に決まり、スキャンするサンプルの数の管理が容易になる。
第５実施形態
前述の第４実施例ではフレーム毎に差分信号Ｚの仮数部Ｍの端数部分のＭＳＢを同一位置にそろえて、サンプル列方向にビット列を抽出し、符号化する例を示した。第５実施例では、非ゼロとなり得る端数部分のＬＳＢを同一ビット位置にそろえて整数値のサンプル列とし、サンプル列方向の冗長性を除いて圧縮符号化を行うもので、図２の符号化装置１００に適用した場合の符号化装置の構成例を図２４に示す。【００６８】  図２と異なる点は圧縮符号化部１７の構成である。図２４に示すように、圧縮符号化部１７は、端数部分抽出部１７Ｅと、フレーム内平均部１７Ｆと、減算器１７Ｇと、符号化部１７Ｄ１、１７Ｄ２とから構成されている。差分生成部１４からの差分信号Ｚは端数部分抽出部１７Ｅで各サンプルの仮数部Ｍから下位ｈ＝２３−ｎビットの端数部分を１つの整数値サンプルＦとして抽出する。フレーム内平均部１７Ｆは各フレーム毎にフレーム内の抽出された整数値サンプルの平均値Ｆａｖｅを計算し、符号化部１７Ｄ１で符号化して符号列Ｃｂ１を出力する。平均値Ｆａｖｅと各整数値サンプルＦとの差を誤差サンプルΔＦとして減算器１７Ｇで求め、その誤差サンプルΔＦを符号化部１７Ｄ２で予測符号化を行い、予測誤差を可逆圧縮符号化して符号列Ｃｂ２を出力する。予測パラメータは別途補助情報として送ってもよいし、符号化装置と復号化装置で共通に適応的に更新してもよい。【００６９】  図２５は図２４に対応する復号化装置の例を示す。この構成は、図８の復号化装置における伸張部２３の構成を変更したものである。この実施形態では、伸張部２３は伸張部２３Ｂ，２３Ｃと、加算部２３Ｄと組立て部２３Ａとから構成されている。伸張部２３Ｂは、受信した符号列Ｃｂ１を伸張復号化してフレームごとの平均値Ｆａｖｅを出力する。伸張部２３Ｃは受信した符号列Ｃｂ２を伸張復号化して予測誤差を求め、更に予測復号化を経て誤差サンプルΔＦを出力する。誤差サンプルΔＦは平均値Ｆａｖｅと加算部２３Ｄで加算され、整数値サンプルＦが得られる。組立て部２３Ａはこの整数値サンプルＦと、伸張部２１の桁数計算部２１Ａからの桁数ｎとを使って差分信号Ｚを組み立てる。得られた差分信号Ｚと、整数値信号サンプルＹの浮動小数点形式信号サンプルＹ’とから、図８の場合と同様にして信号サンプルＸが合成される。【００７０】  この第４実施形態は第３実施形態にも適用でき、その場合は、図１６及び１７における圧縮符号化部１７と伸張部２３をそれぞれ図２４及び２５における圧縮符号化部１７と伸張部２３で置き換えればよい。
コンピュータによる実施形態
図２、図９、図１２、図１６、図２４に示した符号化装置１００は図２６に示すような、バス６８で互いに接続されたＲＡＭ６１，ＣＰＵ６２，ハードディスク６３、ＲＯＭ６４、送受信部６５、入出力部６６、オーディオ・ビデオ入出力部６７などを有するコンピュータ６００により機能させてもよい。【００７１】  ＲＯＭ６４にはコンピュータの起動に関するプログラムが格納されており、ハードディスク６３にはコンピュータの動作システムプログラムが格納されている。この発明の符号化装置１００の機能構成を実行するプログラムは予めＣＤ−ＲＯＭ又はＤＶＤなどの記録媒体７１からＣＤ／ＤＶＤドライブ６６によりハードディスク６３に読み込んでおくか、通信回線を通して送受信部６５によりダウンロードしてハードディスク６３に読み込んでおく。
符号化する浮動小数点形式のディジタル信号サンプルＸの系列は例えばオーディオ・ビデオ入出力部６７により外部から取り込んで、バッファとして動作させるハードディスク６３に一時記憶する。符号化を開始するには、符号化を実行するプログラムをハードディスク６３からＲＡＭ６１に読み込んで、その実行プログラムをＣＰＵ６２により実行する。符号化結果である符号Ｃａ，Ｃｂ（又はＺ），Ｃｃ等は送受信部６５により通信回線を通して送信してもよいし、ＣＤ／ＤＶＤドライブ６６によりＣＤ又はＤＶＤの記録媒体に記録保存してもよい。【００７２】  図８、図１１、図１３、図１７、図２６に示した復号化装置２００を図２４のコンピュータで実施する場合も同様に、復号化装置の機能構成を実行するプログラムをハードディスク６３に格納しておき、送受信部６５で通信回線から受信した符号Ｃａ，Ｃｂ（又はＺ），Ｃｃに対し復号プログラムを実行する。復号結果は表示器７３及びスピーカ７４に再生出力する。
この発明は音楽信号のみならず、音声信号、画像信号などに対しても適用することができる。
【図１】
2004114527.tif 000004
【図２】
2004114527.tif 000005
【図３】
2004114527.tif 000006
【図４】
2004114527.tif 000007
【図５】
2004114527.tif 000008
【図６】
2004114527.tif 000009
【図７】
2004114527.tif 000010
【図８】
2004114527.tif 000011
【図９】
2004114527.tif 000012
【図１０】
2004114527.tif 000013
【図１１】
2004114527.tif 000014
【図１２】
2004114527.tif 000015
【図１３】
2004114527.tif 000016
2004114527.tif 000017
2004114527.tif 000018
【図１６】
2004114527.tif 000019
【図１７】
2004114527.tif 000020
【図１８】
2004114527.tif 000021
【図１９】
2004114527.tif 000022
【図２０】
2004114527.tif 000023
【図２１】
2004114527.tif 000024
【図２２】
2004114527.tif 000025
【図２３】
2004114527.tif 000026
【図２４】
2004114527.tif 000027
【図２５】
2004114527.tif 000028
【図２６】
2004114527.tif 000029
【手続補正書】
【提出日】平成16年11月30日(2004.11.30)
【手続補正００１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【請求項１】（ａ）浮動小数点形式の第１信号サンプルを絶対値が小さくなるように切捨てを行って整数形式の第２信号サンプルに変換する過程と、
（ｂ）上記整数形式の第２信号サンプルを可逆圧縮して第１符号列を生成して出力する過程と、
（ｃ）上記整数形式の第２信号サンプルと上記浮動小数点形式の第１信号サンプルとの差分に対応する浮動小数点形式の差分信号を生成する過程と、
（ｄ）上記浮動小数点形式の差分信号の、上記整数形式の第２信号サンプルの最上位の１より下位のビット数により決まる非ゼロになり得るビット領域に対応する第２符号列を生成して出力する過程、
とを含む浮動小数点形式ディジタル信号可逆符号化方法。
【請求項２】請求項１記載の符号化方法において、上記過程（ｄ）は、上記差分信号の、上記非ゼロになり得るビット領域を可逆圧縮して上記第２符号列を生成する過程を含む。
【請求項３】請求項２記載の符号化方法において、上記非ゼロになり得るビット領域は、上記第１信号サンプルの仮数部における小数点以下の端数部分である。
【請求項４】請求項２記載の符号化方法において、上記過程（ａ）は、
（ａ−１）上記第１信号サンプルの複数サンプル区間毎にその区間内の上記浮動小数点形式の第１信号サンプルの指数部の最大値を検出する過程と、
（ａ−２）上記区間内の上記第１信号サンプルの整数値に変換後の最大桁数が予め決めた値と成るように上記区間内の第１信号サンプルの上記指数部の値をそれぞれ上記検出した最大値に基いて決めた調整値だけ調整する過程と、
（ａ−３）上記指数部が調整された浮動小数点形式の上記区間内の第１信号サンプルを、上記整数形式に変換する過程と、
（ａ−４）上記調整値と対応した調整情報を符号化して補助符号を生成する過程、
とを含み、上記過程（ｄ）は上記補助符号も出力する。
【請求項５】請求項２記載の符号化方法において、上記整数形式の第２信号サンプルのビット数ｂＩは上記浮動小数点形式の第１信号サンプルの仮数部のビット数ｂＭ以下であり、
上記第２符号列の生成過程は、上記整数形式の第２信号サンプルの最上位の１より下位のビット数に対応して決まる上記第１信号サンプルの仮数部における非ゼロになり得る多数部分の領域を、上記仮数部のビット数ｂＭと上記第２信号サンプルのビット数ｂＩとの差のビット数の上位側ビット領域と、残りの下位側ビット領域とに分けてそれぞれ可逆圧縮し、それらの符号を上記第２符号列として出力する過程を含む。
【請求項６】請求項２記載の符号化方法において、上記過程（ｄ）は、フレーム毎にフレーム内の上記差分信号のサンプルの仮数部における非ゼロとなり得るビット領域である端数部分をそれらの最上位ビットをそろえて配置し、少なくともサンプル方向にビットを選択して複数のビット列を生成し、それぞれの上記ビット列を可逆圧縮して上記第２符号列を生成する過程を含む。
【請求項７】請求項１記載の符号化方法において、上記ステップ（ｃ）は、フレーム毎にフレーム内の上記差分信号の端数部分を整数値サンプルとするサンプル列の平均値を求め、それぞれの整数値サンプルの値から上記平均値を減算した信号に対し、サンプル方向に予測を行い、その予測誤差を可逆圧縮符号化するとともに、上記平均値を符号化して上記第２符号列とする過程である。
【請求項８】（ａ）第１符号列を復号伸張して整数形式の第１信号サンプルを生成する過程と、
（ｂ）上記第１信号サンプルの最上位の１より下位のビット数に応じて決まる非ゼロになり得る桁数に基いて、第２符号列から浮動小数点形式の差分信号を生成する過程と、
（ｃ）上記整数形式の第１信号サンプルを浮動小数点形式の第２信号サンプルに変換する過程と、
（ｄ）上記浮動小数点形式の第２信号サンプルと上記浮動小数点形式の差分信号を合成して浮動小数点形式の第３信号サンプルを生成する過程、
とを含む浮動小数点形式ディジタル信号復号化方法。
【請求項９】請求項８記載の復号化方法において、上記差分信号を生成する過程（ｂ）は、上記第２符号列を復号伸張して上記非ゼロになり得る桁の端数部分を生成し、上記端数部分を使って上記浮動小数点形式の差分信号を生成する過程である。
【請求項１０】請求項９記載の復号化方法において、補助符号を復号して調整情報を生成する過程と、上記整数形式の第１信号サンプル又は上記合成信号に対し、上記調整情報により桁調整する過程とを含む。
【請求項１１】請求項９記載の復号方法において、上記第２符号列は第１符号系列と第２符号系列とを含み、
上記差分信号の生成過程（ｂ）は、
（ｂ−１）上記整数形式の第１信号サンプルのビット数と上記浮動小数点形式の第３信号サンプルの仮数部のビット数との差のビット数の上位側ビット領域に上記第１符号系列を復号伸張する過程と、
（ｂ−２）上記第２符号系列を下位側ビット領域に復号伸張する過程と、
（ｂ−３）上記上位側ビット領域の下位側に上記下位側ビット領域を付加して仮数部の端数部分として上記差分信号を生成する過程、
とを含む。
【請求項１２】請求項９記載の復号化方法において、上記過程（ｂ）は、
（ｂ−１）フレーム毎に上記第２符号列を復号伸張して複数のビット列を得る過程と、
（ｂ−２）フレーム内のサンプル方向におけるサンプル位置とサンプル内の振幅方向における位置で規定されるビット位置を少なくともサンプル方向に走査して各ビット位置が対応する上記整数形式の第１信号サンプルの最上位の１より下位のビット数により決まる端数部分のビット長内にあるビット位置に各上記ビット列のビットを分配してフレーム内の差分信号の端数部分を再構成する過程と、
（ｂ−３）各上記端数部分の上位側に上記対応する第１信号サンプルの上記最上位の１より下位のビット数だけゼロを挿入して各差分信号の仮数部を再構成することにより、上記差分信号を生成する過程、
とを含む。
【請求項１３】請求項８記載の復号化方法において、上記過程（ｂ）は、上記第２符号列を伸張復号してフレームごとのサンプルの平均値とフレーム内の各サンプルに対応する予測誤差から平均値が除かれた信号を得る過程と、上記平均値と平均値が除かれた信号を加算して端数部分を生成する過程と、上記端数部分の上位側に、上記整数値の最上位の１より下位のビット数だけ０を挿入して差分信号の仮数部を生成する過程とを含む。
【請求項１４】入力された浮動小数点形式の第１信号サンプルを絶対値が小さくなるように切捨てを行って整数形式の第２信号サンプルに変換する整数化部と、
上記整数形式の第２信号サンプルが入力され、これを可逆圧縮して第１符号列を生成する第１圧縮部と、
上記整数形式の第２信号サンプルと上記浮動小数点形式の第１信号サンプルとの差分に対応する浮動小数点形式の差分信号を生成する差分生成部と、
上記浮動小数点形式の差分信号の、上記整数形式の第２信号サンプルの最上位の１より下位のビット数に応じて決まる非ゼロになり得るビット領域に対応する第２符号列を生成して出力する第２符号列生成手段、
とを含む浮動小数点形式ディジタル信号可逆符号化装置。
【請求項１５】請求項１４に記載の符号化装置において、上記第２符号列生成手段は、上記差分信号を可逆圧縮し、圧縮結果を上記第２符号列として出力する第２圧縮部を含む。
【請求項１６】請求項１５記載の符号化装置において、
上記第１ディジタル信号サンプルの複数サンプル区間毎にその区間内の上記浮動小数点形式の第１ディジタル信号サンプルの指数部の最大値を検出し、上記区間内の上記第１ディジタル信号サンプルの整数値に変換後の最大桁数が予め決めた値となるように上記区間内の第１ディジタル信号サンプルの上記指数部の値をそれぞれ上記検出した最大値に基いて決めた調整値だけ調整する桁調整部と、
上記調整値と対応した調整情報を符号化して補助符号を生成出力する補助符号化部、
とを含む。
【請求項１７】請求項１５記載の符号化装置において、上記整数形式の第２信号サンプルのビット数ｂＩは上記浮動小数点形式の第１信号サンプルの仮数部のビット数ｂＭ以下であり、
上記第２圧縮部は、上記整数形式の第２信号サンプルの最上位の１より下位のビット数に対応して決まる上記第１信号サンプルの仮数部における非ゼロになり得る端数部分の領域中の、上記仮数部のビット数ｂＭと上記第２信号サンプルのビット数ｂＩとの差のビット数の上位側ビット領域を可逆圧縮符号化して第１符号系列を生成する第１圧縮符号化部と、上記端数部分の上記上位側ビット領域の下位側のビット領域を可逆圧縮符号化して第２符号系列を生成する第２圧縮符号化部とを含み、それら第１及び第２符号系列は上記第２符号列として出力される。
【請求項１８】請求項１５記載の符号化装置において、上記差分生成部は、フレーム毎にフレーム内の上記差分信号のサンプルの仮数部における非ゼロとなり得るビット領域である端数部分をそれらの最上位ビットをそろえて配置し、少なくともサンプル方向にビットを選択して複数のビット列を生成するビット列生成主段を含み、上記第２圧縮部は上記ビット列を可逆圧縮して上記第２符号列を生成する。
【請求項１９】請求項１５記載の符号化装置において、上記差分生成部は、フレーム毎にフレーム内の上記差分信号の端数部分を整数値サンプルとするサンプル列の平均値を求める平均値算出部と、それぞれの整数値サンプルと上記平均値との誤差を求める減算器と、上記誤差をサンプル方向に予測を行い、予測誤差を可逆圧縮符号化するとともに、上記平均値を符号化して上記第２符号列とする符号化部とを含む。
【請求項２０】第１符号列が入力され、これを復号伸張して整数形式の第１信号サンプルを生成する第１伸張部と、
上記第１信号サンプルの最上位の１より下位のビット数に応じて決まる非ゼロになり得る桁数に基いて、第２符号列から浮動小数点形式の差分信号を生成する差分信号復号手段と、
上記整数形式の第１信号サンプルが入力され、これを浮動小数点形式の第２信号サンプルに変換する浮動小数点化部と、
上記浮動小数点形式の第２信号サンプルと上記浮動小数点形式の差分信号が入力され、これらを合成して浮動小数点形式の第３信号サンプルを生成する合成部と
を有する浮動小数点形式ディジタル信号復号化装置。
【請求項２１】請求項２０記載の復号化装置において、上記差分信号復号手段は、上記第２符号列を復号伸張して上記非ゼロになり得る桁の端数部分を生成し、上記端数部分を使って上記浮動小数点形式の差分信号を生成する手段である。
【請求項２２】請求項２１記載の復号化装置において、補助符号を復号して調整情報を生成する補助復号部と、上記整数形式の第１信号サンプル又は上記合成信号に対し、上記調整情報により桁調整する桁補正部とを含む。
【請求項２３】請求項２０記載の復号化装置において、上記第２符号列は第１符号系列と第２符号系列とを含み、
上記差分信号復号手段は、上記整数形式の第１信号サンプルのビット数と上記浮動小数点形式の第３信号サンプルの仮数部のビット数との差のビット数の上位側ビット領域に上記第２符号系列を復号伸張する第３伸張部と、上記第２符号系列を下位側ビット領域に復号伸張する第４伸張部と、上記上位側ビット領域の下位側に上記下位側ビット領域を付加して仮数部の端数部分として上記差分信号を生成する合成部、とを含む。
【請求項２４】請求項２０記載の復号化装置において、上記差分信号復号手段は、フレーム毎に上記第２符号列を復号伸張復号して複数のビット列を得る復号化部と、フレーム内のサンプル方向におけるサンプル位置とサンプル内の振幅方向における位置で規定されるビット位置を少なくともサンプル方向に走査して各ビット位置が対応する上記整数形式の第１信号サンプルの最上位の１より下位のビット数により決まる端数部分のビット長内にあるビット位置に各上記ビット列のビットを分配してフレーム内の差分信号の端数部分を再構成し、各上記端数部分の上位側に上記対応するサンプルの最上位の１より下位のビット数だけゼロを挿入して各差分信号の仮数部を再構成し、上記差分信号を生成する再構成手段とを含む。
【請求項２５】請求項２０記載の復号化装置において、上記差分信号復号手段は、上記第２符号列を伸張復号してフレームごとのサンプルの平均値とフレーム内の各サンプルに対応する誤差を得る伸張復号部と、上記平均値と各誤差を加算して端数部分を生成する加算部と、上記端数部分の上位側に、上記第１サンプルの最上位の１より下位のビット数だけ０を挿入して差分信号の仮数部を生成する手段とを含む。
【請求項２６】請求項１乃至７のいずれかに記載した浮動小数点形式ディジタル信号可逆符号化方法の各過程をコンピュータに実行させるための符号化プログラム。
【請求項２７】請求項８乃至１３のいずれかに記載した浮動小数点形式ディジタル信号復号化方法の各過程をコンピュータに実行させるための復号化プログラム。
【請求項２８】請求項２６又は２７に記載したプログラムを記録したコンピュータ読み取り可能な記録媒体。




【国際調査報告】
2004114527.tif 000030
2004114527.tif 000031
2004114527.tif 000032
2004114527.tif 000033