(57)【要約】【課題】  文字情報を音声で冗長性無くわかりやすく読み上げさせるために、音声信号に対する適切な修飾手段を実現する読み上げ用ドキュメント処理方法及び装置を提供すること。【解決手段】  データ入出力装置と、データ記録装置、演算処理装置を少なくとも備えた情報処理装置において、制御コードと地の文とから構成される読み上げ指示文字列であるドキュメントを読み込み、制御コードと、制御コードによって制御される地の文の加工内容であるエフェクトと、そのエフェクトの数と、の関連を読み込み、ドキュメントを制御コードと地の文とに分離し、各制御コードと、その制御コードによって制御される地の文との組を得て、地の文を読み上げる波形データを生成すると共に、地の文読み上げ波形データを、その地の文に対応する制御コードに応じて加工し、地の文読み上げ波形データと、波形加工処理された波形データとを合成し、得られた波形データを出力する。【選択図】  図８
2008275836.tif 000002
【特許請求の範囲】
【請求項１】
データ入出力装置と、データ記録装置、演算処理装置を少なくとも備えた情報処理装置において、
制御コードと地の文とから構成される読み上げ指示文字列であるドキュメントを、読み込むドキュメント入力手段と、
制御コードと、制御コードによって制御される地の文の加工内容であるエフェクトと、そのエフェクトの数と、の関連を読み込む関連入力手段と、
ドキュメントを制御コードと地の文とに分離し、各制御コードと、その制御コードによって制御される地の文との組を得るドキュメント処理手段と、
地の文を読み上げる波形データを生成する地の文読み上げ波形データ生成手段と、
地の文読み上げ波形データを、その地の文に対応する制御コードに応じて加工する波形加工処理手段と、
地の文読み上げ波形データと、波形加工処理された波形データとを合成する波形データ合成手段と、
得られた波形データを出力する波形データ出力手段と
を備えることを特徴とする読み上げ用ドキュメント処理装置。
【請求項２】
データ入出力装置と、データ記録装置、演算処理装置を少なくとも備えた情報処理装置において、
制御コードと地の文とから構成される読み上げ指示文字列であるドキュメントを読み込み、
制御コードと、制御コードによって制御される地の文の加工内容であるエフェクトと、そのエフェクトの数と、の関連を読み込み、
ドキュメントを制御コードと地の文とに分離し、各制御コードと、その制御コードによって制御される地の文との組を得て、
地の文を読み上げる波形データを生成すると共に、地の文読み上げ波形データを、その地の文に対応する制御コードに応じて加工し、
地の文読み上げ波形データと、波形加工処理された波形データとを合成し、
得られた波形データを出力する
ことを特徴とする読み上げ用ドキュメント処理方法。
【請求項３】
エフェクトの数が複数の場合は、その複数の制御コードに応じた波形加工処理を、地の文読み上げ波形データに施す
請求項２に記載の読み上げ用ドキュメント処理方法。
【請求項４】
予め、地の文読み上げ波形データを検査しておき、読み上げるべき地の文が無い場合は、その無音部分の出力を削除する
請求項２または３に記載の読み上げ用ドキュメント処理方法。
【請求項５】
制御コードによって制御される地の文の加工内容が、音量の変化である
請求項２ないし４に記載の読み上げ用ドキュメント処理方法。
【請求項６】
制御コードによって制御される地の文の加工内容が、特定周波数の振幅の変化である
請求項２ないし４に記載の読み上げ用ドキュメント処理方法。
【請求項７】
制御コードによって制御される地の文の加工内容が、波形の変形である
請求項２ないし４に記載の読み上げ用ドキュメント処理方法。
【請求項８】
制御コードによって制御される地の文の加工内容が、再生速度の変化である
請求項２ないし４に記載の読み上げ用ドキュメント処理方法。
【請求項９】
制御コードによって制御される地の文の加工内容が、再生タイミングの時間的な変化である
請求項２ないし４に記載の読み上げ用ドキュメント処理方法。
【請求項１０】
制御コードによって制御される地の文の加工内容が、周波数を変化させるピッチシフトである
請求項２ないし４に記載の読み上げ用ドキュメント処理方法。
【請求項１１】
ピッチシフトが、古典調律に則った変化である
請求項１０に記載の読み上げ用ドキュメント処理方法。
【請求項１２】
ピッチシフトが、音程を均等な周波数比で分割した平均律に則った変化である
請求項１０に記載の読み上げ用ドキュメント処理方法。
【請求項１３】
ピッチシフトが、周波数を半減または倍増させる変化である
請求項１１または１２に記載の読み上げ用ドキュメント処理方法。
【請求項１４】
ピッチシフトが、和音の構成音の順序を変える転回ある
請求項１１または１２に記載の読み上げ用ドキュメント処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ入出力装置と、データ記録装置、演算処理装置を少なくとも備えたパソコン等の情報処理装置において、文字列から成る読み上げ用のドキュメントを入力して加工し、波形データを出力する読み上げ用ドキュメント処理方法と、それを実施する装置に関する。
【背景技術】
【０００２】
文字情報を提供するには、視覚と聴覚に訴える方法があり、文字情報に修飾を施す場合も、視覚的修飾と音声的修飾がある。
視覚的修飾の表現には、文字の大きさや色などのさまざまな文字装飾で、地の文を修飾することが可能である。
例えば、一般的なHTMLで記述されたウェブページを、一般的なブラウザで表示させた場合、アンカータグ(<A>〜</A>)で囲まれた部分ならば、他の地の文とは異なる色と下線等で表現され、そこが他の情報へリンクされていることが視覚的に容易に理解される。これは、単なる文字情報ではなく、色という修飾によって他の意味が含まれ、複数の情報が付帯されていることを示す。
【０００３】
一方、音声で地の文を単に読み上げさせることは、従来公知の技術で実施可能であるが、修飾された文字の部分の処理は、そのまま放置されていることが多い。
これは、視覚による表現では、色・大きさ・フォントの種類など色々な適切かつ定番となる修飾方法があるのに対し、音声による表現では、地の文に対して、適切かつ定番となる修飾方法が確立されていないからである。さもなければ、ドキュメント中の地の文も制御コードも、共に読み上げるという冗長な手法を取らざるを得ない。
【０００４】
健常者には一見不要な技術であるかも知れないが、冗長性をなくし、十分に情報の付帯された状態で、文字情報を音声で読み上げさせることは、視覚障害者にとっては切望されるものである。また、情報格差というのが都市部と地方で生じている場合もあるが、それ以外に視覚先行で広がったウェブベースの情報では、健常者と視覚障害者間で格差があるのも事実であり、視覚以外の別の方法で地の文以上の情報を含めたままのドキュメント内容を提示する技術が、早急に必要とされている。
【０００５】
また、近年、機械語による音声案内サービスが広がっている。
例えば、銀行によっては、電話の音声案内を用いて残高照会や振込処理が可能であるが、音声案内によるメニュー形式を用いている場合が多い。例えば「メインメニューです。残高確認は１を、それ以外は９のボタンを押して下さい」という形式である。全て同じ調子で、定番の「メインメニューです」を毎回読み上げたり、メニューに対応する各番号を全て読み上げたりするので、非常に冗長であり苛立つ人も少なくない。
【０００６】
文字情報を読み上げる従来の技術には、特許文献１〜６などがある。
【特許文献１】特開２００４−１９８８３０「テキスト読み上げシステム及び方法」
【特許文献２】特開２００３−３４５３７８「テキスト読み上げシステム及び方法」
【特許文献３】特開２００３−２２３１８１「文字−音声変換装置およびそれを用いた携帯端末装置」
【特許文献４】特開２００２−１３２２８２「電子テキスト読み上げ装置」
【特許文献５】特開２００２−５５９２５「音声読み上げ装置および情報処理装置」
【特許文献６】特開２００１−１８８７７７「音声をテキストに関連付ける方法、音声をテキストに関連付けるコンピュータ、コンピュータで文書を生成し読み上げる方法、文書を生成し読み上げるコンピュータ、コンピュータでテキスト文書の音声再生を行う方法、テキスト文書の音声再生を行うコンピュータ、及び、文書内のテキストを編集し評価する方法」
【０００７】
しかし、いずれの従来技術によっても、文字情報を音声で冗長性無くわかりやすく読み上げさせることはできなかった。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
そこで、本発明は、文字情報を音声で冗長性無くわかりやすく読み上げさせるために、音声信号に対する適切な修飾手段を実現する読み上げ用ドキュメント処理方法及び装置を提供することを課題とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明の読み上げ用ドキュメント処理装置は次の構成を備える。すなわち、データ入出力装置と、データ記録装置、演算処理装置を少なくとも備えた情報処理装置において、制御コードと地の文とから構成される読み上げ指示文字列であるドキュメントを、読み込むドキュメント入力手段と、  制御コードと、制御コードによって制御される地の文の加工内容であるエフェクトと、そのエフェクトの数と、の関連を読み込む関連入力手段と、ドキュメントを制御コードと地の文とに分離し、各制御コードと、その制御コードによって制御される地の文との組を得るドキュメント処理手段と、地の文を読み上げる波形データを生成する地の文読み上げ波形データ生成手段と、地の文読み上げ波形データを、その地の文に対応する制御コードに応じて加工する波形加工処理手段と、地の文読み上げ波形データと、波形加工処理された波形データとを合成する波形データ合成手段と、得られた波形データを出力する波形データ出力手段とを備えることを特徴とする。
【００１０】
本発明の読み上げ用ドキュメント処理方法は、データ入出力装置と、データ記録装置、演算処理装置を少なくとも備えた情報処理装置において、制御コードと地の文とから構成される読み上げ指示文字列であるドキュメントを読み込み、制御コードと、制御コードによって制御される地の文の加工内容であるエフェクトと、そのエフェクトの数と、の関連を読み込み、ドキュメントを制御コードと地の文とに分離し、各制御コードと、その制御コードによって制御される地の文との組を得て、地の文を読み上げる波形データを生成すると共に、地の文読み上げ波形データを、その地の文に対応する制御コードに応じて加工し、地の文読み上げ波形データと、波形加工処理された波形データとを合成し、得られた波形データを出力することを特徴とする。
【００１１】
ここで、エフェクトの数が複数の場合は、その複数の制御コードに応じた波形加工処理を、地の文読み上げ波形データに施して、多様なエフェクトに対応させてもよい。
【００１２】
また、予め、地の文読み上げ波形データを検査しておき、読み上げるべき地の文が無い場合は、その無音部分の出力を削除して、冗長性を低減させてもよい。
【００１３】
制御コードによって制御される地の文の加工内容は、音量の変化で表現してもよい。
【００１４】
同様に、制御コードによって制御される地の文の加工内容は、特定周波数の振幅の変化で表現してもよい。
【００１５】
制御コードによって制御される地の文の加工内容は、波形の変形で表現してもよい。
【００１６】
制御コードによって制御される地の文の加工内容は、再生速度の変化で表現してもよい。
【００１７】
制御コードによって制御される地の文の加工内容は、再生タイミングの時間的な変化で表現してもよい。
【００１８】
制御コードによって制御される地の文の加工内容は、周波数を変化させるピッチシフトで表現してもよい。
【００１９】
ピッチシフトには、古典調律に則った変化が好適である。
【００２０】
同様に、ピッチシフトには、音程を均等な周波数比で分割した平均律に則った変化も好適である。
【００２１】
ピッチシフトを、周波数を半減または倍増させる変化にすると、聞きやすい音声にできる。
【００２２】
同様に、ピッチシフトを、和音の構成音の順序を変える転回にしても、聞きやすい音声にできる。
【発明の効果】
【００２３】
本発明によると、制御コードと地の文とから構成されるドキュメントを読み込み、制御コードに応じて加工した波形データを出力するので、文字情報を音声で冗長性無くわかりやすく読み上げさせることに寄与する。そして、音声信号に対して修飾の定番としても使える。
【発明を実施するための最良の形態】
【００２４】
以下に、図面を基に本発明の実施形態を説明する。
音を変化させるエフェクトには、数多くの種類がある。エコーなど再生タイミングを時間的に変化させるもの、オーバードライブシミュレータなど波形を変形させるもの、ボイスチェンジャなど周波数を変えるもの、イコライザなど特定周波数の振幅を変化させるもの、音量や速さを変化させるものなどがある。
【００２５】
人の発話にエフェクトをかけ、そのエフェクトがかかった発話を他人が聞いても明瞭に理解できるエフェクトの種類を考えると、明瞭性を失わせずに周波数を変えるピッチシフト系のエフェクトが最も適していると考えられる。
そのため、以下では、ピッチシフトを挙げて説明するが、他のエフェクトも同様に利用可能である。
【００２６】
人は一般生活上、声の高い相手であっても低い相手であっても、発話内容を十分に理解できていると考えられるので、読み上げている声のピッチが多少高くなったり低くなったりしても、聞きやすさには大きな影響を与えにくいはずである。
２人以上から同時に異なることを話しかけられた場合、人はその話を理解するのが困難であるが、発話者が２人以上の場合でも、同じ話速で同じ内容の同時発話の場合ならば、人はその話を理解することは可能である。これは、例えば、複数のパートからなる合唱団が、色々なパートで同じ歌詞を同時に歌っている場合、その歌詞を聴衆が理解できることで示される。
このような人の認識は、発話している原音や、原音を元に作られたピッチシフト音という単音の理解はもとより、原音とピッチシフト音の同時発信、すなわち和音であっても人は理解できることを意味している。
【００２７】
ピッチシフトには、平均律が有用に利用できる。
平均律とは、1オクターブなどの音程を均等な周波数の比で分割した音律である。一般には、十二平均律のことを指すことが多く、現代人には耳慣れている。
図１は、十二平均律での周波数比を示す表である。
十二平均律とは、1オクターブを１２等分した音律であり、隣り合う音の周波数比が２の１２乗根と１との比で、これは西洋音楽の半音に相当する。
【００２８】
本発明では、機械的にピッチシフトを施すため、十二平均律特有の古典調律との差異を考える必要はない。演算上の都合で、かえって古典調律の方が好ましい場合があるために、以下では、原音より５度高い音、と記載する時には、十二平均律として原音より７半音高い音、という意味と、その元となる古典調律としての原音の1.5倍の周波数の音、という二重性を含めているものとする。便宜上、１半音高い音を100セント上の音、１半音低い音を100セント下の音とし、また１オクターブは1200セントとして表現する。
【００２９】
ピアノでCとGを同時に押せば、ハ長調でのいわゆるドとソの和音が鳴る。ソはドからみて５度高い。言い換えれば７半音高い、或いは、700セント高い。本来的な古典調律ならば、ソはドの1.5倍の周波数であるべきでだが、ピアノのような十二平均律の楽器は、オクターブ以外は全てに誤差が入り込んでいるので、良く調律されていても1.5倍にはならず、２の７乗の12乗根である約1.498307倍となる。
厳密な演算量の点では、十二平均律的にある音の約1.493307倍などを演算するよりも、古典調律的に1.5倍を演算した方が遥かに演算量が少なくてすむ。
【００３０】
ドを原音とすると、ピッチシフトによって示される音は、半音上のド# （100セント上昇）、長二度上のレ（200セント上昇）、短三度上のレ#（300セント上昇）、長三度上のミ（400セント上昇）、四度上のファ（500セント上昇）、減五度上のファ#（600セント上昇）、五度上のソ（700セント上昇）などがある。
【００３１】
人は和音を聴覚から得る場合、視覚で得られるような感覚とはまた異なる感覚を得るので、この特性を利用して、選択的に和音を合成することが望ましい。美しくない響きを聴き続けるのは苦痛であるので、実際使うに当たり、基本的には美しい響きをもって音を重ねることが望ましい。
一般的には、２音が単純な整数の周波数比にある時、その和音が美しく響く状態になる。このような音程を純正音程と呼び、調律法ではこれを利用して音階を定めている。
【００３２】
なお、平均律は、1オクターブを12等分する十二平均律のみが利用できるわけではない。その他の平均律として、十九平均律、二十二平均律、三十一平均律、五十三平均律、七十二平均律なども利用できる。
【００３３】
また、古典音律として、ピタゴラス律、純正律 (C長調)、中全音律 (アロン律、ミーントーン)、ヴェルクマイスター律I、II、III、キルンベルガー律I、II、III、ヴァロッティ・ヤング律、ヤング律iiなども利用できる。
【００３４】
ピッチシフトの実装は、以下の通りである。
図２は、処理対象のドキュメントを示す例であり、図２（イ）は、制御コードを明示した文字列、図２（ロ）は、視覚表現を明示した文字列である。
ドキュメントは、制御コードと地の文とから構成される。図示の例では、HTMLで記述された地の文と、制御コードとしてのタグとから混成されている。HTML1.0に沿って、太字はBタグ、斜体はIタグ、などとする。
タグ解釈後の一般的な視覚的な表示は、図２（ロ）のように、太字を含んだ表現となる。
【００３５】
図３は、読み上げ指示文字列となるドキュメントを示す例であり、図３（イ）は、制御コードを明示した文字列、図３（ロ）は、音声表現を付記した文字列である。
本発明による音声表現では、まず、タグが存在する部分で、地の文を、「すべて国民は」「勤労の権利」「を有し」「義務を負ふ」と分割する。
Bタグは３度低いピッチシフト音のエフェクトであると前提すると、Bタグの制御を受けていない地の文（「すべて国民は」等）はそのまま音声合成を行い発信し、Bタグの制御を受ける地の文（「勤労の権利」等）では、まずは地の文をそのまま音声合成を行ったPCMファイル等の音情報を作り、次に、その音情報を元に、３度低いピッチシフト音情報を作り、最後に、地の文の音情報とピッチシフト音情報を合成し発信する。音と音の合成は、従来公知の技術を適宜利用する。
すると、全ての地の文は読み上げられるが、図３（ロ）のように、Bタグによる制御部分だけは地の文の読み上げよりも３度低い読み上げ音の同時発信、という和音による読み上げとなる。これによって、聴取者は単音と和音の差によって、タグの有無を理解できる。
【００３６】
同様に、図４は、処理対象のドキュメントを示す例であり、図４（イ）は、制御コードを明示した文字列、図４（ロ）は、視覚表現を明示した文字列である。
本例では、複数のタグが使用され、異なる部分でそれぞれ異なるピッチシフトが施される。
複数タグの表出違いの例として、異なるタグであるIタグを交えている。
タグ解釈後の一般的な視覚的な表示は、図４（ロ）のように、太字と斜体を含んだ表現となる。
【００３７】
図５は、読み上げ指示文字列となるドキュメントを示す例であり、図５（イ）は、制御コードを明示した文字列、図５（ロ）は、音声表現を付記した文字列である。
Iタグは５度高いピッチシフト音のエフェクトであると前提すると、まずは「すべて国民」「勤労の権利」「を有し」「義務を負ふ」とタグが存在する部分で分割した後、BタグやIタグの制御を受けていない地の文（「は」、「を有し」）はそのまま音声合成を行い発信し、Bタグの制御下では、まずは地の文（「勤労の権利」、「義務を負ふ」）をそのまま音声合成を行い、その音情報を作り、次に、合成された音情報を元に、３度低いピッチシフト音情報を作り、最後に、地の文の音情報とピッチシフト音情報を合成し発信し、Iタグの制御下では、まずは地の文（「すべて国民」）をそのまま音声合成を行い、その音情報を作り、次に、合成された音情報を元に、５度高いピッチシフト音情報を作り、最後に、地の文の音情報とピッチシフト音情報を合成し発信する。
すると、全ての地の文は読み上げられるが、図５（ロ）のように、Bタグの部分だけは地の文の読み上げよりも３度低い読み上げ音の同時発信という和音による読み上げ、Iタグの部分だけは地の文の読み上げよりも５度高い読み上げ音の同時発信という和音による読み上げとなる。これによって、利用者は単音と和音の差によってタグの有無を理解できる。
【００３８】
同様に、図６は、処理対象のドキュメントを示す例であり、図６（イ）は、制御コードを明示した文字列、図６（ロ）は、視覚表現を明示した文字列である。
本例では、BタグとIタグの複数タグが使用され、複数のタグの制御下となる地の文が存在する。
タグ解釈後の一般的な視覚的な表示は、図６（ロ）のように、太字と斜体を含んだ表現となる。
すなわち、「すべて国民は」は変化無く、Bタグ制御下の「勤労の」は太字、Bタグ及びIタグ制御下の「権利」は太字の斜体、Iタグ制御下の「を有し」は斜体、Bタグ及びIタグ制御下の「義務」は太字斜体、Bタグ制御下の「を負ふ」は太字になる。このように、視覚表現では、太字と斜体は互いに干渉せずにかけられるエフェクトである。これは音声でも可能である。
【００３９】
図７は、読み上げ指示文字列となるドキュメントを示す例であり、図７（イ）は、制御コードを明示した文字列、図７（ロ）は、音声表現を付記した文字列である。
すなわち、「すべて国民は」は変化無く、Bタグ制御下の「勤労の」は３度低いピッチシフト音との和音、Bタグ及びIタグ制御下の「権利」は３度低いピッチシフト音と５度高いピッチシフト音との和音、Iタグ制御下の「を有し」は５度高いピッチシフト音との和音、Bタグ及びIタグ制御下の「義務」は３度低いピッチシフト音と５度高いピッチシフト音との和音、Bタグ制御下の「を負ふ」は３度低いピッチシフト音との和音になる。
このように、音声表現でも、複数のピッチシフト音は互いに干渉せずにかけられるエフェクトである。
【００４０】
図８は、上述の処理を実装するためのプログラムのフローチャートであり、図９は、そのフローチャートにおける波形加工処理のサブルーチン部分のフローチャートである。
メイン部分の処理は次の工程で行なう。
初期化：
ステップ1；
制御コードE−エフェクトの数k−エフェクトX(K) （K=１〜ｋ）が記載された対応テーブルTを読み込む。
制御コードE はタグBやIなどに相当するものであり、エフェクトX(K)は与えるエフェクトの内容を指定するものである。例えば、エフェクトをピッチシフトに限った場合、100であると原音より100セント上にピッチシフト、-400であると400セント下にピッチシフトなどを意味する。対応テーブルTは制御コードEとエフェクト番号の関連を記述したテーブルであり、例えば制御コードEがBならばエフェクトは-300、制御コードEがIならばエフェクトは700、それ以外の制御コードならばエフェクトは0など、利用者が適宜編集可能なものである。何もエフェクトを与えない制御コードEも存在するし、異なる制御コードEでも同じエフェクトを与える場合もある。
【００４１】
ステップ２；
地の文Zと制御コードEから成る読み上げ対象のドキュメントDを読み込む。
ドキュメントDは地の文Zと制御コードEから成る混成文であり、必ず１つ以上の地の文Zを含むものである。
【００４２】
ステップ３；
整数変数iを１として初期化し、全ての地の文Zを処理するまでのループ用カウンタとして使用する。
【００４３】
ドキュメント処理：
ステップ1；
ドキュメントDを制御コードEと地の文Zに分離し、地の文Zを制御コードEが存在していた位置で分割する。分割された個数を整数変数Nに代入する。
【００４４】
ステップ２；
地の文Zを文字列配列Z(n)（n＝1〜N）に代入する。
【００４５】
ステップ３；
地の文Zにかかっていた制御コードEを、区切文字zと制御コードEとの組み合わせから成る文字列配列C(n) （n＝1〜N）に代入する。
文字列配列C(n)は、例えば、「区切文字z 制御コードE」という形式で記述できる。地の文Zに複数の制御コードEがかかっていた場合は、「区切文字z 制御コード１番目E1区切文字z 制御コード２番目E2」として文字列配列C(n)に代入する。地の文Zに制御コードEがかかっていない場合はnullを文字列配列C(n)に代入する。
【００４６】
地の文の読み上げ波形データ生成：
従来公知の音声合成ルーチン等を使用するなどして、地の文Z(i)を読み上げた波形データWZ(i)を作成する。
【００４７】
エフェクト用波形データ初期化：
エフェクト用波形データWEを、読み上げ用波形データWZ(i)と同一長の無音データとして初期化する。エフェクト用波形データWEは、読み上げ用波形データWZ(i)に対しエフェクトをかけた波形データである。
【００４８】
エフェクト指定の有無判断：
文字列配列C(i)がnullならばエフェクト処理は不要なので次の処理へ進ませる。
null以外で、消去を意味するエフェクトならば、エフェクト用波形データWEを読み上げ用波形データWZ(i)に代入して処理する。消去以外のエフェクトの場合は、エフェクトをかけるために波形加工処理のサブルーチンへと処理を移行させる。
【００４９】
波形加工処理：
後述の処理を行う。
【００５０】
地の文読み上げ波形データと加工波形データの合成：
読み上げ用波形データWZ(i)とエフェクト用波形データWEの波形を合成し、読み上げ用波形データWZ(i)に代入する。
なお、波形データの合成は従来公知の技術を利用する。波形データの合成としては、sox（SOund eXchange)などが利用できる。例えば、inputfile1.wavとinputfile2.wavを合成しoutputfile1.wavに代入する場合には、「soxmix inputfile1.wav inputfile2.wav outputfile1.wav」という形式で記述し、この場合には合成処理後、outputfile1.wavをinputfile1.wavに改名しておく。
【００５１】
地の文処理終了判断：
処理されていない地の文Zが残っている間(i<N)は、カウンタを加算してループ処理を繰り返し、全ての地の文が処理されれば(i＝＝N)、次の処理へ進ませる。
【００５２】
得られた波形データ出力：
読み上げ用波形データWZ(1)〜WZ(N)を順次出力させれば、制御コードEによってそれぞれのエフェクトがかかったドキュメントD中の全ての地の文Zを読み上げることになる。
なお、読み上げ用波形データWZ(1)〜WZ(N)の出力としては、ｗａｖファイル等のファイル出力でも、付設スピーカーから音声としての出力等でもよい。
【００５３】
また、一般的なHTMLドキュメントは、<BODY>〜</BODY>タグ中に本文が含まれ、＜HEAD>〜＜/HEAD＞タグ中には別の記述があることが多い。＜HEAD＞タグ内部の情報を毎回、地の文として読み上げられると冗長な場合もある。
これを回避するには、<HEAD>制御コードのエフェクトを無音化（消去）に指定すればよい。すなわち、地の文を予め検査しておき、読み上げるべき地の文が無い場合は、その無音部分の出力を削除すればよい。
【００５４】
図９に示した波形加工処理のサブルーチン部分の処理は次の工程で行なう。
初期化：
ステップ１；
文字列配列C(i)内の制御コードEの数をカウントし、整数変数Mに代入する。
【００５５】
ステップ２；
文字列配列C(i)内のM個全ての制御コードEを処理するまで、以下のループを繰り返す。整数変数jを１として初期化し、ループ用カウンタとして使用する。
【００５６】
制御コードからエフェクトを決定：
文字列配列C(i)のj番目の制御コードEを取得する。次に対応テーブルTを参照し、制御コードE及びその内容から対応したかけるべきエフェクトの数kとエフェクトX(K)を得る。
これは、エフェクト数kとエフェクトX(K)は、制御コードＥから一意に決定されることを意味する。例えば、テーブルT内で、制御コード ”B” が、エフェクト数1、エフェクト“pitch -300” と関連付けられている場合、E=”B” 、k=1、X(1)＝” pitch -300” と記述できる。
【００５７】
エフェクトを一時エフェクト用波形データに反映処理：
原音の読み上げ用波形データWZ(i)に対してエフェクトX(K)で指定されたエフェクトをかけたテンポラリ波形データWT(K)（K=１〜ｋ）を作成する。テンポラリ波形データWT(K)は、一時的にエフェクトをかけた波形データを格納する変数である。
例えば、エフェクトＸ(1)が原音に対して300セント下へのピッチシフトであり（X(1)=”pitch -300”）、原音読み上げ用波形データWZ(i)をinputfile1.wav、エフェクをかけたテンポラリ波形データWT(1)をoutputfile1.wavとし、soxを利用して表現するならば、「soxinputfile1.wav outputfile1.wav pitch -300」という形式で記述すれば、エフェクトのかかった波形データを得られる。
エフェクト数kが複数の場合は、読み上げ用波形データWZ(i)に対して個別に複数のエフェクトをかけ、それから個別に得られた波形データが個別のテンポラリ波形データWT(K)となる。
【００５８】
また、この処理の最後に、エフェクトX(K)をかけたテンポラリ波形データWT(K)を検査し、その中での主たる周波数が、例えば3400Hzなど所定の閾値の周波数を超えていた場合は、周波数を半減させる（”pitch-1200”）処理を行い、例えば300Hzなど所定の閾値の周波数を下回っていた場合は、周波数を倍増させる（”pitch 1200”）処理を行ってもよい。これによって、ピッチシフト音が高過ぎる場合は１オクターブ下げ、ピッチシフト音が低すぎる場合は１オクターブ上げられる。
これは、和音の構成音の並び順を変える転回と同様の効果を奏するものである。
【００５９】
一般的な電話の周波数帯域は300Hz〜3400Hz程度と限定的であるので、上記処理によって再生できない音の生成を回避することができ、一般音声回線経由で読み上げさせる場合に有効である。また、電話機付設のスピーカーもこの周波数帯域を前提に製作されている場合があるので、音声回線経由でなくとも、何らかのアプリケーションソフトを用いて電話機を利用して読み上げさせる場合もこの処理は有効である。
ピッチシフトさせるか否かの判断になる周波数閾値は、スピーカーの特性のみならず、利用者の可聴域に適合させるために、利用者がある程度任意に調整可能な設計が好ましい。
【００６０】
得られた全エフェクトをエフェクト波形データと合成：
得られた全てのエフェクトをかけた波形データWEと、エフェクトをかけたテンポラリ波形データWT(K)の波形を合成し、WEに代入する。
【００６１】
１つの地の文に対するエフェクト処理の終了判断：
処理されていないエフェクトが残っている間(j<M)は、カウンタを加算してループ処理を繰り返し、全てのエフェクトが処理されれば(j＝＝M)、ループを終了し、このサブルーチンを終了する。
【００６２】
図１０は、処理対象のドキュメントを示す例であり、図１０（イ）は、制御コードを明示した文字列、図１０（ロ）は、視覚表現を明示した文字列、図１０（ハ）は、別の視覚表現を明示した文字列である。
前述のＢタグやＩタグの例では、太字や斜体の表現を音声で加工する手段であったが、例えばＡタグ（アンカータグ）内には、色々と情報が含まれている場合がある。すなわち、制御コードとその内容に依存させて表現した方が、得られる情報が広がる場合がある。
【００６３】
図１０（イ）に例示したドキュメントの場合、通常のブラウザによると図１０（ロ）のように、Ａタグの制御下にある「特許庁」の文字部分が変色されると共に下線が引かれて表示される。これによって、「特許庁」の文字部分には、Ａタグが存在しているという情報が付帯されていて、そこをクリックすると別のページに移る。更に、そのページを訪問した履歴があると、図１０（ハ）のように、「特許庁」の文字部分が更に別の色に変色して、訪問履歴の情報が付帯される。これは、Ａタグのみならず、Ａタグが含んでいる制御コードの内容と、ブラウザが管理している履歴が合わさって表現されていることになる。
【００６４】
このような制御コードの内容に関してエフェクトを与えることは、音声表現でも可能である。
図１１は、読み上げ指示文字列となるドキュメントを示す例であり、図１１（イ）は、制御コードを明示した文字列、図１１（ロ）は、音声表現を付記した文字列、図１１（ハ）は、別の音声表現を付記した文字列である。
前記実施例では、原音とピッチシフト音の和音であったが、三音以上の和音に積み上げることも同様に可能であり、同じタグでも、タグ内の変数によって変化させるも可能である。例えば、Ａタグ内のHREFが示す一般的なURI (Uniform Resource Identifier)が挙げられる。なお、URI（RFC2396で規定）の内容を認識するアルゴリズムは従来公知の技術を利用する。
この場合、Ａタグ内におけるHREF=Uという記載を検索し、その記載Uを分解しその内容にマッチさせて、エフェクトを選択させる処理をするように、メインルーチン内の初期化を行なう。エフェクトの関連が記載された対応テーブルT中には、制御タグの内容も記載しておく。
【００６５】
未読サイト（長三度）、既読サイト（短三度）、ポートが80（属音）、プロトコルがhttps（短七度）というピッチシフト音のエフェクトを前提とした場合、URIで示されたリンク先が、既読サイトでポート80を使用、httpsを採用したページであると、原音を主音として、それぞれ短三度＋属音＋短七度の和音が合成され、いわゆるマイナーセブンスコードと同様の響きとなる。
長三度と短三度は半音差であり、同時に発信すれば美しい響きではないが、サイトが未読か既読かという２者択一の場合なのでこの和音は実際には聴かずに済み、図１１（ロ）及び図１１（ハ）のように異なる音声表現ができる。
なお、Aタグ内のHREFが指し示すURIに依存させる他、同じAタグ内のaccesskeyなどに依存させ和音を変化させることも可能である。
【００６６】
実施例：
以上のように、十二平均律等を基にして選択的にピッチシフト音を積み重ねていけば、不快にはなりにくい美しい響きを有する音声で、複数の情報を提示することが実現される。
そのような実例として、例えば電話の音声案内サービスが挙げられる。例えば銀行によっては、電話の音声案内を用いて残高照会や振込処理等の操作が可能であるが、音声案内によるメニュー形式を用いている場合が多い。
図１２は、音声案内メニューを示すものであり、図１２（イ）は、従来の音声案内で発声される文言であり、図１２（ロ）は、本発明による音声案内で発声される文言である。
従来は、図１２（イ）のように、全ての文言が読み上げられ、非常に冗長であった。この問題を回避するために本発明では、１や２や９等の数字に対応する音声を、予め利用者に周知させておくことで、その数字を読み上げることを省いている。また、「メインメニューです。」の「です」や、「それ以外のお取引は」の「のお取引は」や、「のボタンを押して下さい。」の「のボタン」など、定型的な文言部分の発声をスキップして簡略化することも容易である。
【産業上の利用可能性】
【００６７】
本発明によると、視覚的修飾が施されたり情報が付帯された文字情報を、音声的修飾によって表現できるようになる。そのため、視覚障害者にとっては視覚情報を十分音声で得ることができるようになり、また、冗長でなくわかりやすい音声案内サービス等が可能になるので、産業上利用価値が高い。
【図面の簡単な説明】
【００６８】
【図１】十二平均律での周波数比を示す表
【図２】処理対象のドキュメントを示す例であり、（イ）は制御コードを明示した文字列、（ロ）は視覚表現を明示した文字列の説明図
【図３】図２に対応する読み上げ指示文字列となるドキュメントを示す例であり、（イ）は制御コードを明示した文字列、（ロ）は音声表現を付記した文字列の説明図
【図４】処理対象のドキュメントを示す例であり、（イ）は制御コードを明示した文字列、（ロ）は視覚表現を明示した文字列の説明図
【図５】図４に対応する読み上げ指示文字列となるドキュメントを示す例であり、（イ）は制御コードを明示した文字列、（ロ）は音声表現を付記した文字列の説明図
【図６】処理対象のドキュメントを示す例であり、（イ）は制御コードを明示した文字列、（ロ）は視覚表現を明示した文字列の説明図
【図７】図６に対応する読み上げ指示文字列となるドキュメントを示す例であり、（イ）は制御コードを明示した文字列、（ロ）は音声表現を付記した文字列の説明図
【図８】処理実装用のプログラムのメイン部分のフローチャート
【図９】波形加工処理のサブルーチン部分のフローチャート
【図１０】処理対象のドキュメントを示す例であり、（イ）は制御コードを明示した文字列、（ロ）は視覚表現を明示した文字列、（ハ）は別の視覚表現を明示した文字列の説明図
【図１１】図１０に対応する読み上げ指示文字列となるドキュメントを示す例であり、（イ）は制御コードを明示した文字列、（ロ）は音声表現を付記した文字列、（ハ）は別の音声表現を付記した文字列の説明図
【図１２】音声案内メニューを示すものであり、（イ）は従来の音声案内で発声される文言、（ロ）は本発明による音声案内で発声される文言の説明図
【図１】
2008275836.tif 000003
【図２】
2008275836.tif 000004
【図３】
2008275836.tif 000005
【図４】
2008275836.tif 000006
【図５】
2008275836.tif 000007
【図６】
2008275836.tif 000008
【図７】
2008275836.tif 000009
【図８】
2008275836.tif 000010
【図９】
2008275836.tif 000011
【図１０】
2008275836.tif 000012
【図１１】
2008275836.tif 000013
【図１２】
2008275836.tif 000014