(57)【特許請求の範囲】
【請求項１】
入力テキストから生成される発音情報に基づいて有声音波形を生成する有声音生成手順と、
前記発音情報に基づいて無声音波形を生成する無声音生成手順と、
前記有声音波形のサンプリング周波数を出力のサンプリング周波数に変換する有声音サンプリング変換手順と、
前記無声音波形のサンプリング周波数を前記出力のサンプリング周波数に変換する無声音サンプリング変換手順とを実行し、
前記有声音生成手順は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の有声音部分のみからなる有声音波形を生成し、
前記無声音生成手順は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の無声音部分のみからなる無声音波形を生成することを特徴とする音声合成方法。
【請求項２】
請求項１記載の音声合成方法において、
前記有声音波形及び前記無声音波形の１サンプル毎の生成タイミングを前記出力のサンプリング周波数上で管理し、前記有声音波形の生成タイミングを前記有声音波形のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ前記有声音生成手順による有声音波形生成を行い、前記無声音波形の生成タイミングを前記無声音波形のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ前記無声音生成手順による無声音波形生成を行うことを特徴とする音声合成方法。
【請求項３】
請求項１記載の音声合成方法において、
前記サンプリング周波数の変換前後でサンプル点が一致する時刻を時刻量子化の先頭時刻とし、この先頭時刻から次の先頭時刻までの時間を時刻量子化幅とし、前記先頭時刻からサンプリング周波数変換後の各サンプルが確定するまでの待ち時間を時刻量子化遅延としたとき、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定し、
前記有声音生成手順では、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記有声音波形を生成し、
前記無声音生成手順では、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記無声音波形を生成することを特徴とする音声合成方法。
【請求項４】
請求項３記載の音声合成方法において、
サンプリング周波数変換前の前記有声音波形又は前記無声音波形のサンプル点から対応する変換後のサンプル点までの遅延時間を、この変換後のサンプルに対応する前記時刻量子化遅延に加えることを特徴とする音声合成方法。
【請求項５】
入力テキストから生成される発音情報に基づいて有声音波形を生成する有声音生成部と、
前記発音情報に基づいて無声音波形を生成する無声音生成部と、
前記有声音波形のサンプリング周波数を出力のサンプリング周波数に変換する有声音サンプリング変換部と、
前記無声音波形のサンプリング周波数を前記出力のサンプリング周波数に変換する無声音サンプリング変換部とを有し、
前記有声音生成部は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の有声音部分のみからなる有声音波形を生成し、
前記無声音生成部は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の無声音部分のみからなる無声音波形を生成することを特徴とする音声合成装置。
【請求項６】
請求項５記載の音声合成装置において、
前記有声音波形及び前記無声音波形の１サンプル毎の生成タイミングを前記出力のサンプリング周波数上で管理し、前記有声音波形のサンプリング周波数上で前記有声音波形の生成タイミングを示す情報を前記有声音生成部に出力すると共に、前記無声音波形のサンプリング周波数上で前記無声音波形の生成タイミングを示す情報を前記無声音生成部に出力するタイミング制御部を有し、
前記有声音生成部は、前記有声音波形の生成タイミングで１サンプルずつ前記有声音波形を生成し、
前記無声音生成部は、前記無声音波形の生成タイミングで１サンプルずつ前記無声音波形を生成することを特徴とする音声合成装置。
【請求項７】
請求項５記載の音声合成装置において、
前記サンプリング周波数の変換前後でサンプル点が一致する時刻を時刻量子化の先頭時刻とし、この先頭時刻から次の先頭時刻までの時間を時刻量子化幅とし、前記先頭時刻からサンプリング周波数変換後の各サンプルが確定するまでの待ち時間を時刻量子化遅延としたとき、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定して、前記有声音生成部及び前記無声音生成部に出力するタイミング制御部を有し、
前記有声音生成部は、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記有声音波形を生成し、
前記無声音生成部は、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記無声音波形を生成することを特徴とする音声合成装置。
【請求項８】
請求項５記載の音声合成装置において、
前記有声音サンプリング変換部は、前記サンプリング周波数の変換前後でサンプル点が一致する時刻を時刻量子化の先頭時刻とし、この先頭時刻から次の先頭時刻までの時間を時刻量子化幅とし、前記先頭時刻からサンプリング周波数変換後の各サンプルが確定するまでの待ち時間を時刻量子化遅延としたとき、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定して、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を前記有声音生成部に出力し、
前記無声音サンプリング変換部は、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定して、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を前記無声音生成部に出力し、
前記有声音生成部は、前記有声音サンプリング変換部から発音情報が入力されたとき、この発音情報から前記有声音波形を生成し、
前記無声音生成部は、前記無声音サンプリング変換部から発音情報が入力されたとき、この発音情報から前記無声音波形を生成することを特徴とする音声合成装置。
【請求項９】
請求項７又は８記載の音声合成装置において、
サンプリング周波数変換前の前記有声音波形又は前記無声音波形のサンプル点から対応する変換後のサンプル点までの遅延時間を、この変換後のサンプルに対応する前記時刻量子化遅延に加えることを特徴とする音声合成装置。
【請求項１０】
請求項５−９の何れかに記載の音声合成装置を内蔵したことを特徴とする半導体装置。
【請求項１１】
入力テキストから生成される発音情報に基づいて有声音波形を生成する有声音生成手順と、
前記発音情報に基づいて無声音波形を生成する無声音生成手順と、
前記有声音波形のサンプリング周波数を出力のサンプリング周波数に変換する有声音サンプリング変換手順と、
前記無声音波形のサンプリング周波数を前記出力のサンプリング周波数に変換する無声音サンプリング変換手順とをコンピュータに実行させ、
前記有声音生成手順は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の有声音部分のみからなる有声音波形を生成し、
前記無声音生成手順は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の無声音部分のみからなる無声音波形を生成することを特徴とする音声合成プログラム。
【請求項１２】
請求項１１記載の音声合成プログラムにおいて、
前記有声音波形及び前記無声音波形の１サンプル毎の生成タイミングを前記出力のサンプリング周波数上で管理し、前記有声音波形の生成タイミングを前記有声音波形のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ前記有声音生成手順による有声音波形生成を行い、前記無声音波形の生成タイミングを前記無声音波形のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ前記無声音生成手順による無声音波形生成を行うことを特徴とする音声合成プログラム。
【請求項１３】
請求項１１記載の音声合成プログラムにおいて、
前記サンプリング周波数の変換前後でサンプル点が一致する時刻を時刻量子化の先頭時刻とし、この先頭時刻から次の先頭時刻までの時間を時刻量子化幅とし、前記先頭時刻からサンプリング周波数変換後の各サンプルが確定するまでの待ち時間を時刻量子化遅延としたとき、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定し、
前記有声音生成手順では、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記有声音波形を生成し、
前記無声音生成手順では、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記無声音波形を生成することを特徴とする音声合成プログラム。
【請求項１４】
請求項１３記載の音声合成プログラムにおいて、
サンプリング周波数変換前の前記有声音波形又は前記無声音波形のサンプル点から対応する変換後のサンプル点までの遅延時間を、この変換後のサンプルに対応する前記時刻量子化遅延に加えることを特徴とする音声合成プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、音声合成方法、音声合成装置、音声合成装置を搭載した半導体装置及び音声合成プログラムに関するものである。
【０００２】
【従来の技術】
従来より、音声合成装置においては、音声の生成モデルに沿って有声音と無声音を別々の手法で生成するということがよく行なわれる。例えば、ボコーダにおいて有声音の生成にはピッチ周波数に従ったパルスを入力とし、無声音の生成には白色雑音を使うなどの手法である。このような処理をディジタル信号処理で行なう場合、有声音と無声音を同じ出力デバイスから出力しようとすると、有声音を生成するサンプリング周波数と無声音を生成するサンプリング周波数には、出力デバイスの出力サンプリング周波数と同じ値が用いられる。
【０００３】
実際に人間が発声した音声波形を観測すると、無声音に比べて有声音は比較的低い周波数にパワーの多くが集中している。したがって、無声音を生成するのに充分な程度にサンプリング周波数を設定すると、有声音にとってはそのサンプリング周波数は高過ぎであり、例えば波形編集方式の音声合成においては波形素片の保持に必要以上の記憶容量が必要になるという問題点があった。有声音の波形素片は無声音の波形素片に比べて記憶容量の多くを占めることが多いので、このような記憶容量の増大は小型化を要求される音声合成装置にとっては大きな問題となる。
【０００４】
そこで、有声音と無声音のサンプリング周波数を別々に設定する方法として、無声子音部の波形の読み出しを行なうクロック周波数を音質データに従って変化させる音声合成装置が開示されている（特開昭６０−１１３２９９号公報）。また、低いサンプリング周波数で音声素片を保持しておき、音声合成時にデータを補間することによってサンプリング周波数を見かけ上高くすることにより、良質の合成音声を得る音声合成装置が開示されている（特開昭５８−２１９５９９号公報）。
【０００５】
【発明が解決しようとする課題】
以上のように、有声音と無声音のサンプリング周波数に同一の値を用いる従来の音声合成装置では、無声音を生成するのに充分な程度にサンプリング周波数を設定すると、記憶容量が増大するという問題点があった。
また、特開昭６０−１１３２９９号公報に開示された音声合成装置では、入力される音質データに応じて無声子音部の音質が変化してしまうという問題点があった。
さらに、特開昭５８−２１９５９９号公報に開示された音声合成装置では、低いサンプリング周波数で音声素片を保持するため、高い周波数成分の音声がカットされる可能性があった。
本発明は、上記課題を解決するためになされたもので、記憶容量を増大させることなく、高品質の音声合成を実現することができる音声合成方法、音声合成装置、半導体装置及び音声合成プログラムを提供することを目的とする。
【０００６】
【課題を解決するための手段】
本発明の音声合成方法は、入力テキストから生成される発音情報に基づいて有声音波形を生成する有声音生成手順と、前記発音情報に基づいて無声音波形を生成する無声音生成手順と、前記有声音波形のサンプリング周波数を出力のサンプリング周波数に変換する有声音サンプリング変換手順と、前記無声音波形のサンプリング周波数を前記出力のサンプリング周波数に変換する無声音サンプリング変換手順とを実行し、前記有声音生成手順は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の有声音部分のみからなる有声音波形を生成し、前記無声音生成手順は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の無声音部分のみからなる無声音波形を生成することを特徴とするものである。このように、有声音のサンプリング周波数を出力のサンプリング周波数に変換し、無声音のサンプリング周波数を出力のサンプリング周波数に変換することにより、有声音と無声音のそれぞれについて最適なサンプリング周波数を設定することができる。また、有声音のサンプリング周波数及び無声音のサンプリング周波数を出力のサンプリング周波数と独立に設定できるので、出力デバイスの要求するサンプリング周波数によらずに、最適なサンプリング周波数を使うことができる。
また、本発明の音声合成方法の１構成例は、前記有声音波形及び前記無声音波形の１サンプル毎の生成タイミングを前記出力のサンプリング周波数上で管理し、前記有声音波形の生成タイミングを前記有声音波形のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ前記有声音生成手順による有声音波形生成を行い、前記無声音波形の生成タイミングを前記無声音波形のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ前記無声音生成手順による無声音波形生成を行うようにしたものである。
【０００７】
また、本発明の音声合成方法の１構成例は、前記サンプリング周波数の変換前後でサンプル点が一致する時刻を時刻量子化の先頭時刻とし、この先頭時刻から次の先頭時刻までの時間を時刻量子化幅とし、前記先頭時刻からサンプリング周波数変換後の各サンプルが確定するまでの待ち時間を時刻量子化遅延としたとき、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定し、前記有声音生成手順では、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記有声音波形を生成し、前記無声音生成手順では、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記無声音波形を生成するようにしたものである。
また、本発明の音声合成方法の１構成例は、サンプリング周波数変換前の前記有声音波形又は前記無声音波形のサンプル点から対応する変換後のサンプル点までの遅延時間を、この変換後のサンプルに対応する前記時刻量子化遅延に加えるようにしたものである。
【０００８】
また、本発明の音声合成装置は、入力テキストから生成される発音情報に基づいて有声音波形を生成する有声音生成部（２１）と、前記発音情報に基づいて無声音波形を生成する無声音生成部（２２）と、前記有声音波形のサンプリング周波数を出力のサンプリング周波数に変換する有声音サンプリング変換部（３１）と、前記無声音波形のサンプリング周波数を前記出力のサンプリング周波数に変換する無声音サンプリング変換部（３２）とを有し、前記有声音生成部は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の有声音部分のみからなる有声音波形を生成し、前記無声音生成部は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の無声音部分のみからなる無声音波形を生成することを特徴とするものである。
また、本発明の音声合成装置の１構成例は、前記有声音波形及び前記無声音波形の１サンプル毎の生成タイミングを前記出力のサンプリング周波数上で管理し、前記有声音波形のサンプリング周波数上で前記有声音波形の生成タイミングを示す情報を前記有声音生成部に出力すると共に、前記無声音波形のサンプリング周波数上で前記無声音波形の生成タイミングを示す情報を前記無声音生成部に出力するタイミング制御部（５１）を有し、前記有声音生成部（２１ａ）は、前記有声音波形の生成タイミングで１サンプルずつ前記有声音波形を生成し、前記無声音生成部（２２ａ）は、前記無声音波形の生成タイミングで１サンプルずつ前記無声音波形を生成するものである。
【０００９】
また、本発明の音声合成装置の１構成例は、前記サンプリング周波数の変換前後でサンプル点が一致する時刻を時刻量子化の先頭時刻とし、この先頭時刻から次の先頭時刻までの時間を時刻量子化幅とし、前記先頭時刻からサンプリング周波数変換後の各サンプルが確定するまでの待ち時間を時刻量子化遅延としたとき、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定して、前記有声音生成部及び前記無声音生成部に出力するタイミング制御部（５１）を有し、前記有声音生成部（２１ａ）は、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記有声音波形を生成し、前記無声音生成部（２２ａ）は、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記無声音波形を生成するものである。
また、本発明の音声合成装置の１構成例において、前記有声音サンプリング変換部（３１ｂ）は、前記サンプリング周波数の変換前後でサンプル点が一致する時刻を時刻量子化の先頭時刻とし、この先頭時刻から次の先頭時刻までの時間を時刻量子化幅とし、前記先頭時刻からサンプリング周波数変換後の各サンプルが確定するまでの待ち時間を時刻量子化遅延としたとき、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定して、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を前記有声音生成部に出力し、前記無声音サンプリング変換部（３２ｂ）は、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定して、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を前記無声音生成部に出力し、前記有声音生成部（２１ｂ）は、前記有声音サンプリング変換部から発音情報が入力されたとき、この発音情報から前記有声音波形を生成し、前記無声音生成部（２２ｂ）は、前記無声音サンプリング変換部から発音情報が入力されたとき、この発音情報から前記無声音波形を生成するものである。
また、本発明の音声合成装置の１構成例は、サンプリング周波数変換前の前記有声音波形又は前記無声音波形のサンプル点から対応する変換後のサンプル点までの遅延時間を、この変換後のサンプルに対応する前記時刻量子化遅延に加えるものである。
【００１０】
また、本発明の半導体装置は、前記音声合成装置を内蔵したものである。
また、本発明の音声合成プログラムは、入力テキストから生成される発音情報に基づいて有声音波形を生成する有声音生成手順と、前記発音情報に基づいて無声音波形を生成する無声音生成手順と、前記有声音波形のサンプリング周波数を出力のサンプリング周波数に変換する有声音サンプリング変換手順と、前記無声音波形のサンプリング周波数を前記出力のサンプリング周波数に変換する無声音サンプリング変換手順とをコンピュータに実行させ、前記有声音生成手順は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の有声音部分のみからなる有声音波形を生成し、前記無声音生成手順は、無声音部分と有声音部分が時間的に重なる場合には、重なる区間の前記発音情報の無声音部分のみからなる無声音波形を生成することを特徴とするものである。
また、本発明の音声合成プログラムの１構成例は、前記有声音波形及び前記無声音波形の１サンプル毎の生成タイミングを前記出力のサンプリング周波数上で管理し、前記有声音波形の生成タイミングを前記有声音波形のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ前記有声音生成手順による有声音波形生成を行い、前記無声音波形の生成タイミングを前記無声音波形のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ前記無声音生成手順による無声音波形生成を行うようにしたものである。
【００１１】
また、本発明の音声合成プログラムの１構成例は、前記サンプリング周波数の変換前後でサンプル点が一致する時刻を時刻量子化の先頭時刻とし、この先頭時刻から次の先頭時刻までの時間を時刻量子化幅とし、前記先頭時刻からサンプリング周波数変換後の各サンプルが確定するまでの待ち時間を時刻量子化遅延としたとき、前記時刻量子化幅の中で生成される予定の前記変換後の各サンプルに対応する前記発音情報と前記時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定し、前記有声音生成手順では、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記有声音波形を生成し、前記無声音生成手順では、前記先頭時刻から前記変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の前記無声音波形を生成するようにしたものである。
また、本発明の音声合成プログラムの１構成例は、サンプリング周波数変換前の前記有声音波形又は前記無声音波形のサンプル点から対応する変換後のサンプル点までの遅延時間を、この変換後のサンプルに対応する前記時刻量子化遅延に加えるようにしたものである。
【００１２】
【発明の実施の形態】
［第１の実施の形態］
以下、本発明の実施の形態について図面を参照して詳細に説明する。図１は本発明の第１の実施の形態となる音声合成装置の構成を示すブロック図である。入力部１１は、発声すべき文字列を示す入力テキスト１を入力とし、音韻列など音声生成に必要な情報（以下、発音情報２とする）を生成して  有声音生成部２１と無声音生成部２２に送る。
【００１３】
有声音生成部２１は、発音情報２を入力とし、発音情報２中の有声音の部分だけからなる合成音波形（以下、有声音波形とする）３を生成する。このときに生成する有声音波形３のサンプリング周波数を、以下では有声サンプリング周波数（略称Ｆｓｖ）と呼称する。実際の発声ではしばしば有声音部分、無声音部分、無音部分が交互に現われるが、その中の有声音部分だけをここで生成する。なお、有声音部分と無声音部分が時間的に重なるような制御を行なう音声合成装置もあるが、その場合はここでは重なる区間の有声音部分だけを生成する。
【００１４】
有声音サンプリング変換部３１は、有声音波形３のサンプリング周波数Ｆｓｖを出力デバイスのサンプリング周波数に変換した有声音波形５を生成する。この出力のサンプリング周波数を、以下では出力サンプリング周波数Ｆｓｏと呼称する。ここでの周波数変換には、例えばポリフェーズフィルタによるサンプリング変換などを用いる。Ｆｓｖ＝Ｆｓｏの場合はサンプリング周波数を変換する必要は無いので、有声音サンプリング変換部３１は単に入力を出力に素通しをするだけで良い。
【００１５】
無声音生成部２２は、発音情報２を入力とし、発音情報２中の無声音の部分だけからなる合成音波形（以下、無声音波形とする）４を生成する。このときに生成する無声音波形４のサンプリング周波数を、以下では無声サンプリング周波数（略称Ｆｓｕ）と呼称する。前記有声音生成部２１の場合と同様に、有声音部分と無声音部分が時間的に重なる場合には、重なる区間の無声音部分だけを生成する。
【００１６】
無声音サンプリング変換部３２は、無声音波形４のサンプリング周波数Ｆｓｕを出力サンプリング周波数Ｆｓｏに変換した無声音波形６を生成する。Ｆｓｕ＝Ｆｓｏの場合、無声音サンプリング変換部３２は単に入力を出力に素通しをするだけで良い。
【００１７】
出力部４１は、前記出力サンプリング周波数Ｆｓｏに変換された有声音波形５と、前記出力サンプリング周波数Ｆｓｏに変換された無声音波形６とを合わせて、１つの合成音声波形７として出力する。
【００１８】
本実施の形態によれば、有声音と無声音を別々に生成するため、そのタイミングを一致させる必要がある。有声音と無声音のタイミングを一致させるには、例えば発音情報２に各音素等の区切り毎の時刻情報を含めておいて、有声音生成部２１と無声音生成部２２がそれぞれその時刻情報に従って音声を生成し、有声音生成部２１と無声音生成部２２を同時に動かし始めることで満たすことが可能である。
【００１９】
［第２の実施の形態］
図２は本発明の第２の実施の形態となる音声合成装置の構成を示すブロック図であり、図１と同一の構成には同一の符号を付してある。本実施の形態では、第１の実施の形態の構成に加えて、タイミング制御部５１を設けている。本実施の形態においては、入力部１１が生成した発音情報２は、タイミング制御部５１に送られる。
【００２０】
タイミング制御部５１は、発音情報２を入力とし、発音情報２および有声音生成部２１ａに対する１サンプルごとの生成タイミング情報５２を出力すると共に、発音情報２および無声音生成部２２ａに対する１サンプルごとの生成タイミング情報５３を出力する。また、タイミング制御部５１は、必要であれば有声音生成部２１ａと無声音生成部２２ａが使用するクロックを生成する。
【００２１】
音声波形の生成自体は、有声音がＦｓｖのサンプリング周波数、無声音がＦｓｕのサンプリング周波数でそれぞれ行なわれるが、タイミング制御部５１はこれらサンプリングのタイミングを周波数Ｆｓｏ上で一括して管理する。タイミング制御部５１の動作周波数Ｆｓｏのクロックは、出力部４１がＤ／Ａコンバータであるならばそこから受け取ってもよいし、逆にタイミング制御部５１が周波数Ｆｓｏのクロックを生成して出力部４１に供給することもできる。
【００２２】
有声音生成部２１ａは、タイミング制御部５１から出力される１サンプル毎の生成タイミング情報５２に従って、発音情報２から１サンプルずつ有声音波形３を生成する。同様に、無声音生成部２２ａは、タイミング制御部５１から出力される１サンプル毎の生成タイミング情報５３に従って、発音情報２から１サンプルずつ無声音波形４を生成する。
【００２３】
本実施の形態におけるタイミング例を図３に示す。ここでは、有声音サンプリング周波数Ｆｓｖ＝１００００Ｈｚ、無声音サンプリング周波数Ｆｓｕ＝２００００Ｈｚ、出力サンプリング周波数Ｆｓｏ＝４００００Ｈｚとし、先頭から１００ｍｓｅｃ、２００ｍｓｅｃ、３００ｍｓｅｃ、８００ｍｓｅｃの各時点で  有声音のピッチ駆動が行なわれ、また先頭から４００ｍｓｅｃの時点で長さ４５０ｍｓｅｃの無声音の駆動が行なわれるものとする。
【００２４】
タイミング制御部５１は、常に出力周波数Ｆｓｏ上で４サンプル毎に有声サンプリング周波数Ｆｓｖのクロックを１出力し、同様にＦｓｏ上で２サンプル毎に無声サンプリング周波数Ｆｓｕのクロックを１出力する。また、タイミング制御部５１は、図３（ａ）、図３（ｃ）に示すように、Ｆｓｏ上で先頭から４０００サンプル（Ｆｓｖ上で１０００サンプル）後の時点でピッチＡの駆動を行わせるべく生成タイミング情報５２を有声音生成部２１ａに出力し、Ｆｓｏ上で８０００サンプル（Ｆｓｖ上で２０００サンプル）後の時点でピッチＢの駆動を行わせるべく生成タイミング情報５２を有声音生成部２１ａに出力し、Ｆｓｏ上で１２０００サンプル（Ｆｓｖ上で３０００サンプル）後の時点でピッチＣの駆動を行わせるべく生成タイミング情報５２を有声音生成部２１ａに出力する。
【００２５】
続いて、タイミング制御部５１は、Ｆｓｏ上で先頭から１６０００サンプル（Ｆｓｕ上で８０００サンプル）後の時点で無声音Ｄの駆動を行わせるべく生成タイミング情報５３を無声音生成部２２ａに出力する。さらに、タイミング制御部５１は、Ｆｓｏ上で先頭から３２０００サンプル（Ｆｓｖ上で８０００サンプル）後の時点で有声音Ｅの駆動を行わせるべく生成タイミング情報５２を有声音生成部２１ａに出力する。
【００２６】
以上により、有声音生成部２１ａと無声音生成部２２ａが生成する音声波形は、それぞれ出力周波数Ｆｓｏに同期して生成される。有声音サンプリング変換部３１、無声音サンプリング変換部３２及び出力部４１の動作は第１の実施の形態と同じである。
【００２７】
［第３の実施の形態］
次に、本発明の第３の実施の形態について説明する。本実施の形態においても、音声合成装置の構成は第２の実施の形態と同様であるので、図２の符号を用いて説明する。本実施の形態では、タイミング制御部５１による有声音生成部２１ａ及び無声音生成部２２ａの制御方法が第２の実施の形態と異なる。
【００２８】
有声音サンプリング変換部３１および無声音サンプリング変換部３２において内部バッファを用いたサンプリング変換を行う場合、そのバッファのために動作の時刻量子化と遅延が生じる。１例として、Ｆｓｖ＝１５０００ＨｚかつＦｓｏ＝２００００Ｈｚの場合に、インタポレーションレート４かつデシメーションレート３のポリフェーズフィルタによるサンプリング変換を有声音サンプリング変換部３１で行う場合を考える。
【００２９】
このときのサンプリング変換フィルタ（有声音サンプリング変換部３１）の入力と出力の因果関係を図４に示す。ここで使用するサンプリング変換方法では、図４（ａ）におけるサンプルａと図４（ｂ）におけるサンプルＡ、サンプルｄとサンプルＥのように、入力（サンプリング周波数の変換前）と出力（変換後）のサンプル点が一致する時刻が存在する。このサンプル点の一致を動作の時刻量子化と定義する。そして、入力と出力のサンプル点が一致してから次に一致するまでの時間（図４におけるサンプルＡとサンプルＥの間隔）を時刻量子化幅Ｑと定義する。本実施の形態では、この時刻量子化幅Ｑ単位で完結してサンプリング変換を行なう構成について説明する。
【００３０】
出力のサンプルＡとＢは、入力のサンプルａが入力された時点で確定するが、出力のサンプルＣは、入力のサンプルａが入力されてから、入力のサンプルｂが入力されるまで時間ｄ（ｔ（Ｃ））＝ｔ（ｂ）−ｔ（ａ）だけ待たないと確定しない。同様に、出力のサンプルＤは、入力のサンプルａが入力されてから、入力のサンプルｃが入力されるまで時間ｄ（ｔ（Ｄ））＝ｔ（ｃ）−ｔ（ａ）だけ待たないと確定しない。時刻量子化幅Ｑの先頭から出力のサンプルＸが確定するまでの待ち時間ｄ（ｔ（Ｘ））を時刻量子化遅延と定義する。
【００３１】
タイミング制御部５１が、ある出力のサンプル点Ｘにおいてピッチ駆動を行なうと判断したとき、前述のように時刻量子化幅Ｑの先頭から時刻量子化遅延ｄ（ｔ（Ｘ））だけ遅れた時刻で駆動する必要がある。この時刻は、サンプル点Ｘより後にはならないので、時刻量子化幅Ｑの先頭時刻でまとめて処理するのが簡単である。
【００３２】
そのため、タイミング制御部５１は、時刻量子化幅Ｑの先頭時刻（サンプルＡ）において、この先頭時刻から始まる時刻量子化幅Ｑの中の各サンプルＡ，Ｂ，Ｃ，Ｄで必要なアクションがあるかどうかをまとめて検出し、必要なアクションがある場合、各サンプルＡ，Ｂ，Ｃ，Ｄに対応する発音情報と時刻量子化遅延とを決定する。必要なアクションとしては、有声音のピッチ駆動や無声音の駆動などがある。
【００３３】
図４の例の場合、サンプルＡ，Ｂに対応して発音情報（入力のサンプルａを生成するための発音情報）と時刻量子化遅延ｄ（ｔ（Ａ）），ｄ（ｔ（Ｂ））とが決定され、サンプルＣに対応して発音情報（サンプルｂを生成するための発音情報）と時刻量子化遅延ｄ（ｔ（Ｃ））とが決定され、サンプルＤに対応して発音情報（サンプルｃを生成するための発音情報）と時刻量子化遅延ｄ（ｔ（Ｄ））とが決定される。
【００３４】
タイミング制御部５１は、以上のような各出力サンプル毎の発音情報と時刻量子化遅延のペアを時刻量子化幅Ｑの先頭時刻でまとめて出力する。出力のサンプルＸに対応する入力のサンプルｘ（サンプリング周波数変換前の有声音）を生成する有声音生成部２１ａは、前記先頭時刻からサンプルＸに対応する時刻量子化遅延ｄ（ｔ（Ｘ））だけ経過した時刻において、サンプルＸに対応する発音情報を用いてサンプルｘの有声音を生成する。例えば、先頭時刻から時刻量子化遅延ｄ（ｔ（Ｃ））だけ経過した時刻において、有声音生成部２１ａは、サンプルＣに対応する発音情報を用いてサンプルｂの有声音を生成する。
【００３５】
また、図４の例では、有声音の場合についてのみ記載しているが、タイミング制御部５１は、各出力サンプル毎の発音情報と時刻量子化遅延のペアを無声音についても同様に決定し、時刻量子化幅Ｑの先頭時刻でまとめて出力する。出力のサンプルＹに対応する入力のサンプルｙ（サンプリング周波数変換前の無声音）を生成する無声音生成部２２ａは、前記先頭時刻からサンプルＹに対応する時刻量子化遅延ｄ（ｔ（Ｙ））だけ経過した時刻において、サンプルＹに対応する発音情報を用いてサンプルｙの無声音を生成する。有声音サンプリング変換部３１、無声音サンプリング変換部３２及び出力部４１の動作は第２の実施の形態と同じである。
以上により、有声サンプリング周波数Ｆｓｖ及び無声サンプリング周波数Ｆｓｕと出力サンプリング周波数Ｆｓｏ間でのタイミングを合わせることができる。
【００３６】
［第４の実施の形態］
図５は本発明の第４の実施の形態となる音声合成装置の構成を示すブロック図であり、図１、図２と同一の構成には同一の符号を付してある。本実施の形態は、タイミング制御部５１から制御する代わりに、有声音サンプリング変換部３１ｂから有声音生成部２１ｂを制御し、無声音サンプリング変換部３２ｂから無声音生成部２２ｂを制御することにより、第３の実施の形態と同様の効果を得るものである。
【００３７】
前記時刻量子化幅Ｑと時刻量子化遅延ｄ（ｔ（Ｘ））の値は、有声音サンプリング変換部３１および無声音サンプリング変換部３２の構成に依存する。そこで、有声音サンプリング変換部３１ｂは、タイミング制御部５１から出力されるサンプル単位の発音情報を、時刻量子化幅Ｑを出力（周波数Ｆｓｏ）でのサンプル数に換算した時間だけバッファリングする。
【００３８】
そして、有声音サンプリング変換部３１ｂは、バッファが一杯になった時点を時刻量子化幅Ｑの先頭時刻と見なし、サンプル毎の各発音情報について時刻量子化遅延ｄ（ｔ（Ｘ））を計算し、前記バッファが一杯になった時点から時刻量子化遅延ｄ（ｔ（Ｘ））が経過したとき、対応する発音情報２’を有声音生成部２１ｂに出力する。
【００３９】
第３の実施の形態で説明した図４を用いて説明すると、有声音サンプリング変換部３１ｂは、サンプルａに対応する発音情報を時刻量子化幅Ｑの先頭で出力し、サンプルｂに対応する発音情報を先頭からｄ（ｔ（Ｃ））が経過した時刻ｔ（ｂ）で出力し、サンプルｃに対応する発音情報を先頭からｄ（ｔ（Ｄ））が経過した時刻ｔ（ｃ）で出力する。
【００４０】
同様に、無声音サンプリング変換部３２ｂは、タイミング制御部５１からのサンプル単位の発音情報を、時刻量子化幅Ｑを出力（周波数Ｆｓｏ）でのサンプル数に換算した時間だけバッファリングする。そして、無声音サンプリング変換部３２ｂは、バッファが一杯になった時点を時刻量子化幅Ｑの先頭時刻と見なし、サンプル毎の各発音情報について時刻量子化遅延ｄ（ｔ（Ｘ））を計算し、前記バッファが一杯になった時点から時刻量子化遅延ｄ（ｔ（Ｘ））が経過したとき、対応する発音情報を無声音生成部２２ｂに出力する。
【００４１】
有声音生成部２１ｂは、有声音サンプリング変換部３１ｂから１サンプル毎の発音情報２’が入力されると、この発音情報２’から有声音波形３を生成する。同様に、無声音生成部２２ｂは、無声音サンプリング変換部３２ｂから１サンプル毎の発音情報２’が入力されると、この発音情報２’から無声音波形４を生成する。
【００４２】
続いて、有声音サンプリング変換部３１ｂは、有声音波形３のサンプリング周波数Ｆｓｖを出力サンプリング周波数Ｆｓｏに変換した有声音波形５を生成する。無声音サンプリング変換部３２ｂは、無声音波形４のサンプリング周波数Ｆｓｕを出力サンプリング周波数Ｆｓｏに変換した無声音波形６を生成する。出力部４１の動作は第１の実施の形態と同じである。
【００４３】
以上により、第３の実施の形態と同様の効果を得ることができる。本実施の形態によれば、常に有声音サンプリング変換部３１において時刻量子化幅Ｑだけの遅延が生じるが、音声合成においては問題にならないことが多い。また、先頭の時刻量子化幅Ｑ区間では、無音を出力すれば良い。
【００４４】
［第５の実施の形態］
第３、第４の実施の形態によれば、時刻量子化幅Ｑ内での時刻量子化遅延ｄ（ｔ（Ｘ））を考慮することによって、有声サンプリング周波数Ｆｓｖ及び無声サンプリング周波数Ｆｓｕと出力サンプリング周波数Ｆｓｏ間でのタイミングを合わせることができた。
しかし、実際には図６に示すように、有声サンプリング周波数Ｆｓｖと出力サンプリング周波数Ｆｓｏの間でのサンプル点は、時刻量子化幅Ｑの端点を除いて一致しておらず、出力される合成音声にジッタが現われる可能性がある。
【００４５】
例えば、入力のサンプルａと出力のサンプルＢとの間には、遅延時間ｅ（ｔ（Ｂ））が存在し、サンプルｂと変換後のサンプルＣとの間には、遅延時間ｅ（ｔ（Ｃ））が存在し、サンプルｃと変換後のサンプルＤとの間には、遅延時間ｅ（ｔ（Ｄ））が存在する。
【００４６】
そこで、第３の実施の形態の構成において、入力のサンプルｘの時刻ｔ（ｘ）から出力のサンプルＸの時刻ｔ（Ｘ）までの遅延時間ｅ（ｔ（Ｘ））を時刻量子化遅延ｄ（ｔ（Ｘ））に加えるようにする。すなわち、タイミング制御部５１は、各出力サンプルＸ毎の発音情報と時刻量子化遅延ｄ（ｔ（Ｘ））＋遅延時間ｅ（ｔ（Ｘ））のペアを時刻量子化幅Ｑの先頭時刻でまとめて出力する。このような処理を有声音と無声音のそれぞれについて行えばよい。これにより、遅延時間ｅ（ｔ（Ｘ））の影響を除去し、合成音声に現れるジッタを抑制することができる。
【００４７】
同様に、第４の実施の形態においても、遅延時間ｅ（ｔ（Ｘ））を時刻量子化遅延ｄ（ｔ（Ｘ））に加えるようにする。すなわち、有声音サンプリング変換部３１ｂは、サンプル毎の各発音情報について時刻量子化遅延ｄ（ｔ（Ｘ））＋遅延時間ｅ（ｔ（Ｘ））を計算し、バッファが一杯になった時点から時刻量子化遅延ｄ（ｔ（Ｘ））＋遅延時間ｅ（ｔ（Ｘ））が経過したとき、対応する発音情報２’を有声音生成部２１ｂに出力する。無声音サンプリング変換部３２ｂについても同様である。
【００４８】
１サンプル以内での時間遅れを解決する方法として、特開平９−３１９３９０号公報に開示されているような方法もあるが、ここでは有声音サンプリング変換部３１ｂ、無声音サンプリング変換部３２ｂにおいて、入力のサンプル点からの遅延時間ｅ（ｔ（Ｘ））に相当する位相回転分を畳み込んだフィルタ係数を用意してそれを駆動することで、全体の計算量をそれほど増加させずにｅ（ｔ（Ｘ））の影響を反映させることができる。フィルタ係数に畳み込む代わりに、有声音生成部２１ｂ、無声音生成部２２ｂにおいて前記位相回転分を織り込んだ波形を生成することもできる。これは、特に波形編集方式の音声合成を行なう場合に有効である。
【００４９】
なお、第１〜第５の実施の形態で説明した音声合成装置を、半導体装置（コンピュータチップ）に搭載してもよい。
また、第１〜第５の実施の形態で説明した音声合成装置は、コンピュータで実現することができる。このコンピュータは、中央処理装置（ＣＰＵ）、リードオンリメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、表示装置やキーボードあるいは外部記憶装置とのインタフェースをとるための回路などを備えた周知の構成のものでよい。
【００５０】
ＣＰＵは、ＲＯＭ若しくはＲＡＭに記憶されたプログラム、又はキーボードから入力されたコマンドに従って処理を実行する。また、ＣＰＵは、外部記憶装置にデータを書き込んだり、外部記憶装置からデータを読み出したりすることができる。このようなコンピュータにおいて、本発明の音声合成方法を実現させるための音声合成装置プログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、メモリカード等の記録媒体に記録された状態で提供される。この記録媒体を外部記憶装置に挿入すると、記録媒体に書き込まれたプログラムが読み取られ、コンピュータに転送される。そして、ＣＰＵは、読み込んだプログラムをＲＡＭ等に書き込む。こうして、ＣＰＵは、第１〜第５の実施の形態で説明したような処理を実行する。
【００５１】
【発明の効果】
本発明によれば、有声音のサンプリング周波数を出力のサンプリング周波数に変換する有声音サンプリング変換手順と、無声音のサンプリング周波数を出力のサンプリング周波数に変換する無声音サンプリング変換手順とを実行することにより、有声音と無声音のそれぞれについて別個に最適なサンプリング周波数を設定することができ、有声音と無声音が集中する帯域輻の違いを解決することができる。その結果、音声合成に用いる波形素片サイズの低減を図ることができ、有声音と無声音のサンプリング周波数に同一の値を用いる従来の音声合成装置のような記憶容量の無駄を省くことができ、計算量の低減を図ることができる。また、有声音と無声音のそれぞれについて最適なサンプリング周波数を設定できることから、高品質な合成音声を得ることができる。さらに、有声音のサンプリング周波数及び無声音のサンプリング周波数を出力のサンプリング周波数と独立に設定できるので、出力デバイスの要求するサンプリング周波数によらずに、最適なサンプリング周波数を使うことができる。
【００５２】
また、有声音及び無声音の１サンプル毎の生成タイミングを出力のサンプリング周波数上で管理し、有声音の生成タイミングを有声音のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ有声音生成手順による有声音生成を行い、無声音の生成タイミングを無声音のサンプリング周波数上のタイミングに変換して、この変換した生成タイミングで１サンプルずつ無声音生成手順による無声音生成を行うことにより、有声音を生成するタイミングと無声音を生成するタイミングを出力のサンプリング周波数に同期させることができる。
【００５３】
また、サンプリング周波数の変換前後でサンプル点が一致する時刻を時刻量子化の先頭時刻とし、この先頭時刻から次の先頭時刻までの時間を時刻量子化幅とし、先頭時刻からサンプリング周波数変換後の各サンプルが確定するまでの待ち時間を時刻量子化遅延としたとき、時刻量子化幅の中で生成される予定の変換後の各サンプルに対応する発音情報と時刻量子化遅延とをこの時刻量子化幅の先頭時刻で決定し、有声音生成手順では、先頭時刻から変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の有声音を生成し、無声音生成手順では、先頭時刻から変換後のサンプルに対応する時刻量子化遅延だけ経過した時刻において、この変換後のサンプルに対応する発音情報を用いて、このサンプルに対応する変換前の無声音を生成することにより、有声音のサンプリング周波数及び無声音のサンプリング周波数と出力のサンプリング周波数との間のタイミングを合わせることができる。
【００５４】
また、サンプリング周波数変換前の有声音又は無声音のサンプル点から対応する変換後のサンプル点までの遅延時間を、この変換後のサンプルに対応する時刻量子化遅延に加えることにより、遅延時間の影響を除去し、合成音声に現れるジッタを抑制することができる。
【図面の簡単な説明】
【図１】  本発明の第１の実施の形態となる音声合成装置の構成を示すブロック図である。
【図２】  本発明の第２の実施の形態となる音声合成装置の構成を示すブロック図である。
【図３】  本発明の第２の実施の形態における音声合成装置の動作を示すタイミングチャート図である。
【図４】  本発明の第３の実施の形態におけるサンプリング変換部の動作を示すタイミングチャート図である。
【図５】  本発明の第４の実施の形態となる音声合成装置の構成を示すブロック図である。
【図６】  本発明の第５の実施の形態における音声合成装置の動作を示すタイミングチャート図である。
【符号の説明】
１…入力テキスト、２…発音情報、３、５…有声音波形、４、６…無声音波形、７…合成音声波形、１１…入力部、２１、２１ａ、２１ｂ…有声音生成部、２２、２２ａ、２２ｂ…無声音生成部、３１、３１ｂ…有声音サンプリング変換部、３２、３２ｂ…無声音サンプリング変換部、４１…出力部、５１…タイミング制御部、５２…タイミング情報（有声音用）、５３…タイミング情報（無声音用）。
【図１】
0004747434.tif 000002
【図２】
0004747434.tif 000003
【図３】
0004747434.tif 000004
【図４】
0004747434.tif 000005
【図５】
0004747434.tif 000006
【図６】
0004747434.tif 000007