(57)【特許請求の範囲】
【請求項１】
２m ビットで表されるデジタル値に変換された音波形データの圧縮方式において、
ビット圧縮に用いる差分計算パラメタを格納しておく差分計算パラメタ格納部と、
ビット圧縮した差分データと非圧縮の差分データを格納する圧縮データ格納部と、
前記差分計算パラメタを用いて、前記音波形データを入力して差分データをとり、該差分データをビット圧縮し、前記圧縮データ格納部に前記ビット圧縮した差分データを出力する圧縮手段と、
前記差分データを圧縮した際の圧縮情報を作成する圧縮情報作成手段と、
１ピッチの時間内で最も差分の合計が小さくなるような時間差を計算して求めた時間差パラメタと、差分をとる順序を１ピッチの時間内の差分の合計が最も小さくなるような順序を求めた差分順序パラメタと、元の音波形データの差分データが元の音波形データのビット数の１／２n の長さのビット（但し、１≦ｎ≦ｍ−１）で表せるデータが最も多くなるような定数を求めた倍率パラメタの内、事前に設定されている少なくとも１つの差分計算パラメタについて、前記音波形データを入力して、求める差分計算パラメタに応じた差分データを計算し、該計算結果に基づいて、最適な差分計算パラメタを求め、求めた差分計算パラメタを前記差分計算パラメタ格納部に格納する差分計算パラメタ設定手段とを有し、
前記圧縮手段は、前記差分計算パラメタ格納部に格納された差分計算パラメタを用いて前記音波形データの差分データを求め、該差分データの内、元の音波形データのビット数の１／２n の長さのビットで表せる差分データは元の音波形データの長さの１／２n の長さのビットに圧縮し、前記圧縮データ格納部に前記ビット圧縮した差分データを出力し、元の音波形データのビット数の１／２n の長さのビットで表せない差分データは非圧縮のまま、前記圧縮データ格納部に出力し、
前記圧縮情報作成手段は、圧縮情報ファイルを作成し、何番目の差分データを圧縮したかと、前記圧縮した差分データの圧縮パターンを識別可能にするビットを前記圧縮情報ファイルに出力することにより、音波形データのロスレス圧縮を行うことを特徴とする音波形データ圧縮方式。
【請求項２】
請求項１において、前記差分データをとる手段は、立体音響生成用の類似の音波形データが複数別個に存在する場合は、いずれか一つの音波形データを元にして、他のいずれか一つの音波形データとの差分データをとることにより、比較される音波形データのロスレス圧縮を行うことを特徴とする音波形データ圧縮方式。
【請求項３】
請求項１において、前記差分データをとる手段は、音波形データが周期波形である時は、音波形データの最初のピッチとそれ以降のピッチとの差分データをとることにより、音波形データのロスレス圧縮を行うことを特徴とする音波形データ圧縮方式。
【請求項４】
請求項２または請求項３において、差分をとる際に、元の音波形データに乗じると、元の音波形データのビット数の１／２n の長さのビットで表せる差分データが最も多くなるような定数を求める手段と、請求項２または請求項３の差分データをとる手段に替えて、該定数を比較する音波形データに乗じたものと比較されるデータの差分データをとる手段を有することにより、音波形データのロスレス圧縮を行うことを特徴とする音波形データ圧縮方式。
【請求項５】
２m ビットで表されるデジタル値に変換された音波形データの圧縮方式において、
コンピュータに、
ビット圧縮に用いる差分計算パラメタを用いて、前記音波形データを入力して差分データをとり、該差分データをビット圧縮し、前記ビット圧縮した差分データを出力する圧縮ステップと、
前記差分データを圧縮した際の圧縮情報を作成する圧縮情報作成ステップと、
１ピッチの時間内で最も差分の合計が小さくなるような時間差を計算して求めた時間差パラメタと、差分をとる順序を１ピッチの時間内の差分の合計が最も小さくなるような順序を求めた差分順序パラメタと、元の音波形データの差分データが元音波形データのビット数の１／２n の長さのビット（但し、１≦ｎ≦ｍ−１）で表せるデータが最も多くなるような定数を求めた倍率パラメタの内、事前に設定されている少なくとも１つの差分計算パラメタについて、前記音波形データを入力して、求める差分計算パラメタに応じた差分を計算し、該計算結果に基づいて、最適な差分計算パラメタを求め、求めた差分計算パラメタを前記差分計算パラメタとして記憶するステップと、
前記圧縮ステップにおいて、前記差分計算パラメタを用いて前記音波形データの差分データを求め、該差分データの内、元の音波形データのビット数の１／２n の長さのビットで表せる差分データは元の音波形データの１／２n の長さのビットに圧縮し、前記ビット圧縮した差分データを圧縮データ格納部に出力し、元の音波形データのビット数の１／２n の長さのビットで表せない差分データは非圧縮のまま、圧縮データ格納部に出力し、
前記圧縮情報作成ステップにおいて、圧縮情報ファイルを作成し、何番目の差分データを圧縮したかと、前記圧縮した差分データの圧縮パターンを識別可能にするビットを圧縮情報ファイルに出力する機能を実行するステップとを実行させるための圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項６】
２m ビットで表されるデジタル値に変換された音波形データを入力して、ビット圧縮に用いる差分計算パラメタを用いて、前記音波形データを入力して差分データをとり、該差分データをビット圧縮し、前記圧縮データ格納部に前記ビット圧縮した差分データを出力し、前記差分データを圧縮した際の圧縮情報を作成し、
１ピッチの時間内で最も差分の合計が小さくなるような時間差を計算して求めた時間差パラメタと、差分をとる順序を１ピッチの時間内の差分の合計が最も小さくなるような順序を求めた差分順序パラメタと、元の音波形データの差分データが元の音波形データのビット数の１／２n の長さのビット（但し、１≦ｎ≦ｍ−１）で表せるデータが最も多くなるような定数を求めた倍率パラメタの内、事前に設定されている少なくとも１つの差分計算パラメタについて、前記音波形データを入力して、求める差分計算パラメタに応じた差分データを計算し、該計算結果に基づいて、最適な差分計算パラメタを求め、
圧縮する際に、前記最適な差分計算パラメタを用いて前記音波形データの差分データを求め、該差分データの内、元の音波形データのビット数の１／２n の長さのビットで表せる差分データは元の音波形データの長さの１／２n の長さのビットに圧縮して出力し、元の音波形データのビット数の１／２n の長さのビットで表せない差分データは非圧縮のまま出力し、
圧縮情報を作成する際に、何番目の差分データを圧縮したかと、前記圧縮した差分データの圧縮パターンを識別可能にするビットを出力し、
前記出力した差分データと前記出力した圧縮情報を用いて、ビット圧縮された音波形データを復元する方式において、
コンピュータに、
前記ビット圧縮された音波形データの差分データを入力して、圧縮された時の各差分データの前記圧縮情報と圧縮時に用いられた前記最適な差分計算パラメタを基に、該圧縮情報が非圧縮を表す場合は、その差分データをそのままデータとして取り出し、該圧縮情報が圧縮を表す場合は、削減したビットを追加して圧縮前の差分データを求め、元の音波形データを復元する機能を実行するステップとを実行させるためのデータ復元プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、音波形データの圧縮方式に関し、圧縮前のデータと圧縮・復元後のデータが完全に一致するロスレス形態の新しい圧縮方式に関する。
【０００２】
【従来の技術】
コンピュータゲーム装置や各種の娯楽施設においては、様々な音響効果を必要とし、そのための音源を持つ必要がある。しかし、音響効果を高めるための音源として大量の音を保存する場合には、音波形データの量が膨大となるため、データを圧縮することが望ましい。従来の圧縮方式の例としては、圧縮・復元にロスを生じない、いわゆるロスレス圧縮として、パソコン向けのＬＨＡやＵＮＩＸ向けのＧＺＩＰがあるほか、圧縮率を重視したロッシー圧縮として、ＡＤＰＣＭ方式や特開昭58-60799写に開示された音声データの圧縮方法があげられる。
【０００３】
ＬＨＡやＧＺＩＰの方式は、汎用的なデータの圧縮方式であり、データ内の文字列の中で同じ文字が連続して出現する場合、連続する文字列を圧縮する。
ＡＤＰＣＭ方式と特開昭58-60799写に開示された音声データの圧縮方法は、音波形データの圧縮のための圧縮方式である。
【０００４】
【発明が解決しようとする課題】
従来例には、以下のような問題点がある。
まず、ロスレス圧縮であるＬＨＡやＧＺＩＰの方式は、汎用的なデータの圧縮方式で、連続する文字列を圧縮するため、音波形データのような連続的に変化するようなデータを圧縮するのには不向きであり、音波形データの圧縮率は低かった。
【０００５】
他方、ＡＤＰＣＭ方式と特開昭58-60799写の圧縮方法は、音声データの圧縮のための方式であるが、ＡＤＰＣＭ方式と音声データの圧縮方法は、音波形データの圧縮のための圧縮方式であるため、ＬＨＡやＧＺＩＰに比べ、音波形データの圧縮率は高いが、データを復元しても完全な形でデータを復元出来ないロッシー圧縮のため、高品質な音を再生するのには不向きであった。そのため、高音質な音声を圧縮するのに、音波形データの圧縮に向いたロスレス圧縮技術が必要とされている。
【０００６】
本発明は、前記の問題を解決するために、音波形データの圧縮率を高めた、データを元通りに完全な形で復元出来る音波形データ圧縮・復元に関するロスレス圧縮技術の提供と、それを実行するためのコンピュータのプログラムを記録した記録媒体を提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明は、前記の課題を、以下のような手段を用いて解決するものであり、特に立体音響生成する場合のように、同じ音源から発生して異なる位置で集音した互いに似ている音波形データや、音声のような周期波形を持つ音波形データを圧縮・保存するのに適している。
【０００８】
すなわち、本発明の音波形データの圧縮方式において、音波形データの差分データをとり、該差分データの内、元の音波形データのビット数の１／２n の長さのビットで表せる差分データは元の音波形データのビット数の１／２n の長さのビットに圧縮保存し、表せない差分データはそのまま保存し、更に、各差分データの圧縮情報を保存する手段を有することにより、音波形データを元通り復元可能なロスレス圧縮を行い、音波形データの高い圧縮（＝記録容量の削減）と高音質な音の再生を可能とする。ここでいう１／２n の長さのビットのｎは、元の音波形データのビット長が２m （２≦ｍ）ビットとすると、１≦ｎ≦ｍ−１である。
【０００９】
音波形データの中でも、特に、同一音源から同時に複数のマイク等の入力装置により音波形データを取得した場合等、類似の音波形データが複数別個に存在する場合は、いづれか一つの音波形データを元にして、他のいづれか一つの音波形データとの差分をとり、その差分データを前記のビット圧縮を行い、保存する。この場合、音波形データの類似性が高いため、差分データの値が小さく、音波形データの圧縮を非常に高めることが可能となる。
【００１０】
また、音声データ等のように、音波形データが周期波形である場合、音波形データの最初のピッチとそれ以降のピッチとの差分をとり、その差分データを前記のビット圧縮を行い、保存する。この場合、音波形データは、ピッチ単位に類似性の高い音波形データが繰り返す率が高いので、音声データ等の周期波形を持つ音波形データの圧縮率を高めることが出来る。
【００１１】
また、差分をとる際に、元の音波形データに乗じると、元の音波形データのビット数の１／２n の長さのビットで表せる差分データが最も多くなるような定数を求め、該定数を比較する音波形データと比較される音波形データに乗じたものの差分データをとり、元の音波形データのビット数の１／２n の長さのビットで表せる差分データに圧縮することにより、圧縮可能なデータを増やして、圧縮率を高めることが出来る。
【００１２】
音波形データの復元方式において、前記の音波形データ圧縮方式を用いて圧縮したデータを、前記圧縮された差分データと各差分データの圧縮情報と前記差分計算パラメタを基に、該圧縮情報が非圧縮を表す場合は、その差分データをそのままデータとして取り出し、該圧縮情報が圧縮を表す場合は、削減したビットを追加して差分データを元に復元することにより、音波形データを元データ通りに復元するロスレス圧縮を可能した。
【００１３】
【発明の実施の形態】
【００１４】
【実施例１】
音波形データを圧縮・復元する時の、本発明の基本的構成を図１を用いて説明する。
【００１５】
本発明の圧縮制御部３の差分計算パラメタ設定部３−１は、音声等の音波形データを、マイク等の入力装置１から直接入力するか、音波形データが格納された音波形データファイル２−１から入力し、圧縮率を高めるために、差分データ計算時に使用する各種パラメタを求め、パラメタを差分計算パラメタ格納部２−２に格納する。音波形データをマイク等により直接入力する場合は、音波形データを、一旦、記憶装置上の音波形データファイル２−１に格納する。
【００１６】
差分計算パラメタには、時間差パラメタ・差分計算順序パラメタ・倍率パラメタの３種類があり、単一で使用することも、任意の組み合わせで、順不同で使用することも可能である。
【００１７】
時間差パラメタとは、差分をとる際に、１ピッチの時間内で、最も差分の合計が小さくなるような時間差を計算したものであり、その時間差を用いて差分データをとり、その差分データを前記のビット圧縮を行い、保存する。この方法により、少し音波形データのピッチがずれているような類似の音波形データのズレを補正してから差分データをとり、圧縮することにより、音波形データの圧縮率を高めることが出来る。
【００１８】
差分計算順序パラメタとは、差分をとる際に、差分をとる順序を、１ピッチの時間内の差分の合計が最も小さくなるような順序を求めたものであり、その順序に従って差分をとることにより、差分をとる順序を変えない場合に比べ、差分データの値を小さくし、差分データの圧縮率を高めることが出来る。
【００１９】
倍率パラメタとは、差分をとる際に、２m ビットで表される元の音波形データに或る定数を乗じ、該音波形データとの差分データをとると、元の音波形データのビット数の１／２n の長さのビットで表せるデータが最も多くなるような定数を求めたものであり、該定数を比較する音波形データに乗じたものと比較される音波形データの差分データをとり、元の音波形データの１／２n の長さのビットで表せるデータに圧縮することにより、圧縮可能なデータを増やして、圧縮率を高めることが出来る。
【００２０】
差分計算用のパラメタを使用せず、単純なビット圧縮のみ行う場合は、差分計算パラメタ設定部を省略することが出来る。その場合、音波形データ２−１の入力は、差分計算・ビット圧縮部３−２が行い、ビット圧縮のみ行う。次に、差分計算・ビット圧縮部３−２で、差分計算パラメタを設定している場合は、それを使用して差分データを計算し、その差分データをビット圧縮し、圧縮データ格納部２−３に格納する。
【００２１】
圧縮されたデータを復元する場合は、本発明の復元制御部４のビット復元部４−１が、圧縮データ格納部２−３に格納された圧縮データと差分計算パラメタ格納部２−２に格納されたパラメタを元に、圧縮したデータを復元し、復元データを直接、音声出力部５に渡すか、一旦、復元データ格納部２−４に復元データを格納し、音声出力部５が該データを入力することにより、スピーカ等の音声出力機器６で音声を再現出来る。
【００２２】
音波形データの復元機能を持つ装置に関しては、差分計算パラメタ格納部２−２と圧縮データ格納部２−３のデータを、フロッピーディスクやＣＤ−ＲＯＭ等の可搬媒体メモリに記憶したものを読み込むか、または、回線経由で他のコンピュータのメモリ・記憶装置等からそれらのデータを読み込むことにより、音波形データの圧縮制御部３が組み込まれた装置とは独立した別の装置にすることが可能である。そのため、本発明を組み込んだ装置としては、音波形データの圧縮・復元の両方の機能を組み込んだ装置・圧縮機能のみ組み込んだ装置・復元機能のみ組み込んだ装置の３通りの装置の作成が可能である。なお、音声出力部５及び音声出力装置６は、復元機能を組み込んだ装置に組み入れてもよいし、別の装置にしてもよい。
【００２３】
本発明の音波形データを圧縮・復元する際の処理概要のフローを、それぞれ、図２〜図４を用いて説明する。
まず、音波形データを圧縮する場合について、図２のフローチャートを用いて説明する。ステップＳ１で、差分計算パラメタを求めるか判断する。どの差分計算パラメタを使用するかは、事前に設定しておく。差分計算パラメタを求める場合は、ステップＳ２に進み、差分計算パラメタ設定部３−１が、音波形データ２−１を入力して、最適な差分計算パラメタを求め、それを差分計算パラメタ格納部２−２に格納する。音波形データを、マイク等の音声入力装置から直接入力する場合は、一旦、音波形データを音波形データ格納部２−１に格納する。ステップＳ２の処理が終わると、ステップＳ３に進み、音波形データと差分計算パラメタを元に、差分データを計算し、ビット圧縮を行い、圧縮データ格納部２−３に格納する。差分計算パラメタを使用しない場合は、ステップＳ４に進み、音波形データを元に、差分を計算し、ビット圧縮を行い、圧縮データ格納部２−３に格納する。
【００２４】
圧縮する際に使用する差分計算パラメタの設定について、図３のフローチャートを用いて説明する。
差分計算パラメタには、時間差パラメタ・差分計算順序パラメタ・倍率パラメタの３種類があり、どれか１つを使用するか、幾つかを組み合わせて使用することが出来る。
【００２５】
まず、ステップＳ１０で、時間差パラメタを求めるかどうかを判断し、求める場合は、ステップＳ１１で時間差パラメタを求める。類似の音波形データが複数ある場合や、周期波形の場合、音波形データのピッチ単位でみると、１ピッチの時間内で少し時間のズレを修正すれば、差分データの値が小さくなり、圧縮出来るデータが増える。時間差パラメタは、圧縮出来る差分データが最も多くなるような時間差を求めたものである。求めた時間差パラメタは、差分計算パラメタ格納部２−２に格納する。時間差パラメタを求めない場合は、ステップＳ１２に進む。
【００２６】
時間差パラメタの求め方の例は、次の通りである。比較のベースとなる音波形データファイルのデータの１ピッチ内のｉ番目のデータをＹsrc,i とし、圧縮するファイルのデータの１ピッチ内のｉ番目のデータをＹdest,iとすると、Ｙsrc,i とＹdest,iの時間差ｄを考慮した差分δi は、式１の（１）式のようになる。
【００２７】
【数１】
0003787986.tif 000002
【００２８】
１ピッチ内の差分の合計は、（２）式のようになる。
【００２９】
【数２】
0003787986.tif 000003
【００３０】
時間差ｄの最適値の求め方は、例えば、音波形データの１ピッチを一定時間単位に１００に分割してデータを作成している場合は、時間差ｄを−５０〜５０について（２）式によりΠを計算し、Πが最少となる時間差ｄを求める。
【００３１】
時間差を用いて、差分データを（１）式で計算する場合、時間差がｍとすると、ｍがプラスの時は、ｉが１からｍまでは、Ｙsrc,i-d は１番目より前のデータとなり、比較するデータが無い。反対に、ｍがマイナスの時は、ｉがｉ−ｍ＋１以降のＹsrc,i-d に比較するデータはない。比較するデータが無い場合には、Ｙsrc,i-d ＝０と見なして計算する。例えば、時間差が５０・ｉが１の時、（１）式のＹsrc,i-d はＹsrc,-49 となり、該当するデータがないが、その時はＹsrc,i-d ＝０と見なして計算する。該当するデータがない場合、Ｙsrc,i-d ＝０と見なすのではなく、ｍがプラスの時は、Ｙsrc,i-d の最後のｍ個は、Ｙdest,iと比較されずに残り、ｍがマイナスの時は、Ｙsrc,i-d の最初のｍ個は、Ｙdest,iと比較されずに残るので、ｉ−ｄ＜１となった時は、Ｙsrc,i-d をＹsrc,i-d+n として計算し、ｉ−ｄ＞ｎとなった時は、Ｙsrc,i-d をＹsrc,i-d-n として計算することにより、残ったデータと比較して差分データを求めてもよい。
【００３２】
次に、ステップＳ１２で、差分計算順序パラメタを求めるかどうかを判断し、求める場合は、ステップＳ１３で差分計算順序パラメタを求める。差分を順番にとるのではなく、差分をとる順序を、全体の差分が最も小さくなるような順序を求めて、その順序で差分をとることにより、差分データの値が小さく、圧縮される差分データを多くすることが可能となる。差分計算順序パラメタは、このように、全体の差分が最も小さくなるような順序を求めたものである。求めた差分計算順序パラメタは、差分計算パラメタ格納部２−２に格納する。差分計算順序パラメタを求めない場合は、ステップＳ１４に進む。
【００３３】
差分計算順序パラメタの求め方の例は、次の通りである。差分をとる全組み合わせについて（２）式に示すようにΠを計算し、Πを小さい順にソートする。最もΠが小さい組み合わせを、最初の順序とする。その組み合わせを、Ｙsrc0・Ｙdest0 とすると、次に、Ｙsrc0かＹdest0 が元データとなる最もΠが小さい組み合わせを求める。ｎ番目の順序は、Ｙsrc0からＹsrc n-1 、Ｙdest0 からＹdest n-1の中から最もΠが小さい組み合わせを求める。
【００３４】
次に、ステップＳ１４で、倍率パラメタを求めるかどうかを判断し、求める場合は、ステップＳ１５で倍率パラメタを求める。音波形データに定数を乗じると、圧縮出来る差分データの数が変動する。圧縮出来る差分データが最も多くなるような定数を求めて、その定数を比較元の音波形データに乗じ、その差分をとることにより、圧縮される差分データを多くすることが可能となる。倍率パラメタは、このように、圧縮出来る差分データが最も多くなるような定数を求めたものである。求めた倍率パラメタは、差分計算パラメタ格納部２−２に格納する。倍率パラメタを求めない場合は、処理を終了する。
【００３５】
差分計倍率パラメタの求め方の例は、次の通りである。
【００３６】
【数３】
0003787986.tif 000004
【００３７】
倍率パラメタをαとすると、（３）式を用いて、差分データを求める。時間差パラメタを使用しない場合は、（３）式の時間差ｄを０として、差分データを求める。αの最適値の求め方は、差分データが８ビットで表現されており、１ピッチを１００に分割して音波形データをとっている場合、例えば、０．２〜１．５について、０．０１毎にδi を計算し、｜δi ｜＜８となる差分データの数が最も多くなるαの値を求める。｜δi ｜＜８の８という数字は、差分データが８ビットで表現されており、１／２圧縮を行う場合、８ビットの１／２の４ビットで表現するためには、符号部１ビットを除くと、残りは３ビットであり、３ビットでは、２3 未満の数字しか表現出来ないため、１／２圧縮を行うには、｜δi ｜＜８となる差分データとする必要があるからである。差分データを８ビットより大きいビットで表現する場合は、当然、表現するビット数に応じて８という数字は変わる。例えば、差分データを１６ビットで表現し、１／２圧縮・１／４圧縮する場合、各圧縮可能な件数をカウントし、圧縮出来るビットの総合計が最も小さくなるαの値を求める。αは、小数点付きの数字のため、δi を計算すると小数点付きの数字となるが、小数点以下は切り捨てる。差分データの小数点以下を切り捨てても、（４）式を用いて復元することにより、データを完全な形で復元することが出来る。
【００３８】
【数４】
0003787986.tif 000005
【００３９】
次に、圧縮された音波形データを復元する場合について、図４のフローチャートを用いて述べる。ステップＳ２０で、差分計算パラメタ格納部２−２に使用しているパラメタがあるかどうかチェックし、差分計算パラメタを使用している場合はステップＳ２１で、差分計算パラメタと圧縮データを入力して、ビット復元部４−１がデータを復元する。差分計算パラメタを使用していない場合は、ステップＳ２３で、圧縮データのみを元にして、ビット復元部４−１がデータを復元する。復元されたデータは、ビット復元部４−１により、復元データ格納部２−３に格納されるか、直接、音声出力部５に渡され、スピーカ等の音声出力装置６を通して、音を再生する。
【００４０】
次に、差分データをビット圧縮・復元する例を、図５を用いて説明する。
図５の圧縮の例では、８ビットの連続した差分データを１／２圧縮・復元する例をあげる。各１バイトのデータは、データがプラスかマイナスかを示す符号ビットである１ビットとデータの大きさを表す７ビットから構成されている。圧縮する場合は、符号ビットは圧縮出来ないので、そのまま残し、データ部の７ビットの内、上位４ビットが、データがマイナスの場合は、１１１１であると削除し、下位３ビットを残す。上位４ビットが、データがプラスの場合は、００００であると削除し、下位３ビットを残す。それ以外の場合は、圧縮出来ない。復元する場合は、部号ビットが１の場合は、マイナスデータと見なし、符号ビットの次に４ビット１１１１を追加し、部号ビットが０の場合は、プラスデータと見なし、符号ビットの次に４ビット００００を追加し、データを復元する。
【００４１】
削除する上位４ビットは、復元時に削減したビットを元通り戻すことが出来ればよいので、データがマイナスの場合は、００００であると削除し、データがプラスの場合は、１１１１であると削除するようにしても良い。
【００４２】
１つの音波形データをもっと大きいビットで表す場合、例えば、１６ビットの音波形データで、圧縮後、非圧縮・１／２圧縮・１／４圧縮の３パターンにする場合は、削除・追加するビット数は、それぞれ、０・８・１２となる。
【００４３】
次に、どの差分データを圧縮したかを表す圧縮情報の保存の例を、図６を用いて説明する。
例１は、差分データが８ビットで１／２圧縮した場合で、圧縮情報を圧縮したデータ中に持つ例である。圧縮データには、圧縮出来なかったデータと圧縮出来たデータが混在しており、各データの先頭にどのような圧縮をしたかを示す圧縮フラグが付加されている。この例では、非圧縮か１／２圧縮しかないので、圧縮フラグは、非圧縮か１／２圧縮を区別するのに必要な１ビットで表すことが出来る。この例では、０の時は非圧縮で、１の時は１／２圧縮である。この圧縮データを復元する際は、まず、先頭の１ビットの圧縮フラグをチェックし、非圧縮ならば、次の８ビットをデータとして取り出し、そのまま復元データとし、その次の１ビットの圧縮フラグをチェックして、１／２圧縮ならば、継続する４ビットを取り出して、その４ビットの符号ビットに応じて元の８ビットのデータに復元する。このようにして、全データを復元する。
【００４４】
１つの音波形データをもっと大きいビットで表す場合は、圧縮フラグのビットは、圧縮パターンを区別するのに必要な最少のビット数を用いる。例えば、１６ビットの音波形データで、圧縮後、非圧縮・１／２圧縮・１／４圧縮の３パターンにする場合は、圧縮フラグのビットは、３パターンの区別に必要な２ビットとなる。
【００４５】
圧縮パターンは必ずしも、１／２n （元データが２m の場合、１≦ｎ≦ｍ−１）毎としなくても、一定のビット単位、例えば４ビット単位としてもよい。
例２は、差分データが８ビットで１／２圧縮した場合で、圧縮情報を圧縮したデータ外に、別ファイルとして持つ例である。この例の場合、差分データを圧縮したファイル中には、非圧縮データと圧縮データが区切りなく、連続して入っており、この圧縮ファイルだけでは、圧縮データを復元出来ない。圧縮データを区別するために、圧縮情報ファイルを作成し、何番目のデータを圧縮したかが保存されている。数字を保存するのに必要なバイトは、差分データに入っているデータ数を表せるのに足りるバイトである。この圧縮情報ファイルには、圧縮したデータが何番目のデータであるかが保存されている。圧縮率が５０％を上回るような場合は、非圧縮データが何番目のデータであるかを保存してもよい。この情報に基づいて、１データとして取り出すビットが決まるので、復元が可能となる。圧縮情報ファイルは、音波形データが８ビットで、非圧縮・１／２圧縮しかない場合は１つでよいが、音波形データが１６ビットで、非圧縮・１／２圧縮・１／４圧縮する場合は、いずれか２つのパターンの圧縮情報ファイルを別々に作成すればよい。つまり、圧縮パターン数−１個の圧縮ファイルを、各圧縮パターン毎に分けて作成する。
【００４６】
【実施例２】
図７は、記録済みの類似の音波形データが、複数ある場合の実施例である。図８の（１）は、複数の類似の音波形データの例である。
【００４７】
差分計算パラメタ設定部３−１は、比較のベースとなる音波形データファイル２−１１と比較される音波形データファイル２−１２を入力し、時間差パラメタ・差分計算順序パラメタ・倍率パラメタの内、事前に使用すると決めたパラメタに関して、パラメタを求め、差分計算パラメタ格納部２−２に格納する。差分計算パラメタが求まると、音波形データファイル２−１１・２−１２と差分計算パラメタを元に、差分計算・ビット圧縮部３−２が、音波形データ２−１２を圧縮し、圧縮データ格納部２−３に格納する。
【００４８】
圧縮データ格納部２−３を復元するには、該ファイルと差分計算パラメタと比較のベースとなった音波形データ２−１１を元に、音波形データを復元し、復元データ格納部２−４に格納するか、直接、音声出力部５に復元データを渡すかして、音声出力装置６によって、音声を再生する。
【００４９】
記録済みの類似の音波形データファイルが複数あり、その中の1つの音波形データファイルをベースにして、他の音波形データファイルとの差分データを求める点を除いて、圧縮・復元する方法は、時間差パラメタ・差分計算順序パラメタ・倍率パラメタの少なくとも1つの差分計算パラメタを求め、該差分計算パラメタを用いて差分データを圧縮・復元する点において、実施例１と同様である。請求項２の方式に基づく音波形データの圧縮・復元の特徴は、類似の音波形データファイルの１つが比較のベースとなるため、ベースとなった音波形データファイル自体の圧縮は行わないということである。
【００５０】
【実施例３】
図９は、音波形データが、周期波形の場合の実施例である。図８の（２）は、周期波形の音波形データの例である。
【００５１】
この例の場合、比較のベースとなる音波形データは、音波形データファイル２−１内にある音波形データの最初の１ピッチであり、比較される音波形データは、２番目以降の音波形データのピッチである。つまり、最初の１ピッチと２番目以降の音波形データの差分データを順番に求めて圧縮する。但し、１番目と２番目、２番目と３番目というように隣接するピッチの差分データを求めてもよい。それ以降の処理については、圧縮時に入力となる音波形データファイルが１つとなり、復元時に入力するファイルは、差分計算パラメタ格納部２−２と圧縮データ格納部２−３だけであること以外、実施例２と同じなので、説明は省略する。類似の音波形ファイルを複数入力する場合に比べ、復元時に比較する元となる圧縮されていない音波形ファイルを入力する必要はない。
【００５２】
周期波形の音波形データのピッチの差分データを求める点を除いて、圧縮・復元する方法は、時間差パラメタ・差分計算順序パラメタ・倍率パラメタの少なくとも1つの差分計算パラメタを求め、該差分計算パラメタを用いて差分データを圧縮・復元する点において、実施例１と同様である。請求項３の方式に基づく音波形データの圧縮・復元の特徴は、音波形データファイルが１つであり、最初の１ピッチが比較のベースとなるため、ベースとなった１ピッチのみ圧縮は行わないということである。
【００５３】
本発明である音波形データ圧縮・復元方式とその動作を実現するプログラムを記録した記録媒体は、図１０の記録媒体の例で示すように、ＣＤ−ＲＯＭやフロッピーディスク等の可搬型記憶媒体だけでなく、回線先の他の記憶装置や、コンピュータのハードディスクやＲＡＭ等の記憶媒体のいずれでもよく、プログラム実行時には、プログラムは、ローディングされ、主メモリ上で実行される。
【００５４】
【発明の効果】
本発明によれば、立体音響を生成する場合のように、同じ音源から発生して異なる位置で集音した類似の音波形データや音声等の周期波形を持つ音波形データの効率的なロスレス圧縮が可能となる。この方法で圧縮されたデータは、ロスレス圧縮なので、音質は損なわれず、高品質な音の再生が可能となる。また、データの圧縮率が高いため、大量のデータを記録可能で、データの復元に必要な伸長速度も速い。
【図面の簡単な説明】
【図１】  本発明の基本構成図である。
【図２】  本発明の圧縮処理の概要のフローチャートである。
【図３】  本発明の差分計算パラメタの設定のフローチャートである。
【図４】  本発明の復元処理の概要のフローチャートである。
【図５】  本発明の差分データのビット圧縮・復元の例である。
【図６】  本発明の圧縮情報保存の例である。
【図７】  類似の音波形データファイルが複数ある場合の実施例である。
【図８】  音波形データの例である。
【図９】  音波形データが周期波形の実施例である。
【図１０】記憶媒体の例である。
【符号の説明】
１        マイク等の音声入力装置
２−１    音波形データ記録ファイル
２−２    差分計算パラメタファイル
２−３    圧縮データファイル
２−４    復元データファイル
３        圧縮制御部
３−１    差分計算パラメタ設定部
３−２    差分計算・ビット圧縮部
４        復元制御部
５        音声出力部
６        スピーカ等の音声出力装置
７        回線先の記憶装置
８        ＣＤ−ＲＯＭやフロッピーディスク等の可搬型記憶媒体
８−１    ＣＤ−ＲＯＭ
８−２    フロッピーディスク
９        コンピュータ
１０      コンピュータ上のＲＡＭ／ハードディスク等の記憶媒体
【図１】
0003787986.tif 000006
【図２】
0003787986.tif 000007
【図３】
0003787986.tif 000008
【図４】
0003787986.tif 000009
【図５】
0003787986.tif 000010
【図６】
0003787986.tif 000011
【図８】
0003787986.tif 000012
【図１０】
0003787986.tif 000013
【図７】
0003787986.tif 000014
【図９】
0003787986.tif 000015