(57)【特許請求の範囲】
【請求項１】
文章に応じた合成音声を出力する合成音声出力装置であって、
各文字と対応する複数の音声波形を記憶する音声波形記憶手段、
文章を記憶する文章記憶手段、
前記文章記憶手段に記憶されている文章に含まれる各文字と対応する複数の音声波形を前記音声波形記憶手段から読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成する合成音声生成手段、および
前記合成音声生成手段によって生成された合成音声を出力する音声出力手段を備え、
前記合成音声生成手段は、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバーラップさせ、
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、前記子音部波形のピークレベルを降下、および／または前記母音部波形のレベルを上昇させる加工を施して得られた、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さい加工済波形であることを特徴とする、合成音声出力装置。
【請求項２】
文章に応じた合成音声を出力する合成音声出力装置であって、
各文字と対応する複数の音声波形を記憶する音声波形記憶手段、
文章を記憶する文章記憶手段、
前記文章記憶手段に記憶されている文章に含まれる各文字と対応する複数の音声波形を前記音声波形記憶手段から読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成する合成音声生成手段、および
前記合成音声生成手段によって生成された合成音声を出力する音声出力手段を備え、
前記合成音声生成手段は、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバーラップさせ、
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
前記合成音声生成手段は、読み出した複数の前記原音声波形に対して、前記子音部波形のピークと前記母音部波形とのレベル差が当該原音声波形のそれより小さくなるように、当該子音部波形のピークレベルを降下、および／または当該母音部波形のレベルを上昇させる加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴とする、合成音声出力装置。
【請求項３】
文章に応じた合成音声を出力する合成音声出力装置であって、
各文字と対応する複数の音声波形を記憶する音声波形記憶手段、
文章を記憶する文章記憶手段、
前記文章記憶手段に記憶されている文章に含まれる各文字と対応する複数の音声波形を前記音声波形記憶手段から読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成する合成音声生成手段、および
前記合成音声生成手段によって生成された合成音声を出力する音声出力手段を備え、
前記合成音声生成手段は、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバーラップさせ、
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、当該子音部波形から前記時間軸のピークを含む一部波形を、当該母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施して得られた、時間長が前記原音声波形のそれより短い加工済音声波形であることを特徴とする、合成音声出力装置。
【請求項４】
文章に応じた合成音声を出力する合成音声出力装置であって、
各文字と対応する複数の音声波形を記憶する音声波形記憶手段、
文章を記憶する文章記憶手段、
前記文章記憶手段に記憶されている文章に含まれる各文字と対応する複数の音声波形を前記音声波形記憶手段から読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成する合成音声生成手段、および
前記合成音声生成手段によって生成された合成音声を出力する音声出力手段を備え、
前記合成音声生成手段は、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバーラップさせ、
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
前記合成音声生成手段は、読み出した複数の前記原音声波形に対して、時間長が当該原音声波形のそれより短くなるように、前記子音部波形から前記時間軸のピークを含む一部波形を、前記母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴とする、合成音声出力装置。
【請求項５】
文章に応じた合成音声を出力する合成音声出力装置であって、
各文字と対応する複数の音声波形を記憶する音声波形記憶手段、
文章を記憶する文章記憶手段、
前記文章記憶手段に記憶されている文章に含まれる各文字と対応する複数の音声波形を前記音声波形記憶手段から読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成する合成音声生成手段、および
前記合成音声生成手段によって生成された合成音声を出力する音声出力手段を備え、
前記合成音声生成手段は、前記文章を先頭の文字から順番に少なくとも２つのグループに振り分けて、グループ毎に、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバーラップさせ、
前記音声出力手段は、前記文章に含まれる先行文字対応の音声波形における後端を含む一部分と、前記文章に含まれる後続文字対応の音声波形における先端を含む一部分とが互いにオーバーラップするように、前記合成音声生成手段が生成した各グループの合成音声を同時に出力し、
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、前記子音部波形のピークレベルを降下、および／または前記母音部波形のレベルを上昇させる加工を施して得られた、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さい加工済波形であることを特徴とする、合成音声出力装置。
【請求項６】
文章に応じた合成音声を出力する合成音声出力装置であって、
各文字と対応する複数の音声波形を記憶する音声波形記憶手段、
文章を記憶する文章記憶手段、
前記文章記憶手段に記憶されている文章に含まれる各文字と対応する複数の音声波形を前記音声波形記憶手段から読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成する合成音声生成手段、および
前記合成音声生成手段によって生成された合成音声を出力する音声出力手段を備え、
前記合成音声生成手段は、前記文章を先頭の文字から順番に少なくとも２つのグループに振り分けて、グループ毎に、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバーラップさせ、
前記音声出力手段は、前記文章に含まれる先行文字対応の音声波形における後端を含む一部分と、前記文章に含まれる後続文字対応の音声波形における先端を含む一部分とが互いにオーバーラップするように、前記合成音声生成手段が生成した各グループの合成音声を同時に出力し、
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
前記合成音声生成手段は、読み出した複数の前記原音声波形に対して、前記子音部波形のピークと前記母音部波形とのレベル差が当該原音声波形のそれより小さくなるように、当該子音部波形のピークレベルを降下、および／または当該母音部波形のレベルを上昇させる加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴とする、合成音声出力装置。
【請求項７】
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、当該子音部波形から前記時間軸のピークを含む一部波形を、当該母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施して得られた、時間長が前記原音声波形のそれより短い加工済音声波形であることを特徴とする、請求項１に記載の合成音声出力装置。
【請求項８】
文章に応じた合成音声を出力する合成音声出力装置であって、
各文字と対応する複数の音声波形を記憶する音声波形記憶手段、
文章を記憶する文章記憶手段、
前記文章記憶手段に記憶されている文章に含まれる各文字と対応する複数の音声波形を前記音声波形記憶手段から読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成する合成音声生成手段、および
前記合成音声生成手段によって生成された合成音声を出力する音声出力手段を備え、
前記合成音声生成手段は、前記文章を先頭の文字から順番に少なくとも２つのグループに振り分けて、グループ毎に、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバーラップさせ、
前記音声出力手段は、前記文章に含まれる先行文字対応の音声波形における後端を含む一部分と、前記文章に含まれる後続文字対応の音声波形における先端を含む一部分とが互いにオーバーラップするように、前記合成音声生成手段が生成した各グループの合成音声を同時に出力し、
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、当該子音部波形から前記時間軸のピークを含む一部波形を、当該母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施して得られた、時間長が前記原音声波形のそれより短い加工済音声波形であることを特徴とする、合成音声出力装置。
【請求項９】
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
前記合成音声生成手段は、読み出した複数の前記原音声波形に対して、時間長が当該原音声波形のそれより短くなるように、前記子音部波形から前記時間軸のピークを含む一部波形を、前記母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴とする、請求項２に記載の合成音声出力装置。
【請求項１０】
文章に応じた合成音声を出力する合成音声出力装置であって、
各文字と対応する複数の音声波形を記憶する音声波形記憶手段、
文章を記憶する文章記憶手段、
前記文章記憶手段に記憶されている文章に含まれる各文字と対応する複数の音声波形を前記音声波形記憶手段から読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成する合成音声生成手段、および
前記合成音声生成手段によって生成された合成音声を出力する音声出力手段を備え、
前記合成音声生成手段は、前記文章を先頭の文字から順番に少なくとも２つのグループに振り分けて、グループ毎に、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバーラップさせ、
前記音声出力手段は、前記文章に含まれる先行文字対応の音声波形における後端を含む一部分と、前記文章に含まれる後続文字対応の音声波形における先端を含む一部分とが互いにオーバーラップするように、前記合成音声生成手段が生成した各グループの合成音声を同時に出力し、
前記音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
前記合成音声生成手段は、読み出した複数の前記原音声波形に対して、時間長が当該原音声波形のそれより短くなるように、前記子音部波形から前記時間軸のピークを含む一部波形を、前記母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴とする、合成音声出力装置。
【請求項１１】
前記合成音声生成手段は、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバーラップさせる際、オーバーラップさせようとする部分の時間長を変化させることを特徴とする、請求項１〜１０のいずれかに記載の合成音声出力装置。
【請求項１２】
前記文章記憶手段に記憶されている文章に含まれる各文字を順次表示する文字表示手段をさらに備え、
前記音声出力手段は、前記文字表示手段によって各文字が順次表示されるのに同期して、前記合成音声生成手段によって生成された当該各文字と対応する合成音声を順次出力することを特徴とする、請求項１〜１１のいずれかに記載の合成音声出力装置。
【請求項１３】
前記文章記憶手段に記憶されている文章には、その文章に応じた合成音声に感情を付与するための感情情報が添付されており、
前記合成音声生成手段は、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、前記感情情報に基づいて、各音声波形の音量および／または周波数を変化させることを特徴とする、請求項１〜１２のいずれかに記載の合成音声出力装置。
【請求項１４】
前記文章記憶手段に記憶されている文章には、文字と文字との間および／または末尾の文字の後に特定の記号が挿入されており、
前記合成音声生成手段は、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、前記特定の記号から所定の位置範囲にある文字と対応する各音声波形の音量および／または周波数を変化させることを特徴とする、請求項１〜１３のいずれかに記載の合成音声出力装置。
【請求項１５】
文章に応じた合成音声を出力する方法であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
前記音声波形記憶ステップで記憶した複数の音声波形のうち、前記文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成するステップ、および
前記合成音声生成ステップで生成した合成音声を出力するステップを備え、
前記合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバーラップさせ、
前記音声波形記憶ステップで記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、前記子音部波形のピークレベルを降下、および／または前記母音部波形のレベルを上昇させる加工を施して得られた、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さい加工済波形であることを特徴とする、合成音声出力方法。
【請求項１６】
文章に応じた合成音声を出力する方法であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
前記音声波形記憶ステップで記憶した複数の音声波形のうち、前記文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成するステップ、および
前記合成音声生成ステップで生成した合成音声を出力するステップを備え、
前記合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバーラップさせ、
前記音声波形記憶ステップで記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
前記合成音声生成ステップでは、読み出した複数の前記原音声波形に対して、前記子音部波形のピークと前記母音部波形とのレベル差が当該原音声波形のそれより小さくなるように、当該子音部波形のピークレベルを降下、および／または当該母音部波形のレベルを上昇させる加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴とする、合成音声出力方法。
【請求項１７】
文章に応じた合成音声を出力する方法であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
前記音声波形記憶ステップで記憶した複数の音声波形のうち、前記文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成するステップ、および
前記合成音声生成ステップで生成した合成音声を出力するステップを備え、
前記合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバーラップさせ、
前記音声波形記憶ステップで記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、当該子音部波形から前記時間軸のピークを含む一部波形を、当該母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施して得られた、時間長が前記原音声波形のそれより短い加工済音声波形であることを特徴とする、合成音声出力方法。
【請求項１８】
文章に応じた合成音声を出力する方法であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
前記音声波形記憶ステップで記憶した複数の音声波形のうち、前記文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成するステップ、および
前記合成音声生成ステップで生成した合成音声を出力するステップを備え、
前記合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバーラップさせ、
前記音声波形記憶ステップで記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
前記合成音声生成ステップでは、読み出した複数の前記原音声波形に対して、時間長が当該原音声波形のそれより短くなるように、前記子音部波形から前記時間軸のピークを含む一部波形を、前記母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴とする、合成音声出力方法。
【請求項１９】
文章に応じた合成音声を出力するための、子音文字と対応する原音声波形を加工する方法であって、
前記原音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなり、
前記原音声波形に対して、前記子音部波形のピークと前記母音部波形とのレベル差が当該原音声波形のそれより小さくなるように、当該子音部波形のピークレベルを降下、および／または当該母音部波形のレベルを上昇させ、
時間長が前記原音声波形のそれより短くなるように、前記子音部波形から前記時間軸のピークを含む一部波形を、前記母音部波形から一部波形をそれぞれ切り出して互いに接続することを特徴とする、音声波形加工方法。
【請求項２０】
文章に応じた合成音声を出力する方法をコンピュータ装置に実行させるためのプログラムを記録した記録媒体であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
前記音声波形記憶ステップで記憶した複数の音声波形のうち、前記文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成するステップ、
前記合成音声生成ステップで生成した合成音声を出力するステップを備え、
前記合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバーラップさせ、
前記音声波形記憶ステップで記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、前記子音部波形のピークレベルを降下、および／または前記母音部波形のレベルを上昇させる加工を施して得られた、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さい加工済波形であることを特徴とする合成音声出力方法を、前記コンピュータ装置に実行させるためのプログラムを記録した、記録媒体。
【請求項２１】
文章に応じた合成音声を出力する方法をコンピュータ装置に実行させるためのプログラムを記録した記録媒体であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
前記音声波形記憶ステップで記憶した複数の音声波形のうち、前記文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成するステップ、
前記合成音声生成ステップで生成した合成音声を出力するステップを備え、
前記合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバーラップさせ、
前記音声波形記憶ステップで記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
前記合成音声生成ステップでは、読み出した複数の前記原音声波形に対して、前記子音部波形のピークと前記母音部波形とのレベル差が当該原音声波形のそれより小さくなるように、当該子音部波形のピークレベルを降下、および／または当該母音部波形のレベルを上昇させる加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴とする合成音声出力方法を、前記コンピュータ装置に実行させるためのプログラムを記録した、記録媒体。
【請求項２２】
文章に応じた合成音声を出力する方法をコンピュータ装置に実行させるためのプログラムを記録した記録媒体であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
前記音声波形記憶ステップで記憶した複数の音声波形のうち、前記文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成するステップ、
前記合成音声生成ステップで生成した合成音声を出力するステップを備え、
前記合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバーラップさせ、
前記音声波形記憶ステップで記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、当該子音部波形から前記時間軸のピークを含む一部波形を、当該母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施して得られた、時間長が前記原音声波形のそれより短い加工済音声波形であることを特徴とする合成音声出力方法を、前記コンピュータ装置に実行させるためのプログラムを記録した、記録媒体。
【請求項２３】
文章に応じた合成音声を出力する方法をコンピュータ装置に実行させるためのプログラムを記録した記録媒体であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
前記音声波形記憶ステップで記憶した複数の音声波形のうち、前記文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、当該文章に応じた合成音声を生成するステップ、
前記合成音声生成ステップで生成した合成音声を出力するステップを備え、
前記合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバーラップさせ、
前記音声波形記憶ステップで記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付ける時間軸のピークを持つ山形の子音部波形と、当該子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
前記合成音声生成ステップでは、読み出した複数の前記原音声波形に対して、時間長が当該原音声波形のそれより短くなるように、前記子音部波形から前記時間軸のピークを含む一部波形を、前記母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴とする合成音声出力方法を、前記コンピュータ装置に実行させるためのプログラムを記録した、記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、合成音声出力装置に関し、より特定的には、文章に応じた合成音声を出力する合成音声出力装置に関する。
【０００２】
【従来の技術】
従来の合成音声出力装置は、５０音の各文字に対応する音声波形データを記憶しており、入力または予め記憶されている文章に基いて音声波形データを読み出して、文章に応じた合成音声を生成し、その合成音声を出力している。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来の合成音声出力装置では、合成音声を高速に出力しようとすると、周波数が上昇して、出力音声が甲高いコミカルな音質となり、さらに高速に出力しようとすると、出力音声を聴き取ることが困難になる問題があった。
【０００４】
例えば、多くのテレビゲーム機では、画面上に、キャラクタの画像と共に、キャラクタのせりふが、１フレームにつき１文字の速さ（すなわち１秒間に３０文字の速さ）で順次表示されていく。このようなテレビゲーム機において、スピーカから、キャラクタのせりふに応じた合成音声を、画面上の文字表示と同期して１フレームにつき１文字の速さで（つまり１秒間に３０文字の速さで）順次出力させることを考える。
従来の合成音声出力装置では、上記の程度の速さで合成音声を出力したとすると、プレイヤには、出力される合成音声がせりふでなく例えば銃器の速射音のように聞こえ、その合成音声を聴き取る（すなわち合成音声を聴いてせりふを理解する）ことができない。
【０００５】
そこで、キャラクタのせりふが１フレームにつき１文字の速さで画面上に順次表示されるようなテレビゲーム機に用いられ、キャラクタのせりふに応じた聴き取り可能な合成音声を、文字表示と同期して１フレームにつき１文字の速さで出力することができるような合成音声出力装置の登場が望まれる。
より一般的には、文章（例えばテキストデータ）に応じた、高速でしかも聴き取りやすい合成音声を出力することができる合成音声出力装置が実現されれば、ゲーム機の他、テキストリーダ等の様々な機器に応用することも期待される。
【０００６】
それゆえに、本発明の目的は、文章に応じた、高速でしかも聴き取りやすい合成音声を出力することができる合成音声出力装置を実現することである。
【０００７】
【課題を解決するための手段および発明の効果】
第１の発明は、文章に応じた合成音声を出力する合成音声出力装置であって、
各文字と対応する複数の音声波形を記憶する音声波形記憶手段、
文章を記憶する文章記憶手段、
文章記憶手段に記憶されている文章に含まれる各文字と対応する複数の音声波形を音声波形記憶手段から読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、文章に応じた合成音声を生成する合成音声生成手段、および
合成音声生成手段によって生成された合成音声を出力する音声出力手段を備え、
合成音声生成手段は、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバラップさせることを特徴としている。
【０００８】
上記第１の発明（または下記第１１，第１３の発明）では、文章に含まれる各文字と対応する音声波形を合成していく際、先行文字対応の音声波形の一部と、後続文字対応の音声波形の一部とを互いにオーバラップさせるので、文章に応じ、かつ周波数上昇を伴うことなく時間長の短縮された合成音声を生成することが可能となる。これにより、文章に応じた、高速でしかも聴き取りやすい合成音声を出力することができる合成音声出力装置が実現される。
【０００９】
このとき、合成音声の時間長がどの程度まで短縮されるかは、各音声波形に占める、オーバーラップされる部分の割合で決まる。例えば、先行文字対応の音声波形における後半分と、後続文字対応の音声波形における前半分とがオーバーラップされたとすると、オーバーラップされない場合の概ね２倍まで時間長が短縮される。
【００１０】
なお、先頭の文字と対応する音声波形から順番に合成していくには、例えば下記第２の発明（または下記第１２の発明）のように、文章を先頭文字から順番に少なくとも２つのグループに振り分けて、各グループ毎の合成音声を生成し、文章に含まれる先行文字対応の音声波形における後端を含む一部分と、文章に含まれる後続文字対応の音声波形における先端を含む一部分とが互いにオーバラップするように、生成した各グループ毎の合成音声を出力すればよい。
【００１１】
第２の発明は、第１の発明において、
合成音声生成手段は、
文章を先頭の文字から順番に少なくとも２つのグループに振り分け、
各グループ毎の合成音声を生成し、
文章に含まれる先行文字対応の音声波形における後端を含む一部分と、文章に含まれる後続文字対応の音声波形における先端を含む一部分とが互いにオーバラップするように、合成音声生成手段が生成した各グループ毎の合成音声を出力することを特徴としている。
【００１２】
ところで、第１，第２の発明のように、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバラップさせると、先行文字の母音部が後続文字の子音部に深く埋もれてしまい、聴き取りづらい合成音声となる。
そこで、音声波形として特に、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さい加工済音声波形を用いる。
【００１３】
子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さい加工済音声波形は、子音文字と対応する音声波形について、その子音を特徴付けるフォルマントを持つ山形の子音部波形と、子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、子音部波形のピークレベルを降下、および／または母音部波形のレベルを上昇させることにより得られる。
【００１４】
この場合、下記第３の発明のように、加工済音声波形を記憶しておき、音声合成を行う際、加工済音声波形を読み出して合成してもよく、または、下記第４の発明のように、原音声波形を記憶しておき、音声合成を行う際、原音声波形を読み出して加工を施した後、加工済音声波形を合成してもよい。
【００１５】
第３の発明は、第１または第２の発明において、音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付けるフォルマントを持つ山形の子音部波形と、子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、子音部波形のピークレベルを降下、および／または母音部波形のレベルを上昇させる加工を施して得られた、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さい加工済音声波形であることを特徴としている。
【００１６】
第４の発明は、第１または第２の発明において、
音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付けるフォルマントを持つ山形の子音部波形と、子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
合成音声生成手段は、読み出した複数の原音声波形に対して、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さくなるように、子音部波形のピークレベルを降下、および／または母音部波形のレベルを上昇させる加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴としている。
【００１７】
上記第３，第４の発明によれば、先行文字の母音部が後続文字の子音部に埋もれる度合いが浅くなるので、聴き取りやすい合成音声が得られる。
【００１８】
ところで、第１〜第４の発明では、音声波形を合成していく際、音声波形の一部をオーバラップさせることによって合成音声の時間長を短縮したが、時間長が原音声波形のそれより短い加工済音声波形を用いれば、時間長のさらなる短縮が可能となる。
【００１９】
時間長が原音声波形のそれより短い加工済音声波形は、子音文字と対応する音声波形について、その子音を特徴付けるフォルマントを持つ山形の子音部波形と、子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、子音部波形からフォルマントを含む一部波形を、母音部波形から一部波形をそれぞれ切り出して互いに接続することにより得られる。
この加工済音声波形は、原音声波形のフォルマントおよび母音の一部を含むので、どの子音文字と対応する音声波形かを判別可能である。従って、時間長がさらに短縮されても、合成音声が聴き取りづらくなることはない。
【００２０】
この場合、下記第５の発明のように、加工済音声波形を記憶しておき、音声合成を行う際、加工済音声波形を読み出して合成してもよく、または、下記第６の発明のように、原音声波形を記憶しておき、音声合成を行う際、原音声波形を読み出して加工を施した後、加工済音声波形を合成してもよい。
【００２１】
第５の発明は、第１〜第３の発明において、音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付けるフォルマントを持つ山形の子音部波形と、子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形に対して、子音部波形からフォルマントを含む一部波形を、母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施して得られた、時間長が原音声波形のそれより短い加工済音声波形であることを特徴としている。
【００２２】
第６の発明は、第１，第２または第４の発明において、音声波形記憶手段に記憶される音声波形のうち子音文字と対応する音声波形は、その子音を特徴付けるフォルマントを持つ山形の子音部波形と、子音部波形よりレベルの低い平坦な母音部波形とからなる原音声波形であり、
合成音声生成手段は、読み出した複数の原音声波形に対して、時間長が原音声波形のそれより短くなるように、子音部波形からフォルマントを含む一部波形を、母音部波形から一部波形をそれぞれ切り出して互いに接続する加工を施し、その後、先頭文字対応の加工済音声波形から順番に合成していくことを特徴としている。
【００２３】
上記第５，第６の発明によれば、合成音声の時間長のさらなる短縮が可能となり、しかも、このさらなる短縮によって合成音声が聴き取りづらくなることはない。
【００２４】
第７の発明は、第１〜第６の発明において、合成音声生成手段は、先行文字対応の音声波形における後端を含む一部分と、後続文字対応の音声波形における先端を含む一部分とを互いにオーバラップさせる際、オーバーラップさせようとする部分の時間長を変化させることを特徴としている。
【００２５】
上記第７の発明によれば、合成音声の時間長を短縮する程度が可変となり、その結果、合成音声の出力速度を、周波数変動を伴うことなく変化させることができるようになる。
【００２６】
なお、第１〜第６の発明に従属する第７の発明のうち、第５，第６の発明に従属する第７の発明では、時間長の可変範囲は、子音部から切り出される一部波形の時間長に対する、母音部から切出される一部波形のそれの比率によって決まる。時間長の可変範囲を拡げるには、子音部から切り出される一部波形の時間長に対する、母音部から切出される一部波形のそれの比率を大きくすればよい。
【００２７】
第８の発明は、第１〜第７の発明において、
文章記憶手段に記憶されている文章に含まれる各文字を順次表示する文字表示手段をさらに備え、
音声出力手段は、文字表示手段によって各文字が順次表示されるのに同期して、合成音声生成手段によって生成された各文字と対応する合成音声を順次出力することを特徴としている。
【００２８】
上記第８の発明によれば、文字表示と同期して、文章に応じた、高速でしかも聴き取りやすい合成音声を出力することができる合成音声出力装置が実現される。
この合成音声出力装置をテレビゲーム機に用いれば、キャラクタのせりふを１フレームにつき１文字の速さで画面上に順次表示させつつ、スピーカから、キャラクタのせりふに応じた聴き取り可能な合成音声を、文字表示と同期して１フレームにつき１文字の速さで（つまり１秒間に３０文字の速さで）出力させることも不可能でない。
【００２９】
第９の発明は、第１〜第８の発明において、
文章記憶手段に記憶されている文章には、その文章に応じた合成音声に感情を付与するための感情情報が添付されており、
合成音声生成手段は、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、感情情報に基づいて、各音声波形の音量および／または周波数を変化させることを特徴としている。
【００３０】
上記第９の発明でば、文章に添付された感情情報に基づいて、合成音声の音量や周波数を変化させるので、合成音声に感情を反映した抑揚が生じる。これにより、合成音声に感情を付与することが可能となる。
【００３１】
第１０の発明は、第１〜第９の発明において、
文章記憶手段に記憶されている文章には、文字と文字との間および／または末尾の文字の後に特定の記号が挿入されており、
合成音声生成手段は、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、特定の記号から所定の位置範囲にある文字と対応する各音声波形の音量および／または周波数を変化させることを特徴としている。
【００３２】
上記第１０の発明によれば、合成音声に記号に応じた抑揚を付けることができる。
なお、ここでいう特定の記号は、典型的には、疑問符「？」や、感嘆符「！」などであって、末尾の文字の後に疑問符「？」があれば、例えばその末尾文字の周波数を高くし、末尾の文字の後に感嘆符「！」があれば、例えばその末尾文字の音量を大きくする。
【００３３】
第１１の発明は、文章に応じた合成音声を出力する方法であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
音声波形記憶ステップで記憶した複数の音声波形のうち、文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、文章に応じた合成音声を生成するステップ、および
合成音声生成ステップで生成した合成音声を出力するステップを備え、
合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバラップさせることを特徴としている。
【００３４】
第１２の発明は、第１１の発明において、
合成音声生成ステップでは、文章を先頭の文字から順番に少なくとも２つのグループに振り分けて、各グループ毎の合成音声を生成し、
音声出力ステップでは、文章に含まれる先行文字対応の音声波形における後端を含む一部分と、文章に含まれる後続文字対応の音声波形における先端を含む一部分とが互いにオーバラップするように、合成音声生成ステップで生成した各グループ毎の合成音声を出力することを特徴としている。
【００３５】
第１３の発明は、文章に応じた合成音声を出力する方法をコンピュータ装置に実行させるためのプログラムを記録した記録媒体であって、
各文字と対応する複数の音声波形を記憶するステップ、
文章を記憶するステップ、
音声波形記憶ステップで記憶した複数の音声波形のうち、文章記憶ステップで記憶した文章に含まれる各文字と対応する複数の音声波形を読み出して、先頭の文字と対応する音声波形から順番に合成していくことにより、文章に応じた合成音声を生成するステップ、および
合成音声生成ステップで生成した合成音声を出力するステップを備え、
合成音声生成ステップでは、読み出した複数の音声波形を先頭文字対応の音声波形から順番に合成していく際、先行文字対応の音声波形における後部分と、後続文字対応の音声波形における前部分とを互いにオーバラップさせることを特徴とする合成音声出力方法を、コンピュータ装置に実行させるためのプログラムを記録している。
【００３６】
第１４の発明は、文章に応じた合成音声を出力するための、子音文字と対応する原音声波形を加工する方法であって、
原音声波形は、その子音を特徴付けるフォルマントを持つ山形の子音部波形と、子音部波形よりレベルの低い平坦な母音部波形とからなり、
原音声波形に対して、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さくなるように、子音部波形のピークレベルを降下、および／または母音部波形のレベルを上昇させ、
時間長が原音声波形のそれより短くなるように、子音部波形からフォルマントを含む一部波形を、母音部波形から一部波形をそれぞれ切り出して互いに接続することを特徴としている。
【００３７】
第１５の発明は、文章に応じた合成音声を出力するための、子音文字と対応する原音声波形を加工して得られた加工済音声波形を記録した記録媒体であって、原音声波形は、その子音を特徴付けるフォルマントを持つ山形の子音部波形と、子音部波形よりレベルの低い平坦な母音部波形とからなり、
原音声波形に対して、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さくなるように、子音部波形のピークレベルを降下、および／または母音部波形のレベルを上昇させ、
時間長が原音声波形のそれより短くなるように、子音部波形からフォルマントを含む一部波形を、母音部波形から一部波形をそれぞれ切り出して互いに接続して得られた加工済音声波形を記録している。
【００３８】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら説明する。
図１は、本発明の一実施形態に係るゲーム機の構成を示すブロック図である。
図１に示されるゲーム機は、ゲーム機本体１と、カートリッジ２と、コントローラ３と、ＴＶ（ディスプレイ）４と、スピーカ５とで構成されている。
【００３９】
ゲーム機本体１は、ＣＰＵ１１と、初期化フログラムＲＯＭ１２と、ワークメモリ１３と、グラフィックフレームバッファ１４と、ＧＰＵ１５と、サウンドフレームバッファ１６と、ＤＳＰ１７とを備えている。カートリッジ２は、プログラムＲＯＭ１８と、バックアップＲＡＭ１９とを備えている。
【００４０】
カートリッジ２にはＩ／Ｆ２０が、ゲーム機本体１には、カートリッジ２用およびコントローラ３用の２つのＩ／Ｆ２１，２２が設けられており、プログラムＲＯＭ１８およびバックアップＲＡＭ１９はＩ／Ｆ２０およびＩ／Ｆ２１を介して、コントローラ３はＩ／Ｆ２２を介して、それぞれゲーム機本体１のＣＰＵ１１やＧＰＵ１５、ＤＳＰ１７と接続される。
初期化プログラムＲＯＭ１２には、本ゲーム機を起動して初期化処理を行うためのプログラムが格納されている。プログラムＲＯＭ１８には、本ゲーム機が動作するためのプログラムやデータが格納されている。
【００４１】
図２は、図１のプログラムＲＯＭ１８に格納されているプログラムやデータの構成を示すメモリマップである。図２に示すように、プログラムＲＯＭ１８には、メインプログラム３１と、サウンド制御プログラム３２と、テキストデータ３３と、画像データ３４とが格納されている。
サウンド制御プログラム３２は、感情情報設定プログラム３５と、変動量設定テーブル３６と、合成音声生成プログラム３７と、音声波形データ３８と、合成音声再生プログラム３９とを含んでいる。
【００４２】
ＣＰＵ１１は、ゲーム機本体１の電源が入れられると、初期化プログラムＲＯＭ１２に格納されているプログラムに従って本ゲーム機を起動し、初期化処理を行う。以降、ＣＰＵ１１は、コントローラ３からの指示を受け、プログラムＲＯＭ１８に格納されているメインプログラム３１に従ってＧＰＵ１５およびＤＳＰ１７を制御する。ワークメモリ１３は、ＣＰＵ１１が動作するための作業領域として利用される。
【００４３】
ＧＰＵ１５は、ＣＰＵ１１の制御を受け、プログラムＲＯＭ１８から画像データ３４およびテキストデータ３３を読み出して、キャラクタ画像および字幕（キャラクタのせりふを示す文字）を含むグラフィックフレームを生成する。ＣＰＵ１１は、プログラムＲＯＭ１８に格納されているサウンド制御プログラム３２に従い、ＤＳＰ１７を制御して、キャラクタのせりふを示す合成音声を含むデータをサウンドフレームバッファ１６に生成する。ＤＳＰ１７は、サウンドフレームバッファ１６に記憶されたデータに基づいて合成音声をスピーカ５に出力する。これらグラフィックフレーム生成処理およびサウンドフレーム生成処理は、例えば毎秒３０フレームの速さで実行される。
【００４４】
上記のサウンドフレーム生成処理において、ＣＰＵ１１は、プログラムＲＯＭ１８に記憶されているテキストデータ３３に含まれる各文字と対応する複数の音声波形データ３８をプログラムＲＯＭ１８から読み出して、先頭の文字と対応する音声波形データから順番に合成していくことにより、そのテキストデータ３３に応じた合成音声を生成する。
【００４５】
読み出した複数の音声波形データを先頭文字対応の音声波形データから順番に合成していく際、ＣＰＵ１１は、先行文字対応の音声波形データにおける後端を含む一部分と、後続文字対応の音声波形データにおける先端を含む一部分とを互いにオーバラップさせることによって、文章（テキストデータ３３）に応じ、かつ周波数上昇を伴うことなく時間長の短縮された合成音声を生成する。
【００４６】
ＧＰＵ１５が生成したグラフィックフレームは、順次、グラフィックフレームバッファ１４に一時記憶され、ＴＶ４に表示される。ＣＰＵ１１が生成したサウンドフレームは、順次、サウンドフレームバッファ１６に一時記憶され、グラフィックフレームと同期してＤＳＰ１７によりスピーカ５に出力される。
【００４７】
こうして、ＴＶ４には、キャラクタの動画像と共に、キャラクタのせりふが、１フレームにつき１文字の速さで順次、字幕として表示されていく。一方、スピーカ５からは、ＴＶ４上の字幕表示と同期して１フレームにつき１文字の速さで順次、せりふに応じた合成音声が出力される。
【００４８】
図３は、図１のＣＰＵ１１が合成音声を生成するのに用いる音声波形データ（すなわち図２の音声波形データ３８）の特徴と、そのデータの加工方法とを説明するための図であり、図４は、図２の音声波形データ３８の加工方法を示すフローチャートである。
以下、図２の音声波形データ３８の特徴と、その加工方法とを、図３および図４を用いて説明する。
【００４９】
図３（ａ）は、音声『か』の原音声波形データであり、従来の合成音出力装置で用いられるものと同様のデータである。この原音声波形データは、子音”Ｋ”と、母音”Ａ”とからなる。子音”Ｋ”は、フォルマント（その子音を特徴付ける成分であり、子音波形のピーク近傍に現れる）を持つ山形の波形であり、母音”Ａ”は、子音”Ｋ”と比べて相対的にレベルの低い平坦な波形である。
【００５０】
図４において、図３（ａ）のような原音声波形データに対し、最初、母音”Ａ”のレベルを上昇および／または子音”Ｋ”のピークレベルを降下させる（ステップＳ４１）ことによって、子音”Ｋ”のピークと、母音”Ａ”とのレベル差を小さくする。こうして、図３（ｂ）に示されるような中間波形データが得られる。
【００５１】
次に、図３（ｂ）のような中間波形データにおいて、子音”Ｋ”および母音”Ａ”から各々一部の波形データ（図中の斜線部分）を切り出して互いに接続する（ステップＳ４２〜Ｓ４４）。これにより、（ｃ）に示されるような音声波形データが得られる。ただし、ステップＳ４２において、子音”Ｋ”から切り出される波形データは、フォルマント（子音波形のピーク近傍）を含むデータである。一方、ステップＳ４３では、母音”Ａ”から、子音”Ｋ”から切り出される波形データの、例えば２倍の時間長を持つ音声データが切り出される。
【００５２】
こうして加工して得られた図３（ｃ）の音声波形データ（以下、加工済音声波形データ）は、（ａ）の原音声波形データに対し、以下のような特徴を有する。
（１）子音のフォルマント部分と、母音の一部とを含む。
（２）子音のフォルマントと、母音とのレベル差が小さい。
（３）母音は、子音の２倍の時間長を持つ。
【００５３】
なお、母音文字については、その音声波形データから単に一部を切り出せばよい。このとき切り出される部分の時間長は、子音文字の子音部波形および母音部波形から各々切り出される部分の時間長に関連して、適切に決められる。
【００５４】
さて、図１のＣＰＵ１１は、連続する複数の文字（単語や文章）と対応する合成音声、例えば『かめ』を生成する場合、図３（ｄ）に示されるように、先行する音声『か』の母音”Ａ”と、後続する音声『め』の子音”Ｍ”とを互いにオーバーラップさせることによって、周波数上昇を伴うことなく時間長の短縮された合成音声『かめ』を生成する。
【００５５】
また、図１のＣＰＵ１１は、上記のようにして、先行する音声『か』の母音”Ａ”と、後続する音声『め』の子音”Ｍ”とを互いにオーバーラップさせる際、オーバーラップさせる部分の時間長を変化させることによって、周波数変動を伴うことなく合成音声『かめ』の時間長を短縮する程度を変えることもできる。
【００５６】
このようにして合成音声を生成する場合、合成する音声波形データとして、図３（ａ）の原音声波形データをそのまま用いてもよいが、上記（１）〜（３）のような特徴を有する図３（ａ）の加工済音声波形データを用いれば、以下のような効果が得られる。
上記（１）の特徴によれば、周波数上昇を伴うことなく合成音声の時間長をさらに短縮することが可能となる。しかも、どの子音文字と対応する音声波形データかを判別可能なので、時間長をさらに短縮しても合成音声が聴き取りづらくなることはない。
【００５７】
上記（２）の特徴によれば、連続する複数の文字と対応する合成音声、例えば『かめ』を生成する場合、図３（ｄ）に示されるように、先行する音声『か』の母音”Ａ”と、後続する音声『め』の子音”Ｍ”とを互いにオーバーラップさせても、”Ａ”が”Ｍ”に埋もれる度合いが浅くなるので、母音”Ａ”が子音”Ｍ”によってかき消されることがなくなり、聴き取りやすい合成音声が得られる。
【００５８】
上記（３）の特徴によれば、合成音声の時間長は、オーバーラップさせない場合の｛１／２｝〜１倍の範囲で可変となる。
なお、時間長の可変範囲は、子音”Ｋ”から切り出される波形データの時間長に対する、母音”Ａ”から切出される波形データのそれの比率によって決まるので、時間長の可変範囲を拡げるには、子音”Ｋ”から切り出される波形データの時間長に対する、母音”Ａ”から切出される波形データのそれの比率をより大きくすればよい。
【００５９】
図５は、図１のＣＰＵ１１が図２のサウンド制御プログラム３２を実行する場合のフローチャートである。図５において、ＣＰＵ１１は、最初、プログラムＲＯＭ１８からテキストデータ３３を読み出して（ステップＳ１）、感情情報があるか否かを判定する（ステップＳ２）。
ここで、感情情報は、キャラクタの感情の状態を示す情報であり、予めテキストデータ３３に添付されている。以下の説明では、キャラクタの状態として、「怒った状態」、「悲しい状態」、「楽しい状態」および「眠い状態」の４つがあるとする。
【００６０】
ステップＳ２の判定結果が肯定の場合、ＣＰＵ１１は、プログラムＲＯＭ１８内の感情情報設定プログラム３５に従い、合成音声に感情を付加するための設定処理を行う（ステップＳ３）。ステップＳ２の判定結果が否定の場合には、ステップＳ４の処理が実行される。
【００６１】
図６は、図５の感情設定処理（ステップＳ３）の詳細を示すフローチャートである。図６において、ＣＰＵ１１は、最初、図１のステップＳ１で読み出したテキストデータに添付の感情情報が、「怒った状態」を示すか否かを判定する（ステップＳ１１）。
【００６２】
ステップＳ１１の判定結果が否定の場合、ＣＰＵ１１は、感情情報が「眠い状態」または「悲しい状態」を示すか否かを判定する（ステップＳ１２）。ステップＳ１２の判定結果が否定の場合、ＣＰＵ１１は、感情情報が「楽しい状態」を示すか否かを判定する（ステップＳ１３）。ステップＳ３の判定結果が否定の場合、ＣＰＵ１１は、図５のフローに戻り、ステップＳ４の処理を行う。
【００６３】
ステップＳ１１の判定結果が肯定の場合、ＣＰＵ１１は、変動量設定テーブル３６内の「怒った状態」を参照して（ステップＳ１４）、ステップＳ１７，Ｓ１８を実行する。ステップＳ１２の判定結果が肯定の場合、ＣＰＵ１１は、変動量設定テーブル３６内の「眠い・悲しい状態」を参照して（ステップＳ１５）、ステップＳ１７，Ｓ１８を実行する。ステップＳ１３の判定結果が肯定の場合、ＣＰＵ１１は、変動量設定テーブル３６内の「楽しい状態」を参照して（ステップＳ１６）、ステップＳ１７，Ｓ１８を実行する。
【００６４】
図７は、図２の変動量設定テーブル３６の内容を示す図である。図７において、変動量設定テーブル３６には、キャラクタの状態（「怒った状態」、「眠い・悲しい状態」および「楽しい状態」）毎に、周波数ｆおよび音量ｖに関する１フレーム当たりの変動量と、変動周期ｔとが記載されている。
一般に、周波数および音量を変動させることにより音声に抑揚が生じるので、キャラクタの状態に応じて、例えば図６に示すようにｆ，ｖおよびｔを決めれば、合成音声に感情を付与することができる（詳細は後述する）。
【００６５】
再び図６において、ステップＳ１７では、ＣＰＵ１１は、ステップＳ１４〜Ｓ１６の参照内容に従い、１フレーム当たりの周波数ｆおよび音量ｖの変動量を、ステップＳ１で読み出したテキストデータに対して設定する。ステップＳ１８では、ＣＰＵ１１は、ステップＳ１４〜Ｓ１６の参照内容に基づいて、変動周期ｔをランダムに決定する。その後、ＣＰＵ１１は、図５のフローに戻り、ステップＳ４の処理を実行する。
【００６６】
再び図５において、次に、ＣＰＵ１１は、プログラムＲＯＭ１８内の合成音声生成プログラム３７に従い、合成音声を生成する（ステップＳ４）。
図８は、図５の合成音声生成処理（ステップＳ４）の詳細を示すフローチャートである。図８において、ＣＰＵ１１は、最初、ステップＳ１で読み出したテキストデータが奇数番目の文字であるか否かを判定する（ステップＳ２１）。そして、ステップＳ２１の判定結果が肯定の場合、ＣＰＵ１１は、そのテキストデータを奇数番目の文字として記憶する（ステップＳ２２）。
【００６７】
次に、ＣＰＵ１１は、ステップＳ２２で記憶した文字を解析し、特定の記号があれば、それに応じた変動量を決定する（ステップＳ２４）。
図９は、図８のステップＳ２４（文字解析および変動量決定処理）の詳細を示すフローチャートである。図９において、ＣＰＵ１１は、最初、その文字が記号「−」か否かを判定する（ステップＳ３１）。ステップＳ３１の判定結果が否定の場合、ＣＰＵ１１は、その文字が記号「？」か否かをさらに判定する（ステップＳ３２）。ステップＳ３２の判定結果が否定の場合、ＣＰＵ１１は、その文字が記号「！」か否かをさらに判定する（ステップＳ３３）。
【００６８】
ステップＳ３１の判定結果が肯定の場合、ＣＰＵ１１は、その記号「−」を直前の文字の母音に置き換える（ステップＳ３３）。そして、図８のフローに戻り、ステップＳ２５の処理を実行する。
【００６９】
ステップＳ３２の判定結果が肯定の場合、ＣＰＵ１１は、直前の文字の周波数をキャラクタの種類に応じて変動、例えば１３％〜３０％の範囲でアップさせることを決定する（ステップＳ３５）。そして、図８のフローに戻り、ステップＳ２５の処理を実行する。
【００７０】
ステップＳ３３の判定結果が肯定の場合、ＣＰＵ１１は、直前の文字（または文章全体でもよい）の音量を変動、例えば２５％アップさせることを決定する（ステップＳ３６）。そして、図８のフローに戻り、ステップＳ２５の処理を実行する。
【００７１】
再び図８において、ＣＰＵ１１は、プログラムＲＯＭ１８から文字に対応する加工済音声波形データ、すなわち図３（ｃ）に示されるような音声波形データを読み出して、読み出した波形データの周波数および／または音量を、上記ステップＳ３５，Ｓ３６の決定内容に従って変動させることにより、合成音声データを生成する（ステップＳ２５）。
【００７２】
なお、ここでは、プログラムＲＯＭ１８に加工済音声波形データを記憶しておき、ステップＳ２５において、ＣＰＵ１１は、その加工済音声波形データを読み出して合成しているが、代わりに、図３（ａ）に示されるような原音声波形データをプログラムＲＯＭ１８に記憶しておいてもよい。この場合、ステップＳ２５において、ＣＰＵ１１は、プログラムＲＯＭ１８から原音声波形データを読み出して、図３，図４に示すような加工処理を施した後、周波数および／または音量を変動させる。
【００７３】
次いで、ＣＰＵ１１は、先行文字対応の音声波形データと、後続文字対応の音声波形データとをどれだけオーバラップさせるかを示すオーバーラップ量（すなわち、各音声波形データの時間長に対する、オーバラップされる部分のそれの割合；図１０参照）を、コントローラ３を通じて指定される出力速度に基づいて決定する（ステップＳ２６）。例えば、出力速度２倍が指定された場合、オーバーラップ量は、概ね｛１／２｝に決定される。
【００７４】
そして、ＣＰＵ１１は、生成した合成音声データを、第１の再生トラックに設定する（ステップ２７）。その際、ＣＰＵ１１は、ステップＳ２６で決定したオーバーラップ量だけ、第２の再生トラックに設定されている先行文字対応の合成音声データとオーバーラップするように、生成した合成音声データを設定する。例えばオーバーラップ量が｛１／２｝に決定された場合、生成した合成音声の前半が、先行文字対応の合成音声の後半とオーバーラップするように設定する。そして、図５のフローに戻り、ステップＳ５の処理を実行する。
【００７５】
ステップＳ２１の判定結果が否定の場合、ＣＰＵ１１は、そのテキストデータを、偶数番目の文字として記憶する（ステップＳ２３）。その後、ＣＰＵ１１は、上記ステップＳ２４〜Ｓ２６と同様の処理を行い、生成した音声合成データを、第２の再生トラックに設定する（ステップ２８）。その際、ＣＰＵ１１は、ステップＳ２６で決定したオーバーラップ量だけ、第１の再生トラックに設定されている先行文字対応の合成音声とオーバーラップするように、生成した合成音声データを設定する。そして、図５のフローに戻り、ステップＳ５の処理を実行する。
【００７６】
ステップＳ２７，Ｓ２８で互いにオーバーラップされつつ再生トラックに設定される合成音声データのいくつかの例が、図１０に示されている。図１０では、先頭文字から順番に、各文字と対応する合成音声データが▲１▼，▲２▼，…のように記載されている。
図１０（ａ）には、２つの再生トラックに、オーバーラップ量｛１／２｝で設定された合成音声データが、（ｂ）には、２つの再生トラックに、オーバーラップ量｛１／３｝で設定された合成音声データが示されている。
【００７７】
図１０（ａ），（ｂ）からわかるように、２つの再生トラックを用いれば、オーバーラップ量を０〜｛１／２｝の範囲で変化させることができる。従って、合成音声の時間長は、オーバーラップしない場合の概ね｛１／２｝〜１倍となり、最大で概ね２倍速の合成音声が得られる。
【００７８】
なお、図１０（ｃ）のように、３つの再生トラックを用いれば、オーバーラップ量を最大で｛２／３｝とすることができ、最大で概ね３倍速の合成音声が得られる。また、図示はしないが、４つの再生トラックを用いれば、オーバーラップ量を最大で｛３／４｝とすることができ、最大で概ね４倍速の合成音声が得られる。一般には、Ｎ（Ｎは２以上の整数）個の再生トラックを用いれば、オーバーラップ量を最大で｛（Ｎ−１）／Ｎ｝とすることができ、最大で概ねＮ倍速の合成音声が得られる。
【００７９】
再び図５において、ステップＳ５では、ステップＳ１で読み出されたテキストデータと対応する文字が順次、ＴＶ４上に表示される。ＣＰＵ１１は、プログラムＲＯＭ１８内の合成音声再生プログラム３９に従い、ＤＳＰ１７に合成音声の再生を指示する（ステップＳ６）。応じて、ＤＳＰ１７は、各再生トラックに設定された合成音声データを互いに加算することにより、合成音声を再生する。
次いで、ＣＰＵ１１は、再生を終了するか否かを判断する（ステップＳ７）。そして、再生を終了する場合は動作を停止し、再生を終了しない場合は、ステップＳ１に戻って上記と同様の処理を繰り返す。
【００８０】
図１１は、図１のＣＰＵ１１が生成する合成音声の特徴を具体的に説明するための図である。図１１に示される例では、ＴＶ４上のキャラクタは、感情が［悲しい状態］にあり、「もう！わたしかなしくなっちゃったの−！」というせりふを喋るとする。
この場合、図５のステップＳ５では、ＴＶ４上に、キャラクタのせりふが「も」→「もう」→「もう！」→「もう！わ」→「もう！わた」→「もう！わたし」→…→「もう！わたしかなしくなっちゃったの−！」のように、１フレーム当たり１文字の速さ（つまり１秒間に３０文字の速さ）で順次表示されていく。
【００８１】
ステップＳ６では、ステップＳ５の文字表示と同期して、スピーカ５からキャラクタのせりふが順次音声出力される。このとき出力される音声は、互いに連続する２つの文字に関し、先行する文字（と対応する音声波形データ）の後半部分と、後続する文字（と対応する音声波形データ）の前半部分とが互いにオーバーラップされている。従って、この場合の文字の出力速度は、オーバーラップしない場合の概ね２倍となる。
また、キャラクタの感情の状態に応じた周波数および音量の変動と、記号「！」や「？」に応じた周波数および音量の変動とが加えられている。
【００８２】
上記のようなオーバラップ再生と、周波数および音量の変動とは、次のようにして実現される。図５のステップＳ１では、テキストデータ「［悲しい状態］もう！わたしかなしくなっちゃったの−！」が読み出される。ステップＳ２では、感情情報有りと判定される。ステップＳ３の感情付加処理では、キャラクタの感情が「悲しい状態」であると判定され、変動量設定テーブル３６の「眠い・悲しい状態」が参照される。
【００８３】
図７の変動量設定テーブル３６の「眠い・悲しい状態」の欄には、変動周期ｔを１０〜１４フレームとして、１フレーム当たり周波数を２％づつ、音量を１％づつ下げることが記載されており、周波数ｆについては「−２％／フレーム」が、音量ｖについては「−１％／フレーム」が、上記のテキストデータ「［悲しい状態］もう！わたしかなしくなっちゃったの−！」に関して設定される。
さらに、変動周期ｔが、１０〜１４フレームの範囲でランダムに決定される。ランダムに決定するとしたのは、せりふが単調となるのを避けるためであり、ここでは、ｔ＝１０フレームに決定されたとする。こうして設定される「悲しい状態」に対応した周波数および音量の変動が、図１１にグラフで示されている。
【００８４】
ステップＳ４では、テキストデータ「［悲しい状態］もう！わたしかなしくなっちゃったの−！」が奇数番目の文字と偶数番目の文字とに振り分けられ、次いで、記号「！」および「−」に応じた処理が行われる。すなわち、記号「−」は、直前の文字「の」の母音、つまり「お」に置き換えられる。また、「！」の直前の文字「う」および「−（お）」の音量がアップされる。なお、上記のテキストデータ中に記号「？」は含まれていないので、ここでは「？」に応じた周波数変動（直前の文字の周波数アップ）はなされない。こうして設定される各記号に対応した周波数および音量の変動が、図１１にグラフで示されている。
【００８５】
その後、テキストデータ「［悲しい状態］もう！わたしかなしくなっちゃったの−！」と対応する音声波形データを読み出して、上記のような周波数および／または音量の変動を加えることにより、合成音声が生成される。そして、奇数番目の文字と対応する音声は第１の再生トラックに、偶数番目の文字と対応する音声は第２の再生トラックに、先行音声の後半と後続音声の前半とが互いにオーバーラップするように、互い違いに設定される。
【００８６】
第１および第２の再生トラックに上記のようにして互い違いに設定された合成音声を加算して出力すれば、スピーカ５からは、先行音声の後半と後続音声の前半とが互いにオーバーラップされた合成音声が出力される。その出力速度（単位時間当たりの出力文字数）は、周波数上昇を伴うことなく、オーバーラップさせない場合の概ね２倍となる。
【００８７】
また、文章に添付された感情情報に基づいて周波数および／または音量の変動が加えられた結果、文章に応じた合成音声に感情が付加される（すなわち、感情に応じた抑揚が生じる）。さらには、文末に添付された記号「！」に基づいて文末文字の音量がアップされ、文末に添付された「？」に基づいて文末文字の周波数が上昇される。
【００８８】
最後に、特許請求の範囲に記載した各手段や各ステップが、本実施形態において開示されたどのブロックやステップに対応するかを明記しておく。
「音声波形記憶手段」は、音声波形データ３８を記憶するプログラムＲＯＭ１８に対応する。「文章記憶手段」は、テキストデータ３３を記憶するプログラムＲＯＭ１８に対応する。「合成音声生成手段」は、メインプログラム３１およびサウンド制御プログラム３２を記憶したプログラムＲＯＭ１８，ＣＰＵ１１，ワークメモリ１３，ＤＳＰ１７およびサウンドフレームバッファ１６に対応する。「音声出力手段」は、ＤＳＰ１７およびスピーカ５に対応する。「文字表示手段」は、ＧＰＵ１５およびＴＶ４に対応する。
【００８９】
「音声波形記憶ステップ」は、音声波形データ３８を予めプログラムＲＯＭ１８に記憶する処理（図示せず）に相当する。「文章記憶ステップ」は、テキストデータ３３を予めプログラムＲＯＭ１８に記憶する処理（図示せず）に相当する。「合成音声生成ステップ」は、ステップＳ１〜Ｓ４に対応する。「音声出力ステップ」は、ステップＳ６に対応する。「文字表示ステップ」は、ステップＳ５に対応する。
【００９０】
以上のように、本実施形態によれば、文章に含まれる各文字と対応する音声波形を合成していく際、先行文字対応の音声波形の一部と、後続文字対応の音声波形の一部とを互いにオーバラップさせるので、文章に応じ、かつ周波数上昇を伴うことなく時間長の短縮された合成音声を生成することが可能となる。これにより、文章に応じた、高速でしかも聴き取りやすい合成音声を出力することができるようになる。
【００９１】
また、音声波形として特に、子音部波形のピークと母音部波形とのレベル差が原音声波形のそれより小さい加工済音声波形を用いるので、先行文字の母音部が後続文字の子音部に埋もれて（かき消されて）聴き取りにくくなることがない。
【００９２】
また、音声波形として特に、時間長が原音声波形のそれより短い加工済音声波形を用いるので、時間長のさらなる短縮が可能となる。
【００９３】
その結果、キャラクタのせりふを１フレームにつき１文字の速さで画面上に順次表示させつつ、スピーカから、キャラクタのせりふに応じた聴き取り可能な合成音声を、文字表示と同期して１フレームにつき１文字の速さで（つまり１秒間に３０文字の速さで）出力させることができるようなゲーム機が実現される。
【００９４】
また、オーバーラップさせようとする部分の時間長を変化させることにより、合成音声の時間長を短縮する程度が可変となり、その結果、合成音声の速度を、周波数変動を伴うことなく変化させることもできる。
【００９５】
さらには、文章に添付された感情情報に基づいて、合成音声の音量や周波数を変化させるので、合成音声に感情を反映した抑揚が生じる。これにより、合成音声に感情を付与することが可能となる。
【００９６】
なお、本実施形態では、キャラクタのせりふに応じた聴き取り可能な合成音声を１秒間に３０文字の速さで出力させることができると述べたが、どの速度まで聴き取り可能かは、プレイヤによって個人差があるのはいうまでもない。
【００９７】
また、本実施形態では、文章に含まれる文字を２つのグループに振り分けて、各グループに振り分けられた音声波形を同時に再生することにより、文書に含まれる全ての先行文字および全ての後続文字の音声波形をオーバーラップさせたが、１つの先行文字および１つの後続文字の音声波形をオーバーラップさせた単一の合成音声を生成することもできる。
【００９８】
また、本実施形態では、子音文字と対応する音声波形が１つの子音波形および１つの母音波形からなる日本語の合成音声について説明したが、外国語の合成音声にも応用することができる。外国語の合成音声を生成する場合、”文字”ではなく、１または複数の子音波形および１つの母音波形からなる”音節”を単位として、各音節の一部を互いにオーバーラップさせることが考えられる。
【００９９】
また、本実施形態では、人間のキャラクタが喋る日本語の合成音声を生成する場合について説明したが、動物のキャラクタが喋る「動物語」の合成音声を生成することもできる。ゲームの種類にもよるが、「動物語」は、聴き取りやすい（せりふの意味がはっきりとわかる）合成音声であるよりも、むしろ、せりふを喋っているような雰囲気を持つ合成音声の方が好ましい場合が多い。
【０１００】
このような「動物語」の合成音声も、日本語の合成音声と同様にして生成できる。ただし、子音波形のピークと母音波形とのレベル差や時間長が「動物語」に好適な値に調整された加工済音声波形を用い、その上で、オーバーラップ量を「動物語」に好適な値に決める必要がある。さらに、こうして生成した「動物語」の合成音声に、日本語の合成音声の場合と同様にして感情を付加すれば、動物キャラクタがせりふを喋っているような雰囲気を出すことができるようになる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係るゲーム機の構成を示すブロック図である。
【図２】図１のプログラムＲＯＭ１８に格納されているプログラムやデータの構成を示すメモリマップである。
【図３】図１のＣＰＵ１１が合成音声を生成するのに用いられる音声波形データ（すなわち図２の音声波形データ３８）の特徴と、そのデータの加工方法とを説明するための図である。
【図４】図２の音声波形データ３８の加工方法を示すフローチャートである。
【図５】図１のＣＰＵ１１が図２のサウンド制御プログラム３２を実行する場合のフローチャートである。
【図６】図５の感情設定処理（ステップＳ３）の詳細を示すフローチャートである。
【図７】図２の変動量設定テーブル３６の内容を示す図である。
【図８】図５の合成音声生成処理（ステップＳ４）の詳細を示すフローチャートである。
【図９】図８のステップＳ２４（文字解析および変動量決定処理）の詳細を示すフローチャートである。
【図１０】図８のステップＳ２７，Ｓ２８で互いにオーバーラップされつつ再生トラックに設定される合成音声データの例を示す図である。
【図１１】図１のＣＰＵ１１が生成する合成音声の特徴を具体的に説明するための図である。
【符号の説明】
１１…ＣＰＵ
１５…ＧＰＵ
１７…ＤＳＰ
１８…プログラムＲＯＭ
３１…メインプログラム
３２…サウンド制御プログラム
３３…テキストデータ
３４…画像データ
３５…感情情報設定プログラム
３６…変動量設定テーブル
３７…合成音声生成プログラム
３８…音声波形データ
３９…合成音声再生プログラム
【図１】
0004651168.tif 000002
【図２】
0004651168.tif 000003
【図３】
0004651168.tif 000004
【図４】
0004651168.tif 000005
【図５】
0004651168.tif 000006
【図６】
0004651168.tif 000007
【図７】
0004651168.tif 000008
【図８】
0004651168.tif 000009
【図９】
0004651168.tif 000010
【図１０】
0004651168.tif 000011
【図１１】
0004651168.tif 000012