JP2008040372A - 音声合成装置 - Google Patents
音声合成装置 Download PDFInfo
- Publication number
- JP2008040372A JP2008040372A JP2006217722A JP2006217722A JP2008040372A JP 2008040372 A JP2008040372 A JP 2008040372A JP 2006217722 A JP2006217722 A JP 2006217722A JP 2006217722 A JP2006217722 A JP 2006217722A JP 2008040372 A JP2008040372 A JP 2008040372A
- Authority
- JP
- Japan
- Prior art keywords
- segment
- speech
- unit
- processing
- speech synthesis
- 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
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】 処理能力の異なる端末で同一の音声合成装置を利用可能とする。
【解決手段】 音声合成部2内に情報取得部3、制御部4を設ける。制御部4は情報取得部3で取得した端末処理能力、または入力された情報をもとに合成処理で利用する素片DBサイズを制限することにより、処理能力の低い端末上で音声合成処理を行う際に、素片探索における処理量を削減することが可能となる。
【選択図】 図1
【解決手段】 音声合成部2内に情報取得部3、制御部4を設ける。制御部4は情報取得部3で取得した端末処理能力、または入力された情報をもとに合成処理で利用する素片DBサイズを制限することにより、処理能力の低い端末上で音声合成処理を行う際に、素片探索における処理量を削減することが可能となる。
【選択図】 図1
Description
本発明は、大規模素片データベースから最適な素片系列を選択し、選択した素片を接続して合成音声を生成する、素片選択型音声合成技術に関する。
近年、高品質な合成音声を生成する技術として、大規模な素片データベースから最適な素片(音声波形の断片)を選択し合成を行う、「素片選択型音声合成方式」がある。
上記の素片選択型音声合成方式では、大量の候補素片の中から最適な素片を決定するため、計算量、使用するメモリ容量が大きくなるという欠点がある。このため、素片選択型音声合成方式を比較的処理能力の低い端末で実現する場合、音声合成処理による負荷が高く、システムのパフォーマンスを低下させてしまうという問題が生じる。
この問題を解決するための手段として、特開2001-100775号公報(特許文献1)に記載される技術がある。この技術では、素片データベース内の類似した1対の素片のうち片方を削除することにより素片データベース容量を削減している。
しかし、この方法では端末の処理能力に応じて複数の素片データベースを用意しなければならないため、一つの音声合成装置を、処理能力の異なる複数の端末で利用するような用途に用いることができない。
上記の問題を解決するために、本発明の第1の観点に係る音声合成装置は、音声合成処理を行う端末の処理能力を取得し、上記取得した処理能力をもとに、音声合成処理に利用する素片データベースのサイズを決定し、素片データベースを上記決定したサイズに限定して用いて合成音声を生成することを特徴とするものである。
また本発明の第2の観点に係る音声合成装置は、合成処理に利用するメモリ容量、合成処理を行う処理速度、あるいは合成音声の品質の範囲を表す情報を入力し、上記入力した値をもとに、音声合成処理に利用する素片データベースのサイズを決定し、素片データベースを上記決定したサイズに限定して用いて合成音声を生成することを特徴とするものである。
本発明によれば、端末の処理能力に応じて、または入力した値に応じて素片データベースのサイズを限定して利用するため、処理能力の異なる端末であっても、1種類の素片データベースで音声合成装置を利用することが可能となる。
以下、図面を参照して本発明の一実施例を説明する。図1は同実施例の音声合成装置の概略構成図である。図1に示す音声合成装置は、外部記憶媒体1を有する。外部記憶媒体1には、音声合成部2が格納されている。音声合成部2は、情報取得部3、制御部4、制御情報ファイル5、初期化処理部6、合成処理部7、素片DB8、辞書DB9を有する。
前記外部記憶媒体1は、端末10に接続されており、音声合成部2の演算処理は端末10において実行される。
端末10にはまた、入力装置11、出力装置12が接続されている。
次に、図1に示す音声合成装置の全体の動作を図2のフローチャートを参照して説明する。図1の音声合成装置においては、まず情報取得部3において端末処理能力情報取得処理が行われる(図2ステップS201)。
前記端末処理能力情報取得処理で取得する情報は、演算を行う端末10のCPU動作周波数、メモリ容量、メモリ転送速度のうちの1つ、あるいは複数である。
次に、制御部4において、取得した端末処理能力情報をもとに、利用素片DBサイズ制御処理を行う(図2ステップS202)。
制御部4は、前記取得した端末処理能力情報と、制御情報ファイル5に格納された情報を参照し、利用素片DBサイズを決定する。制御情報ファイル5の一例を図3に示す。仮に情報取得部3が取得した端末の処理能力情報が、CPU動作周波数とメモリ容量であり、それぞれ0.5[GHz]、512[MB]であったと仮定すると、制御部4は、制御情報ファイル5内の[INI]セクションのテーブル31を参照し、利用素片DBサイズは0.6となる。決定した利用素片DBサイズは変数Nuseに格納される。
次に、音声合成装置の初期化が終了しているか否かの判定を行う(図2ステップS203)。初期化が終了していない場合、初期化処理部6において音声合成装置の初期化処理を行う(図2ステップS204)。初期化処理では素片DBからヘッダ情報を端末のメモリに読み込む。素片DBのヘッダ情報の一例を図4(a)に示す。図4(a)の素片ヘッダ情報の1レコード41は、素変種別を表す素片コード、その素片コードの素片総数、各素片のインデックス情報へのポインタが格納されている。音声合成装置は、この素片ヘッダ情報から、ある素片コードのi番目の素片インデックス情報へアクセスすることができる。図4(b)に素片インデックス情報の一例を示す。素片インデックス情報の1レコード42は、その素片固有の素片ID、波形データの先頭アドレスが格納されている。音声合成装置は、この素片インデックス情報から実際の素片の波形データにアクセスすることができる。
音声合成装置初期化処理が終了したのち、または図2ステップS203で音声合成装置が初期化済みであると判定された場合、合成処理部7において、制御情報入力の有無を判定する(図2ステップS205)。制御情報が入力された場合、図2ステップS202に戻り、制御部4において利用素片DBサイズ制御処理を行う。
制御部4は、入力された制御情報と、制御情報ファイル5に格納された情報を参照し、利用素片DBサイズを決定する。仮に入力された情報が「音質:低」であったと仮定すると、制御部4は、制御情報ファイル5内の[MANUAL]セクションのテーブル32を参照し、利用素片DBサイズは0.3となる。決定した利用素片DBサイズは変数Nuseに格納される。
Nuseに端末処理能力に応じて利用素片DBサイズ制御処理(図2ステップS202)で決定した値が既に格納されている場合、Nuseの値は上書きされる。
制御情報の入力がないとき、音声合成装置は読み上げテキスト入力の有無を判定する(図2ステップS206)。読み上げテキストの入力がある場合、図5に示すフローチャートに従って合成処理(A)が行われる(図2ステップS207)。
合成処理(A)ではまず、入力テキスト種別の判定を行う(図5ステップS501)。入力テキストがかな漢字文字列である場合、合成処理部7は辞書DB9を参照し言語処理を行い、発音記号列を生成する(図5ステップS502)。
発音記号列が生成されると、または入力テキスト種別が発音記号列であった場合、合成処理部7は図6に示すフローチャートに従って最適素片系列決定処理(B)を行う(図5ステップS503)。
最適素片系列決定処理(B)ではまず、素片インデックス更新処理(図6ステップS601)を行う。素片インデックス更新処理(図6ステップS601)では、音声合成装置初期化処理(図2ステップS204)で端末のメモリに読み込んだ素片ヘッダ情報の素片総数と、利用素片DBサイズ制御処理(図2ステップS202)で決定した利用素片DBサイズから、実際に最適素片系列決定処理(B)(図5ステップS504)で素片探索に利用する素片数を決定する。
ここで、最適素片系列選択の具体例を図7を参照しながら説明する。ハジメに図7(a)を用いて、利用素片DBサイズを制限しないときの最適素片系列選択方法を、「なかの」という単語を合成する場合を例に説明する。
素片単位がCVであるとき、「なかの」という単語を合成するためには「ナ」、「カ」、「ノ」の3種類の素片が必要となる。各素片の総数がNナmax個、Nカmax個、Nノmax個であるとき、素片系列の組み合わせ総数CallはNナmax×Nカmax×Nノmax通りとなる。
最適素片選択処理では、このCall通りの組み合わせの中から、素片の音響特徴量などを考慮し、最も音のゆがみが少なく接続することのできる素片系列を決定する。実際にはこの最適素片系列の決定には、処理量削減のために動的計画法などのアルゴリズムが用いられる。
次に、利用素片DBサイズ制御処理(図2ステップS202)で決定した利用素片DBサイズをもとに、利用する素片DBサイズを制限して最適素片系列を決定する一例を、図7(b)を用いて説明する。
利用素片DBサイズの制限は、各素片の総数、Nナmax個、Nカmax個、Nノmax個に利用素片DBサイズ制御処理(図2ステップS202)で決定した利用素片DBサイズNuseを乗じることにより実現する。つまり、図7(b)のように、探索に利用する素片の数をNナ個、Nカ個、Nノ個とすると、Nナ=Nナmax×Nuse個、Nカ=Nカmax×Nuse個、Nノ=Nノmax×Nuse個とし、素片系列の組み合わせの総数をClimとするとClimをNナ×Nカ×Nノ通りとCallよりも少なくする。
このように、最適素片系列の候補となる組み合わせの総数を削減することにより、最適素片系列探索にかかる処理量を削減することが可能となる。
この際、素片DBサイズ削減による音質劣化を最小限にとどめるため、あらかじめ素片を優先順位の高いものから順に格納しておくことが望ましい。
次に合成処理(A)(図2ステップS207)では、波形合成処理を行う(図5ステップS504)。波形合成処理では、最適素片系列決定処理(B)(図5ステップS503)で決定した最適素片系列をもとに、素片DBから素片の波形データを取り出し、接続することにより合成音声を生成する。
最後に出力処理(図2ステップS208)により、生成した合成音声をスピーカなどの出力装置12から出力する。
以上、説明してきたように、本実施例によれば、音声合成処理を行う端末の処理能力に応じて、最適素片系列を探索する際の素片数を制限することにより、処理能力の低い端末でも付加の少ない音声合成処理を行うことが可能となる。
また、処理能力の異なる端末においても同一の音声合成装置を利用することが可能となる。
また、処理能力の異なる端末においても同一の音声合成装置を利用することが可能となる。
以上、本発明の実施例について説明したが、本発明はこれらの実施例に限定されるものではない。例えば、前記実施例では、音声合成部は外部記憶媒体に格納されているとしたが、とくに音声合成部の格納場所を限定するものではない。
例えば端末10内の記憶装置に格納しても良いし、ネットワークを経由した別記憶媒体上に格納しても良い。
また、音声合成部の格納方法について、前記実施例では音声合成部全体を同一の記憶媒体に格納しているが、とくに格納方法を限定するものではない。例えば素片DBのみを端末の記憶媒体上に格納しても良い。
また、前記実施例では、端末の処理能力情報をCPUの動作周波数とメモリ容量としたが、特にこの2つに限定するものではない。例えばメモリの転送速度を用いても良いし、CPU使用率を用いても良い。
また、前記実施例では、利用素片DBサイズを端末処理能力情報取得処理(図2ステップS201)後(自動処理)と、制御情報入力時(手動処理)の2箇所で決定するものとしたが、これに限るものではない。操作者の負担を軽減するために自動処理のみとしても良いし、自動的に音質が制御されてしまうのを避けるために手動処理のみとしても良い。
また、前記実施例では、素片の単位をCVとし、素片データを音声波形として格納しているとしたが、もちろんこれに限定するものではない。CVCや半音節などの単位を用いても良いし、素片データを音声波形ではなく音声波形の特徴量パラメータとして保持していても良い。要するに本発明はその要旨を逸脱しない範囲で種々変形して実施することができる。
1・・・外部記憶媒体、2・・・音声合成部、3・・・情報取得部、4・・・制御部、5・・・制御情報ファイル、6・・・初期化処理部、7・・・合成処理部、8・・・素片DB、9・・・辞書DB、10・・・端末、11・・・入力装置、12・・・出力装置。
Claims (10)
- 各素片単位ごとに複数の素片データを含む素片データベースと、該素片データベースから最適な素片系列を選択し、選択した素片を接続して合成音声を生成する音声合成手段を有する素片選択型音声合成装置において、
音声合成処理を行う端末の処理能力を取得する情報取得手段と、
前記取得した処理能力をもとに、音声合成処理に使用する素片データベースのサイズを決定する制御手段を有し、
前記音声合成手段は、素片データベースを上記決定したサイズに限定して用いて合成音声を生成することを特徴とする素片選択型音声合成装置。 - 各素片単位ごとに複数の素片データを含む素片データベースと、該素片データベースから最適な素片系列を選択し、選択した素片を接続して合成音声を生成する音声合成手段を有する素片選択型音声合成装置において、
音声合成処理に利用する素片データベースのサイズを直接的、あるいは間接的に指定する情報を入力する入力手段と、
前記入力された値をもとに、音声合成処理に使用する素片データベースのサイズを決定する制御手段を有し、
前記音声合成手段は、素片データベースを上記決定したサイズに限定して用いて合成音声を生成することを特徴とする素片選択型音声合成装置。 - 前記入力手段に入力する、音声合成処理に利用する素片データベースサイズを間接的に指定する情報は、合成処理に利用するメモリ容量、合成処理を行う処理速度、あるいは合成音声の品質であることを特徴とする請求項2に記載の音声合成装置。
- 前記情報取得手段は、音声合成処理を行う端末のCPUの動作周波数、メモリ容量、メモリ転送速度のうち1つ、または複数を端末の処理能力として取得することを特徴とする請求項1に記載の音声合成装置。
- 前記制御手段は、前記音声合成手段が用いる各素片単位ごとの素片数を限定することにより、前記音声合成手段が使用する素片データベースのサイズを限定することを特徴とする請求項1または請求項2に記載の音声合成装置。
- 前記情報取得手段、前記制御手段、前記音声合成手段が、外部記憶媒体に格納されたプログラムモジュールを、該外部記憶媒体が接続される端末の演算装置において実行することにより実現されることを特徴とする請求項1に記載の音声合成装置。
- 前記入力手段、前記制御手段、前記音声合成手段は、外部記憶媒体に格納されたプログラムモジュールを、該外部記憶媒体が接続される端末の演算装置において実行することにより実現されることを特徴とする請求項2に記載の音声合成装置。
- 前記外部記憶媒体は、不揮発メモリを用いた記憶媒体であることを特徴とする請求項4乃至請求項5に記載の音声合成装置
- 前記情報取得手段は、音声合成装置の起動時に実行されることを特徴とする請求項1に記載の音声合成装置。
- テキスト入力部と、演算部とを有するコンピュータによって読み取り可能な記憶媒体であって、
各素片単位ごとに複数の素片データを含む素片データベースと、音声合成制御プログラムとを保持し、
該素片データベースから最適な素片系列を選択し、選択した素片を接続して合成音声を生成する素片選択型音声合成を行なうために、
前記音声合成制御プログラムは、前記演算部に、
前記コンピュータの処理能力を取得する第1のステップと、
前記取得した処理能力をもとに、音声合成処理に使用する素片データベースのサイズを決定する第2のステップと、
素片データベースを上記決定したサイズに限定して用いて合成音声を生成する第3のステップとを実行させることを特徴とする記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006217722A JP2008040372A (ja) | 2006-08-10 | 2006-08-10 | 音声合成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006217722A JP2008040372A (ja) | 2006-08-10 | 2006-08-10 | 音声合成装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008040372A true JP2008040372A (ja) | 2008-02-21 |
Family
ID=39175406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006217722A Pending JP2008040372A (ja) | 2006-08-10 | 2006-08-10 | 音声合成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008040372A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013190595A (ja) * | 2012-03-14 | 2013-09-26 | Yamaha Corp | 歌唱合成用シーケンスデータ編集装置 |
-
2006
- 2006-08-10 JP JP2006217722A patent/JP2008040372A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013190595A (ja) * | 2012-03-14 | 2013-09-26 | Yamaha Corp | 歌唱合成用シーケンスデータ編集装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5554304B2 (ja) | オートマトン決定化方法、オートマトン決定化装置およびオートマトン決定化プログラム | |
CN109389968B (zh) | 基于双音节混搭的波形拼接方法、装置、设备及存储介质 | |
CN110534113A (zh) | 音频数据脱敏方法、装置、设备和存储介质 | |
US8560558B2 (en) | Computer product, search apparatus, management apparatus, search method, and management method | |
CN110211562B (zh) | 一种语音合成的方法、电子设备及可读存储介质 | |
CN107943727B (zh) | 一种高效dma控制器 | |
US9577666B2 (en) | Method and system | |
US8688947B1 (en) | Aligned data access | |
JP2010009282A (ja) | 命令トレース生成プログラム、命令トレース生成装置および命令トレース生成方法 | |
JP2008040372A (ja) | 音声合成装置 | |
JP2009116395A (ja) | データ形式変換装置及びデータ形式変換プログラム及びデータ形式変換方法 | |
JP5477936B2 (ja) | 文字入力装置、文字・文字種の選択方法 | |
CN106649364A (zh) | 一种表格目标列定位方法及装置 | |
US10318483B2 (en) | Control method and control device | |
CN113031952B (zh) | 深度学习模型的执行代码的确定方法、装置及存储介质 | |
US9361404B2 (en) | Offline radix tree compression with key sequence skip | |
JP4741208B2 (ja) | 音声合成用読み上げテキストデータ選択プログラムおよび音声合成用読み上げテキストデータ選択装置 | |
JP2002032357A (ja) | Fftのためのインプレースメモリ管理 | |
US8666925B1 (en) | Method for parallel computation of a finite state machine | |
JP2007334144A (ja) | 音声合成方法、音声合成装置及び音声合成プログラム | |
JP2009301511A (ja) | 索引情報作成装置、索引情報作成方法及びプログラム | |
JP6511874B2 (ja) | コンピュータプログラム、検索装置及び検索方法 | |
JP2006065532A (ja) | 仮名漢字予測変換装置 | |
JP2004334848A (ja) | 2レベル形態規則をコンパイルするための方法及びその装置 | |
JP4811909B2 (ja) | アドレス生成回路およびデータ記憶装置 |