(57)【要約】【課題】バッファにおける書き込み、読み出し制御を可変長扱いにすることにより、ビットクロックの周波数誤差に起因する再生音声サンプル数の過不足が発生しても、品質劣化を伴わずに再生音声を復号できる復号方法を提供する。【解決手段】音声サンプルカウンタ１０で１フレーム周期の再生音声サンプル数（可変フレーム長）を求め、再生音声用バッファ１２における復号音声サンプル列の書き込み位置が再生音声サンプル数の位置に達したピッチ周期で書き込みを停止し、ピッチ周期に関する復号音声サンプル列の書き込みが終了した位置を書き込み終了位置とし、再生音声用バッファ１２の先頭から再生音声サンプル数の位置までの復号音声サンプル列を可変長アナログ出力用バッファ２に複写し、再生音声用バッファ１２の復号音声サンプル列を再生音声サンプル数の位置までシフトして次の書き込み開始位置を更新する復号方法及び音声復号装置である。【選択図】　　　　図２
2004117761.tif 000002
【特許請求の範囲】
【請求項１】
フレーム同期信号に基づいてフレーム毎に復号した復号情報をバッファに記憶し、前記バッファからサンプリングクロックに基づいて復号情報を読み出して再生出力する復号方法であって、
前記フレーム同期信号における１周期の前記サンプリングクロック数をカウントしてサンプル数を求め、前記サンプル数に基づいて前記バッファにおける書き込み位置及び読み出し位置を制御することを特徴とする復号方法。
【請求項２】
フレーム同期信号に基づいてフレーム毎に復号した復号情報をバッファに記憶し、前記バッファからサンプリングクロックに基づいて復号情報を読み出して再生出力する復号方法であって、
前記フレーム同期信号における１周期の前記サンプリングクロック数をカウントしてサンプル数を求め、
前記復号情報を、設定された書き込み開始位置からフレーム毎に第１のバッファに書き込み、
前記第１のバッファにおける復号情報の書き込み位置が、前記第１のバッファにおける先頭から前記サンプル数の位置に達したなら、当該フレームに関する復号情報の書き込みを完了した時点で書き込みを停止し、前記フレームの書き込みが完了した位置を書き込み終了位置とし、
前記第１のバッファの先頭から前記サンプル数分の復号情報を第２のバッファに複写し、
前記第１のバッファの復号情報を前記サンプル数分だけシフトし、
前記書き込み終了位置から前記サンプル数を減算した位置を次の書き込み開始位置に設定して更新し、
前記第２のバッファに複写された前記サンプル数分の復号情報を前記サンプリングクロックに基づいて読み出して再生出力することを特徴とする復号方法。
【請求項３】
外部からのビットクロックに同期して、音声符号化情報ビット列を入力し、フレーム同期信号に基づいてフレーム毎に音声復号処理を行いピッチ周期毎に復号音声サンプル列を出力する音声復号手段と、
前記音声復号手段から出力される復号音声サンプル列を記憶し、前記ビットクロックとは異なるクロック発生源から発生されるサンプリングクロックに基づいて記憶している音声サンプルを再生音声サンプル列として出力するバッファ手段と、
前記バッファ手段から出力される再生音声サンプル列をアナログ変換して再生音声を出力する音声再生手段とを備える音声復号装置であって、
前記フレーム同期信号における１周期の前記サンプリングクロック数をカウントして再生音声サンプル数を求めるサンプル数カウント手段を設け、
前記バッファ手段が、
設定された書き込み開始位置を起点とし、前記音声復号手段の出力である復号音声サンプル列がピッチ周期毎に書き込まれる第１のバッファと、
フレーム毎に前記再生音声サンプル数に基づく可変長の音声サンプル列を保持し、前記サンプリングクロックに基づいて読み出して再生音声サンプル列として出力する第２のバッファと、
前記第１のバッファにおける復号音声サンプル列の書き込み開始位置の初期値を先頭に設定し、フレーム毎に、前記第１のバッファにおける復号音声サンプル列の書き込み位置が、前記第１のバッファにおける先頭から前記再生音声サンプル数の位置に達したなら、当該ピッチ周期に関する復号情報の書き込みを完了した時点で書き込みを停止し、前記ピッチ周期に関する復号音声サンプル列の書き込みが完了した位置を書き込み終了位置とし、前記第１のバッファの先頭から前記再生音声サンプル数分の復号音声サンプル列を前記第２のバッファに複写し、前記第１のバッファの復号音声サンプル列を前記再生音声サンプル数分だけシフトし、前記書き込み終了位置から前記再生音声サンプル数を減算した位置を次の書き込み開始位置に設定して前記第１のバッファを更新し、前記第２のバッファにおける読み出し位置を先頭に戻す制御手段とを具備するバッファ手段であることを特徴とする音声復号装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、分析合成符号化方式を用いた復号方法及び音声復号装置に係り、特にビットクロックの周波数誤差に起因する再生音声劣化を回避して再生音声品質を向上できる復号方法及び音声復号装置に関する。
【０００２】
【従来の技術】
従来より、音声通信装置では、音声信号の通信データ量を低減するために、送信側装置ではアナログの音声信号を符号化してデジタル情報に変換してから、無線或いは有線伝送路を介して送信し、受信側装置では、当該デジタルの符号化音声情報を受信し、復号化してアナログの再生音声信号を出力することが行われている。
【０００３】
従来の一般的な音声復号装置は、外部装置から供給されるビットクロックに従って音声符号化情報ビット列を取り込み、ビットクロックに同期するフレーム同期信号に基づいてフレーム毎に音声復号処理を行い、復号音声サンプル列をバッファに記憶させ、音声復号装置内で発生されるサンプリングクロックに同期して、上記バッファから復号音声サンプル列を読み出して、Ｄ／Ａ変換器でアナログ信号に変換し、アナログ再生音声を出力するものである。
【０００４】
従来の一般的な音声復号装置の一構成例について図５を使って説明する。図５は、従来の音声復号装置の構成例を示すブロック図である。
尚、以降の説明では、音声符号化速度は２４００ｂｐｓ、フレーム長は２０ｍｓ、再生音声のサンプリング周波数を８ｋＨｚと仮定して説明する。
従来の音声復号装置は、図５に示すように、音声復号器１と、アナログ出力用バッファ２′と、Ｄ／Ａ変換器３とから構成されている。
【０００５】
音声復号器１は、入力される音声符号化情報を復号し、デジタル情報である復号音声サンプル列を出力する一般的な復号器である。
具体的に音声復号器１は、外部装置から入力される１フレーム区間の開始を示すフレーム同期信号ａと、ビットクロック（例えば、２４００ｂｐｓ）ｂと、音声符号化情報ビット列ｃ（例えば、４８ビット／フレーム）を入力し、ビットクロックｂに同期して音声符号化情報ビット列ｃを取り込み、フレーム同期信号ａに基づいてフレーム毎に音声復号処理を行い、復号音声サンプル列ｅ（１６０サンプル／フレーム）を出力する。
尚、フレーム同期信号ａとビットクロックｂは同期しているものとする。
【０００６】
アナログ出力用バッファ２′は、音声復号器１から出力される復号された復号音声サンプル列を一時記憶するバッファであり、音声復号器１における復号タイミングで書き込まれ、音声復号装置内のクロック発生源（図示せず）で発生して入力されるサンプリングクロック（例えば、８ｋＨｚ）ｄに同期して読み出されて、再生音声サンプル列を出力するようになっている。
具体的なアナログ出力用バッファ２′の構成例としては、図６（ａ）に示すように、１フレーム（１６０サンプル）単位のダブルバッファ構成となっている。図６は、従来のアナログ出力用バッファ２′の構成例および使用例を示す説明図である。
【０００７】
そして、アナログ出力用バッファ２′の動作としては、例えば、同図（ａ）において、バッファＡを読み出しているフレームでは、音声復号器１における復号結果の復号音声サンプル列がバッファＢに格納され、また逆にバッファＢを読み出しているフレームでは、音声復号器１における復号結果の復号音声サンプル列がバッファＡに格納されるように、サンプリングクロックｄに基づいて１６０サンプル／フレームとして書き込み位置（ポインタ又はアドレス）及び読み出し位置が制御されている。
このダブルバッファ構成により、各バッファの音声サンプルを読み出している最中にバッファの内容が上書きされて更新されてしまう事態を避けることができる。
【０００８】
Ｄ／Ａ変換器３は、入力される再生音声サンプルのデジタル信号をアナログ信号に変換する一般的なデジタル／アナログ変換器である。
【０００９】
図５に示した従来の音声復号装置の動作を説明すると、外部装置からフレーム同期信号ａと、ビットクロック（例えば、２４００ｂｐｓ）ｂと、音声符号化情報ビット列ｃ（例えば、４８ビット／フレーム）が音声復号器１に入力され、音声復号器１でビットクロックｂに同期して音声符号化情報ビット列ｃを取り込み、フレーム同期信号ａに基づいてフレーム毎に音声復号処理を行い、復号音声サンプル列ｅ（１６０サンプル／フレーム）が出力されて、アナログ出力用バッファ２′の２つのバッファを交互に使って記憶される。
【００１０】
アナログ出力用バッファ２′に記憶された復号音声サンプル列は、音声復号装置内のクロック発生源（図示せず）で発生して入力されるサンプリングクロック（８ｋＨｚ）ｄに同期して、上記書き込みとは逆のバッファから読み出されて、再生音声サンプル列ｆ′としてＤ／Ａ変換器３へ入力され、アナログ信号に変換され、アナログ再生音声ｇ′が出力される。
【００１１】
従来の音声復号装置における復号動作タイミングについて、図７を使って説明する。図７は、従来の音声復号装置における各所の入出力タイミングを示すタイミングチャート図である。
図７（ａ）は、１フレーム区間の開始を示すフレーム同期信号ａであり、同図（ｂ）はビットクロックｂ（２４００ｂｐｓ）、同図（ｃ）はフレーム同期信号およびビットクロックに同期して音声復号器１に入力される音声符号化情報ビット列ｃであり、１フレーム周期（２０ｍｓ）当たり４８ビットの速度で入力される。
【００１２】
また、同図（ｄ）はアナログ出力用バッファ２′に入力される再生音声サンプルのサンプリングクロックｄ（８ｋＨｚ）であり、同図（ｅ）はサンプリングクロックｄに同期してアナログ出力用バッファ２′から出力される再生音声サンプルｆ′であり、１フレーム周期（２０ｍｓ）当たり１６０サンプルの速度で出力される。
【００１３】
ここで、同図（ａ）のフレーム同期信号ａと（ｂ）のビットクロックｂは、外部から供給される信号で同期しており、ビットクロック４８周期毎に１回、フレーム同期信号が有効（”Ｌ”）になる。
また、同図（ｄ）のサンプリングクロックｄは、音声復号装置内で発生しているため、外部装置から入力されるフレーム同期信号ａ及びビットクロックｂと同期しているとは限らない。
【００１４】
上述の従来の音声復号器において、外部装置から入力されるビットクロックｂの周波数に誤差が無く正確に２４００ｂｐｓであれば、１フレーム周期当りの音声符号化情報ビット数（４８ビット）と再生音声サンプル数（１６０サンプル）とを設計通りに整合した状態に保つことができ、正常に音声復号処理を行うことが可能である。
【００１５】
しかし、通常、ビットクロックｂの周波数精度を高くするためにはかなりコストが増大することから、一般にビットクロックｂの周波数精度には所定量の誤差（例えば±２．５％）が許容されている。
【００１６】
音声復号器１に外部装置から入力されるフレーム同期信号ａ及びビットクロックｂは、送信側（音声符号化側）で発振されるフレーム同期信号及びビットクロックに基づくものであることから、送信側の音声符号化装置を替えると発振されるフレーム同期信号及びビットクロックの誤差により、音声復号器１に入力されるフレーム同期信号ａ及びビットクロックｂの周波数は、設計段階の規定の周波数から変化して実際のフレーム周期（期間）は変化してしまい、その結果、音声復号器１から出力される再生音声サンプルのフレーム周期が変化して、復号側で独立して発振されるサンプリングクロックｄとの整合性がとれなくなり、正常に音声復号化ができなくなる場合が生じていた。
【００１７】
つまり、従来の音声復号装置におけるアナログ出力用バッファ２′は、サンプリングクロックｄに基づいて１６０サンプル／フレーム固定であるとして構成し、且つ１６０サンプル／フレームのタイミングで書き込み位置（ポインタ又はアドレス）及び読み出し位置を制御しているために、１６０サンプル／フレームでないケースが発生すると、整合性が取れなくなる事態が発生する。
【００１８】
設計段階でのフレーム周期、ビットクロック周期（周波数）、サンプル数等には「規定」という言葉を付加し、誤差に起因する実際のフレーム周期、ビットクロック周期（周波数）、サンプル数等に「実」という言葉を付加して説明すると、例えば、ビットクロックの実周波数が規定周波数に対して±２．５％で変化すると、それと同期しているフレーム同期信号の実フレーム周期（期間）も変化し、音声符号化情報ビット数（４８ビット／フレーム）を基準にすると、フレーム当たり音声復号器１から出力される実復号音声サンプル数は規定サンプル数１６０に対して１６０±α（ビットクロックの周波数誤差が±２．５％の場合、α＝４）サンプルの範囲で変化する。
【００１９】
このため、アナログ出力用バッファ２′を規定フレーム周期（２０ｍｓ）に基づき１６０サンプル／フレームの２バッファ構成として音声復号装置を設計している場合、例えば、実ビットクロック周波数のプラス変化により実フレーム周期期間が短くなり、規定フレーム周期（２０ｍｓ）間に音声復号器１から出力されてアナログ出力用バッファ２′に蓄えられる復号音声サンプル数が例えば１６０＋αサンプルになってしまった場合には、図６（ｂ）に示すように、フレーム（１）用のサンプルが一方のバッファ（例えばバッファＡ）に蓄積しきれずに、αサンプル分（図中、斜線部）を廃棄してしまうか、又は他方（例えばバッファＢ）のバッファにはみ出して蓄積されることになる。
【００２０】
他方（例えばバッファＢ）のバッファにはみ出して蓄積されたとしても、次のフレーム（２）用のサンプルは、バッファＢの先頭から書き込まれてしまい、また、アナログ出力用バッファ２′において変動しないサンプリングクロックｄに基づく読み出しはバッファ単位（１６０サンプル）であるので、結果的に＋α分のサンプルは、アナログ出力用バッファ２′から読み出されてＤ／Ａ変換器３に出力されることはなく、再生音声で音が飛んでしまうことになる。
【００２１】
また、逆に実ビットクロック周波数のマイナス変動により実フレーム周期期間が長くなり、規定フレーム周期（２０ｍｓ）間に音声復号器１から出力されてアナログ出力用バッファ２′に蓄えられる実復号音声サンプル数が例えば１６０−αサンプルになってしまった場合には、図６（ｃ）に示すように、フレーム（１）用のサンプルがバッファ（例えばバッファＡ）に一杯に蓄積されずに、αサンプル分（図中、斜線部）に過去のサンプルデータが残るか、又はバッファが初期化されれば、初期化データが残ってしまうことになり、不正なサンプルが存在することになる。
【００２２】
そして、アナログ出力用バッファ２′においてはサンプリングクロックｄに基づく読み出しはバッファ単位（１６０サンプル）であるので、結果的に−α分の不正なサンプルも読み出されてＤ／Ａ変換器３に出力されることになり、再生音声で雑音が出力されることになる。
【００２３】
このような不具合を解決する方法として、アナログ出力用バッファ２′に蓄えられる再生音声サンプル数を間引いたり重複して繰り返させたりして、所定のサンプル数に調整することが考えられるが、単純な再生音声サンプルの間引きや重複繰り返しにより１６０サンプルを１６０±αサンプルに変換しても、音声サンプル間の連続性が悪くなり、この結果として再生音声の品質が劣化するという問題点があった。
【００２４】
そこで、アナログ出力用バッファ２′から出力される再生音声サンプル数を、再生音声の品質を劣化させることなく所定数に調整する方法が、平成１１年１０月８日公開の特開平１１−２７２２９５号「音声処理方法及び装置」（出願人：国際電気株式会社、発明者：佐々木　誠司）に提案されている。
この従来技術は、音声サンプリングカウンタが、フレーム同期信号の１周期に出力音声バッファから出力されるサンプル数をサンプリングクロックでカウントして求め、音声サンプル数変換器で、出力音声バッファに蓄えられた音声サンプル数を所定の音声サンプル数にオーバサンプリング及び補間によって変換する音声処理方法及び装置であり、これにより、再生音声の品質を劣化させることなく所定数に調整して、音声復号化処理を正常に行わせるものである。（特許文献１参照）。
【００２５】
【特許文献１】
特開平１１−２７２２９５号公報（第７頁、図２）
【００２６】
【発明が解決しようとする課題】
上記従来の音声処理方法及び装置は、バッファに蓄えられた音声サンプルに対して変換処理を施すことにより、再生音声の品質を劣化させることなく音声サンプル数を所定数に調整するものであった。
【００２７】
本発明は、バッファにおける書き込み、読み出し制御を可変長扱いにすることにより、ビットクロックの周波数誤差に起因する再生音声サンプル数の過不足が発生しても、品質劣化を伴わずに再生音声を復号できる復号方法を提供することを目的とする。
【００２８】
【課題を解決するための手段】
本発明は、復号方法において、フレーム同期信号に基づいてフレーム毎に復号した復号情報をバッファに記憶し、バッファからサンプリングクロックに基づいて復号情報を読み出して再生出力する復号方法であって、
フレーム同期信号における１周期のサンプリングクロック数をカウントしてサンプル数を求め、サンプル数に基づいてバッファにおける書き込み位置及び読み出し位置を制御するものとしているので、
フレーム周期間におけるサンプル数の過不足が発生しても、実際のサンプル数に基づいてバッファへの書き込み及び読み出しが連続的に行われるように制御するので、復号情報のサンプル間の連続性を改善することができる。
【００２９】
本発明は、復号方法において、フレーム同期信号に基づいてフレーム毎に復号した復号情報をバッファに記憶し、バッファからサンプリングクロックに基づいて復号情報を読み出して再生出力する復号方法であって、
フレーム同期信号における１周期のサンプリングクロック数をカウントしてサンプル数を求め、
復号情報を、設定された書き込み開始位置からフレーム毎に第１のバッファに書き込み、
第１のバッファにおける復号情報の書き込み位置が、第１のバッファにおける先頭からサンプル数の位置に達したなら、当該フレームに関する復号情報の書き込みを完了した時点で書き込みを停止し、フレームの書き込みが完了した位置を書き込み終了位置とし、
第１のバッファの先頭からサンプル数分の復号情報を第２のバッファに複写し、
第１のバッファの復号情報をサンプル数分だけシフトし、
書き込み終了位置からサンプル数を減算した位置を次の書き込み開始位置に設定して更新し、
第２のバッファに複写されたサンプル数分の復号情報をサンプリングクロックに基づいて読み出して再生出力するものとしているので、
フレーム周期間におけるサンプル数の過不足が発生しても、実際のサンプル数に基づいてバッファへの書き込み及び読み出しが連続的に行われるように制御するので、復号情報のサンプル間の連続性を改善することができる。
【００３０】
本発明は、音声復号装置において、外部からのビットクロックに同期して、音声符号化情報ビット列を入力し、フレーム同期信号に基づいてフレーム毎に音声復号処理を行いピッチ周期毎に復号音声サンプル列を出力する音声復号手段と、音声復号手段から出力される復号音声サンプル列を記憶し、ビットクロックとは異なるクロック発生源から発生されるサンプリングクロックに基づいて記憶している音声サンプルを再生音声サンプル列として出力するするバッファ手段と、バッファ手段から出力される復号音声サンプル列をアナログ変換して再生音声を出力する音声再生手段とを備える音声復号装置であって、
フレーム同期信号における１周期のサンプリングクロック数をカウントして再生音声サンプル数を求めるサンプル数カウント手段を設け、
バッファ手段が、
設定された書き込み開始位置を起点とし、音声復号手段の出力である復号音声サンプル列がピッチ周期毎に書き込まれる第１のバッファと、
フレーム毎に再生音声サンプル数に基づく可変長の復号音声サンプル列を保持し、サンプリングクロックに基づいて読み出して再生音声サンプル列として出力する第２のバッファと、
第１のバッファにおける復号音声サンプル列の書き込み開始位置の初期値を先頭に設定し、フレーム毎に、第１のバッファにおける復号音声サンプル列の書き込み位置が、第１のバッファにおける先頭から再生音声サンプル数の位置に達したなら、当該ピッチ周期に関する復号情報の書き込みを完了した時点で書き込みを停止し、ピッチ周期に関する復号音声サンプル列の書き込みが完了した位置を書き込み終了位置とし、第１のバッファの先頭から再生音声サンプル数分の復号音声サンプル列を第２のバッファに複写し、第１のバッファの復号音声サンプル列を再生音声サンプル数分だけシフトし、書き込み終了位置から再生音声サンプル数を減算した位置を次の書き込み開始位置に設定して第１のバッファを更新し、第２のバッファにおける読み出し位置を先頭に戻す制御手段とを具備するバッファ手段であるものとしているので、
ビットクロックの周波数誤差に起因して、フレーム周期間における再生音声サンプル数の過不足が発生しても、実際の再生音声サンプル数に基づいて第１のバッファへの書き込み及び第２のバッファからの読み出しが連続的に行われるように第１のバッファ及び第２のバッファの入出力制御を行うことにより、再生音声サンプル間の連続性を改善することができる。
【００３１】
【発明の実施の形態】
本発明の実施の形態について図面を参照しながら説明する。
尚、以下で説明する機能実現手段は、当該機能を実現できる手段であれば、どのような回路又は装置であっても構わず、また機能の一部又は全部をソフトウェアで実現することも可能である。更に、機能実現手段を複数の回路によって実現してもよく、複数の機能実現手段を単一の回路で実現してもよい。
【００３２】
上位概念的に説明すれば、本発明に係る復号方法は、フレーム同期信号における１周期のサンプリングクロック数をカウントしてサンプル数を求め、サンプル数に基づいてバッファにおける書き込み位置及び読み出し位置を制御するものなので、フレーム周期間におけるサンプル数の過不足が発生しても、実際のサンプル数に基づいてバッファへの書き込み及び読み出しが連続的に行われるように制御できるものである。
【００３３】
本発明に係る復号方法は、フレーム同期信号における１周期のサンプリングクロック数をカウントしてサンプル数を求め、復号情報を、設定された書き込み開始位置からフレーム毎に第１のバッファに書き込み、第１のバッファにおける復号情報の書き込み位置が、第１のバッファにおける先頭からサンプル数の位置に達したなら、当該フレームに関する復号情報の書き込みを完了した時点で書き込みを停止し、フレームの書き込みが完了した位置を書き込み終了位置とし、第１のバッファの先頭からサンプル数分の復号情報を第２のバッファに複写し、第１のバッファの復号情報をサンプル数分だけシフトし、書き込み終了位置からサンプル数を減算した位置を次の書き込み開始位置に設定して第１のバッファを更新し、第２のバッファにおける読み出し位置を先頭に戻して復号情報をサンプリングクロックに基づいて読み出して再生出力するものなので、ビットクロックの周波数誤差に起因して、フレーム周期間における再生音声サンプル数の過不足が発生しても、実際の再生音声サンプル数に基づいて第１のバッファへの書き込み及び第２のバッファからの読み出しが連続的に行われるように第１及び第２のバッファの入出力制御を行うことができるものである。
【００３４】
また、本発明の復号方法を実現する音声復号装置は、音声復号手段が外部からのビットクロックに同期して、音声符号化情報ビット列を入力し、フレーム同期信号に基づいてフレーム毎に音声復号処理を行いピッチ周期毎に復号音声サンプル列を出力して第１のバッファに書き込み、サンプル数カウント手段が、フレーム同期信号における１周期のサンプリングクロック数をカウントして再生音声サンプル数を求め、バッファ手段における制御手段が、第１のバッファにおける復号音声サンプル列の書き込み開始位置の初期値を先頭に設定し、フレーム毎に、第１のバッファにおける復号音声サンプル列の書き込み位置が、第１のバッファにおける先頭から再生音声サンプル数の位置に達したなら、当該ピッチ周期に関する復号情報の書き込みを完了した時点で書き込みを停止し、ピッチ周期に関する復号音声サンプル列の書き込みが完了した位置を書き込み終了位置とし、第１のバッファの先頭から再生音声サンプル数分の復号音声サンプル列を第２のバッファに複写し、第１のバッファの復号音声サンプル列をサンプル数分だけシフトし、書き込み終了位置から再生音声サンプル数を減算した位置を次の書き込み開始位置に設定して第１のバッファを更新し、第２のバッファにおける読み出し位置を先頭に戻し、音声再生手段が第２のバッファからサンプリングクロックに基づいて出力される復号音声サンプル列をアナログ変換して再生音声を出力するものなので、ビットクロックの周波数誤差に起因して、フレーム周期間における再生音声サンプル数の過不足が発生しても、実際の再生音声サンプル数に基づいて第１のバッファへの書き込み及び第２のバッファからの読み出しが連続的に行われるように第１及び第２のバッファの入出力制御を行うので、再生音声サンプル間の連続性を改善することができるものである。
【００３５】
尚、本発明の実施の形態における各手段と図１の各部との対応を示すと、音声復号手段は、音声復号器１に相当し、サンプル数カウント手段は、音声サンプルカウンタ１０に相当し、バッファ手段は、再生音声用バッファ１２、可変長アナログ出力用バッファ２、制御器１１に相当し、音声再生手段は、Ｄ／Ａ変換器３に相当している。
【００３６】
また、以降の実施の形態の説明では、設計段階でのフレーム周期、ビットクロック周期（周波数）、再生音声サンプル数等には「規定」という言葉を付加して説明し、送信側の発振器におけるビットクロック発振周波数誤差に起因する、音声復号装置におけるビットクロックの周波数変化が生じた実際のフレーム周期、ビットクロック周期（周波数）、サンプル数等に「実」という言葉を付加して説明する。
【００３７】
まず、本発明に係る復号方法を実現する音声復号装置の構成について図１を使って説明する。図１は、本発明に係る音声復号装置の構成ブロック図である。尚、図５と同様の構成をとる部分については同一の符号を付して説明する。
本発明の実施の形態に係る音声復号装置は、図１に示すように、従来の音声復号装置と同様の構成である音声復号器１と、可変長アナログ出力用バッファ２と、Ｄ／Ａ変換器３とから構成され、更に本発明の特徴部分として音声サンプルカウンタ１０と、制御器１１と、再生音声用バッファ１２とが設けられている。
【００３８】
次に、本発明の音声復号装置の各部について説明する。
音声復号器１は、入力される音声符号化情報を復号し、再生音声デジタル情報を出力する一般的な復号器であるが、特に本発明では、音声復号器１として、ＬＰＣ（Ｌｉｎｅａｒ　Ｐｒｅｄｉｃｔｉｖｅ　Ｃｏｄｅｒ）、ＭＥＬＰ（Ｍｉｘｅｄ　Ｅｘｃｉｔａｔｉｏｎ　Ｌｉｎｅａｒ　Ｐｒｅｄｉｃｔｉｖｅ　Ｃｏｄｅｒ）等の分析合成符号化を用いた復号器であることを前提としており、入力される音声符号化情報ビット列ｃの中に含まれるピッチ周期情報に基づき、１ピッチ周期単位で再生音声を合成し、復号音声サンプルを出力するものである。ここで、ピッチ周期は、２０〜１６０サンプルの範囲を取る。
【００３９】
具体的に音声復号器１は、送信側における発振信号に基づき、外部装置から入力される１フレーム区間の開始を示すフレーム同期信号ａと、ビットクロック（例えば、２４００ｂｐｓ）ｂと、音声符号化情報ビット列ｃ（例えば、４８ビット／フレーム）を入力し、ビットクロックｂに同期して音声符号化情報ビット列ｃを取り込み、フレーム同期信号ａに基づいてフレーム毎に音声復号処理を行い、復号音声サンプル列ｅ（１６０サンプル／フレーム）を出力する。
尚、フレーム同期信号ａとビットクロックｂは同期しているものとする。
【００４０】
再生音声用バッファ１２は、音声復号器１から出力される復号された復号音声サンプル列ｅを一時記憶するバッファであり、音声復号器１における復号タイミングで書き込まれるものである。
尚、再生音声用バッファ１２の長さは、例えば最長ピッチ周期である１６０サンプルの２倍（３２０サンプル）に設定する。
そして、再生音声用バッファ１２における入出力は、後述する制御器１１によって制御される。
【００４１】
可変長アナログ出力用バッファ２は、再生音声用バッファ１２に記憶された復号音声サンプル列の一部を一時記憶し、Ｄ／Ａ変換器３に再生音声サンプル列を出力するバッファである。
可変長アナログ出力用バッファ２は、従来のアナログ出力用バッファ２′と同様に、音声復号装置内で発生して入力されるサンプリングクロック（例えば、８ｋＨｚ）ｄに同期して、読み出しポイント（アドレス）を示すアナログ出力用ポインタをインクリメントしながら、記憶されている復号音声サンプルが読み出されて再生音声サンプル列ｆとしてＤ／Ａ変換器３に出力されるようになっている。
但し、従来のアナログ出力用バッファ２′と異なる点は、後述する制御器１１の制御により、データが書き込まれ、また、アナログ出力用ポインタが制御器１１によって制御される点が従来と異なっている。
【００４２】
可変長アナログ出力用バッファ２の大きさは、例えば長さ２００サンプルを有するバッファとし、１フレーム分の再生音声サンプル数に相当する可変フレーム長Ｌｖとして想定される長さよりも長く設定しておけば良い。
【００４３】
そして、可変長アナログ出力用バッファ２に実際に格納される復号音声サンプル列の大きさ（長さ）は、後述する音声サンプルカウンタ１０の出力である再生音声サンプル数ｈに基づいて制御器１１により制御されるようになっている。
また、可変長アナログ出力用バッファ２における読み出しポイントを示すアナログ出力用ポインタは制御器１１によって制御され、サンプリングクロック（例えば、８ｋＨｚ）ｄに同期してアナログ出力用ポインタが示すポイントから音声サンプルが読み出されて再生音声サンプルとして出力されるようになっている。
【００４４】
音声サンプルカウンタ１０は、フレーム同期信号ａに基づく実フレーム期間（時間）当りに、Ｄ／Ａ変換器３に出力される再生音声サンプル数ｈを求めて出力するもので、フレーム同期信号ａの１周期間のサンプリングクロックｄをカウントすることにより再生音声サンプル数ｈを求める。
【００４５】
具体的に音声サンプルカウンタ１０は、図７（ａ）に示したフレーム同期信号ａに従い、フレーム同期信号がＨ→Ｌ（有効）に切り替わると、フレームの開始を認識してサンプリングクロックｄのカウントを開始し、次にフレーム同期信号がＨ→Ｌ（有効）に切り替わる時に、カウント値を再生音声サンプル数ｈとして制御器１１に出力し、出力後にクリアして再度サンプリングクロックｄのカウントを開始するようになっている。
【００４６】
尚、音声サンプルカウンタ１０で求める再生音声サンプル数ｈは、送信側の構成におけるビットクロックの発振器に依存して決まるものであるので、必ずしもフレーム毎に毎回再生音声サンプル数ｈをカウントしなくてもよく、少なくとも、送信側の構成が切り替わったときにカウントされればよい。
【００４７】
また、音声サンプルカウンタ１０は、上記のように自らが入力するフレーム同期信号ａに基づいて、再生音声サンプル数ｈの出力、カウンタのクリアを行う構成としても良いし、単にサンプリングクロックｄのカウント機能のみとし、後述する制御器１１の制御によって再生音声サンプル数ｈの出力、カウンタのクリアを行うように構成しても構わない。
【００４８】
この時、ビットクロックｂの実周波数が当初の設計通り規定周波数であれば、フレーム同期信号ａに基づく１フレーム期間（時間）も規定期間となり、ビットクロックｂとは独立しているサンプリングクロックｄであっても、サンプリングクロックｄに従って出力される再生音声サンプル数ｈは規定値、例えば１６０になるはずである。
【００４９】
しかし、送信側の装置に依存して、ビットクロックｂの実周波数が規定周波数に対して所定量の誤差（例えば±２．５％）で変化している場合、ビットクロックｂに同期しているフレーム同期信号ａの１フレーム期間（時間）が変化するため、１フレーム期間に出力される再生音声サンプル数ｈは１６０±α（αは例えば４）サンプルの範囲で変化する。
【００５０】
この１６０±αサンプルの範囲を有する再生音声サンプル数ｈを本発明では現フレームでの可変フレーム長Ｌｖと定義する。
【００５１】
具体的に考えると、ビットクロックｂの実周波数が規定周波数に対して増加すれば、フレーム同期信号ａの実フレーム期間（時間）が短くなるため、１フレーム期間に出力される再生音声サンプル数ｈは減少することになり、逆にビットクロックｂの実周波数が規定周波数に対して減少すれば、フレーム同期信号ａの実フレーム期間（時間）が長くなるため、１フレーム期間に出力される再生音声サンプル数ｈは増加することになる。
【００５２】
Ｄ／Ａ変換器３は、従来と同様に、入力される再生音声サンプルのデジタル信号をアナログ信号に変換する一般的なデジタル／アナログ変換器である。
【００５３】
制御器１１は、フレーム同期信号ａ及びビットクロックｂを入力し、当該信号のタイミングに従い、音声サンプルカウンタ１０で求められた再生音声サンプル数ｈに基づいて、再生音声用バッファ１２、及び可変長アナログ出力用バッファ２における入出力制御を行うものである。
【００５４】
制御器１１における制御処理について具体的に説明するが、本発明の音声復号装置において、各所における信号の入出力タイミングは、図７に示した従来の音声復号装置におけるそれと同様である。
制御器１１におけるバッファの入出力制御処理の具体例について図７，図２を用いて説明する。図２は、本発明の制御器１１における再生音声用バッファ１２及び可変長アナログ出力用バッファ２の入出力制御動作を説明する説明図である。
【００５５】
制御器１１では、図７（ａ）に示したフレーム同期信号ａがＨ→Ｌ（有効）に切り替わるタイミング間を書き込み制御単位とし、当該書き込み制御単位の初めに前述した音声サンプルカウンタ１０から出力される再生音声サンプル数ｈを受け取り、再生音声サンプル数ｈを制御器１１における次のバッファ制御処理で、可変フレーム長Ｌｖとして用いる。
【００５６】
制御器１１では、再生音声用バッファ１２における入出力制御を、書き込み制御単位における再生音声サンプルの書き込み開始位置を示す書き込み開始ポイントと、再生音声サンプルの書き込み位置を示す書き込みポイントと、書き込み制御単位でのサンプル書き込み終了位置を示す書き込み終了ポイントとを制御することによって行う。
【００５７】
また、制御器１１では、可変長アナログ出力用バッファ２における入出力制御を、読み出し位置（アドレス）を示すアナログ出力用ポインタを制御することによって行う。
【００５８】
具体的に、制御器１１では、再生音声用バッファ１２における入出力制御の初期処理で、図２（ａ）に示すように、まず再生音声用バッファ１２における書込み開始ポイントの初期値として再生音声用バッファ１２の先頭を設定する。
【００５９】
そして、音声復号器１でピッチ周期毎に復号された復号音声サンプルが、再生音声用バッファ１２の書込み開始ポイントからピッチ周期毎に書き込まれ、１サンプル書き込まれる毎に書込みポイントをインクリメントしていく。
【００６０】
そして、書込みポイントをインクリメントしながら、復号音声サンプルがピッチ周期毎に書き込まれていく過程で、書込みポイントが前フレームで取得した再生音声サンプル数ｈに基づく可変フレーム長Ｌｖを超えたなら、当該ピッチ周期に関するサンプルを書き終わった時点で書き込みを停止しておき、その点を書込み最終ポイントとする。
尚ここで、可変フレーム長Ｌｖとしては、前述したように音声サンプルカウンタ１０が直前のフレーム同期信号ａの１周期で測定して出力された再生音声サンプル数ｈを使用する。
【００６１】
そして、フレーム同期信号ａがＨ→Ｌ（有効）に切り替わるタイミングで、まず再生音声用バッファ１２の入出力制御処理として、再生音声用バッファ１２の先頭から可変フレーム長Ｌｖ分のサンプル（図２の斜線部）を可変長アナログ出力用バッファ２にコピーする。
【００６２】
そして、再生音声用バッファ１２を可変フレーム長Ｌｖ分だけ左にシフトさせ、その結果、図２（ａ）の黒塗りの部分が図２（ｂ）に示すように、再生音声用バッファ１２の先頭に配置され、更に図２（ｂ）に示すように、（書込み最終ポイント−可変フレーム長Ｌｖ）の位置が次フレームでの書き込み開始ポイントとなる。この時、再生音声用バッファ１２において、該書き込み開始ポイント以降のサンプル点はゼロ詰して初期化しておく。
【００６３】
続いて、可変長アナログ出力用バッファ２の入出力制御処理として、可変長アナログ出力用バッファ２における読み出しアドレスであるアナログ出力用ポインタを先頭サンプルにリセットする。
これにより、次のフレーム期間に、可変長アナログ出力用バッファ２から、サンプリングクロックｄに従って、Ｄ／Ａ変換すべき復号音声サンプルのデジタル値が再生音声サンプルとしてＤ／Ａ変換器３に出力されるようになる。
【００６４】
そして、再生音声用バッファ１２においては、次のフレームの復号処理により、図２（ｂ）に示すように、前回のコピーフレームから外れてしまった黒塗りの部分に続いて、次の新しい再生音声サンプルが書き込み開始ポイントから書き込まれ、前回と同様に、書込みポイントがフレーム同期信号ａにおける次のフレーム周期の再生音声サンプル数ｈに基づく可変フレーム長Ｌｖを超えたなら、当該ピッチ周期に関するサンプルを書き終わった時点で書き込みを停止しておき、その点を書込み最終ポイントとする。
【００６５】
そして、次のフレーム同期信号ａがＨ→Ｌ（有効）に切り替わるタイミングで、再び再生音声用バッファ１２の入出力制御処理として、再生音声用バッファ１２の先頭から可変フレーム長Ｌｖ分のサンプル（図２（ｂ）の黒塗り＋斜線部）が可変長アナログ出力用バッファ２にコピーされるようになっている。
【００６６】
尚、再生音声用バッファ１２から可変長アナログ出力用バッファ２へのコピー及びアナログ出力ポインタのリセットのタイミングは、フレーム同期信号ａがＨ→Ｌ（有効）に切り替わるタイミングであり、可変長アナログ出力用バッファ２においては、前回再生音声用バッファ１２からコピーされた可変フレーム長Ｌｖ分のサンプルが、サンプリングクロックｄに従って読み出され終わったタイミングとなる。
【００６７】
また、再生音声用バッファ１２に書き込まれる再生音声サンプルがとぎれて書き込まれなかった場合には、前回のコピーフレームから外れてしまった黒塗りの部分に続いて可変フレーム長Ｌｖ分まで初期化されたデータが可変長アナログ出力用バッファ２にコピーされるようになっている。
【００６８】
図２に示した例において、１フレームが３ピッチ周期であると考えると、ビットクロックｂの実周波数が規定よりプラスであって、フレーム同期信号ａの実フレーム期間（時間）が短くなるため、１フレーム期間にＤ／Ａ変換器３に出力できる再生音声サンプル数ｈが規定より少ない場合を示していることになる。
この場合には、１フレーム分（３ピッチ周期分）の復号音声サンプルよりも少ない可変フレーム長Ｌｖだけ可変長アナログ出力用バッファ２にコピーし、可変長アナログ出力用バッファ２からサンプルクロックｄに同期して１フレーム期間毎に可変フレーム長Ｌｖ分の復号音声サンプルを読み出して、再生音声サンプルとしてＤ／Ａ変換器３に出力するようになっている。
【００６９】
また、図２に示した例において、１フレームが２ピッチ周期であると考えると、ビットクロックｂの実周波数が規定よりマイナスであって、フレーム同期信号ａの実フレーム期間（時間）が長くなるため、１フレーム期間にＤ／Ａ変換器３に出力できる再生音声サンプル数ｈが規定より多い場合を示していることになる。
この場合には、１フレーム分（２ピッチ周期分）の復号音声サンプルでは、可変フレーム長Ｌｖに満たないので、次のフレーム分まで再生音声用バッファ１２に格納されるのを待って、規定より多い可変フレーム長Ｌｖだけ可変長アナログ出力用バッファ２にコピーし、可変長アナログ出力用バッファ２からサンプルクロックｄに同期して１フレーム期間毎に可変フレーム長Ｌｖ分の復号音声サンプルを読み出して、再生音声サンプルとしてＤ／Ａ変換器３に出力するようになっている。
【００７０】
上記、制御器１１における入出力制御によって、音声復号器１におけるフレーム同期信号ａ（ビットクロックｂ）に基づく復号タイミングと、サンプリングクロックｄに基づく再生タイミングとの整合性がとれない状態であっても、再生音声用バッファ１２への書き込みは復号タイミングで行い、可変長アナログ出力用バッファ２からの読み出しは再生タイミングで行えるので、タイミングの不整合による再生音声サンプルの欠落や不正なサンプルの混入を回避できるものである。
【００７１】
尚、上記説明した本発明の音声復号装置は、ＤＳＰ（ディジタルシグナルプロセッサ）により、容易に実現可能である。
ＤＳＰで実現する場合には、各構成要素で行う動作をプログラムにより実現し、フレーム同期信号ａ、ビットクロックｂ、サンプリングクロックｄの各タイミングに応じて、割り込みが発生し、当該割り込み処理の中で、当該プログラムが起動されることになり、割り込み処理の中で各プログラムの動作を制御するような主制御部に相当する構成も必要となるが、図１では省略されている。
【００７２】
次に、本発明の音声復号装置の各部の動作について、図１，図３，図４を使って説明する。図３は、本発明の音声復号装置におけるデジタルデータ入力割り込み処理動作の流れを示すフローチャート図であり、図４は、本発明の音声復号装置における音声サンプル割り込み処理の流れを示すフローチャート図である。
本発明の音声復号装置では、ビットクロックｂの立ち下がりのタイミングで発生する処理としてデジタルデータ入力割り込み処理を行い、具体的には、音声復号器１において、音声符号化情報ｃのデジタルデータを１ビット入力する（１００）。
【００７３】
そして、フレーム同期信号ａのレベルにより、フレーム同期信号のレベルがＬでない（Ｎｏ）、即ちＨならばフレームの途中であるから、割り込みルーチンは終了して復帰する。
【００７４】
尚、この間、音声復号器１では、入力される音声符号化情報ｃを用いて復調処理を行い、音声符号化情報に含まれるピッチ周期情報に基づき、１ピッチ周期単位で再生音声を合成して復号音声サンプルのデジタル値を出力する。
そして、音声復号器１からの復号再生音声サンプルのデジタル値は、制御器１１によって行われる再生音声用バッファ１２の入出力のポイント制御に従う位置に書き込まれていくことになる。
【００７５】
一方、処理１０２において、フレーム同期信号ａのレベルがＬであれば、フレームの区切りであると認識して以下の処理を実行する。
まず、制御器１１からの制御により再生音声用バッファ１２に格納されている再生音声サンプルをバッファの先頭から再生音声サンプル数ｈ（＝可変フレーム長Ｌｖ）まで可変長アナログ出力用バッファ２にコピーして可変長アナログ出力用バッファ２の内容を更新し（１０４）、再生音声用バッファ１２の内容を更新する（１０５）。
【００７６】
ここで、再生音声用バッファ１２の更新は、格納されている再生音声サンプルを可変フレーム長Ｌｖ分だけシフトさせ、書き込み開始ポイントを（書き込み終了ポイント−可変フレーム長）で算出して更新し、書き込み開始ポイント以降のサンプル点はゼロ詰して初期化する処理である。
【００７７】
そして、制御器１１によって、可変長アナログ出力用バッファ２における読み出しアドレスであるアナログ出力用ポインタがリセット（先頭サンプルとする）され（１０６）、音声サンプルカウンタ１０が再生音声サンプル数ｈを制御器１１に出力してから、カウンタをクリアし（１０８）、デジタルデータ入力割り込み処理は終了されて、復帰する。
【００７８】
一方、本発明の音声復号装置では、サンプリングクロックｄの立ち下がりのタイミングで発生する処理として音声サンプル出力割り込み処理を行い、具体的には、可変長アナログ出力用バッファ２において、アナログ出力用ポインタが示すポイントから復号音声サンプルを読み出して、再生音声サンプルとしてＤ／Ａ変換器３に出力し（２００）、アナログ出力用ポインタをインクリメントし（２９２）、音声サンプルカウンタ１０においては、サンプル数のカウント値をインクリメントして（２０４）、音声サンプル出力割り込み処理は終了されて、復帰するようになっている。
【００７９】
上記説明では、音声サンプルカウンタ１０においてフレーム周期毎に再生音声サンプル数ｈをカウントして制御器１１に出力するように説明したが、基本的に送信側（符号化側）のビットクロックの発振器が同じであれば、再生音声サンプル数ｈは同じであるから、必ずしもフレーム周期毎に出力しなくてもかまわない。
【００８０】
尚、上記説明した本発明の音声復号装置は、ＤＳＰ（ディジタルシグナルプロセッサ）により、容易に実現可能である。
また、上記説明では、音声の復号化方法の例で説明したが、データは音声に限定されず、フレーム単位で行われた符号化に対する復号化であれば、本発明の音声復号方法が適応できるものである。
【００８１】
本発明の復号方法によれば、外部から入力されるビットクロックに従って音声符号化情報を入力し、ビットクロックに同期するフレーム同期信号に従って復号処理を行って復号音声サンプルを生成してバッファに一時記憶し、ビットクロックとは異なるクロック発生源から発生されるサンプリングクロックに同期して、一時記憶されている復号音声サンプルをバッファから読み出してデジタルアナログ変換して再生音声を出力する復号方法であって、フレーム同期信号における１周期間のサンプリングクロック数をカウントしてサンプル数を求め、求めたサンプル数に基づいてバッファへの書き込み及びバッファからの読み出しを制御するので、ビットクロックの周波数誤差に起因して、フレーム周期間におけるサンプル数の過不足が発生しても、実際のサンプル数に基づいてバッファへの書き込み及び読み出しが連続的に行われるように制御するので、再生音声サンプル間の連続性を改善することができ、品質劣化を伴わずに再生音声を復号することができる効果がある。
【００８２】
本発明の復号方法によれば、音声復号器１が外部から入力されるビットクロックに従って音声符号化情報を入力し、ビットクロックに同期するフレーム同期信号に従って復号処理を行って復号音声サンプルを生成して出力し、出力される復号音声サンプルをバッファを用いて一時記憶し、ビットクロックとは異なるクロック発生源から発生されるサンプリングクロックに同期して出力し、出力される再生音声サンプルをＤ／Ａ変換器３がデジタルアナログ変換して再生音声を出力する音声復号装置であって、バッファとして再生音声用バッファ１２と可変長アナログ出力用バッファ２の２つのバッファを設け、音声サンプルカウンタ１０でフレーム同期信号の１周期毎におけるサンプリングクロック数をカウントして再生音声サンプル数を求め、制御器１１が、求めた再生音声サンプル数に基づいて、音声復号器１から出力される復号音声サンプルの再生音声用バッファ１２への書き込み制御を行い、再生音声用バッファ１２に記憶されている復号音声サンプルを再生音声サンプル数に基づいて、可変長アナログ出力用バッファ２にコピーし、可変長アナログ出力用バッファ２からの読み出しを制御するので、ビットクロックの周波数誤差に起因して、フレーム周期間における再生音声サンプル数の過不足が発生しても、実際の再生音声サンプル数に基づいて再生音声用バッファ１２への書き込み及び可変長アナログ出力用バッファ２からの読み出しが連続的に行われるように再生音声用バッファ１２及び可変長アナログ出力用バッファ２の入出力制御を行うので、再生音声サンプル間の連続性を改善することができ、品質劣化を伴わずに再生音声を復号することができる効果がある。
【００８３】
特に、本発明の音声復号装置では、制御器１１が、音声サンプルカウンタ１０でフレーム周期毎に求めた再生音声サンプル数に基づいて、音声復号器１から出力される復号音声サンプルの再生音声用バッファ１２への書き込みが当該再生音声サンプル数を超えたなら、再生音声サンプル数分の再生音声サンプルを可変長アナログ出力用バッファ２にコピーしてから、当該コピー分だけシフトし、続いて音声復号器１から出力される復号音声サンプルの書き込みが行われるようにしているので、再生音声用バッファ１２としては、最大ピッチ周期の２倍の容量があれば良く、また、可変長アナログ出力用バッファ２としては、再生音声サンプル数の最大値より大きい容量があればよいので、簡単な制御で、またバッファ容量をさほど増大することなく、品質劣化を伴わずに再生音声を復号することができる効果がある。
【００８４】
【発明の効果】
本発明によれば、フレーム同期信号における１周期のサンプリングクロック数をカウントしてサンプル数を求め、サンプル数に基づいてバッファにおける書き込み位置及び読み出し位置を制御する復号方法としているので、フレーム周期間におけるサンプル数の過不足が発生しても、実際のサンプル数に基づいてバッファへの書き込み及び読み出しが連続的に行われるように制御でき、品質劣化を伴わずに再生音声を復号できる効果がある。
【００８５】
本発明によれば、フレーム同期信号における１周期のサンプリングクロック数をカウントしてサンプル数を求め、復号情報を、フレーム毎に、設定された書き込み開始位置からフレーム毎に第１のバッファに書き込み、第１のバッファにおける復号情報の書き込み位置が、第１のバッファにおける先頭からサンプル数の位置に達したなら、当該フレームに関する復号情報の書き込みを完了した時点で書き込みを停止し、フレームの書き込みが完了した位置を書き込み終了位置とし、第１のバッファの先頭からサンプル数分の復号情報を第２のバッファに複写し、第１のバッファの復号情報をサンプル数分だけシフトし、書き込み終了位置からサンプル数を減算した位置を次の書き込み開始位置に設定し、第２のバッファに複写されたサンプル数分の復号情報をサンプリングクロックに基づいて読み出して再生出力する復号方法としているので、ビットクロックの周波数誤差に起因して、フレーム周期間における再生音声サンプル数の過不足が発生しても、実際の再生音声サンプル数に基づいて第１のバッファへの書き込み及び第２のバッファからの読み出しが連続的に行われるように第１及び第２のバッファの入出力制御を行うでき、品質劣化を伴わずに再生音声を復号できる効果がある。
【００８６】
本発明によれば、音声復号手段が外部からのビットクロックに同期して、音声符号化情報ビット列を入力し、フレーム同期信号に基づいてフレーム毎に音声復号処理を行いピッチ周期毎に復号音声サンプル列を出力して第１のバッファに書き込み、サンプル数カウント手段が、フレーム同期信号における１周期のサンプリングクロック数をカウントして再生音声サンプル数を求め、バッファ手段における制御手段が、第１のバッファにおける復号音声サンプル列の書き込み開始位置の初期値を先頭に設定し、第１のバッファにおける復号音声サンプル列の書き込み位置が、第１のバッファにおける先頭から再生音声サンプル数の位置に達したなら、当該ピッチ周期に関する復号情報の書き込みを完了した時点で書き込みを停止し、ピッチ周期に関する復号音声サンプル列の書き込みが完了した位置を書き込み終了位置とし、第１のバッファの先頭から再生音声サンプル数分の復号音声サンプル列を第２のバッファに複写し、第１のバッファの復号音声サンプル列をサンプル数分だけシフトし、書き込み終了位置から再生音声サンプル数を減算した位置を次の書き込み開始位置に設定して第１のバッファを更新し、第２のバッファにおける読み出し位置を先頭に戻し、音声再生手段が第２のバッファからサンプリングクロックに基づいて出力される復号音声サンプル列をアナログ変換して再生音声を出力する音声復号装置としているので、ビットクロックの周波数誤差に起因して、フレーム周期間における再生音声サンプル数の過不足が発生しても、実際の再生音声サンプル数に基づいて第１のバッファへの書き込み及び第２のバッファからの読み出しが連続的に行われるように第１及び第２のバッファの入出力制御を行うので、再生音声サンプル間の連続性を改善することができ、品質劣化を伴わずに再生音声を復号できる効果がある。
【図面の簡単な説明】
【図１】本発明に係る音声復号装置の構成ブロック図である。
【図２】本発明の制御器における再生音声用バッファ及び可変長アナログ出力用バッファの入出力制御動作を説明する説明図である。
【図３】本発明の音声復号装置におけるデジタルデータ入力割り込み処理動作の流れを示すフローチャート図である。
【図４】本発明の音声復号装置における音声サンプル割り込み処理の流れを示すフローチャート図である。
【図５】従来の音声復号装置の構成例を示すブロック図である。
【図６】従来のアナログ出力用バッファの構成例および使用例を示す説明図である。
【図７】従来の音声復号装置における各所の入出力タイミングを示すタイミングチャート図である。
【符号の説明】
１…音声復号器、　２、２′…可変長アナログ出力用バッファ、　３…Ｄ／Ａ変換器、　１０…音声サンプルカウンタ、　１１…制御器、　１２…再生音声用バッファ
【図１】
2004117761.tif 000003
【図２】
2004117761.tif 000004
【図３】
2004117761.tif 000005
【図４】
2004117761.tif 000006
【図５】
2004117761.tif 000007
【図６】
2004117761.tif 000008
【図７】
2004117761.tif 000009