JP2004287350A - 音声変換装置、音声効果付与装置、及びプログラム - Google Patents
音声変換装置、音声効果付与装置、及びプログラム Download PDFInfo
- Publication number
- JP2004287350A JP2004287350A JP2003082468A JP2003082468A JP2004287350A JP 2004287350 A JP2004287350 A JP 2004287350A JP 2003082468 A JP2003082468 A JP 2003082468A JP 2003082468 A JP2003082468 A JP 2003082468A JP 2004287350 A JP2004287350 A JP 2004287350A
- Authority
- JP
- Japan
- Prior art keywords
- data
- sound
- voice
- pitch
- waveform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
【課題】ピッチの補正を常に適切に行えるようにする技術を提供する。
【解決手段】分析部21は、A/D変換器8から、マイクから入力された音声のデータを受け取って線形予測分析を行い、LPC係数、残差信号、その変形自己相関関数の第1項の2乗和、有声音か否かの判断結果、を分析結果として合成部22に渡す。合成部22は、その判断結果が有声音であった場合に、シーケンサ24からのピッチデータで指定のピッチで生成したRosenberg 波を対象にLPC係数を用いたフィルタ処理を行う。それにより、そのピッチの音声データを生成する。
【選択図】 図2
【解決手段】分析部21は、A/D変換器8から、マイクから入力された音声のデータを受け取って線形予測分析を行い、LPC係数、残差信号、その変形自己相関関数の第1項の2乗和、有声音か否かの判断結果、を分析結果として合成部22に渡す。合成部22は、その判断結果が有声音であった場合に、シーケンサ24からのピッチデータで指定のピッチで生成したRosenberg 波を対象にLPC係数を用いたフィルタ処理を行う。それにより、そのピッチの音声データを生成する。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
本発明は、入力した音声データから抽出されるフォルマントデータを利用した音声処理を行うための技術に関する。
【0002】
【従来の技術】
現在、カラオケ(本来は「歌はからっぽなオーケストラ」の意)は娯楽として多くの人に楽しまれている。そのカラオケを行うためのカラオケ装置のなかには、歌っている人の音声を、楽曲のピッチとなるように補正(変換)する機能(ピッチ補正機能)を搭載したものがある。
【0003】
そのピッチ補正機能によるピッチの補正は、音声の発音時間を維持させて行われる。そのように、音声の発音時間を維持させたままピッチを補正(変換)する一般的な従来の方法(以降「第1の従来の方法」と呼ぶ)としては、その音声の波形データを一定サンプル数のフレームに分けて切り出し、切り出したフレーム毎に、ピッチを上げる場合にはサンプルの間引き、ピッチを下げる場合には補間を実施するというものが挙げられる。その際、間引きにより足りなくなった分のサンプルはフレーム中の他の部分を充当し、補間により余ったサンプルは破棄する。
【0004】
この方法は、処理が比較的に簡単で負荷が小さい。しかし、フレーム間で波形が不連続となり、それによるノイズが発生する。そのノイズを低減するために、フレームに窓関数を乗算した上、フレーム間がオーバーラップするようにフレームを抽出したり、或いはフレームの接合点にゼロクロス点を選択するなどの対策が取られるのが通常である。
【0005】
別の従来の方法(以降、「第2の従来の方法」と呼ぶ)としては、入力した音声信号のピッチを抽出し、そのピッチに対応する1周期分の波形に窓関数を乗算した上で切り出し、この切り出した波形素片を、補正するピッチに対応した周期で繰り返し配置することでピッチを補正するものが挙げられる。
【0006】
この方法でピッチ補正した音声は、比較的に質が高く、音声のフォルマント(共振周波数)情報もある程度、保存される。周知のように、フォルマント周波数の相対的な位置関係が音韻性と密接な関係にあることが知られており、その情報の保存は、音韻が保存されることを意味する。このことから、カラオケ装置に搭載されたピッチ補正機能の多くには、第2の従来の方法が採用されている。
【0007】
【特許文献1】
特開平2−137900号公報
【特許文献2】
米国特許第5231671号明細書
【特許文献3】
米国特許第5301259号明細書
【特許文献4】
米国特許第5428708号明細書
【0008】
【発明が解決しようとする課題】
上記第1の従来の方法では、波形の不連続点によるノイズを低減するために様々な手法が創案されているが、未だ決定的な手法は創案されていない。このため、程度の差はあるとしても必ずノイズが発生する。
【0009】
第2の従来の方法では、第1の従来の方法と比較して良好な結果を得られるが、音声のピッチ抽出が適切に実施できないと波形素片も適切に切り出せないことから、ピッチの補正が行えないか、或いは不適切な補正を行ってしまうことになる。それらは、例えば間欠的なピッチ補正による不連続な音声の発生、或いは不適切なピッチ補正によって裏返ったような音声の発生などの形で表面化する。
【0010】
音声は、ピッチを有する有声音と、それを持たない無声音と、に区別される。しかし、それらの間の境界は曖昧で有声音と無声音のどちらにも区別できない中間的な状態が一般的に頻出するのが実情である。このため、音声のピッチ抽出は非常に困難であり、それを抽出できない部分や、誤って抽出する部分が必ず生じる。
【0011】
その音声はマイクなどから入力するのが普通であるが、その入力の際に外部のノイズが少なからず混入してしまう場合が殆どである。混入したノイズは、ピッチ抽出をより困難なものにさせる。そのようなこともあって、常に適切にピッチ補正を行える技術が望まれていた。
【0012】
本発明の課題は、ピッチの補正を常に適切に行えるようにする技術を提供することにある。
【0013】
【課題を解決するための手段】
本発明の音声変換装置は、第1の音声データを入力してその変換を行うことを前提とし、第1の音声データからフォルマントデータを抽出するデータ抽出手段と、声道駆動音源波形データを生成する波形データ生成手段と、波形データ生成手段が生成した声道駆動音源波形データに、データ抽出手段が抽出したフォルマントデータを合成して第2の音声データを生成する音声データ合成手段と、を具備する。
【0014】
なお、上記音声データ合成手段は、指定されたピッチに応じて声道駆動音源波形データを生成する、ことが望ましい。また、波形データ生成手段が声道駆動音源波形データを生成する声道駆動音源波形はRosenberg 波形である、ことが望ましい。
【0015】
また、上記データ抽出手段は、第1の音声データをフォルマントデータと残差信号データに分離して該フォルマントデータを抽出し、音声データ合成手段は、第1の音声データが示す音声が有声音であった場合にのみ、声道駆動音源波形データにフォルマントデータを合成する、ことが望ましい。
【0016】
本発明の音声効果付与装置は、第1の音声データを入力して音響効果の付加を行うことを前提とし、第1の音声データからフォルマントデータを抽出するデータ抽出手段と、声道駆動音源波形データを生成する波形データ生成手段と、波形データ生成手段が生成した声道駆動音源波形データに、データ抽出手段が抽出したフォルマントデータを合成して第2の音声データを生成する音声データ合成手段と、音声データ合成手段が生成した第2の音声データを、第1の音声データと共に出力することにより、該第1の音声データに対して音響効果を付加する音響効果付加手段と、を具備する。
【0017】
なお、上記波形データ生成手段は、声道駆動音源波形データを、ピッチを異ならせて複数、生成し、音声データ合成手段は、波形データ生成手段が生成した複数の声道駆動音源波形データのそれぞれに対し、データ抽出手段が抽出したフォルマントデータを合成して第2の音声データを複数、生成し、音響効果付加手段は、音声データ合成手段が生成した複数の第2の音声信号を第1の音声信号と共に出力する、ことが望ましい。波形データ生成手段が声道駆動音源波形データを生成する声道駆動音源波形はRosenberg 波形、或いはパルス波形である、ことが望ましい。
【0018】
本発明のプログラムは、第1の音声データを入力してその変換を行う音声変換装置に実行させるプログラムであって、第1の音声データからフォルマントデータを抽出する機能と、声道駆動音源波形データを生成する機能と、生成する機能により生成した声道駆動音源波形データに、抽出する機能により抽出したフォルマントデータを合成して第2の音声データを生成する機能と、を実現させる。
【0019】
本発明では、入力した第1の音声データからフォルマントデータを抽出し、抽出したフォルマントデータを、生成した声道駆動音源波形データに合成して第2の音声データを生成する。
声道駆動音源波形データに第1の音声データから抽出したフォルマントデータを合成して第2の音声データを生成することにより、その第2の音声データに第1の音声データが持つ音韻性が維持される。第1の音声データからのピッチ抽出を行う必要性は回避され、声道駆動音源波形データとしては、任意のピッチを持つものを確実(正確)に、更には聞いた人が自然と感じられるものを生成することが可能となる。これらの結果、第1の音声データのピッチ補正、つまり第2の音声データの生成は常に適切に行えることとなる。
【0020】
そのピッチ補正後の第2の音声データを第1の音声データに対する音響効果の付与に用いた場合には、常に適切な音響効果を付与することが可能となる。ピッチ抽出を行う必要性を回避することにより、より簡易、或いは低コストで本発明を音声変換装置、或いは音声効果付与装置に適用することが可能となる。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
<第1の実施の形態>
図1は、本実施の形態による音声変換装置、及び音声効果付与装置を搭載した電子楽器の構成図である。
【0022】
その電子楽器は、図1に示すように、楽器全体の制御を行うCPU1と、複数の鍵を備えた鍵盤2と、各種スイッチを備えたスイッチ部3と、CPU1が実行するプログラムや各種制御用データを格納したROM4と、CPU1のワーク用のRAM5と、例えば液晶表示装置(LCD)や複数のLEDなどを備えた表示部6と、特には図示しない端子に接続されたマイク7から入力されるアナログの音声信号のA/D変換を行いその音声データを出力するA/D変換器8と、CPU1の指示に従い楽音発音用の波形データを生成する楽音生成部9と、その生成部9が生成した波形データのD/A変換を行い、アナログのオーディオ信号を出力するD/A変換器10と、そのオーディオ信号の増幅を行うアンプ11と、そのアンプ11が増幅を行った後のオーディオ信号を音声に変換するスピーカ12と、例えば着脱自在な記憶媒体にアクセスする外部記憶装置13と、を備えて構成されている。CPU1、鍵盤2、スイッチ部3、ROM4、RAM5、表示部6、A/D変換器8、楽音生成部9、及び外部記憶装置13の間はバスによって接続されている。なお、上記外部記憶装置13とは、例えばフレキシブルディスク装置、CD−ROM装置、或いは光磁気ディスク装置である。スイッチ部3は、例えばユーザが操作の対象とする各種スイッチの他に、各種スイッチの状態変化を検出するための検出回路を備えたものである。
【0023】
上記構成の電子楽器において、本実施の形態による音声変換装置は、A/D変換器8を介して入力した音声信号(デジタル)のピッチ補正を行い出力するものとして実現されている。なお、本実施の形態による音声効果付与装置については、第2の実施の形態で詳細に説明する。
【0024】
デジタル化した音声信号(以下「原音声データ」、或いは「原波形データ」と呼ぶ)は、RAM5に確保された領域(以降、「入力バッファ」と呼ぶ)に一旦、蓄積される。CPU1は、そのバッファに蓄積されたフレームサイズ分の原音声データを対象にピッチ補正(変換)のための処理を行い、楽音生成部9からその処理後の音声データをD/A変換器10に出力させることにより、ピッチ補正を行った後の音声をスピーカ12から放音させる。その処理は、スイッチ部3を構成する所定のスイッチへの操作に応じて、ROM4に格納されたプログラムを実行することで行う。本実施の形態による音声変換装置は、例えば鍵盤2、及び表示部6を除く各部によって実現されている。
【0025】
上記ピッチ補正のための処理は、原音声データからフォルマント成分(データ)を抽出し、指定されたピッチを持つ声道駆動音源波形を生成し、生成したその音源波形に抽出したフォルマント成分を合成する形で行う。そのような合成を行った後の音源波形を音声データとしてD/A変換器10に出力することにより、ピッチ補正を行った後の音声をスピーカ12から放音させる。
【0026】
上記声道駆動音源波形は、原音声データとは別に生成する。このため、原音声データからのピッチ抽出は不要であり、任意のピッチを持つものを確実(正確)に生成することができる。フォルマント成分は、周知のように、音韻性と密接な関係にある。その成分を音源波形に合成させることにより、合成後の音源波形に原音声データが持つ音韻性が維持される。これらのことから、音韻性を維持させつつ、つまり「あ」という声は「あ」と聞こえるように維持させつつ、原音声データのピッチ補正を正確に行った後の音声データを生成することができる。また、ピッチ抽出を不要としたことにより、処理の負荷はそうでない場合と比較して大幅に軽くなる。それにより、簡単、或いは低コストのハードウェア構成でもピッチ補正を行えるようになる。
【0027】
図2は、本実施の形態による音声変換装置の機能構成図である。その音声変換装置で実現されている機能的構成を示したものである。図2、更には図3〜図9に示す説明図を参照して、上述したようにピッチ補正を行った音声データを生成するための機能的構成、及びその動作について詳細に説明する。
【0028】
分析部21は、A/D変換器8から入力した1フレームサイズ分の原音声データの分析を行う。その分析は、1フレームサイズ分の音声データに窓関数を乗算し、乗算後の音声データを対象に線形予測分析(LPC:Linear Predictive Coding)を行い、その予測係数(以下、「LPC係数」)を算出する。それ以外には、算出したLPC係数、及び原音声データから残差信号を算出し、残差信号の変形自己相関関数を算出し、原音声データが有声音のものか(無声音ではないか)否か判断する。それらの分析結果は合成部22に送られる。
【0029】
上述したような分析を行う分析部21は、図3に示すような機能構成となっている。ここでは、A/D変換器8は11.025kHzのサンプリング周波数でマイク7から入力した音声信号のサンプリングを行い原音声データを出力するとの前提で以下の説明を行うこととする。
【0030】
入力バッファ31は、RAM5に確保された領域であり、A/D変換器8が出力する原音声データはそれに一旦、格納される。フレーム抽出窓かけ部32は、入力バッファ31から読み出した1フレームサイズ分の原音声データに対し窓関数、例えば(1)式、及び図6に示すようなハニング窓(Hanning Window)を乗算する。各フレームの切り出しは、窓関数乗算後の音声データを対象に、各フレームがオーバーラップするように行う。これは、音声データ再合成時に窓関数乗算に伴う振幅の変化を相殺したり、フレーム間での各種パラメータの跳躍(異常な変化)を軽減するといったことのためである。図6において、「L」はフレームサイズ、「H」は各フレーム間でオーバーラップされるずれサイズであるホップサイズである。「OV」で示すオーバーラップファクタは、各フレームの重なり度合いを示す、L/Hで求められるパラメータである。
【0031】
【数1】
【0032】
フレームサイズは、LPCにおいてピッチ成分とフォルマント成分を分離するのに十分なものとする必要がある。通常20〜30msec程度のサンプルが取れれば良いことから、本実施の形態では、約23msec、即ちフレームサイズ(1フレームのサンプル数)=256(サンプリング周波数=11.025kHz)としている。
【0033】
オーバーラップファクタは、Hanning ウィンドウを窓関数として採用するとして8とした。従って、フレームサイズが256であればホップサイズは32となる。
線形予測分析(LPC)は、過去の数サンプルの信号値の線形結合により現在値xn を予測するためのものであり、その予測は次式により行われる。
【0034】
【数2】
【0035】
ここで、en は実際の信号値xn と予測値との誤差で残差信号と呼ばれる。αk は過去の信号値に対して重み付けを行うための係数でこれがLPC係数となる。pは予測次数である。LPCでは、残差信号en の2乗和が最小になるようにLPC係数を決定する。従って、残差信号en の2乗和をε2 とすると
【0036】
【数3】
【0037】
となり、()2 内を展開すると
【0038】
【数4】
【0039】
となる。
(4)式において、2乗和ε2 を最小にするためには、それをLPC係数αi で偏微分し、その値を0とする条件を求めれば良い。つまり、
【0040】
【数5】
【0041】
であることから、
【0042】
【数6】
【0043】
を求めれば良い。
(6)式中の自己相関関数の計算方法には、共分散法と自己相関法とがある。本実施の形態では、自己相関法を用いている。これは、共分散法と比較して安定した解が求められるためである。
【0044】
自己相関法では、(6)式中の自己相関関数を短時間自己相関関数に置き換える。即ち自己相関関数をRi とすると
【0045】
【数7】
【0046】
であるから、
【0047】
【数8】
【0048】
となる。これを行列式で表現すると、
【0049】
【数9】
【0050】
となる。この式は正規方程式またはYule−Walker方程式と呼ばれ、左辺のp×pの自己相関の行列は、対称かつ対角線に平行な線上に配置される要素がすべて等しいToeplitz型となっている。この型の行列は通常の行列式による解法を使わなくとも、Levinson−Durbin の再帰的解法を使って効率的に解くことができる。
【0051】
線形予測分析部33は、上述したようなことから、フレーム抽出窓かけ部32からフレーム単位で音声データを入力し、Levinson−Durbin の再帰的解法を使って(9)式を解くことによりLPC係数を算出する。その算出は、具体的には、図7に示すフローチャートに沿って行われる。ここでその図7を参照して、LPC係数の算出方法について詳細に説明する。
【0052】
本実施の形態では、漸化式によってparcor係数を順次、求め、その係数を用いてLPC係数を求める形となっている。つまりparcor方式にLevinson−Durbin の再帰的解法を適用したものとなっている。その漸化式は、第1項から第p(予測次数)項まで順次、求めるようになっている。その進行を管理するために変数nを用意している。
【0053】
先ず、ステップSL1では、(7)式を用いて自己相関関数Rを計算する。それら自己相関関数Rは(9)式の左辺に示すp×pの自己相関の行列中に要素として配置されるものである。続くステップSL2では、配列変数Wの添字(括弧内の数字)が0で指定される要素(以降「W0 」と表記する。他の要素についても同様である)に自己相関関数R1 、配列変数Eの要素E0 に自己相関関数R0 、変数nに1、をそれぞれ代入する。ステップSL3にはその後に移行する。
【0054】
ステップSL3では、配列変数kの要素kn には要素Wn−1 の値を要素En−1 の値で割った値(=Wn−1/En−1)を代入し、要素En には、1から要素kn の値を2乗した値を減算した値を要素En−1 の値に掛けて得られる値(=En−1(1−kn 2))を代入する。要素kn に代入した値はparcor係数(偏自己相関係数)である。
【0055】
ステップSL3に続くステップSL4では、配列変数αの2つの変数nの値で指定される要素(図中「αn (n)」と表記。以降、その表記法を用いる)に要素knの負の値(=−kn )を代入し、変数iに1を代入する。その代入後にステップSL5に移行する。
【0056】
ステップSL5では、変数iの値が変数nの値より小さいか否か判定する。その関係が満たされていた場合、判定はYESとなり、次にステップSL6で要素αi (n)(変数nの値、及び変数iの値で指定される要素)に、要素αi (n−1)の値から、要素kn の値に要素αn−I (n−1)の値を掛けた値を減算して得られる値(=αi (n−1)−knαn−i (n−1))を代入し、その代入後に変数iの値をインクリメントする。そのインクリメント後はステップSL5に戻る。一方、そうでない場合には、判定はNOとなってステップSL7に移行する。
【0057】
ステップSL5、SL6で形成される処理ループはステップSL5の判定がNOとなるまで繰り返し実行される。その結果、要素αi (n−1)(1≦i≦n−1)に順次、値が代入される。
ステップSL7では、変数nの値が予測次数pと等しいか否か判定する。それらが等しい場合、判定はYESとなってステップSL9に移行する。そうでない場合には、判定はNOとなってステップSL8に移行し、要素Wn に、以下の式により求めた値を代入し、変数nの値をインクリメントする。その後は上記ステップSL3に戻る。
【0058】
【数10】
【0059】
このようにして、ステップSL3〜SL8で形成される処理ループをステップSL7の判定がYESとなるまで繰り返し実行することにより、予測次数p分のLPC係数がその次数pにより指定される各要素αi (p)(1≦i≦p)に代入されることになる。このことから、ステップSL9以降では、各要素αi (p)に代入されたLPC係数を抽出して保存するための処理が行われる。その保存は、図中「αi 」と表記の一次元の配列変数の各要素に代入することで行われる。ここでは、その配列変数名は「α」とする。
【0060】
先ず、ステップSL9では、変数iに1を代入する。続くステップSL10では、要素αi に、要素αi (p)の値を代入し、その代入後に変数iの値をインクリメントする。
その次に移行するステップSL11では、変数iの値が予測次数pより大きいか否か判定する。保存すべきLPC係数の保存が終了した場合、その関係を満たすようになることから、判定はYESとなり、ここで一連の処理を終了する。そうでない場合には、判定はNOとなって上記ステップSL10に戻る。それにより、保存すべきLPC係数の保存が全て終了するまで、ステップSL10、SL11で形成される処理ループを繰り返し実行する。
【0061】
線形予測分析部33は、上述したようにしてLPC係数を算出する。そのLPC係数が合成部22に渡される。
残差信号算出部34は、フレーム抽出窓かけ部32からフレーム単位で音声データを入力し、線形予測分析部33からLPC係数を入力して、残差信号en の算出を行う。その算出は、(2)式を変形した式を用いて行う。そのようにして算出された残差信号en が合成部22に渡される。なお、その残差信号en はparcor係数を用いて算出しても良い。
【0062】
変形自己相関関数算出部35は、残差信号en の自己相関関数である変形自己相関関数ri を以下の式により算出する。その残差信号en には入力した原音声データからフォルマントの影響を除去した声帯音源のピッチ情報が含まれている。このため、自己相関関数ri を求めることにより、声帯音源の駆動状態を高精度にジャッジすることができる。
【0063】
【数11】
【0064】
有声音/無声音ジャッジ部36は、変形自己相関関数算出部35から変形自己相関関数ri を受け取る。受け取った変形自己相関関数ri の各項を変形自己相関関数ri の最初の項である2乗和( 外1 )で除算して正規化する。その2乗和は、変形自己相関関数算出部35から合成部22にも渡される。
【0065】
【外1】
【0066】
統計から、声帯音源のピッチはおよそ50〜400Hz程度の間に収まることが知られている。このため、その範囲内で相関値を検索し、閾値を越える相関値が存在する場合はピッチが存在するとみなし有声音、そうでない場合には、つまり閾値を越えるものが存在していない場合にはピッチが存在しないとみなし無声音と判断する。その判断結果が合成部22に渡される。
【0067】
50Hz〜400Hzでは、ピッチ周期は20〜2.5msecであるから、サンプリング周波数が11.025kHzであればおよそ27〜220サンプルまでの範囲で自己相関関数を検索すれば良い。閾値としては、実験データから0.12を設定した。
【0068】
合成部22には、上述したようにして、分析部21からLPC係数、残差信号、及び有声音か否かの判断結果が分析結果として渡される。その合成部22は、入力した原音声データの代わりとして出力する音声データの合成を行うものである。
【0069】
図2に示す楽曲データ23は、楽曲を自動再生するためのデータであり、例えばスタンダードMIDIファイル(SMF)の形で提供される。それは例えば外部記憶装置13がアクセス可能な記憶媒体(不図示)に記憶されて販売されるか、或いはインターネット上に開設されたサイトから有料でダウンロードされるものである。ここでは、記憶媒体に記憶されているものとして以降の説明を行うこととする。
【0070】
シーケンサ24は、その楽曲データ23を外部記憶装置13から取得し、その自動再生を行う。その自動再生は、楽曲データ23を構成するイベントデータ(MIDIデータ)を、それを処理すべきタイミングを示す時間データに従って処理することで行われる。その処理は、時間データが示すタイミングとなったイベントデータが表す演奏上のイベントを実現させるための処理の実行を音源25に指示することで行われる。
【0071】
音源25は、シーケンサ24の指示に従い、指示された処理を実行することにより、発音させるべき楽音の波形データを生成する。そのように波形データを生成することにより、楽曲データ23の自動再生により楽音が放音される。その音源25は、図1の楽音生成部9に搭載された機能によって実現される。
【0072】
上記楽曲データ23を自動再生することにより、ユーザは再生される楽曲を伴奏として歌をうたう(カラオケを行う)ことができる。このことから、本実施の形態では、楽曲データ23は原音声データの補正後のピッチを指定するために用いることができるようにさせている。その指定は、自動再生される楽曲への影響を回避するために、システム・エクスクルーシブ・メッセージで行うものとしている。当然のことながら、特定のチャンネルをその指定に用いるなどの他の方法を採用しても良い。周知のように、システム・エクスクルーシブ・メッセージは、メーカーが自社製の製品に独自に設定しているメッセージであり、通常は、その製品が持つ独自の機能、音色、エフェクト等を設定するのに利用される。
【0073】
図9は、楽曲データ23に挿入されるエクスクルーシブ・メッセージのデータ構成を説明する図である。同図(a)は補正後のピッチを直接的に指定する絶対値指定時のものであり、同図(b)はその直前に配置されたノートメッセージで指定されたピッチ(ノート番号)からの変更量で指定する相対値指定時のものである。
【0074】
システム・エクスクルーシブ・メッセージは、値が「F0」(16進数表現。以下、特に断らない限り、16進数で表現する)と「F7」のステータスバイトの間に挿入される。「F0」のステータスバイトに、メーカー識別用のメーカーID(MAKERID)、及び製品識別用のデバイスID(DEVICEID)がその順序で続き、ピッチ指定用のデータは、それ以降に配置される。
【0075】
デバイスIDに続く図9中で「VOICE」と表記したものは、ピッチ補正の対象とする音声を指定するコマンド(以降「ピッチ変更ボイスコマンド」と呼ぶ)である。そのコマンドには、その音声を指定する番号が付加されている。その番号が「0」で指定されるのは、外部入力の音声(原音声データ)が対応するボーカルである。「1」〜「3」の番号で指定されるのは、それに音響効果として付加されるコーラスの音声である。「1」〜「3」の番号により、コーラスの音声のなかで対象となるものを指定することができる。ここでは、便宜的にその音声をコーラス1〜3と呼ぶことにする。
【0076】
図9(a)では、ピッチ変更ボイスコマンドの次に「NOTE」が配置されている。その「NOTE」は、そのコマンドで指定された音声の補正後のピッチを示すノート番号である。それにより、絶対値指定時には、ノート番号により補正後のピッチを指定するようになっている。
【0077】
他方の図9(b)では、そのコマンドの次に「COARSE」が配置されている。その「COARSE」は、直前のノートメッセージで指定されたピッチ(ノート番号)を基準にしたピッチの変更量を指定する値である。
「COARSE」はMIDI規格で定義されたRPN(レジスタード・パラメータ・ナンバー)のコースチューンのコントロール値のMSBと同様である。すなわち、1バイトのデータで示される値が00H(「H」は16進数表現を示すシンボル)では−64、40Hでは0、7FHでは63(単位は何れも100セント)がそれぞれ設定され、半音単位でのピッチ変更が行える。
【0078】
また、図9(b)中の「FINE_M」「FINE_L」は、上述のRPNのファインチューンのコントロール値のMSB、LSBとそれぞれ同様である。すなわち、2バイトのデータで示される値が00H00H(前の「00H」がMSBのデータの値である。以下も同様)であれば−8192、40H00Hでは0、7FH7FHでは8191(単位は何れも100/8192セント)がそれぞれ設定され、半音内での細かなピッチ変更が行える。
【0079】
シーケンサ24は、図9(a)、或いは(b)に示すようなエクスクルーシブ・メッセージを処理した場合に、そのメッセージで指定された補正後のピッチを示すピッチデータを合成部22に渡す。そのメッセージが相対値指定時のものであれば、指定された変更量だけ変更させたピッチを求めてそのピッチデータを渡す。
【0080】
合成部22は、分析部21から渡された有声音か否かの判断結果に応じて、シーケンサ24から渡されたピッチデータで指定されたピッチの音声データを生成する。その生成は、判断結果が有声音であれば、ピッチデータで指定されたピッチの声道駆動音源波形を用いて行い、その判断結果が無声音であれば、残差信号を用いて行う。そのようにして、原音声データが無声音のものである場合には、ピッチを持つ音声データの生成を回避することにより、スピーカ12から聴く人に違和感を与える音声を放音させないようにしている。その機能構成は図4に示すものとなっている。その図4を参照して、以下に合成部22の機能構成、及び動作について詳細に説明する。
【0081】
スイッチ部41は、分析部21から渡された残差信号、及びRosenberg 波生成部42から入力したその波形データのうちの一方を、分析部21による有声音か否かの判断結果に応じて選択し合成フィルタ43に出力する。その判断結果が無声音であった場合には残差信号、そうでない場合には波形データを選択する。それにより、原音声データが無声音であった場合にのみ、残差信号を用いて音声データを生成する。なお、混乱を避けるために、以降スイッチ部41から合成フィルタ43に出力するものは全て「信号」と呼ぶことにする。
【0082】
Rosenberg 波生成部42が波形データを生成するRosenberg 波は、声門体積流を近似するKlatt−Rosenberg モデルにおける声道駆動音源波形で次式により定義される。図8にその波形を示す。
【0083】
【数12】
【0084】
ここで、Tは声帯の振動周期、即ち音声のピッチに対応するデータサンプル数である。AVは振幅パラメータで正規化処理を施す前の変形自己相関関数ri の第1項、すなわち残差信号の2乗和の値を参照して調整する。OQ(Open Quotient )は、図8に示すように、声門の開いている期間を調整するためのパラメータである。本実施の形態では0.5としている。
【0085】
Rosenberg 波生成部42は、AVの値を調節するために、残差信号の2乗和を分析部21から受け取り、振動周期T、つまりデータサンプル数を計算するためにピッチデータをシーケンサ24から受け取る。それにより、そのピッチデータで指定されたピッチを持つRosenberg 波の波形データを生成してスイッチ部41に出力する。
【0086】
合成フィルタ43は、分析部21から渡されたLPC係数を使って、スイッチ部41から受け取った信号に対するフィルタ処理を行うA(z)の逆フィルタである。その機能的構成は、図5に示すようになっている。
上記LPC係数は、(2)式を満たすように決定され、予測次数p分、存在する。このことから、図5に示すように、計p個の遅延回路52(52−1〜p)、及び各遅延回路52毎に用意された計p個の乗算器53(53−1〜p)を備えた構成となっている。各乗算器53の乗算結果は加算器54で加算し、加算器51は、スイッチ部41から受け取った信号値(図中の「en 」は残差信号を示す)を加算器54の加算結果と加算する。その加算器51の加算結果が現在の信号値xn である。
【0087】
各遅延回路52には、加算器51の加算結果が順次、渡される。それにより、各遅延回路52によって最新の予測次数p個分の信号値x(xn−1〜xn−p)が保持される。それらの信号値xに対応するLPC係数を乗算するために、乗算器53−1〜pには、それぞれ−α1〜−αpが与えられる。それにより、(2)式を用いて信号値xn を求めるようになっている。
【0088】
上述したように、LPC係数はフォルマント情報を持ったものである。そのLPC係数を用いて合成フィルタ43がフィルタ処理を行うことにより、スイッチ部41から渡された信号に対してそのフォルマント成分が付加(合成)される。このため、原音声データが有声音のものであった場合には、その音韻性は維持させたうえで、シーケンサ24から受け取ったピッチデータで指定されたピッチとなっている音声データが合成フィルタ43によって合成されることとなる。このとき、その合成には、Rosenberg 波の波形データが用いられる。このため、それは自然と感じられる音声のものとなる。
【0089】
図4に示す窓かけフレーム加算部44は、合成フィルタ43から音声データを受け取り、原音声データと同様に、例えばハニング窓(図6参照)を乗算する。乗算後の音声データは、前のフレームとオーバーラップファクタでオーバーラップするように、つまり前回、書き込みを開始したアドレスから後方にホップサイズ分だけずらしたアドレス以降に出力バッファ45に加算・出力する。そのようにして出力バッファ45に格納された音声データが図2に示す加算器26に出力される。その出力バッファ45は、図1に示すRAM5内に確保された領域である。
【0090】
加算器26は、合成部22から渡された音声データの値(波高値)を、音源25から渡された波形データの値(波高値)と加算することにより、それらを重畳させる。その重畳後の音声データがD/A変換器10に送られる。
本実施の形態による音声変換装置は、上述したようにして、楽曲データ23の自動再生を行う場合に、マイク7を通して入力された原音声データのピッチをその楽曲データ23中で指定されているピッチに補正してスピーカ12から放音させるものとして実現されている。以降は、その音声変換装置を実現させるための電子楽器の動作について、図10〜図12に示す各種フローチャートを参照して詳細に説明する。
【0091】
図10は、全体処理のフローチャートである。始めに図10を参照して、その全体処理について詳細に説明する。なお、その全体処理は、CPU1が、ROM4に格納されたプログラムを実行することにより実現される。
先ず、ステップSA1では、電源がオンされたことに伴い、初期化処理を実行する。続くステップSA2では、スイッチ部3を構成するスイッチへのユーザの操作に対応するためのスイッチ処理を実行する。そのスイッチ処理は、例えばスイッチ部3を構成する検出回路に各種スイッチの状態を検出させてその検出結果を受け取り、その検出結果を解析して状態が変化したスイッチの種類、及びその変化を特定して行われる。
【0092】
ステップSA2に続くステップSA3では、鍵盤2へのユーザの操作に対応するための鍵盤処理を実行する。その鍵盤処理を実行することにより、鍵盤2への演奏操作に応じて楽音がスピーカ12から放音される。ステップSA4にはその後に移行する。
【0093】
ステップSA4では、表示部6を構成するLCD、或いはLEDを駆動してユーザに提供すべき情報を提供するための表示処理を実行する。その実行後は上記ステップSA2に戻る。それにより、電源がオンされている間、ステップSA2〜SA4で形成される処理ループを繰り返し実行する。
【0094】
自動再生する楽曲データ23の選択、その再生開始や終了は、特に詳細な説明は省略するが、スイッチ部3が有するスイッチを操作して行えるようになっている。上記スイッチ処理では、ユーザがスイッチを操作して楽曲データ23を選択した後、その再生開始を指示した場合、それを外部記憶装置13から読み出してRAM5に格納し、その再生を開始するための処理を行う。
【0095】
楽曲データ23の自動再生の進行は、それ用のタイマインタラプト処理であるシーケンサタイマ処理により行わせるようになっている。このため、スイッチ処理では、その場合、そのタイマ処理を実行させる割り込みを有効とさせる処理を併せて行う。それ以外には、A/D変換器8に原音声データの出力を行わせ、その原音声データに対する上述したようなピッチ補正を開始する。そのピッチ補正は、それ用のタイマインタラプト処理である音声タイマ処理により行わせるようになっている。このため、そのタイマ処理を実行させる割り込みを有効とさせる処理も行われる。
【0096】
図11は上記音声タイマ処理のフローチャート、図12は上記シーケンサタイマ処理のフローチャートである。以降は、それら2つのタイマ処理について、図11、及び図12に示すそれらのフローチャートを参照して詳細に説明する。
始めに図12を参照して、シーケンサタイマ処理について詳細に説明する。
【0097】
そのシーケンサタイマ処理は、例えば楽曲データ23中のイベントデータ(MIDIデータ)に付加された形の時間データで表現できる最小時間毎に実行される。それにより、その最小時間毎に処理すべきイベントデータ(システム・エクスクルーシブ・メッセージを含む)の有無を確認し、そのイベントデータが有ればその処理を行うようになっている。
【0098】
先ず、ステップSC1では、次に処理すべきイベントデータを抽出する。続くステップSC2では、抽出したイベントデータが処理対象か否か、つまり処理すべきタイミングとなっているか否か判定する。そのタイミングとなっていた場合、判定はYESとなってステップSC3に移行し、そうでない場合には、即ち処理すべきイベントデータが存在していない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0099】
処理すべきイベントデータを処理すると、次に処理すべきイベントデータを抽出し、それの時間データが示す処理タイミングとなるまでの時間の計時を開始する。このことから、上記ステップSC1では、既に次に処理すべきイベントデータを抽出していたのであれば、その時間の計時を進行する処理のみが行われる。その計時の進行は、例えばイベントデータの抽出時にその処理タイミングを示す時間データの値を変数に代入するのであれば、その変数の値をデクリメントすることで行われる。そのように進行させる場合、変数の値が0となるとステップSC2の判定がYESとなる。
【0100】
ステップSC3では、処理タイミングとなったイベントデータが図9(a)、或いは同図(b)に示すようなピッチ指定用のエクスクルーシブ・メッセージか否か判定する。イベントデータがそのようなエクスクルーシブ・メッセージであった場合、判定はYESとなってステップSC4に移行し、そのメッセージからRosenberg 波生成用のピッチを特定し、特定したピッチを補正後のピッチとして設定した後、上記ステップSC1に戻る。一方、そうでない場合には、判定はNOとなってステップSC5に移行し、イベントデータの種類に応じたその他イベント処理を実行した後、そのステップSC1に戻る。
【0101】
そのようにしてステップSC1を再度、実行することにより、次に処理すべきイベントデータが抽出され、その処理タイミングとなるまでの時間の計時が開始される。イベントデータの処理タイミングには或る程度の時間間隔が存在するのが普通である。このため、続くステップSC2の判定はNOとなり、一連の処理が終了することになる。
【0102】
次に図11を参照して、音声タイマ処理について詳細に説明する。
図6に示すように、切り出したフレームはホップサイズ分、オーバーラップされる。マイク7から入力した音声のピッチ補正後の音声はより短い時間で放音することが望まれる。このことから、音声タイマ処理は、そのホップサイズ分の時間間隔毎に実行される。
【0103】
先ず、ステップSB1では、RAM5に確保した入力バッファ31から、1フレームサイズ分の最新の原音高データを抽出し、それにハニング窓を窓関数として乗算する。次に移行するステップSB2では、窓関数を乗算後の音声データを対象に線形予測分析を行い(図7参照)、LPC係数を算出する。その後に移行するステップSB3では、算出したLPC係数を用いて残差信号を算出する。その算出は、(2)式を変形した式により行われる。
【0104】
ステップSB3に続くステップSB4では、残差信号の変形自己相関関数を算出し、その最初の2乗和で変形自己相関関数の各項を除算して正規化する。その後はステップSB5に移行する。
ステップSB5では、正規化した後の変形自己相関関数を閾値と比較することにより、原音声データが示す音声が有声音か否か判定する。その音声が有声音であった場合、判定はYESとなってステップSB6に移行し、Rosenberg 波を選択する。その後はステップSB8に移行する。一方、そうでない場合には、判定はNOとなり、ステップSB7で残差信号を選択した後、そのステップSB8に移行する。
【0105】
ステップSB8では、ステップSB2で算出したLPC係数を用いて、ステップSB5の判定結果に応じて選択される信号から1フレームサイズ分の音声データを生成(再合成)し、生成した音声データにハニング窓を窓関数として乗算する。次のステップSB9では、RAM5に確保した出力バッファ45に前回、1フレームサイズ分の音声データの書き込みを開始したアドレス(位置)からホップサイズ分、先のアドレス(位置)を書き込み開始アドレス(位置)として、生成した1フレームサイズ分の音声データの加算・書き込みを行う。一連の処理は、そのような加算・書き込み完了後に終了する。
【0106】
このようにして、図2に示す合成部22が加算器26に渡す音声データが生成される。生成された音声データは、楽音生成部9に送出され、図10のステップSA3の鍵盤処理、或いは図12のシーケンサタイマ処理の実行により楽音生成部9が生成した波形データと重畳される。それにより、音声と楽音とをスピーカ12から同時に放音できるようになっている。
<第2の実施の形態>
上記第1の実施の形態で説明したのは、マイク7から入力した音声のピッチ補正を行い、その補正後の音声を放音させる音声変換装置である。第2の実施の形態では、マイク7から入力した音声に音響効果を付与する音声効果付与装置について詳細に説明する。
【0107】
このように実施の形態に分けて説明するのは、混乱を避けて理解を容易とするためである。それにより、本実施の形態による音声効果付与装置が搭載された電子楽器の構成は第1の実施の形態における構成と同じである。このことから、第1の実施の形態で付与した符号をそのまま用いて、第1の実施の形態での説明を補足する形で説明を行うこととする。
【0108】
上述したように、エクスクルーシブ・メッセージ中に挿入されるピッチ変更ボイスコマンド(図9参照)でボーカルの他にコーラス1〜3を選択できるようになっている。このことから、本実施の形態による音声効果付与装置は、コーラス1〜3用の音声データを合成してコーラス効果を付与するものとして実現されている。それを実現させるための構成は、音声変換装置と同じである。
【0109】
図13は、本実施の形態による音声効果付与装置の機能構成図である。
その音声効果付与装置は、図13に示すように、3つの合成部22−1〜3を備えている。それら3つの合成部22−1〜3は、コーラス効果を付与する場合に、コーラス1〜3用の音声データを合成するためのものであり、図2に示す合成部22とは別に用意されている。図13中、「ピッチデータ1」〜「ピッチデータ3」と表記の各ピッチデータは、ピッチ変更ボイスコマンドで対応するコーラスの音声が指定されていた場合にのみシーケンサ24から渡される。
【0110】
各合成部22−1〜3は、シーケンサ24からピッチデータが渡された場合、そのピッチでRosenberg 波の波形データを生成し、そのピッチデータが渡されていない場合には、予め定められた規則に従い指定されるピッチデータが示すピッチでその波形データを生成する。その生成(合成)方法は、図2に示す合成部22と基本的に同じであるため、その機能構成等を含め説明は省略する。
【0111】
加算器26は、不図示の合成部22や音源25の他に、各合成部22−1〜3から波形データ、A/D変換器8から出力された、或いは入力バッファ31に格納された原音声データを受け取り、それらを加算して重畳する。コーラス効果のみを付与する場合、不図示の合成部22は動作しない。このため、原音声データに対してコーラス効果が付与された形の音声が放音される。
【0112】
各合成部22−1〜3が生成する音声データには、原音声データが持つ音韻性が維持され、そのピッチは常に正確である。それによって放音される音声は自然と感じられるものである。このことから、マイク7から入力した音声に対し、所望のコーラス効果を常に適切に付与できることとなる。
【0113】
各合成部22−1〜3が生成する音声データは、図11に示す音声タイマ処理内のステップSB8、SB9の処理を実行することで生成される。このことから、実行するタイマインタラプト処理も同じである。
なお、各合成部22−1〜3は、声道駆動音源波形としてRosenberg 波を生成しているが、それ以外の波形を生成するようにしても良い。コーラス効果のような音響効果を付与するのであれば、パルス波を生成しても良い。そのパルス波を生成しても自然な形でコーラス効果を付与することができる。生成した波形のピッチをLFO等により変調しても良い。そのような変調を行った場合には、ビブラート効果を付与することができる。
【0114】
また、コーラス効果は、原音声データに対して付与しているが、合成部22により生成した音声データに対して付与するようにしても良い。合成部22、更には合成部22−1〜3に渡すフォルマント成分(LPC係数)については、そのままではなく、加工(変更)したものを渡すようにしても良い。
【0115】
本実施の形態では、補正後のピッチを楽曲データ23により指定するようになっているが、その指定は他の方法を用いて行うようにしても良い。例えば鍵盤2への演奏操作により押鍵された鍵に応じてピッチを設定することにより、ユーザが任意にピッチを指定できるようにしても良い。そのピッチを固定としても良い。そのピッチを固定とした場合には、ロボットが発音するような音声を放音させることができる。
【0116】
有声音か否かの判断は、正規化した変形自己相関関数の各項を閾値と比較することで行っている。しかし、有声音と無声音の中間的な音声への対応をより適切なものとするために、閾値にヒステリシス特性を持たせ、その中間状態にあるような場合には、残差信号と声道駆動音源波形をクロスフェードさせる形で用いるようにしても良い。
【0117】
声道駆動音源波形(ここではRosenberg 波)のOQの値は固定としたが、原音声データ(入力音声)を分析してそのOQの値を動的に変更するようにしても良い。そのようにした場合には、より高品質な音声を放音、或いは音響効果を付与することができるようになる。
【0118】
上述したような音声変換装置、音声効果付与装置、或いはその変形例を実現させるようなプログラムは、CD−ROM、DVD、或いは光磁気ディスク等の記録媒体に記録させて配布しても良い。或いは、公衆網等で用いられる伝送媒体を介して、そのプログラムの一部、若しくは全部を配信するようにしても良い。そのようにした場合には、ユーザーはプログラムを取得してコンピュータなどのデータ処理装置にロードすることにより、そのデータ処理装置を用いて本発明を適用させた音声変換装置、或いは音声効果付与装置を実現させることができる。このことから、記録媒体は、プログラムを配信する装置がアクセスできるものであっても良い。
【0119】
【発明の効果】
以上、説明したように本発明は、入力した第1の音声データからフォルマントデータを抽出し、抽出したフォルマントデータを、生成した声道駆動音源波形データに合成して第2の音声データを生成する。
【0120】
声道駆動音源波形データに第1の音声データから抽出したフォルマントデータを合成して第2の音声データを生成することにより、その第2の音声データに第1の音声データが持つ音韻性が維持される。第1の音声データからのピッチ抽出を行う必要性は回避され、声道駆動音源波形データとしては、任意のピッチを持つものを確実(正確)に、更には聞いた人が自然と感じられるものを生成することができるようになる。これらの結果、第1の音声データのピッチ補正は常に適切に行えるようになる。
【0121】
そのピッチ補正後の第2の音声データを第1の音声データに対する音響効果の付与に用いた場合には、常に適切な音響効果を付与することができるようになる。ピッチ抽出を行う必要性を回避することにより、より簡易、或いは低コストで本発明を音声変換装置、或いは音声効果付与装置に適用することができるようになる。
【図面の簡単な説明】
【図1】本実施の形態による音声変換装置、及び音声効果付与装置を搭載した電子楽器の構成図である。
【図2】本実施の形態による音声変換装置の機能構成図である。
【図3】分析部の機能構成図である。
【図4】合成部の機能構成図である。
【図5】合成フィルタの機能構成図である。
【図6】フレームの切り出し方法を説明する図である。
【図7】Levinson−Durbin の再帰的解法によるLPC係数の算出方法を示すフローチャートである。
【図8】Rosenberg 波の波形を説明する図である。
【図9】楽曲データに挿入されるエクスクルーシブ・メッセージのデータ構成を説明する図である。
【図10】全体処理のフローチャートである。
【図11】音声タイマ処理のフローチャートである。
【図12】シーケンサタイマ処理のフローチャートである。
【図13】本実施の形態による音声効果付与装置の機能構成図である。
【符号の説明】
1 CPU
3 スイッチ部
4 ROM
5 RAM
7 マイク
8 A/D変換器
9 楽音生成部
10 D/A変換器
11 アンプ
12 スピーカ
13 外部記憶装置
21 分析部
22 合成部
23 楽曲データ
24 シーケンサ
25 音源
26 加算器
【発明の属する技術分野】
本発明は、入力した音声データから抽出されるフォルマントデータを利用した音声処理を行うための技術に関する。
【0002】
【従来の技術】
現在、カラオケ(本来は「歌はからっぽなオーケストラ」の意)は娯楽として多くの人に楽しまれている。そのカラオケを行うためのカラオケ装置のなかには、歌っている人の音声を、楽曲のピッチとなるように補正(変換)する機能(ピッチ補正機能)を搭載したものがある。
【0003】
そのピッチ補正機能によるピッチの補正は、音声の発音時間を維持させて行われる。そのように、音声の発音時間を維持させたままピッチを補正(変換)する一般的な従来の方法(以降「第1の従来の方法」と呼ぶ)としては、その音声の波形データを一定サンプル数のフレームに分けて切り出し、切り出したフレーム毎に、ピッチを上げる場合にはサンプルの間引き、ピッチを下げる場合には補間を実施するというものが挙げられる。その際、間引きにより足りなくなった分のサンプルはフレーム中の他の部分を充当し、補間により余ったサンプルは破棄する。
【0004】
この方法は、処理が比較的に簡単で負荷が小さい。しかし、フレーム間で波形が不連続となり、それによるノイズが発生する。そのノイズを低減するために、フレームに窓関数を乗算した上、フレーム間がオーバーラップするようにフレームを抽出したり、或いはフレームの接合点にゼロクロス点を選択するなどの対策が取られるのが通常である。
【0005】
別の従来の方法(以降、「第2の従来の方法」と呼ぶ)としては、入力した音声信号のピッチを抽出し、そのピッチに対応する1周期分の波形に窓関数を乗算した上で切り出し、この切り出した波形素片を、補正するピッチに対応した周期で繰り返し配置することでピッチを補正するものが挙げられる。
【0006】
この方法でピッチ補正した音声は、比較的に質が高く、音声のフォルマント(共振周波数)情報もある程度、保存される。周知のように、フォルマント周波数の相対的な位置関係が音韻性と密接な関係にあることが知られており、その情報の保存は、音韻が保存されることを意味する。このことから、カラオケ装置に搭載されたピッチ補正機能の多くには、第2の従来の方法が採用されている。
【0007】
【特許文献1】
特開平2−137900号公報
【特許文献2】
米国特許第5231671号明細書
【特許文献3】
米国特許第5301259号明細書
【特許文献4】
米国特許第5428708号明細書
【0008】
【発明が解決しようとする課題】
上記第1の従来の方法では、波形の不連続点によるノイズを低減するために様々な手法が創案されているが、未だ決定的な手法は創案されていない。このため、程度の差はあるとしても必ずノイズが発生する。
【0009】
第2の従来の方法では、第1の従来の方法と比較して良好な結果を得られるが、音声のピッチ抽出が適切に実施できないと波形素片も適切に切り出せないことから、ピッチの補正が行えないか、或いは不適切な補正を行ってしまうことになる。それらは、例えば間欠的なピッチ補正による不連続な音声の発生、或いは不適切なピッチ補正によって裏返ったような音声の発生などの形で表面化する。
【0010】
音声は、ピッチを有する有声音と、それを持たない無声音と、に区別される。しかし、それらの間の境界は曖昧で有声音と無声音のどちらにも区別できない中間的な状態が一般的に頻出するのが実情である。このため、音声のピッチ抽出は非常に困難であり、それを抽出できない部分や、誤って抽出する部分が必ず生じる。
【0011】
その音声はマイクなどから入力するのが普通であるが、その入力の際に外部のノイズが少なからず混入してしまう場合が殆どである。混入したノイズは、ピッチ抽出をより困難なものにさせる。そのようなこともあって、常に適切にピッチ補正を行える技術が望まれていた。
【0012】
本発明の課題は、ピッチの補正を常に適切に行えるようにする技術を提供することにある。
【0013】
【課題を解決するための手段】
本発明の音声変換装置は、第1の音声データを入力してその変換を行うことを前提とし、第1の音声データからフォルマントデータを抽出するデータ抽出手段と、声道駆動音源波形データを生成する波形データ生成手段と、波形データ生成手段が生成した声道駆動音源波形データに、データ抽出手段が抽出したフォルマントデータを合成して第2の音声データを生成する音声データ合成手段と、を具備する。
【0014】
なお、上記音声データ合成手段は、指定されたピッチに応じて声道駆動音源波形データを生成する、ことが望ましい。また、波形データ生成手段が声道駆動音源波形データを生成する声道駆動音源波形はRosenberg 波形である、ことが望ましい。
【0015】
また、上記データ抽出手段は、第1の音声データをフォルマントデータと残差信号データに分離して該フォルマントデータを抽出し、音声データ合成手段は、第1の音声データが示す音声が有声音であった場合にのみ、声道駆動音源波形データにフォルマントデータを合成する、ことが望ましい。
【0016】
本発明の音声効果付与装置は、第1の音声データを入力して音響効果の付加を行うことを前提とし、第1の音声データからフォルマントデータを抽出するデータ抽出手段と、声道駆動音源波形データを生成する波形データ生成手段と、波形データ生成手段が生成した声道駆動音源波形データに、データ抽出手段が抽出したフォルマントデータを合成して第2の音声データを生成する音声データ合成手段と、音声データ合成手段が生成した第2の音声データを、第1の音声データと共に出力することにより、該第1の音声データに対して音響効果を付加する音響効果付加手段と、を具備する。
【0017】
なお、上記波形データ生成手段は、声道駆動音源波形データを、ピッチを異ならせて複数、生成し、音声データ合成手段は、波形データ生成手段が生成した複数の声道駆動音源波形データのそれぞれに対し、データ抽出手段が抽出したフォルマントデータを合成して第2の音声データを複数、生成し、音響効果付加手段は、音声データ合成手段が生成した複数の第2の音声信号を第1の音声信号と共に出力する、ことが望ましい。波形データ生成手段が声道駆動音源波形データを生成する声道駆動音源波形はRosenberg 波形、或いはパルス波形である、ことが望ましい。
【0018】
本発明のプログラムは、第1の音声データを入力してその変換を行う音声変換装置に実行させるプログラムであって、第1の音声データからフォルマントデータを抽出する機能と、声道駆動音源波形データを生成する機能と、生成する機能により生成した声道駆動音源波形データに、抽出する機能により抽出したフォルマントデータを合成して第2の音声データを生成する機能と、を実現させる。
【0019】
本発明では、入力した第1の音声データからフォルマントデータを抽出し、抽出したフォルマントデータを、生成した声道駆動音源波形データに合成して第2の音声データを生成する。
声道駆動音源波形データに第1の音声データから抽出したフォルマントデータを合成して第2の音声データを生成することにより、その第2の音声データに第1の音声データが持つ音韻性が維持される。第1の音声データからのピッチ抽出を行う必要性は回避され、声道駆動音源波形データとしては、任意のピッチを持つものを確実(正確)に、更には聞いた人が自然と感じられるものを生成することが可能となる。これらの結果、第1の音声データのピッチ補正、つまり第2の音声データの生成は常に適切に行えることとなる。
【0020】
そのピッチ補正後の第2の音声データを第1の音声データに対する音響効果の付与に用いた場合には、常に適切な音響効果を付与することが可能となる。ピッチ抽出を行う必要性を回避することにより、より簡易、或いは低コストで本発明を音声変換装置、或いは音声効果付与装置に適用することが可能となる。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
<第1の実施の形態>
図1は、本実施の形態による音声変換装置、及び音声効果付与装置を搭載した電子楽器の構成図である。
【0022】
その電子楽器は、図1に示すように、楽器全体の制御を行うCPU1と、複数の鍵を備えた鍵盤2と、各種スイッチを備えたスイッチ部3と、CPU1が実行するプログラムや各種制御用データを格納したROM4と、CPU1のワーク用のRAM5と、例えば液晶表示装置(LCD)や複数のLEDなどを備えた表示部6と、特には図示しない端子に接続されたマイク7から入力されるアナログの音声信号のA/D変換を行いその音声データを出力するA/D変換器8と、CPU1の指示に従い楽音発音用の波形データを生成する楽音生成部9と、その生成部9が生成した波形データのD/A変換を行い、アナログのオーディオ信号を出力するD/A変換器10と、そのオーディオ信号の増幅を行うアンプ11と、そのアンプ11が増幅を行った後のオーディオ信号を音声に変換するスピーカ12と、例えば着脱自在な記憶媒体にアクセスする外部記憶装置13と、を備えて構成されている。CPU1、鍵盤2、スイッチ部3、ROM4、RAM5、表示部6、A/D変換器8、楽音生成部9、及び外部記憶装置13の間はバスによって接続されている。なお、上記外部記憶装置13とは、例えばフレキシブルディスク装置、CD−ROM装置、或いは光磁気ディスク装置である。スイッチ部3は、例えばユーザが操作の対象とする各種スイッチの他に、各種スイッチの状態変化を検出するための検出回路を備えたものである。
【0023】
上記構成の電子楽器において、本実施の形態による音声変換装置は、A/D変換器8を介して入力した音声信号(デジタル)のピッチ補正を行い出力するものとして実現されている。なお、本実施の形態による音声効果付与装置については、第2の実施の形態で詳細に説明する。
【0024】
デジタル化した音声信号(以下「原音声データ」、或いは「原波形データ」と呼ぶ)は、RAM5に確保された領域(以降、「入力バッファ」と呼ぶ)に一旦、蓄積される。CPU1は、そのバッファに蓄積されたフレームサイズ分の原音声データを対象にピッチ補正(変換)のための処理を行い、楽音生成部9からその処理後の音声データをD/A変換器10に出力させることにより、ピッチ補正を行った後の音声をスピーカ12から放音させる。その処理は、スイッチ部3を構成する所定のスイッチへの操作に応じて、ROM4に格納されたプログラムを実行することで行う。本実施の形態による音声変換装置は、例えば鍵盤2、及び表示部6を除く各部によって実現されている。
【0025】
上記ピッチ補正のための処理は、原音声データからフォルマント成分(データ)を抽出し、指定されたピッチを持つ声道駆動音源波形を生成し、生成したその音源波形に抽出したフォルマント成分を合成する形で行う。そのような合成を行った後の音源波形を音声データとしてD/A変換器10に出力することにより、ピッチ補正を行った後の音声をスピーカ12から放音させる。
【0026】
上記声道駆動音源波形は、原音声データとは別に生成する。このため、原音声データからのピッチ抽出は不要であり、任意のピッチを持つものを確実(正確)に生成することができる。フォルマント成分は、周知のように、音韻性と密接な関係にある。その成分を音源波形に合成させることにより、合成後の音源波形に原音声データが持つ音韻性が維持される。これらのことから、音韻性を維持させつつ、つまり「あ」という声は「あ」と聞こえるように維持させつつ、原音声データのピッチ補正を正確に行った後の音声データを生成することができる。また、ピッチ抽出を不要としたことにより、処理の負荷はそうでない場合と比較して大幅に軽くなる。それにより、簡単、或いは低コストのハードウェア構成でもピッチ補正を行えるようになる。
【0027】
図2は、本実施の形態による音声変換装置の機能構成図である。その音声変換装置で実現されている機能的構成を示したものである。図2、更には図3〜図9に示す説明図を参照して、上述したようにピッチ補正を行った音声データを生成するための機能的構成、及びその動作について詳細に説明する。
【0028】
分析部21は、A/D変換器8から入力した1フレームサイズ分の原音声データの分析を行う。その分析は、1フレームサイズ分の音声データに窓関数を乗算し、乗算後の音声データを対象に線形予測分析(LPC:Linear Predictive Coding)を行い、その予測係数(以下、「LPC係数」)を算出する。それ以外には、算出したLPC係数、及び原音声データから残差信号を算出し、残差信号の変形自己相関関数を算出し、原音声データが有声音のものか(無声音ではないか)否か判断する。それらの分析結果は合成部22に送られる。
【0029】
上述したような分析を行う分析部21は、図3に示すような機能構成となっている。ここでは、A/D変換器8は11.025kHzのサンプリング周波数でマイク7から入力した音声信号のサンプリングを行い原音声データを出力するとの前提で以下の説明を行うこととする。
【0030】
入力バッファ31は、RAM5に確保された領域であり、A/D変換器8が出力する原音声データはそれに一旦、格納される。フレーム抽出窓かけ部32は、入力バッファ31から読み出した1フレームサイズ分の原音声データに対し窓関数、例えば(1)式、及び図6に示すようなハニング窓(Hanning Window)を乗算する。各フレームの切り出しは、窓関数乗算後の音声データを対象に、各フレームがオーバーラップするように行う。これは、音声データ再合成時に窓関数乗算に伴う振幅の変化を相殺したり、フレーム間での各種パラメータの跳躍(異常な変化)を軽減するといったことのためである。図6において、「L」はフレームサイズ、「H」は各フレーム間でオーバーラップされるずれサイズであるホップサイズである。「OV」で示すオーバーラップファクタは、各フレームの重なり度合いを示す、L/Hで求められるパラメータである。
【0031】
【数1】
【0032】
フレームサイズは、LPCにおいてピッチ成分とフォルマント成分を分離するのに十分なものとする必要がある。通常20〜30msec程度のサンプルが取れれば良いことから、本実施の形態では、約23msec、即ちフレームサイズ(1フレームのサンプル数)=256(サンプリング周波数=11.025kHz)としている。
【0033】
オーバーラップファクタは、Hanning ウィンドウを窓関数として採用するとして8とした。従って、フレームサイズが256であればホップサイズは32となる。
線形予測分析(LPC)は、過去の数サンプルの信号値の線形結合により現在値xn を予測するためのものであり、その予測は次式により行われる。
【0034】
【数2】
【0035】
ここで、en は実際の信号値xn と予測値との誤差で残差信号と呼ばれる。αk は過去の信号値に対して重み付けを行うための係数でこれがLPC係数となる。pは予測次数である。LPCでは、残差信号en の2乗和が最小になるようにLPC係数を決定する。従って、残差信号en の2乗和をε2 とすると
【0036】
【数3】
【0037】
となり、()2 内を展開すると
【0038】
【数4】
【0039】
となる。
(4)式において、2乗和ε2 を最小にするためには、それをLPC係数αi で偏微分し、その値を0とする条件を求めれば良い。つまり、
【0040】
【数5】
【0041】
であることから、
【0042】
【数6】
【0043】
を求めれば良い。
(6)式中の自己相関関数の計算方法には、共分散法と自己相関法とがある。本実施の形態では、自己相関法を用いている。これは、共分散法と比較して安定した解が求められるためである。
【0044】
自己相関法では、(6)式中の自己相関関数を短時間自己相関関数に置き換える。即ち自己相関関数をRi とすると
【0045】
【数7】
【0046】
であるから、
【0047】
【数8】
【0048】
となる。これを行列式で表現すると、
【0049】
【数9】
【0050】
となる。この式は正規方程式またはYule−Walker方程式と呼ばれ、左辺のp×pの自己相関の行列は、対称かつ対角線に平行な線上に配置される要素がすべて等しいToeplitz型となっている。この型の行列は通常の行列式による解法を使わなくとも、Levinson−Durbin の再帰的解法を使って効率的に解くことができる。
【0051】
線形予測分析部33は、上述したようなことから、フレーム抽出窓かけ部32からフレーム単位で音声データを入力し、Levinson−Durbin の再帰的解法を使って(9)式を解くことによりLPC係数を算出する。その算出は、具体的には、図7に示すフローチャートに沿って行われる。ここでその図7を参照して、LPC係数の算出方法について詳細に説明する。
【0052】
本実施の形態では、漸化式によってparcor係数を順次、求め、その係数を用いてLPC係数を求める形となっている。つまりparcor方式にLevinson−Durbin の再帰的解法を適用したものとなっている。その漸化式は、第1項から第p(予測次数)項まで順次、求めるようになっている。その進行を管理するために変数nを用意している。
【0053】
先ず、ステップSL1では、(7)式を用いて自己相関関数Rを計算する。それら自己相関関数Rは(9)式の左辺に示すp×pの自己相関の行列中に要素として配置されるものである。続くステップSL2では、配列変数Wの添字(括弧内の数字)が0で指定される要素(以降「W0 」と表記する。他の要素についても同様である)に自己相関関数R1 、配列変数Eの要素E0 に自己相関関数R0 、変数nに1、をそれぞれ代入する。ステップSL3にはその後に移行する。
【0054】
ステップSL3では、配列変数kの要素kn には要素Wn−1 の値を要素En−1 の値で割った値(=Wn−1/En−1)を代入し、要素En には、1から要素kn の値を2乗した値を減算した値を要素En−1 の値に掛けて得られる値(=En−1(1−kn 2))を代入する。要素kn に代入した値はparcor係数(偏自己相関係数)である。
【0055】
ステップSL3に続くステップSL4では、配列変数αの2つの変数nの値で指定される要素(図中「αn (n)」と表記。以降、その表記法を用いる)に要素knの負の値(=−kn )を代入し、変数iに1を代入する。その代入後にステップSL5に移行する。
【0056】
ステップSL5では、変数iの値が変数nの値より小さいか否か判定する。その関係が満たされていた場合、判定はYESとなり、次にステップSL6で要素αi (n)(変数nの値、及び変数iの値で指定される要素)に、要素αi (n−1)の値から、要素kn の値に要素αn−I (n−1)の値を掛けた値を減算して得られる値(=αi (n−1)−knαn−i (n−1))を代入し、その代入後に変数iの値をインクリメントする。そのインクリメント後はステップSL5に戻る。一方、そうでない場合には、判定はNOとなってステップSL7に移行する。
【0057】
ステップSL5、SL6で形成される処理ループはステップSL5の判定がNOとなるまで繰り返し実行される。その結果、要素αi (n−1)(1≦i≦n−1)に順次、値が代入される。
ステップSL7では、変数nの値が予測次数pと等しいか否か判定する。それらが等しい場合、判定はYESとなってステップSL9に移行する。そうでない場合には、判定はNOとなってステップSL8に移行し、要素Wn に、以下の式により求めた値を代入し、変数nの値をインクリメントする。その後は上記ステップSL3に戻る。
【0058】
【数10】
【0059】
このようにして、ステップSL3〜SL8で形成される処理ループをステップSL7の判定がYESとなるまで繰り返し実行することにより、予測次数p分のLPC係数がその次数pにより指定される各要素αi (p)(1≦i≦p)に代入されることになる。このことから、ステップSL9以降では、各要素αi (p)に代入されたLPC係数を抽出して保存するための処理が行われる。その保存は、図中「αi 」と表記の一次元の配列変数の各要素に代入することで行われる。ここでは、その配列変数名は「α」とする。
【0060】
先ず、ステップSL9では、変数iに1を代入する。続くステップSL10では、要素αi に、要素αi (p)の値を代入し、その代入後に変数iの値をインクリメントする。
その次に移行するステップSL11では、変数iの値が予測次数pより大きいか否か判定する。保存すべきLPC係数の保存が終了した場合、その関係を満たすようになることから、判定はYESとなり、ここで一連の処理を終了する。そうでない場合には、判定はNOとなって上記ステップSL10に戻る。それにより、保存すべきLPC係数の保存が全て終了するまで、ステップSL10、SL11で形成される処理ループを繰り返し実行する。
【0061】
線形予測分析部33は、上述したようにしてLPC係数を算出する。そのLPC係数が合成部22に渡される。
残差信号算出部34は、フレーム抽出窓かけ部32からフレーム単位で音声データを入力し、線形予測分析部33からLPC係数を入力して、残差信号en の算出を行う。その算出は、(2)式を変形した式を用いて行う。そのようにして算出された残差信号en が合成部22に渡される。なお、その残差信号en はparcor係数を用いて算出しても良い。
【0062】
変形自己相関関数算出部35は、残差信号en の自己相関関数である変形自己相関関数ri を以下の式により算出する。その残差信号en には入力した原音声データからフォルマントの影響を除去した声帯音源のピッチ情報が含まれている。このため、自己相関関数ri を求めることにより、声帯音源の駆動状態を高精度にジャッジすることができる。
【0063】
【数11】
【0064】
有声音/無声音ジャッジ部36は、変形自己相関関数算出部35から変形自己相関関数ri を受け取る。受け取った変形自己相関関数ri の各項を変形自己相関関数ri の最初の項である2乗和( 外1 )で除算して正規化する。その2乗和は、変形自己相関関数算出部35から合成部22にも渡される。
【0065】
【外1】
【0066】
統計から、声帯音源のピッチはおよそ50〜400Hz程度の間に収まることが知られている。このため、その範囲内で相関値を検索し、閾値を越える相関値が存在する場合はピッチが存在するとみなし有声音、そうでない場合には、つまり閾値を越えるものが存在していない場合にはピッチが存在しないとみなし無声音と判断する。その判断結果が合成部22に渡される。
【0067】
50Hz〜400Hzでは、ピッチ周期は20〜2.5msecであるから、サンプリング周波数が11.025kHzであればおよそ27〜220サンプルまでの範囲で自己相関関数を検索すれば良い。閾値としては、実験データから0.12を設定した。
【0068】
合成部22には、上述したようにして、分析部21からLPC係数、残差信号、及び有声音か否かの判断結果が分析結果として渡される。その合成部22は、入力した原音声データの代わりとして出力する音声データの合成を行うものである。
【0069】
図2に示す楽曲データ23は、楽曲を自動再生するためのデータであり、例えばスタンダードMIDIファイル(SMF)の形で提供される。それは例えば外部記憶装置13がアクセス可能な記憶媒体(不図示)に記憶されて販売されるか、或いはインターネット上に開設されたサイトから有料でダウンロードされるものである。ここでは、記憶媒体に記憶されているものとして以降の説明を行うこととする。
【0070】
シーケンサ24は、その楽曲データ23を外部記憶装置13から取得し、その自動再生を行う。その自動再生は、楽曲データ23を構成するイベントデータ(MIDIデータ)を、それを処理すべきタイミングを示す時間データに従って処理することで行われる。その処理は、時間データが示すタイミングとなったイベントデータが表す演奏上のイベントを実現させるための処理の実行を音源25に指示することで行われる。
【0071】
音源25は、シーケンサ24の指示に従い、指示された処理を実行することにより、発音させるべき楽音の波形データを生成する。そのように波形データを生成することにより、楽曲データ23の自動再生により楽音が放音される。その音源25は、図1の楽音生成部9に搭載された機能によって実現される。
【0072】
上記楽曲データ23を自動再生することにより、ユーザは再生される楽曲を伴奏として歌をうたう(カラオケを行う)ことができる。このことから、本実施の形態では、楽曲データ23は原音声データの補正後のピッチを指定するために用いることができるようにさせている。その指定は、自動再生される楽曲への影響を回避するために、システム・エクスクルーシブ・メッセージで行うものとしている。当然のことながら、特定のチャンネルをその指定に用いるなどの他の方法を採用しても良い。周知のように、システム・エクスクルーシブ・メッセージは、メーカーが自社製の製品に独自に設定しているメッセージであり、通常は、その製品が持つ独自の機能、音色、エフェクト等を設定するのに利用される。
【0073】
図9は、楽曲データ23に挿入されるエクスクルーシブ・メッセージのデータ構成を説明する図である。同図(a)は補正後のピッチを直接的に指定する絶対値指定時のものであり、同図(b)はその直前に配置されたノートメッセージで指定されたピッチ(ノート番号)からの変更量で指定する相対値指定時のものである。
【0074】
システム・エクスクルーシブ・メッセージは、値が「F0」(16進数表現。以下、特に断らない限り、16進数で表現する)と「F7」のステータスバイトの間に挿入される。「F0」のステータスバイトに、メーカー識別用のメーカーID(MAKERID)、及び製品識別用のデバイスID(DEVICEID)がその順序で続き、ピッチ指定用のデータは、それ以降に配置される。
【0075】
デバイスIDに続く図9中で「VOICE」と表記したものは、ピッチ補正の対象とする音声を指定するコマンド(以降「ピッチ変更ボイスコマンド」と呼ぶ)である。そのコマンドには、その音声を指定する番号が付加されている。その番号が「0」で指定されるのは、外部入力の音声(原音声データ)が対応するボーカルである。「1」〜「3」の番号で指定されるのは、それに音響効果として付加されるコーラスの音声である。「1」〜「3」の番号により、コーラスの音声のなかで対象となるものを指定することができる。ここでは、便宜的にその音声をコーラス1〜3と呼ぶことにする。
【0076】
図9(a)では、ピッチ変更ボイスコマンドの次に「NOTE」が配置されている。その「NOTE」は、そのコマンドで指定された音声の補正後のピッチを示すノート番号である。それにより、絶対値指定時には、ノート番号により補正後のピッチを指定するようになっている。
【0077】
他方の図9(b)では、そのコマンドの次に「COARSE」が配置されている。その「COARSE」は、直前のノートメッセージで指定されたピッチ(ノート番号)を基準にしたピッチの変更量を指定する値である。
「COARSE」はMIDI規格で定義されたRPN(レジスタード・パラメータ・ナンバー)のコースチューンのコントロール値のMSBと同様である。すなわち、1バイトのデータで示される値が00H(「H」は16進数表現を示すシンボル)では−64、40Hでは0、7FHでは63(単位は何れも100セント)がそれぞれ設定され、半音単位でのピッチ変更が行える。
【0078】
また、図9(b)中の「FINE_M」「FINE_L」は、上述のRPNのファインチューンのコントロール値のMSB、LSBとそれぞれ同様である。すなわち、2バイトのデータで示される値が00H00H(前の「00H」がMSBのデータの値である。以下も同様)であれば−8192、40H00Hでは0、7FH7FHでは8191(単位は何れも100/8192セント)がそれぞれ設定され、半音内での細かなピッチ変更が行える。
【0079】
シーケンサ24は、図9(a)、或いは(b)に示すようなエクスクルーシブ・メッセージを処理した場合に、そのメッセージで指定された補正後のピッチを示すピッチデータを合成部22に渡す。そのメッセージが相対値指定時のものであれば、指定された変更量だけ変更させたピッチを求めてそのピッチデータを渡す。
【0080】
合成部22は、分析部21から渡された有声音か否かの判断結果に応じて、シーケンサ24から渡されたピッチデータで指定されたピッチの音声データを生成する。その生成は、判断結果が有声音であれば、ピッチデータで指定されたピッチの声道駆動音源波形を用いて行い、その判断結果が無声音であれば、残差信号を用いて行う。そのようにして、原音声データが無声音のものである場合には、ピッチを持つ音声データの生成を回避することにより、スピーカ12から聴く人に違和感を与える音声を放音させないようにしている。その機能構成は図4に示すものとなっている。その図4を参照して、以下に合成部22の機能構成、及び動作について詳細に説明する。
【0081】
スイッチ部41は、分析部21から渡された残差信号、及びRosenberg 波生成部42から入力したその波形データのうちの一方を、分析部21による有声音か否かの判断結果に応じて選択し合成フィルタ43に出力する。その判断結果が無声音であった場合には残差信号、そうでない場合には波形データを選択する。それにより、原音声データが無声音であった場合にのみ、残差信号を用いて音声データを生成する。なお、混乱を避けるために、以降スイッチ部41から合成フィルタ43に出力するものは全て「信号」と呼ぶことにする。
【0082】
Rosenberg 波生成部42が波形データを生成するRosenberg 波は、声門体積流を近似するKlatt−Rosenberg モデルにおける声道駆動音源波形で次式により定義される。図8にその波形を示す。
【0083】
【数12】
【0084】
ここで、Tは声帯の振動周期、即ち音声のピッチに対応するデータサンプル数である。AVは振幅パラメータで正規化処理を施す前の変形自己相関関数ri の第1項、すなわち残差信号の2乗和の値を参照して調整する。OQ(Open Quotient )は、図8に示すように、声門の開いている期間を調整するためのパラメータである。本実施の形態では0.5としている。
【0085】
Rosenberg 波生成部42は、AVの値を調節するために、残差信号の2乗和を分析部21から受け取り、振動周期T、つまりデータサンプル数を計算するためにピッチデータをシーケンサ24から受け取る。それにより、そのピッチデータで指定されたピッチを持つRosenberg 波の波形データを生成してスイッチ部41に出力する。
【0086】
合成フィルタ43は、分析部21から渡されたLPC係数を使って、スイッチ部41から受け取った信号に対するフィルタ処理を行うA(z)の逆フィルタである。その機能的構成は、図5に示すようになっている。
上記LPC係数は、(2)式を満たすように決定され、予測次数p分、存在する。このことから、図5に示すように、計p個の遅延回路52(52−1〜p)、及び各遅延回路52毎に用意された計p個の乗算器53(53−1〜p)を備えた構成となっている。各乗算器53の乗算結果は加算器54で加算し、加算器51は、スイッチ部41から受け取った信号値(図中の「en 」は残差信号を示す)を加算器54の加算結果と加算する。その加算器51の加算結果が現在の信号値xn である。
【0087】
各遅延回路52には、加算器51の加算結果が順次、渡される。それにより、各遅延回路52によって最新の予測次数p個分の信号値x(xn−1〜xn−p)が保持される。それらの信号値xに対応するLPC係数を乗算するために、乗算器53−1〜pには、それぞれ−α1〜−αpが与えられる。それにより、(2)式を用いて信号値xn を求めるようになっている。
【0088】
上述したように、LPC係数はフォルマント情報を持ったものである。そのLPC係数を用いて合成フィルタ43がフィルタ処理を行うことにより、スイッチ部41から渡された信号に対してそのフォルマント成分が付加(合成)される。このため、原音声データが有声音のものであった場合には、その音韻性は維持させたうえで、シーケンサ24から受け取ったピッチデータで指定されたピッチとなっている音声データが合成フィルタ43によって合成されることとなる。このとき、その合成には、Rosenberg 波の波形データが用いられる。このため、それは自然と感じられる音声のものとなる。
【0089】
図4に示す窓かけフレーム加算部44は、合成フィルタ43から音声データを受け取り、原音声データと同様に、例えばハニング窓(図6参照)を乗算する。乗算後の音声データは、前のフレームとオーバーラップファクタでオーバーラップするように、つまり前回、書き込みを開始したアドレスから後方にホップサイズ分だけずらしたアドレス以降に出力バッファ45に加算・出力する。そのようにして出力バッファ45に格納された音声データが図2に示す加算器26に出力される。その出力バッファ45は、図1に示すRAM5内に確保された領域である。
【0090】
加算器26は、合成部22から渡された音声データの値(波高値)を、音源25から渡された波形データの値(波高値)と加算することにより、それらを重畳させる。その重畳後の音声データがD/A変換器10に送られる。
本実施の形態による音声変換装置は、上述したようにして、楽曲データ23の自動再生を行う場合に、マイク7を通して入力された原音声データのピッチをその楽曲データ23中で指定されているピッチに補正してスピーカ12から放音させるものとして実現されている。以降は、その音声変換装置を実現させるための電子楽器の動作について、図10〜図12に示す各種フローチャートを参照して詳細に説明する。
【0091】
図10は、全体処理のフローチャートである。始めに図10を参照して、その全体処理について詳細に説明する。なお、その全体処理は、CPU1が、ROM4に格納されたプログラムを実行することにより実現される。
先ず、ステップSA1では、電源がオンされたことに伴い、初期化処理を実行する。続くステップSA2では、スイッチ部3を構成するスイッチへのユーザの操作に対応するためのスイッチ処理を実行する。そのスイッチ処理は、例えばスイッチ部3を構成する検出回路に各種スイッチの状態を検出させてその検出結果を受け取り、その検出結果を解析して状態が変化したスイッチの種類、及びその変化を特定して行われる。
【0092】
ステップSA2に続くステップSA3では、鍵盤2へのユーザの操作に対応するための鍵盤処理を実行する。その鍵盤処理を実行することにより、鍵盤2への演奏操作に応じて楽音がスピーカ12から放音される。ステップSA4にはその後に移行する。
【0093】
ステップSA4では、表示部6を構成するLCD、或いはLEDを駆動してユーザに提供すべき情報を提供するための表示処理を実行する。その実行後は上記ステップSA2に戻る。それにより、電源がオンされている間、ステップSA2〜SA4で形成される処理ループを繰り返し実行する。
【0094】
自動再生する楽曲データ23の選択、その再生開始や終了は、特に詳細な説明は省略するが、スイッチ部3が有するスイッチを操作して行えるようになっている。上記スイッチ処理では、ユーザがスイッチを操作して楽曲データ23を選択した後、その再生開始を指示した場合、それを外部記憶装置13から読み出してRAM5に格納し、その再生を開始するための処理を行う。
【0095】
楽曲データ23の自動再生の進行は、それ用のタイマインタラプト処理であるシーケンサタイマ処理により行わせるようになっている。このため、スイッチ処理では、その場合、そのタイマ処理を実行させる割り込みを有効とさせる処理を併せて行う。それ以外には、A/D変換器8に原音声データの出力を行わせ、その原音声データに対する上述したようなピッチ補正を開始する。そのピッチ補正は、それ用のタイマインタラプト処理である音声タイマ処理により行わせるようになっている。このため、そのタイマ処理を実行させる割り込みを有効とさせる処理も行われる。
【0096】
図11は上記音声タイマ処理のフローチャート、図12は上記シーケンサタイマ処理のフローチャートである。以降は、それら2つのタイマ処理について、図11、及び図12に示すそれらのフローチャートを参照して詳細に説明する。
始めに図12を参照して、シーケンサタイマ処理について詳細に説明する。
【0097】
そのシーケンサタイマ処理は、例えば楽曲データ23中のイベントデータ(MIDIデータ)に付加された形の時間データで表現できる最小時間毎に実行される。それにより、その最小時間毎に処理すべきイベントデータ(システム・エクスクルーシブ・メッセージを含む)の有無を確認し、そのイベントデータが有ればその処理を行うようになっている。
【0098】
先ず、ステップSC1では、次に処理すべきイベントデータを抽出する。続くステップSC2では、抽出したイベントデータが処理対象か否か、つまり処理すべきタイミングとなっているか否か判定する。そのタイミングとなっていた場合、判定はYESとなってステップSC3に移行し、そうでない場合には、即ち処理すべきイベントデータが存在していない場合には、判定はNOとなり、ここで一連の処理を終了する。
【0099】
処理すべきイベントデータを処理すると、次に処理すべきイベントデータを抽出し、それの時間データが示す処理タイミングとなるまでの時間の計時を開始する。このことから、上記ステップSC1では、既に次に処理すべきイベントデータを抽出していたのであれば、その時間の計時を進行する処理のみが行われる。その計時の進行は、例えばイベントデータの抽出時にその処理タイミングを示す時間データの値を変数に代入するのであれば、その変数の値をデクリメントすることで行われる。そのように進行させる場合、変数の値が0となるとステップSC2の判定がYESとなる。
【0100】
ステップSC3では、処理タイミングとなったイベントデータが図9(a)、或いは同図(b)に示すようなピッチ指定用のエクスクルーシブ・メッセージか否か判定する。イベントデータがそのようなエクスクルーシブ・メッセージであった場合、判定はYESとなってステップSC4に移行し、そのメッセージからRosenberg 波生成用のピッチを特定し、特定したピッチを補正後のピッチとして設定した後、上記ステップSC1に戻る。一方、そうでない場合には、判定はNOとなってステップSC5に移行し、イベントデータの種類に応じたその他イベント処理を実行した後、そのステップSC1に戻る。
【0101】
そのようにしてステップSC1を再度、実行することにより、次に処理すべきイベントデータが抽出され、その処理タイミングとなるまでの時間の計時が開始される。イベントデータの処理タイミングには或る程度の時間間隔が存在するのが普通である。このため、続くステップSC2の判定はNOとなり、一連の処理が終了することになる。
【0102】
次に図11を参照して、音声タイマ処理について詳細に説明する。
図6に示すように、切り出したフレームはホップサイズ分、オーバーラップされる。マイク7から入力した音声のピッチ補正後の音声はより短い時間で放音することが望まれる。このことから、音声タイマ処理は、そのホップサイズ分の時間間隔毎に実行される。
【0103】
先ず、ステップSB1では、RAM5に確保した入力バッファ31から、1フレームサイズ分の最新の原音高データを抽出し、それにハニング窓を窓関数として乗算する。次に移行するステップSB2では、窓関数を乗算後の音声データを対象に線形予測分析を行い(図7参照)、LPC係数を算出する。その後に移行するステップSB3では、算出したLPC係数を用いて残差信号を算出する。その算出は、(2)式を変形した式により行われる。
【0104】
ステップSB3に続くステップSB4では、残差信号の変形自己相関関数を算出し、その最初の2乗和で変形自己相関関数の各項を除算して正規化する。その後はステップSB5に移行する。
ステップSB5では、正規化した後の変形自己相関関数を閾値と比較することにより、原音声データが示す音声が有声音か否か判定する。その音声が有声音であった場合、判定はYESとなってステップSB6に移行し、Rosenberg 波を選択する。その後はステップSB8に移行する。一方、そうでない場合には、判定はNOとなり、ステップSB7で残差信号を選択した後、そのステップSB8に移行する。
【0105】
ステップSB8では、ステップSB2で算出したLPC係数を用いて、ステップSB5の判定結果に応じて選択される信号から1フレームサイズ分の音声データを生成(再合成)し、生成した音声データにハニング窓を窓関数として乗算する。次のステップSB9では、RAM5に確保した出力バッファ45に前回、1フレームサイズ分の音声データの書き込みを開始したアドレス(位置)からホップサイズ分、先のアドレス(位置)を書き込み開始アドレス(位置)として、生成した1フレームサイズ分の音声データの加算・書き込みを行う。一連の処理は、そのような加算・書き込み完了後に終了する。
【0106】
このようにして、図2に示す合成部22が加算器26に渡す音声データが生成される。生成された音声データは、楽音生成部9に送出され、図10のステップSA3の鍵盤処理、或いは図12のシーケンサタイマ処理の実行により楽音生成部9が生成した波形データと重畳される。それにより、音声と楽音とをスピーカ12から同時に放音できるようになっている。
<第2の実施の形態>
上記第1の実施の形態で説明したのは、マイク7から入力した音声のピッチ補正を行い、その補正後の音声を放音させる音声変換装置である。第2の実施の形態では、マイク7から入力した音声に音響効果を付与する音声効果付与装置について詳細に説明する。
【0107】
このように実施の形態に分けて説明するのは、混乱を避けて理解を容易とするためである。それにより、本実施の形態による音声効果付与装置が搭載された電子楽器の構成は第1の実施の形態における構成と同じである。このことから、第1の実施の形態で付与した符号をそのまま用いて、第1の実施の形態での説明を補足する形で説明を行うこととする。
【0108】
上述したように、エクスクルーシブ・メッセージ中に挿入されるピッチ変更ボイスコマンド(図9参照)でボーカルの他にコーラス1〜3を選択できるようになっている。このことから、本実施の形態による音声効果付与装置は、コーラス1〜3用の音声データを合成してコーラス効果を付与するものとして実現されている。それを実現させるための構成は、音声変換装置と同じである。
【0109】
図13は、本実施の形態による音声効果付与装置の機能構成図である。
その音声効果付与装置は、図13に示すように、3つの合成部22−1〜3を備えている。それら3つの合成部22−1〜3は、コーラス効果を付与する場合に、コーラス1〜3用の音声データを合成するためのものであり、図2に示す合成部22とは別に用意されている。図13中、「ピッチデータ1」〜「ピッチデータ3」と表記の各ピッチデータは、ピッチ変更ボイスコマンドで対応するコーラスの音声が指定されていた場合にのみシーケンサ24から渡される。
【0110】
各合成部22−1〜3は、シーケンサ24からピッチデータが渡された場合、そのピッチでRosenberg 波の波形データを生成し、そのピッチデータが渡されていない場合には、予め定められた規則に従い指定されるピッチデータが示すピッチでその波形データを生成する。その生成(合成)方法は、図2に示す合成部22と基本的に同じであるため、その機能構成等を含め説明は省略する。
【0111】
加算器26は、不図示の合成部22や音源25の他に、各合成部22−1〜3から波形データ、A/D変換器8から出力された、或いは入力バッファ31に格納された原音声データを受け取り、それらを加算して重畳する。コーラス効果のみを付与する場合、不図示の合成部22は動作しない。このため、原音声データに対してコーラス効果が付与された形の音声が放音される。
【0112】
各合成部22−1〜3が生成する音声データには、原音声データが持つ音韻性が維持され、そのピッチは常に正確である。それによって放音される音声は自然と感じられるものである。このことから、マイク7から入力した音声に対し、所望のコーラス効果を常に適切に付与できることとなる。
【0113】
各合成部22−1〜3が生成する音声データは、図11に示す音声タイマ処理内のステップSB8、SB9の処理を実行することで生成される。このことから、実行するタイマインタラプト処理も同じである。
なお、各合成部22−1〜3は、声道駆動音源波形としてRosenberg 波を生成しているが、それ以外の波形を生成するようにしても良い。コーラス効果のような音響効果を付与するのであれば、パルス波を生成しても良い。そのパルス波を生成しても自然な形でコーラス効果を付与することができる。生成した波形のピッチをLFO等により変調しても良い。そのような変調を行った場合には、ビブラート効果を付与することができる。
【0114】
また、コーラス効果は、原音声データに対して付与しているが、合成部22により生成した音声データに対して付与するようにしても良い。合成部22、更には合成部22−1〜3に渡すフォルマント成分(LPC係数)については、そのままではなく、加工(変更)したものを渡すようにしても良い。
【0115】
本実施の形態では、補正後のピッチを楽曲データ23により指定するようになっているが、その指定は他の方法を用いて行うようにしても良い。例えば鍵盤2への演奏操作により押鍵された鍵に応じてピッチを設定することにより、ユーザが任意にピッチを指定できるようにしても良い。そのピッチを固定としても良い。そのピッチを固定とした場合には、ロボットが発音するような音声を放音させることができる。
【0116】
有声音か否かの判断は、正規化した変形自己相関関数の各項を閾値と比較することで行っている。しかし、有声音と無声音の中間的な音声への対応をより適切なものとするために、閾値にヒステリシス特性を持たせ、その中間状態にあるような場合には、残差信号と声道駆動音源波形をクロスフェードさせる形で用いるようにしても良い。
【0117】
声道駆動音源波形(ここではRosenberg 波)のOQの値は固定としたが、原音声データ(入力音声)を分析してそのOQの値を動的に変更するようにしても良い。そのようにした場合には、より高品質な音声を放音、或いは音響効果を付与することができるようになる。
【0118】
上述したような音声変換装置、音声効果付与装置、或いはその変形例を実現させるようなプログラムは、CD−ROM、DVD、或いは光磁気ディスク等の記録媒体に記録させて配布しても良い。或いは、公衆網等で用いられる伝送媒体を介して、そのプログラムの一部、若しくは全部を配信するようにしても良い。そのようにした場合には、ユーザーはプログラムを取得してコンピュータなどのデータ処理装置にロードすることにより、そのデータ処理装置を用いて本発明を適用させた音声変換装置、或いは音声効果付与装置を実現させることができる。このことから、記録媒体は、プログラムを配信する装置がアクセスできるものであっても良い。
【0119】
【発明の効果】
以上、説明したように本発明は、入力した第1の音声データからフォルマントデータを抽出し、抽出したフォルマントデータを、生成した声道駆動音源波形データに合成して第2の音声データを生成する。
【0120】
声道駆動音源波形データに第1の音声データから抽出したフォルマントデータを合成して第2の音声データを生成することにより、その第2の音声データに第1の音声データが持つ音韻性が維持される。第1の音声データからのピッチ抽出を行う必要性は回避され、声道駆動音源波形データとしては、任意のピッチを持つものを確実(正確)に、更には聞いた人が自然と感じられるものを生成することができるようになる。これらの結果、第1の音声データのピッチ補正は常に適切に行えるようになる。
【0121】
そのピッチ補正後の第2の音声データを第1の音声データに対する音響効果の付与に用いた場合には、常に適切な音響効果を付与することができるようになる。ピッチ抽出を行う必要性を回避することにより、より簡易、或いは低コストで本発明を音声変換装置、或いは音声効果付与装置に適用することができるようになる。
【図面の簡単な説明】
【図1】本実施の形態による音声変換装置、及び音声効果付与装置を搭載した電子楽器の構成図である。
【図2】本実施の形態による音声変換装置の機能構成図である。
【図3】分析部の機能構成図である。
【図4】合成部の機能構成図である。
【図5】合成フィルタの機能構成図である。
【図6】フレームの切り出し方法を説明する図である。
【図7】Levinson−Durbin の再帰的解法によるLPC係数の算出方法を示すフローチャートである。
【図8】Rosenberg 波の波形を説明する図である。
【図9】楽曲データに挿入されるエクスクルーシブ・メッセージのデータ構成を説明する図である。
【図10】全体処理のフローチャートである。
【図11】音声タイマ処理のフローチャートである。
【図12】シーケンサタイマ処理のフローチャートである。
【図13】本実施の形態による音声効果付与装置の機能構成図である。
【符号の説明】
1 CPU
3 スイッチ部
4 ROM
5 RAM
7 マイク
8 A/D変換器
9 楽音生成部
10 D/A変換器
11 アンプ
12 スピーカ
13 外部記憶装置
21 分析部
22 合成部
23 楽曲データ
24 シーケンサ
25 音源
26 加算器
Claims (8)
- 第1の音声データを入力してその変換を行う音声変換装置において、
前記第1の音声データからフォルマントデータを抽出するデータ抽出手段と、
声道駆動音源波形データを生成する波形データ生成手段と、
前記波形データ生成手段が生成した声道駆動音源波形データに、前記データ抽出手段が抽出したフォルマントデータを合成して第2の音声データを生成する音声データ合成手段と、
を具備することを特徴とする音声変換装置。 - 前記音声データ合成手段は、指定されたピッチに応じて前記声道駆動音源波形データを生成する、
ことを特徴とする請求項1記載の音声変換装置。 - 前記波形データ生成手段が前記声道駆動音源波形データを生成する声道駆動音源波形はRosenberg 波形である、
ことを特徴とする請求項1、または2記載の音声変換装置。 - 前記データ抽出手段は、前記第1の音声データをフォルマントデータと残差信号データに分離して該フォルマントデータを抽出し、
前記音声データ合成手段は、前記第1の音声データが示す音声が有声音であった場合にのみ、前記声道駆動音源波形データに前記フォルマントデータを合成する、
ことを特徴とする請求項1、2、または3記載の音声変換装置。 - 第1の音声データを入力して音響効果の付加を行う音声効果付与装置において、
前記第1の音声データからフォルマントデータを抽出するデータ抽出手段と、
声道駆動音源波形データを生成する波形データ生成手段と、
前記波形データ生成手段が生成した声道駆動音源波形データに、前記データ抽出手段が抽出したフォルマントデータを合成して第2の音声データを生成する音声データ合成手段と、
前記音声データ合成手段が生成した第2の音声データを、前記第1の音声データと共に出力することにより、該第1の音声データに対して音響効果を付加する音響効果付加手段と、
を具備することを特徴とする音声効果付与装置。 - 前記波形データ生成手段は、前記声道駆動音源波形データを、ピッチを異ならせて複数、生成し、
前記音声データ合成手段は、前記波形データ生成手段が生成した複数の前記声道駆動音源波形データのそれぞれに対し、前記データ抽出手段が抽出したフォルマントデータを合成して前記第2の音声データを複数、生成し、
前記音響効果付加手段は、前記音声データ合成手段が生成した複数の第2の音声信号を前記第1の音声信号と共に出力する、
ことを特徴とする請求項5記載の音声効果付与装置。 - 前記波形データ生成手段が前記声道駆動音源波形データを生成する声道駆動音源波形はRosenberg 波形、或いはパルス波形である、
ことを特徴とする請求項5、または6記載の音声効果付与装置。 - 第1の音声データを入力してその変換を行う音声変換装置に実行させるプログラムであって、
前記第1の音声データからフォルマントデータを抽出する機能と、
声道駆動音源波形データを生成する機能と、
前記生成する機能により生成した声道駆動音源波形データに、前記抽出する機能により抽出したフォルマントデータを合成して第2の音声データを生成する機能と、
を実現させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003082468A JP2004287350A (ja) | 2003-03-25 | 2003-03-25 | 音声変換装置、音声効果付与装置、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003082468A JP2004287350A (ja) | 2003-03-25 | 2003-03-25 | 音声変換装置、音声効果付与装置、及びプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009167428A Division JP2009237590A (ja) | 2009-07-16 | 2009-07-16 | 音声効果付与装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004287350A true JP2004287350A (ja) | 2004-10-14 |
Family
ID=33295758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003082468A Pending JP2004287350A (ja) | 2003-03-25 | 2003-03-25 | 音声変換装置、音声効果付与装置、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004287350A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008529078A (ja) * | 2005-01-27 | 2008-07-31 | シンクロ アーツ リミテッド | 音響的特徴の同期化された修正のための方法及び装置 |
JP2010224053A (ja) * | 2009-03-19 | 2010-10-07 | Nec Corp | 音声合成装置、音声合成方法、プログラム及び記録媒体 |
-
2003
- 2003-03-25 JP JP2003082468A patent/JP2004287350A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008529078A (ja) * | 2005-01-27 | 2008-07-31 | シンクロ アーツ リミテッド | 音響的特徴の同期化された修正のための方法及び装置 |
JP2010224053A (ja) * | 2009-03-19 | 2010-10-07 | Nec Corp | 音声合成装置、音声合成方法、プログラム及び記録媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6610714B1 (ja) | 電子楽器、電子楽器の制御方法、及びプログラム | |
JP6610715B1 (ja) | 電子楽器、電子楽器の制御方法、及びプログラム | |
JP4207902B2 (ja) | 音声合成装置およびプログラム | |
JP3985814B2 (ja) | 歌唱合成装置 | |
US5703311A (en) | Electronic musical apparatus for synthesizing vocal sounds using format sound synthesis techniques | |
CN109559718B (zh) | 电子乐器、电子乐器的乐音产生方法以及存储介质 | |
JP4645241B2 (ja) | 音声処理装置およびプログラム | |
CN111542875B (zh) | 声音合成方法、声音合成装置及存储介质 | |
CN111418005B (zh) | 声音合成方法、声音合成装置及存储介质 | |
US20200294485A1 (en) | Keyboard instrument and method performed by computer of keyboard instrument | |
CN112331222A (zh) | 一种转换歌曲音色的方法、系统、设备及存储介质 | |
JP6737320B2 (ja) | 音響処理方法、音響処理システムおよびプログラム | |
JPH10319947A (ja) | 音域制御装置 | |
JPH11259066A (ja) | 音楽音響信号分離方法、その装置およびそのプログラム記録媒体 | |
JP5292702B2 (ja) | 楽音信号生成装置及びカラオケ装置 | |
JP4433734B2 (ja) | 音声分析合成装置、音声分析装置、及びプログラム | |
JP2009237590A (ja) | 音声効果付与装置 | |
JP6801766B2 (ja) | 電子楽器、電子楽器の制御方法、及びプログラム | |
JP2004077608A (ja) | 合唱合成装置、合唱合成方法およびプログラム | |
JP2004287350A (ja) | 音声変換装置、音声効果付与装置、及びプログラム | |
JP2001117578A (ja) | ハーモニー音付加装置及び方法 | |
JP5573529B2 (ja) | 音声処理装置およびプログラム | |
JP2004061753A (ja) | 歌唱音声を合成する方法および装置 | |
JP2010002937A (ja) | 音声分析合成装置、音声分析装置、音声合成装置、及びプログラム | |
JPH1031496A (ja) | 楽音発生装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060308 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090519 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20091110 |