(57)【要約】【課題】  複雑な構成の回路や大容量のメモリ領域を必要とせずにデジタル音声信号を処理できる音声処理装置を提供する。【解決手段】  複数の代表点に対応する出力データを格納したディストーション変換テーブル１８を用い、デジタル音声データを変換処理する音声処理装置である。入力されたｐビットの入力ＰＣＭデータ１０１について、上位ｑビットの値を取得し、この値をもとにディストーション変換テーブル１８を参照することで、入力ＰＣＭデータ１０１に最も近い代表点に対応する２個の出力データを取得する。そして、取得した２個の出力データと入力ＰＣＭデータ１０１の下位ｒビットの値とをもとに、補間演算処理を実行することにより、入力ＰＣＭデータ１０１に対応する出力データを求める。【選択図】  図４
2005300656.tif 000002
【特許請求の範囲】
【請求項１】
入力されるデジタル音声データを変換して出力する音声処理装置であって、
前記デジタル音声データがとり得る値の中から選択される複数の値を代表点として、これら代表点に対応する演算データを格納した変換テーブルを備え、
前記デジタル音声データに近い値を有する前記代表点を特定し、特定した前記代表点に対応づけて前記変換テーブルに格納された演算データを取得する演算データ取得手段と、
前記演算データ取得手段により取得された演算データ及び前記デジタル音声データをもとに補間演算を実行することにより、前記デジタル音声データに対応する出力データを求める演算手段と、
を備えることを特徴とする音声処理装置。
【請求項２】
前記変換テーブルには、前記演算データとして、複数の前記代表点に対応する出力データが各々格納され、
前記演算データ取得手段は、前記変換テーブルに基づき、前記デジタル音声データより小さく、かつ前記デジタル音声データに最も近い代表点に対応する第１の出力データと、前記デジタル音声データより大きく、かつ前記デジタル音声データに最も近い代表点に対応する第２の出力データと、を取得し、
前記演算手段は、前記演算データ取得手段により取得された第１の出力データ及び第２の出力データをもとに補間演算を実行することにより、前記デジタル音声データに対応する出力データを求めること、
を特徴とする請求項１記載の音声処理装置。
【請求項３】
入力される前記デジタル音声データはｐビットのＰＣＭデータであって、
前記変換テーブルには、前記ＰＣＭデータがとり得る値の中で２ｒ毎に代表点が設定された場合の、これら代表点に対応する出力データが、前記演算データとして、各々０（零）から始まる正の整数のアドレスに順次対応づけられて格納され、
前記演算データ取得手段は、前記ＰＣＭデータの上位ｑビットの値を取得して、この値をアドレスとして前記変換テーブルから前記出力データを取得して第１の出力データとし、前記ＰＣＭデータの上位ｑビットの値に１を加えた値をアドレスとして前記変換テーブルから前記出力データを取得して第２の出力データとするものであり、
前記演算手段は、前記演算データ取得手段により取得された第１の出力データをＤＡ１とし、第２の出力データをＤＡ２とし、前記ＰＣＭデータの下位ｒビットの値をＰとして下記式（１）に示す演算を実行することによって前記ＰＣＭデータに対応する出力データを求めるものであり、
前記ｐ、ｑ及びｒは０（零）を含む正の整数であって、下記式（２）に示す関係を満たす数であること、
を特徴とする請求項１記載の音声処理装置。
（ＤＡ２−ＤＡ１）÷２ｒ×Ｐ＋ＤＡ１＝出力データ  …（１）
ｐ＝ｑ＋ｒ  …（２）
【請求項４】
入力される前記デジタル音声データはｐビットのＰＣＭデータであって、
前記変換テーブルには、前記ＰＣＭデータがとり得る値の中で２ｒ毎に代表点が設定された場合の、これら代表点に対応する前記演算データが、各々０（零）から始まる正の整数のアドレスに順次対応づけられて格納され、
前記演算データは、２次またはそれ以上の所定の高次多項式における係数であって、
前記演算データ取得手段は、前記ＰＣＭデータの上位ｑビットの値を取得して、この値をアドレスとして前記変換テーブルから係数を取得するものであり、
前記演算手段は、前記演算データ取得手段により取得された係数を前記所定の高次多項式に代入することにより補間演算式を生成し、生成した補間演算式にＰＣＭデータを代入することによって前記ＰＣＭデータに対応する出力データを求めるものであり、
前記ｐ、ｑ及びｒは０（零）を含む正の整数であって、下記式（３）に示す関係を満たす数であること、
を特徴とする請求項１記載の音声処理装置。
ｐ＝ｑ＋ｒ  …（３）
【請求項５】
入力されるデジタル音声データを変換して出力する音声処理方法であって、
前記デジタル音声データがとり得る値の中から選択される複数の値を代表点として、これら代表点に対応する演算データを格納した変換テーブルを用い、
前記デジタル音声データに近い値を有する前記代表点を特定し、特定した前記代表点に対応づけて前記変換テーブルに格納された演算データを取得し、
取得した前記演算データ及び前記デジタル音声データをもとに補間演算を実行することにより、前記デジタル音声データに対応する出力データを求めること、
を特徴とする音声処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル音声データを変換して出力する音声処理装置、及び、この音声処理装置における音声処理方法に関する。
【背景技術】
【０００２】
従来から、デジタル音声データを処理してディレイ、ディストーション等のエフェクトをかける音声処理方法が知られている。
従来の音声処理方法は、入力されるデジタル音声データを演算処理して波形を変換する方法と、入力値と出力値とが対応づけられた変換テーブルに基づいて、入力されるデジタル音声データを変換する方法とに大別できる。
前者の方法は、例えば、特許文献１に開示されている。
【特許文献１】特開平５−３１３６６３号公報
【０００３】
特許文献１に開示された音響装置のディストーション装置は、入力されたデジタル楽音信号を微分及び乗算する処理を行うことにより、ディストーション効果を得るものである。
【０００４】
後者の変換テーブルを用いる方法の例については、図１０を参照して説明する。
この方法では、複数の入力値に各々対応する出力値を格納する変換テーブルを用いる。図１０に示す変換テーブルには、アドレス０〜１５に対応づけられた１６個の出力値が格納されている。各出力値は入力値に対して１対１で対応する。従って、図１０に示す変換テーブルは、「0000」から「1111」まで１６の値をとり得る４ビットのＰＣＭ（Pulse Code Modulation）データの入力に対応する。
【０００５】
図１０に示す方法では、入力されたＰＣＭデータの値を取得し（ステップＳ４１）、取得した値をアドレスとして変換テーブルを参照して対応する出力値を取得し（ステップＳ４２）、取得した出力値をＰＣＭデータとして出力する（ステップＳ４３）。例えば、入力されたＰＣＭデータの値が“３”（２進数表記で「0011」）の場合、変換テーブルのアドレス“３”に対応する出力値“７”が、ＰＣＭデータとして出力される。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記従来の音声処理方法のうち、前者すなわち演算処理を行って波形を変換する方法では、複雑な演算処理を高速で実行する必要があり、高負荷に耐える高性能のハードウェアを用いなければならず、また、回路構成が複雑化してしまうという問題があった。
一方、後者すなわち変換テーブルを用いる方法では、変換テーブルに、入力されるデジタル音声データがとり得る全ての値に対応する出力値を格納する必要がある。例えば、量子化ビット数が１６ビットのＰＣＭデータが入力される場合、入力値は６５５３６通りの値をとり得るので、変換テーブルにおいては６５５３６個の出力値を格納する必要がある。従って、変換テーブルを格納するための大容量のメモリ領域が必要になるという問題があった。
【０００７】
さらに、高音質のデジタル音声データを処理する場合、ＰＣＭデータの量子化ビット数が増大し、サンプリングレートが高くなることから、デジタル音声データのデータ量は著しく増大する。この場合、上記従来の音声処理方法のうち、前者の方法では演算処理の負荷が飛躍的に増大し、後者の方法では変換テーブルのサイズが著しく増大するので、上記の問題が大きな障害になっていた。
【０００８】
そこで、本発明は、複雑な構成の回路や大容量のメモリ領域を必要とせずにデジタル音声データを処理できる音声処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の目的を達成するために、本発明は、入力されるデジタル音声データを変換して出力する音声処理装置であって、前記デジタル音声データがとり得る値の中から選択される複数の値を代表点として、これら代表点に対応する演算データを格納した変換テーブルを備え、前記デジタル音声データに近い値を有する前記代表点を特定し、特定した前記代表点に対応づけて前記変換テーブルに格納された演算データを取得する演算データ取得手段と、前記演算データ取得手段により取得された演算データ及び前記デジタル音声データをもとに補間演算を実行することにより、前記デジタル音声データに対応する出力データを求める演算手段とを備えることを特徴とする。
【００１０】
本発明において、前記変換テーブルには、前記演算データとして、複数の前記代表点に対応する出力データが各々格納され、前記演算データ取得手段は、前記変換テーブルに基づき、前記デジタル音声データより小さく、かつ前記デジタル音声データに最も近い代表点に対応する第１の出力データと、前記デジタル音声データより大きく、かつ前記デジタル音声データに最も近い代表点に対応する第２の出力データと、を取得し、前記演算手段は、前記演算データ取得手段により取得された第１の出力データ及び第２の出力データをもとに補間演算を実行することにより、前記デジタル音声データに対応する出力データを求める構成としても良い。
【００１１】
本発明において、入力される前記デジタル音声データはｐビットのＰＣＭデータであって、前記変換テーブルには、前記ＰＣＭデータがとり得る値の中で２ｒ毎に代表点が設定された場合の、これら代表点に対応する出力データが、前記演算データとして、各々０（零）から始まる正の整数のアドレスに順次対応づけられて格納され、前記演算データ取得手段は、前記ＰＣＭデータの上位ｑビットの値を取得して、この値をアドレスとして前記変換テーブルから前記出力データを取得して第１の出力データとし、前記ＰＣＭデータの上位ｑビットの値に１を加えた値をアドレスとして前記変換テーブルから前記出力データを取得して第２の出力データとするものであり、前記演算手段は、前記演算データ取得手段により取得された第１の出力データをＤＡ１とし、第２の出力データをＤＡ２とし、前記ＰＣＭデータの下位ｒビットの値をＰとして下記式（１）に示す演算を実行することによって前記ＰＣＭデータに対応する出力データを求めるものであり、前記ｐ、ｑ及びｒは０（零）を含む正の整数であって、下記式（２）に示す関係を満たす数とする構成としても良い。
【００１２】
（ＤＡ２−ＤＡ１）÷２ｒ×Ｐ＋ＤＡ１＝出力データ  …（１）
ｐ＝ｑ＋ｒ  …（２）
【００１３】
また、本発明において、入力される前記デジタル音声データはｐビットのＰＣＭデータであって、前記変換テーブルには、前記ＰＣＭデータがとり得る値の中で２ｒ毎に代表点が設定された場合の、これら代表点に対応する前記演算データが、各々０（零）から始まる正の整数のアドレスに順次対応づけられて格納され、前記演算データは、２次またはそれ以上の所定の高次多項式における係数であって、前記演算データ取得手段は、前記ＰＣＭデータの上位ｑビットの値を取得して、この値をアドレスとして前記変換テーブルから係数を取得するものであり、前記演算手段は、前記演算データ取得手段により取得された係数を前記所定の高次多項式に代入することにより補間演算式を生成し、生成した補間演算式にＰＣＭデータを代入することによって前記ＰＣＭデータに対応する出力データを求めるものであり、前記ｐ、ｑ及びｒは０（零）を含む正の整数であって、下記式（３）に示す関係を満たす数とする構成としても良い。
【００１４】
ｐ＝ｑ＋ｒ  …（３）
【発明の効果】
【００１５】
本発明によれば、入力されるデジタル音声データを変換して出力する音声処理装置において、デジタル音声データがとり得る値の中から選択される複数の値を代表点として、これら代表点に対応する演算データを格納した変換テーブルを備え、演算データ取得手段により、デジタル音声データに近い値を有する代表点を特定し、特定した代表点に対応づけて変換テーブルに格納された演算データを取得し、演算手段によって、取得した演算データ及びデジタル音声データをもとに補間演算を実行することにより、デジタル音声データに対応する出力データを求めるので、小容量のメモリ領域と、簡単な演算処理を行うことが可能な手段とによって、容易にデジタル音声データを変換し、ディストーション等の音響効果を加えることができる。
【００１６】
すなわち、変換テーブルには、代表点に対応する演算データのみを格納すれば良いので、デジタル音声データがとり得る全ての値に対応する演算データや出力データ等を格納する場合に比べて、変換テーブルのサイズは非常に小さくて済む。また、デジタル音声データに近い値を有する代表点を変換テーブルから取得して、この代表点に対応する演算データに基づいて演算処理を行うため、デジタル音声データがとり得る全ての値について単一または少数の演算式により演算を行う場合に比べて、負荷の軽い簡単な演算を行うだけで済む。このため、大容量のメモリ領域を用意したり、高負荷の処理に耐え得る複雑な回路構成の装置を用いたりすることなく、デジタル音声データを処理して音響効果を加えることができる。
【００１７】
また、変換テーブルに、演算データとして、複数の代表点に対応する出力データが各々格納され、演算データ取得手段は、変換テーブルに基づき、デジタル音声データより小さく、かつデジタル音声データに最も近い代表点に対応する第１の出力データと、デジタル音声データより大きく、かつデジタル音声データに最も近い代表点に対応する第２の出力データと、を取得し、演算手段は、演算データ取得手段により取得された第１の出力データ及び第２の出力データをもとに補間演算を実行することにより、デジタル音声データに対応する出力データを求める構成とした場合、変換テーブルには、代表点に対応する出力データのみを格納すれば良いので、変換テーブルのサイズは非常に小さくて済む。さらに、デジタル音声データに近い値を有する代表点に対応する出力データを演算することで、出力データを求めるので、非常に負荷が軽い簡単な演算を行うだけで済むという利点を有する。
【００１８】
また、入力されるデジタル音声データがｐビットのＰＣＭデータであって、変換テーブルには、ＰＣＭデータがとり得る値の中で２ｒ毎に代表点が設定された場合の、これら代表点に対応する出力データが、演算データとして、各々０（零）から始まる正の整数のアドレスに順次対応づけられて格納され、演算データ取得手段は、ＰＣＭデータの上位ｑビットの値を取得して、この値をアドレスとして変換テーブルから出力データを取得して第１の出力データとし、ＰＣＭデータの上位ｑビットの値に１を加えた値をアドレスとして変換テーブルから出力データを取得して第２の出力データとするものであり、演算手段は、演算データ取得手段により取得された第１の出力データをＤＡ１とし、第２の出力データをＤＡ２とし、ＰＣＭデータの下位ｒビットの値をＰとして上記式（１）に示す演算を実行することによってＰＣＭデータに対応する出力データを求めるものであり、ｐ、ｑ及びｒは０（零）を含む正の整数であって、上記式（２）に示す関係を満たす数であるとの構成とした場合、変換テーブルには、入力ＰＣＭデータの上位ｑビットの値に相当する数、すなわちＰＣＭデータがとり得る全ての値に比べて非常に少ない出力データのみを格納すれば良いので、変換テーブルのサイズが小さくて済む。さらに、入力されるＰＣＭデータを挟むように当該ＰＣＭデータに最も近い２つの代表点に対応する出力データを取得して、直線補間演算を実行するので、極めて負荷が軽い簡単な演算を行うだけで済む。
【００１９】
また、本発明において、入力されるデジタル音声データはｐビットのＰＣＭデータであって、変換テーブルには、ＰＣＭデータがとり得る値の中で２ｒ毎に代表点が設定された場合の、これら代表点に対応する演算データが、各々０（零）から始まる正の整数のアドレスに順次対応づけられて格納され、演算データは、２次またはそれ以上の所定の高次多項式における係数であって、演算データ取得手段は、ＰＣＭデータの上位ｑビットの値を取得して、この値をアドレスとして変換テーブルから係数を取得するものであり、演算手段は、演算データ取得手段により取得された係数を所定の高次多項式に代入することにより補間演算式を生成し、生成した補間演算式にＰＣＭデータを代入することによってＰＣＭデータに対応する出力データを求めるものであり、ｐ、ｑ及びｒは０（零）を含む正の整数であって、上記式（３）に示す関係を満たす数であることを特徴とする構成とした場合、変換テーブルには、入力ＰＣＭデータの上位ｑビットの値に相当するだけのわずかな係数のみを格納すれば良いので、変換テーブルのサイズが小さくて済む。さらに、入力されるＰＣＭデータに近い代表点に対応する係数を取得した上で、高次多項式を利用した補間演算を実行するので、極めて負荷が軽い簡単な演算を行うだけで済む上、きめ細かい音声処理を実行することができる。
【発明を実施するための最良の形態】
【００２０】
［第１の実施の形態］
図１は、本発明を適用した第１の実施の形態における音声処理装置１０の機能的構成を示すブロック図である。
図１に示すように、音声処理装置１０には、ＣＰＵ（Central Processing Unit）２１及びＲＡＭ（Random Access Memory）２２が外部接続される。
音声処理装置１０は、ＣＰＵ２１及びＲＡＭ２２と音声処理装置１０が備える各部との間でデータを送受信するためのバスインターフェイス１１、バスインターフェイス１１を介して入力されるデジタル音声データに対してピッチ・エンベロープ処理を実行するピッチ・エンベロープ処理部１２、ピッチ・エンベロープ処理部１２により処理されたデジタル音声データにディレイ効果をかけるディレイ処理部１３、ピッチ・エンベロープ処理部１２により処理されたデジタル音声データにディストーション効果をかけるディストーション処理部１４、ピッチ・エンベロープ処理部１２とディレイ処理部１３とディストーション処理部１４とにより処理されたデジタル音声データについてミキサー処理を実行するミキサー処理部１５、ミキサー処理部１５により処理されたデジタル音声データのボリュームを調整するボリューム処理部１６、及び、ボリューム処理部１６により処理されたデジタル音声データに基づき音声を出力する音声出力部１７を備える。
【００２１】
図２は、ディストーション処理部１４が有するディストーション変換テーブル１８（変換テーブル）の構成を模式的に示す図である。図２に示すように、ディストーション変換テーブル１８には、複数の出力データが、それぞれ０（零）から始まる正の整数のアドレスに対応づけられて、格納される。
【００２２】
なお、図２のディストーション変換テーブル１８においては、アドレス０に対応する出力データをdist data[0]、アドレス１に対応する出力データをdist data[1]と表記し、以下、アドレスｎ（ｎは整数）に対応する出力データをdist data[n]と表記するが、実際には、ディストーション変換テーブルには実データが格納される。
【００２３】
ディストーション変換テーブル１８には、入力されるＰＣＭデータ（以下、入力ＰＣＭデータ）がとり得る全ての値の中から、一定の間隔で（所定の数毎に）設定された代表点に対応する出力データのみが格納される。
【００２４】
例えば、入力ＰＣＭデータが１６ビットのデータであれば、２進数表記で「0000000000000000」から「1111111111111111」まで、６５５３６通りの値をとり得る。これら全ての値に対応する出力データをディストーション変換テーブル１８に格納する場合、ディストーション変換テーブル１８には６５５３６個の出力データを格納する必要がある。
ここで、入力ＰＣＭデータがとり得る値の中で、最小の値「０」を先頭の代表値とし、以後１６毎に（１６ずつ増加する毎に）代表点を定めると、代表点の数は４０９６個となる。また、入力ＰＣＭデータの値の中で「０」を先頭として２５６毎に代表点を定めると、代表点の数は２５６個となる。そして、これら代表点に対応する出力データのみを格納した場合、ディストーション変換テーブル１８に格納される出力データの数は、入力ＰＣＭデータがとり得る全ての値に対応する出力データの数に比べ、極めて少ない数で済む。
【００２５】
このように、ディストーション変換テーブル１８には、入力ＰＣＭデータの値について一定の間隔をおいて設定された代表点に対応する出力データが格納される。なお、ディストーション変換テーブル１８に格納される出力データに付されるアドレスは連番である。
【００２６】
図３は、ディストーション処理部１４の動作を示すフローチャートである。
まず、ピッチ・エンベロープ処理部１２からディストーション処理部１４にｐビットのＰＣＭデータが入力されると（ステップＳ１１）、ディストーション処理部１４は、入力されたＰＣＭデータの上位ｑビットのデータを取得してパラメータｋとし（ステップＳ１２）、残りの下位ｒビットのデータを取得する（ステップＳ１３）。
【００２７】
そして、ディストーション処理部１４は、パラメータｋの値をアドレスとしてディストーション変換テーブル１８を参照し、出力データdist data[k]を取得する（ステップＳ１４）。さらに、ディストーション処理部１４は、パラメータｋの値に１を加えた値をアドレスとしてディストーション変換テーブル１８を参照し、出力データdist data[k+1]を取得する（ステップＳ１５）。
【００２８】
そして、ディストーション処理部１４は、ステップＳ１４で取得した出力データdist data[k]、及び、ステップＳ１５で取得した出力データdist data[k+1]について、ステップＳ１３で取得した下位ｒビットの値に基づいて補間演算処理を実行することにより、ステップＳ１１で入力されたＰＣＭデータに対応する出力ＰＣＭデータを求め（ステップＳ１６）、求めたＰＣＭデータを出力して（ステップＳ１７）、動作を終了する。
【００２９】
図４は、ディストーション処理部１４の動作によりデータが処理される手順を模式化して示す図である。
まず、ディストーション処理部１４に入力されたｐビットの入力ＰＣＭデータ１０１は、上位ｑビットと下位ｒビットに分けて処理される。すなわち、ディストーション処理部１４によって、ｐビットの入力ＰＣＭデータ１０１のうち、上位ｑビットの値がパラメータｋとして取得される一方、下位ｒビットの値が図３のステップＳ１６における補間演算に用いられる。なお、入力されるｐビットのＰＣＭデータを上位ｑビットと下位ｒビットとに分ける場合、下記式（４）に示す関係が成り立つものとする。
ｐ＝ｑ＋ｒ  …（４）
【００３０】
上位として処理されるビット数ｑ、及び、下位として処理されるビット数ｒは、ディストーション変換テーブル１８における代表点の設定方法に従って決定される。
この点について詳細に説明する。
【００３１】
ディストーション処理部１４による処理は、次の３段階に分けて考えることができる。
［I］代表点をα毎に設定することで、入力ＰＣＭデータ１０１がとり得る値を、α毎の区間に分割する。
［II］入力ＰＣＭデータ１０１の値が、どの区間に属するかを決定する（図３のステップＳ１２、及び、ステップＳ１４〜Ｓ１５）。
［III］該当する区間における入力ＰＣＭデータ１０１の位置を決定し、その位置に応じた補間演算を行うことにより、入力ＰＣＭデータ１０１に対応する出力データ１０４を求める（図３のステップＳ１６）。
【００３２】
上記段階［II］では、入力ＰＣＭデータ１０１をαで除算すれば良いが、ここで、αが２のべき乗の数である場合、入力ＰＣＭデータ１０１の上位の桁のみを取り出すことで、商が得られる。
一例として、αが２のべき乗の数２ｒである場合に、ｐビットのＰＣＭデータをαで除算する演算式を、下記式（５）に示す。下記式（５）に示すように、商は２（ｐ−ｒ）、すなわち２ｑである。
２ｐ÷２ｒ＝２（ｐ−ｒ）＝２ｑ  …（５）
従って、ディストーション処理部１４は、入力ＰＣＭデータ１０１の上位ｑビットのみを取得することによって、入力ＰＣＭデータ１０１を除算するのと同じ結果を得ている。
【００３３】
このような処理を行うため、上記段階［I］では、代表点は２のべき乗の数２ｒ毎に設定される。ディストーション変換テーブル１８には、各代表点に対応する出力データが格納される。なお、この場合、代表点の数は２ｑ個となる。この数は、入力ＰＣＭデータ１０１の上位ｑビットがとり得る値と同数である。
【００３４】
そして、上記段階［II］では、入力ＰＣＭデータの上位（ｐ−ｒ）ビットの値、すなわち上位ｑビットの値が取得され、この値に基づいてディストーション変換テーブル１８が参照されて、入力ＰＣＭデータに最も近い代表点に対応する出力データが取得される。
【００３５】
さらに、代表点が２ｒ毎に設定される場合、入力ＰＣＭデータ１０１より小さく、かつ最も入力ＰＣＭデータ１０１に近い代表点は、入力ＰＣＭデータ１０１の下位ｒビットを全て「０」にした値である。この代表点の次の代表点は、入力ＰＣＭデータ１０１の上位ｑビットに１を加え、下位ｒビットを全て「０」にした値である。
例えば、代表点が２２毎に設定され、ＰＣＭデータ１０１が「0110」であった場合、入力ＰＣＭデータ１０１より小さくかつ最も入力ＰＣＭデータ１０１に近い代表点は「0100」である。また、この代表点の次の代表点、すなわち入力ＰＣＭデータ１０１より大きくかつ入力ＰＣＭデータ１０１に最も近い代表点は、「1000」である。
つまり、入力ＰＣＭデータ１０１に最も近い代表点は、入力ＰＣＭデータ１０１の上位ｑビットの値と、この値に１を加えた値から求められる。
【００３６】
このことから、上記段階［III］において、ディストーション処理部１４は、入力ＰＣＭデータ１０１の上位ｑビットの値であるパラメータｋに基づいて、ディストーション変換テーブル１８のアドレスｋに対応する出力データ１０２（dist data[k]）を取得し、入力ＰＣＭデータ１０１の上位ｑビットの値に１を加えたパラメータｋ＋１に基づいて、ディストーション変換テーブル１８のアドレスｋ＋１に対応する出力データ１０３（dist data[k+1]）を取得する。上述した理由により、入力ＰＣＭデータ１０１に対応する出力データ１０４が、出力データ１０２と出力データ１０３の間に位置するからである。
【００３７】
そして、ディストーション処理部１４は、出力データ１０２（dist data[k]）及び出力データ１０３（dist data[k+1]）の間で、入力ＰＣＭデータ１０１の下位ｒビットの値に基づいて、補間演算を行うことにより出力データ１０４を決定する。
本第１の実施の形態で、ディストーション処理部１４は、直線補間方式による補間演算を行うものとする。ディストーション処理部１４は、入力ＰＣＭデータ１０１に対応する出力データ１０４を求めるため、下記式（６）に従って演算を行う。
【００３８】
(dist data[k+1]−dist data[k])÷２ｒ×下位ｒビットの値＋dist data[k]  …（６）
【００３９】
上記式（６）による演算によって、入力ＰＣＭデータ１０１に対応する出力データ１０４が求められ、図３のステップＳ１７において出力される。
【００４０】
なお、上位ｑビットと下位ｒビットのビット数は、上述のように代表点の間隔によって決定されるものであり、ｑとｒのいずれか一方が他方より大きくても、ｑとｒが同数であっても良い。代表点を設定する間隔が狭く、ｑがｒに比べて大きい場合、多くの出力データを格納したディストーション変換テーブル１８が必要になるが、補間演算処理を高速に行うことができるという利点がある。一方、代表点を設定する間隔が広く、ｑがｒに比べて小さい場合、補間演算処理の負荷が大きくなるものの、ディストーション変換テーブル１８のサイズを小さくすることができるという利点がある。上述したｑ及びｒの値は、これらの利点を勘案して決定すれば良い。
【００４１】
以上、本発明を適用した第１の実施の形態について説明したが、その具体的な実施例を、図５及び図６を参照して説明する。
【００４２】
［実施例］
図５は、本発明を適用した第１の実施の形態に対応する実施例において、処理対象のＰＣＭデータの波形を示す図である。ここでは、図５（ａ）に示すＰＣＭデータを、同図（ｂ）に示す波形のＰＣＭデータに変換する場合について説明する。
【００４３】
図６は、本実施例におけるディストーション処理部１４の具体的な動作を示すフローチャートである。
【００４４】
まずステップＳ２１において、ディストーション処理部１４に、４ビットの入力ＰＣＭデータ１０５が入力される。入力ＰＣＭデータ１０５の値は「0011」であり、上位２ビットの値は１０進数表記で「０」、下位２ビットの値は１０進数表記で「３」となる。
【００４５】
続いて、ステップＳ２２で、ディストーション処理部１４は、入力ＰＣＭデータ１０５の上位２ビットの値「０」をパラメータｋとする。そして、アドレスｋ、アドレスｋ＋１をもとにディストーション変換テーブル１８ａを参照し、出力データを取得する。
ディストーション変換テーブル１８ａにおいて、アドレス「０」に対応する出力データは「１」であり、アドレス「１」に対応する出力データは「９」である。
【００４６】
その後、ステップＳ２３において、ディストーション処理部１４は、ステップＳ２２で取得した出力データ「１」及び「９」に対し、直線補間演算を実行する。
すなわち、上記式（６）において、dist data[k+1]に「９」を代入し、dist data[k]に「１」を代入し、ｒに「２」を代入し、下位２ビットの値として「３」を代入する。これにより、ステップＳ２３における直線補間演算の式は下記式（７）に示すようになる。
【００４７】
（９−１）÷２２×３＋１＝７  …（７）
【００４８】
上記式（７）に示す演算により、入力ＰＣＭデータ１０５に対応する出力データは「７」と求められるので、ディストーション処理部１４はステップＳ２４において、出力ＰＣＭデータ「７」を出力する。
【００４９】
以上のように、本発明を適用した第１の実施の形態における音声処理装置１０によれば、ディストーション変換テーブル１８，１８ａには、入力ＰＣＭデータの上位ｑビットの値と同数の出力データを格納しておけば良い。この数は入力ＰＣＭデータがとり得る値の数よりも極めて少なく、非常に容量の小さなメモリ領域しか必要としない。例えば、上記実施例においては、４ビットの入力ＰＣＭデータ１０５に対応する場合、ディストーション変換テーブル１８ａには、上位２ビットに対応する４個の出力データが格納される。仮に、４ビットの入力ＰＣＭデータがとり得る全ての値（「0000」〜「1111」）にディストーション変換テーブルを対応させようとすれば、１６個の出力データをディストーション変換テーブルに格納していなければならないから、本発明を適用することによって、ディストーション変換テーブルに格納される出力データが四分の一になっている。このように、ディストーション処理部１４が有するディストーション変換テーブルは、著しく少ない量のデータのみを保持すれば良いので、大容量のメモリを用いることなく、多ビット数のデジタル音声データを処理できる。
【００５０】
また、ディストーション処理部１４は、入力ＰＣＭデータ１０１に値が近くかつ入力ＰＣＭデータ１０１より小さい値の代表点と、入力ＰＣＭデータ１０１に値が近くかつ入力ＰＣＭデータ１０１より大きい値の代表点とに対応する出力データに基づいて、直線補間演算を実行するので、ディストーション処理部１４が実行すべき演算処理の負荷は極めて軽く、複雑な回路構成や高負荷に耐え得る演算装置等は不要である。従って、本第１の実施の形態における音声処理装置１０によれば、小容量のメモリ領域のみを使って、効率の良い、負荷が軽い処理を行うことで、デジタル音声データを変換して音響効果を加えることができる。
【００５１】
なお、上記第１の実施の形態においては、ディストーション処理部１４によって直線補間方式による補間演算を行う場合について説明したが、本発明はこれに限定されるものではなく、その他の補間方式を用いることも勿論可能である。以下、他の補間方式を用いる例として、３次スプライン補間方式を用いた場合について説明する。
【００５２】
［第２の実施の形態］
以下、本発明を適用した第２の実施の形態について説明する。なお、本第２の実施の形態においては、ディストーション処理部１４が、上記第１の実施の形態におけるディストーション変換テーブル１８に代えて、スプライン係数テーブル１９を有する他は、上記第１の実施の形態と同様である。従って、上記第１の実施の形態と同様の構成部については、同符号を付して図示および説明を省略する。
【００５３】
図７は、本第２の実施の形態として、３次スプライン補間方式を用いた場合の代表点の設定状態を示す図表である。図中の点Ｎ０．Ｎ１，Ｎ２，Ｎ３，Ｎ４のうち、Ｎ０，Ｎ１，Ｎ２，Ｎ３が代表点である。
本第２の実施の形態では、一例として、４ビットの入力ＰＣＭデータが入力され、Ｎ０「0000」を先頭の代表点として２２毎に代表点が設定される。具体的には、代表点はＮ０「0000」、Ｎ１「0100」、Ｎ２「1000」及びＮ３「1100」である。
【００５４】
図８は、第２の実施の形態におけるスプライン係数テーブル１９の構成を模式的に示す図であり、図９は、第２の実施の形態におけるディストーション処理部１４の動作を示すフローチャートである。
【００５５】
本第２の実施の形態においては、下記式（８）に示す３次多項式において、係数ａ，ｂ，ｃ，ｄを設定して補間演算式（補間関数）を得て、さらに、得られた補間演算式に入力ＰＣＭデータの値を代入することにより、補間演算を行う。係数ａ，ｂ，ｃ，ｄは、上記代表点毎に定められ、スプライン係数テーブル１９に格納される。すなわち、スプライン係数テーブル１９には、入力ＰＣＭデータ１０６の上位２ビットに対応づけて、上記式（８）に示す３次多項式において係数ａ，ｂ，ｃ，ｄとして設定されるべき数が格納される。
【００５６】
Ｓ（ｘ）＝ａ×ｘ３＋ｂ×ｘ２＋ｃ×ｘ＋ｄ  …（８）
【００５７】
図９のステップＳ３１において、ディストーション処理部１４は、入力ＰＣＭデータ１０６の上位２ビットのデータをテーブルインデックスとしてスプライン係数テーブル１９を参照し、スプライン係数テーブル１９に格納された係数ａ，ｂ，ｃ，ｄを取得する。図８に示す例では、入力ＰＣＭデータ１０６は「0101」であるから、ディストーション処理部１４は、スプライン係数テーブル１９において上位ビット「01」に対応する係数ａ０１，ｂ０１，ｃ０１，ｄ０１を取得する。
【００５８】
そして、ステップＳ３２で、ディストーション処理部１４は、ステップＳ３１で取得した係数ａ０１，ｂ０１，ｃ０１，ｄ０１を上記式（８）に代入することにより、下記式（９）に示す補間演算式を得る。さらに、得られた補間演算式の変数ｘに入力ＰＣＭデータ１０６の値「0101」を代入し、出力ＰＣＭデータを求める。
【００５９】
Ｓ（ｘ）＝ａ０１×ｘ３＋ｂ０１×ｘ２＋ｃ０１×ｘ＋ｄ０１  …（９）
【００６０】
その後、ディストーション処理部１４は、ステップＳ３２で得られた出力ＰＣＭデータを出力する。
【００６１】
以上のように、本発明を適用した第２の実施の形態によれば、スプライン係数テーブル１９においては、入力ＰＣＭデータ１０６の上位ビットがとり得る値と同数の係数を格納しておくだけで良いので、スプライン係数テーブル１９は、非常に小さな容量のメモリ領域に格納することができる。そして、ディストーション処理部１４は、３次スプライン補間方式による補間演算処理を実行するので、入力ＰＣＭデータ１０６を複雑に変換することが可能である。これにより、きめ細かく音響効果を加えることができる。さらに、ディストーション処理部１４が実行する演算処理は、スプライン係数テーブル１９から取得した係数を３次多項式にあてはめた上、この３次多項式に入力ＰＣＭデータ１０６を代入するだけの処理であり、処理の負荷は極めて軽く、高速に処理可能である。
このように、大容量のメモリ領域を必要とすることなく、効率よく演算処理を行って、デジタル音声データを変換することが可能である。
【００６２】
なお、上記第１及び第２の実施の形態において、音声処理装置１０は、複数チャンネルのデジタル音声データを同時に処理できる構成としても良い。また、音声処理装置１０によってＰＣＭデータを処理する場合、ＰＣＭデータの量子化ビット数やサンプリングレートは任意であり、適宜変更可能である。また、具体的な補間演算処理の方法についても、上述した直線補間や３次スプライン補間に限らず、様々な演算を行うことが可能であり、その他の細部構成についても、本発明の趣旨を損なうことのない範囲において適宜変更可能であることは勿論である。
【図面の簡単な説明】
【００６３】
【図１】本発明を適用した第１の実施の形態における音声処理装置１０の機能的構成を示すブロック図である。
【図２】図１のディストーション処理部１４が有するディストーション変換テーブル１８の構成を模式的に示す図である。
【図３】図１のディストーション処理部１４の動作を示すフローチャートである。
【図４】図１のディストーション処理部１４の動作によりデータが処理される手順を模式化して示す図である。
【図５】本発明を適用した第１の実施の形態に対応する実施例において、処理対象のＰＣＭデータの波形を示す図である。
【図６】本発明を適用した第１の実施の形態に対応する実施例において、ディストーション処理部１４の具体的な動作を示すフローチャートである。
【図７】本発明を適用した第２の実施の形態における代表点の設定状態を示す図表である。
【図８】本発明を適用した第２の実施の形態におけるスプライン係数テーブル１９の構成を模式的に示す図である。
【図９】本発明を適用した第２の実施の形態におけるディストーション処理部１４の動作を示すフローチャートである。
【図１０】従来の音声処理方法を示す図である。
【符号の説明】
【００６４】
１０  音声処理装置
１１  バスインターフェイス
１２  ピッチ・エンベロープ処理部
１３  ディレイ処理部
１４  ディストーション処理部
１５  ミキサー処理部
１６  ボリューム処理部
１７  音声出力部
１８  ディストーション変換テーブル
１９  スプライン係数テーブル
２１  ＣＰＵ
２２  ＲＡＭ
【図１】
2005300656.tif 000003
【図２】
2005300656.tif 000004
【図３】
2005300656.tif 000005
【図４】
2005300656.tif 000006
【図５】
2005300656.tif 000007
【図６】
2005300656.tif 000008
【図７】
2005300656.tif 000009
【図８】
2005300656.tif 000010
【図９】
2005300656.tif 000011
【図１０】
2005300656.tif 000012