(57)【要約】【課題】ピッチの補正を常に適切に行えるようにする技術を提供する。【解決手段】分析部２１は、Ａ／Ｄ変換器８から、マイクから入力された音声のデータを受け取って線形予測分析を行い、ＬＰＣ係数、残差信号、その変形自己相関関数の第１項の２乗和、有声音か否かの判断結果、を分析結果として合成部２２に渡す。合成部２２は、その判断結果が有声音であった場合に、シーケンサ２４からのピッチデータで指定のピッチで生成したＲｏｓｅｎｂｅｒｇ  波を対象にＬＰＣ係数を用いたフィルタ処理を行う。それにより、そのピッチの音声データを生成する。【選択図】            図２
2004287350.tif 000002
【特許請求の範囲】
【請求項１】
第１の音声データを入力してその変換を行う音声変換装置において、
前記第１の音声データからフォルマントデータを抽出するデータ抽出手段と、
声道駆動音源波形データを生成する波形データ生成手段と、
前記波形データ生成手段が生成した声道駆動音源波形データに、前記データ抽出手段が抽出したフォルマントデータを合成して第２の音声データを生成する音声データ合成手段と、
を具備することを特徴とする音声変換装置。
【請求項２】
前記音声データ合成手段は、指定されたピッチに応じて前記声道駆動音源波形データを生成する、
ことを特徴とする請求項１記載の音声変換装置。
【請求項３】
前記波形データ生成手段が前記声道駆動音源波形データを生成する声道駆動音源波形はＲｏｓｅｎｂｅｒｇ  波形である、
ことを特徴とする請求項１、または２記載の音声変換装置。
【請求項４】
前記データ抽出手段は、前記第１の音声データをフォルマントデータと残差信号データに分離して該フォルマントデータを抽出し、
前記音声データ合成手段は、前記第１の音声データが示す音声が有声音であった場合にのみ、前記声道駆動音源波形データに前記フォルマントデータを合成する、
ことを特徴とする請求項１、２、または３記載の音声変換装置。
【請求項５】
第１の音声データを入力して音響効果の付加を行う音声効果付与装置において、
前記第１の音声データからフォルマントデータを抽出するデータ抽出手段と、
声道駆動音源波形データを生成する波形データ生成手段と、
前記波形データ生成手段が生成した声道駆動音源波形データに、前記データ抽出手段が抽出したフォルマントデータを合成して第２の音声データを生成する音声データ合成手段と、
前記音声データ合成手段が生成した第２の音声データを、前記第１の音声データと共に出力することにより、該第１の音声データに対して音響効果を付加する音響効果付加手段と、
を具備することを特徴とする音声効果付与装置。
【請求項６】
前記波形データ生成手段は、前記声道駆動音源波形データを、ピッチを異ならせて複数、生成し、
前記音声データ合成手段は、前記波形データ生成手段が生成した複数の前記声道駆動音源波形データのそれぞれに対し、前記データ抽出手段が抽出したフォルマントデータを合成して前記第２の音声データを複数、生成し、
前記音響効果付加手段は、前記音声データ合成手段が生成した複数の第２の音声信号を前記第１の音声信号と共に出力する、
ことを特徴とする請求項５記載の音声効果付与装置。
【請求項７】
前記波形データ生成手段が前記声道駆動音源波形データを生成する声道駆動音源波形はＲｏｓｅｎｂｅｒｇ  波形、或いはパルス波形である、
ことを特徴とする請求項５、または６記載の音声効果付与装置。
【請求項８】
第１の音声データを入力してその変換を行う音声変換装置に実行させるプログラムであって、
前記第１の音声データからフォルマントデータを抽出する機能と、
声道駆動音源波形データを生成する機能と、
前記生成する機能により生成した声道駆動音源波形データに、前記抽出する機能により抽出したフォルマントデータを合成して第２の音声データを生成する機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、入力した音声データから抽出されるフォルマントデータを利用した音声処理を行うための技術に関する。
【０００２】
【従来の技術】
現在、カラオケ（本来は「歌はからっぽなオーケストラ」の意）は娯楽として多くの人に楽しまれている。そのカラオケを行うためのカラオケ装置のなかには、歌っている人の音声を、楽曲のピッチとなるように補正（変換）する機能（ピッチ補正機能）を搭載したものがある。
【０００３】
そのピッチ補正機能によるピッチの補正は、音声の発音時間を維持させて行われる。そのように、音声の発音時間を維持させたままピッチを補正（変換）する一般的な従来の方法（以降「第１の従来の方法」と呼ぶ）としては、その音声の波形データを一定サンプル数のフレームに分けて切り出し、切り出したフレーム毎に、ピッチを上げる場合にはサンプルの間引き、ピッチを下げる場合には補間を実施するというものが挙げられる。その際、間引きにより足りなくなった分のサンプルはフレーム中の他の部分を充当し、補間により余ったサンプルは破棄する。
【０００４】
この方法は、処理が比較的に簡単で負荷が小さい。しかし、フレーム間で波形が不連続となり、それによるノイズが発生する。そのノイズを低減するために、フレームに窓関数を乗算した上、フレーム間がオーバーラップするようにフレームを抽出したり、或いはフレームの接合点にゼロクロス点を選択するなどの対策が取られるのが通常である。
【０００５】
別の従来の方法（以降、「第２の従来の方法」と呼ぶ）としては、入力した音声信号のピッチを抽出し、そのピッチに対応する１周期分の波形に窓関数を乗算した上で切り出し、この切り出した波形素片を、補正するピッチに対応した周期で繰り返し配置することでピッチを補正するものが挙げられる。
【０００６】
この方法でピッチ補正した音声は、比較的に質が高く、音声のフォルマント（共振周波数）情報もある程度、保存される。周知のように、フォルマント周波数の相対的な位置関係が音韻性と密接な関係にあることが知られており、その情報の保存は、音韻が保存されることを意味する。このことから、カラオケ装置に搭載されたピッチ補正機能の多くには、第２の従来の方法が採用されている。
【０００７】
【特許文献１】
特開平２−１３７９００号公報
【特許文献２】
米国特許第５２３１６７１号明細書
【特許文献３】
米国特許第５３０１２５９号明細書
【特許文献４】
米国特許第５４２８７０８号明細書
【０００８】
【発明が解決しようとする課題】
上記第１の従来の方法では、波形の不連続点によるノイズを低減するために様々な手法が創案されているが、未だ決定的な手法は創案されていない。このため、程度の差はあるとしても必ずノイズが発生する。
【０００９】
第２の従来の方法では、第１の従来の方法と比較して良好な結果を得られるが、音声のピッチ抽出が適切に実施できないと波形素片も適切に切り出せないことから、ピッチの補正が行えないか、或いは不適切な補正を行ってしまうことになる。それらは、例えば間欠的なピッチ補正による不連続な音声の発生、或いは不適切なピッチ補正によって裏返ったような音声の発生などの形で表面化する。
【００１０】
音声は、ピッチを有する有声音と、それを持たない無声音と、に区別される。しかし、それらの間の境界は曖昧で有声音と無声音のどちらにも区別できない中間的な状態が一般的に頻出するのが実情である。このため、音声のピッチ抽出は非常に困難であり、それを抽出できない部分や、誤って抽出する部分が必ず生じる。
【００１１】
その音声はマイクなどから入力するのが普通であるが、その入力の際に外部のノイズが少なからず混入してしまう場合が殆どである。混入したノイズは、ピッチ抽出をより困難なものにさせる。そのようなこともあって、常に適切にピッチ補正を行える技術が望まれていた。
【００１２】
本発明の課題は、ピッチの補正を常に適切に行えるようにする技術を提供することにある。
【００１３】
【課題を解決するための手段】
本発明の音声変換装置は、第１の音声データを入力してその変換を行うことを前提とし、第１の音声データからフォルマントデータを抽出するデータ抽出手段と、声道駆動音源波形データを生成する波形データ生成手段と、波形データ生成手段が生成した声道駆動音源波形データに、データ抽出手段が抽出したフォルマントデータを合成して第２の音声データを生成する音声データ合成手段と、を具備する。
【００１４】
なお、上記音声データ合成手段は、指定されたピッチに応じて声道駆動音源波形データを生成する、ことが望ましい。また、波形データ生成手段が声道駆動音源波形データを生成する声道駆動音源波形はＲｏｓｅｎｂｅｒｇ  波形である、ことが望ましい。
【００１５】
また、上記データ抽出手段は、第１の音声データをフォルマントデータと残差信号データに分離して該フォルマントデータを抽出し、音声データ合成手段は、第１の音声データが示す音声が有声音であった場合にのみ、声道駆動音源波形データにフォルマントデータを合成する、ことが望ましい。
【００１６】
本発明の音声効果付与装置は、第１の音声データを入力して音響効果の付加を行うことを前提とし、第１の音声データからフォルマントデータを抽出するデータ抽出手段と、声道駆動音源波形データを生成する波形データ生成手段と、波形データ生成手段が生成した声道駆動音源波形データに、データ抽出手段が抽出したフォルマントデータを合成して第２の音声データを生成する音声データ合成手段と、音声データ合成手段が生成した第２の音声データを、第１の音声データと共に出力することにより、該第１の音声データに対して音響効果を付加する音響効果付加手段と、を具備する。
【００１７】
なお、上記波形データ生成手段は、声道駆動音源波形データを、ピッチを異ならせて複数、生成し、音声データ合成手段は、波形データ生成手段が生成した複数の声道駆動音源波形データのそれぞれに対し、データ抽出手段が抽出したフォルマントデータを合成して第２の音声データを複数、生成し、音響効果付加手段は、音声データ合成手段が生成した複数の第２の音声信号を第１の音声信号と共に出力する、ことが望ましい。波形データ生成手段が声道駆動音源波形データを生成する声道駆動音源波形はＲｏｓｅｎｂｅｒｇ  波形、或いはパルス波形である、ことが望ましい。
【００１８】
本発明のプログラムは、第１の音声データを入力してその変換を行う音声変換装置に実行させるプログラムであって、第１の音声データからフォルマントデータを抽出する機能と、声道駆動音源波形データを生成する機能と、生成する機能により生成した声道駆動音源波形データに、抽出する機能により抽出したフォルマントデータを合成して第２の音声データを生成する機能と、を実現させる。
【００１９】
本発明では、入力した第１の音声データからフォルマントデータを抽出し、抽出したフォルマントデータを、生成した声道駆動音源波形データに合成して第２の音声データを生成する。
声道駆動音源波形データに第１の音声データから抽出したフォルマントデータを合成して第２の音声データを生成することにより、その第２の音声データに第１の音声データが持つ音韻性が維持される。第１の音声データからのピッチ抽出を行う必要性は回避され、声道駆動音源波形データとしては、任意のピッチを持つものを確実（正確）に、更には聞いた人が自然と感じられるものを生成することが可能となる。これらの結果、第１の音声データのピッチ補正、つまり第２の音声データの生成は常に適切に行えることとなる。
【００２０】
そのピッチ補正後の第２の音声データを第１の音声データに対する音響効果の付与に用いた場合には、常に適切な音響効果を付与することが可能となる。ピッチ抽出を行う必要性を回避することにより、より簡易、或いは低コストで本発明を音声変換装置、或いは音声効果付与装置に適用することが可能となる。
【００２１】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
＜第１の実施の形態＞
図１は、本実施の形態による音声変換装置、及び音声効果付与装置を搭載した電子楽器の構成図である。
【００２２】
その電子楽器は、図１に示すように、楽器全体の制御を行うＣＰＵ１と、複数の鍵を備えた鍵盤２と、各種スイッチを備えたスイッチ部３と、ＣＰＵ１が実行するプログラムや各種制御用データを格納したＲＯＭ４と、ＣＰＵ１のワーク用のＲＡＭ５と、例えば液晶表示装置（ＬＣＤ）や複数のＬＥＤなどを備えた表示部６と、特には図示しない端子に接続されたマイク７から入力されるアナログの音声信号のＡ／Ｄ変換を行いその音声データを出力するＡ／Ｄ変換器８と、ＣＰＵ１の指示に従い楽音発音用の波形データを生成する楽音生成部９と、その生成部９が生成した波形データのＤ／Ａ変換を行い、アナログのオーディオ信号を出力するＤ／Ａ変換器１０と、そのオーディオ信号の増幅を行うアンプ１１と、そのアンプ１１が増幅を行った後のオーディオ信号を音声に変換するスピーカ１２と、例えば着脱自在な記憶媒体にアクセスする外部記憶装置１３と、を備えて構成されている。ＣＰＵ１、鍵盤２、スイッチ部３、ＲＯＭ４、ＲＡＭ５、表示部６、Ａ／Ｄ変換器８、楽音生成部９、及び外部記憶装置１３の間はバスによって接続されている。なお、上記外部記憶装置１３とは、例えばフレキシブルディスク装置、ＣＤ−ＲＯＭ装置、或いは光磁気ディスク装置である。スイッチ部３は、例えばユーザが操作の対象とする各種スイッチの他に、各種スイッチの状態変化を検出するための検出回路を備えたものである。
【００２３】
上記構成の電子楽器において、本実施の形態による音声変換装置は、Ａ／Ｄ変換器８を介して入力した音声信号（デジタル）のピッチ補正を行い出力するものとして実現されている。なお、本実施の形態による音声効果付与装置については、第２の実施の形態で詳細に説明する。
【００２４】
デジタル化した音声信号（以下「原音声データ」、或いは「原波形データ」と呼ぶ）は、ＲＡＭ５に確保された領域（以降、「入力バッファ」と呼ぶ）に一旦、蓄積される。ＣＰＵ１は、そのバッファに蓄積されたフレームサイズ分の原音声データを対象にピッチ補正（変換）のための処理を行い、楽音生成部９からその処理後の音声データをＤ／Ａ変換器１０に出力させることにより、ピッチ補正を行った後の音声をスピーカ１２から放音させる。その処理は、スイッチ部３を構成する所定のスイッチへの操作に応じて、ＲＯＭ４に格納されたプログラムを実行することで行う。本実施の形態による音声変換装置は、例えば鍵盤２、及び表示部６を除く各部によって実現されている。
【００２５】
上記ピッチ補正のための処理は、原音声データからフォルマント成分（データ）を抽出し、指定されたピッチを持つ声道駆動音源波形を生成し、生成したその音源波形に抽出したフォルマント成分を合成する形で行う。そのような合成を行った後の音源波形を音声データとしてＤ／Ａ変換器１０に出力することにより、ピッチ補正を行った後の音声をスピーカ１２から放音させる。
【００２６】
上記声道駆動音源波形は、原音声データとは別に生成する。このため、原音声データからのピッチ抽出は不要であり、任意のピッチを持つものを確実（正確）に生成することができる。フォルマント成分は、周知のように、音韻性と密接な関係にある。その成分を音源波形に合成させることにより、合成後の音源波形に原音声データが持つ音韻性が維持される。これらのことから、音韻性を維持させつつ、つまり「あ」という声は「あ」と聞こえるように維持させつつ、原音声データのピッチ補正を正確に行った後の音声データを生成することができる。また、ピッチ抽出を不要としたことにより、処理の負荷はそうでない場合と比較して大幅に軽くなる。それにより、簡単、或いは低コストのハードウェア構成でもピッチ補正を行えるようになる。
【００２７】
図２は、本実施の形態による音声変換装置の機能構成図である。その音声変換装置で実現されている機能的構成を示したものである。図２、更には図３〜図９に示す説明図を参照して、上述したようにピッチ補正を行った音声データを生成するための機能的構成、及びその動作について詳細に説明する。
【００２８】
分析部２１は、Ａ／Ｄ変換器８から入力した１フレームサイズ分の原音声データの分析を行う。その分析は、１フレームサイズ分の音声データに窓関数を乗算し、乗算後の音声データを対象に線形予測分析（ＬＰＣ：Ｌｉｎｅａｒ  Ｐｒｅｄｉｃｔｉｖｅ  Ｃｏｄｉｎｇ）を行い、その予測係数（以下、「ＬＰＣ係数」）を算出する。それ以外には、算出したＬＰＣ係数、及び原音声データから残差信号を算出し、残差信号の変形自己相関関数を算出し、原音声データが有声音のものか（無声音ではないか）否か判断する。それらの分析結果は合成部２２に送られる。
【００２９】
上述したような分析を行う分析部２１は、図３に示すような機能構成となっている。ここでは、Ａ／Ｄ変換器８は１１．０２５ｋＨｚのサンプリング周波数でマイク７から入力した音声信号のサンプリングを行い原音声データを出力するとの前提で以下の説明を行うこととする。
【００３０】
入力バッファ３１は、ＲＡＭ５に確保された領域であり、Ａ／Ｄ変換器８が出力する原音声データはそれに一旦、格納される。フレーム抽出窓かけ部３２は、入力バッファ３１から読み出した１フレームサイズ分の原音声データに対し窓関数、例えば（１）式、及び図６に示すようなハニング窓（Ｈａｎｎｉｎｇ  Ｗｉｎｄｏｗ）を乗算する。各フレームの切り出しは、窓関数乗算後の音声データを対象に、各フレームがオーバーラップするように行う。これは、音声データ再合成時に窓関数乗算に伴う振幅の変化を相殺したり、フレーム間での各種パラメータの跳躍（異常な変化）を軽減するといったことのためである。図６において、「Ｌ」はフレームサイズ、「Ｈ」は各フレーム間でオーバーラップされるずれサイズであるホップサイズである。「ＯＶ」で示すオーバーラップファクタは、各フレームの重なり度合いを示す、Ｌ／Ｈで求められるパラメータである。
【００３１】
【数１】
2004287350.tif 000003
【００３２】
フレームサイズは、ＬＰＣにおいてピッチ成分とフォルマント成分を分離するのに十分なものとする必要がある。通常２０〜３０ｍｓｅｃ程度のサンプルが取れれば良いことから、本実施の形態では、約２３ｍｓｅｃ、即ちフレームサイズ（１フレームのサンプル数）＝２５６（サンプリング周波数＝１１．０２５ｋＨｚ）としている。
【００３３】
オーバーラップファクタは、Ｈａｎｎｉｎｇ  ウィンドウを窓関数として採用するとして８とした。従って、フレームサイズが２５６であればホップサイズは３２となる。
線形予測分析（ＬＰＣ）は、過去の数サンプルの信号値の線形結合により現在値ｘｎ  を予測するためのものであり、その予測は次式により行われる。
【００３４】
【数２】
2004287350.tif 000004
【００３５】
ここで、ｅｎ  は実際の信号値ｘｎ  と予測値との誤差で残差信号と呼ばれる。αｋ  は過去の信号値に対して重み付けを行うための係数でこれがＬＰＣ係数となる。ｐは予測次数である。ＬＰＣでは、残差信号ｅｎ  の２乗和が最小になるようにＬＰＣ係数を決定する。従って、残差信号ｅｎ  の２乗和をε２  とすると
【００３６】
【数３】
2004287350.tif 000005
【００３７】
となり、（）２  内を展開すると
【００３８】
【数４】
2004287350.tif 000006
【００３９】
となる。
（４）式において、２乗和ε２  を最小にするためには、それをＬＰＣ係数αｉ  で偏微分し、その値を０とする条件を求めれば良い。つまり、
【００４０】
【数５】
2004287350.tif 000007
【００４１】
であることから、
【００４２】
【数６】
2004287350.tif 000008
【００４３】
を求めれば良い。
（６）式中の自己相関関数の計算方法には、共分散法と自己相関法とがある。本実施の形態では、自己相関法を用いている。これは、共分散法と比較して安定した解が求められるためである。
【００４４】
自己相関法では、（６）式中の自己相関関数を短時間自己相関関数に置き換える。即ち自己相関関数をＲｉ  とすると
【００４５】
【数７】
2004287350.tif 000009
【００４６】
であるから、
【００４７】
【数８】
2004287350.tif 000010
【００４８】
となる。これを行列式で表現すると、
【００４９】
【数９】
2004287350.tif 000011
【００５０】
となる。この式は正規方程式またはＹｕｌｅ−Ｗａｌｋｅｒ方程式と呼ばれ、左辺のｐ×ｐの自己相関の行列は、対称かつ対角線に平行な線上に配置される要素がすべて等しいＴｏｅｐｌｉｔｚ型となっている。この型の行列は通常の行列式による解法を使わなくとも、Ｌｅｖｉｎｓｏｎ−Ｄｕｒｂｉｎ  の再帰的解法を使って効率的に解くことができる。
【００５１】
線形予測分析部３３は、上述したようなことから、フレーム抽出窓かけ部３２からフレーム単位で音声データを入力し、Ｌｅｖｉｎｓｏｎ−Ｄｕｒｂｉｎ  の再帰的解法を使って（９）式を解くことによりＬＰＣ係数を算出する。その算出は、具体的には、図７に示すフローチャートに沿って行われる。ここでその図７を参照して、ＬＰＣ係数の算出方法について詳細に説明する。
【００５２】
本実施の形態では、漸化式によってｐａｒｃｏｒ係数を順次、求め、その係数を用いてＬＰＣ係数を求める形となっている。つまりｐａｒｃｏｒ方式にＬｅｖｉｎｓｏｎ−Ｄｕｒｂｉｎ  の再帰的解法を適用したものとなっている。その漸化式は、第１項から第ｐ（予測次数）項まで順次、求めるようになっている。その進行を管理するために変数ｎを用意している。
【００５３】
先ず、ステップＳＬ１では、（７）式を用いて自己相関関数Ｒを計算する。それら自己相関関数Ｒは（９）式の左辺に示すｐ×ｐの自己相関の行列中に要素として配置されるものである。続くステップＳＬ２では、配列変数Ｗの添字（括弧内の数字）が０で指定される要素（以降「Ｗ０  」と表記する。他の要素についても同様である）に自己相関関数Ｒ１  、配列変数Ｅの要素Ｅ０  に自己相関関数Ｒ０  、変数ｎに１、をそれぞれ代入する。ステップＳＬ３にはその後に移行する。
【００５４】
ステップＳＬ３では、配列変数ｋの要素ｋｎ  には要素Ｗｎ−１  の値を要素Ｅｎ−１  の値で割った値（＝Ｗｎ−１／Ｅｎ−１）を代入し、要素Ｅｎ  には、１から要素ｋｎ  の値を２乗した値を減算した値を要素Ｅｎ−１  の値に掛けて得られる値（＝Ｅｎ−１（１−ｋｎ２））を代入する。要素ｋｎ  に代入した値はｐａｒｃｏｒ係数（偏自己相関係数）である。
【００５５】
ステップＳＬ３に続くステップＳＬ４では、配列変数αの２つの変数ｎの値で指定される要素（図中「αｎ（ｎ）」と表記。以降、その表記法を用いる）に要素ｋｎの負の値（＝−ｋｎ  ）を代入し、変数ｉに１を代入する。その代入後にステップＳＬ５に移行する。
【００５６】
ステップＳＬ５では、変数ｉの値が変数ｎの値より小さいか否か判定する。その関係が満たされていた場合、判定はＹＥＳとなり、次にステップＳＬ６で要素αｉ（ｎ）（変数ｎの値、及び変数ｉの値で指定される要素）に、要素αｉ（ｎ−１）の値から、要素ｋｎ  の値に要素αｎ−Ｉ（ｎ−１）の値を掛けた値を減算して得られる値（＝αｉ（ｎ−１）−ｋｎαｎ−ｉ（ｎ−１））を代入し、その代入後に変数ｉの値をインクリメントする。そのインクリメント後はステップＳＬ５に戻る。一方、そうでない場合には、判定はＮＯとなってステップＳＬ７に移行する。
【００５７】
ステップＳＬ５、ＳＬ６で形成される処理ループはステップＳＬ５の判定がＮＯとなるまで繰り返し実行される。その結果、要素αｉ（ｎ−１）（１≦ｉ≦ｎ−１）に順次、値が代入される。
ステップＳＬ７では、変数ｎの値が予測次数ｐと等しいか否か判定する。それらが等しい場合、判定はＹＥＳとなってステップＳＬ９に移行する。そうでない場合には、判定はＮＯとなってステップＳＬ８に移行し、要素Ｗｎ  に、以下の式により求めた値を代入し、変数ｎの値をインクリメントする。その後は上記ステップＳＬ３に戻る。
【００５８】
【数１０】
2004287350.tif 000012
【００５９】
このようにして、ステップＳＬ３〜ＳＬ８で形成される処理ループをステップＳＬ７の判定がＹＥＳとなるまで繰り返し実行することにより、予測次数ｐ分のＬＰＣ係数がその次数ｐにより指定される各要素αｉ（ｐ）（１≦ｉ≦ｐ）に代入されることになる。このことから、ステップＳＬ９以降では、各要素αｉ（ｐ）に代入されたＬＰＣ係数を抽出して保存するための処理が行われる。その保存は、図中「αｉ  」と表記の一次元の配列変数の各要素に代入することで行われる。ここでは、その配列変数名は「α」とする。
【００６０】
先ず、ステップＳＬ９では、変数ｉに１を代入する。続くステップＳＬ１０では、要素αｉ  に、要素αｉ（ｐ）の値を代入し、その代入後に変数ｉの値をインクリメントする。
その次に移行するステップＳＬ１１では、変数ｉの値が予測次数ｐより大きいか否か判定する。保存すべきＬＰＣ係数の保存が終了した場合、その関係を満たすようになることから、判定はＹＥＳとなり、ここで一連の処理を終了する。そうでない場合には、判定はＮＯとなって上記ステップＳＬ１０に戻る。それにより、保存すべきＬＰＣ係数の保存が全て終了するまで、ステップＳＬ１０、ＳＬ１１で形成される処理ループを繰り返し実行する。
【００６１】
線形予測分析部３３は、上述したようにしてＬＰＣ係数を算出する。そのＬＰＣ係数が合成部２２に渡される。
残差信号算出部３４は、フレーム抽出窓かけ部３２からフレーム単位で音声データを入力し、線形予測分析部３３からＬＰＣ係数を入力して、残差信号ｅｎ  の算出を行う。その算出は、（２）式を変形した式を用いて行う。そのようにして算出された残差信号ｅｎ  が合成部２２に渡される。なお、その残差信号ｅｎ  はｐａｒｃｏｒ係数を用いて算出しても良い。
【００６２】
変形自己相関関数算出部３５は、残差信号ｅｎ  の自己相関関数である変形自己相関関数ｒｉ  を以下の式により算出する。その残差信号ｅｎ  には入力した原音声データからフォルマントの影響を除去した声帯音源のピッチ情報が含まれている。このため、自己相関関数ｒｉ  を求めることにより、声帯音源の駆動状態を高精度にジャッジすることができる。
【００６３】
【数１１】
2004287350.tif 000013
【００６４】
有声音／無声音ジャッジ部３６は、変形自己相関関数算出部３５から変形自己相関関数ｒｉ  を受け取る。受け取った変形自己相関関数ｒｉ  の各項を変形自己相関関数ｒｉ  の最初の項である２乗和（  外１  ）で除算して正規化する。その２乗和は、変形自己相関関数算出部３５から合成部２２にも渡される。
【００６５】
【外１】
2004287350.tif 000014
【００６６】
統計から、声帯音源のピッチはおよそ５０〜４００Ｈｚ程度の間に収まることが知られている。このため、その範囲内で相関値を検索し、閾値を越える相関値が存在する場合はピッチが存在するとみなし有声音、そうでない場合には、つまり閾値を越えるものが存在していない場合にはピッチが存在しないとみなし無声音と判断する。その判断結果が合成部２２に渡される。
【００６７】
５０Ｈｚ〜４００Ｈｚでは、ピッチ周期は２０〜２．５ｍｓｅｃであるから、サンプリング周波数が１１．０２５ｋＨｚであればおよそ２７〜２２０サンプルまでの範囲で自己相関関数を検索すれば良い。閾値としては、実験データから０．１２を設定した。
【００６８】
合成部２２には、上述したようにして、分析部２１からＬＰＣ係数、残差信号、及び有声音か否かの判断結果が分析結果として渡される。その合成部２２は、入力した原音声データの代わりとして出力する音声データの合成を行うものである。
【００６９】
図２に示す楽曲データ２３は、楽曲を自動再生するためのデータであり、例えばスタンダードＭＩＤＩファイル（ＳＭＦ）の形で提供される。それは例えば外部記憶装置１３がアクセス可能な記憶媒体（不図示）に記憶されて販売されるか、或いはインターネット上に開設されたサイトから有料でダウンロードされるものである。ここでは、記憶媒体に記憶されているものとして以降の説明を行うこととする。
【００７０】
シーケンサ２４は、その楽曲データ２３を外部記憶装置１３から取得し、その自動再生を行う。その自動再生は、楽曲データ２３を構成するイベントデータ（ＭＩＤＩデータ）を、それを処理すべきタイミングを示す時間データに従って処理することで行われる。その処理は、時間データが示すタイミングとなったイベントデータが表す演奏上のイベントを実現させるための処理の実行を音源２５に指示することで行われる。
【００７１】
音源２５は、シーケンサ２４の指示に従い、指示された処理を実行することにより、発音させるべき楽音の波形データを生成する。そのように波形データを生成することにより、楽曲データ２３の自動再生により楽音が放音される。その音源２５は、図１の楽音生成部９に搭載された機能によって実現される。
【００７２】
上記楽曲データ２３を自動再生することにより、ユーザは再生される楽曲を伴奏として歌をうたう（カラオケを行う）ことができる。このことから、本実施の形態では、楽曲データ２３は原音声データの補正後のピッチを指定するために用いることができるようにさせている。その指定は、自動再生される楽曲への影響を回避するために、システム・エクスクルーシブ・メッセージで行うものとしている。当然のことながら、特定のチャンネルをその指定に用いるなどの他の方法を採用しても良い。周知のように、システム・エクスクルーシブ・メッセージは、メーカーが自社製の製品に独自に設定しているメッセージであり、通常は、その製品が持つ独自の機能、音色、エフェクト等を設定するのに利用される。
【００７３】
図９は、楽曲データ２３に挿入されるエクスクルーシブ・メッセージのデータ構成を説明する図である。同図（ａ）は補正後のピッチを直接的に指定する絶対値指定時のものであり、同図（ｂ）はその直前に配置されたノートメッセージで指定されたピッチ（ノート番号）からの変更量で指定する相対値指定時のものである。
【００７４】
システム・エクスクルーシブ・メッセージは、値が「Ｆ０」（１６進数表現。以下、特に断らない限り、１６進数で表現する）と「Ｆ７」のステータスバイトの間に挿入される。「Ｆ０」のステータスバイトに、メーカー識別用のメーカーＩＤ（ＭＡＫＥＲＩＤ）、及び製品識別用のデバイスＩＤ（ＤＥＶＩＣＥＩＤ）がその順序で続き、ピッチ指定用のデータは、それ以降に配置される。
【００７５】
デバイスＩＤに続く図９中で「ＶＯＩＣＥ」と表記したものは、ピッチ補正の対象とする音声を指定するコマンド（以降「ピッチ変更ボイスコマンド」と呼ぶ）である。そのコマンドには、その音声を指定する番号が付加されている。その番号が「０」で指定されるのは、外部入力の音声（原音声データ）が対応するボーカルである。「１」〜「３」の番号で指定されるのは、それに音響効果として付加されるコーラスの音声である。「１」〜「３」の番号により、コーラスの音声のなかで対象となるものを指定することができる。ここでは、便宜的にその音声をコーラス１〜３と呼ぶことにする。
【００７６】
図９（ａ）では、ピッチ変更ボイスコマンドの次に「ＮＯＴＥ」が配置されている。その「ＮＯＴＥ」は、そのコマンドで指定された音声の補正後のピッチを示すノート番号である。それにより、絶対値指定時には、ノート番号により補正後のピッチを指定するようになっている。
【００７７】
他方の図９（ｂ）では、そのコマンドの次に「ＣＯＡＲＳＥ」が配置されている。その「ＣＯＡＲＳＥ」は、直前のノートメッセージで指定されたピッチ（ノート番号）を基準にしたピッチの変更量を指定する値である。
「ＣＯＡＲＳＥ」はＭＩＤＩ規格で定義されたＲＰＮ（レジスタード・パラメータ・ナンバー）のコースチューンのコントロール値のＭＳＢと同様である。すなわち、１バイトのデータで示される値が００Ｈ（「Ｈ」は１６進数表現を示すシンボル）では−６４、４０Ｈでは０、７ＦＨでは６３（単位は何れも１００セント）がそれぞれ設定され、半音単位でのピッチ変更が行える。
【００７８】
また、図９（ｂ）中の「ＦＩＮＥ＿Ｍ」「ＦＩＮＥ＿Ｌ」は、上述のＲＰＮのファインチューンのコントロール値のＭＳＢ、ＬＳＢとそれぞれ同様である。すなわち、２バイトのデータで示される値が００Ｈ００Ｈ（前の「００Ｈ」がＭＳＢのデータの値である。以下も同様）であれば−８１９２、４０Ｈ００Ｈでは０、７ＦＨ７ＦＨでは８１９１（単位は何れも１００／８１９２セント）がそれぞれ設定され、半音内での細かなピッチ変更が行える。
【００７９】
シーケンサ２４は、図９（ａ）、或いは（ｂ）に示すようなエクスクルーシブ・メッセージを処理した場合に、そのメッセージで指定された補正後のピッチを示すピッチデータを合成部２２に渡す。そのメッセージが相対値指定時のものであれば、指定された変更量だけ変更させたピッチを求めてそのピッチデータを渡す。
【００８０】
合成部２２は、分析部２１から渡された有声音か否かの判断結果に応じて、シーケンサ２４から渡されたピッチデータで指定されたピッチの音声データを生成する。その生成は、判断結果が有声音であれば、ピッチデータで指定されたピッチの声道駆動音源波形を用いて行い、その判断結果が無声音であれば、残差信号を用いて行う。そのようにして、原音声データが無声音のものである場合には、ピッチを持つ音声データの生成を回避することにより、スピーカ１２から聴く人に違和感を与える音声を放音させないようにしている。その機能構成は図４に示すものとなっている。その図４を参照して、以下に合成部２２の機能構成、及び動作について詳細に説明する。
【００８１】
スイッチ部４１は、分析部２１から渡された残差信号、及びＲｏｓｅｎｂｅｒｇ  波生成部４２から入力したその波形データのうちの一方を、分析部２１による有声音か否かの判断結果に応じて選択し合成フィルタ４３に出力する。その判断結果が無声音であった場合には残差信号、そうでない場合には波形データを選択する。それにより、原音声データが無声音であった場合にのみ、残差信号を用いて音声データを生成する。なお、混乱を避けるために、以降スイッチ部４１から合成フィルタ４３に出力するものは全て「信号」と呼ぶことにする。
【００８２】
Ｒｏｓｅｎｂｅｒｇ  波生成部４２が波形データを生成するＲｏｓｅｎｂｅｒｇ  波は、声門体積流を近似するＫｌａｔｔ−Ｒｏｓｅｎｂｅｒｇ  モデルにおける声道駆動音源波形で次式により定義される。図８にその波形を示す。
【００８３】
【数１２】
2004287350.tif 000015
【００８４】
ここで、Ｔは声帯の振動周期、即ち音声のピッチに対応するデータサンプル数である。ＡＶは振幅パラメータで正規化処理を施す前の変形自己相関関数ｒｉ  の第１項、すなわち残差信号の２乗和の値を参照して調整する。ＯＱ（Ｏｐｅｎ  Ｑｕｏｔｉｅｎｔ  ）は、図８に示すように、声門の開いている期間を調整するためのパラメータである。本実施の形態では０．５としている。
【００８５】
Ｒｏｓｅｎｂｅｒｇ  波生成部４２は、ＡＶの値を調節するために、残差信号の２乗和を分析部２１から受け取り、振動周期Ｔ、つまりデータサンプル数を計算するためにピッチデータをシーケンサ２４から受け取る。それにより、そのピッチデータで指定されたピッチを持つＲｏｓｅｎｂｅｒｇ  波の波形データを生成してスイッチ部４１に出力する。
【００８６】
合成フィルタ４３は、分析部２１から渡されたＬＰＣ係数を使って、スイッチ部４１から受け取った信号に対するフィルタ処理を行うＡ（ｚ）の逆フィルタである。その機能的構成は、図５に示すようになっている。
上記ＬＰＣ係数は、（２）式を満たすように決定され、予測次数ｐ分、存在する。このことから、図５に示すように、計ｐ個の遅延回路５２（５２−１〜ｐ）、及び各遅延回路５２毎に用意された計ｐ個の乗算器５３（５３−１〜ｐ）を備えた構成となっている。各乗算器５３の乗算結果は加算器５４で加算し、加算器５１は、スイッチ部４１から受け取った信号値（図中の「ｅｎ  」は残差信号を示す）を加算器５４の加算結果と加算する。その加算器５１の加算結果が現在の信号値ｘｎ  である。
【００８７】
各遅延回路５２には、加算器５１の加算結果が順次、渡される。それにより、各遅延回路５２によって最新の予測次数ｐ個分の信号値ｘ（ｘｎ−１〜ｘｎ−ｐ）が保持される。それらの信号値ｘに対応するＬＰＣ係数を乗算するために、乗算器５３−１〜ｐには、それぞれ−α１〜−αｐが与えられる。それにより、（２）式を用いて信号値ｘｎ  を求めるようになっている。
【００８８】
上述したように、ＬＰＣ係数はフォルマント情報を持ったものである。そのＬＰＣ係数を用いて合成フィルタ４３がフィルタ処理を行うことにより、スイッチ部４１から渡された信号に対してそのフォルマント成分が付加（合成）される。このため、原音声データが有声音のものであった場合には、その音韻性は維持させたうえで、シーケンサ２４から受け取ったピッチデータで指定されたピッチとなっている音声データが合成フィルタ４３によって合成されることとなる。このとき、その合成には、Ｒｏｓｅｎｂｅｒｇ  波の波形データが用いられる。このため、それは自然と感じられる音声のものとなる。
【００８９】
図４に示す窓かけフレーム加算部４４は、合成フィルタ４３から音声データを受け取り、原音声データと同様に、例えばハニング窓（図６参照）を乗算する。乗算後の音声データは、前のフレームとオーバーラップファクタでオーバーラップするように、つまり前回、書き込みを開始したアドレスから後方にホップサイズ分だけずらしたアドレス以降に出力バッファ４５に加算・出力する。そのようにして出力バッファ４５に格納された音声データが図２に示す加算器２６に出力される。その出力バッファ４５は、図１に示すＲＡＭ５内に確保された領域である。
【００９０】
加算器２６は、合成部２２から渡された音声データの値（波高値）を、音源２５から渡された波形データの値（波高値）と加算することにより、それらを重畳させる。その重畳後の音声データがＤ／Ａ変換器１０に送られる。
本実施の形態による音声変換装置は、上述したようにして、楽曲データ２３の自動再生を行う場合に、マイク７を通して入力された原音声データのピッチをその楽曲データ２３中で指定されているピッチに補正してスピーカ１２から放音させるものとして実現されている。以降は、その音声変換装置を実現させるための電子楽器の動作について、図１０〜図１２に示す各種フローチャートを参照して詳細に説明する。
【００９１】
図１０は、全体処理のフローチャートである。始めに図１０を参照して、その全体処理について詳細に説明する。なお、その全体処理は、ＣＰＵ１が、ＲＯＭ４に格納されたプログラムを実行することにより実現される。
先ず、ステップＳＡ１では、電源がオンされたことに伴い、初期化処理を実行する。続くステップＳＡ２では、スイッチ部３を構成するスイッチへのユーザの操作に対応するためのスイッチ処理を実行する。そのスイッチ処理は、例えばスイッチ部３を構成する検出回路に各種スイッチの状態を検出させてその検出結果を受け取り、その検出結果を解析して状態が変化したスイッチの種類、及びその変化を特定して行われる。
【００９２】
ステップＳＡ２に続くステップＳＡ３では、鍵盤２へのユーザの操作に対応するための鍵盤処理を実行する。その鍵盤処理を実行することにより、鍵盤２への演奏操作に応じて楽音がスピーカ１２から放音される。ステップＳＡ４にはその後に移行する。
【００９３】
ステップＳＡ４では、表示部６を構成するＬＣＤ、或いはＬＥＤを駆動してユーザに提供すべき情報を提供するための表示処理を実行する。その実行後は上記ステップＳＡ２に戻る。それにより、電源がオンされている間、ステップＳＡ２〜ＳＡ４で形成される処理ループを繰り返し実行する。
【００９４】
自動再生する楽曲データ２３の選択、その再生開始や終了は、特に詳細な説明は省略するが、スイッチ部３が有するスイッチを操作して行えるようになっている。上記スイッチ処理では、ユーザがスイッチを操作して楽曲データ２３を選択した後、その再生開始を指示した場合、それを外部記憶装置１３から読み出してＲＡＭ５に格納し、その再生を開始するための処理を行う。
【００９５】
楽曲データ２３の自動再生の進行は、それ用のタイマインタラプト処理であるシーケンサタイマ処理により行わせるようになっている。このため、スイッチ処理では、その場合、そのタイマ処理を実行させる割り込みを有効とさせる処理を併せて行う。それ以外には、Ａ／Ｄ変換器８に原音声データの出力を行わせ、その原音声データに対する上述したようなピッチ補正を開始する。そのピッチ補正は、それ用のタイマインタラプト処理である音声タイマ処理により行わせるようになっている。このため、そのタイマ処理を実行させる割り込みを有効とさせる処理も行われる。
【００９６】
図１１は上記音声タイマ処理のフローチャート、図１２は上記シーケンサタイマ処理のフローチャートである。以降は、それら２つのタイマ処理について、図１１、及び図１２に示すそれらのフローチャートを参照して詳細に説明する。
始めに図１２を参照して、シーケンサタイマ処理について詳細に説明する。
【００９７】
そのシーケンサタイマ処理は、例えば楽曲データ２３中のイベントデータ（ＭＩＤＩデータ）に付加された形の時間データで表現できる最小時間毎に実行される。それにより、その最小時間毎に処理すべきイベントデータ（システム・エクスクルーシブ・メッセージを含む）の有無を確認し、そのイベントデータが有ればその処理を行うようになっている。
【００９８】
先ず、ステップＳＣ１では、次に処理すべきイベントデータを抽出する。続くステップＳＣ２では、抽出したイベントデータが処理対象か否か、つまり処理すべきタイミングとなっているか否か判定する。そのタイミングとなっていた場合、判定はＹＥＳとなってステップＳＣ３に移行し、そうでない場合には、即ち処理すべきイベントデータが存在していない場合には、判定はＮＯとなり、ここで一連の処理を終了する。
【００９９】
処理すべきイベントデータを処理すると、次に処理すべきイベントデータを抽出し、それの時間データが示す処理タイミングとなるまでの時間の計時を開始する。このことから、上記ステップＳＣ１では、既に次に処理すべきイベントデータを抽出していたのであれば、その時間の計時を進行する処理のみが行われる。その計時の進行は、例えばイベントデータの抽出時にその処理タイミングを示す時間データの値を変数に代入するのであれば、その変数の値をデクリメントすることで行われる。そのように進行させる場合、変数の値が０となるとステップＳＣ２の判定がＹＥＳとなる。
【０１００】
ステップＳＣ３では、処理タイミングとなったイベントデータが図９（ａ）、或いは同図（ｂ）に示すようなピッチ指定用のエクスクルーシブ・メッセージか否か判定する。イベントデータがそのようなエクスクルーシブ・メッセージであった場合、判定はＹＥＳとなってステップＳＣ４に移行し、そのメッセージからＲｏｓｅｎｂｅｒｇ  波生成用のピッチを特定し、特定したピッチを補正後のピッチとして設定した後、上記ステップＳＣ１に戻る。一方、そうでない場合には、判定はＮＯとなってステップＳＣ５に移行し、イベントデータの種類に応じたその他イベント処理を実行した後、そのステップＳＣ１に戻る。
【０１０１】
そのようにしてステップＳＣ１を再度、実行することにより、次に処理すべきイベントデータが抽出され、その処理タイミングとなるまでの時間の計時が開始される。イベントデータの処理タイミングには或る程度の時間間隔が存在するのが普通である。このため、続くステップＳＣ２の判定はＮＯとなり、一連の処理が終了することになる。
【０１０２】
次に図１１を参照して、音声タイマ処理について詳細に説明する。
図６に示すように、切り出したフレームはホップサイズ分、オーバーラップされる。マイク７から入力した音声のピッチ補正後の音声はより短い時間で放音することが望まれる。このことから、音声タイマ処理は、そのホップサイズ分の時間間隔毎に実行される。
【０１０３】
先ず、ステップＳＢ１では、ＲＡＭ５に確保した入力バッファ３１から、１フレームサイズ分の最新の原音高データを抽出し、それにハニング窓を窓関数として乗算する。次に移行するステップＳＢ２では、窓関数を乗算後の音声データを対象に線形予測分析を行い（図７参照）、ＬＰＣ係数を算出する。その後に移行するステップＳＢ３では、算出したＬＰＣ係数を用いて残差信号を算出する。その算出は、（２）式を変形した式により行われる。
【０１０４】
ステップＳＢ３に続くステップＳＢ４では、残差信号の変形自己相関関数を算出し、その最初の２乗和で変形自己相関関数の各項を除算して正規化する。その後はステップＳＢ５に移行する。
ステップＳＢ５では、正規化した後の変形自己相関関数を閾値と比較することにより、原音声データが示す音声が有声音か否か判定する。その音声が有声音であった場合、判定はＹＥＳとなってステップＳＢ６に移行し、Ｒｏｓｅｎｂｅｒｇ  波を選択する。その後はステップＳＢ８に移行する。一方、そうでない場合には、判定はＮＯとなり、ステップＳＢ７で残差信号を選択した後、そのステップＳＢ８に移行する。
【０１０５】
ステップＳＢ８では、ステップＳＢ２で算出したＬＰＣ係数を用いて、ステップＳＢ５の判定結果に応じて選択される信号から１フレームサイズ分の音声データを生成（再合成）し、生成した音声データにハニング窓を窓関数として乗算する。次のステップＳＢ９では、ＲＡＭ５に確保した出力バッファ４５に前回、１フレームサイズ分の音声データの書き込みを開始したアドレス（位置）からホップサイズ分、先のアドレス（位置）を書き込み開始アドレス（位置）として、生成した１フレームサイズ分の音声データの加算・書き込みを行う。一連の処理は、そのような加算・書き込み完了後に終了する。
【０１０６】
このようにして、図２に示す合成部２２が加算器２６に渡す音声データが生成される。生成された音声データは、楽音生成部９に送出され、図１０のステップＳＡ３の鍵盤処理、或いは図１２のシーケンサタイマ処理の実行により楽音生成部９が生成した波形データと重畳される。それにより、音声と楽音とをスピーカ１２から同時に放音できるようになっている。
＜第２の実施の形態＞
上記第１の実施の形態で説明したのは、マイク７から入力した音声のピッチ補正を行い、その補正後の音声を放音させる音声変換装置である。第２の実施の形態では、マイク７から入力した音声に音響効果を付与する音声効果付与装置について詳細に説明する。
【０１０７】
このように実施の形態に分けて説明するのは、混乱を避けて理解を容易とするためである。それにより、本実施の形態による音声効果付与装置が搭載された電子楽器の構成は第１の実施の形態における構成と同じである。このことから、第１の実施の形態で付与した符号をそのまま用いて、第１の実施の形態での説明を補足する形で説明を行うこととする。
【０１０８】
上述したように、エクスクルーシブ・メッセージ中に挿入されるピッチ変更ボイスコマンド（図９参照）でボーカルの他にコーラス１〜３を選択できるようになっている。このことから、本実施の形態による音声効果付与装置は、コーラス１〜３用の音声データを合成してコーラス効果を付与するものとして実現されている。それを実現させるための構成は、音声変換装置と同じである。
【０１０９】
図１３は、本実施の形態による音声効果付与装置の機能構成図である。
その音声効果付与装置は、図１３に示すように、３つの合成部２２−１〜３を備えている。それら３つの合成部２２−１〜３は、コーラス効果を付与する場合に、コーラス１〜３用の音声データを合成するためのものであり、図２に示す合成部２２とは別に用意されている。図１３中、「ピッチデータ１」〜「ピッチデータ３」と表記の各ピッチデータは、ピッチ変更ボイスコマンドで対応するコーラスの音声が指定されていた場合にのみシーケンサ２４から渡される。
【０１１０】
各合成部２２−１〜３は、シーケンサ２４からピッチデータが渡された場合、そのピッチでＲｏｓｅｎｂｅｒｇ  波の波形データを生成し、そのピッチデータが渡されていない場合には、予め定められた規則に従い指定されるピッチデータが示すピッチでその波形データを生成する。その生成（合成）方法は、図２に示す合成部２２と基本的に同じであるため、その機能構成等を含め説明は省略する。
【０１１１】
加算器２６は、不図示の合成部２２や音源２５の他に、各合成部２２−１〜３から波形データ、Ａ／Ｄ変換器８から出力された、或いは入力バッファ３１に格納された原音声データを受け取り、それらを加算して重畳する。コーラス効果のみを付与する場合、不図示の合成部２２は動作しない。このため、原音声データに対してコーラス効果が付与された形の音声が放音される。
【０１１２】
各合成部２２−１〜３が生成する音声データには、原音声データが持つ音韻性が維持され、そのピッチは常に正確である。それによって放音される音声は自然と感じられるものである。このことから、マイク７から入力した音声に対し、所望のコーラス効果を常に適切に付与できることとなる。
【０１１３】
各合成部２２−１〜３が生成する音声データは、図１１に示す音声タイマ処理内のステップＳＢ８、ＳＢ９の処理を実行することで生成される。このことから、実行するタイマインタラプト処理も同じである。
なお、各合成部２２−１〜３は、声道駆動音源波形としてＲｏｓｅｎｂｅｒｇ  波を生成しているが、それ以外の波形を生成するようにしても良い。コーラス効果のような音響効果を付与するのであれば、パルス波を生成しても良い。そのパルス波を生成しても自然な形でコーラス効果を付与することができる。生成した波形のピッチをＬＦＯ等により変調しても良い。そのような変調を行った場合には、ビブラート効果を付与することができる。
【０１１４】
また、コーラス効果は、原音声データに対して付与しているが、合成部２２により生成した音声データに対して付与するようにしても良い。合成部２２、更には合成部２２−１〜３に渡すフォルマント成分（ＬＰＣ係数）については、そのままではなく、加工（変更）したものを渡すようにしても良い。
【０１１５】
本実施の形態では、補正後のピッチを楽曲データ２３により指定するようになっているが、その指定は他の方法を用いて行うようにしても良い。例えば鍵盤２への演奏操作により押鍵された鍵に応じてピッチを設定することにより、ユーザが任意にピッチを指定できるようにしても良い。そのピッチを固定としても良い。そのピッチを固定とした場合には、ロボットが発音するような音声を放音させることができる。
【０１１６】
有声音か否かの判断は、正規化した変形自己相関関数の各項を閾値と比較することで行っている。しかし、有声音と無声音の中間的な音声への対応をより適切なものとするために、閾値にヒステリシス特性を持たせ、その中間状態にあるような場合には、残差信号と声道駆動音源波形をクロスフェードさせる形で用いるようにしても良い。
【０１１７】
声道駆動音源波形（ここではＲｏｓｅｎｂｅｒｇ  波）のＯＱの値は固定としたが、原音声データ（入力音声）を分析してそのＯＱの値を動的に変更するようにしても良い。そのようにした場合には、より高品質な音声を放音、或いは音響効果を付与することができるようになる。
【０１１８】
上述したような音声変換装置、音声効果付与装置、或いはその変形例を実現させるようなプログラムは、ＣＤ−ＲＯＭ、ＤＶＤ、或いは光磁気ディスク等の記録媒体に記録させて配布しても良い。或いは、公衆網等で用いられる伝送媒体を介して、そのプログラムの一部、若しくは全部を配信するようにしても良い。そのようにした場合には、ユーザーはプログラムを取得してコンピュータなどのデータ処理装置にロードすることにより、そのデータ処理装置を用いて本発明を適用させた音声変換装置、或いは音声効果付与装置を実現させることができる。このことから、記録媒体は、プログラムを配信する装置がアクセスできるものであっても良い。
【０１１９】
【発明の効果】
以上、説明したように本発明は、入力した第１の音声データからフォルマントデータを抽出し、抽出したフォルマントデータを、生成した声道駆動音源波形データに合成して第２の音声データを生成する。
【０１２０】
声道駆動音源波形データに第１の音声データから抽出したフォルマントデータを合成して第２の音声データを生成することにより、その第２の音声データに第１の音声データが持つ音韻性が維持される。第１の音声データからのピッチ抽出を行う必要性は回避され、声道駆動音源波形データとしては、任意のピッチを持つものを確実（正確）に、更には聞いた人が自然と感じられるものを生成することができるようになる。これらの結果、第１の音声データのピッチ補正は常に適切に行えるようになる。
【０１２１】
そのピッチ補正後の第２の音声データを第１の音声データに対する音響効果の付与に用いた場合には、常に適切な音響効果を付与することができるようになる。ピッチ抽出を行う必要性を回避することにより、より簡易、或いは低コストで本発明を音声変換装置、或いは音声効果付与装置に適用することができるようになる。
【図面の簡単な説明】
【図１】本実施の形態による音声変換装置、及び音声効果付与装置を搭載した電子楽器の構成図である。
【図２】本実施の形態による音声変換装置の機能構成図である。
【図３】分析部の機能構成図である。
【図４】合成部の機能構成図である。
【図５】合成フィルタの機能構成図である。
【図６】フレームの切り出し方法を説明する図である。
【図７】Ｌｅｖｉｎｓｏｎ−Ｄｕｒｂｉｎ  の再帰的解法によるＬＰＣ係数の算出方法を示すフローチャートである。
【図８】Ｒｏｓｅｎｂｅｒｇ  波の波形を説明する図である。
【図９】楽曲データに挿入されるエクスクルーシブ・メッセージのデータ構成を説明する図である。
【図１０】全体処理のフローチャートである。
【図１１】音声タイマ処理のフローチャートである。
【図１２】シーケンサタイマ処理のフローチャートである。
【図１３】本実施の形態による音声効果付与装置の機能構成図である。
【符号の説明】
１    ＣＰＵ
３    スイッチ部
４    ＲＯＭ
５    ＲＡＭ
７    マイク
８    Ａ／Ｄ変換器
９    楽音生成部
１０    Ｄ／Ａ変換器
１１    アンプ
１２    スピーカ
１３    外部記憶装置
２１    分析部
２２    合成部
２３    楽曲データ
２４    シーケンサ
２５    音源
２６    加算器
【図１】
2004287350.tif 000016
【図２】
2004287350.tif 000017
【図３】
2004287350.tif 000018
【図４】
2004287350.tif 000019
【図５】
2004287350.tif 000020
【図６】
2004287350.tif 000021
【図７】
2004287350.tif 000022
【図８】
2004287350.tif 000023
【図９】
2004287350.tif 000024
【図１０】
2004287350.tif 000025
【図１１】
2004287350.tif 000026
【図１２】
2004287350.tif 000027
【図１３】
2004287350.tif 000028