JP2006155299A - 情報処理装置、情報処理プログラム、および、プログラム記録媒体 - Google Patents
情報処理装置、情報処理プログラム、および、プログラム記録媒体 Download PDFInfo
- Publication number
- JP2006155299A JP2006155299A JP2004345932A JP2004345932A JP2006155299A JP 2006155299 A JP2006155299 A JP 2006155299A JP 2004345932 A JP2004345932 A JP 2004345932A JP 2004345932 A JP2004345932 A JP 2004345932A JP 2006155299 A JP2006155299 A JP 2006155299A
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- information
- synchronization
- executed
- processing operation
- 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
- Processing Or Creating Images (AREA)
Abstract
【課題】 簡単なシナリオを記述するだけで複数の情報処理動作を互いに指定されたタイミングで同期をとりながら実行することができる。
【解決手段】 動作実行部3は、シナリオ記憶部2から読み込んだシナリオに基づいて次の動作を取得して実行し、動作が終了し且つ相手の動作が終了していなければ「待ち合わせ動作」を行い、動作が終了せず且つ相手の動作が終了していれば「急ぐ動作」を行い、動作が終了せず且つ相手も終了していなければ「通常動作」を行う。このように、動作の途中で同期を取って、動作の途中から動作の速度を変化させたり待ち合わせを行ったりすることが可能になる。
【選択図】図1
【解決手段】 動作実行部3は、シナリオ記憶部2から読み込んだシナリオに基づいて次の動作を取得して実行し、動作が終了し且つ相手の動作が終了していなければ「待ち合わせ動作」を行い、動作が終了せず且つ相手の動作が終了していれば「急ぐ動作」を行い、動作が終了せず且つ相手も終了していなければ「通常動作」を行う。このように、動作の途中で同期を取って、動作の途中から動作の速度を変化させたり待ち合わせを行ったりすることが可能になる。
【選択図】図1
Description
この発明は、コンピュータ・グラフィックスや音声合成や音楽再生等のマルチメディアを用いたマルチメディア・ユーザー・インタフェースとして機能する情報処理装置,情報処理プログラムおよびプログラム記録媒体に関する。
コンピュータが大衆化するのに伴って、より自然なユーザー・インタフェース技術が必要とされている。例えば、近年においては、CG(コンピュータ・グラフィックス)によるアニメーションと音声合成とを使組み合わせたエージェント技術等、複数の異なるメディアを用いたユーザー・インタフェースが研究されている。
通常、このような複雑なユーザー・インタフェースを実現するためには、CGや音声合成等の処理を独立させたモジュールに分割し、並列に実行させることがよく行われる。ここで言うモジュールとは、単一プログラム内の複数の機能モジュールだけではなく、単一コンピュータ内で同時に実行される複数のプログラムや、ネットワークで接続された複数コンピュータで分散実行されるプログラムであってもよい。あるいは、コンピュータグラフィックではなく、物理的な動作を行うロボットや電子機器と考えてもよい。また、複数のモジュールは必ずしも画像と音声とのように異なるタイプとは限らず、音声合成と音声合成と言った同一のモジュールの場合もある。
CGや音声合成等の処理を、このような複数のモジュールに分割した場合、モジュール同士を同期させる必要がある。そして、例えば音声合成に合せてアニメーションキャラクタ(エージェント)の口を動かして自然に見せるリップシンク技術のように、複数のメディアを同期させる技術が研究されている。但し、上記リップシンク技術は、音声に対して画像を一方的に合わせるものであり、動作も口の周辺に止まるために、エージェントが歩いたりある方向を指示したりする等の体全体の動作と音声合成とを同期させることは行われない。
口以外の動作を同期させる技術として、例えば特開2003‐216173号公報(特許文献1)に開示された「合成音声及び映像の同期制御装置」がある。この特許文献1には、音声合成の韻律情報に基づいて、CGによるアニメーションキャラクタの動作を制御する方法が開示されている。この技術によれば、音声合成によって「てく、てく、てく」と言いながらエージェントが歩くといった事が可能になる。
しかしながら、上記従来の特許文献1に開示された合成音声および映像の同期制御装置には、以下のような問題がある。すなわち、CGのアニメーションで表現されるエージェントの動作は、例えばエージェントが画面上を移動する場合、どの位の距移を移動するのか、またどの位の速度で移動するかに依存している。また、音声合成に必要な時間は、合成すべきテキストの量や発声速度に依存している。そして、エージェントの動作時間と音声合成時間とは、同期するように調整する必要がある。ところが、エージェントの動作時間と音声合成時間との調整は、ある程度は可能であるが、自然な動作や自然な発声にするためには調整できる範囲に限界がある。
これを無視して、上記特許文献1に開示された合成音声および映像の同期制御装置の場合のように、何れかに強制的に同期させることは不自然さを招くことになる。例えば、ある場面において、エージェントの動作に必要な時間に対して音声合成用のテキストが短い場合には、音声合成側に動作を合わせると、動作が完了しないうちに次の場面が開始するため、動作が不連続になったり、無理に発声時間内に合せることで動作が不自然に早くなったりする。逆に、動作側に音声合成を合せると、音声合成が先に終わってからしばらく音のない状態で動作したり、無理に動作時間に合せるために発声速度を遅くすると、発声が不自然に遅くなったりする。
これらのことを防ぐためには、動作や発声テキストを作成する際に十分な検討を重ねて設計することが必要である。ところが、状況に応じて発声内容や動作内容が変化するエージェントの場合には、全ての状況に対して発声テキストと動作内容との同期を調整しながらシナリオを作成する事は現実的でないだけではなく、種々の状況が起こる場合に対処できないのである。
次に、複数の音声合成モジュールを同期させる場合について述べる。従来の音声合成モジュールを用いて、複数の音声合成を同期させる場合には、次のような課題がある。図10〜図12は、音声合成装置に与えるシナリオと、それを合成した場合の実際の音声出力の時間的な流れとを示している。ここで、目的とする出力は、図12に示すように、話者A,Bが同時に発声し、話者Aの発声を話者Bが遮るという状況を音声で実現することである。
図10は、一般的な音声合成装置を使ってシナリオを順次読み上げさせる場合を示す。話者Aと話者Bとは同時に発声しないため、話者Aが「本日は晴天なり、本日は」という発声を終了してから、話者Bが「もう結構」と発声するため、話者Bが話者Aの発声を遮ったという印象を与えないという問題がある。
図11は、シナリオを分割し、部分毎に話者A用の音声合成モジュールと話者B用の音声合成モジュールとを並列して動作させることによって、目的の出力に近づける方法の例を示す。シナリオ中の話者「B+」は、直前の発声終了を待たずに同時に発声を開始することを示している。図の例では、話者Aの発声を「本日は晴天なり、本日は」と「晴天なり」とに分割し、後半の「晴天なり」を話者Bの「もう結構です。黙って」と並列に発声させる。そして、その後、話者Aの「はい」と話者Bの「ください」とを並列に発話させている。この方法は、一見目的に叶っているように見えるが、文章を途中で区切っているために、発声される音声のイントネーションがおかしくなってしまう。これは、音声合成技術においては、一連の文章単位でイントネーションを生成するため、途中で区切られた文章の場合には、自然なイントネーションが生成できなくなるためである。
図12は、シナリオの中に休止(ポーズ)の時間を指定し、話者A,話者B夫々の音声合成モジュールを同時に実行する方法を示す。ここで、各音声合成モジュールによる出力音声は、自動的に合成されてスピーカから出力されるものとする。ここで、ポーズの指定には「<PAU=1>」または「<PAU=3>」という命令を用い、1秒や3秒という絶対的な時間で指定している。このようにポーズを指定して2つの音声合成モジュールを同時に実行することによって、目的の出力結果を得ている。しかしながら、この方法では、テキストの内容が変化した場合には、もう一度ポーズの時間を設定し直す必要があり、様々な状況に対応したシナリオを作成するのが困難である。そのために、動作や発声テキストが状況によって変化するエージェントのようなユーザー・インタフェースの場合には対応できないと言う問題がある。
特開2003‐216173号公報
そこで、この発明の課題は、簡単なシナリオを記述するだけで複数の情報処理動作を互いに指定されたタイミングで同期をとりながら実行することができる情報処理装置、情報処理プログラム、および、プログラム記録媒体を提供することにある。
上記課題を解決するため、この発明の情報処理装置は、
情報処理動作の動作内容を指示するテキスト情報が記憶されているテキスト情報記憶手段と、
上記テキスト情報記憶手段から上記テキスト情報を読み出し、この読み出されたテキスト情報で指示された動作内容を取得し、この取得した動作内容に従って情報処理動作を実行する動作実行手段と、
上記動作実行手段からの指示に従って、他の装置から送出される同期情報を検出する同期検出手段と
を備え、
上記動作実行手段は、上記テキスト情報上における予め設定された位置で、上記同期検出手段を介して取得した同期情報に基づいて、上記他の装置が実行する情報処理動作との同期を取りながら、上記情報処理動作を実行することを特徴としている。
情報処理動作の動作内容を指示するテキスト情報が記憶されているテキスト情報記憶手段と、
上記テキスト情報記憶手段から上記テキスト情報を読み出し、この読み出されたテキスト情報で指示された動作内容を取得し、この取得した動作内容に従って情報処理動作を実行する動作実行手段と、
上記動作実行手段からの指示に従って、他の装置から送出される同期情報を検出する同期検出手段と
を備え、
上記動作実行手段は、上記テキスト情報上における予め設定された位置で、上記同期検出手段を介して取得した同期情報に基づいて、上記他の装置が実行する情報処理動作との同期を取りながら、上記情報処理動作を実行することを特徴としている。
上記構成によれば、同じテキスト情報あるいは互いに関連を有する異なるテキスト情報に基づいて上記他の装置と同期を取りながら情報処理動作を実行する際に、上記テキスト情報の開始時点や終了時点を上記他の装置と同期させることが可能になる。その場合、本情報処理装置と上記他の装置との同期を取るために、上記テキスト情報を分割したり、上記テキスト情報中に区切りを入れたりする必要がない。したがって、上記情報処理動作が音声合成動作である場合に、発話内容を指示するテキスト情報に基づいて文章単位でイントネーションを生成することができ、自然なイントネーションの合成音声を生成・出力することができる。
さらに、本情報処理装置が音声合成装置であり上記他の装置がCG装置である場合に、CGキャラクタの動作の1歩に音声合成の1文字を割り当てるようなことが、上記テキスト情報に対して複雑な設定等を行うことなく実現することができるのである。
また、1実施の形態の情報処理装置では、
上記テキスト情報には、上記他の装置が実行する情報処理動作との同期をとるべき位置を指定する同期命令が記述されており、
上記動作実行手段は、現在実行している情報処理動作の上記テキスト情報上における位置が上記同期命令に至ると、上記同期検出手段を介して上記同期情報を取得して上記他の装置が実行する情報処理動作との同期を取るようになっている。
上記テキスト情報には、上記他の装置が実行する情報処理動作との同期をとるべき位置を指定する同期命令が記述されており、
上記動作実行手段は、現在実行している情報処理動作の上記テキスト情報上における位置が上記同期命令に至ると、上記同期検出手段を介して上記同期情報を取得して上記他の装置が実行する情報処理動作との同期を取るようになっている。
この実施の形態によれば、上記テキスト情報に記載された上記同期命令の位置で本情報処理装置の動作と上記他の装置の動作との同期を取ることができ、設計者は、上記テキスト情報上における上記同期を取る箇所を自由に設定することが可能になる。さらに、その場合であっても、上記情報処理動作が音声合成動作である場合には、上記テキスト情報に記述された同期命令を音声合成用のテキストから除外することによって、自然なイントネーションの合成音声を生成・出力することができる。
また、1実施の形態の情報処理装置では、
上記動作実行手段は、上記同期検出手段を介して取得した上記同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか否かを判断し、先行している場合には上記他の装置が実行している情報処理動作の終了を待つ待ち合わせ動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
上記動作実行手段は、上記同期検出手段を介して取得した上記同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか否かを判断し、先行している場合には上記他の装置が実行している情報処理動作の終了を待つ待ち合わせ動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
この実施の形態によれば、上記テキスト情報に記載された上記同期命令の位置で本情報処理装置の情報処理動作が上記他の装置の情報処理動作に対して先行しているか否かが判断され、この判断結果に応じた情報処理動作が実行されて上記他の装置の情報処理動作との同期が取られる。したがって、極自然な状態で上記情報処理動作間の同期を取ることができる。
また、1実施の形態の情報処理装置では、
上記動作実行手段は、上記同期検出手段を介して取得した上記同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して遅れているか否かを判断し、遅れている場合には現在実行している情報処理動作を急ぐ急ぎの動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
上記動作実行手段は、上記同期検出手段を介して取得した上記同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して遅れているか否かを判断し、遅れている場合には現在実行している情報処理動作を急ぐ急ぎの動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
この実施の形態によれば、上記テキスト情報に記載された上記同期命令の位置で本情報処理装置の情報処理動作が上記他の装置の情報処理動作に対して遅れているか否かかが判断され、この判断結果に応じた情報処理動作が実行されて上記他の装置の情報処理動作との同期が取られる。したがって、極自然な状態で上記情報処理動作間の同期を取ることができる。
また、1実施の形態の情報処理装置では、
上記動作実行手段は、上記同期検出手段を介して取得した上記同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断し、先行している場合には上記他の装置が実行している情報処理動作の終了を待つ待ち合わせ動作を行い、遅れている場合には現在実行している情報処理動作を急ぐ急ぎの動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
上記動作実行手段は、上記同期検出手段を介して取得した上記同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断し、先行している場合には上記他の装置が実行している情報処理動作の終了を待つ待ち合わせ動作を行い、遅れている場合には現在実行している情報処理動作を急ぐ急ぎの動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
この実施の形態によれば、上記テキスト情報に記載された上記同期命令の位置で本情報処理装置の情報処理動作が上記他の装置の情報処理動作に対して先行しているか遅れているかが判断され、この判断結果に応じた情報処理動作が実行されて上記他の装置の情報処理動作との同期が取られる。したがって、極自然な状態で上記情報処理動作間の同期を取ることができる。
また、1実施の形態の情報処理装置では、
上記同期検出手段を介して得られる同期情報には、次の同期位置までの予測時間を表す情報が含まれており、
上記動作実行手段は、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断する際に、上記同期情報に含まれた次の同期位置までの予測時間を表す情報に基づいて上記先行あるいは遅れの度合いを求め、この度合いに応じて現在実行している情報処理動作の動作速度を連続的に切り換えるようになっている。
上記同期検出手段を介して得られる同期情報には、次の同期位置までの予測時間を表す情報が含まれており、
上記動作実行手段は、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断する際に、上記同期情報に含まれた次の同期位置までの予測時間を表す情報に基づいて上記先行あるいは遅れの度合いを求め、この度合いに応じて現在実行している情報処理動作の動作速度を連続的に切り換えるようになっている。
この実施の形態によれば、現在実行している情報処理動作の上記他の装置の情報処理動作に対する先行あるいは遅れの度合いに応じて、現在実行している情報処理動作の動作速度を連続的に切り換えるので、上記他の装置の情報処理動作との同期をより自然な形で取ることができる。
また、1実施の形態の情報処理装置では、
上記テキスト情報には、上記同期をとるべき位置と、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行している場合に実行する情報処理動作および遅れている場合に実行する情報処理動作の少なくとも一方とを指定する同期命令が記述されており、
上記動作実行手段は、現在実行している情報処理動作の上記テキスト情報上における位置が上記同期命令に至ると、上記同期検出手段を介して上記同期情報を取得すると共に、この取得した同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断し、この判断結果に応じて当該同期命令が指定する情報処理動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
上記テキスト情報には、上記同期をとるべき位置と、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行している場合に実行する情報処理動作および遅れている場合に実行する情報処理動作の少なくとも一方とを指定する同期命令が記述されており、
上記動作実行手段は、現在実行している情報処理動作の上記テキスト情報上における位置が上記同期命令に至ると、上記同期検出手段を介して上記同期情報を取得すると共に、この取得した同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断し、この判断結果に応じて当該同期命令が指定する情報処理動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
この実施の形態によれば、上記同期命令によって、現在実行している情報処理動作が上記他の装置の情報処理動作に対して先行している場合に実行する情報処理動作、および、遅れている場合に実行する情報処理動作の少なくとも一方を予め指定するので、同期を取る場面に応じて様々な動作を設定することができる。例えば、音声合成装置における急ぎの動作であれば、発声を途中で中止する動作や、発話速度を速めて最後まで発声する動作や、「とばします」と言いながら次の場面へ進む動作等、場面に応じた動作を設定することができる。さらに、待ち合わせ動作であれば、「えー」と言いながら待つ動作や「それでー」と言いながら待つ動作の切り換えが可能になり、より自然な表現が可能になる。
また、1実施の形態の情報処理装置では、
上記テキスト情報は、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に同期している場合に実行する情報処理動作の動作内容を指示する部分と、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行している場合に実行する情報処理動作の動作内容および遅れている場合に実行する情報処理動作の動作内容の少なくとも一方を指示する部分とを含むと共に、上記同期を取るべき位置を指定する同期命令が付加されており、
上記動作実行手段は、現在実行している情報処理動作の上記テキスト情報上における位置が上記同期命令に至ると、上記同期検出手段を介して上記同期情報を取得すると共に、この取得した同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているか同期しているかを判断し、当該テキスト情報における上記判断結果に応じた部分で指示された情報処理動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
上記テキスト情報は、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に同期している場合に実行する情報処理動作の動作内容を指示する部分と、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行している場合に実行する情報処理動作の動作内容および遅れている場合に実行する情報処理動作の動作内容の少なくとも一方を指示する部分とを含むと共に、上記同期を取るべき位置を指定する同期命令が付加されており、
上記動作実行手段は、現在実行している情報処理動作の上記テキスト情報上における位置が上記同期命令に至ると、上記同期検出手段を介して上記同期情報を取得すると共に、この取得した同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているか同期しているかを判断し、当該テキスト情報における上記判断結果に応じた部分で指示された情報処理動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっている。
この実施の形態によれば、現在実行している情報処理動作が上記他の装置の情報処理動作に比して先行している場合と遅れている場合との少なくとも一方に実行する情報処理動作の動作内容を上記テキスト情報として記述するので、設計者は、現在実行している情報処理動作が上記他の装置の情報処理動作に同期している場合に実行する情報処理動作の動作内容を、上記他の装置の情報処理動作に比して長くなるか短くなるかを気にすることなく設定することができる。
また、1実施の形態の情報処理装置では、
上記動作実行手段は複数存在すると共に、夫々の動作実行手段は上記同期検出手段に対して上記同期情報を送出するようになっており、
上記同期検出手段は、上記夫々の動作実行手段からの指示を受け付けて、少なくとも上記各動作実行手段のうちの何れかから送出された同期情報を検出するようになっている。
上記動作実行手段は複数存在すると共に、夫々の動作実行手段は上記同期検出手段に対して上記同期情報を送出するようになっており、
上記同期検出手段は、上記夫々の動作実行手段からの指示を受け付けて、少なくとも上記各動作実行手段のうちの何れかから送出された同期情報を検出するようになっている。
この実施の形態によれば、上記動作実行手段を複数有しているので、例えば、各動作実行手段を話者A用の音声合成手段と話者B用の音声合成手段と話者A,Bのアニメーション画像生成手段で構成して、互いの情報処理動作を同期させることが可能になる。
また、1実施の形態の情報処理装置では、
上記動作実行手段が処理する情報は、画像情報,音声情報,音楽情報,機器の制御情報およびロボットの制御情報のうちの何れか1つである。
上記動作実行手段が処理する情報は、画像情報,音声情報,音楽情報,機器の制御情報およびロボットの制御情報のうちの何れか1つである。
この実施の形態によれば、画像情報処理装置,音声情報処理装置,音楽情報処理装置,機器の制御情報処理装置およびロボットの制御情報処理装置の間において、簡単なテキスト情報を記述するだけで互いに指定されたタイミングで同期を取りながら情報処理動作を行うことができる。
例えば、アニメーション合成装置の場合には、画面に表示されるエージェントの動作を同期させることが可能になる。また、音声合成装置の場合には、発話内容を同期させることが可能になる。また、音声再生装置の場合には、再生の開始や停止、フェードイン、フェードアウト等の制御を同期させることが可能になる。また、ロボットの制御装置の場合には、ロボットの物理的動作のタイミングを同期させることが可能になる。また、機器の制御装置の場合には、所定の動作や設定の変更を同期させることが可能になる。
また、この発明の情報処理プログラムは、
コンピュータを、
この発明の情報処理装置におけるテキスト情報記憶手段,動作実行手段および同期検出手段
として機能させることを特徴としている。
コンピュータを、
この発明の情報処理装置におけるテキスト情報記憶手段,動作実行手段および同期検出手段
として機能させることを特徴としている。
上記構成によれば、上記テキスト情報に基づいて上記他の装置と同期を取りながら情報処理動作を実行する際に、上記テキスト情報の開始時点や終了時点を上記他の装置と同期させることが可能になる。その場合、本情報処理装置と上記他の装置との同期を取るために、上記テキスト情報を分割したり、上記テキスト情報中に区切りを入れたりする必要がない。
また、この発明のプログラム記録媒体は、
この発明の情報処理プログラムが記録されたことを特徴としている。
この発明の情報処理プログラムが記録されたことを特徴としている。
上記構成によれば、上記テキスト情報に基づいて上記他の装置と同期を取りながら情報処理動作を実行する際に、上記テキスト情報の開始時点や終了時点を上記他の装置と同期させることが可能になる。その場合、本情報処理装置と上記他の装置との同期を取るために、上記テキスト情報を分割したり、上記テキスト情報中に区切りを入れたりする必要がない。
以上より明らかなように、この発明によれば、動作実行手段によって、テキスト情報上における予め設定された位置で、同期検出手段を介して取得した同期情報に基づいて、他の装置が実行する情報処理動作との同期を取りながら情報処理動作を実行するので、本情報処理装置と上記他の装置との同期を取るために、上記テキスト情報を分割したり、上記テキスト情報中に区切りを入れたりすることなく、上記テキスト情報の開始時点や終了時点を上記他の装置と同期させることができる。したがって、上記情報処理動作が音声合成動作である場合に、発話内容を指示するテキスト情報に基づいて文章単位でイントネーションを生成することができ、自然なイントネーションの合成音声を生成・出力することができる。
すなわち、簡単なテキスト情報を記述するだけで複数の情報処理動作を互いに指定されたタイミングで同期を取りながら実行する情報処理装置を実現する事ができるのである。
以下、この発明を図示の実施の形態により詳細に説明する。
・第1実施の形態
図1は、本実施の形態の情報処理装置における構成を示すブロック図である。本情報処理装置1は、シナリオを記憶するシナリオ記憶部2と、上記シナリオに従って情報処理動作を実行する動作実行部3と、動作実行の結果を出力する出力部4と、動作実行部3の要求に応じて他の情報処理装置との同期情報の交換を行って上記他の情報処理装置の同期情報を検出する同期検出部5を含んで構成されている。ここで、上記シナリオとは、動作実行部3が実行する情報処理動作(以下、単に動作と言う)の動作内容を指示するテキスト情報である。
図1は、本実施の形態の情報処理装置における構成を示すブロック図である。本情報処理装置1は、シナリオを記憶するシナリオ記憶部2と、上記シナリオに従って情報処理動作を実行する動作実行部3と、動作実行の結果を出力する出力部4と、動作実行部3の要求に応じて他の情報処理装置との同期情報の交換を行って上記他の情報処理装置の同期情報を検出する同期検出部5を含んで構成されている。ここで、上記シナリオとは、動作実行部3が実行する情報処理動作(以下、単に動作と言う)の動作内容を指示するテキスト情報である。
上記シナリオは予めシナリオ記憶部2に格納されている場合も考慮して、図1においては上記シナリオを入力する手段は特に記載していない。しかしながら、上記シナリオは、一般に外部から与えられるため、上記シナリオを入力するシナリオ入力手段を別途設けても差し支えない。また、出力部4は、本情報処理装置1がアニメーション合成装置である場合には、グラフィックス描画ドライバ,D/A変換装置およびディスプレイ装置等がこれに相当する。または、音声合成装置である場合には、音声出力用ドライバ,D/A変換装置,アンプおよびスピーカ等がこれに相当する。また、同期検出部5は、他の情報処理装置による処理が終了したかあるいは何処まで進行したか等の同期情報を検出して取得する。また、動作実行部3による処理については、以下に説明する。
図2は、上記動作実行部3によって実行される情報処理動作のフローチャートである。以下、図2に従って、シナリオ記憶部2に記憶されたシナリオに従って、他の情報処理装置による処理動作との同期をとりながら本情報処理装置1の動作を制御する情報処理動作について、具体的に説明する。
ステップS1で、上記シナリオ記憶部2からシナリオが検索される。ステップS2で、上記検索の結果に基づいて、シナリオ記憶部2に未処理のシナリオが在るか否かを判別することによって、シナリオ完了であるか否かが判別される。その結果、シナリオ完了でなければ(つまり、未処理のシナリオが在れば)ステップS3に進み、シナリオ完了であれば情報処理動作を終了する。ステップS3で、シナリオ記憶部2における未処理のシナリオが読み込まれ、この読み込まれたシナリオに基づいて次の動作が取得される。ステップS4で、上記ステップS3において取得された本情報処理装置1の動作が完了したか否かが判別される。その結果、完了していればステップS5に進む一方、完了していなければステップS8に進む。
ステップS5で、上記同期検出部5を介して、本情報処理装置1に関する動作の進行状況を表す同期情報を他の情報処理装置に送出すると共に、同期検出部5から上記他の情報処理装置に関する動作の進行状況を表す同期情報を取得する。ステップS6で、上記取得された上記他の情報処理装置の同期情報に基づいて、上記他の情報処理装置の動作が終わったか否かが判別される。その結果、終わっていれば上記ステップS1に戻って、次のシナリオに関する処理に移行する。一方、終わっていなければステップS7に進む。ステップS7で、本情報処理動作の動作を予め定められた第1所定時間だけ停止して、上記他の情報処理装置の動作が終わるのを待つ「待ち合わせ動作」が実行される。そうした後、上記ステップS4に戻って上記ステップS3において読み出されたシナリオに基づく本情報処理装置1の動作が完了したか否かが判別される。ところが、この場合、上記シナリオに基づく本情報処理装置1の動作は完了しているため、再び上記ステップS6に進むことになる。こうして、上記ステップS6において、上記他の情報処理装置の動作が終わったと判別されると上記ステップS1に戻って、次のシナリオに関する処理に移行するのである。
ステップS8で、上記同期検出部5を介して、本情報処理装置1に関する動作の進行状況を表す同期情報を他の情報処理装置に送出すると共に、同期検出部5から上記他の情報処理装置に関する動作の進行状況を表す同期情報を取得する。ステップS9で、上記取得した上記他の情報処理装置の同期情報に基づいて、上記他の情報処理装置の動作が終わったか否かが判別される。その結果、終わっていればステップS10に進む一方、終わっていなければステップS11に進む。
ステップS10で、上記他の情報処理装置の動作が終わっているにも拘わらず本情報処理装置1の動作が終わっていないので、本情報処理装置1の動作速度が予め定められた速度分だけ早められる「急ぐ動作」が、予め定められた第2所定時間だけ実行される。そうした後に、上記ステップS4に戻って上記ステップS3において読み出されたシナリオに基づく本情報処理装置1の動作が完了したか否かが判別される。ステップS11で、本情報処理装置1の動作も上記他の情報処理装置の動作も終わっていないので、上記ステップS3において読み込まれたシナリオに基づく本情報処理装置1の動作(以下、「通常動作」と言う)が、予め定められた第3所定時間だけ実行される。そうした後、上記ステップS4に戻って上記ステップS3において読み出されたシナリオに基づく本情報処理装置1の動作が完了したか否かが判別される。
こうして、上記ステップS4において本情報処理装置1の動作が完了したと判断され、上記ステップS6において上記他の情報処理装置の動作が終わったと判断され、上記ステップS2においてシナリオ記憶部2に記憶されているシナリオに関する動作が総て完了したと判断されると、情報処理動作を終了するのである。
ここで、上記ステップS7における待ち合わせ動作,上記ステップS10における急ぐ動作あるいは上記ステップS11における通常動作は、ステップS3において上記未処理のシナリオに基づいて取得された動作を1回の動作で実行するのではなく、上述のように「第1,第2,第3所定時間」の細かい単位に区切って処理を行うのである。その場合における上記区切り単位は、例えば、シナリオに基づいて取得した動作が、目的位置まで歩くアニメーションの動作であるとすれば、一歩進む動作のような歩く動作を分解した単位である。あるいは、例えば、音声合成の場合は、未処理のシナリオに基づいて取得された1つの文章を1回で合成するのではなく、1文字あるいは数ミリ秒から数100ミリ秒程度の出力音声に区切った単位で合成するのである。
こうすることによって、上記シナリオに基づく動作の途中経過を他の情報処理装置に伝えると共に、動作の途中で同期を取って、動作の途中から動作の速度を変化させたり待ち合わせを行ったりすることが可能になるのである。
ところで、図2に示すフローチャートにおいては、上記他の情報処理装置との同期を取るタイミングが、上記読み出されたシナリオに基づく各動作が完了するタイミングであるため、図12に示す「話者Aの発声を話者Bの発声で遮る」場合のように、シナリオの各動作の途中に設定された特定の位置で同期を取る場合に対応することができない。このような場合には、動作実行部3は、図3に示す情報処理動作のフローチャートに従って本情報処理装置1の動作を制御すればよい。
ステップS21で、上記シナリオ記憶部2からシナリオが検索される。ステップS22で、上記検索の結果に基づいて、シナリオ記憶部2に未処理のシナリオが在るか否かを判別することによって、シナリオ完了であるか否かが判別される。その結果、シナリオ完了でなければ(つまり、未処理のシナリオが在れば)ステップS23に進み、シナリオ完了であれば情報処理動作を終了する。ステップS23で、シナリオ記憶部2における未処理のシナリオが読み込まれ、この読み込まれたシナリオに基づいて次の動作が取得される。ステップS24で、上記ステップS23において取得された本情報処理装置1の動作が終了したか否かが判別される。その結果、終了していればステップS21に戻って次のシナリオに関する処理に移行する。一方、終了していなければステップS25に進む。
ステップS25で、現在処理中のシナリオに記載されている同期位置Tnに到達したか否かが判別される。その結果、到達した場合にはステップS26に進む一方、到達していない場合にはステップS27に進む。ステップS26で、同期検出部5を介して、他の情報処理装置に対して同期位置Tnを送出する。ステップS27で、同期検出部5を介して、他の情報処理装置が現在到達している同期位置Tmを取得する。ここで、上記同期位置を示す「Tn,Tm」は、上記シナリオAおよびシナリオB中に記載されると共に、出現順に大きくなる数値を含むたマーカーである。
ステップS28で、処理対象のシナリオにおける本情報処理装置1が到達した位置を表す同期位置Tnと他の情報処理装置が到達している位置を表す同期位置Tmとに含まれる数値の大小が比較される。但し、未だ同期位置に到達していない場合には上記数値を「0」とする。その結果、Tn>Tmである(すなわち、本情報処理装置1が他の情報処理装置よりも先行している)場合にはステップS29に進み、そうでなければステップS30に進む。ステップS29で、本情報処理動作の動作を予め定められた第1所定時間だけ停止して、上記他の情報処理装置の動作の進行を待つ「待ち合わせ動作」が実行される。そうした後に、上記ステップS24に戻って上記ステップS23において読み込まれたシナリオに基づく本情報処理装置1の動作が終了したか否かが判別される。ところが、この場合、上記シナリオに基づく本情報処理装置1の動作は完了しておらず、然も同期位置Tnに到達しているため、再び上記ステップS25〜ステップS28が実行される。そして、上記他の情報処理装置の動作が進行して同期位置Tmが更新され、上記ステップS28においてTn>Tmではないと判別されるとステップS30に進む。
ステップS30で、本情報処理装置1側の同期位置Tnと他の情報処理装置側の同期位置Tmとに含まれる数値の大小が比較される。その結果、Tn<Tmである(すなわち、本情報処理装置1が他の情報処理装置よりも遅れている)場合にはステップS31に進み、そうでなければステップS32に進む。ステップS31で、本情報処理装置1の動作速度が予め定められた速度分だけ早められる「急ぐ動作」が、予め定められた第2所定時間だけ実行される。そうした後、上記ステップS24に戻って上記ステップS23において読み込まれたシナリオに基づく本情報処理装置1の動作が終了したか否かが判別される。ところが、この場合、上記シナリオに基づく本情報処理装置1の動作は完了していないため、更に上記ステップS25〜ステップS28およびステップS30が実行される。そして、本情報処理装置1の動作が進行して同期位置Tnが更新され、上記ステップS28においてTn<Tmではない(つまり、Tn=Tmである)と判別されるとステップS32に進む。ステップS32で、上記ステップS23において取得された動作が実行される「通常動作」が、予め定められた第3所定時間だけ実行される。そうした後、上記ステップS24に戻って上記ステップS23において取得された本情報処理装置1の動作が完了したか否かが判別される。
こうして、上記ステップS24において本情報処理装置1の動作が完了したと判断され、上記ステップS22においてシナリオ記憶部2に記憶されている未処理のシナリオが無いためにシナリオ完了であると判断されると、情報処理動作を終了するのである。
尚、図3に示す情報処理動作においては、本情報処理装置1側の動作として「待ち合わせ動作」と「急ぐ動作」と「通常動作」との3通りの場合を例に示しているが、これに限定されるものではない。例えば、図3に示すフローチャートの上記ステップS26において他の情報処理装置に送出する同期位置Tnや、ステップS27において取得する他の情報処理装置からの同期位置Tmとして、上述のような「同期位置であるか否かを表す」離散的な同期情報だけではなく、次の同期位置まであとどの位の時間があるかを予想した値を付加することも可能である。そして、この同期情報を受け取った本情報処理装置1側では、上記次の同期位置までの予想時間の値に基づいて、急ぐ度合いを多段階に切り換えたり、遅くする動作を加えたり、上記通常動作の速度(0=停止を含む)を連続的に切り換えたりすることも可能になる。
以下、上記動作実行部3が、図3に示す情報処理動作のフローチャートに従って本情報処理装置1の動作を制御する場合を、実施例によって具体的に説明する。
(実施例1)
図4は、図11と同じような話者Aと話者Bとによる音声合成装置の出力結果を、図3に示す情報処理動作のフローチャートに従って得るためのシナリオ(図4(a))と出力合成音声(図4(b))との例を示す。すなわち、図1に示す情報処理装置は、図4(a)に示すシナリオA「本日は晴天なり、本日は<#1>晴天なり。<#2>はい。」に基づいて、発話内容「本日は晴天なり 本日は晴天なり はい」を、話者Aの声で合成する音声合成装置と、シナリオB「<#1>もう結構です。黙って<#2>ください。」に基づいて、発話内容「もう結構です 黙ってください」を、話者Bの声で合成する音声合成装置との何れか一方である。そして、他方の音声合成装置が、図3に示すフローチャートの説明文における上記他の情報処理装置となる。
図4は、図11と同じような話者Aと話者Bとによる音声合成装置の出力結果を、図3に示す情報処理動作のフローチャートに従って得るためのシナリオ(図4(a))と出力合成音声(図4(b))との例を示す。すなわち、図1に示す情報処理装置は、図4(a)に示すシナリオA「本日は晴天なり、本日は<#1>晴天なり。<#2>はい。」に基づいて、発話内容「本日は晴天なり 本日は晴天なり はい」を、話者Aの声で合成する音声合成装置と、シナリオB「<#1>もう結構です。黙って<#2>ください。」に基づいて、発話内容「もう結構です 黙ってください」を、話者Bの声で合成する音声合成装置との何れか一方である。そして、他方の音声合成装置が、図3に示すフローチャートの説明文における上記他の情報処理装置となる。
以下においては、話者Aの声を合成する音声合成装置を本情報処理装置1であるとして説明を行う。この場合、話者Bの声を合成する音声合成装置である他の情報処理装置も、本情報処理装置1と同じ構成を有している。尚、上記図3に示すフローチャートには記載していないが、最初に「Tn=0」、即ち「<#0>」を送出するものとする。
先ず、図3に示すフローチャートの上記ステップS23において、シナリオ記憶部2から未処理のシナリオA「本日は晴天なり、本日は<#1>晴天なり。<#2>はい。」が読み込まれる。そして、このシナリオに基づいて、話者Aの声による「本日は晴天なり 本日は晴天なり はい」なる合成音声を生成する動作内容が取得されて、実行される。そして、<#1>の位置までの合成音声「本日は晴天なり 本日は」を出力し、上記ステップS26において、同期検出部5を介して、話者Bの声を合成する他の情報処理装置に対して同期位置Tn「<#1>」を送出する。
その間、上記他の情報処理装置では、読み込んだシナリオB「<#1>もう結構です。黙って<#2>ください。」の先頭に、同期位置Tm「<#1>」が在るため同期位置Tm「<#1>」を本情報処理装置1に送出する一方、本情報処理装置1からの同期位置Tn「<#0>」を受け取って、同期位置Tmと同期位置Tnとを比較する。そして、同期位置Tm「<#1>」に含まれている数値「1」が同期位置Tnに含まれている数値「0」よりも大きいために音声合成を停止する「待ち合わせ動作」を行っている。そして、本情報処理装置1からの同期位置Tn「<#1>」を受け取ると、Tm「<#1>」=Tn「<#1>」であるため話者Bの声による「もう結構です 黙って」なる合成音声の生成および出力を開始する。
その間、上記本情報処理装置1では、上記ステップS27において他の情報処理装置からの同期位置Tm「<#1>」を受け取り、同期位置Tn「<#1>」と同期位置Tm「<#1>」とを比較する。そして、Tn「<#1>」=Tm「<#1>」であるため、引き続き<#2>の位置まで合成音声「晴天なり」を生成して出力し、他の情報処理装置に対して同期位置Tn「<#2>」を送出する。そうした後に、同期位置Tn「<#2>」と同期位置Tm「<#1>」とを比較し、Tn「<#2>」>Tm「<#1>」であるため、音声合成を停止して「待ち合わせ動作」に移行する。
その間、上記他の情報処理装置では、同期位置Tm「<#2>」に至るまで、合成音声「もう結構です 黙って」を出力した後に、本情報処理装置1に対して同期位置Tm「<#2>」を送出する。そして、同期位置Tm「<#2>」=同期位置Tn「<#2>」であるから、引き続き最後まで合成音声「ください」を生成して出力する。
その間、上記本情報処理装置1では、上記他の情報処理装置からの同期位置Tm「<#2>」を受け取り、同期位置Tn「<#2>」=同期位置Tm「<#2>」であるから、合成音声「はい」の生成および出力を行うのである。
このようにして、話者A,Bが同時に発声し、話者Aの発声を話者Bが遮るという状況を音声で実現することができる。その場合、上記本情報処理装置1および他の情報処理装置は、共にシナリオ中に挿入されている同期位置Tn,Tmの有無に拘わらず、文章単位でイントネーションが生成するようになっており、然も同期位置Tn,Tmの箇所で途切れることなく音声が合成される。したがって、図11に示す例の場合とは異なり、自然なイントネーションの合成音声を生成・出力することができるのである。また、話者Aのシナリオと話者Bのシナリオとに同様に同期位置Tn,Tmを挿入するだけで自動的に同期位置Tn,Tmの箇所で、同期を取るようになっている。したがって、音声合成パラメータとして話者A,話者Bの発声速度が夫々別の速度に設定されても、また、発声速度が変更されたとしても、シナリオを変更することなく自然な対話を行っているような合成音声を出力することができるのである。
上記実施例1においては、上記シナリオAおよびシナリオBには、共に「待ち合わせ動作」は指定されていないが、何も合成しないで待つ動作が設定されている場合を例示している。また、「急ぐ動作」は、本実施例のシナリオでは必要ないので、特に設定してはいない。
(実施例2および実施例3)
本実施例は、「待ち合わせ動作」や「急ぐ動作」の動作内容を指定する場合であり、同期位置中で動作の指定を行う場合の例について説明する。尚、以下、上述のように動作の指定を含む同期位置を「同期命令」と呼ぶことにする。
本実施例は、「待ち合わせ動作」や「急ぐ動作」の動作内容を指定する場合であり、同期位置中で動作の指定を行う場合の例について説明する。尚、以下、上述のように動作の指定を含む同期位置を「同期命令」と呼ぶことにする。
図5および図6においては、話者Aのシナリオ中の同期命令<#2>で動作の指定をしている。ここで、<#2:えー/STOP>において、「/」の前で「待ち合わせ動作」を指定し、「/」の後で「急ぐ動作」を指定しており、待ち合わせ動作として「えー」と発声し、急ぐ動作として発声を中断(STOP)することを指定している。
図5に示す実施例2では、図5(a)に示すように、シナリオの内容は図4(a)と同じである。したがって、話者Aの2回めの発声「はい」の前で「待ち合わせ動作」に入って「えー」という合成音声が挿入されることになる。
これに対して、図6に示す実施例3では、図6(a)に示すように、シナリオAの内容が図4(a)に比して長くなっている。したがって、<#2>の位置には話者Bが先に到達することになる。そのために、話者A側の情報処理装置は、話者B側の情報処理装置からの同期位置Tm「<#2>」を受け取ると、同期位置Tn「<#1>」と同期位置Tm「<#2>」との比較結果から「急ぐ動作」に切り換わり、発声「本日は晴天なり」の途中であるにも換わらず「本日は晴天」で中断し、次のシナリオAの音声「はい」を合成するのである。
その場合、話者Aが発声を中断する位置は、話者Aと話者Bとの発話速度の差に依存して自動的に調整される。したがって、シナリオを作成する際に、話者Aと話者Bとの実際の発話速度が予測できない場合であっても、合成音声によって自然な対話を実現することができるのである。
また、上述したような同期命令<#2:えー/STOP>で「待ち合わせ動作」と「急ぐ動作」との動作内容を指定することによって、シナリオAに文章の追加や削除が行われてシナリオBに対する相対長さが長くなったり短くなったりしても、自動的に、「えー」が発声されて「待ち合わせ動作」が行われたり、発声が中断されて「急ぐ動作」が行われる。したがって、シナリオ作成者は、同期位置の設定箇所を気にすることなく、シナリオを変更することが可能になる。
尚、上記実施例2および実施例3においては、待ち合わせ動作」と「急ぐ動作」との両方の動作内容を設定しているが、何れか一方のみを設定することも可能である。
また、上記実施例1〜実施例3においては、上記同期命令の書式を「<#n>:nは正の整数」としたが、この書式に限定されるものではない。要は、シナリオの内容と容易に識別可能であり、シナリオ中での出現順位が判定できる書式であればよいのである。
また、上記実施例1〜実施例3においては、この実施の形態における情報処理装置が、話者Aと話者Bとの2つの音声合成装置である場合を例に説明した。しかしながら、この2つの音声合成装置に、話者Aおよび話者Bのアニメーション画像生成装置を追加して、互いを同期させることも考えられる。その場合、図1における同期検出部5は、他の情報処理装置として、2つ以上の情報処理装置を対象に同期を検出する必要がある。その場合に、同期を検出する2つ以上の情報処理装置のうち何れの情報処理装置の動作を優先して検出するかが問題になる。一般には、最も動作が遅い情報処理装置に合わせるのが妥当と考えられるが、目的によってはこの限りではなく、何れの情報処理装置に合わせるかは情報処理装置の設計者あるいはシナリオの作成者に任されるために、一概には決まらない。その場合には、同期対象とする情報処理装置名をシナリオの中に記述し、同期検出部5はシナリオの中に記述された情報処理装置の同期位置や同期命令を取得することも可能である。
・第2実施の形態
図7は、本実施の形態の情報処理装置における構成を示すブロック図である。この情報処理装置11は、第1処理装置13から第3処理装置15までの3つの処理装置を有しており、各処理装置11〜13には、シナリオ入力部16によって、シナリオ記憶部12から第1処理装置13用のシナリオA,第2処理装置14用のシナリオBおよび第3処理装置15用のシナリオCが読み出されて個別に送出される。そして、各処理装置13〜15は、基本的には第1実施の形態の情報処理装置における動作実行部3と同様の機能を有して、動作実行部3と同様に動作する。尚、本実施の形態においては、シナリオ記憶部12に、各処理装置13〜15毎に別のシナリオを格納して、個別のシナリオを各処理装置13〜15に与えるようにしている。しかしながら、これに限定されるものではなく、シナリオ記憶部12には各処理装置13〜15用のシナリオを1つのデータとして格納して、各処理装置13〜15に同じシナリオを与え、各処理装置13〜15内で自処理装置用のシナリオのみを選択して実行するようにしてもよい。
図7は、本実施の形態の情報処理装置における構成を示すブロック図である。この情報処理装置11は、第1処理装置13から第3処理装置15までの3つの処理装置を有しており、各処理装置11〜13には、シナリオ入力部16によって、シナリオ記憶部12から第1処理装置13用のシナリオA,第2処理装置14用のシナリオBおよび第3処理装置15用のシナリオCが読み出されて個別に送出される。そして、各処理装置13〜15は、基本的には第1実施の形態の情報処理装置における動作実行部3と同様の機能を有して、動作実行部3と同様に動作する。尚、本実施の形態においては、シナリオ記憶部12に、各処理装置13〜15毎に別のシナリオを格納して、個別のシナリオを各処理装置13〜15に与えるようにしている。しかしながら、これに限定されるものではなく、シナリオ記憶部12には各処理装置13〜15用のシナリオを1つのデータとして格納して、各処理装置13〜15に同じシナリオを与え、各処理装置13〜15内で自処理装置用のシナリオのみを選択して実行するようにしてもよい。
同期伝達部17は、各処理装置13〜15の同期情報を受け取って、要求に応じて必要とする各処理装置13〜15に伝達する。ここで、同期伝達部17は、必ずしも能動的な機能を有している必要はなく、各処理装置13〜15間で共有されて各処理装置13〜15の同期情報を一時記憶するメモリであっても差し支えない。尚、その場合には、各処理装置13〜15は、必要に応じて同期伝達部(メモリ)17にアクセスして、他の処理装置の同期情報を取得するのである。また、各処理装置13〜15の他に物理的に異なる装置に分散されている他の処理装置との同期を取る必要がある場合には、同期伝達部17は、通信部20を介して、上記他の処理装置機との間で通信を行って動作状況の取得・伝達を行う。尚、通信部20としては、従来の有線や無線や赤外線等の通信モジュールを使用すればよい。
上記各処理装置13〜15から出力された情報は、画像情報や音声情報等の情報の種類毎に第1,第2統合出力部18,19によって統合されてユーザーに提示される。図7の場合には、第2処理装置14からの出力と第3処理装置15からの出力とが、第2統合出力部19によって統合されて出力されるようになっている。
尚、本実施の形態においては、上記第1処理装置13〜第3処理装置15までの3つの処理装置を有し、そのうち第2,第3処理装置14,15からの出力を第2統合出力部19で統合するようにしている。しかしながら、処理装置の数、何れの処理装置からの出力を統合するか、出力が統合される処理装置の数等は、構築しようとしているマルチメディア・ユーザー・インタフェースの構造に応じて適宜変更しても差し支えない。
以下、上記構成を有する情報処理装置の動作について、以下の実施例に従って具体的に説明する。
(実施例4)
本実施例は、画像の処理装置と音声合成の処理装置とを用いて、エージェントの画像と音声とによってコンピュータ操作の説明を行う情報処理装置の例を示す。
本実施例は、画像の処理装置と音声合成の処理装置とを用いて、エージェントの画像と音声とによってコンピュータ操作の説明を行う情報処理装置の例を示す。
本実施例においては、図7における第1処理装置13が画像処理装置であり、第2処理装置14が音声合成処理装置であるとする。そして、図8(a)は、画像処理装置13からの画像情報を出力する第1統合出力部18の表示画面を示す。尚、図8(b)はエージェント21に関する画像用のシナリオを示し、図8(b)はエージェント21に関する音声合成用のシナリオを示し、本実施例の場合では個別のデータとなっている。本実施例における同期命令は「T0」の如く各シナリオの先頭に記述されている。
各シナリオにおける「 」内には、対応する処理装置の動作内容と、その動作が終了した場合における待ち合わせ動作の動作内容と、他の処理装置が先に動作を終了した場合における急ぎの動作の動作内容とが、「/」で区切って記述されている。つまり、各シナリオは、「通常動作/待ち合わせ動作/急ぎの動作」の如く記述されている。当然ながら、シナリオの記述方法は、これに限定されるものではない。以下、図8(b)および図8(b)のシナリオに沿って、本実施例における動作を説明する。
先ず、エージェント21は、同期命令「T0」で「位置Aを指示」しながら「まず」と発声する。ここで、発声「まず」が終了してもアクション「位置Aを指示」が終了しない場合には、音声合成側は「待ち合わせ動作」に移行して音声で「えー」と付け加える。
次に、同期命令「T1」で、エージェント21は、アクションを止めながら「このアイコンAでボタンを押して」と発声する。この場合は、アクションの停止が先に終了するので、画像側は「待ち合わせ動作」に移行して「棒を振る」アクションを行う。
次に、同期命令「T2」で、エージェント21は、「アイコンAの位置からアイコンBの位置へ移動」しながら「そのままドラッグして」と発声する。ここで、アクション「AからBへの移動」が先に終了した場合には、画像側は「待ち合わせ動作」に移行して発声が終わるまでエージェント21はアクション「口パク」を行い、発声中であることを表現する。逆に、AからBへの移動に時間が掛かり、発声が先に終わった場合には、画像側は「急ぎの動作」に移行してアクション「走る」に切り替わり、同時に音声合成側は「待ち合わせ動作」に移行して移動が終了するまで「よいしょ、よいしょ」と発声する。
次に、同期命令「T3」で、エージェント21は、無言で「位置Bを指示」する。
次に、同期命令「T4」で、エージェント21は、アクションを止めながら「このBで放して下さい」と発声する。この場合は、アクションの停止が先に終了するので、画像側は「待ち合わせ動作」に移行してアクション「棒を振る」を行う。
このように、各シナリオの先頭には同期命令「Tn:nは0と正の整数」を付加し、各シナリオを「通常動作/待ち合わせ動作/急ぎの動作」の如く記述するので、実際に掛かる処理時間に応じて画像処理装置と音声合成処理装置との動作内容を自動的に切り換えることができ、自然な画像情報と音声情報との提示を行うことができる。また、その場合、シナリオのポーズの位置や時間を個別に設定する必要なく、シナリオの作成が困難になることはない。
・第3実施の形態
図9は、本実施の形態の情報処理装置を、コンピュータを用いて実現した場合の構成を示すブロック図を示す。情報処理装置31は、CPU(中央演算処理装置)32,記憶部33,入力部34,出力部35およびプログラム読込部36がバス37に接続されて構成されている。プログラム読込部36は、外部のプログラム記録媒体38から情報処理プログラムを読み込む。ここで、プログラム記録媒体38としては、光ディスク,磁気ディスク,フレキシブルディスク,読み出し専用メモリあるいは書き換え可能なメモリ等が用いられ、本コンピュータを上記第1,第2実施の形態の情報処理装置として機能させる情報処理プログラムが記録されている。
図9は、本実施の形態の情報処理装置を、コンピュータを用いて実現した場合の構成を示すブロック図を示す。情報処理装置31は、CPU(中央演算処理装置)32,記憶部33,入力部34,出力部35およびプログラム読込部36がバス37に接続されて構成されている。プログラム読込部36は、外部のプログラム記録媒体38から情報処理プログラムを読み込む。ここで、プログラム記録媒体38としては、光ディスク,磁気ディスク,フレキシブルディスク,読み出し専用メモリあるいは書き換え可能なメモリ等が用いられ、本コンピュータを上記第1,第2実施の形態の情報処理装置として機能させる情報処理プログラムが記録されている。
上記プログラム読込部36によって読み込まれた情報処理プログラムは、記憶部33に記憶される。記憶部33は一般に磁気ディスクや書き換え可能なメモリで構成される。CPU32は、記憶部33に記憶された情報処理プログラムに従って、各部を制御して情報処理装置としての動作を行う。また、記憶部33は、CPU32によって行われる情報処理動作における作業領域としても一部が使用される。入力部34は、ユーザーからの入力を受付けて、情報処理プログラム実行や処理の切換等を指示する。この入力部34は、キーボード,マイク,タブレットおよびポインティングデバイス等に相当する。また、出力部35は、CPU32による情報処理の結果をユーザーに提示するものである。この出力部35は、文字や画像を出力するディスプレイや、音声や楽音等を出力するスピーカまたはヘッドホンに相当する。
また、上記出力部35は、工業用や家庭用の電気機器やロボットに対する制御信号を出力するようにしても構わない。あるいは、出力部35は、別の機器を操作するための制御信号を出力しても構わない。
さらに、上記構成の情報処理装置31を複数組み合わせて情報処理を行う場合には、同期のための通信部が各情報処理装置に必要となるのは言うまでもない。
1,11,31…情報処理装置、
2,12…シナリオ記憶部、
3…動作実行部、
4…出力部、
5…同期検出部、
13…第1処理装置、
14…第2処理装置、
15…第3処理装置、
16…シナリオ入力部、
17…同期伝達部、
18…第1統合出力部、
19…第2統合出力部、
20…通信部、
21…エージェント、
32…CPU、
33…記憶部、
34…入力部、
35…出力部、
36…プログラム読込部、
37…バス、
38…プログラム記録媒体。
2,12…シナリオ記憶部、
3…動作実行部、
4…出力部、
5…同期検出部、
13…第1処理装置、
14…第2処理装置、
15…第3処理装置、
16…シナリオ入力部、
17…同期伝達部、
18…第1統合出力部、
19…第2統合出力部、
20…通信部、
21…エージェント、
32…CPU、
33…記憶部、
34…入力部、
35…出力部、
36…プログラム読込部、
37…バス、
38…プログラム記録媒体。
Claims (12)
- 情報処理動作の動作内容を指示するテキスト情報が記憶されているテキスト情報記憶手段と、
上記テキスト情報記憶手段から上記テキスト情報を読み出し、この読み出されたテキスト情報で指示された動作内容を取得し、この取得した動作内容に従って情報処理動作を実行する動作実行手段と、
上記動作実行手段からの指示に従って、他の装置から送出される同期情報を検出する同期検出手段と
を備え、
上記動作実行手段は、上記テキスト情報上における予め設定された位置で、上記同期検出手段を介して取得した同期情報に基づいて、上記他の装置が実行する情報処理動作との同期を取りながら、上記情報処理動作を実行することを特徴とする情報処理装置。 - 請求項1に記載の情報処理装置において、
上記テキスト情報には、上記他の装置が実行する情報処理動作との同期をとるべき位置を指定する同期命令が記述されており、
上記動作実行手段は、現在実行している情報処理動作の上記テキスト情報上における位置が上記同期命令に至ると、上記同期検出手段を介して上記同期情報を取得して上記他の装置が実行する情報処理動作との同期を取るようになっていることを特徴とする情報処理装置。 - 請求項2に記載の情報処理装置において、
上記動作実行手段は、上記同期検出手段を介して取得した上記同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか否かを判断し、先行している場合には上記他の装置が実行している情報処理動作の終了を待つ待ち合わせ動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっていることを特徴とする情報処理装置。 - 請求項2に記載の情報処理装置において、
上記動作実行手段は、上記同期検出手段を介して取得した上記同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して遅れているか否かを判断し、遅れている場合には現在実行している情報処理動作を急ぐ急ぎの動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっていることを特徴とする情報処理装置。 - 請求項2に記載の情報処理装置において、
上記動作実行手段は、上記同期検出手段を介して取得した上記同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断し、先行している場合には上記他の装置が実行している情報処理動作の終了を待つ待ち合わせ動作を行い、遅れている場合には現在実行している情報処理動作を急ぐ急ぎの動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっていることを特徴とする情報処理装置。 - 請求項5に記載の情報処理装置において、
上記同期検出手段を介して得られる同期情報には、次の同期位置までの予測時間を表す情報が含まれており、
上記動作実行手段は、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断する際に、上記同期情報に含まれた次の同期位置までの予測時間を表す情報に基づいて上記先行あるいは遅れの度合いを求め、この度合いに応じて現在実行している情報処理動作の動作速度を連続的に切り換えるようになっていることを特徴とする情報処理装置。 - 請求項1に記載の情報処理装置において、
上記テキスト情報には、上記同期をとるべき位置と、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行している場合に実行する情報処理動作および遅れている場合に実行する情報処理動作の少なくとも一方とを指定する同期命令が記述されており、
上記動作実行手段は、現在実行している情報処理動作の上記テキスト情報上における位置が上記同期命令に至ると、上記同期検出手段を介して上記同期情報を取得すると共に、この取得した同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断し、この判断結果に応じて当該同期命令が指定する情報処理動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっていることを特徴とする情報処理装置。 - 請求項1に記載の情報処理装置において、
上記テキスト情報は、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に同期している場合に実行する情報処理動作の動作内容を指示する部分と、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行している場合に実行する情報処理動作の動作内容および遅れている場合に実行する情報処理動作の動作内容の少なくとも一方を指示する部分とを含むと共に、上記同期を取るべき位置を指定する同期命令が付加されており、
上記動作実行手段は、現在実行している情報処理動作の上記テキスト情報上における位置が上記同期命令に至ると、上記同期検出手段を介して上記同期情報を取得すると共に、この取得した同期情報と当該同期命令との比較から、現在実行している情報処理動作が上記他の装置が実行する情報処理動作に比して先行しているか遅れているかを判断し、当該テキスト情報における上記判断結果に応じた部分で指示された情報処理動作を行うことによって、上記他の装置が実行する情報処理動作との同期を取るようになっていることを特徴とする情報処理装置。 - 請求項1に記載の情報処理装置において、
上記動作実行手段は複数存在すると共に、夫々の動作実行手段は上記同期検出手段に対して上記同期情報を送出するようになっており、
上記同期検出手段は、上記夫々の動作実行手段からの指示を受け付けて、少なくとも上記各動作実行手段のうちの何れかから送出された同期情報を検出するようになっている
ことを特徴とする情報処理装置。 - 請求項1に記載の情報処理装置において、
上記動作実行手段が処理する情報は、画像情報,音声情報,音楽情報,機器の制御情報およびロボットの制御情報のうちの何れか1つであることを特徴とする情報処理装置。 - コンピュータを、
請求項1におけるテキスト情報記憶手段,動作実行手段および同期検出手段
として機能させることを特徴とする情報処理プログラム。 - 請求項11に記載の情報処理プログラムが記録されたことを特徴とするコンピュータ読出し可能なプログラム記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004345932A JP2006155299A (ja) | 2004-11-30 | 2004-11-30 | 情報処理装置、情報処理プログラム、および、プログラム記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004345932A JP2006155299A (ja) | 2004-11-30 | 2004-11-30 | 情報処理装置、情報処理プログラム、および、プログラム記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006155299A true JP2006155299A (ja) | 2006-06-15 |
Family
ID=36633518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004345932A Pending JP2006155299A (ja) | 2004-11-30 | 2004-11-30 | 情報処理装置、情報処理プログラム、および、プログラム記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006155299A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011158435A1 (ja) * | 2010-06-18 | 2011-12-22 | パナソニック株式会社 | 音声制御装置、音声制御プログラム、及び音声制御方法 |
JP2012532390A (ja) * | 2009-07-10 | 2012-12-13 | オルドウバラン、ロボティクス エス、ア | 移動ロボットのコンテキスト動作を生成するためのシステムおよび方法 |
-
2004
- 2004-11-30 JP JP2004345932A patent/JP2006155299A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012532390A (ja) * | 2009-07-10 | 2012-12-13 | オルドウバラン、ロボティクス エス、ア | 移動ロボットのコンテキスト動作を生成するためのシステムおよび方法 |
WO2011158435A1 (ja) * | 2010-06-18 | 2011-12-22 | パナソニック株式会社 | 音声制御装置、音声制御プログラム、及び音声制御方法 |
JP5643821B2 (ja) * | 2010-06-18 | 2014-12-17 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | 音声制御装置及び音声制御方法 |
US8976973B2 (en) | 2010-06-18 | 2015-03-10 | Panasonic Intellectual Property Corporation Of America | Sound control device, computer-readable recording medium, and sound control method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100240637B1 (ko) | 다중매체와의 연동을 위한 텍스트/음성변환 구현방법 및 그 장치 | |
JP6665446B2 (ja) | 情報処理装置、プログラム及び音声合成方法 | |
JP2011059412A (ja) | 合成音声テキスト入力装置及びプログラム | |
GB2380599A (en) | System and method for media production | |
JP5045519B2 (ja) | 動作生成装置、ロボット及び動作生成方法 | |
JPH11339058A (ja) | 人物像対話装置及び人物像対話プログラムを記録した記録媒体 | |
US20180005618A1 (en) | Information processing method, terminal device and computer storage medium | |
JP3877371B2 (ja) | 映像再生装置 | |
JP2006155299A (ja) | 情報処理装置、情報処理プログラム、および、プログラム記録媒体 | |
JP2982697B2 (ja) | テロップ表示装置 | |
KR20160064328A (ko) | 모션 카툰 시스템을 위한 특수 효과 지원 장치 및 방법 | |
JP2003216173A (ja) | 合成音声及び映像の同期制御方法、装置及びプログラム | |
JP2001005476A (ja) | プレゼンテーション装置 | |
WO2021255831A1 (ja) | 送信装置、コミュニケーション方法、及びプログラム | |
JP6438148B2 (ja) | 画像表示装置 | |
JP7024027B1 (ja) | 動画作成装置、動画作成システム及び動画作成プログラム | |
JP4264028B2 (ja) | 要約番組生成装置、及び要約番組生成プログラム | |
JP2007272375A (ja) | スクリプト生成方法およびプログラム | |
WO2010047027A1 (ja) | 情報処理装置 | |
KR100275529B1 (ko) | 트릭 모드를 이용한 텍스트/음성 변환기 및 그 방법 | |
JP2016012098A (ja) | 電子図書再生装置及び電子図書再生プログラム | |
JPH04208782A (ja) | イメージ情報処理システムの同期装置 | |
JP2024102698A (ja) | アバター動作制御装置およびアバター動作制御方法 | |
JP4047323B2 (ja) | 情報処理装置及びその方法、プログラム | |
JPH0876967A (ja) | マルチメディア同期調節装置 |