特許第6170604号(P6170604)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社カプコンの特許一覧

<>
  • 特許6170604-音声生成装置 図000002
  • 特許6170604-音声生成装置 図000003
  • 特許6170604-音声生成装置 図000004
  • 特許6170604-音声生成装置 図000005
  • 特許6170604-音声生成装置 図000006
  • 特許6170604-音声生成装置 図000007
  • 特許6170604-音声生成装置 図000008
  • 特許6170604-音声生成装置 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】6170604
(24)【登録日】2017年7月7日
(45)【発行日】2017年7月26日
(54)【発明の名称】音声生成装置
(51)【国際特許分類】
   G10L 13/08 20130101AFI20170713BHJP
   G10L 13/00 20060101ALI20170713BHJP
【FI】
   G10L13/08 160
   G10L13/00 100A
   G10L13/08 124
【請求項の数】5
【全頁数】14
(21)【出願番号】特願2016-183211(P2016-183211)
(22)【出願日】2016年9月20日
【審査請求日】2016年12月14日
【新規性喪失の例外の表示】特許法第30条第2項適用 平成28年8月25日 毎日放送 VOICE(ボイス) 平成28年8月25日 テレビ東京 ワールドビジネスサテライト 平成28年9月1日 http://www.youtube.com/watch?v=Swhfg07uako 平成28年9月19日 http://www.youtube.com/watch?v=eJUg−YH8HHA 平成28年9月7日 https://www.youtube.com/watch?v=3yRivId6oaM 平成28年9月15日 東京ゲームショウ2016 幕張メッセ 平成28年9月19日 http://hibiki−radio.jp/description/megami/detail
【早期審査対象出願】
(73)【特許権者】
【識別番号】000129149
【氏名又は名称】株式会社カプコン
(74)【代理人】
【識別番号】100123940
【弁理士】
【氏名又は名称】村上 辰一
(72)【発明者】
【氏名】山東 善樹
【審査官】 上田 雄
(56)【参考文献】
【文献】 特開平01−222300(JP,A)
【文献】 特開2000−066696(JP,A)
【文献】 特開2001−209820(JP,A)
【文献】 特開2011−013564(JP,A)
【文献】 特開2013−161038(JP,A)
【文献】 特開平11−237971(JP,A)
【文献】 特開2002−366175(JP,A)
【文献】 特開平11−109991(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00−13/10
(57)【特許請求の範囲】
【請求項1】
仮想的な話者であるキャラクタを表示する表示部と、
ユーザからの入力を受け付ける操作部と、
前記操作部に入力された語句を記憶する語句記憶部と、
テキストデータを作成し、該作成されたテキストデータに基づいて音声信号を合成して合成音声を生成する音声合成部と、
音声信号である録音音声を記憶部に予め記憶する録音音声記憶部と、
前記録音音声を、前記記憶部から読み出す録音音声読出部と、
前記キャラクタが発する音声として、前記音声信号および前記録音音声を再生する音声再生部と、
を備え、
前記音声合成部は、前記語句記憶部に記憶されている語句を含むテキストデータを作成し、
前記録音音声読出部は、前記音声合成部が前記合成音声の生成に要する時間を推定し、該推定された時間に応じた録音音声を前音声として読み出し、
前記音声再生部は、前記音声合成部が前記合成音声を生成している間に前記前音声を再生し、
前記音声再生部が前記前音声の再生を終了したとき、前記音声合成部による前記合成音声の生成が完了していなかった場合、
前記録音音声読出部は、さらに録音音声を追加前音声として読み出し、
前記音声再生部は、前記音声合成部が前記合成音声を生成している間に該追加前音声を再生し、そののち前記合成音声を再生する
音声生成装置。
【請求項2】
前記録音音声読出部は、前記推定された合成音声の生成に要する時間に応じて複数の録音音声を前記前音声として読み出し、
前記音声再生部は、前記音声合成部が前記合成音声を生成している間に前記複数の前音声を順次再生する
請求項1に記載の音声生成装置。
【請求項3】
前記録音音声読出部は、前記複数の前音声として同一の録音音声を繰り返し読み出す請求項に記載の音声生成装置。
【請求項4】
複数の前記テキストデータをカテゴリ別に記憶するテキスト記憶部を備え、
前記録音音声記憶部は、複数の前記録音音声をカテゴリ別に記憶しており、
前記音声合成部は、前記テキスト記憶部に記憶されている複数の前記テキストデータからテキストデータを選択して音声信号を合成し、
前記音声読出部は、前記テキストデータと同じまたは類似のカテゴリの録音音声を選択して読み出す
請求項1乃至請求項のいずれかに記載の音声生成装置。
【請求項5】
前記音声合成部、前記録音音声記憶部、前記録音音声読出部、および、前記音声再生部は、ビデオゲームを実行する制御部によって実現され、
前記テキストデータは、前記ゲーム上のキャラクタがユーザに対して発声する会話文であり、
前記キャラクタには前記ゲームの進行に応じて変化する連続的または段階的な感情パラメータが設定され、
前記カテゴリは、前記キャラクタの前記感情パラメータに基づいて設定される、
請求項に記載の音声生成装置。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、テキストに基づいて合成された音声を含む音声を再生する音声生成装置に関する。
【背景技術】
【0002】
ビデオゲームなどで、場面に応じた音声を生成(generate)する場合、テキストデータに基いて音声波形を合成する音声合成(特許文献1参照)や、予め録音しておいた音声を再生する音声再生などが用いられる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2001−034282
【発明の開示】
【発明が解決しようとする課題】
【0004】
音声合成は、どのような文でもテキストデータに基いて音声を合成できるため、自由度が高く、臨機応変な文の音声化が可能である。その反面、音声信号波形の合成に時間が掛かるため、即座の音声の生成ができない。また、人工的に合成された音声波形であるため単調で感情表現が十分できないという欠点がある。
【0005】
一方、録音音声の再生は、メモリから音声データを読みだすだけで再生できるため、即座の再生が可能であるとともに、録音音声として感情を込めた音を録音しておけば、感情豊かな表情のある音声の生成が可能である。その一方で、予め録音された音声しか再生できないため、自由度が低く臨機応変な内容を生成できないという欠点がある。
【0006】
この発明の目的は、自由度の高い内容の音声を表情豊かに生成できる音声再生装置を提供することにある。
【課題を解決するための手段】
【0007】
本発明の音声生成装置は、仮想的な話者であるキャラクタを表示する表示部と、ユーザからの入力を受け付ける操作部と、操作部に入力された語句を記憶する語句記憶部と、テキストデータを作成し、該作成されたテキストデータに基づいて音声信号を合成して合成音声を生成する音声合成部と、音声信号である録音音声を記憶部に予め記憶する録音音声記憶部と、録音音声を、記憶部から読み出す録音音声読出部と、キャラクタが発する音声として、音声信号および録音音声を再生する音声再生部と、を備える。音声合成部は、語句記憶部に記憶されている語句を含むテキストデータを作成し、録音音声読出部は、音声合成部が合成音声の生成に要する時間を推定し、この推定された時間に応じた録音音声を前音声として読み出す。音声再生部は、音声合成部が合成音声を生成している間に前音声を再生する。音声再生部が前音声の再生を終了したとき、音声合成部による合成音声の生成が完了していなかった場合、録音音声読出部は、さらに録音音声を追加前音声として読み出し、音声再生部は、音声合成部が合成音声を生成している間に該追加前音声を再生し、そののち合成音声を再生する。
【0009】
上記発明において、録音音声読出部が、推定された合成音声の生成に要する時間に応じて複数の録音音声を前音声として読み出し、音声再生部は音声合成部が前記合成音声を成している間に複数の前音声を順次再生してもよい。また、この場合に、録音音声読出部は、複数の前音声として同一の録音音声を繰り返し読み出してもよい。
【0010】
上記発明において、複数のテキストデータをカテゴリ別に記憶するテキスト記憶部をさらに備え、録音音声記憶部が複数の録音音声をカテゴリ別に記憶してもよい。音声合成部は、テキスト記憶部に記憶されている複数のテキストデータからテキストデータを選択して音声信号を合成し、音声読出部は、テキストデータと同じまたは類似のカテゴリの録音音声を選択して読み出すようにしてもよい。
【0011】
上記発明において、音声合成部、録音音声記憶部、録音音声読出部および音声再生部はビデオゲームを実行する制御部によって実現されてもよい。そして、テキストデータは、ゲーム上のキャラクタがユーザに対して発声する会話文であり、キャラクタにはゲームの進行に応じて変化する連続的または段階的な感情パラメータが設定され、カテゴリはキャラクタの感情パラメータに基づいて設定されてもよい。
【発明の効果】
【0012】
この発明によれば、テキストデータに基づく自由度の高い音声を録音音声で表情づけして生成することが可能になる。
【図面の簡単な説明】
【0013】
図1】本発明の実施形態である音声生成装置のブロック図である。
図2】音声生成装置による音声生成の手順を説明する図である。
図3】ゲーム装置のブロック図である。
図4】ゲーム装置のメモリ構成図である。
図5】ゲーム装置で実行されるゲームの進行手順を説明する図である。
図6】ゲーム装置制御部のゲームにおける会話処理を示すフローチャートである。
図7】長い会話文に対応した会話処理を示すフローチャートである。
図8】長い文の音声を分割して生成する場合の音声生成の手順を説明する図である。
【発明を実施するための形態】
【0014】
図面を参照してこの発明の実施形態である音声生成装置(generator)100について説明する。図1は音声生成装置100の機能ブロック図である。図2は、音声生成装置100による音声生成の手順を示す図である。この音声生成装置100は、テキストデータ(以下、単にテキストと呼ぶ。)110に基いて音声データを合成(synthesize)する音声合成部101、および、音声データを再生(playback)する音声再生部104を備えている。
【0015】
音声再生部104は、予め録音された音声データ(録音音声)111、および、音声合成部101が合成した音声データ(合成音声)112の両方を再生する。音声合成部101がテキスト110に基づく音声を合成するとき、音声再生部104が、図2に示すように、その合成音声112を再生する前後に、予め録音されていた録音音声111(前音声111A、後音声111B)を再生する。
【0016】
録音音声は、たとえば声優などが表情豊かに発声した音声(生声)である。これにより、人工的に合成されて表情が乏しい合成音声112を録音音声で補完することができる。
【0017】
音声合成部101に供給されるテキスト110は、例えば、何らかの感情(例えば喜びや驚き)を伴ったものである。録音音声メモリ103には、種々の感情に対応し、その感情を表現する複数の録音音声が記憶されている。前音声111Aおよび後音声111Bは、供給されるテキストの感情と同じような感情を表現するもの(同じようなカテゴリに分類されるもの(図4参照))が選択される。
【0018】
テキスト110を音声合成して出力するプロセスがスタートすると、まず、前音声111Aがメモリ103から読み出され、これを音声再生部104で再生する。前音声111Aが再生されている間に、音声合成部101は、供給されたテキスト110を音声化(音声合成)する。音声合成部101によって合成された合成音声112は合成バッファ102に記憶され、前音声111Aの再生が終了したのち、前音声111Aに続いて再生される。合成音声112の再生中に後音声111Bが読み出される。合成音声112の再生が終了すると、音声再生部104は、これに続けて後音声111Bを再生する。
【0019】
後音声111Bも前音声111Aと同様に、メモリ103に記憶されている録音音声111のなかから、音声合成部101に供給されるテキスト110(音声合成部101で合成された合成音声112)に対応するものが選択される。なお、後音声111Bのメモリ103からの読み出しは、前音声111Aの読み出しと同時に行われてもよい。
【0020】
後音声111Bは前音声111Aとは別のものが選択されるのが好ましいが、同じものであってもよい。前音声111Aと合成音声112との間、および、合成音声112と後音声111Bとの間は、完全に連続していてもいなくてもよいが、ユーザが聴覚的に一連の発声として聞こえる程度の間隔(たとえば1秒以内)で連続して再生されることが好ましい。図2に示した前音声111A、後音声111Bは、両方再生されてもよいが前音声111Aのみでもよい。
【0021】
図1図2に説明した音声生成装置100は、音声を合成する種々の装置に適用可能である。例えば、ビデオゲームにおけるキャラクタの会話音声の生成に用いてもよい。以下、音声生成装置100の適用例として携帯ゲーム機およびこの携帯ゲーム装置で実行されるゲームについて説明する。
【0022】
以下一例として説明するゲームは、ゲーム中のキャラクタ(女の子)とユーザ(ゲームのプレイヤ)が会話をしながら、キャラクタ(AI)の知識を増やしてゆく育成ゲームである。キャラクタは、ユーザと会話する言葉を発する。この言葉の生成機能を上述の音声生成装置100が担当する。
【0023】
図3は、上記音声生成装置100の機能がプログラムとの協働で実現されるゲーム装置1のブロック図である。図4において、ゲーム装置1は、バス26上に、制御部20、操作部30、ゲームメディアインタフェース31、SDカードインタフェース32、無線通信回路部33およびマイクインタフェース34を有している。制御部20は、CPU21、ROM(フラッシュメモリ)22、RAM23、画像プロセッサ24および音声プロセッサ25を含んでいる。
【0024】
画像プロセッサ24には、ビデオRAM(VRAM)40が接続され、VRAM40には表示部41が接続されている。表示部41は、上述の上部ディスプレイ10および下部ディスプレイ11を含む。音声プロセッサ25には、D/Aコンバータを含むアンプ42が接続され、アンプ42にはスピーカ16およびイヤホン端子17が接続されている。
【0025】
操作部30は、上述のタッチパネル12、ボタン群13およびスライドパッド14を含み、それぞれユーザの操作を受け付けて、その操作内容に応じた操作信号を発生する。この操作信号はCPU21によって読み取られる。マイクインタフェース34は、A/Dコンバータを内蔵している。マイクインタフェース34には、マイク18が接続されている。マイクインタフェース34は、マイク18が集音した音声をデジタル信号に返還して制御部20に入力する。
【0026】
ゲームメディアインタフェース31はメディアスロット31Aを含み、メディアスロット31Aにセットされたゲームメディア5に対するリード/ライトを行う。ゲームメディア5は、専用の半導体メモリであり、内部にゲームデータおよびゲームプログラムが記憶されている。ゲームデータは、キャラクタが話す会話文のテキスト110、および、前音声、後音声として用いられる録音音声111などを含んでいる。また、ゲームメディア5は、ゲーム履歴データ記憶エリア50を有している。
【0027】
ゲーム履歴データは、ユーザがこのゲームにおいて入力した語句などを含む。ゲームが一旦終了されたとき、そのときのゲームの状態を示すゲーム履歴データがRAM23からゲーム履歴データ記憶エリア50に保存される。その後、ゲームが再開されるとき、ゲーム履歴データ記憶エリア50からRAM23に転送される。なお、ゲームメディア5は、専用の半導体メモリに限定されず、汎用の半導体メモリ、光ディスクなどでも構わない。
【0028】
SDカードインタフェース32にはSDカード6が接続される。SDカード6は、マイクロSDカードであり、下部筐体1Bに内蔵されている。SDカード6には、ダウンロードされたゲームプログラムなどが記憶される。
【0029】
RAM23には、ゲームメディア5から読み込まれたゲームプログラムおよびゲームデータを記憶するロードエリア、および、CPU21がゲームプログラムを実行する際に使用されるワークエリアが設定される。したがって、RAM23には、会話文テキスト110や録音音声111を記憶する記憶エリア61や、初期設定やキャラクタとの会話においてユーザが入力した語句を記憶する入力語句記憶エリア60が設けられている。また、図1の合成音声バッファ102もRAM23内に設けられる。ROM22は、フラッシュメモリで構成され、ゲーム装置1がゲームメディア5からゲームプログラムを読み込んでゲームを実行するための基本プログラムが設定される。
【0030】
画像プロセッサ24は、GPU(Graphics Processing Unit,グラフィックス・プロセッシング・ユニット)を有し、上述の上部ディスプレイ10に表示されるキャラクタの画像や下部ディスプレイ11に表示される文字パネルの画像などを形成しVRAM40上に描画する。
【0031】
音声プロセッサ25は、DSP(Digital Signal Processor,デジタル・シグナル・プロセッサ)を有し、ゲーム音声を生成する。このゲームにおいて、ゲーム音声には、キャラクタがユーザと会話する音声が含まれており、図1に示した音声生成装置100は、ゲーム装置1の制御部20(特に音声プロセッサ25)およびゲームプログラムの協働によって実現される。アンプ42は、音声プロセッサ25によって音声信号を増幅してスピーカ16およびイヤホン端子17に出力する。
【0032】
無線通信回路部33は、2.4GHz帯のデジタル通信回路を備えており、無線アクセスポイントを介したインターネット通信を行うとともに、直接他のゲーム装置1と通信を行う。無線通信回路部33は、インターネット通信を行う場合にはIEEE802.11g(いわゆるWi−Fi)規格で通信を行い、ローカル通信を行う場合にはIEEE802.11b規格のアドホックモードまたは独自の規格で通信を行う。
【0033】
なお、図1の音声合成部101および音声再生部104は、制御部20とゲームプログラムとの協働で実現される。
【0034】
図4は、ゲームデータの一部である会話文のテキスト110と録音音声111の記憶形態を説明する図である。図4(A)は、テキスト110および録音音声111の記憶エリア61の構成を示す図である。記憶エリア61は、複数のカテゴリに区分され、各カテゴリは複数のサブカテゴリに区分されている。
【0035】
カテゴリは、たとえば、「よろこび」、「通常」、「ドッキリ」などの大雑把な感情の分類である。サブカテゴリは、カテゴリ(大雑把な感情)中の具体的な感情を表している。たとえば、「よろこび」カテゴリは、「うれしい」、「満足」、「しあわせ」、「気楽」、「リラックス」などのサブカテゴリを含んでいる。また、「通常」カテゴリは、「確認」、「否定」、「思いつき」、「ひとりごと」などのサブカテゴリを含んでいる。
【0036】
各サブカテゴリに、1または複数の会話文のテキスト(会話文データ)、および、1または複数の録音音声が記憶される。所定の会話のタイミングにゲームの進行状況に応じたカテゴリおよび会話文110が選択され、このカテゴリに対応する録音音声が前音声111A、後音声111Bとして選択される。
【0037】
図4(B)は、音声生成データ記憶領域の一部の具体例を示した図である。この図は、「よろこび」カテゴリの記憶エリアの例を示した図である。「よろこび」カテゴリには「うれしい」、「満足」、「しあわせ」、「気楽」、「リラックス」のサブカテゴリを含み、それぞれのサブカテゴリ領域には1または複数の会話文および録音音声が記憶されている。
【0038】
会話文としては、「○○をもらってうれしいです。」や「○○おいしそう。」などの文が記憶される。文中の「○○」は空欄を示し、この箇所にユーザによって入力された語句が当てはめられる。
【0039】
録音音声としては「うわ〜」、「わーい」、「やった!」など「うれしい」の感情を表現する短い音声が記憶される。この記憶されている会話文および録音音声に基づいて「うわ〜、プレゼントをもらってうれしいです。やった!」などのキャラクタの発言が生成される。
【0040】
また、記憶された一部または全部の録音音声を複数のカテゴリに共通のものとしてもよい。たとえば、「え〜」、「う〜ん」、「あ〜」などの会話の間をつなぐ言葉または「ははは」「うふ」「キャ」などの笑い声などを共通の録音音声として記憶してもよい。これらの録音音声が、全てのカテゴリで共通に用いられてもよく、一部の(複数の)カテゴリで共通に用いられてもよい。
【0041】
また、同じ言葉、たとえば「う〜ん」などが複数のカテゴリで用いられる場合、各カテゴリ毎に録音音声として記憶されてもよい。この場合、それぞれそのカテゴリに応じた表情づけで発音されたものが録音されればよい。
【0042】
なお、制御部20は、会話文への語句の当てはめを、意味を考慮せずにランダムに行ってもよい。たとえば、「え〜、そのゲームって美味しそうですね。う〜ん。」などの通常とは異なる用法で入力語句が使用されてもよい。このゲームでは、この語句の間違った用法により、キャラクタの可愛さや学習レベルを演出している。
【0043】
また、制御部20は、キャラクタに「え〜、そのゲームって美味しそうですね。う〜ん。」との会話をさせたあと、たとえば、「ゲームってどんな味ですか?」とユーザに質問させる。このとき、ユーザが「ゲームは食べ物ではない。」と返答をすると、制御部20は、ゲームが食べ物ではないことを記憶する(学習する)。制御部20は、質問と並行して複数の回答用選択肢を表示し、ユーザに適当な選択肢を選択させることで、ユーザの返答を得るようにしてもよい。なお、制御部20(キャラクタ)の学習については後述する。
【0044】
また、会話文中に設けられる空欄は複数であってもよい。たとえば、「○○さんは、△△が好きなんですか?」などである。○○、△△のところに、たとえばユーザの名前やユーザによって登録された語句が当てはめられる。
【0045】
図5はゲーム装置1の制御部20およびユーザによって行われる会話の順序・流れを示す図である。ゲームのスタート時に、ユーザがゲーム装置1に対してプロファイルや好みを登録する(S100)。そして、入力された内容を制御部20が入力語句記憶エリア60に記憶する(S101)。
【0046】
その後、ユーザとキャラクタがゲーム中で一緒に旅に出るゲームを開始させる(S110)。そして、制御部20は、旅の途中の場面ごとにキャラクタとユーザが会話するイベントを実行する(S120)。
【0047】
会話は以下の手順で行われる。まず、制御部20はキャラクタがユーザに質問するイベントを実行させ(S121)、これに対するユーザの回答を受け付ける(S122)。
【0048】
キャラクタは、ユーザによって登録された語句を会話文に当てはめることで会話を行う。これに対するユーザの会話の入力は、下画面に表示される文字パレットで文字を選択することで行われる。
【0049】
制御部20は、ユーザによって入力された回答を記憶し、その内容(質問に対する回答)を更新(学習)する。この会話イベントを繰り返すことで、入力語句記憶エリア60に記憶される語句が増加し、且つ、その語句の属性(意味)を蓄積する。これにより、キャラクタが成長する様子を表現することができる。
【0050】
図6は、キャラクタの発言を作成する制御部20の動作を示すフローチャートである。この処理は、定期的なトリガに応じて実行される。まず、現在のゲームの状況を判断する(S10)。このゲームの状況に基いて今が会話タイミングか否かを決定する(S11)。タイミングでない場合には(S11でNO)そのまま動作を終了する。
【0051】
会話のタイミングであると判断された場合は(S11でYES)、現在のゲームの状況に基づき生成する会話のカテゴリや会話文を選択する(S12)。なお、このカテゴリ、会話文の選択はランダムに行われてもよい。
【0052】
次に、選択された会話文の空欄に当てはめる語句を入力語句記憶エリア60から選択する(S13)。これで会話文のテキスト110が完成する。そして、この会話文と同じカテゴリに分類されている録音音声111のなかから、前音声111Aおよび後音声111Bを選択する(S14)。
【0053】
完成した会話文のテキストを音声合成部101に出力して音声データの合成を指示するとともに(S15)、前音声111Aを音声再生部104に入力して再生させる(S16)。前音声111Aの再生は1〜2秒程度継続し、この間に音声合成部101は会話文の音声を合成する。
【0054】
前音声111Aの再生が終了すると(S17)、音声合成部101によって合成された合成音声112を音声再生部104に再生させる(S18)。合成音声112の再生が終了すると(S19)、後音声111Bを音声再生部104に再生させる(S20)。この再生とともに、ユーザによる回答の入力を受け付ける(S21)。入力された回答の語句を入力語句記憶エリア60に記憶する(S22)。
【0055】
上の実施形態では、図2図6に示したように、会話文(合成音声)112の前後に録音音声111(前音声111A、後音声111B)を付加した、すなわち、会話文を録音音声で挟んだ。これに代えて、会話文の前のみに録音音声を付加するようにしてもよい。
【0056】
会話文のテキストが長い場合には、前音声111Aを長くすればよい。ただし、録音音声は、たとえば「うわ〜」、「わーい」、「やった!」などの短い音声が多いため、前音声111Aを長くする場合には、複数の録音音声を組み合わせたり、同じ録音音声を繰り返したものを前音声111Aとして再生すればよい。たとえば、「わーい、やった、やった!」などである。
【0057】
また、前音声111Aの再生が終了したときに、会話文の音声合成が完了していなかった場合、前音声111Aを追加して再生してもよい。この場合、先に再生した前音声111Aを繰り返してもよく、新たな前音声111Aを選択してもよい。
【0058】
図7は、会話文の音声合成の所要時間に応じて前音声111Aの長さを調整する場合の制御部20の動作を示すフローチャートである。この処理は、定期的なトリガに応じて実行される。まず、現在のゲームの状況を判断する(S30)。このゲームの状況に基いて今が会話タイミングか否かを決定する(S31)。タイミングでない場合には(S31でNO)そのまま動作を終了する。
【0059】
会話のタイミングであると判断された場合は(S31でYES)、現在のゲームの状況に基づき生成する会話のカテゴリや会話文を選択する(S32)。次に、選択された会話文の空欄に当てはめる語句を入力語句記憶領域60から選択する(S33)。これで会話文のテキストが完成する。完成した会話文のテキストを音声合成部101に出力して音声データの合成を指示する(S34)。制御部20は、会話文の長さ等に基づいて音声合成に必要な時間を推定する(S35)。推定された合成時間に基づいて、前音声111Aとする録音音声を1または複数選択し、および/または、選択した録音音声の繰り返し回数を設定する(S36)。前音声111Aは、会話文と同じカテゴリに分類されている録音音声のなかから選択されればよい。選択された録音音声を設定された回数再生するように音声再生部104に指示する(S37)。これにより、音声再生部104は前音声111Aの再生を開始する。
【0060】
音声合成に必要な時間は、テキストの文字数、合成エンジンの能力、他の実行中のゲーム処理の負荷等に基づいて推定される。時間の指標は、秒(ミリ秒)にかぎらず、映像フレーム数やCPU21の処理スロット数などの値で算出されればよい。
【0061】
S39で前音声111Aの再生が終了するまで待機する(S38)。前音声の再生が終了すると(S38でYES)、音声合成部101による音声合成が完了しているかを判断する(S39)。音声合成が完了している場合には(S39でYES)、音声再生部104に対して合成音声の再生を指示する(S41)。
【0062】
一方、S35で推定した以上に音声合成に時間が掛かり、前音声111Aの再生が終了しても音声合成が完了していない場合には(S39でNO)、再生が終了した前音声111Aを再度再生するよう音声再生部104に指示し(S40)、S38に戻る。なお、このとき新たな録音音声を再度選択および読み出して再生してもよい。
【0063】
処理がS41に進んだ場合、合成音声の再生が終了するまでに後音声111Bを選択する(S42)。なお、後音声の選択は、S32以後、合成音声の再生が終了するまでの間のいつ行ってもよい。S41で再生を開始した合成音声112の再生が終了すると(S43でYES)、後音声111Bを音声再生部104に再生させる(S44)。この再生とともに、ユーザによる回答の入力を受け付ける(S45)。入力された回答の語句を入力語句記憶領域60に記憶する(S46)。
【0064】
また、会話文のテキストが長い場合、会話文を複数のフレーズに分割してもよい。この場合、フレーズごとに音声合成して再生し、各フレーズの間にも録音音声を挿入すればよい。挿入された録音音声の再生中にその直後のフレーズの音声合成をすればよい。また、複数の会話文を連続して合成する場合にも同様に、会話文と会話文との間に録音音声を挿入して、この録音音声の再生中に後の会話文の音声合成を合成するようにすればよい。
【0065】
図8は、会話文を2つのフレーズに分割し、フレーズ毎に音声合成する場合の手順を示した図である。音声合成装置としては、図1に示したものが適用可能である。
【0066】
テキスト110を音声合成して出力するプロセスがスタートすると、まず、前音声111Aがメモリ103から読み出され、これを音声再生部104で再生する。前音声111Aが再生されている間に、音声合成部101は、供給されたテキスト(会話文の前半)を音声化(音声合成)する。音声合成部101によって合成された合成音声112Aは合成バッファ102に記憶され、前音声111Aの再生が終了したのち、前音声111Aに続いて再生される。合成音声112Aの再生中にフレーズ間で再生される録音音声である中音声111Cが読み出される。合成音声112Aの再生が終了すると、音声再生部104は、これに続けて中音声111Cを再生する。なお、中音声111Cの読み出しは、前音声111Aの読み出し後、合成音声112Aの生成終了までであればいつでもよい。
【0067】
中音声111Cも前音声111Aと同様に、メモリ103に記憶されている録音音声111のなかから、会話文と同じカテゴリのものを選択すればよい。中音声111Cが再生されている間に、音声合成部101は会話文の後半を音声合成する。音声合成部101によって合成された後半の合成音声112Bは合成バッファ102に記憶され、中音声111Cの再生が終了したのち、中音声111Cに続いて再生される。後半の合成音声112Bの再生中に後音声111Bが読み出される。合成音声112Bの再生が終了すると、音声再生部104は、これに続けて後音声111Bを再生する。
【0068】
このように、会話文を複数のフレーズに分割し、その間に生声である録音音声111を挿入することにより、長い合成音声で表情が不足する場合でも、途中で表情のある録音音声111を挿入して表情を豊かにすることができる。また、長い会話文を音声合成するには長い時間が必要であるが、会話文を複数のフレーズに分割することで、それぞれのフレーズを短時間で合成し、合成時間を録音音声でカバーすることが可能になる。
【0069】
さらに長い会話文を複数フレーズに分割する場合、または、複数の会話文を連続して音声合成する場合には、図8に示したように、それぞれのフレーズまたは会話文ごとに合成・再生し、且つ、各フレーズまたは会話文の前に、図7のフローチャートに示したように、音声合成時間に合わせた長さの前音声111Aを再生するようにすればよい。
【0070】
なお、音声合成部101は、会話文の内容やゲームの状況に応じて、合成される音声112の速さ、ピッチ、音量などを変化させてもよい。その場合、そのパラメータが音声再生部104に提供され、音声再生部104は、合成音声112に合わせた速さ、ピッチ、音量で録音音声111を再生する。また、音声合成部101は通常の速さ、ピッチ、音量で音声を合成し、音声再生部104が、会話文の内容やゲームの状況に応じて、合成音声112、録音音声111の両方の速さ、ピッチ、音量を調整して再生するようにしてもよい。
【0071】
なお、後音声111Bの語尾を、キャラクタの性格、キャラクタの成長度合い、キャラクタの服装などに応じて変化させてもよい。すなわち、「〜にゃ」、「〜でございます。」などの語を選択された後音声の語尾に付加して再生してもよい。また、予め「○○にゃ」、「○○でございます。」(○○は語句)の音声を録音音声として記憶しておいてもよい。
【0072】
また、ゲーム上の場所に応じて、生成する音声(キャラクタが喋る音声)の音量や音質を変化させてもよい。例えば、場所が電車内の場合にはヒソヒソ声、青空の下では元気な声の音声を生成してもよい。
【符号の説明】
【0073】
1 ゲーム装置
5 ゲームメディア
20 制御部
21 CPU
22 ROM(フラッシュメモリ)
50 ゲーム履歴データ記憶エリア
60 入力語句記憶エリア
61 (会話文、録音音声の)記憶エリア
100 音声生成装置
101 音声合成部
104 音声再生部
【要約】
【課題】自由度の高い内容の音声を表情豊かに生成できる音声再生装置を提供する。
【解決手段】複数のテキストデータを記憶するテキスト記憶部、複数の録音音声を記憶する録音音声記憶部、選択されたテキストデータを音声信号に合成する音声合成部、録音音声を記憶部から読み出す録音音声読出部、および、音声信号を再生する音声再生部を備える。録音音声読出部は、音声合成部が合成音声の生成に要する時間を推定し、この推定された時間分の録音音声を前音声として読み出す。音声再生部は、音声合成部が合成音声を生成している間に前音声を再生し、その後合成音声を再生する。録音音声は、テキストデータの感情を表情豊かに表現した人声などからなる。
【選択図】図7
図1
図2
図3
図4
図5
図6
図7
図8