(57)【特許請求の範囲】
【請求項１】
電子装置において予測コーディングを利用して圧縮された音声信号を伸長する方法であって、
該電子装置は、
処理装置と、
デコーディング済み音声信号の複数のフレームを記憶するサンプル・バッファと、
前記複数のフレームがそれぞれ記憶される前記サンプル・バッファ内の位置を指示するメモリ・ポインタの配列と、該配列中の１つのメモリ・ポインタを特定するインデックスと、を記憶する記憶装置と、を備え、
前記方法は、前記処理装置が、
後で予測デコーディングに使用するデコーディング済み音声信号のフレームを、前記インデックスによって特定される前記メモリ・ポインタが指示する前記サンプル・バッファ内の位置に、順に記憶するステップと、
前記インデックスをインクリメントすることによって、前記サンプル・バッファに記憶されている前記予測デコーディングに使用するフレームをより新しいフレームにシフトするステップと、を備えること特徴とする方法。
【請求項２】
前記インクリメントしたインデックスが前記配列の範囲を超えたとき、該インデックスを前記配列中の最初のメモリ・ポインタを特定するように初期化するステップをさらに備えることを特徴とする請求項１に記載の方法。
【請求項３】
前記サンプル・バッファに新しいデコーディング済み音声信号のフレームが記憶されるごとに前記インデックスをインクリメントすることを特徴とする請求項１又は２に記載の方法。
【請求項４】
少なくとも２つのデコーディング済み音声信号のフレームが、前記サンプル・バッファに記憶され、記憶された前記少なくとも２つのフレームを利用して前記圧縮された音声信号を伸長することを特徴とする請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記少なくとも２つのフレームは、前記インデックスによって特定される前記配列中の第２のメモリ・ポインタが指示する位置に記憶された、予測デコーディングのため処理されるフレームに先行するフレームと、前記配列中の前記第２のメモリ・ポインタの１つ前の第１のメモリ・ポインタが指示する位置に記憶された、前記先行するフレームに先行するフレームと、を含むことを特徴とする請求項４に記載の方法。
【請求項６】
予測デコーディングのため処理されるフレーム（ｆｒn）は２つの部分に分割され、第１の部分はエイリアス部分として記憶され、また第２の部分は、前記処理されるフレーム（ｆｒn）に先行するフレーム（ｆｒn-1）の処理に関連して記憶されたエイリアス部分と合計され、かつこの合計の結果が前記先行するフレーム（ｆｒn-1）の記憶位置を指示する前記配列中の第２のメモリ・ポインタが指示する位置に記憶されることを特徴とする請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記音声信号の圧縮で判定された予測エラーの情報を受信し、前記圧縮された音声信号を伸長する際の予測デコーディングにおいて前記予測エラーの情報を利用して、デコーディングされた音声信号における予測エラーを除去することを特徴とする請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記予測エラーは周波数領域に変換された音声信号に基づいて判定されることを特徴とする請求項７に記載の方法。
【請求項９】
伸長される前記音声信号を音声信号として再生するために音声アプリケーションが利用され、前記デコーディング済み音声信号のフレームを記憶するために前記音声アプリケーションには少なくとも１つの音声バッファが割当てられ、前記少なくとも１つの音声バッファは圧縮された音声信号の伸長に利用され、前記メモリ・ポインタの配列中の少なくとも１つは、前記少なくとも１つの音声バッファを指示することを特徴とする請求項１から６のいずれか一項に記載の方法。
【請求項１０】
圧縮された音声信号を伸長する伸長装置であって、
デコーディング済み音声信号の複数のフレームを記憶するサンプル・バッファと、
前記複数のフレームがそれぞれ記憶される前記サンプル・バッファ内の位置を指示するメモリ・ポインタの配列と、該配列中の１つのメモリ・ポインタを特定するインデックスと、を記憶する記憶装置と、
前記サンプル・バッファに記憶された前記フレームに基づいて、予測コーディングで圧縮された音声信号を伸長するために予測デコーディングを実行する手段と、
後で予測デコーディングに使用するデコーディング済み音声信号のフレームを、前記インデックスによって特定される前記メモリ・ポインタが指示する前記サンプル・バッファ内の位置に、順に記憶する手段と、
前記インデックスをインクリメントすることによって、前記サンプル・バッファに記憶されている前記予測デコーディングに使用するフレームをより新しいフレームにシフトする手段と、
を備えることを特徴とする伸長装置。
【請求項１１】
請求項１０に記載の伸長装置であって、
前記インクリメントしたインデックスが前記配列の範囲を超えたとき、該インデックスを前記配列中の最初のメモリ・ポインタを特定するように初期化する手段をさらに備えることを特徴とする伸長装置。
【請求項１２】
請求項１０又は１１に記載の伸長装置であって、
前記伸長装置は、前記サンプル・バッファに新しいデコーディング済み音声信号のフレームが記憶されるごとに、前記インデックスをインクリメントするよう構成されることを特徴とする伸長装置。
【請求項１３】
請求項１０から１２のいずれか一項に記載の伸長装置であって、前記サンプル・バッファ（３）は、少なくとも２つのデコーディング済み音声信号のフレームを記憶するための少なくとも２つのバッファを備え、前記予測デコーディングを実行する手段は、前記少なくとも２つのフレームを使用することを特徴とする伸長装置。
【請求項１４】
請求項１３に記載の伸長装置であって、前記少なくとも２つのフレームは、前記インデックスによって特定される前記配列中の第２のメモリ・ポインタが指示する位置に記憶された予測デコーディングのため処理されるフレームに先行するフレームと、前記配列中の前記第２のメモリ・ポインタの１つ前の第１のメモリ・ポインタが指示する位置に記憶された前記先行するフレームに先行するフレームと、を含むことを特徴とする伸長装置。
【請求項１５】
請求項１０から１４のいずれか一項に記載の伸長装置であって、予測デコーディングのため処理されるフレーム（ｆｒn）を、第１の部分がエイリアス部分として記憶される２つの部分へと分割するための手段と、
第２の部分を、前記処理されるフレーム（ｆｒn）に先行するフレーム（ｆｒn-1）の処理に関連して記憶されるエイリアス部分と合計するための手段と、
前記先行するフレーム（ｆｒn-1）の記憶位置を指示する前記配列中の第２のメモリ・ポインタが指示する位置に合計結果を記憶するための手段と、を備えることを特徴とする伸長装置。
【請求項１６】
請求項１０から１５のいずれか一項に記載の伸長装置であって、前記音声信号の圧縮で判定された予測エラーを受信する手段と、前記圧縮された音声信号の伸長中の予測デコーディングにおいて前記予測エラーを利用して、デコーディングされた音声信号における予測エラーを除去する手段と、を備えることを特徴とする伸長装置。
【請求項１７】
デコーディング済み音声信号の複数のフレームを記憶するサンプル・バッファと、
前記複数のフレームがそれぞれ記憶される前記サンプル・バッファ内の位置を指示するメモリ・ポインタの配列と、該配列中の１つのメモリ・ポインタを特定するインデックスと、を記憶する記憶装置と、
前記サンプル・バッファに記憶された前記フレームに基づいて、予測コーディングで圧縮された音声信号を伸長するために予測デコーディングを実行する手段と、
後で予測デコーディングに使用するデコーディング済み音声信号のフレームを、前記インデックスによって特定される前記メモリ・ポインタが指示する前記サンプル・バッファ内の位置に、順に記憶する手段と、
前記インデックスをインクリメントすることによって、前記サンプル・バッファに記憶されている前記予測デコーディングに使用するフレームをより新しいフレームにシフトする手段と、
を備えることを特徴とする電子装置。
【請求項１８】
請求項１７に記載の電子装置であって、
前記インクリメントしたインデックスが前記配列の範囲を超えたとき、該インデックスを前記配列中の最初のメモリ・ポインタを特定するように初期化する手段をさらに備えることを特徴とする電子装置。
【請求項１９】
請求項１７又は１８に記載の電子装置であって、
前記サンプル・バッファは、前記インデックスによって特定される前記配列中の第２のメモリ・ポインタが指示する位置に予測デコーディングのため処理されるフレームに先行するフレームと、前記配列中の前記第２のメモリ・ポインタの１つ前の第１のメモリ・ポインタが指示する位置に前記先行するフレームに先行するフレームと、を含む少なくとも２つのデコーディング済み音声信号のフレームを記憶し、
前記予測デコーディングを実行する手段は、前記少なくとも２つのフレームを使用することを特徴とする電子装置。
【請求項２０】
請求項１９に記載の電子装置であって、
音声アプリケーションを実行するための手段であって、前記音声アプリケーションは伸長される音声信号を再生するように構成される手段と、
前記フレームを記憶するために前記音声アプリケーションには少なくとも１つの音声バッファを割当てる手段と、
前記圧縮された音声信号の伸長に前記少なくとも１つの音声バッファを利用するための手段と、
前記第１のメモリ・ポインタおよび前記第２のメモリ・ポインタのうちの少なくとも１つに、前記少なくとも１つの音声バッファを指示する値を記憶する手段と、
を備えることを特徴とする電子装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は添付の請求項１のおいて書き部分に記載のオーディオ信号を伸長（decompression)する方法に関する。本発明は更に、請求項９のおいて書き部分に記載の伸長装置と、請求項１５のおいて書き部分に記載の電子装置に関する。
【背景技術】
【０００２】
音声(speech)信号のようなアナログ音声信号から圧縮された信号を形成し、圧縮された信号が通信システムで利用される通信方法によって受信側に送信される様々な音声コーディング・システムが使用されている。受信側ではこれらのコーディングされた信号に基づいて音声信号が形成される。送信される情報量は、例えばシステムにおけるこの圧縮された情報用に利用できる帯域幅、および送信段階で可能な圧縮の効率により影響される。
【０００３】
圧縮するには、例えば０．１２５ｍｓの間隔でアナログ信号のディジタル・サンプルが形成される。これらのサンプルは好適には、約２０ｍｓで形成されたサンプルの集合のような固定長の集合で処理され、これらにはコーディング操作が行われる。間隔がおかれたこれらの集合はまた、フレームと呼ばれる。
【０００４】
音声圧縮システムの場合、目的は利用できる帯域幅の範囲内でできるだけ良好な音質を提供することにある。この目的のため、音声信号、特に音声信号の周期的なプロパティが利用される。音声内の周期性は例えば音声コードの振動に起因するものである。標準的には、この振動の周期は２ないし２０ｍｓ程度である。先行技術の音声エンコーダのいくつかは、このような周期性を評価し、これを圧縮で利用するためにいわゆる長期予測（ＬＴＰ）を適用する。このように、圧縮段階で、圧縮される音声信号の部分（フレーム）が以前に圧縮された音声信号と比較される。記憶されたサンプル中にほとんど同一の信号が検出された場合は、検出された信号と圧縮される信号との時間差（タイムラグ）が判定される。更に、検出された信号および圧縮される信号のサンプルに基づいてエラー信号が形成される。このように、圧縮は好適には、ラグ情報とエラー信号だけが送信されるようにして実行される。受信側では、このラグに基づいて、記憶装置から適正なサンプルが検索され、エラー信号と結合される。
【０００５】
添付された図１は、先行技術による圧縮ブロック１０で使用される長期予測（ＬＴＰ）ブロックの簡略ブロック図を示す。圧縮される信号は周波数領域へと変換され、コーディング・エラー計算ブロックＦＳＳに送られる。予測ブロックＬＴＰでは、サンプル・バッファ（ＬＴＰバッファ）に記憶されている以前のサンプル・シーケンス（フレーム）ならびに圧縮される信号を利用して時間領域予測信号が形成される。予測信号は時間−周波数変換ブロックＭＤＣＴ内で周波数領域に変換され、１組の狭帯域信号が形成される。これらの狭帯域信号はコーディング・エラー計算ブロックＦＳＳに送られて、この周波数帯域に特有のコーディング・エラーの計算が行われる。このようにして、コーディング・エラー計算ブロックＦＳＳは各周波数帯域についてコーディング・エラーが送信される情報量を低減するのに充分に少ないか否かを判定する。そのような状況では、どの周波数帯域が予測された信号を使用し、予測信号を形成するために以前送信されたどのサンプル・シーケンスが使用されたかに関する情報、（例えば長期予測ブロックの順序のような）予測に使用されるパラメータに関する情報、およびそれぞれの周波数帯域内でのコーディング・エラーに関する情報が送信される。そうではない場合は、オリジナル信号のそれぞれの周波数帯域が送信される。長期予測は、異なる順序に対応する縮小率の集合を形成するためにいくつかの異なる順序で行うことができ、コーディング・エラーは最小のコーディング・エラーを生成する順序を検出するため、異なる順序について判定可能である。
【０００６】
時間領域信号を周波数領域信号に変換するための代替実施形態は、いくつかの帯域フィルタから構成されたフィルタ・バンクである。各フィルタの帯域幅は比較的狭く、フィルタ出力における信号強度の値は変換される信号の周波数スペクトルを示す。
【０００７】
更に、送信される信号は送信される情報を更に縮小するために量子化ブロックで量子化される。
【０００８】
圧縮ブロック１０で、サンプル・バッファも好適には以下の方法で周波数帯域に従って更新される。予測信号に基づいて形成されたこのような周波数帯域の量子化されたサンプルは、周波数−時間コンバータＩＭＤＣＴ内で時間領域に変換され、サンプル・バッファ内に記憶される。同様にして、予測が利用されなかった、圧縮される信号のこのような周波数帯域の量子化されたサンプル・シーケンスが、予測信号と結合されることなく時間領域に変換される。更に、時間領域に変換されたこれらのサンプル・シーケンスはサンプル・バッファ内に記憶され、圧縮される信号のより後のサンプル・シーケンスの予測のために利用される。圧縮の進行と共に、状況は異なる周波数帯域で変化し、予測信号を利用して周波数帯域の信号の一部と、予測なしで別の部分を圧縮することができることも付記しておく。
【０００９】
ここで、サンプル・バッファの更新についてより詳細に説明する。この例では、サンプル・バッファの長さは、例えばＭＰＥＧ−４音声コーディング・システムのバージョン１で利用されるような３つのフレームのサンプル・シーケンスの長さ（サンプルの量）に相当する（図２）。このように、サンプル・バッファの記憶領域は最新のフレームｆｒn並びに先行する２つのフレームｆｒn-1およびｆｒn-2を包含する。ＭＰＥＧ−４音声コーディング・システムではオブジェクト・タイプＡＡＣ  ＬＤ用に４つのフレームを使用することが提案されていることも付記しておく。新たなサンプル・シーケンス（１フレーム）がサンプル・バッファ内に記憶される段階では、Ｎ個のサンプルがサンプル・バッファ内でサンプル・シーケンスの左側に移動されるが、ここにＮはフレーム内に包含されているサンプル数に相当するものである。その後、周波数−時間コンバータＩＭＤＣＴは時間領域に変換されたサンプル・シーケンスの最初の側をサンプル・バッファ内の最新のフレームｆｒnに加算し（オーバーラップ加算）、かくしてこのフレームは、この段階で、最後から２番目のフレームの記憶用に使用される位置にあり、この位置に合計の結果も記憶される。その後、このフレームは最後から２番目のフレームｆｒn-1を構成する。エイリアス部分とも呼ばれる、時間領域に変換されたサンプル・シーケンスの他の側は、最新のフレームｆｒnとしてサンプル・バッファに記憶される。
【００１０】
受信段階では、圧縮された信号が伸長される。受信信号には信号の逆量子化が行われる。その後、圧縮に長期予測が利用された、受信され、逆量子化された信号のこのような部分は、コーディング・エラー除去ブロックに送られる。更に、伸長ブロックの長期予測ブロックでは、圧縮段階で利用されたサンプルに対応する、以前に処理された信号に基づいてサンプル・バッファ内に記憶されたこれらのサンプルを利用して予測信号が形成される。予測信号が周波数レベルに変換され、コーディング・エラー信号および予測信号が周波数領域内で結合される。上記の段階の後、伸長ブロックの出力はオリジナル信号にほぼ対応する信号を含むが、予測時に形成される可能性があるエラーと、量子化および逆量子化に起因するノイズと、により僅かなエラーを含む場合がある。予測が利用されないこのような信号は周波数−時間コンバータに送られ、そこで信号が時間領域に変換される。更に、圧縮ブロックの動作の説明に関連して前述したように、サンプル・バッファは伸長ブロックで更新される。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかし、先行技術によるサンプル・バッファの更新方法には、サンプルの移動が全てのフレームについて行われなければならないので移動に長時間を必要とするという欠点がある。このような理由から、伸長装置は、充分な高速度で伸長動作を行うのに充分な処理能力を有していなければならない。
本発明の目的は、より効率的に音声信号の伸長を行う方法を提供することにある。
【課題を解決するための手段】
【００１２】
本発明による伸長ブロックは、サンプル・バッファ内のデータを更新するためにその時点でバッファ内に必要な位置を指示するポインタを利用し、サンプル・バッファ内でサンプル・シーケンスを移動する必要はない。本発明による方法は、請求項１の特徴部分に記載されている特徴を有している。本発明による伸長ブロックは、請求項９の特徴部分に記載されている特徴を有している。本発明による電子装置は、更に請求項１５の特徴部分に記載されている特徴を有している。
【００１３】
本発明は先行技術の解決方法と比較して顕著な利点を呈するものである。本発明の方法を利用すれば、サンプル・バッファ内にサンプル・シーケンスを移動する必要がないので必要な処理能力が少なくて済む。更に、場合によっては別の既存の音声バッファを利用することが可能であり、その場合はサンプル・バッファをより簡単に実施することができる。
【図面の簡単な説明】
【００１４】
【図１】先行技術による伸長ブロックで実施される長期予測ブロックを示す図である。
【図２】サンプル・バッファを更新するための先行技術の方法のステップを示す図である。
【図３】本発明の好適な実施形態による方法で使用されるバッファ構造の概略図である。
【図４】本発明の好適な実施形態による伸長ブロックの概略ブロック・チャート図である。
【図５】本発明の好適な実施形態による電子装置の概略ブロック・チャート図である。
【発明を実施するための形態】
【００１５】
次に添付図面を参照して本発明をより詳細に説明する。
【００１６】
図３は本発明の有利な実施例による方法で使用されるバッファ構造の概略図である。図４は、本発明の有利な実施例による伸長ブロック１の概略ブロック図である。伸長ブロック１は例えば、圧縮された音声信号を好適には下記の方法で音声信号に変換するための、移動通信装置のような電子装置２（図５）の音声デコーダである。
【００１７】
本発明の第１の有利な実施形態では、電子装置２のメモリ手段３内にフレーム・サンプルを記憶するためのメモリ領域が割当てられている。この説明では以下でＬＴＰバッファ４と呼ばれるこのメモリ領域は、例えば４つのフレームのサンプルを記憶するために必要な記憶容量を備え、いわゆるリング・バッファとして形成されている。伸長ブロック１には、前述のメモリ領域内のその時点での適正なフレームを検出できるようにするメモリ・ポインタＰ１、Ｐ２、ＩＸも備えられている。これらのメモリ・ポインタは例えば、第１のメモリ・ポインタＰ１がＬＴＰバッファ４内にフレームのサンプルを記憶するために割当てられたメモリ領域の始端を指示し、また第２のメモリ・ポインタＰ２がこの記憶域内に第２のフレームのサンプルを記憶するために割当てられたメモリ領域の始端を指示するように実施することができる。このようにして、割当てられたメモリ領域内のどのポイントにその時点で必要なフレームのサンプルが記憶されているかを示すためにインデックスＩＸを使用することができる。これは、インデックスの値が０の場合には、最新のフレームに先行するｆｒn-1がＬＴＰバッファ４内の第２のフレームとして記憶され、このフレームに先行するフレーム（先行のフレームに先行するフレーム）は、ＬＴＰバッファ４の始端に記憶されるように実施することができる。インデックスが１の場合は、最新のフレームに先行するｆｒn-1がＬＴＰバッファ４内の第１のフレームとして記憶され、このフレームに先行するフレームはＬＴＰバッファ４のサンプル用に割当てられた別のメモリ領域内に記憶されるように実施することができる。このようなバッファ構造の１つが図３に示されている。図３の場合は、メモリ・ポインタＰ１はＬＴＰバッファ４内の先行する１つのフレームの前のフレームのサンプルのメモリ領域を指示し、またこれに対応して、第２のメモリ・ポインタＰ２はＬＴＰバッファ４内の先行するフレームのサンプルのメモリ領域を指示する。これらのメモリ・アドレスＰ１、Ｐ２の意味はインデックス値が変化すると共に変化する。
【００１８】
ＬＴＰバッファ４を指示するメモリ・ポインタＰ１、Ｐ２の必要な数は好適には予測に使用されるフレーム数に等しい。加えて、前述した１つのインデックスＩＸが必要である。ＡＡＣ  ＬＤオブジェクト形には３つのメモリ・ポインタが必要であり、本アプリケーションをファイルした時点で規定される別のＡＡＣオブジェクト形には、２つのメモリ・ポインタが必要である。メモリ・ポインタの使用は例えば、この場合のように、音声信号が伸長ではない他の処理ステップでも利用される音声バッファを、電子装置２で利用可能であるか否かの事実によって影響される。このようなバッファは例えば、圧縮された音声信号を再生するためのアプリケーション、または圧縮された信号を処理する他のアプリケーションで使用するように形成されていてもよい。このように、このような音声バッファを指示するためにメモリ・ポインタＰ１、Ｐ２を利用できる場合は、メモリ・ポインタＰ１、Ｐ２内に包含されているアドレス値は音声信号の伸長中に変更される。それには、音声バッファが記憶されているメモリ・アドレスに関する情報が伸長ブロック１に与えられる必要がある。実際のアプリケーションでは、例えば先行のフレームを記憶するために同じバッファを常時使用できないので、音声バッファの数は多分１より多い。このように、音声バッファは、各音声バッファが例えば以前のフレーム用の記憶位置として交互に使用されるように交番して使用される。このようなアプリケーションでも、インデックスＩＸはその時点でフレームの各部分がどの位置にあるかを示すために使用される。しかし、そのアプリケーションに単一の音声バッファしか割当てられていない場合は、伸長のために少なくとも１つの追加のサンプル・バッファを形成しなければならない。ある実施形態では、アプリケーションはその時点でアプリケーションによって利用される音声バッファのアドレスに関するデータ、および／または伸長ブロック１用に利用できる音声バッファのアドレスに関するデータを伸長ブロック１０に送信してもよい。
【００１９】
ここで本発明の有利な実施形態による方法でのメモリ・ポインタＰ１、Ｐ２およびインデックスＩＸの動作を、予測用の２つのフレームと、２つのフレームのサンプルを記憶するための少なくとも２つの音声バッファを使用した例に関して説明する。最初に、メモリ・ポインタＰ１、Ｐ２はあるメモリ・アドレスに初期設定され、インデックスＩＸが例えばゼロに設定される。第１のメモリ・ポインタＰ１は好適には、次の（最初の）フレームが記憶される空いている音声バッファの始端を指示するように初期設定され、また第２メモリ・ポインタＰ２は他の音声バッファの始端を指示するようにされる。音声バッファが２つである場合は、第１のメモリ・ポインタＰ１および第２のメモリ・ポインタＰ２を更新する必要はないが、常に同じアドレスを指示するように設定することができる。
【００２０】
更に、好適には予測およびバッファの更新用に２つの補助メモリ・ポインタＡＰ１、ＡＰ２を使用できる。第１の補助メモリ・ポインタＡＰ１は以前のフレームｆｒn-1を指示するためのものであり、対応して、第２の補助メモリ・ポインタＡＰ２は以前のフレームｆに先行するフレームｆｒn-2を指示するためのものである。バッファが更新される段階で、補助メモリ・ポインタＡＰ１、ＡＰ２およびインデックスＩＸが最初に更新される。以下では、このことをプログラミング言語であるＣ言語の構文を伴うプログラム・コードで説明する。
【００２１】
１）memory pointer past frame = memory pointer buffer[index & 0×1];
index++;
２）memory pointer frame preceding past one =
memory pointer buffer[index & 0×1];
【００２２】
インデックス値がまず０であった場合、最初の更新サイクルのポイント１）の後では１になる。最初の更新サイクルのポイント２）に関しては、インデックス値は変更されない。
【００２３】
４つのフレームの場合は、対応する原理を適用できるが、更にもう一度更新がなされ、インデックス・マスクとして使用される数（０×１）は異なる（０×３）。上記の数字のマーク０×１は１６ベースの数字（ヘクサ）を示す。
【００２４】
補助メモリ・ポインタＡＰ１、ＡＰ２およびインデックスＩＸを更新した後、例えばインデックス(memory pointer buffer[index & 0×1]）によって指示されたメモリ領域内の最新のフレームのサンプルを記憶することによって実際のサンプル・バッファを更新することができる。その後、補助メモリ・ポインタＡＰ１、ＡＰ２およびインデックスＩＸが再度更新されるまで、次のフレームの前に、好適には上記の１）、２）に基づき、補助メモリ・ポインタＡＰ１、ＡＰ２およびインデックスＩＸの同じ値で予測が行われる。第２の更新サイクル中に、音声バッファ内のそれぞれのポイントを指示する値が、以前のフレームのメモリ・ポインタ、および以前のフレームに先行するフレームのメモリ・ポインタ用に更新される。このようにして、メモリ・ポインタは常に適正な音声バッファを指示するように構成することができ、その場合、先行技術を用いた解決方法の場合のような範囲まで異なるバッファ間でサンプルを移動する必要はない。
【００２５】
しかし、利用できる音声バッファがない場合は、メモリ・ポインタＰ１、Ｐ２は伸長装置で使用されるサンプル・バッファを指示するように初期設定される。その後、メモリ・ポインタＰ１、Ｐ２を更新する必要はないが、好適にはこれらのポインタはサンプル・バッファ内の同じポイントを示す。このように、以前のフレーム、以前のフレームに先行するフレームなどの位置を検出して、それぞれのサンプル・バッファ内のサンプル中の適正なフレームを示すためにインデックスＩＸを使用することができる。メモリ・ポインタＰ１、Ｐ２およびインデックスＩＸを更新した後、例えばインデックス(memory pointer buffer[index & 0×1] = memory pointer buffer[0])によって指示されたメモリ領域内の最新のフレームを記憶することによって、実際のサンプル・バッファを更新することができる。その後、同じ値のメモリ・ポインタＰ１、Ｐ２およびインデックスＩＸで予測が行われるが、次のフレームの前に、好適にはポイント１）および２）に従って、メモリ・ポインタＰ１、Ｐ２およびインデックスＩＸが再び更新されるまで、メモリ・ポインタの意味は以前とは逆になる。その結果、第２の更新サイクル中に、ポイント１）におけるインデックスの値は１であり、フレームのメモリ・ポインタ用にメモリ・ポインタ・バッファの第２の値が獲得される(memory pointer buffer[1])。その後、インデックスは１だけインクリメントされて２になり、以前のフレームに先行するフレームのメモリ・ポインタ用にメモリ・ポインタ・バッファの最初の値が獲得される(memory pointer buffer[0])。第２の更新サイクル中にインデックスが再びインクリメントされると、インデックス値は奇数である。
【００２６】
実際には、例えば１バイト（＝８ビット）のような所定数のビットがインデックスＩＸに割当てられ、オーバーフロー状態ではインデックスはゼロに戻る。しかし、前述のマスクを利用してインデックスから余剰ビットが除去されるので、すなわち所定範囲の値しか利用できないので、ゼロに戻っても悪影響はない。予測に利用されるフレーム数が２の累乗である場合は、マスクによるビットの除去はＡＮＤ演算によって行うことができる。そうではない場合は、好適にはマスクの剰余（モジュロ）が使用される。
【００２７】
アプリケーションが最新フレームのサンプルの記憶に使用される音声バッファのアドレスを伸長ブロック１０に送信すると、伸長ブロックはこの音声バッファ・アドレスをインデックス（例えばmemory pointer[index & 0×1])によって示されるメモリ位置に設定する。このようにして、このメモリ位置は次の更新サイクルで、先行フレームの記憶位置を示すメモリ・アドレスになる。これに対応して、先行する更新サイクルで前のフレームを示したメモリ・アドレス（memory pointer buffer[(index + 1) & 0×1])は、この段階で前のフレームよりも先行するフレームの記憶位置を示す。
【００２８】
メモリ・アドレスは前述とは異なる態様でも実施できることは明らかである。更に、フレームの記憶位置は連続的である必要はない。その上、前述の補助バッファＡＰ１、ＡＰ２は必ずしも必要ではなく、予測ブロックはメモリ・ポインタＰ１、Ｐ２の記憶用に使用されるバッファから数値を検索することができる。この場合は、インデックスＩＸは音声バッファが更新された後に始めて更新される。それにも関わらず、各更新サイクル中に適正なフレームを指示するためにメモリ・ポインタＰ１、Ｐ２、およびインデックスＩＸを利用できることは必須であり、その際にバッファ間でこれらのフレームのサンプルを複写する必要はない。アプリケーションの音声バッファをＬＴＰバッファとして利用できないような状況下でのみ、最新フレームのサンプルがＬＴＰバッファ４からアプリケーションに複写される。対応する状況で、これは先行技術の方法でも実行できる筈であるが、本発明による方法ではフレームのサンプルの必要な複写量が少なくて済む。
【００２９】
ステレオのアプリケーションのように２チャネルまたはそれより多いチャネルが使用されるアプリケーションの場合は、異なるチャネルのサンプル・シーケンスをインターリーブすることが可能であり、このことは予測ブロックおよびメモリ・アドレスの動作に際しても考慮に入れなければならない。異なるチャネルの一時的に等しいサンプル・シーケンスはインターリーブ方式で、好適には同じフレーム内で送信される。このように、伸長ブロックでは、異なるチャネルのサンプル・シーケンスはフレームから分離される。簡明にするため、この説明では本発明を１チャネルの場合について例示する。
【００３０】
伸長される信号の、コーディングに長期予測が利用された部分はコーディング・エラー除去ブロック５に送られる。逆量子化ブロック８では、伸長される信号に逆量子化が施される。その上、伸長ブロックの長期予測ブロック６では、圧縮段階で使用されたサンプルに対応する、以前処理された信号に基づいて記憶されたサンプルを利用して予測信号が形成される。このように、伸長ブロック１では、好適には第１のメモリ・アドレスＰ１の値がインデックスＩＸを利用して検索され、その際に第１のメモリ・アドレスＰ１は前のフレームの先行フレームであるフレームを指示する。これに対応して、インデックスＩＸを使用して第２のメモリ・アドレスＰ２の値が検索され、その際に第２のメモリ・アドレスＰ２は伸長されるフレームの先行フレームであるフレームを指示する。
【００３１】
メモリ・アドレスＰ１、Ｐ２に基づいて、必要な数のサンプルがサンプル・バッファから検索され、予測信号を形成するために受信されたＬＴＰ係数を利用して、長期予測ブロック６内で長期予測が行われる。この予測信号は時間−周波数コンバータ７内で周波数領域に変換される。その後、コーディング・エラー除去ブロック５で、コーディング・エラー信号および予測信号が周波数領域内で結合される。次に信号は周波数−時間コンバータ９で時間領域に変換される。必要ならば、再構成された信号のサンプルが所定の長さに短縮される。このサンプル・シーケンスの最初の側は以前のフレームと関連して記憶されているエイリアス部分と合計され、合計結果が第２メモリ・ポインタＰ２によって示される記憶位置内のフレーム・サンプル内に記憶される。最新のサンプル・シーケンスのエイリアス部分はそのために割当てられた記憶位置に記憶されるが、これは必ずしもサンプル・バッファと関連している必要はない。
【００３２】
例えばインデックスＩＸの値を１だけインクリメントすることによってメモリ・ポインタも更新しなければならない。この時点で、インデックスＩＸの値が許容限度内にあるか否か、すなわち、サンプル・バッファ内のフレームを指示しているか否かが吟味される。インデックスＩＸの値が既に許容限度内にはない場合は、インデックスＩＸの値は例えば０のようなある初期値に設定され、これはサンプル・バッファの始端を示す。インデックスの更新後、第１のメモリ・アドレスＰ１は、次のフレームが伸長される場合、結果としてフレームｆｒn-2である、伸長されたばかりのフレームに先行するメモリ領域を指示する。これに対応して、第２のメモリ・アドレスＰ２は、次のフレームが伸長される場合、結果としてフレームｆｒn-1である、伸長されたばかりのフレームを指示する。
【００３３】
アプリケーションによっては、例えば音声信号の遮断されない再生を確実にするために、以前に伸長された所定数のフレームが、圧縮された音声信号を伸長する電子装置に記憶されるものもある。この場合は、記憶されたこれらのフレームも予測ブロックの動作に利用でき、別個のＬＴＰバッファは全く必要ない。このようなアプリケーションでは、第１のメモリ・ポインタＰ１と第２のメモリ・ポインタＰ２とがそれぞれのメモリ領域内に記憶されたフレームを指示するように設定される。
【００３４】
いずれにせよ、伸長ブロック１は最新のサンプルのエイリアス部分を記憶し、エイリアス部分をＬＴＰバッファに記憶するための別個のメモリ領域は必要ないが、それぞれのメモリを指示するメモリ・ポインタを配置することができ、それによって前述の動作を予測ブロックで実行することができる。
【００３５】
この実施例は本発明を適用するために最も不可欠な特徴だけを開示したものであり、実際のアプリケーションでは、電子装置２と伸長ブロック１とは前述の機能以外の他の機能をも備えていることは明らかである。本発明による圧縮、および伸長に関連して、短期予測、ホフマン・コーディング／デコーディングなどのような他のコーディング方式を採用することも可能である。
【００３６】
時間領域内の信号に関して、予測信号と実信号との相関も判定できる。この場合は、信号は周波数領域へと変換する必要はなく、変換ブロック７、９は必ずしも必要ない。このようにして、時間領域内の信号に基づいて、コーディング・エラーが判定される。
【産業上の利用可能性】
【００３７】
前述の音声信号圧縮／伸長段階は移動通信システム、衛星放送ＴＶシステム、ビデオ・オン・デマンド・システムなどのような様々な通信システムに応用できる。例えば、音声信号が全二重方式で送信される移動通信システムには、移動通信装置２および基地局などの双方において、一対の圧縮／伸長ブロック（ｃｏｄｅｃ）が必要である。
【００３８】
上記の圧縮ステップは必ずしも送信と関連するものでなく、圧縮された情報は後の送信用に記憶しておくことが可能である。更に、伸長ブロック１に送られる音声信号は必ずしも実時間の音声信号である必要はなく、伸長される音声信号は以前に記憶され、圧縮された音声信号に関する情報であってもよい。
【００３９】
本発明による方法のステップは、例えば電子装置２、すなわち当業者には公知であるマイクロプロセッサ、またはその類似物の制御手段１１内のプログラム・コードとして広範に実施することができる。
【００４０】
図５に示した電子装置２は更に、例えば無線部分１２、キーパッドもしくはキーボード１３、ディスプレイ１４、およびオーディオ手段１５をも備えている。
【００４１】
本発明はその他の態様でも、前述の実施形態のみに限定されるものではなく、添付の特許請求の範囲内で修正することができる。
【符号の説明】
【００４２】
１    伸長ブロック
２    電子装置
３    メモリ手段
４    ＬＴＰバッファ
５    コーディング・エラー除去ブロック
６    長期予測ブロック
７    時間−周波数コンバータ
８    逆量子化ブロック
９    周波数−時間コンバータ
Ｐ１    第１のメモリ・ポインタ
Ｐ２    第２のメモリ・ポインタ
ＡＰ１    第１の補助メモリ・ポインタ
ＡＰ２    第２の補助メモリ・ポインタ
【図１】
0004944161.tif 000002
【図２】
0004944161.tif 000003
【図３】
0004944161.tif 000004
【図４】
0004944161.tif 000005
【図５】
0004944161.tif 000006