以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。まず、第1の実施形態について説明する。
音声の一例である人間の歌声の音域は一般的に2オクターブ程度である。一方、例えば情報処理装置として歌声機能を実現しようとした場合に、音域の指定が人間の歌声音域を超えて、例えば5オクターブ程度に及ぶ可能性がある。
そこで、第1の実施形態では、例えば図1に示されるように、低音側の2オクターブ分の音域1には、ピッチ音が低い例えば男性の歌声をモデル化した第1歌声モデルを割り当て、高音側の2オクターブ分の音域2には、ピッチ音が高い例えば女性の歌声をモデル化した第2歌声モデルを割り当てる。
更に、第1の実施形態では、例えば図1に示されるように、音域1と音域2に挟まれた中央の2オクターブ分程度の重ならない音域3には、音域1の第1音域歌声と音域2の第2音域歌声からモーフィングされる男女中間の歌声を割り当てる。
図2は、第1の実施形態の情報処理装置の少なくとも1つのプロセッサ(以下「プロセッサ」と記載)が実行する音声生成処理(例えば歌声生成処理)の例を示すフローチャートである。
まず、プロセッサは、指定された音高を検出する(ステップS201)。情報処理装置が例えば電子楽器として実装される場合、この電子楽器は例えば演奏操作子210を備える。そして、プロセッサは例えば、演奏操作子210が検出する音高指定データ211に基づいて、上記指定された音高を検出する。
ここで、情報処理装置は、例えばデータベースシステムである音声モデル220を備える。そして、プロセッサは、第1音声モデル221の第1音声データ(第1データ)223と、第2音声モデル222の第2音声データ(第2データ)224を、上記音声モデル220の例えばデータベースシステムから読み出す。そして、プロセッサは、上記第1音声データ223及び第2音声データ224に基づいて、モーフィングデータ(第3データ)を生成する(以上、ステップS202)。より具体的には、上記音声モデル220が人間の歌声モデルである場合、プロセッサは、上記モーフィングデータを、第1音声データ223に対応する第1歌声データのフォルマント周波数と第2音声データ224に対応する第2歌声データのフォルマント周波数の間の補間演算に基づいて生成する。
ここで例えば、音声モデル220として記憶される第1音声モデル221は、第1の音声(例えば、第1歌手の歌声)を学習した学習済みモデルを含み、同様に音声モデル220として記憶される第2音声モデル222は、第2の音声(例えば、第2歌手の歌声)を学習した学習済みモデルを含んでよい。
プロセッサは、ステップS202で生成したモーフィングデータに基づく音声を出力する(ステップS203)。
ここで例えば、第1音声モデル221に対応する第1音域と、第2音声モデル222に対応する第2音域の間に、重ならない音域を有し、ステップS201で検出される音高は上述の重ならない音域に含まれてよい。そして、ステップS202で生成されるモーフィングデータは、指定された曲の音域に対応する音声モデルが無い場合に、生成されてよい。もっとも前記第1音域と前記第2音域に重なる音域があったとしても本発明を適用して、複数の音声モデルそれぞれの音声データに基づいてモーフィングデータを生成しもよい。
上述した第1の実施形態の音声生成処理において、楽曲が例えば図1の低音側の音域1に属していれば、プロセッサは、その音域1に予め割り当てられている例えば人間の男性らしい歌声の第1音声モデル221に対応する第1歌声モデルからフォルマント周波数を推定して、それに対応する第1音域の歌声を音声出力する。
また、楽曲が例えば図1の高音側の音域2に属していれば、プロセッサは、その音域2に予め割り当てられている例えば人間の女性らしい歌声の第2音声モデル222に対応する第2歌声モデルからフォルマント周波数を推定して、それに対応する第2音域の歌声を音声出力する。
一方、楽曲が例えば図1の音域1と2の中間の音域3に属していれば、プロセッサは、図2のステップS202の処理により、例えば人間の、男性らしい歌声の第1音声モデル221に対応する第1歌声モデルの第1音声データ223に対応する第1歌声データと、女性らしい歌声の第2音声モデル222に対応する第2歌声モデルの第2音声データ224に対応する第2歌声データに基づいて、モーフィングデータを生成して音声出力する。
以上の処理の結果、楽曲の鍵域によく合った最適な音域の例えば歌声を出力させることが可能となる。
次に、第2の実施形態について説明する。第2の実施形態は、図2の音声モデル220に対応するモデルとして、人間の歌声をモデル化した歌声モデルを対象とする。図3は、第2の実施形態における電子鍵盤楽器300の外観例を示す図である。電子鍵盤楽器300は、操作子としての複数の鍵からなる鍵盤301と、音量の指定、歌詞自動再生のテンポ設定、歌詞自動再生開始等の各種設定を指示する第1のスイッチパネル302と、ソングの選曲や楽器音色の選択等を行う第2のスイッチパネル303を備える。また、鍵盤301の各鍵は、LED(Light Emitting Diode:発光ダイオード)304を備える。このLED304は、それが含まれる鍵が歌詞自動再生時に次に指定されるべき鍵であるときには最大輝度で光り、その鍵が歌詞自動再生時に次の次に指定されるべき鍵であるときには最大輝度の半分の輝度で光る。更に、電子鍵盤楽器300は、特には図示しないが、演奏により生成された楽音や歌声を放音するスピーカを裏面部、側面部、又は背面部等に備える。
図4は、第2の実施形態における図3の電子鍵盤楽器300の制御システム400のハードウェア構成例を示す図である。図4において、制御システム400は、CPU(中央演算処理装置)401、ROM(リードオンリーメモリ)402、RAM(ランダムアクセスメモリ)403、音源LSI(大規模集積回路)404、音声合成LSI405、図3の鍵盤301、第1のスイッチパネル302と第2のスイッチパネル303が接続されるキースキャナ406、及び図3の鍵盤301上の各鍵が備えるLED304が接続されるLEDコントローラ407、外部のネットワークとMIDIデータ等のやりとりを行うネットワークインタフェース408が、それぞれシステムバス409に接続されている。また、CPU401には、歌声データの自動再生のシーケンスを制御するためのタイマ410が接続される。更に、音源LSI404及び音声合成LSI405からそれぞれ出力される楽音出力データ418及び歌声音声出力データ417は、D/Aコンバータ411、412によりそれぞれアナログ楽音出力信号及びアナログ歌声音声出力信号に変換される。アナログ楽音出力信号及びアナログ歌声音声出力信号は、ミキサ413で混合され、その混合信号がアンプ414で増幅された後に、特には図示しないスピーカ又は出力端子から出力される。
CPU401は、RAM403をワークメモリとして使用しながらROM402に記憶された制御プログラムを実行することにより、図3の電子鍵盤楽器300の制御動作を実行する。また、ROM402は、上記制御プログラム及び各種制御データのほか、歌詞データを含む後述する演奏ガイドデータを記憶する。
CPU401には、タイマ410が実装されており、例えば電子鍵盤楽器300における演奏ガイドデータの自動再生の進行をカウントする。
音源LSI404は、CPU401からの発音制御指示に従って、例えば特には図示しない波形ROMから楽音波形データを読み出し、D/Aコンバータ411に出力する。音源LSI404は、同時に最大256ボイスを発音させる能力を有する。
音声合成LSI405は、CPU401から、歌詞のテキストデータである歌詞情報と音高に関する音高情報を歌声データ415として与えられると、それに対応する歌声の音声データである歌声音声出力データ417を合成し、D/Aコンバータ412に出力する。
キースキャナ406は、図3の鍵盤301の押鍵/離鍵状態、第1のスイッチパネル302、及び第2のスイッチパネル303のスイッチ操作状態を定常的に走査し、CPU401に割込みをかけて状態変化を伝える。
LEDコントローラ407は、図3の鍵盤301上の各鍵が備える各LED304の表示状態を制御するIC(集積回路)である。
図5は、第2の実施形態における音声合成部500の構成例を示すブロック図である。音声合成部500は、図4の音声合成LSI405が実行する一機能である。
音声合成部500は、図4のCPU401から指示される歌詞情報、音高情報、及び音域情報を含む歌声データ415を入力することにより、歌声音声出力データ417を合成し出力する。このとき音声合成部500のプロセッサは、音響モデル部501に設定されている音響モデルに対して、CPU401により入力される歌詞情報と音高情報と音域情報を含む歌声データ415に応じて、音響モデル部501から出力された目標音源情報512と、音響モデル部501からフォルマント補間処理部506を介して出力された目標スペクトル情報513とに基づいて、歌い手の歌声を推論した歌声音声出力データ417を出力する発声処理を実行する。音声合成部500は、例えば下記特許文献に記載の技術をベースとして実装される。
(特許文献):第6610714号特許公報
音声合成部500の基本的な動作の詳細は上記特許文献に開示されているが、第2の実施形態独自の動作を含む音声合成部500の動作について以下に説明する。
音声合成部500は、テキスト解析部502と音響モデル部501と発声モデル部503とフォルマント補間処理部506とを含む。フォルマント補間処理部506は、第2の実施形態における独自の機能に関する部分である。
第2の実施形態において、音声合成部500は、歌詞のテキストである歌詞と音高と音域とを含む歌声データ415に対応する歌声音声出力データ417を、音響モデル部501に設定された音響モデルという統計モデルを用いて予測することにより合成する、統計的音声合成処理を実行する。
テキスト解析部502は、図4のCPU401より指定される歌詞、音高、及び音域等に関する情報を含む歌声データ415を入力し、そのデータを解析する。この結果、テキスト解析部502は、歌声データ415内の歌詞に対応する音素、品詞、単語等を表現する言語特徴量系列507と、歌声データ415内の音高に対応する音高情報508とを夫々生成して、音響モデル部501に与える。
また、テキスト解析部502は、歌声データ415中の音域に対応する音域情報509を生成して、フォルマント補間処理部506に与える。フォルマント補間処理部506は、音域情報509が示す音域が、現在設定されている音域である第1音域の範囲に入っていれば、音響モデル部501に第1音域のスペクトル情報510(以下「第1音域スペクトル情報510」と記載)を要求する。
第1音域スペクトル情報510は、第1スペクトル情報、第1スペクトルデータ、第1音声データ或いは、第1データ、等と表現されてもよい。
一方、フォルマント補間処理部506は、音域情報509が示す音域が、現在の音域である第1音域の範囲には入っていないが、他の新たな音域の範囲に入っていれば、その新たな音域を第1音域に置き換えて、音響モデル部501に第1音域スペクトル情報510を要求する。
更に他方、フォルマント補間処理部506は、音域情報509が示す音域が、第1音域を含む何れの音域の範囲にも入っていないが、上記第1音域ともう1つの第2音域の間の音域の範囲に入っている場合には、音響モデル部501に第1音域スペクトル情報510と第2音域のスペクトル情報511(以下「第2音域スペクトル情報511」と記載)の両方を要求する。
第2音域スペクトル情報511は、第2スペクトル情報、第2スペクトルデータ、第2音声データ或いは、第2データ、等と表現されてもよい。
音響モデル部501は、テキスト解析部502から前述の言語特徴量系列507及び音高情報508を入力すると共に、フォルマント補間処理部506からの上述した音域を指定した要求を入力する。
この結果、音響モデル部501は、例えば機械学習により学習結果として設定された音響モデルを用いて、生成確率を最大にするような音素に対応する第1音域スペクトル、又は第1音域スペクトル/第2音域スペクトルを推定し、夫々を第1音域スペクトル情報510、又は第1音域スペクトル情報510/第2音域スペクトル情報511として、フォルマント補間処理部506に与える。
また、音響モデル部501は、上記音響モデルを用いて、生成確率を最大にするような上記音素に対応する音源を推定し、それを目標音源情報512として、発声モデル部503内の音源生成部504に与える。
フォルマント補間処理部506は、第1音域スペクトル情報510、又は第1音域スペクトル情報510と第2音域スペクトル情報511とを補間して得られるスペクトル情報(以下「補間スペクトル情報」と記載)の何れかを、目標スペクトル情報513として発声モデル部503内の合成フィルタ部505に与える。
目標スペクトル情報513は、モーフィングデータ或いは、第3データ、等と表現されてもよい。
発声モデル部503は、音響モデル部501から出力される目標音源情報512と、フォルマント補間処理部506から出力される目標スペクトル情報513とを入力することにより、歌声データ415に対応する歌声音声出力データ417を生成する。歌声音声出力データ417は、図4のD/Aコンバータ412からミキサ413及びアンプ414を介して出力され、特には図示しないスピーカから放音される。
音響モデル部501が出力する音響特徴量は、人間の声道をモデル化したスペクトル情報と、人間の声帯をモデル化した音源情報とを含む。スペクトル情報のパラメータとしては例えば、人間の声道特性である複数のフォルマント周波数を効率的にモデル化することができる線スペクトル対(Line Spectral Pairs:LSP)、線スペクトル周波数(Line Spectral Frequencies:LSF)、又はそれらを改良したメルLSP等(以下「LSP」と記載)を採用できる。従って、音響モデル部501から出力される第1音域スペクトル情報510又は第2音域スペクトル情報511、或いは、フォルマント補間処理部506から出される目標スペクトル情報513は、例えば上述のLSPに基づく周波数パラメータとすることができる。
スペクトル情報のパラメータの他の例として、ケプストラムやメルケプストラムが採用されてもよい。
音源情報としては、人間の音声のピッチ周波数を示す基本周波数(F0)とそのパワー値(有声音音素の場合)、又はホワイトノイズのパワー値(無声音音素の場合)を採用できる。従って、音響モデル部501から出力される目標音源情報512は、上述のようなF0及びパワー値のパラメータとすることができる。
発声モデル部503は、音源生成部504と合成フィルタ部505とを含む。音源生成部504は、人間の声帯をモデル化した部分であり、音響モデル部501から入力する目標音源情報512の系列を順次入力することにより、例えば、目標音源情報512に含まれる基本周波数(F0)及びパワー値で周期的に繰り返されるパルス列(有声音音素の場合)、又は目標音源情報512に含まれるパワー値を有するホワイトノイズ(無声音音素の場合)、或いはそれらが混合された信号からなる音源入力データ514を生成する。
合成フィルタ部505は、人間の声道をモデル化した部分であり、音響モデル部501からフォルマント補間処理部506を介して順次入力する目標スペクトル情報513に含まれるLSP周波数パラメータに基づいて声道をモデル化するLSPデジタルフィルタを形成する。音源生成部504から入力する音源入力データ514を励振源信号として上記デジタルフィルタが励振されることにより、合成フィルタ部505からデジタル信号のフィルタ出力データ515が出力される。このフィルタ出力データ515は、図4のD/Aコンバータ412によりアナログ歌声音声出力信号に変換された後、ミキサ413で音源LSI404からD/Aコンバータ411を介して出力されるアナログ楽音出力信号と混合され、その混合信号がアンプ414で増幅された後に、特には図示しないスピーカ又は出力端子から出力される。
歌声音声出力データ417に対するサンプリング周波数は、例えば16KHz(キロヘルツ)である。また、第1音域スペクトル情報510、第2音域スペクトル情報511、及び目標スペクトル情報513のパラメータとして、例えばLSP分析処理により得られるLSFパラメータが採用される場合、その更新フレーム周期は、例えば5ミリ秒、分析窓長は例えば25ミリ秒、窓関数は例えばブラックマン窓、分析次数は例えば10次である。
図3、図4、及び図5の構成のもとでの、第2の実施形態の全体的な動作の概略について説明する。まず、CPU401は、歌詞情報と音高情報とタイミング情報を少なくとも含む演奏ガイドデータに基づき、演奏者による楽曲の演奏をガイドする。具体的には、図4において、CPU401は、メモリであるROM402に記憶されている自動再生のための歌詞情報と音高情報とタイミング情報とを少なくとも含む一連の演奏ガイドデータの組を順次読み出しながら、その演奏ガイドデータの組に含まれるタイミング情報に対応するタイミングでその演奏ガイドデータの組に含まれる歌詞情報と音高情報とを自動再生する。上記タイミングは、例えば設定された演奏テンポに同期した図4のタイマ410による割込み処理に基づいて制御することができる。
このとき、CPU401は、自動再生される音高情報に対応する鍵盤301上の鍵を指示することで、自動再生に同期してユーザが押鍵操作して演奏レッスン(演奏練習)することをガイドする。より具体的には、CPU401は、この演奏ガイドの処理において、自動再生のタイミングに同期させて、例えば図3の2つのLED304が光っている鍵として示されるように、次に自動再生される音高情報に対応する鍵(操作子)が備えるLED304を強い輝度例えば最大輝度で光らせると共に、次の次に自動再生される音高情報に対応する鍵が備えるLED304を弱い輝度例えば最大輝度の半分の輝度で光らせる。
次に、CPU401は、上記演奏ガイドに従って、演奏者が図3の鍵盤301上の鍵を押鍵又は離鍵する演奏操作に関する情報である演奏情報を取得する。
続いて、CPU401は、演奏レッスンにおける鍵盤301上の鍵の押鍵タイミング(操作タイミング)及び鍵の押鍵音高(操作音高)が自動再生されるタイミング情報及び音高情報に正しく対応している場合に、その押鍵タイミングで、自動再生される歌詞情報と音高情報とを歌声データ415として図5のテキスト解析部502に入力する。この結果、前述したようにして、音響モデル部501から出力される目標音源情報512が設定される音源生成部504が出力する音源入力データ514によって、音響モデル部501からフォルマント補間処理部506を介して出力される目標スペクトル情報513に基づいて形成される合成フィルタ部505のデジタルフィルタを励振させることにより、フィルタ出力データ515を出力し、そのフィルタ出力データ515を図4の歌声音声出力データ417として出力させる。
歌声データ415は、歌詞(テキストデータ)と、音節のタイプ(開始音節、中間音節、終了音節など)と、歌詞インデックスと、対応する声高(正解の声高)と、対応する発音期間(例えば、発音開始タイミング、発音終了タイミング、発音の長さ(duration))(正解の発音期間)と、の少なくとも1つを含む情報であってもよい。
例えば、図5に例示されるように、歌声データ415は、第n(n=1、2、3、4、・・・)音符に対応する第n歌詞の歌声データと、第n音符が再生されるべき規定のタイミング(第n歌声再生位置)と、の情報を含んでもよい。
歌声データ415は、当該歌詞に対応する伴奏(ソングデータ)を演奏するための情報(特定の音声ファイルフォーマットのデータ、MIDIデータなど)を含んでもよい。歌声データがSMFフォーマットで示される場合、歌声データ415は、歌声に関するデータが格納されるトラックチャンクと、伴奏に関するデータが格納されるトラックチャンクと、を含んでもよい。歌声データ415は、ROM402からRAM403に読み込まれてもよい。歌声データ415は、メモリ(例えば、ROM402、RAM403)に演奏前から記憶されている。
なお、電子鍵盤楽器300は、歌声データ415によって示されるイベント(例えば、歌詞の発声タイミングと音高を指示するメタイベント(タイミング情報)、ノートオン又はノートオフを指示するMIDIイベント、又は拍子を指示するメタイベントなど)に基づいて、自動伴奏の進行などを制御してもよい。
ここで、音響モデル部501には、例えば機械学習による学習結果として歌声の音響モデルが設定されるが、第1の実施形態で前述したように、人間の歌声音域は一般的に2オクターブ程度である。一方、図3の鍵盤301として示される例えば61鍵は、5オクターブに及ぶ。
そこで、第2の実施形態では、61鍵の鍵盤301のうち、低音側の2オクターブ分の鍵域1には、ピッチ音が低い例えば男性の歌声を機械学習により学習させた結果としての音響モデルを割り当て、高音側の2オクターブ分の鍵域2には、ピッチ音が高い例えば女性の歌声を機械学習により学習させた結果としての音響モデルを割り当てる。
更に、第1の実施形態では、61鍵の鍵盤301のうち、中央の2オクターブ分の鍵域3には、鍵域1の第1音域歌声と鍵域2の第2音域歌声からモーフィングされる男女中間の歌声を割り当てる。
ここで、例えばROM402からRAM403に予めロードされる歌声データ415において、例えば先頭のメタイベントとして、その歌声データ415が含まれる楽曲全体が平均して、図1に例示した鍵域1、2、3のうちどの鍵域に属するかを示す鍵域データを保持してよい。そして、図5のテキスト解析部502は、歌声合成の開始時に、CPU201から、歌声データ415の一部として、鍵域データを受け取ってよい。そして、テキスト解析部502は、この鍵域データに対応する音域情報509を、歌声合成の開始時に、フォルマント補間処理部506に与える。
フォルマント補間処理部506は、歌声合成の開始時に、音域情報509が示す音域がどの図1に例示される鍵域1、2、3のどの音域に属するかを判別する。そして、フォルマント補間処理部506は、音源情報319が示す音域が図1の例示の鍵域1又は鍵域2の何れかの鍵域に属すると判別した場合には、その鍵域1又は2を第1音域に設定し、以後、その第1音域の音響モデルにアクセスするように、音響モデル部501に要求する。
この結果、音響モデル部501は、歌声合成の開始以降、フォルマント補間処理部506から要求された第1音域の音響モデルを用いて、テキスト解析部502から受信している言語特徴量系列507及び音高情報508に対して生成確率を最大にするような音素に対応する第1音域スペクトルを推定し、第1音域スペクトル情報510としてフォルマント補間処理部506に与える。
上述の制御動作により、楽曲が全体として図3の鍵盤301の低音側の鍵域1に属していれば、音響モデル部501は、その鍵域1に予め割り当てられている例えば男性らしい歌声の音響モデルからスペクトルを推定して、それに対応する第1音域スペクトル情報510を出力する。そして、フォルマント補間処理部506は、音響モデル部501から出力される第1音域スペクトル情報510をそのまま、目標スペクトル情報513として、発声モデル部503内の合成フィルタ部505に与える。
また、楽曲が全体として例えば図1の高い音側の鍵域2に属していれば、音響モデル部501は、その鍵域2に予め割り当てられている例えば女性らしい歌声の音響モデルからスペクトルを推定して、それに対応する第1音域スペクトル情報510を出力する。そして、フォルマント補間処理部506は、音響モデル部501から出力される第1音域スペクトル情報510をそのまま、目標スペクトル情報513として、発声モデル部503内の合成フィルタ部505に与える。
一方、楽曲が全体として例えば図1の中間の鍵域3に属していれば、フォルマント補間処理部506は、その鍵域3の両側の鍵域1及び鍵域2をそれぞれ第1音域及び第2音域に設定し、以後、第1音域と第2音域の両方の音響モデルにアクセスするように、音響モデル部501に要求する。
音響モデル部501は、鍵域3の両側の鍵域1と2に予め割り当てられている、男性らしい歌声の音響モデルから推定したスペクトルに対応する第1音域スペクトル情報510と、女性らしい歌声の音響モデルから推定したスペクトルに対応する第2音域スペクトル情報511の、2つのスペクトル情報を出力する。そして、フォルマント補間処理部506は、上記第1音域スペクトル情報510と第2音域スペクトル情報511との間の補間処理によって補間スペクトル情報を算出し、その補間スペクトル情報をモーフィングされた目標スペクトル情報513として、発声モデル部503内の合成フィルタ部505に与える。
目標スペクトル情報513は、モーフィングデータ(第3音声データ)、第3スペクトル情報等と表現してもよい。
以上の処理の結果、合成フィルタ部505からは、楽曲全体の鍵域によく合った最適な鍵域の歌声を機械学習させた結果としての音響モデルに基づく目標スペクトル情報513によって合成されたフィルタ出力データ515を、歌声音声出力データ417として出力させることが可能となる。
図6は、フォルマント補間処理部506の動作説明図である。図6に示される各グラフにおいて、横軸は周波数[Hz]、縦軸はパワー[dB]である。
図6(a)の601は、図1に例示した鍵域1の例えば男性らしい或る有声音韻の声道スペクトル特性を模式的に示したグラフである。鍵域1の声道スペクトル特性601は、LSP分析によって算出されるLSPパラメータL1[i](1≦i≦N、NはLSP分析次数)に基づいて形成されるLSPデジタルフィルタによって形成することができる。なお、図6において、説明の簡単のためLSP分析次数N=6として示してあるが、実際には例えばN=10である。声道スペクトル特性601において、F1[1]は鍵域1の第1フォルマント周波数、F1[2]は鍵域1の第2フォルマント周波数である。フォルマント周波数は、声道スペクトル特性において極を形成する周波数で、人間の声道を通して発音される「あ」「い」「う」「え」「お」等の有声音韻の違いを決定づけると共に、男性と女性の声質の違いも決定づける。実際には、より高次のフォルマント周波数も存在するが、ここでは説明の簡単のため3次以上の高次フォルマント周波数は省略してある。LSPパラメータL1[i]の相互の周波数間隔により、人間の声道のスペクトル特性を良くモデル化することができ、特にフォルマント周波数における極の鋭さ(極の山の裾野部分の周波数間隔の狭さ)と強さ(パワー)は、隣り合うLSPパラメータL1[i]の周波数間隔によって表現することができる。
楽曲が全体として例えば図1の低音側の鍵域1に属していれば、音響モデル部501は、その鍵域1に予め割り当てられている例えば男性らしい歌声の音響モデルからスペクトルを推定して、そのスペクトルに対応するLSPパラメータL1[i](1≦i≦N)を第1音域スペクトル情報510として出力する。そして、フォルマント補間処理部506は、音響モデル部501から出力される第1音域スペクトル情報510の上記LSPパラメータをそのまま、目標スペクトル情報513のLSPパラメータとして、発声モデル部503内の合成フィルタ部505に与える。
図6(b)の602は、図6(a)と同じ有声音韻につき、図1に例示した鍵域2の例えば女性らしい声の声道スペクトル特性を模式的に示したグラフである。鍵域2の声道スペクトル特性602は、LSP分析に基づいて算出されるLSPパラメータL2[i](1≦i≦N、NはLSP分析次数)によって形成されるLSPデジタルフィルタで実現することができる。声道スペクトル特性602で、F2[1]は鍵域2の第1フォルマント周波数、F2[2]は鍵域2の第2フォルマント周波数である。図6(b)における各諸元は図6(a)の場合と同様である。
楽曲が全体として例えば図1の低音側の鍵域2に属していれば、音響モデル部501は、その鍵域2に予め割り当てられている例えば女性らしい歌声の音響モデルからスペクトルを推定して、そのスペクトルに対応するLSPパラメータL2[i](1≦i≦N)を第1音域スペクトル情報510として出力する。そして、フォルマント補間処理部506は、音響モデル部501から出力される第1音域スペクトル情報510の上記LSPパラメータをそのまま、目標スペクトル情報513のLSPパラメータとして、発声モデル部503内の合成フィルタ部505に与える。
図6(a)と図6(b)を比較するとわかるように、図1の鍵域1における男性らしい声と鍵域2における女性らしい声の差は、図5の目標音源情報512におけるピッチ周波数の差(女性が男性の2倍程度)として顕著に表れる。また、フォルマント周波数に関しても、鍵域2の女性らしい声の第1フォルマント周波数F2[1]と第2フォルマント周波数F2[2]のほうが夫々、鍵域1の男性らしい声の第1フォルマント周波数F1[1]と第2フォルマント周波数F1[2]よりも、高い周波数であることが知られている(下記文献を参照)。
[粕谷 他,“年齢,性別による日本語5母音のピッチ周波数とホルマント周波数の変化,”,音響学会誌24,6(1968)]
なお、説明をわかりやすくするために、同じ有声音韻に対する図6(a)の声道スペクトル特性601と図6(b)の声道スペクトル特性602は、フォルマント周波数の違いを少し誇張して描いてある。
図6(c)の603は、図6(a)、(b)と同じ有声音韻につき、図1に例示した鍵域3の例えば男女中間の声の声道スペクトル特性を模式的に示したグラフである。鍵域3の声道スペクトル特性603における第1フォルマント周波数F3[1]は、鍵域1の男性らしい声の第1フォルマント周波数F1[1]と鍵域2の女性らしい声の第1フォルマント周波数F2[1]の中間の周波数を有している。同様に、鍵域3の声道スペクトル特性603における第2フォルマント周波数F3[2]は、鍵域1の男性らしい声の第2フォルマント周波数F1[2]と鍵域2の女性らしい声の第2フォルマント周波数F2[2]の中間の周波数を有している。
つまり、鍵域3の男女中間の歌声の声道スペクトル特性603は、鍵域1の男性らしい声の声道スペクトル特性601と鍵域2の女性らしい声の声道スペクトル特性602とから、周波数域での補間処理によって算出できることがわかる。
具体的には、上述のLSPパラメータは、周波数の次元を有することにより、周波数域での補間特性に優れていることが知られている。そこで、第2の実施形態では、楽曲が全体として例えば図1の中間の鍵域3に属している場合には、前述したように、音響モデル部501が、その鍵域3の両側の鍵域1と2に予め割り当てられている、男性らしい歌声の音響モデルから推定したスペクトルに対応する第1音域スペクトル情報510と、女性らしい歌声の音響モデルから推定したスペクトルに対応する第2音域スペクトル情報511の、2つのスペクトル情報を出力する。
そして、フォルマント補間処理部506は、上記第1音域スペクトル情報510のLSPパラメータL1[i]と、上記第2音域スペクトル情報511のLSPパラメータL2[i]との間で、下記(1)式で示される補間処理の演算を実行することにより、補間スペクトル情報である鍵域3のLSPパラメータL3[i]を算出する。ただし、NはLSP分析次数である。
L3[i]=(L1[i]+L2[i])/2 (1≦i≦N) ・・・(1)
図5のフォルマント補間処理部506は、上記(1)式の演算により算出したLSPパラメータL3[i](1≦i≦N)を、図5の目標スペクトル情報513として発声モデル部503内の合成フィルタ部505に与える。
以上の処理の結果、合成フィルタ部505からは、楽曲全体の鍵域によく合った最適な声道スペクトル特性を有する目標スペクトル情報513によって合成されたフィルタ出力データ515を、歌声音声出力データ417として出力させることが可能となる。
図3から図5の構成を有する第2の実施形態の詳細動作について、以下に説明する。図7は、第2の実施形態における歌声合成のメイン処理の例を示すフローチャートである。この処理は、図4のCPU401が、ROM402に記憶された歌声合成プログラムをRAM403にロードして実行する処理である。
まず、CPU401は、歌詞の現在位置を示すRAM403上の変数である歌詞インデックス変数nに初期値「1」を代入すると共に、RAM403上の変数である現在の音域を示す第1音域変数に、例えば図1の鍵域1を示す値を初期設定する(ステップS701)。なお、歌詞を途中から始める(例えば、前回の記憶位置から始める)場合には、歌詞インデックス変数nには「0」以外の値が代入されてもよい。
歌詞インデックス変数nは、歌詞全体を文字列とみなしたときの、先頭から何音節目(又は何文字目)の音節(又は文字)に対応するかを示す変数であってよい。例えば、歌詞インデックス変数nは、図5で示した歌声データ415の、第n再生位置の歌声データを示すことができる。なお、本開示において、1つの歌詞の位置(歌詞インデックス変数nの値)に対応する歌詞は、1音節を構成する1又は複数の文字に該当してもよい。歌声データに含まれる音節は、母音のみ、子音のみ、子音+母音など、種々の音節を含んでもよい。
次に、CPU401は、歌声合成の開始前に、音声合成LSI405に、これから再生する歌声合成の楽曲全体が平均して、図1に例示した鍵域1、2、3のうちどの鍵域に属するかを示す鍵域データをRAM403から読み出して、その鍵域データを音域を指定する歌声データ415に含ませて、その歌声データ415を図4の音声合成LSI405に送信する(ステップS702)。
その後、CPU401は、ステップS707で歌詞インデックス変数nの値を+1ずつインクリメントしながら、ステップS710で歌声データの再生が終了した(新たな歌詞インデックス変数nの値に対応する歌声データが無くなった)と判定するまで、ステップS703からS710の一連の処理を繰り返し実行することにより、歌声合成処理を進行させる。
ステップS703からS710の一連の繰返し処理において、CPU401はまず、図4のキースキャナ406が図3の鍵盤301をスキャンした結果、新たな押鍵が有るか否かを判定する(ステップS703)。
ステップS703の判定がYESの場合、CPU401は、RAM403上の歌詞インデックス変数nの値が示す第n歌詞の歌声データを、RAM403から読み出す(ステップS704)。
次に、CPU401は、ステップS704で読み出した歌声データを含む歌声の進行を指示する歌声データ415を、音声合成LSI405に送信する(ステップS705)。
更に、CPU401は、キースキャナ406が検出した演奏者による鍵盤301の何れかの鍵の押鍵に応じた音高を指定すると共に、演奏者が図3のスイッチパネル303で予め指定した楽器音を指定する発音指示を、発音制御データ416として音源LSI404に送信する(ステップS706)。
この結果、音源LSI404は、上記発音制御データ416に対応する楽音出力データ418を生成する。この楽音出力データ418は、D/Aコンバータ411によりアナログ楽音出力信号に変換される。このアナログ楽音出力信号は、ミキサ413で、音声合成LSI405からD/Aコンバータ412を介して出力されたアナログ歌声音声出力信号と混合され、その混合信号がアンプ414で増幅された後に、特には図示しないスピーカ又は出力端子から出力される。
なお、ステップS706の処理は、無くてもよい。この場合には、演奏者による押鍵操作に応じた楽音の発声は無く、押鍵操作は歌声合成の進行のためだけに使用される。
そして、CPU401は、歌詞インデックス変数nの値を+1インクリメントする(ステップS707)。
上記ステップS707の処理の後、又はステップS703の判定がNOとなった後、CPU401は、図4のキースキャナ406が図3の鍵盤301をスキャンした結果、新たな離鍵が有るか否かを判定する(ステップS708)。
ステップS708の判定がYESならば、CPU401は、キースキャナ406が検出した離鍵の音高に対応する歌声の消音を音声合成LSI405に指示すると共に、上記音高に対応する楽音の消音を音源LSI404に指示する(ステップS709)。この結果、音声合成LSI405及び音源LSI404において、対応する消音動作が実行される。
ステップS709の処理の後、又はステップS708の判定がNOの場合に、CPU401は、ステップS707でインクリメントされた歌詞インデックス変数nの値に対応する歌声データがRAM403上に無く、歌声データの再生が終了したか否かを判定する(ステップS710)。
ステップS710の判定がNOならば、CPU401は、ステップS703の処理に戻って、歌声合成の処理を進行させる。
ステップS710の判定がYESになったら、CPU401は、図7のフローチャートで例示される歌声合成の処理を終了する。
図8は、第2の実施形態において図4の音声合成LSI405の特には図示しないプロセッサが実行する音声合成処理の例を示すフローチャートである。この処理は、上記プロセッサが、音声合成LSI405内の特には図示しないメモリに記憶された音声合成処理プログラムを実行する処理である。或いは、この処理は、DSP(デジタル信号プロセッサ)又はFPGA(フィールドプログラマブルゲートアレイ)等によるハードウェアとソフトウェアによるハイブリッド処理であってもよい。
音声合成LSI405の上記プロセッサは、例えば上記音声合成処理プログラムを実行することにより、図5に示される各部の機能を実現する。以下の各処理の説明は、実際には上記プロセッサが実行するが、説明をわかりやすくするため図5の各部が実行する処理として説明する。
まず、図5のテキスト解析部502は、図4のCPU401から、歌声データ415を受信したか否かを判定する処理を繰り返す待機状態にある(ステップS801の判定処理がNOの繰返し)。
CPU401から歌声データ415が受信されてステップS801の判定がYESになると、テキスト解析部502は、受信された歌声データ415によって音域指定(図7のステップS702を参照)がなされているか否かを判定する(ステップS802)。
ステップS802の判定がYESの場合、テキスト解析部502からフォルマント補間処理部506に音域情報509が引き渡される。これ以降、フォルマント補間処理部506の動作となる。
フォルマント補間処理部506は、歌声最適化処理を実行する(以上、ステップS803)。この処理の詳細については、図9のフローチャートを用いて後述する。ステップS803の歌声最適化処理の後、テキスト解析部502によるステップS801の歌声データ415の待機処理に戻る。
再び、歌声データ415が受信されてステップS801の判定がYESとなった後、テキスト解析部502においてステップS802の判定がNOとなった場合には、受信された歌声データ415は歌詞の進行を指示している(図7のステップS705を参照)。テキスト解析部502は、歌声データ415に含まれる歌詞と音高を解析する。この結果、テキスト解析部502は、歌声データ415内の歌詞に対応する音素、品詞、単語等を表現する言語特徴量系列507と、歌声データ415内の音高に対応する音高情報508とを夫々生成して、音響モデル部501に与える。
一方、歌声合成の開始前に実行されたステップS803の歌声最適化処理によって、フォルマント補間処理部506から音響モデル部501には、第1音域スペクトル情報510の取得要求又は第1音域スペクトル情報510と第2音域スペクトル情報511の取得要求が出されている。
上述の各情報に基づいて、フォルマント補間処理部506は、音響モデル部501から、後述するステップS803の歌声最適化処理内の図9のステップS903又はS908で音響モデル部501に対して要求した第1音域スペクトル情報510の各LSPパラメータを取得して、RAM403に記憶する(ステップS804)。
次に、フォルマント補間処理部506は、後述するステップS803の歌声最適化処理で、RAM403に記憶されている補間フラグに値「1」がセットされているか否か、即ち補間処理を実行する状態になっているか否かを判定する(ステップS805)。
ステップS805の判定がNO(補間処理を実行しない)であれば、フォルマント補間処理部506は、ステップS804で音響モデル部501から取得してRAM403に記憶している第1音域スペクトル情報510の各LSPパラメータをそのまま、RAM403上の目標スペクトル情報513の配列変数にセットする(ステップS806)。
ステップS805の判定がYES(補間処理を実行する)であれば、フォルマント補間処理部506は、音響モデル部501から、後述するステップS803の歌声最適化処理内の図9のステップS908で音響モデル部501に対して要求した第2音域スペクトル情報511の各LSPパラメータを取得して、RAM403に記憶する(ステップS807)。
その後、フォルマント補間処理部506は、フォルマント補間処理を実行する(ステップS808)。具体的には、フォルマント補間処理部506は、ステップS804によりRAM403に記憶した第1音域スペクトル情報510のLSPパラメータL1[i]と、ステップS807によりRAM403に記憶した第2音域スペクトル情報511のLSPパラメータL2[i]との間で、前述した(1)式の補間処理演算を実行することによって、補間スペクトル情報のLSPパラメータL3[i]を算出し、それらをRAM403に記憶する。
ステップS808の後、フォルマント補間処理部506は、ステップS808でRAM403に記憶している補間スペクトル情報の各LSPパラメータL3[i]を、RAM403上の目標スペクトル情報513の配列変数にセットする(ステップS809)。
ステップS806又はS809の後、フォルマント補間処理部506は、音響モデル部501から出力されている目標音源情報512を、発声モデル部503の音源生成部504に与える。これと共に、フォルマント補間処理部506は、ステップS806又はS809でRAM403に記憶した目標スペクトル情報513の各LSPパラメータを、発声モデル部503内の合成フィルタ部505のLSPデジタルフィルタにセットする(以上、ステップS810)。その後、CPU401は、テキスト解析部502が実行するステップS801の歌声データ415の待機処理に戻る。
以上の処理の結果、発声モデル部503は、上記目標スペクトル情報513がセットされた合成フィルタ部505のLSPデジタルフィルタを、上記目標音源情報512がセットされた音源生成部504から出力される音源入力データ514によって励振させることにより、フィルタ出力データ515を歌声音声出力データ417として出力する。
図9は、図8のステップS803の歌声最適化処理の詳細例を示すフローチャートである。この処理は、図5のフォルマント補間処理部506によって実行される。
まず、フォルマント補間処理部506は、テキスト解析部502から引き渡された音域情報509に設定されている音域(鍵域)の情報を取得する(ステップS901)。
次に、フォルマント補間処理部506は、ステップS901で取得した歌声データ415に設定されている楽曲全体の音域(ステップS702の説明を参照)が、RAM403に記憶されている第1音域変数に設定されている現在の音域である第1音域の範囲内であるか否かを判定する(ステップS902)。
なお、第1音域変数には、例えば図1の鍵域1が初期設定されている(図7のステップS701参照)。
ステップS902の判定がYESならば、フォルマント補間処理部506は、音響モデル部501に第1音域変数に設定されている第1音域に対応するスペクトル情報を要求する(ステップS903)。
その後、フォルマント補間処理部506は、RAM403上の補間フラグ変数に、補間処理を実行しないことを示す値「0」をセットする(ステップS904)。この補間フラグ変数は、前述した音声合成処理を例示する図8のステップS805で参照されたときに、ステップS805の判定がNOとなって、補間処理は実行されない。その後、フォルマント補間処理部506は、図9のフローチャートで例示される図8のステップS803の歌声最適化処理を終了する。
ステップS901で取得した歌声データ415に設定されている楽曲全体の音域が、第1音域の範囲内ではなく、ステップS902の判定がNOならば、フォルマント補間処理部506は、上記楽曲全体の音域が含まれる第1音域以外の新音域(例えば図1の鍵域2)があるか否かを判定する(ステップS905)。
ステップS905の判定がYESならば、フォルマント補間処理部506は、RAM403上の現在の音域を示す第1音域変数の値を、新音域を示す値に置き換える(ステップS906)。
その上で、フォルマント補間処理部506は、音響モデル部501に第1音域変数に設定されている第1音域に対応するスペクトル情報を要求し(ステップS903)、RAM403上の補間フラグ変数に値「0」をセットする(ステップS904)。その後、フォルマント補間処理部506は、図9のフローチャートで例示される図8のステップS803の歌声最適化処理を終了する。
ステップS901で取得した歌声データ415に設定されている楽曲全体の音域が、第1音域の範囲内にはなく(ステップS902の判定がNO)、第1音域以外の新音域もない(ステップS905の判定もNO)の場合には、フォルマント補間処理部506は、上記楽曲全体の音域が、第1音域変数が示す現在の音域と、他の第2音域との間にあるか否かを判定する(ステップS907)。
ステップS907の判定がYESの場合には、フォルマント補間処理部506は、音響モデル部501に、第1音域変数に設定されている第1音域に対応するスペクトル情報とステップS907で判定した第2音域に対応するスペクトル情報の2つを要求する(ステップS908)。
その後、フォルマント補間処理部506は、RAM403上の補間フラグ変数に、補間処理を実行することを示す値「1」をセットする(ステップS909)。この補間フラグ変数は、前述した音声合成処理を例示する図8のステップS805で参照されたときに、ステップS805の判定がYESとなって、ステップS808で補間処理が実行される。その後、フォルマント補間処理部506は、図9のフローチャートで例示される図8のステップS803の歌声最適化処理を終了する。
ステップS907の判定がNOの場合には、フォルマント補間処理部506は、音域を判断できない。このときは、フォルマント補間処理部506は、現在の音域を維持して、音響モデル部501に第1音域変数に設定されている第1音域に対応するスペクトル情報を要求し(ステップS903)、RAM403上の補間フラグ変数に値「0」をセットする(ステップS904)。その後、フォルマント補間処理部506は、図9のフローチャートで例示される図8のステップS803の歌声最適化処理を終了する。
上述の第2の実施形態では、歌声合成の開始前に、音域を指定する歌声データ415を図4の音声合成LSI405に送信し、音声合成LSI405では、歌声合成の開始前に、フォルマント補間処理部506が、テキスト解析部502を介して受信した上記音域を指定する歌声データ415に基づいて、歌声最適化処理を実行することにより、音響モデル部501に要求する音域を制御した。これに対して、音声合成LSI405のフォルマント補間処理部506は、発声される歌声毎に、歌声データ415に含まれる音高に基づいて、その歌声の音域を制御するようにしてもよい。この処理により、例えば歌声合成される楽曲の音域が例えば図1の鍵域1、2、3の広い範囲に跨がるような場合でも、発声時点の歌声データ415に基づいて、適切な音響モデルを選択して発声モデル部503で発声させることが可能となる。
また、上述の第2の実施形態において、フォルマント補間処理部506が実行する図9のフローチャートで例示される歌声最適化処理では、音域情報509として与えられる音域がどの音域に属するかを判別するための判別処理(図9のステップS902、S905、又はS907等)が必要であった。これに対して、図4のROM402等に予め、音域(例えば図1の鍵域1、2、3)の夫々毎に、鍵域1単一(音域が鍵域1である場合)、鍵域2単一(音域が鍵域2である場合)でよいか、或いは、鍵域1と2の間の補間処理が必要か(音域が鍵域3である場合)等が設定されたテーブルが用意されるようにしてもよい。そして、フォルマント補間処理部506は、そのテーブルを参照することにより、歌声最適化処理を実行するようにしてもよい。このような実施形態により、鍵域の設定や補間設定が複雑になる場合であっても、補間有無等設定テーブルを参照することにより、音域の選択と補間処理の有無の判別を常に適切に行うことが可能となる。
更に、上述の第2の実施形態では、発声モデル部503において、合成フィルタ部505を励振させる音源入力データ514は、音響モデル部501からの目標音源情報512に基づいて図5の音源生成部504が生成していた。これに対して、音源入力データ514が、音源生成部504によって生成されるものではなく、図4の音源LSI404が特定の発音チャネルを用いて生成する発声音源用の楽音出力データ418の一部であってもよい。このような構成により、歌声音声出力データ417として、音源LSI404が生成する特定の楽音の特性をおもしろく残した歌声音声を生成することが可能となる。
以上説明した第2の実施形態では、音響モデル部501に設定される音響モデルは、学習用歌詞情報、学習用音高情報、及び学習用音域情報を含む学習用楽譜データと、歌い手の学習用歌声データと、を用いた機械学習処理により学習させることにより得られる。しかし、音響モデルとしては、機械学習によるもののほかに、一般的な音素データベースを用いたものなどを採用することができる。
以上説明した第2の実施形態は、本発明による情報処理装置である図4及び図5に示した音声合成LSI405及びその一機能である音声合成部500が電子鍵盤楽器300の制御システム400に内蔵されている実施形態であった。一方、音声合成LSI及びその一機能である音声合成部(以下これらを総称して「音声合成部」と呼ぶ)と電子楽器は、夫々個別の装置であってもよい。図10及び図11は夫々、音声合成部と電子鍵盤楽器が個別に動作する第3の実施形態における、音声合成部と電子鍵盤楽器の接続形態、及び音声合成部のハードウェア構成例を示す図である。
図10に示されるように、第3の実施形態では、第2の実施形態における図4で示した音声合成LSI405及びその一機能である図5で示した音声合成部500が、例えばタブレット端末やスマートフォン(以下「タブレット端末等」と記載)1001に専用ハードウェア又はソフトウェア(アプリ)として実装され、電子楽器は例えば音声合成機能を持たない電子鍵盤楽器1002として構成することができる。
図11は、図10に示される接続形態を有する第3の実施形態におけるタブレット端末等1001のハードウェア構成例を示す図である。図11において、CPU1101、ROM1102、及びRAM1103、音声合成LSI1106、D/Aコンバータ1107、及びアンプ1108は、図4のCPU401、ROM402、RAM403、音声合成LSI405、D/Aコンバータ412、及びアンプ414と同様の機能を有する。アンプ1108の出力は、タブレット端末等1001に内蔵の特には図示しないスピーカやイヤホン端子に接続される。図3のスイッチパネル302、303の一部と同等の機能は、タッチパネルディスプレイ1104によって提供される。
図10及び図11の構成例を有する第3の実施形態において、タブレット端末等1001と電子鍵盤楽器1002は、MIDI over Bluetooth Low Energy(以下「BLE-MIDI」と記載)と呼ばれる規格に基づいて無線通信する。BLE-MIDIは、無線規格Bluetooth Low Energy(登録商標)上で楽器間の通信の標準規格MIDI(Musical Instrument Digital Interface:楽器デジタルインタフェース)で通信が行えるようにした楽器間無線通信規格である。電子鍵盤楽器1002は、Bluetooth Low Energy規格でタブレット端末等1001のBLE-MIDI通信インタフェース1105(図11)に接続することができる。その状態で、電子鍵盤楽器1002で演奏指定された音高情報を含む押鍵情報又は離鍵情報が、BLE-MIDIを介して、タブレット端末等1001上で実行される歌声合成アプリにリアルタイムで通知される。
なお、BLE-MIDI通信インタフェース1105の代わりに、有線のMIDIケーブルで電子鍵盤楽器1002に接続するMIDI通信インタフェースが用いられてもよい。
第3の実施形態では、図10の電子鍵盤楽器1002は音声合成LSIを内蔵せず、タブレット端末等1001が音声合成LSI1106(図11)を内蔵している。そして、図11において、タブレット端末等1001のCPU1101は、例えば歌声合成アプリの処理として、第2の実施形態の図7に例示されるフローチャートと同様の図12のフローチャートで例示されるメイン処理を実行することにより、図7のフローチャートで説明したのと同様の歌声合成の制御処理を実行している。図12に例示されるフローチャートにおいて、図7に例示されるフローチャートと同じステップ番号が付されたステップは、図7の場合と同じ処理を実行する。図12に例示されるフローチャートでは、図7に例示されるフローチャートから、図4の音源LSI404に対するステップS706及びステップS709の処理の一部が省かれている。
そして、CPU1101は、BLE-MIDI通信インタフェース1105を介して電子鍵盤楽器1002から押鍵情報及び離鍵情報を受信したか否かを監視している。
CPU1101は、電子鍵盤楽器1002から押鍵情報を受信すると、図7のステップS703及びS704と同様の処理を実行する。即ち、ステップS1201の判定がYESの場合、CPU1101は、RAM1103上の歌詞インデックス変数nの値が示す第n歌詞の歌声データを、RAM403から読み出す(図12のステップS704)。
そして、CPU1101は、図12のステップS704で読み出した歌声データを含む歌声の進行を指示する歌声データ415(図5参照)を、タブレット端末等1001が内蔵する図11の音声合成LSI1106に送信する(図12のステップS705)。
一方、CPU1101は、電子鍵盤楽器1002から離鍵情報を受信すると、図7のステップS709の一部の処理と同様の処理を実行する。即ち、図12において、ステップS1202の判定がYESの場合、CPU1101は、離鍵情報に含まれる離鍵の音高に対応する歌声の消音を、タブレット端末等1001が内蔵する図11の音声合成LSI1106に指示する(図12のステップS1203)。
上述の図12のステップS705及びS1203の制御処理の繰返しにより、タブレット端末等1001が内蔵する図11の音声合成LSI1106は、第2の実施形態で前述した図5の音声合成部500と同様の図8、図9に例示されるフローチャートの処理を実行する。この結果、例えば音声合成LSI1106において、第2の実施形態における歌声音声出力データ417と同等の歌声音声出力データが生成される。この歌声音声出力データは、タブレット端末等1001の内蔵スピーカから出力され、又は、タブレット端末等1001から電子鍵盤楽器1002に送信されて電子鍵盤楽器1002の内蔵スピーカから出力されるので、電子鍵盤楽器1002での演奏操作に同期した音声の発声を行うことができる。
次に、第4の実施形態について説明する。図13は、音声合成部の一部と電子鍵盤楽器が個別に動作する第4の実施形態の接続形態を示す図、図14は第4の実施形態における音声合成部に対応するタブレット端末等1301のハードウェア構成例を示す図、図15は第4の実施形態における音声合成LSI及び音声合成部の一部の構成例を示すブロック図である。
前述した図5のブロック構成を有する第2の実施形態では、音声合成部500は、図4の制御システム400を含む電子鍵盤楽器が内蔵する音声合成LSI405の機能として実装された。一方、前述した第3の実施形態では、図5の音声合成部500は、図10のタブレット端末等1001が内蔵する図11の音声合成LSI1106の機能として実装された。第3の実施形態においてタブレット端末等1001が内蔵する図11の音声合成LSI1106は、第2の実施形態において図4の制御システム400を含む電子鍵盤楽器が内蔵する音声合成LSI405と同等の機能を有する。
第4の実施形態では、電子鍵盤楽器1302とタブレット端末等1301とが例えばUSBケーブル1303により接続される。この場合、電子鍵盤楽器1302の制御システムは、図4に例示される第2の実施形態における電子鍵盤楽器300の制御システム400と同等のブロック構成を有し、音声合成LSI405を内蔵する。一方、第4の実施形態において、タブレット端末等1301は、第3の実施形態の場合とは異なり、音声合成LSIは内蔵せず、一般的な端末コンピュータでよい。図14は、第4の実施形態における図13のタブレット端末等1301のハードウェア構成例を示す図である。図14において、CPU1401、ROM1402、RAM1403、及びタッチパネルディスプレイ1404は、第3の実施形態に係る図11のCPU1101、ROM1102、RAM1103、及びタッチパネルディスプレイ1104と同様の機能を有する。USB(Universal Serial Bus)通信インタフェース1405は、図13に示されるように、タブレット端末等1301と電子鍵盤楽器1302とを接続するUSBケーブル1303を使った電子鍵盤楽器1302との間の信号の送受信を駆動する。特には図示しないが、電子鍵盤楽器1302の側にも同様のUSB通信インタフェースが実装されている。
なお、データ容量が許せば、有線のUSB通信インタフェースの代わりに、Bluetooth(米国Bluetooth SIG,Inc.の登録商標)やWi-Fi(米国Wi-Fi Allianceの登録商標)などの無線通信インタフェースが用いられてもよい。
第4の実施形態に係る図15において、図5のブロック図の各ブロックの参照番号と同じ参照番号を有するブロックは、図5の場合と同じ機能を有する。第4の実施形態に係る図15の発声モデル部503(音声合成フィルタ部)は、音声合成部1501から分離されて、第2の実施形態の場合と同様の構成を有する図4の制御システム400内の音声合成LSI405に内蔵されている。
一方、第4の実施形態に係る図15の音声合成部1501における音響モデル部501、テキスト解析部502、及びフォルマント補間処理部506の各機能部は、前述した第2の実施形態に係る図5の音声合成部500におけるテキスト解析部502、及びフォルマント補間処理部506の各機能部と同様である。
具体的には、これらの処理は、タブレット端末等1301の図14のCPU1401がROM1402からRAM1403に読み出した音声合成プログラムを実行する処理である。CPU1401は、この音声合成プログラムを実行することにより、第3の実施形態において図12のフローチャートで例示したのと同様のメイン処理を実行する。また、第2の実施形態では音声合成LSI405内のプロセッサがそれぞれ実行していた、図8のフローチャートで例示される音声合成処理と、図8のステップS803の詳細である図9のフローチャートで例示される歌声最適化処理とを、第4の実施形態ではCPU1401が実行する。
ただし、CPU1401は、図12のステップS705においては、図12のステップS704で読み出した歌声データを含む歌声の進行を指示する歌声データ415(図5参照)を、音声合成LSIに送信するのではなく、図8のフローチャートで例示される音声合成処理に引き渡す。
そして、図15に示されるように、CPU1401は、図8のフローチャートで例示される音声合成処理のステップS810において、図8のステップS806又はS809で生成された目標スペクトル情報513を、音響モデル部501より出力される目標音源情報512と共に、図14のUSB通信インタフェース1405から図13のUSBケーブル1303を介して、電子鍵盤楽器1302内の音声合成LSI405(図4参照)で動作する発声モデル部503に送信する。
この結果、電子鍵盤楽器1302内の音声合成LSI405(図4)において、歌声音声出力データ417が生成される。この歌声音声出力データ417は、第2の実施形態と同様の図4において、D/Aコンバータ412によりアナログ歌声音声出力信号に変換される。このアナログ歌声音声出力信号は、ミキサ413でアナログ楽音出力信号と混合され、その混合信号がアンプ414で増幅された後に、特には図示しないスピーカ又は出力端子から出力される。
以上のようにして、第4の実施形態では、電子鍵盤楽器1302が有する音声合成LSI405の機能と、タブレット端末等1301が有する歌声合成の機能とを組み合わせて、電子鍵盤楽器1302での演奏操作に同期した音声の発声を行うことが可能となる。
なお、学習済みモデル部を含む音響モデル部501はタブレット端末等1301やサーバ装置等の情報処理装置側に内蔵され、フォルマント補間処理部506等の第3音声データを生成する生成部は電子鍵盤楽器1302側に内蔵されていてもよい。この場合、情報処理装置から電子鍵盤楽器1302側には第1音域スペクトル情報510と、第2音域スペクトル情報511が送信される。
以上、開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができる。
その他、本発明は上述した実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上述した実施形態で実行される機能は可能な限り適宜組み合わせて実施しても良い。上述した実施形態には種々の段階が含まれており、開示される複数の構成要件による適宜の組み合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、効果が得られるのであれば、この構成要件が削除された構成が発明として抽出され得る。
以上の実施形態に関して、更に以下の付記を開示する。
(付記1)
指定された音高を検出し、
第1音声モデルが出力する第1データ及び、前記第1音声モデルとは異なる第2音声モデルが出力する第2データに基づいて、前記指定された音高に応じた第3データを生成する、
情報処理装置。
(付記2)
前記第1音声モデルは、第1歌手の歌声を学習した学習済みモデルを含み、
前記第2音声モデルは、前記第1歌手とは異なる第2歌手の歌声を学習した学習済みモデルを含む、
付記1に記載の情報処理装置。
(付記3)
前記第3データを、前記第1データに応じたフォルマント周波数と前記第2データに応じたフォルマント周波数の間の補間演算に基づいて生成する、
付記1又は2に記載の情報処理装置。
(付記4)
前記第3データは、指定された曲の音域に対応する音声モデルで無い場合に、生成される、
付記1乃至3の何れかに記載の情報処理装置。
(付記5)
前記第1音声モデルは第1音域に対応し、
前記第2音声モデルは前記第1音域とは異なる第2音域に対応し、
前記第1音域と前記第2音域の間に重ならない音域を有し、
前記指定された音高は、前記重ならない音域に含まれる、
付記1乃至4の何れかに記載の情報処理装置。
(付記6)
付記1乃至5の何れかに記載の情報処理装置と、
音高を指定するための演奏操作子と、
を備える電子楽器。
(付記7)
音高を指定するための演奏操作子と、
前記指定された音高に応じた音高データを情報処理装置に出力し、
出力に応じて前記情報処理装置から、第1歌手の歌声を学習した第1音声モデル及び第2歌手の歌声を学習した第2音声モデルに応じたデータを取得し、
取得した前記データに基づいて、音声を合成する、
電子楽器。
(付記8)
前記データは、前記第1音声モデルが出力した第1データと、前記第2音声モデルが出力した第2データと、に基づいて前記情報処理装置が生成した第3データを含み、
前記第3データに基づいて、前記音声を合成する、
付記7に記載の電子楽器。
(付記9)
前記データは、前記第1音声モデルが出力する第1データと、前記第2音声モデルが出力する第2データと、を含み、
前記第1データ及び前記第2データに基づいて、第3データを生成し、
生成された前記第3データに基づいて、前記音声を合成する、
付記7に記載の電子楽器。
(付記10)
付記7乃至9の何れかに記載の電子楽器と、
前記電子楽器が送信した前記音高データの取得に応じて、前記第1音声モデル及び前記第2音声モデルに応じたデータを前記電子楽器に向けて送信する情報処理装置と、
を備える情報処理システム。
(付記11)
情報処理装置が、
第1音声モデルの第1データ及び、第2音声モデルの第2データに基づいて、指定された音高に応じた第3データを生成する、
方法。
(付記12)
情報処理装置に、
第1音声モデルの第1データ及び、第2音声モデルの第2データに基づいて、指定された音高に応じた第3データを生成する、
機能を実現させるプログラム。