トップ :: G 物理学 :: G10 楽器;音響




【発明の名称】 音声データ圧縮・解凍装置及び方法
【発明者】 【氏名】松本 智佳子

【要約】 【課題】波形データの圧縮方法を変化させて解凍時間の短縮化を図ることで、音声合成をリアルタイムに実現することができる音声データ圧縮・解凍装置及び方法を提供する。

【解決手段】波形データを既存の波形辞書を照会して抽出し、当該波形データについて音声合成に用いられた使用頻度を累積して保存し、使用頻度に応じて段階的に圧縮方法を変更して波形データを圧縮して波形辞書に保存するとともに、圧縮された波形データ各々についての圧縮方法に関する情報を保存し、圧縮された波形データは圧縮方法に関する情報に基づいて解凍する。波形データに関する使用頻度について一又は複数個の所定のしきい値を定め、しきい値で区切られた複数個の使用頻度範囲において、使用頻度が小さい使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮する。
【特許請求の範囲】
【請求項1】 波形データを既存の波形辞書を照会して抽出する波形データ照会・抽出部と、抽出された前記波形データについて音声合成に用いられた使用頻度を累積して保存する頻度情報保存部と、前記使用頻度に応じて段階的に圧縮方法を変更して前記波形データを圧縮し、圧縮された前記波形データを前記波形辞書に保存するとともに、圧縮された前記波形データ各々についての前記圧縮方法に関する情報を保存する頻度別圧縮データ生成・保存部と、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍する波形データ解凍部とを含み、前記波形データに関する前記使用頻度について一又は複数個の所定のしきい値を定め、前記しきい値で区切られた複数個の使用頻度範囲において、前記使用頻度が小さい前記使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする音声データ圧縮・解凍装置。
【請求項2】 前記使用頻度が大きい前記使用頻度範囲に属している前記波形データについては、前記波形データ解凍部において解凍された前記波形データを一時記憶領域に保存し、解凍された前記波形データを用いて音声合成する請求項1記載の音声データ圧縮・解凍装置。
【請求項3】 前記使用頻度にかかわらず、前記波形データ解凍部において解凍された前記波形データを一時記憶領域に保存し、前記一時記憶領域に新たな前記解凍された前記波形データを追加保存できなくなった場合には、前記使用頻度が小さい前記波形データから順に前記一時記憶領域から削除する請求項1記載の音声データ圧縮・解凍装置。
【請求項4】 請求項1記載の音声データ圧縮・解凍装置を用いて圧縮された前記波形データについて、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍することを特徴とする音声データ解凍装置。
【請求項5】 前記使用頻度が大きい前記使用頻度範囲に属している前記波形データについては、前記波形データ解凍部において解凍された前記波形データを一時記憶領域に保存し、解凍された前記波形データを用いて音声合成する請求項4記載の音声データ解凍装置。
【請求項6】 前記使用頻度にかかわらず、前記波形データ解凍部において解凍された前記波形データを一時記憶領域に保存し、前記一時記憶領域に新たな前記解凍された前記波形データを追加保存できなくなった場合には、前記使用頻度が小さい前記波形データから順に前記一時記憶領域から削除する請求項4記載の音声データ解凍装置。
【請求項7】 波形データを既存の波形辞書を照会して抽出する工程と、抽出された前記波形データについて音声合成に用いられた使用頻度を累積して保存する工程と、前記使用頻度に応じて段階的に圧縮方法を変更して前記波形データを圧縮し、圧縮された前記波形データを前記波形辞書に保存するとともに、圧縮された前記波形データ各々についての前記圧縮方法に関する情報を保存する工程と、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍する工程とを含み、前記波形データに関する前記使用頻度について一又は複数個の所定のしきい値を定め、前記しきい値で区切られた複数個の使用頻度範囲において、前記使用頻度が小さい前記使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする音声データ圧縮・解凍方法。
【請求項8】 請求項7記載の音声データ圧縮・解凍方法を用いて圧縮された前記波形データについて、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍することを特徴とする音声データ解凍方法。
【請求項9】 波形データを既存の波形辞書を照会して抽出するステップと、抽出された前記波形データについて音声合成に用いられた使用頻度を累積して保存するステップと、前記使用頻度に応じて段階的に圧縮方法を変更して前記波形データを圧縮し、圧縮された前記波形データを前記波形辞書に保存するとともに、圧縮された前記波形データ各々についての前記圧縮方法に関する情報を保存するステップと、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍するステップとを含み、前記波形データに関する前記使用頻度について一又は複数個の所定のしきい値を定め、前記しきい値で区切られた複数個の使用頻度範囲において、前記使用頻度が小さい前記使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする音声データ圧縮・解凍方法を実現するコンピュータに実行させるプログラム。
【請求項10】 請求項9記載の音声データ圧縮・解凍方法を実現するコンピュータに実行させるプログラムを用いて圧縮された前記波形データについて、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍することを特徴とする音声データ解凍方法を実現するコンピュータに実行させるプログラム。
【発明の詳細な説明】【0001】
【発明の属する技術分野】本発明は、音声合成に使用される音声波形データからなる波形辞書データを圧縮して圧縮辞書を作成する圧縮装置及び圧縮されたデータを解凍する解凍装置に関する。
【0002】
【従来の技術】昨今の急速なコンピュータ技術の発達によって、従来特定分野に利用が限定されてきた音声合成技術が、様々な分野で適用できるようになってきた。それに伴い、音声合成を用いた各種のアプリケーションが盛んに開発され始めている。
【0003】音声合成を用いたアプリケーションを使いやすくするためには、高品質な音声合成を実現することが必須であり、そのためには比較的大容量のデータである音の波形データを大量に準備しておく必要がある。したがって、かかる大容量の波形データを効率よく圧縮・解凍する手段が、技術上の重要なポイントとなっている。
【0004】例えば、音の波形データを圧縮する方法としては、圧縮率の高くなる順にμ−law、ADPCM、CELP等、様々な手法が考えられており、一般には圧縮率が高くなればなるほど音質の劣化が進む傾向にある。
【0005】図1には、従来から良く用いられている圧縮・解凍装置の原理図を示している。図1において、11は波形データ入力部を、12は波形データ圧縮・保存部を、13は波形辞書を、14はテキストデータ入力部を、15は波形辞書照会・抽出部を、16は波形データ解凍部を、17は合成音声出力部を、それぞれ示す。
【0006】図1では、波形データのみが圧縮・解凍の対象となっている。したがって、波形データ入力部11から波形データが入力され、波形データ圧縮・保存部12では入力された波形データについて圧縮処理を行うとともに、圧縮された波形データとして波形辞書13に保存される。
【0007】そして、テキストデータ入力部14からテキストデータが入力され、波形辞書照会・抽出部15において波形辞書13を照会して、当該テキストデータに合致する圧縮された波形データを抽出する。そして、音声合成再生時に波形データ解凍部16において抽出された波形データを解凍して、合成音声出力部17において再生することになる。
【0008】
【発明が解決しようとする課題】しかし、かかる圧縮・解凍方法では、圧縮率が高い高品質な波形データになればなるほど、その解凍時に計算機資源を大量に消費し、解凍のみに相当の時間を要することから音声合成をリアルタイムに行うことができないという問題点があった。
【0009】また、圧縮装置によっては、音素単位での圧縮を行うことができず、音節や文単位でしか圧縮波形データを生成することができないものも存在する。したがって、音声合成時に必要となる波形データが、波形データの圧縮単位よりも小さなデータである場合には、音声合成には本来不要である部分まで解凍する必要が生じることから、必要以上に解凍に時間を要する結果となってしまうという問題点もあった。
【0010】本発明では、上記問題点を解消するために、波形データの圧縮方法を変化させて解凍時間の短縮化を図ることで、音声合成をリアルタイムに実現することができる音声データ圧縮・解凍装置及び方法を提供することを目的とする。
【0011】
【課題を解決するための手段】上記目的を達成するために本発明にかかる音声データ圧縮・解凍装置は、波形データを既存の波形辞書を照会して抽出する波形データ照会・抽出部と、抽出された波形データについて音声合成に用いられた使用頻度を累積して保存する頻度情報保存部と、使用頻度に応じて段階的に圧縮方法を変更して波形データを圧縮し、圧縮された波形データを波形辞書に保存するとともに、圧縮された波形データ各々についての圧縮方法に関する情報を保存する頻度別圧縮データ生成・保存部と、波形辞書に保存されている圧縮された波形データを、圧縮方法に関する情報に基づいて解凍する波形データ解凍部とを含み、波形データに関する使用頻度について一又は複数個の所定のしきい値を定め、しきい値で区切られた複数個の使用頻度範囲において、使用頻度が小さい使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする。
【0012】かかる構成により、波形データの使用頻度が高いほど波形データの圧縮率が低くなることから、波形データの使用頻度が高いほど波形データの解凍時間を短くすることができ、実質的に音声合成時のリアルタイム性を確保することが可能となる。
【0013】また、本発明にかかる音声データ圧縮・解凍装置は、使用頻度が大きい使用頻度範囲に属している波形データについては、波形データ解凍部において解凍された波形データを一時記憶領域に保存し、解凍された波形データを用いて音声合成することが好ましい。良く用いられる波形データについては解凍された波形データを直接音声合成に用いることができ、解凍時間そのものを省略することができることから、より短時間で音声合成を行うことが可能となるからである。
【0014】また、本発明にかかる音声データ圧縮・解凍装置は、使用頻度にかかわらず、波形データ解凍部において解凍された波形データを一時記憶領域に保存し、一時記憶領域に新たな解凍された波形データを追加保存できなくなった場合には、使用頻度が小さい波形データから順に一時記憶領域から削除することが好ましい。使用開始時においては、あらゆる波形データについて短時間で音声合成ができるとともに、使用するにつれて使用頻度の高い波形データのみが保存されるようになるからである。
【0015】次に、上記目的を達成するために本発明にかかる音声データ解凍装置は、上述した音声データ圧縮・解凍装置を用いて圧縮された波形データについて、波形辞書に保存されている圧縮された波形データを、圧縮方法に関する情報に基づいて解凍することを特徴とする。
【0016】かかる構成により、波形データの使用頻度が高いほど波形データの解凍時間を短くすることができ、実質的に音声合成時のリアルタイム性を確保することが可能となる。
【0017】また、本発明にかかる音声データ解凍装置は、使用頻度が大きい使用頻度範囲に属している波形データについては、波形データ解凍部において解凍された波形データを一時記憶領域に保存し、解凍された波形データを用いて音声合成することが好ましい。良く用いられる波形データについては解凍された波形データを直接音声合成に用いることができ、解凍時間そのものを省略することができることから、より短時間で音声合成を行うことが可能となるからである。
【0018】また、本発明にかかる音声データ解凍装置は、使用頻度にかかわらず、波形データ解凍部において解凍された波形データを一時記憶領域に保存し、一時記憶領域に新たな解凍された波形データを追加保存できなくなった場合には、使用頻度が小さい波形データから順に一時記憶領域から削除することが好ましい。使用開始時においては、あらゆる波形データについて短時間で音声合成ができるとともに、使用するにつれて使用頻度の高い波形データのみが保存されるようになるからである。
【0019】また、本発明は、上記のような音声データ圧縮・解凍装置の機能をコンピュータの処理ステップとして実行するソフトウェアを特徴とするものであり、具体的には、波形データを既存の波形辞書を照会して抽出する工程と、抽出された波形データについて音声合成に用いられた使用頻度を累積して保存する工程と、使用頻度に応じて段階的に圧縮方法を変更して波形データを圧縮し、圧縮された波形データを波形辞書に保存するとともに、圧縮された波形データ各々についての圧縮方法に関する情報を保存する工程と、波形辞書に保存されている圧縮された波形データを、圧縮方法に関する情報に基づいて解凍する工程とを含み、波形データに関する使用頻度について一又は複数個の所定のしきい値を定め、しきい値で区切られた複数個の使用頻度範囲において、使用頻度が小さい使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮する音声データ圧縮・解凍方法並びにそのような工程を具現化するプログラムであることを特徴とする。
【0020】かかる構成により、コンピュータ上へ当該プログラムをロードさせ実行することで、波形データの使用頻度が高いほど波形データの圧縮率が低くなることから、波形データの使用頻度が高いほど波形データの解凍時間を短くすることができ、実質的に音声合成時のリアルタイム性を確保することができる音声データ圧縮・解凍装置を実現することが可能となる。
【0021】また、本発明は、上記のような音声データ解凍装置の機能をコンピュータの処理ステップとして実行するソフトウェアを特徴とするものであり、具体的には、上述した音声データ圧縮・解凍方法を用いて圧縮された波形データについて、波形辞書に保存されている圧縮された波形データを、圧縮方法に関する情報に基づいて解凍する音声データ解凍方法並びにそのような工程を具現化するプログラムであることを特徴とする。
【0022】かかる構成により、コンピュータ上へ当該プログラムをロードさせ実行することで、波形データの使用頻度が高いほど波形データの圧縮率が低くなることから、波形データの使用頻度が高いほど波形データの解凍時間を短くすることができ、実質的に音声合成時のリアルタイム性を確保することができる音声データ解凍装置を実現することが可能となる。
【0023】
【発明の実施の形態】以下、本発明の実施の形態にかかる音声データ圧縮・解凍装置について、図面を参照しながら説明する。図2は本発明の実施の形態にかかる音声データ圧縮・解凍装置の原理構成図を示す。図2において、21は波形データ入力・保存部を、22は波形データ照会・抽出部を、23は頻度情報保存部を、24は頻度別圧縮データ生成・保存部を、25は圧縮情報保存部を、26は一時記憶部を、それぞれ示す。なお、図1と同じ符号を付する部分については従来の音声データ圧縮・解凍装置と同様の機能を有するものとして特に詳細な説明は省略する。
【0024】まず、図2において、波形データは波形データ入力・保存部21を介して波形辞書13に入力される。ここでは従来の場合とは異なり、特に圧縮された波形データである必要はない。
【0025】そして、テキストデータ入力部14からテキストデータが入力されたら、波形データ照会・抽出部22において波形辞書13を照会し、該当する波形データを音素単位で抽出する。なお、本実施の形態においては音素単位に抽出する場合について説明するが、抽出単位は特にこれに限定されるものではなく、例えばコーパス単位や音節単位、あるいは呼気段落単位であっても良い。
【0026】そして、頻度情報保存部23では、波形データ照会・抽出部22において抽出された波形データが波形辞書13のどの音素を使用しているのかを常時監視し、音素ラベルごとに使用頻度の度合を指標化する。本実施の形態においては、音素ラベルごとに使用回数を累積している。かかる使用回数の累積結果は音素ラベルごとに使用頻度数として保存することになる。
【0027】次に、頻度別圧縮データ生成・保存部24では、頻度情報保存部23に保存されている音素ラベルごとの使用頻度数に応じて、圧縮方法を段階的に変更することによって、複数方法を用いた圧縮波形データを生成する。すなわち、使用頻度数が非常に高い音素については、波形データを圧縮して解凍する頻度も高く、特にリアルタイム再生を要求されるような場合においては解凍時間を無視することはできない。そこで、解凍時間自体が生じないように圧縮を行わないようにする。また、使用頻度が高い順に、解凍時間をより短縮できるように圧縮率の低い圧縮方法を用いて圧縮するようにする。
【0028】なお、本実施の形態においては、圧縮情報や頻度情報を波形辞書とは別の記憶部に保存しているが、特に保存形態を限定するものではなく、圧縮情報等を波形辞書に一緒に保存するものであっても良い。
【0029】このように使用頻度に応じて段階的に圧縮方法を変えることによって、使用頻度の高い音素については比較的短時間で音声合成することができ、使用頻度の低い音素については高い圧縮率で圧縮することでディスク容量等の計算機資源の節約を図ることができる。
【0030】圧縮された波形データ自体は、他の波形データと同様に波形辞書13に保存され、各音素ごとにどのような圧縮方法をしたか等に関する圧縮方法に関する情報については、圧縮された波形データとのリンク情報とともに圧縮情報保存部25に保存される。
【0031】そして、波形データ照会・抽出部22では、波形辞書13だけではなく、圧縮情報保存部25をも照会して、波形辞書13から抽出された波形データを解凍するための圧縮情報を入手することになる。
【0032】次に、抽出された波形データ又は圧縮された波形データは波形データ解凍部16に送られ、抽出された波形データが圧縮された波形データである場合には、圧縮情報保存部25から得た圧縮情報に基づいた適切な方法により解凍する。一方、抽出された波形データが圧縮された波形データでない場合には、何ら解凍処理をする必要はない。
【0033】そして、頻度情報保存部23を照会して、使用頻度が高い波形データについては、解凍後の波形データを一時記憶部26に保存する。
【0034】これは、波形データ照会・抽出部22において、テキストデータ入力部14からテキストデータが入力されてきた場合に、波形辞書13及び圧縮情報保存部25を照会する前に一時記憶部26を照会することで、使用頻度の高い波形データについての解凍処理を省略するためのものである。使用頻度が高いかどうかについては、所定のしきい値より高いか否かによって判定することができる。
【0035】すなわち、入力されたテキストデータに該当する波形データが一時記憶部26に保存されている場合には、特に圧縮データを抽出して解凍することなく、直接一時記憶部26に保存されている解凍後の波形データを用いて音声合成することになる。こうすることで余分な解凍時間が発生することがなく、短時間で合成音声を出力することができ、リアルタイム再生を行うことも可能となる。
【0036】最後に、解凍された波形データ又は抽出された波形データに基づいて合成音声を生成し、生成された合成音声を合成音声出力部17から出力することになる。合成音声出力部17としては、一般にはスピーカ等の音声出力装置が考えられるが、その種類等について特に限定されるものではない。
【0037】以上説明した処理について、処理の流れに着目して説明する。まず、図3に頻度情報作成時の処理の流れ図を示す。なお、ここでは使用頻度の工程を判断するために高低2つのしきい値を判断基準として準備し、それに応じて3通りの圧縮形態を使い分ける構成について説明する。
【0038】まず図3において、テキストデータを入力して(ステップS301)、入力されたテキストデータの先頭から、波形辞書を照会する(ステップS302)。
【0039】そして、波形辞書に一致する波形データが存在すれば当該波形データを抽出し(ステップS304:Yes)、当該波形データの使用頻度数を累積するとともに保存する(ステップS305)。波形辞書に一致する波形データが存在しなければ(ステップS304:No)、特に処理をすることなく、次のテキストデータについて同様に波形辞書を照会する(ステップS306)。
【0040】最後に全てのテキストデータについて波形辞書照会処理が完了したら(ステップS303:Yes)、すべての処理を終了し、使用頻度数が残されることになる。
【0041】次に、図4に圧縮データ作成時の処理の流れ図を示す。まず、圧縮の対象となる波形データを取得する(ステップS401)。そして、保存されている使用頻度を取得する(ステップS402)。
【0042】次に、使用頻度に応じて、圧縮方法を段階的に変更する(ステップS403〜S407)。すなわち、使用頻度数が所定の第1のしきい値を超えている場合には(ステップS403:Yes)、使用頻度が高いと判断され、圧縮自体を行わない(ステップS405)。
【0043】また、使用頻度数が所定の第2のしきい値よりも下回っている場合には(ステップS404:Yes)、使用頻度が低いと判断され、圧縮率の比較的高い圧縮方法を用いて圧縮する(ステップS406)。
【0044】さらに、使用頻度数が第1のしきい値と第2のしきい値との間である場合には、使用頻度が中位であると判断され、圧縮率の比較的低い圧縮方法を用いて圧縮する(ステップS407)。
【0045】そして、圧縮された波形データを波形辞書に保存し(ステップS408)、各々どのような圧縮方法をしたか等に関する圧縮方法に関する情報についても、圧縮された波形データとのリンク情報とともに圧縮情報として保存する(ステップS409)。
【0046】そして、図5に音声合成時の処理の流れ図を示す。テキストデータが入力されると(ステップS501)、まず入力されたテキストデータについて、音素ごとに一時記憶領域を照会する(ステップS502)。一時記憶領域に一致する波形データがある場合には(ステップS503:Yes)、一時記憶領域に保存されている波形データを用いて音声合成する(ステップS509)。
【0047】一時記憶領域に一致する波形データがない場合(ステップS503:No)、及び一時記憶領域に一致する波形データがない残りのテキストデータについては、波形辞書及び圧縮情報を照会する(ステップS504)。そして、抽出された波形データが圧縮された波形データか否かを判断し(ステップS505)、圧縮されていない波形データである場合には(ステップS505:No)、解凍する必要がないので解凍処理は行わずに、当該波形データをそのまま用いて音声合成する(ステップS509)。
【0048】抽出された波形データが圧縮された波形データである場合には(ステップS505:Yes)、圧縮情報に基づいた圧縮方法に対応した解凍方法により解凍する(ステップS506)。
【0049】そして、使用頻度数が所定の第1のしきい値を超えている場合には(ステップS507:Yes)、解凍後の波形データを一時記憶領域に保存する(ステップS508)。
【0050】最後に、解凍された波形データ又は波形データそのものに基づいて合成音声を生成し(ステップS509)、生成された合成音声を出力する(ステップS510)。
【0051】より具体的には、以下のようになる。図6は本発明にかかる音声データ圧縮・解凍装置をコーパスベースの音声合成システムに適用した場合の構成図である。まず、図6において、波形データは波形データ入力装置61を介して波形辞書62に入力される。ここで入力されるデータとしては圧縮された波形データであっても良いし、圧縮されない波形データそのものであっても良い。
【0052】そして、テキストデータ入力装置61からテキストデータが入力されたら、波形データ照会・抽出装置63において波形辞書62を照会し、該当する波形データを音素単位で抽出する。
【0053】また、頻度情報累積装置64では、抽出された波形データについて波形辞書62のどの音素を使用しているのか常時監視し、音素ラベルごとに使用頻度を累積する。かかる累積結果は音素ラベルごとに頻度情報累積装置64に保存される。なお、使用頻度を頻度情報累積装置64に保存するタイミングは辞書作成時のみならず、音声合成時にその都度更新するものであっても良い。より実際の使用状況に応じた使用頻度に基づいて波形データの圧縮率を定めることができるからである。
【0054】また、使用頻度の累積結果は、波形データの使用用途別に累積するものであっても良い。こうすることで、特定の使用用途において使用頻度の高い波形データを確実に短時間で解凍することができることから、より効率的にリアルタイム音声合成を行うことが可能となる。
【0055】次に、頻度別圧縮データ生成装置65では、頻度情報累積装置64に保存されている音素ラベルごとの使用頻度に応じて、圧縮方法を段階的に変更することによって、複数方法を用いた圧縮波形データを生成する。すなわち、使用頻度が非常に高いと判断される音素については、波形データを圧縮して解凍する頻度も高く、特にリアルタイム再生を要求されるような場合においては解凍時間を無視することはできない。そこで、解凍時間自体が生じないように圧縮を行わないようにする。また、使用頻度が高い順に、解凍時間をより短縮できるように圧縮率の低い圧縮方法を用いて圧縮するようにする。
【0056】このように使用頻度に応じて段階的に圧縮方法を変えることによって、使用頻度の高い音素については比較的短時間で音声合成することができ、使用頻度の低い音素については高い圧縮率で圧縮することでディスク容量等の計算機資源の節約を図ることができる。
【0057】具体的には、例えば使用頻度の高い音素についてはLHA等のようなロスレス圧縮方式を、次に使用頻度の高い音素についてはμ−LAWを、その次はADPCMを、最も頻度の低い音素については圧縮率がさらに高いCELPを用いて圧縮する。使用頻度の高低の判断には、使用頻度数に基づいたしきい値による判断が一般的である。ただし、判断方法は特にこれに限定されるものではない。
【0058】圧縮された波形データ自体は、他の波形データと同様に波形辞書62に保存され、各音素ごとにどのような圧縮方法をしたか等に関する圧縮方法に関する情報については、圧縮された波形データとのリンク情報とともに圧縮情報記録装置66に保存される。
【0059】そして、波形データ照会・抽出装置63では、波形辞書62だけではなく、圧縮情報記録装置66をも同時に照会することで、波形辞書62から抽出された波形データを解凍するための圧縮情報を入手することになる。
【0060】圧縮情報記録装置66における圧縮情報の記録データ構造としては、例えば図7に示すような構造が考えられる。図7では、1音素につき8ビットの情報領域を割り当てた例を示している。このように、圧縮情報は一時記憶領域68に保存されているか否かのフラグを有する場合には、ステップS500番台の処理が、まず圧縮情報を参照する処理になり、フラグが‘1’なら一時記憶領域68にアクセスするようにする。
【0061】図7において、まず1ビット目は、当該音素に対応する波形データが一時記憶領域68内に保存されているか否かを示すフラグを示す。例えば‘1’の場合には一時記憶領域68に保存されていることを示し、‘0’の場合には一時記憶領域68に保存されていないことを示すものである。
【0062】次に2ビット目から5ビット目は、一時記憶領域68に当該音素に対応する波形データが保存されている場合の相対アドレスを示している。実際には、実アドレスの変換テーブルを別途有し、当該相対アドレスに基づいて変換処理を行うことで実アドレスを求めることになるが、ここでは特に説明を省略する。
【0063】最後に、6ビット目から8ビット目は、圧縮方法を示すビット情報を示しており、例えば図8に示すように各ビット情報に基づいて圧縮方法を特定することができるようになっている。例えば、‘000’は圧縮されていない波形データそのものを示し、‘001’はLHA等のロスレス圧縮を示す等のように、ビット情報と圧縮方法を1対1対応で特定する。
【0064】なお、情報領域としては、1音素につき8ビットである必然性はなく、一時記憶領域68に保存されているか否か、保存されている場合の保存アドレス、圧縮方法等が特定できるデータ構造であれば、特に限定されるものではない。
【0065】次に、抽出された波形データ又は圧縮された波形データは波形データ解凍装置67に送られ、抽出された波形データが圧縮された波形データである場合には、圧縮情報記録装置66から得た圧縮情報に基づいた適切な解凍方法により解凍することになる。一方、抽出された波形データが圧縮された波形データでない場合には、何ら解凍処理をする必要はない。
【0066】そして、頻度情報累積装置64を照会して、使用頻度が高いと判断される波形データについては、解凍後の波形データを一時記憶領域68に保存する。
【0067】これは、波形データ照会・抽出装置63において、テキストデータ入力装置69からテキストデータが入力されてきた場合に、波形辞書62及び圧縮情報記録装置66を照会する前に、当該一時記憶領域68を照会することで、使用頻度の高い波形データについては圧縮された波形データではなく解凍されている波形データを直接用いることが可能となる。
【0068】すなわち、入力されたテキストデータに該当する波形データが一時記憶領域68に保存されている場合には、特に圧縮データを抽出して解凍することなく、直接一時記憶領域68に保存されている解凍後の波形データを用いて音声合成することになる。こうすることで余分な解凍時間が発生することがなく、短時間で合成音声を出力することができ、リアルタイム再生を行うことも可能となる。
【0069】最後に、解凍された波形データ又は抽出された波形データに基づいて合成音声を生成し、生成された合成音声を合成音声出力装置70から出力することになる。合成音声出力装置70としては、一般にはスピーカ等の音声出力装置が考えられるが、その種類等について特に限定されるものではない。
【0070】以上のように本実施の形態によれば、波形辞書に波形データを登録する場合において、任意の単位ごとの使用頻度に基づいて波形データの圧縮を行うことで、使用頻度の高いものについては圧縮率の低い、すなわち解凍時間の短い圧縮方法で圧縮し、使用頻度の低いものについては圧縮率の高い、すなわち解凍時間は長いがデータ容量の小さくなる圧縮方法で圧縮できることから、リアルタイム性を要求される場面における解凍時間の短縮化と、計算機資源の有効活用とを、高い次元でバランスをとることができる音声合成装置を提供することが可能となる。
【0071】また、一時記憶領域を設けることで、使用頻度の高い波形データについては、解凍する必要がなくなることから、より解凍時間の短縮化を図ることができ、リアルタイム再生に対応することが可能となる。
【0072】なお、本発明の実施の形態にかかる音声データ圧縮・解凍装置を実現するプログラムを実行するためのコンピュータ環境において、プログラム自体は、図9に示すように、CD−ROM92−1やフロッピー(登録商標)ディスク92−2等の可搬型記録媒体92だけでなく、通信回線の先に備えられた他の記憶装置91や、コンピュータ93のハードディスクやRAM等の記録媒体94のいずれに記録される形態であっても良く、プログラム実行時には、プログラムはローディングされ、主メモリ上で実行される。
【0073】また、本発明の実施の形態にかかる音声データ圧縮・解凍装置により生成された圧縮データ等についても、図9に示すように、CD−ROM92−1やフロッピーディスク92−2等の可搬型記録媒体92だけでなく、通信回線の先に備えられた他の記憶装置91や、コンピュータ93のハードディスクやRAM等の記録媒体94のいずれで記録される形態であっても良く、例えば本発明にかかる音声データ圧縮・解凍装置を利用する際にコンピュータ93により読み取られる。
【0074】(付記1) 波形データを既存の波形辞書を照会して抽出する波形データ照会・抽出部と、抽出された前記波形データについて音声合成に用いられた使用頻度を累積して保存する頻度情報保存部と、前記使用頻度に応じて段階的に圧縮方法を変更して前記波形データを圧縮し、圧縮された前記波形データを前記波形辞書に保存するとともに、圧縮された前記波形データ各々についての前記圧縮方法に関する情報を保存する頻度別圧縮データ生成・保存部と、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍する波形データ解凍部とを含み、前記波形データに関する前記使用頻度について一又は複数個の所定のしきい値を定め、前記しきい値で区切られた複数個の使用頻度範囲において、前記使用頻度が小さい前記使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする音声データ圧縮・解凍装置。(1)
(付記2) 前記使用頻度が大きい前記使用頻度範囲に属している前記波形データについては、前記波形データ解凍部において解凍された前記波形データを一時記憶領域に保存し、解凍された前記波形データを用いて音声合成する付記1記載の音声データ圧縮・解凍装置。(2)
(付記3) 前記一時記憶領域に新たな解凍された前記波形データを追加保存できなくなった場合には、前記使用頻度が小さい前記波形データから順に前記一時記憶領域から削除する付記2記載の音声データ圧縮・解凍装置。
【0075】(付記4) 前記使用頻度にかかわらず、前記波形データ解凍部において解凍された前記波形データを一時記憶領域に保存し、前記一時記憶領域に新たな前記解凍された前記波形データを追加保存できなくなった場合には、前記使用頻度が小さい前記波形データから順に前記一時記憶領域から削除する付記1記載の音声データ圧縮・解凍装置。(3)
(付記5) 前記使用頻度を使用用途別に累積する付記1から4のいずれか一項に記載の音声データ圧縮・解凍装置。
【0076】(付記6) 波形データを既存の波形辞書を照会して抽出する波形データ照会・抽出部と、抽出された前記波形データについて音声合成に用いられた使用頻度を累積して保存する頻度情報保存部と、前記使用頻度に応じて段階的に圧縮方法を変更して前記波形データを圧縮し、圧縮された前記波形データを前記波形辞書に保存するとともに、圧縮された前記波形データ各々についての前記圧縮方法に関する情報を保存する頻度別圧縮データ生成・保存部とを含み、前記波形データに関する前記使用頻度について複数個の所定のしきい値を定め、前記しきい値で区切られた複数個の使用頻度範囲において、前記使用頻度が小さい前記使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする音声データ圧縮装置。
【0077】(付記7) 付記1記載の音声データ圧縮・解凍装置を用いて圧縮された前記波形データについて、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍することを特徴とする音声データ解凍装置。(4)
(付記8) 前記使用頻度が大きい前記使用頻度範囲に属している前記波形データについては、前記波形データ解凍部において解凍された前記波形データを一時記憶領域に保存し、解凍された前記波形データを用いて音声合成する付記7記載の音声データ解凍装置。(5)
(付記9) 前記一時記憶領域に新たな解凍された前記波形データを追加保存できなくなった場合には、前記使用頻度が小さい前記波形データから順に前記一時記憶領域から削除する付記8記載の音声データ解凍装置。
【0078】(付記10) 前記使用頻度にかかわらず、前記波形データ解凍部において解凍された前記波形データを一時記憶領域に保存し、前記一時記憶領域に新たな前記解凍された前記波形データを追加保存できなくなった場合には、前記使用頻度が小さい前記波形データから順に前記一時記憶領域から削除する付記7記載の音声データ解凍装置。(6)
(付記11) 波形データを既存の波形辞書を照会して抽出する工程と、抽出された前記波形データについて音声合成に用いられた使用頻度を累積して保存する工程と、前記使用頻度に応じて段階的に圧縮方法を変更して前記波形データを圧縮し、圧縮された前記波形データを前記波形辞書に保存するとともに、圧縮された前記波形データ各々についての前記圧縮方法に関する情報を保存する工程と、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍する工程とを含み、前記波形データに関する前記使用頻度について一又は複数個の所定のしきい値を定め、前記しきい値で区切られた複数個の使用頻度範囲において、前記使用頻度が小さい前記使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする音声データ圧縮・解凍方法。(7)
(付記12) 波形データを既存の波形辞書を照会して抽出する工程と、抽出された前記波形データについて音声合成に用いられた使用頻度を累積して保存する工程と、前記使用頻度に応じて段階的に圧縮方法を変更して前記波形データを圧縮し、圧縮された前記波形データを前記波形辞書に保存するとともに、圧縮された前記波形データ各々についての前記圧縮方法に関する情報を保存する工程とを含み、前記波形データに関する前記使用頻度について複数個の所定のしきい値を定め、前記しきい値で区切られた複数個の使用頻度範囲において、前記使用頻度が小さい前記使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする音声データ圧縮方法。
【0079】(付記13) 付記11記載の音声データ圧縮・解凍方法を用いて圧縮された前記波形データについて、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍することを特徴とする音声データ解凍方法。(8)
(付記14) 波形データを既存の波形辞書を照会して抽出するステップと、抽出された前記波形データについて音声合成に用いられた使用頻度を累積して保存するステップと、前記使用頻度に応じて段階的に圧縮方法を変更して前記波形データを圧縮し、圧縮された前記波形データを前記波形辞書に保存するとともに、圧縮された前記波形データ各々についての前記圧縮方法に関する情報を保存するステップと、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍するステップとを含み、前記波形データに関する前記使用頻度について一又は複数個の所定のしきい値を定め、前記しきい値で区切られた複数個の使用頻度範囲において、前記使用頻度が小さい前記使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする音声データ圧縮・解凍方法を実現するコンピュータに実行させるプログラム。(9)
(付記15) 付記11記載の音声データ圧縮・解凍方法を実現するコンピュータに実行させるプログラムを用いて圧縮された前記波形データについて、前記波形辞書に保存されている圧縮された前記波形データを、前記圧縮方法に関する情報に基づいて解凍することを特徴とする音声データ解凍方法を実現するコンピュータに実行させるプログラム。(10)
(付記16) 波形データを既存の波形辞書を照会して抽出するステップと、抽出された前記波形データについて音声合成に用いられた使用頻度を累積して保存するステップと、前記使用頻度に応じて段階的に圧縮方法を変更して前記波形データを圧縮し、圧縮された前記波形データを前記波形辞書に保存するとともに、圧縮された前記波形データ各々についての前記圧縮方法に関する情報を保存するステップとを含み、前記波形データに関する前記使用頻度について複数個の所定のしきい値を定め、前記しきい値で区切られた複数個の使用頻度範囲において、前記使用頻度が小さい前記使用頻度範囲に属しているほど段階的に圧縮率が高い圧縮方法を用いて波形データを圧縮することを特徴とする音声データ圧縮方法を実現するコンピュータに実行させるプログラム。
【0080】
【発明の効果】以上のように本発明にかかる音声データ圧縮・解凍装置によれば、波形辞書に波形データを登録する場合において、任意の単位ごとの使用頻度に基づいて波形データの圧縮を行うことで、使用頻度の高いものについては圧縮率の低い、すなわち解凍時間の短い圧縮方法で圧縮し、使用頻度の低いものについては圧縮率の高い、すなわち解凍時間は長いがデータ容量の小さくなる圧縮方法で圧縮できることから、リアルタイム性を要求される場面における解凍時間の短縮化と、計算機資源の有効活用とを、高い次元でバランスをとることができる音声合成装置を提供することが可能となる。
【0081】また、一時記憶領域を設けることで、使用頻度の高い波形データについては、解凍する必要がなくなることから、より解凍時間の短縮化を図ることができ、リアルタイム再生に対応することが可能となる。
【出願人】 【識別番号】000005223
【氏名又は名称】富士通株式会社
【出願日】 平成13年3月2日(2001.3.2)
【代理人】 【識別番号】100095555
【弁理士】
【氏名又は名称】池内 寛幸
【公開番号】 特開2002−258894(P2002−258894A)
【公開日】 平成14年9月11日(2002.9.11)
【出願番号】 特願2001−57980(P2001−57980)