(57)【特許請求の範囲】
【請求項１】
入力される音声データを音声蓄積装置に順次記録する音声記録部と、
前記音声データが記録される間、画面に表示されるポインタの位置情報を所定の第１時間幅ごとに順次取得する位置情報取得部と、
前記位置情報取得部が位置情報を取得するごとに、前記音声記録蓄積装置にすでに記録された音声データのデータ量を取得し、取得したデータ量に基づいて前記音声データの音声記録時間を算出する音声記録時間取得部と、
各ポインタの位置情報と、各ポインタの位置情報に対応する各音声記録時間とをそれぞれ関連づけてポインタ位置情報蓄積装置に記録するポインタ位置情報記録部と、
前記音声蓄積装置に記録された音声データの再生時に、当該音声データの再生時間に対応する音声記録時間に関連づけられたポインタの位置情報を前記ポインタ位置情報蓄積装置から取得して、取得したポインタの位置情報に対応する画面上の位置にポインタを表示する再生部と、
を備える記録再生装置。
【請求項２】
請求項１に記載の記録再生装置において、
前記音声記録部は、入力される音声データを前記所定の第１時間幅より長い所定の第２の時間幅ごとに順次ブロック単位に分割し、ブロックごとに順次圧縮して、圧縮音声データを生成し、生成された圧縮音声データを前記音声蓄積装置に記録し、
前記音声記録時間取得部は、前記位置情報取得部が位置情報を取得するごとに、前記音声記録部にすでに記録されている圧縮音声データのデータ量に基づいて前記音声記録時間を算出し、
さらに、
前記記録再生装置は、
ポインタ位置情報蓄積装置に記憶されたポインタの位置情報と音声記録時間のうち、同一の音声記録時間が関連づけられたポインタの位置情報をそれぞれ検索し、検索された各ポインタの位置情報に関連づけられた各音声記録時間を時系列となるように修正する音声記録時間修正部を、
備えることを特徴とする記録再生装置。
【請求項３】
入力される音声データを音声蓄積装置に順次記録する音声記録部と、
前記音声データが記録される間、画面に表示されるポインタの位置情報を所定の第１時間幅ごとに順次取得する位置情報取得部と、
前記位置情報取得部が位置情報を取得するごとに、前記音声記録蓄積装置にすでに記録された音声データのデータ量を取得し、取得したデータ量に基づいて前記音声データの音声記録時間を算出する音声記録時間取得部と、
各ポインタの位置情報と、各ポインタの位置情報に対応する各音声記録時間とをそれぞれ関連づけてポインタ位置情報蓄積装置に記録するポインタ位置情報記録部と、
前記音声蓄積装置に記録された音声データの再生時に、当該音声データの再生時間に対応する音声記録時間に関連づけられたポインタの位置情報を前記ポインタ位置情報蓄積装置から取得して、取得したポインタの位置情報に対応する画面上の位置にポインタを表示する再生部と、
してコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録再生装置、およびプログラムに関する。
【背景技術】
【０００２】
会議や発表会など（以下、プレゼンテーション）において、発表者が説明しながらスライドを順次切り替え、さらに表示されているスライド上にカーソルやポインタを表示して説明箇所を指し示すことが多い。
【０００３】
特許文献１には、所定のサンプリング周期ごとにカーソル座標の情報を記録し、ユーザからのスライド切り替え指示ごとに、切り替わったスライド画像の情報を記録し、さらに１ページのスライドが表示されている期間ごとに、音声データを記録する技術が開示されている。
【０００４】
特許文献２には、講師端末に表示された講義資料上にポインタ図形を表示し、受講生端末に表示された講義資料上に講師端末の講義資料上のポインタ図形と同様な軌跡を描くようにポインタ図形を表示するリアルタイム型講義を実現する技術が開示されている。また、特許文献２には、リアルタイム型講義が終了すると、ポインタ図形の移動情報が蓄積され、蓄積された講義映像、音声、講義資料に加え、ポインタ図形の移動を再現する技術が開示されている。
【０００５】
【特許文献１】特開２００３−５８９０１号公報
【特許文献２】特開２００４−３２５８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、プレゼンテーションにおける音声データおよびポインタ軌跡を再生する場合に、音声データとポインタ軌跡との同期がずれることがある。
【０００７】
本発明は、プレゼンテーションにおける少なくとも音声データとポインタ軌跡とを記録し、再生する場合に、再生時の音声データとポインタ軌跡との同期ずれを低減することを目的とする。
【課題を解決するための手段】
【０００８】
本願請求項１に係る発明は、入力される音声データを音声蓄積装置に順次記録する音声記録部と、前記音声データが記録される間、画面に表示されるポインタの位置情報を所定の第１時間幅ごとに順次取得する位置情報取得部と、前記位置情報取得部が位置情報を取得するごとに、前記音声記録蓄積装置にすでに記録された音声データのデータ量を取得し、取得したデータ量に基づいて前記音声データの音声記録時間を算出する音声記録時間取得部と、各ポインタの位置情報と、各ポインタの位置情報に対応する各音声記録時間とをそれぞれ関連づけてポインタ位置情報蓄積装置に記録するポインタ位置情報記録部と、前記音声蓄積装置に記録された音声データの再生時に、当該音声データの再生時間に対応する音声記録時間に関連づけられたポインタの位置情報を前記ポインタ位置情報蓄積装置から取得して、取得したポインタの位置情報に対応する画面上の位置にポインタを表示する再生部と、を備える記録再生装置である。
【０００９】
本願請求項２に係る発明は、請求項１に記載の記録再生装置において、前記音声記録部は、入力される音声データを前記所定の第１時間幅より長い所定の第２の時間幅ごとに順次ブロック単位に分割し、ブロックごとに順次圧縮して、圧縮音声データを生成し、生成された圧縮音声データを前記音声蓄積装置に記録し、前記音声記録時間取得部は、前記位置情報取得部が位置情報を取得するごとに、前記音声記録部にすでに記録されている圧縮音声データのデータ量に基づいて前記音声記録時間を算出し、さらに、前記記録再生装置は、ポインタ位置情報蓄積装置に記憶されたポインタの位置情報と音声記録時間のうち、同一の音声記録時間が関連づけられたポインタの位置情報をそれぞれ検索し、検索された各ポインタの位置情報に関連づけられた各音声記録時間を時系列となるように修正する音声記録時間修正部を、備えることを特徴とする記録再生装置である。
【００１０】
本願請求項３に係る発明は、入力される音声データを音声蓄積装置に順次記録する音声記録部と、前記音声データが記録される間、画面に表示されるポインタの位置情報を所定の第１時間幅ごとに順次取得する位置情報取得部と、前記位置情報取得部が位置情報を取得するごとに、前記音声記録蓄積装置にすでに記録された音声データのデータ量を取得し、取得したデータ量に基づいて前記音声データの音声記録時間を算出する音声記録時間取得部と、各ポインタの位置情報と、各ポインタの位置情報に対応する各音声記録時間とをそれぞれ関連づけてポインタ位置情報蓄積装置に記録するポインタ位置情報記録部と、前記音声蓄積装置に記録された音声データの再生時に、当該音声データの再生時間に対応する音声記録時間に関連づけられたポインタの位置情報を前記ポインタ位置情報蓄積装置から取得して、取得したポインタの位置情報に対応する画面上の位置にポインタを表示する再生部と、してコンピュータを機能させるためのプログラムである。
【発明の効果】
【００１１】
本願請求項１および３に係る発明によれば、音声データの音声記録時間に対応付けてポインタの位置情報が記録されるため、再生時の音声とポインタの軌跡との同期ずれが低減できる。
【００１２】
本願請求項２に係る発明によれば、音声データが記録される圧縮方式がたとえリアルタイム圧縮方式で圧縮される場合でも、１つの音声記録時間に複数のポインタの位置情報が対応付けられることによる不具合を解消することができる。
【発明を実施するための最良の形態】
【００１３】
本発明を実施するための最良の形態（以下、実施形態と称す）について、以下図面を用いて説明する。
【００１４】
図１は、本実施形態に係る情報処理装置の機能ブロックを示す図である。
【００１５】
情報処理装置１００は、実行されるプレゼンテーションの様子を記録し、記録されたプレゼンテーションの様子を再生する。情報処理装置１００は、プレゼンテーションの様子として、スライド上のポインタの軌跡、音声、およびスライドの切り替え遷移を記録する。
【００１６】
本実施形態では、情報処理装置１００が、プレゼンテーションの様子を記録中に、周期的に取得されるポインタの位置情報と、位置情報が取得された時点においてすでに記録された音声データの録音開始時点からの時間（以下、「音声記録時間」と称す）とを関連づけて、記録する。情報処理装置１００は、プレゼンテーションの様子を再生する際、音声記録時間に合わせて、その時間に関連づけられたポインタの位置をスライド上に再現する。
【００１７】
従来、音声データとポインタの軌跡とは独立して記録されていた。よって、例えば、音声データの記録時に音飛びが発生し、音声データに欠落が生じた場合、再生時に音声データとポインタの軌跡とで同期ずれが発生することがあった。一方、本実施形態では、周期的に取得されるポインタの位置情報に関連づけて音声記録時間が記録される。よって、たとえ音声データの記録時に音飛びが発生しても、再生時におけるポインタの軌跡と音声との同期ずれが抑制される。
【００１８】
なお、本実施形態では、説明を簡略化するために、スライドの切り替え遷移については詳細を説明しない。しかし、情報処理装置１００は、例えば、スライドのページが切り替わったことに対応してポインタの位置情報を取得し、取得したポインタの位置情報に関連づけて切り替え後のスライドの識別情報を順次記録しておけばよい。再生時には、位置情報にスライドの識別情報が関連づけられている場合には、現在表示されているスライドから当該識別情報に対応するスライドに切り替えればよい。
【００１９】
ここで、図１に示す各部についてより詳細に説明する。
【００２０】
ＣＰＵ１０は、不揮発性メモリ３０に記憶されたプログラム４０を揮発性メモリ２０に展開して、展開されたプログラム４０に従いバスライン９０を介して、各部を制御する。不揮発性メモリ３０は、プログラム４０およびデータベース（ＤＢ）５０を記憶する。プログラム４０およびＤＢ５０の詳細については後述する。
【００２１】
操作入力部７０は、マウスやキーボードなどを介して利用者からの指示の入力を受け付ける。表示出力部７２は、スライドやポインタなどを含む画像データを映像信号としてディスプレイやプロジェクタなどに出力する。音声入力部７４は、記録時には、マイクロフォンなどを介して音声信号の入力を受け付ける。さらに音声入力部７４は、再生時にはスピーカへの音声信号の出力を行う。
【００２２】
続いて、不揮発性メモリ３０に記憶されたプログラム４０とＤＢ５０とについてさらに詳しく説明する。
【００２３】
プレゼンアプリケーション４１は、アプリケーションプログラムであり、予め作成されプレゼンファイル蓄積部５２に蓄積されているプレゼンファイルに基づいて、当該プレゼンファイルに格納されているスライドの映像を画面に表示し、利用者からの切り替え指示の操作に従い、表示されているスライドのページを進行する。
【００２４】
音声記録部４２は、リアルタイム圧縮方式により、プレゼンアプリケーション４１によりプレゼンテーションが実行されている期間、音声入力部７４から入力される音声データを圧縮して、音声データ蓄積部５４に蓄積していく。より具体的には、音声記録部４２は、録音開始指示に応じて、順次入力される音声データを所定の時間幅（所定の圧縮ビットレート（例えば６４ｋbps））でフレーム化（ブロック化）し、フレーム（ブロック）ごとに直交変換等の所定の圧縮アルゴリズム（例えばＭＰ３方式）によって圧縮し、圧縮された各フレームを例えば、表示されるスライド単位で区切り（フラグ）をつけて１つの音声圧縮ファイルとして、音声データ蓄積部５４に蓄積していく。
【００２５】
ポインタ位置取得部４３は、所定の周期（例えば０．１ｓｅｃ）でプレゼンアプリケーション４１に対して、表示されているスライド上のポインタの位置（座標）情報を要求し、その要求に応じてプレゼンアプリケーション４１からポインタの位置情報を取得する。
【００２６】
音声記録時間取得部４４は、ポインタ位置取得部４３がポインタの位置情報を取得するタイミングで、つまり、位置情報を取得する周期と同一の周期で、音声データ蓄積部５４に記録中の音声圧縮ファイルの現時点におけるデータ量（ファイルサイズ）を取得する。さらに、音声記録時間取得部４４は、ポインタの位置情報が取得された時点においてすでに記録されている音声データの音声記録時間を、取得したデータ量に基づいて算出する。例えば、音声記録部４２における圧縮ビットレートが６４ｋｂｐｓで、データ量が１２８ｋｂｉｔであった場合、音声記録時間取得部４４は、データ量を圧縮ビットレートで除算することで、プレゼンテーション開始時点からの音声記録時間を、２．０ｓｅｃと算出する。なお、音声記録時間取得部４４は、プレゼンテーションソフトなどのアプリケーションプログラムに対してサードパーティなどが独自の機能を追加できる補助プログラムによって実現される。音声記録時間取得部４４は、例えばプラグインである。プレゼンアプリケーション４１が基本ＯＳ（Operating System）の一つであるWindows（登録商標）上で動作する場合、音声記録時間取得部４４はＤＬＬ（Dynamic Link Library）で実現すればよい。また、音声記録時間取得部４４が例えばＶｉｓｕｌａ  Ｃ＋＋で動作するＤＬＬで実現される場合には、現在作成中の音声圧縮ファイルのファイル名を指定して、ＧＥＴＬｅｎｇｔｈ関数を実行することで、現在作成中の音声圧縮ファイルのデータ量（ファイルサイズ）を取得することができる。
【００２７】
ポインタ位置情報記録部４５は、同一のタイミングで取得された、ポインタの位置情報と音声記録時間とを関連づけて、ポインタ位置情報蓄積部５６に蓄積する。図２Ａにポインタ位置情報蓄積部５６に蓄積される、ポインタの位置情報と音声記録時間とを関連づけたテーブルの一例を示す。図２Ａに示すように、テーブルには、各ポインタの位置情報を一意に識別するためのポインタ位置情報ＩＤフィールド２００と、ポインタ位置として画面上のＸ軸座標とＹ軸座標の各値を示すポインタ位置フィールド２０２と、ポインタ位置に対応する音声記録時間を示す音声記録時間フィール２０４とが存在する。
【００２８】
ところで、上記の通り、音声記録部４２は、音声データを所定の時間幅でフレーム化し、フレームごとに順次圧縮し、音声圧縮ファイルを生成していく。つまり、入力された音声が圧縮され音声圧縮ファイルに反映されるまでにはある程度の処理時間を要する。そこで、ポインタの位置情報を取得する周期が、この圧縮処理時間よりも短い場合、取得した位置情報に対応する音声データの圧縮処理が完了しておらず、音声圧縮ファイルに反映されていないことがある。つまり、ポインタ位置取得部４３がポインタの位置情報を取得するタイミングで、音声記録時間取得部４４が取得したデータ量は、ポインタの位置情報を取得した時点の音声に対応したデータ量とは限らない。したがって、ポインタの位置情報を取得する周期が、圧縮処理時間よりも短い場合、音声記録時間取得部４４は、図３に示すように複数のポインタの位置情報に対して同一の音声記録時間を取得することになる。つまり、ポインタ位置情報蓄積部５６が保持するテーブルには、図２Ａの符号２１０に示すように、複数のポインタの位置情報に対して同一の音声記録時間が関連づけられることになる。このように位置情報と音声記録時間とが関連づけられてしまうと、ポインタの軌跡および音声の再生時に整合性が取れなくなる。
【００２９】
そこで、本実施形態では、音声記録時間修正部４６が、１つの音声記録時間に対して複数のポインタ位置情報が関連づけられないようにポインタ位置情報蓄積部５６が保持するテーブルを修正する。
【００３０】
図４は、音声記録時間修正部４６がポインタ位置情報蓄積部５６に保持されたテーブルを修正する手順を示すフローチャートである。音声記録時間修正部４６は、例えば、プレゼンテーションの様子の記録が完了した時点で、図４に示す手順に基づく修正処理を実行する。
【００３１】
図４において、音声記録時間修正部４６は、ポインタ位置情報ＩＤを示す変数ｉ（ｉは１〜Ｎの整数を示す（Ｎは、テーブルに登録されたポインタ位置情報の総数を示す））を初期値の「１」に設定する（Ｓ１００）。以下、変数ｉに対応するポインタ位置情報を「位置情報（ｉ）」と称する。次いで、音声記録時間修正部４６は、位置情報（ｉ）に対応する音声記録時間から、最初に音声記録時間が切り替わる位置情報（ｍ）を検索する（Ｓ１０２）。例えば図２Ａに示すテーブルの場合、位置情報（１）に対応する音声記録時間（０．００）に対して最初に音声記録時間（０．５０）に切り替わる位置情報（５）が位置情報（ｍ）に相当する。検索後、音声記録時間修正部４６は、位置情報（ｉ）と位置情報（ｍ）との間に他の位置情報が存在するか否かを判定する（Ｓ１０４）。
【００３２】
判定の結果、他の位置情報が存在しない場合には（ステップＳ１０４の判定結果が、否定「Ｎ」）、位置情報（ｍ）がテーブルの最終行の位置情報（Ｎ）かどうかの判定を行う（Ｓ１０８）。判定結果、位置情報（ｍ）がテーブルの最終行の位置情報（Ｎ）ではない場合（ステップＳ１０８の判定結果が、否定「Ｎ」）、変数ｉにｍを代入して、ステップＳ１０２以降の処理を再度実行する。判定の結果、位置情報（ｍ）がテーブルの最終行の位置情報の場合には（ステップＳ１０８の判定結果が、肯定「Ｙ」）、すべてのポイント位置情報に対する音声記録時間の修正処理が終了したと判断して、そのまま処理を終了する。
【００３３】
一方、ステップＳ１０４における判定結果、他の位置情報が存在する場合には（ステップＳ１０４の判定結果が、肯定「Ｙ」）、音声記録時間修正部４６は、存在する他の位置情報の音声記録時間を修正する（Ｓ１０６）。より具体的には、位置情報（ｍ）の音声記録時間をＴｍ、位置情報（ｉ）の音声記録時間をＴｉ、ＴｍとＴｉとの差分をＳ、他の位置情報のＩＤをｊ，ｊ＋１，ｊ＋２・・・（ｉ＜ｊ，ｊ＋１，ｊ＋２・・・＜ｍ）とした場合、音声記録時間修正部４６は、他の位置情報（ｊ）の音声記録時間Ｔｊを次式（ａ）の通り、算出し、修正する。
【００３４】
Ｔｊ＝Ｔｉ＋（ｊ−ｉ）×Ｓ／（ｍ−ｉ）      ・・・（ａ）
【００３５】
つまり、音声記録時間修正部４６は、図５に示すように、音声記録時間Ｔｉと音声記録時間Ｔｍとの間の時間（差分Ｓ）を均等に分割し、分割した時間に、各位置情報（ｊ），（ｊ＋１），（ｊ＋２）・・・を時系列順に割り当てる。
【００３６】
以上のように、位置情報の音声記録時間を修正することで、図２Ａに示すテーブルは、図２Ｂに示すテーブルのように修正される。つまり、同一の音声記録時間が関連づけられていた各ポイント位置情報に対して、それぞれ時系列順に異なる音声記録時間が割り当てられる。よって、修正後のテーブルに基づいてポインタの軌跡と音声とを不都合なく再生することができる。
【図面の簡単な説明】
【００３７】
【図１】本実施形態に係る情報処理装置の全体構成を示す機能ブロックを示す図である。
【図２Ａ】ポインタ位置情報蓄積部に記憶されたポインタの位置情報と修正前の音声記録時間とを関連づけたテーブルの一例を示す図である。
【図２Ｂ】ポインタ位置情報蓄積部に記憶されたポインタの位置情報と修正後の音声記録時間とを関連づけたテーブルの一例を示す図である。
【図３】ポインタの位置情報を取得するタイミングと音声記録時間との関係について説明するための図である。
【図４】音声記録時間修正部がポインタ位置情報蓄積部に保持されたテーブルを修正する手順を示すフローチャートである。
【図５】複数のポインタの位置情報に対して１つの音声記録時間が関連づけられている場合に、各位置情報に対する音声記録時間を修正する方法について説明するための図である。
【符号の説明】
【００３８】
１０  ＣＰＵ、２０  揮発性メモリ、３０  不揮発性メモリ、４０  プログラム、４１  プレゼンアプリケーション、４２  音声記録部、４３  ポインタ位置取得部、４４  音声記録時間取得部、４５  ポインタ位置情報記録部、４６  音声記録時間修正部、５０  データベース、５２  プレゼンファイル蓄積部、５４  音声データ蓄積部、５６  ポインタ位置情報蓄積部、７０  操作入力部、７２  表示出力部、７４  音声入力部、９０  バスライン、１００  情報処理装置。
【図１】
0004784597.tif 000002
【図２Ａ】
0004784597.tif 000003
【図２Ｂ】
0004784597.tif 000004
【図３】
0004784597.tif 000005
【図４】
0004784597.tif 000006
【図５】
0004784597.tif 000007