(57)【要約】【課題】  本発明の課題は、音声付動画によるコンテンツ提供において、音声の有無に応じて違和感の無い動画表示を可能とする表示制御に係るコンピュータ実行可能なプログラムを提供すことを目的とする。【解決手段】  本発明の課題は、動画表示制御プログラムにおいて、該コンピュータに、現フレームと前フレームを比較することによって互いの内容データの不一致を判断し、前記内容データが不一致であると判断した場合、前記現フレームを表示ユニットに表示させ、前記現フレーム表示後に前記現フレームを前記前フレームとし、次フレームを現フレームとして不一致判断を繰り返し実行し、前記内容データが一致すると判断した場合、連続して一致したフレーム数が所定数を超えない範囲で、該連続して一致する前記現フレームを表示ユニットに表示させる一致フレーム表示手順とを実行させることにより達成される。【選択図】  図１
2006258991.tif 000002
【特許請求の範囲】
【請求項１】
動画に係る表示制御をコンピュータに実行させるコンピュータ実行可能なプログラムにおいて、該コンピュータに、
現フレーム格納領域に格納されている現フレームと、前フレーム格納領域から格納されている前フレームとを比較することによって互いの内容データの不一致を判断する不一致判断手順と、
前記不一致判断手順によって前記内容データが不一致であると判断した場合、前記現フレームを表示ユニットに表示させる不一致フレーム表示手順と、
前記現フレーム表示後に前記現フレームを前記前フレーム格納領域に格納し、次フレームを前記現フレーム格納領域に格納して前記不一致判断手順を実行する手順と、
前記不一致判断手順によって前記内容データが一致すると判断した場合、連続して一致したフレーム数が第一の所定数を超えない範囲で、該内容データが一致する前記現フレームを表示ユニットに表示させる一致フレーム表示手順とを実行させることを特徴とするコンピュータ実行可能なプログラム。
【請求項２】
前記コンピュータに、
先読みによって現フレーム格納領域に格納されている現フレームと、前フレーム格納領域から格納されている前フレームとを比較することによって互いの内容データの不一致を判断する先読み不一致判断手順と、
前記先読み不一致判断手順によって前記内容データが一致すると判断した場合、連続して一致したフレーム数が第二の所定数を超えない範囲で、該内容データが一致する該第二の所定数分のフレームをバッファに順次蓄積するフレーム蓄積手順と、
前記不一致判断手順によって前記内容データが不一致であると判断した場合、前記フレーム蓄積手順によって前記バッファに蓄積されている前記フレームと、前記内容データが不一致となった現フレームとを表示ユニットに表示させる不一致前フレーム表示手順とを実行させることを特徴とする請求項１記載のコンピュータ実行可能なプログラム。
【請求項３】
前記コンピュータに、
利用者から音声の有無の選択を取得する音声有無選択手順を実行させ、
音声有無選択手順によって取得した前記利用者による選択が音声無しを示す場合、前記複数の手順を有効とすることを特徴とする請求項１又は２記載のコンピュータ実行可能なプログラム。
【請求項４】
前記不一致フレーム表示手順は、前記内容データの不一致をアニメーションデータを含むか含まないかによって判断することを特徴とする請求項１記載のコンピュータ実行可能なプログラム。
【請求項５】
前記先読み不一致判断手順は、前記内容データの不一致をアニメーションデータを含むか含まないかによって判断することを特徴とする請求項２記載のコンピュータ実行可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声付動画によるコンテンツ提供において、音声の有無に応じて違和感の無い動画表示を可能とする表示制御に係るコンピュータ実行可能なプログラムに関する。
【背景技術】
【０００２】
従来より、音声付動画による学習用コンテンツを提供する分野では、ハードウェアとして音の再生機能がない、或いは、職場での就業時間中の学習であり周りに迷惑がかけられないといった利用者のコンピュータ端末の環境に合わせて、音声の有無を選択できる機能を提供していた。
【０００３】
音声無しによる画像を提供する装置として、例えば、英会話教材の会話パートの音声出力を停止しても、音声ファイルを再生しないと画像も再生できないという制約を有するＭＰ３を用いて、画像を同期して表示可能とする音声表示出力制御装置が提案されている（例えば、特許文献１）。
【０００４】
また、画面を制御する装置として、視聴者の状況に合わせてプレゼンテーション速度を適合可能とする映像又は音声プレゼンテーションの動的制御システムが提案されている（例えば、特許文献２）。
【特許文献１】特開２００４−２０５７８２号公報
【特許文献２】特開平７−１３５３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記提案されている装置及びシステムは、音声無しでコンテンツを鑑賞した場合、静止画面の表示時間が長すぎると感じる、或いは、静止画面を飛ばして動画画面を表示させた場合では画面の動きが不自然で違和感を感じる等の問題を解決することができない。
【０００６】
よって、本発明の目的は、音声付動画によるコンテンツ提供において、音声の有無に応じて違和感の無い動画表示を可能とする表示制御に係るコンピュータ実行可能なプログラムを提供することである。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明は、動画に係る表示制御をコンピュータに実行させるコンピュータ実行可能なプログラムにおいて、該コンピュータに、現フレーム格納領域に格納されている現フレームと、前フレーム格納領域から格納されている前フレームとを比較することによって互いの内容データの不一致を判断する不一致判断手順と、前記不一致判断手順によって前記内容データが不一致であると判断した場合、前記現フレームを表示ユニットに表示させる不一致フレーム表示手順と、前記現フレーム表示後に前記現フレームを前記前フレーム格納領域に格納し、次フレームを前記現フレーム格納領域に格納して前記不一致判断手順を実行する手順と、前記不一致判断手順によって前記内容データが一致すると判断した場合、連続して一致したフレーム数が第一の所定数を超えない範囲で、該内容データが一致する前記現フレームを表示ユニットに表示させる一致フレーム表示手順とを実行させることによって達成される。
【０００８】
このようなプログラムをインストールし実行したコンピュータは、自動的に変化のない画面（フレーム）を判断し、変化のある画面を表示すると共に、暫く変化の無い画面をも表示するため、画面の流れに違和感のない表示制御を実現することが可能となる。
【０００９】
上記課題を解決するための手段として、本発明は、上記プログラムを実行することによって実現される動画表示制御装置、上記プログラムを記憶した記憶媒体とすることもできる。
【発明の効果】
【００１０】
本願発明は、一つのコンテンツで、自動的に変化のない画面を判断し、その画面の表示を飛ばすことによって、受講者に違和感のない表示を可能とする。また、このような表示制御を可能とすることによって、音声の有無に応じた個別のコンテンツ作成を不要とすることができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態を図面に基づいて説明する。
【００１２】
図１は、本発明の一実施形態に係るコンテンツ提供システムの構成を示す図である。図１において、コンテンツを提供するコンテンツ提供サーバ２００と、コンテンツを利用する利用者のクライアント３００とがネットワーク１１を介して接続され、コンテンツ提供サーバ２００は、クライアント３００からの要求に応じて、コンテンツを提供する。ここで、コンテンツとは、例えば、学習用コンテンツであって、動画による表示と音声（ナレーション）による説明とを含むコンテンツである。
【００１３】
クライアント３００は、ＣＰＵ（中央処理装置）によって制御されるコンピュータであって、各処理部は、コンピュータによって実行可能なプログラムによって構成され、それを実行することによって実現される。また、このようなクライアント３００にて必要とされるプログラムは、予め記憶された記憶媒体３１０からインストーラ３０９によってインストールされる。或いは、コンテンツ提供サーバ２００などからプログラム全体をネットワーク１１を介してダウンロードしてインストールしても良い。
【００１４】
このようなプログラムをインストールすると、コンテンツ表示制御部３２０がクライアント３００内に構成される。コンテンツ表示制御部３２０は、目次を表示する目次表示部３２２と、音声（ナレーション）の有無に応じたコンテンツの表示を制御するエンジン３３０と、章又は節単位で構成される動画と音声とシナリオとして示すシナリオ３４０と、利用者が目次から選択した項目に応じて必要となる動画を格納するアニメーションファイル３５１と、その動画に応じた音声を格納する音声ファイル３５２とを有する。
【００１５】
エンジン３３０は、更に、利用者による音声の有無選択を可能とする音声モード入力部３３１と、音声の有無に応じて表示すべきフレームを判断して表示させる表示フレーム判断部３３２とを有する。フレームの表示は、例えば、Ｗｅｂブラウザなどを用いて表示する。
【００１６】
その他、クライアント３００は、標準的に備えられる、マウスやキーボード等の入力ユニット、情報を表示する表示ユニット、ネットワーク及びインターネットへ接続するための通信ユニット、必要な情報を格納するためのメモリユニット及び補助記憶装置、記憶媒体３１０を制御するドライブユニット等を有している。
【００１７】
コンテンツ提供サーバ２００は、クライアント３００からの要求に応じて要求されたコンテンツに関する情報を送出するコンテンツ送出部２１０、コンテンツ送出部２１０によってクライアント３００へ提供される情報として、表示すべき目次データを管理する目次データ２２１と、クライアント３００で実行されるエンジン部２２２と、章毎にシナリオを管理するシナリオファイル２２３と、シナリオ２２３で要求される動画データを管理するアニメーションファイル２２４と、シナリオ２２３で要求される音声データを管理する音声ファイル２２５とを有する。
【００１８】
コンテンツ提供サーバ２００は、コンテンツ送出部２１０によって、クライアント３００が要求するコンテンツの目次データを目次データ２２１から読み出してネットワーク１１を介して送出し、また、コンテンツの表示を制御するエンジン部をエンジン部２２２から読み出してネットワーク１１を介して送出する。
【００１９】
そして、利用者がクライアント３００に表示される目次から所望の章を選択すると、コンテンツ提供サーバ２００は、その章に相当するシナリオをシナリオファイル２２３から読み出してネットワーク１１を介して送出する。
【００２０】
以後、クライアント３００からのシナリオ３４０に従った動画データ及び音声データの要求にしたがって、コンテンツ提供サーバ２００は、コンテンツ送出部２１０によって、１ページ単位毎にアニメーションファイル２２４と音声ファイル２２５とをネットワーク１１を介して転送する。
【００２１】
図２は、コンテンツの構成を示す図である。図２において、１つのコンテンツは、複数の章で構成さる。章毎はＨＴＭＬ（HyperText Markup Language）ファイルで構成される、例えば、第１章．ＨＴＭＬ、第２章．ＨＴＭＬ、・・・、第ｎ章．ＨＴＭＬのように構成され、目次データ２２１にて管理される。
【００２２】
エンジン部２２２（例えば、エンジン．ｓｗｆファイル）は、各章のＨＴＭＬファイルから与えられる変数によって、どの章のシナリオを読み込むべきかを判断するための処理部である。
【００２３】
章毎にシナリオが構成され、例えば、第１章シナリオ、第２章シナリオ、・・・、第ｎ章シナリオのようにシナリオファイル２２３が構成される。各シナリオファイル２２３には、実行すべき順にページが指定され、そのページ番号によってアニメーションファイルと音声ファイルとが指定される。１ページには、動画を実現する複数のフレームが含まれる。
【００２４】
このようなコンテンツの構成における、コンテンツ提供サーバ２００とクライアント３００とのエンジンとデータファイルのローディング手順について説明する。
【００２５】
図３は、エンジンとデータファイルのローディング手順を説明するための図である。図３において、第ｎ章のＨＴＭＬが表示されると（０）、クライアント３００は、コンテンツ提供サーバ２００からエンジンを読み込んでブラウザ上に表示する（１）。つまり、クライアント３００内に構成されたエンジン部３３０によって利用者によって操作可能なエンジン画面が表示される。
【００２６】
次に、第ｎ章のＨＴＭＬから与えられる変数によって指定される第ｎ章シナリオをコンテンツ提供サーバ２００から読み込み、シナリオ３４０として記憶領域に格納する（２）。読み込んだ第ｎ章シナリオに沿って、順に指定されるページ単位でアニメーションをローディングして、アニメーションファイル３５１として記憶領域に格納する（３）。続けて、アニメーションに対応する音声ファイルをローディングする（４）。
【００２７】
そして、利用者が音声有りモードを指定の場合、全ての音声ファイルがロードされた時点でアニメーションと音声の再生を開始する（５）。
【００２８】
ここで、クライアント３００に表示されるエンジン画面では、利用者によるアニメーションの操作を可能とするため、次のページへ進むための次へボタンと、前のページへ戻るための戻るボタンと、現在表示されているページのアニメーションの再生状態を示すスライダーなどが含まれている。
【００２９】
本実施例において、動画とは、フレームという単位を一定時間間隔で複数フレームを表示することにより成り立っている。更に、動画の変化は、１つのフレームにアニメーションデータを付加することにより行われる。上述において、コンテンツ提供サーバ２００からクライアント３００へ送出されるアニメーションファイルにはこのアニメーションデータが含まれている。
【００３０】
したがって、音声を不要とする場合には、アニメーションデータの無いフレームを表示せず、アニメーションデータの有るフレームを表示するように表示制御する。或いは、アニメーションデータの有無による判断の代わりに、前のフレームと現在のフレームとの表示情報の差を判断することによって、現在のフレームを表示しないように表示制御しても良い。
【００３１】
更に、変化のないフレームを単に表示しない制御だと、画面の変化が不自然に感じる場合があるため、或いは、変化がなくても表示させたい画面が有る場合、コンテンツの作成時に予め強制表示させるフラグを設けておくことによって、変化のないフレームに対して、表示制御を細かく行なうことができる。
【００３２】
また、変化のあるフレームの表示の前後に所定フレーム数の変化のないフレームを表示させ、動画の表示開始と終了とが自然な表示とすることができる。
【００３３】
本発明に係るこのような表示制御を実現する方法について、以下に詳述する。
【００３４】
まず、本発明に係る音声有無に応じたコンテンツ表示制御に関するデータ構成について説明する。
【００３５】
図４は、音声有無に応じたコンテンツ表示制御に関するデータ構成を示す図である。図４において、音声フラグ領域１は、利用者によって選択された音声の有無を格納する。例えば、音声有りが選択された場合「１」が設定され、音声無しが選択された場合「２」が設定される。
【００３６】
フレーム領域２は、ページ毎にダウンロードした複数のフレームが格納される。フレーム領域２では、フレームを特定するフレーム番号と、利用者が音声無しを選択した場合にフレームに変化がなくても必ず表示すべきフレームであることを示す強制表示フラグと、フレームの表示に関するデータを格納する表示データ部とで構成される。表示データ部には、例えば、テキストのみのデータ、音声ファイル３５２へのポインタ、アニメーションファイル３５１へのポインタ等が設定される。
【００３７】
現フレーム３ａ（以下のフローチャート内では、ｆｒａｍｅ＿０で示される）は、読み込んだばかりのフレームを一時的に格納する領域である。
【００３８】
前フレーム３ｂ（以下のフローチャート内では、ｆｒａｍｅ＿ｐで示される）は、一つ前に読み込んだフレームを一時的に格納する領域である。
【００３９】
フレーム蓄積バッファ４は、変化のあるフレームまでの最大の所定フレーム数（例えば、Ｌで示される）分を蓄積しておく領域である。
【００４０】
図５は、音声の有無を利用者に選択可能とする画面例を示す図である。図５において、コンテンツが学習教材である場合、音声モード入力部３３１によって、例えば、画面５０が表示される。画面５０において、例えば、「音声を聞きながら学習しますか？」のメッセージに応じて、利用者は、「はい」又は「いいえ」をマウス等を用いて選択（クリック）する。利用者によって「はい」がクリックされると、音声モード入力部３３１によって、音声フラグ領域１に「１」が設定される。一方、利用者によって「いいえ」がクリックされると、音声モード入力部３３１によって、音声フラグ領域１に「０」が設定される。
【００４１】
本発明に係るコンテンツ表示制御処理について図６、図７及び図８で説明する。
【００４２】
図６は、コンテンツ表示制御処理の全体概要を説明するためのフローチャート図である。図６において、コンテンツ表示制御部３２０は、コンテンツ（学習）の開始に際して、音声モード入力部３３１によって、音声選択画面（図５に示す画面５０）がクライアント３００に表示する（ステップＳ１０１）。利用者は、音声の有無をマウス等によって選択する（ステップＳ１０２）。例えば、利用者が職場で学習する際には、周りの作業者に迷惑がかからないように音声を消去して学習をしたい場合、音声無しを選択する。
【００４３】
音声モードが設定されると、目次表示部３２２が目次を表示する（ステップＳ１０３）。ここで、利用者が終了を指定した場合、このコンテンツ表示制御処理を終了する。
【００４４】
一方、利用者が目次から所望する章又は節を選択すると（ステップＳ１０４）、対応するＨＴＭＬファイルが表示されると同時に、コンテンツ表示制御部３２０は、エンジン部３３０によってエンジンをロードする（ステップＳ１０５）。ブラウザ上でフレームの操作を利用者に可能とするエンジン画面が表示される。そして、エンジン部３３０は、利用者が選択した章又は節に対応するシナリオをロードする（ステップＳ１０６）。
【００４５】
クライアント３００内に格納されたシナリオ３４０に基づいて、コンテンツ表示制御部３２０は、コンテンツ提供サーバ２００からページ単位でアニメーションファイルを取得してアニメーションファイル３５１に格納する。
【００４６】
コンテンツ表示制御部３２０は、ページが終了したか否かを判断する（ステップＳ１０８）。つまり、ステップＳ１０７で取得すべきページがあったか否かを判断する。全ページが終了している場合、ステップＳ１０３へ戻って、再度目次を表示する。
【００４７】
一方、全ページが終了していない場合、コンテンツ表示制御部３２０は、音声フラグ領域１を参照して、利用者が音声無しを選択したか否かを判断する（ステップＳ１０９）。音声無しの場合、表示フレーム判断処理へ進む（ステップＳ２００）。
【００４８】
音声有りが選択されている場合、コンテンツ表示制御部３２０は、ページに相当する音声ファイルをコンテンツ提供サーバ２００から取得して、音声ファイル３５２へ格納する（ステップＳ１１０）。
【００４９】
そして、コンテンツ表示制御部３２０は、音声ファイル３５２から音声データを再生すると共に（ステップＳ１１１）、アニメーションファイル３５１からフレーム単位で順にフレームに対応するアニメーションデータを読み込む（ステップＳ１１２）。コンテンツ表示制御部３２０は、全フレームが終了したか否かを判断する（ステップＳ１１３）。つまり、ステップＳ１１２でフレームが読み込まれたか否かを判断する。フレームが読み込まれなかった場合、全フレームの表示を終了したと判断して、ステップＳ１０７へ戻り、次のページの処理を行う。一方、フレームが読み込まれた場合、そのフレームを表示してステップＳ１１２へ戻り、次のフレームを読み込む。
【００５０】
上述したステップＳ１１０からＳ１１４までの処理は、コンテンツ（学習教材）が音声（ナレーション）付きで動画で表示される場合に実行される。
【００５１】
以下、コンテンツ（学習教材）が音声（ナレーション）無しで、自然な流れで動画で表示する表示フレーム判断処理（ステップＳ２００）について図７及び図８で詳述する。
【００５２】
図７は、表示フレーム判断処理において変化のあるフレームの表示開始前の所定フレーム数を表示する処理を説明するためのフローチャート図である。図８は、変化のあるフレームの表示及び変化のあるフレームの表示後の所定フレーム数を表示する処理を説明するためのフローチャート図である。
【００５３】
図７において、コンテンツ表示制御部３２０の表示フレーム判断部３３２は、フレーム蓄積バッファ４における蓄積されているフレーム数を示すバッファ内フレーム数ｂをゼロクリアする（ステップＳ２０１）。バッファ内フレーム数ｂは、フレーム変化開始前にフレーム蓄積バッファ４に蓄積されているフレーム数を示すと共に、フレーム蓄積バッファ４内の格納位置に対応する。
【００５４】
表示フレーム判断部３３２は、ページ内の最初のフレームを現フレーム３ａにｆｒａｍｅ＿０として読み込み（ステップＳ２０３）、ｆｒａｍｅ＿０をクライアント３００に表示する（ステップＳ２０３）。その後、ｆｒａｍｅ＿０をｆｒａｍｅ＿ｐにコピーする（ステップＳ２０４）。
【００５５】
そして、表示フレーム判断部３３２は、次のフレームをｆｒａｍｅ＿０に読み込み（ステップＳ２０５）、フレームが終了していたか否かを判断する（ステップＳ２０６）。つまり、次のフレームを読み込むことができなかった場合、全フレームを終了したと判断して、ステップＳ２２１へ進む。
【００５６】
一方、次のフレームをｆｒａｍｅ＿０に読み込むことができた場合、表示フレーム判断部３３２は、フレーム領域２の強制表示フラグを参照することによって、ｆｒａｍｅ＿０に読み込んだフレームの強制表示有りか否かを判断する（ステップＳ２０７）。強制表示有りの場合、表示フレーム判断部３３２は、バッファ内フレーム数ｂをゼロクリアして（ステップＳ２０８）、ステップＳ２２３へと進む。
【００５７】
このステップＳ２０７及びＳ２０８は、所定フレーム数Ｌを充分な枚数とすることによって、省略することが可能である。
【００５８】
一方、強制表示無しの場合、表示フレーム判断部３３２は、前のフレーム３ｂにｆｒａｍｅ＿ｐとして格納されている１つ前のフレームとｆｒａｍｅ＿０とを比較することによって変化のあるフレームであるか否かを判断する（ステップＳ２０９）。フレームの内容データが一致しない場合、変化のあるフレームであると判断する。アニメーション有無による判断の場合は、フレーム領域２の表示データ部を参照してアニメーションファイル３５１へのポインタが設定されているか否かを確認することによって、アニメーションであるか否かを判断する。以下同様の変化のあるフレームであるか否かを判断する処理でもアニメーション有無による判断による場合は、同様である。
【００５９】
変化のあるフレームである場合、或いは、アニメーションの開示であると判断した場合、表示フレーム判断部３３２は、ステップＳ２２２へと進み変化のあるフレームを表示、或いは、アニメーションを開始させる。
【００６０】
以下、変化の有無にアニメーションの有無を含むものとする。変化のあるフレームにアニメーションを含むフレームを含めるものとし、変化のないフレームにアニメーションを含まないフレームを含めることとして説明する。また、変化のあるフレームを表示する場合、アニメーションを開始することを含むものとし、最初の変化のないフレームにアニメーションの終了の意味を含めるものとして説明する。
【００６１】
一方、変化がないフレームであると判断した場合、表示フレーム判断部３３２は、バッファ内フレーム数ｂを１インクリメントして（ステップＳ２１０）、バッファ内フレーム数ｂが変化前の所定数Ｌより１少ない「Ｌ−１」より大きいか否かを判断する（ステップＳ２１１）。「Ｌ−１」以下である場合、表示フレーム判断部３３２は、ステップＳ２１４へと進む。
【００６２】
一方、「Ｌ−１」より大きい場合、表示フレーム判断部３３２は、フレーム蓄積バッファ４に格納されている各フレームのデータを１アドレス前にシフトさせる（ステップＳ２１２）。ここで、バッファ内フレーム数ｂ＝１に対応するアドレスに格納されているフレームのデータは消去されることになる。また、ステップＳ２１２でのシフトに合わせ、バッファ内フレーム数ｂに「Ｌ−１」の値をセットする。
【００６３】
そして、表示フレーム判断部３３２は、ｆｒａｍｅ＿ｐをフレーム蓄積バッファ４のｂ番目に保存し（ステップＳ２１４）、ｆｒａｍｅ＿０をｆｒａｍｅ＿ｐにコピーして（ステップＳ２１５）、次のフレームを読み込むためにステップＳ２０５へ戻る。
【００６４】
上記ステップＳ２０５からＳ２１５までが、フレーム領域２からの先読みによって、変化のあるフレームの前の所定フレーム数を表示するためにフレーム蓄積バッファ４に格納するための処理である。
【００６５】
ステップＳ２０６において、表示フレーム判断部３３２は、ページの全フレームが終了したと判断すると、バッファ内フレーム数ｂがゼロであるか否かを判断する（ステップＳ２２１）。バッファ内フレーム数ｂがゼロである場合、表示フレーム判断処理から復帰して図６のステップＳ１０７へ進み、次のページの読み込みを行う。
【００６６】
一方、バッファ内フレーム数ｂがゼロでないと判断すると、表示フレーム判断部３３２は、フレーム蓄積バッファ４の１番目よりｂ番目（最大でＬ番目）までのフレームを連続して表示する（ステップＳ２２２）。そして、表示フレーム判断部３３２は、ステップＳ２０５と同様に、全フレームを終了したか否かを判断する（ステップＳ２２３）。全フレームが終了している場合、表示フレーム判断処理から復帰して図６のステップＳ１０７へと進む。
【００６７】
一方、全フレームが終了していない場合、表示フレーム判断部３３２は、ｆｒａｍｅ＿０を表示する（ステップＳ２２４）。表示されるｆｒａｍｅ＿０は、変化があるフレーム、或いは強制表示有りのフレームである。
【００６８】
そして、表示フレーム判断部３３２は、ｆｒａｍｅ＿０をｆｒａｍｅ＿ｐにコピーして、図８のステップＳ３０１へと進む。
【００６９】
上述したステップＳ２２２からＳ２２４までが、変化のあるフレームの前の所定フレーム数（最大Ｌ数のフレーム）とその変化のあるフレームとを表示する処理である。
【００７０】
図８のステップＳ３０１において、表示フレーム判断部３３２は、フレーム領域２から次のフレームをｆｒａｍｅ＿０に読み込み（ステップＳ３０１）、フレームが終了していたか否かを判断する（ステップＳ３０２）。つまり、次のフレームを読み込むことができなかった場合、表示フレーム判断部３３２は、全フレームを終了したと判断して、表示フレーム判断処理から復帰して図６のステップＳ１０７へと進む。
【００７１】
一方、次のフレームをｆｒａｍｅ＿０に読み込むことができた場合、表示フレーム判断部３３２は、ｆｒａｍｅ＿ｐとｆｒａｍｅ＿０とを比較することによって変化のあるフレームであるか否かを判断する（ステップＳ３０３）。変化がないフレームである場合、表示フレーム判断部３３２は、変化のあるフレームの表示終了後にも所定数のフレームを表示するために、ステップＳ３１１へと進む。
【００７２】
一方、変化のあるフレームが連続していると判断すると、表示フレーム判断部３３２は、ｆｒａｍｅ＿０を表示し（ステップＳ３０４）、ｆｒａｍｅ＿０をｆｒａｍｅ＿ｐにコピーして（ステップＳ３０５）、次のフレームを読み込むためにステップＳ３０１へと戻る。
【００７３】
上述したステップＳ３０１からＳ３０５までが、変化のあるフレームが連続している場合にフレームを表示する処理である。
【００７４】
一方、ステップＳ３０３において、変化のあるフレームが終了したと判断した場合、表示フレーム判断部３３２は、ステップＳ３１１からステップＳ３１８を行う。
【００７５】
表示フレーム判断部３３２は、変化のあるフレームの表示終了後のフレーム数ａを用いて、フレーム数ａをゼロクリアする（ステップＳ３１１）。フレーム数ａは、変化のあるフレームの表示終了後に連続して表示したフレーム数を示す。
【００７６】
表示フレーム判断部３３２は、フレーム数ａを１インクリメントして（ステップＳ３１２）、フレーム数ａが所定フレーム数Ｌより大きいか否かを判断する（ステップＳ３１３）。所定フレーム数Ｌは、変化のあるフレームの表示開始前の所定フレーム数と同一であっても、異なる数であっても良い。所定フレーム数Ｌより大きい場合、図７のステップＳ２０５へと戻る。
【００７７】
一方、フレーム数ａが所定フレーム数Ｌ以下である場合、表示フレーム判断部３３２は、ｆｒａｍｅ＿０を表示して（ステップＳ３１４）、ｆｒａｍｅ＿０をｆｒａｍｅ＿ｐにコピーする（ステップＳ３１５）。
【００７８】
そして、表示フレーム判断部３３２は、次のフレームをｆｒａｍｅ＿０に読み込んで（ステップＳ３１６）、フレームが終了していたか否かを判断する（ステップＳ３１７）。つまり、次のフレームを読み込むことができなかった場合、表示フレーム判断部３３２は、全フレームを終了したと判断して、表示フレーム判断処理から復帰して図６のステップＳ１０７へと進む。
【００７９】
一方、次のフレームをｆｒａｍｅ＿０に読み込むことができた場合、表示フレーム判断部３３２は、ｆｒａｍｅ＿ｐとｆｒａｍｅ＿０とを比較することによって変化のあるフレームであるか否かを判断する（ステップＳ３１８）。変化がないフレームである場合、表示フレーム判断部３３２は、変化のあるフレームの表示終了後の所定フレーム数を表示するため、ステップＳ３１２へ戻る。一方、変化のあるフレームの表示が再開されたと判断した場合、表示フレーム判断部３３２は、変化のあるフレームの表示の処理をするためステップＳ３０４へ戻る。
【００８０】
上述したステップＳ３１１からＳ３１８が、変化のあるフレームの表示終了後に変化のないフレームであっても所定フレーム数を表示する処理である。
【００８１】
このように、単に、変化のあるフレーム部分だけを表示させるのではなく、変化のあるフレームの表示の前後において、たとえ変化のないフレームであっても所定数表示させることによって、自然な表示制御とすることができる。また、必要に応じて、予め設定された表示すべきフレームをも表示させるように制御することが可能である。
【００８２】
したがって、本願によれば、一つのコンテンツで、自動的に変化のない画面を判断し、その画面の表示を飛ばすことによって、受講者に違和感のない表示を可能とする。また、このような表示制御を可能とすることによって、音声の有無に応じた個別のコンテンツ作成を不要とすることができる。
【００８３】
更に、利用者は、音声無しを選択しても、動画の動きの切り替わりに違和感なくコンテンツを参照することができる。また、音声がある場合より、短い時間でコンテンツを一通り参照することができる。例えば、学習コンテンツを職場などで参照する場合に特に効果的である。また、音声の有無に関係なく、短時間でコンテンツを参照したい場合に本願を適用しても良い。
【００８４】
また、コンテンツ提供サーバ２００によって管理される目次データ２２１、エンジン部２２２、シナリオファイル２２３、アニメーションファイル２２４、及び音声ファイル２２５は、それらを予め記憶した記憶媒体によって、ネットワーク１１を介することなくクライアント３００へ提供するようにしても良い。
【００８５】
以上の説明に関し、更に以下の項を開示する。
（付記１）
動画に係る表示制御をコンピュータに実行させるコンピュータ実行可能なプログラムにおいて、該コンピュータに、
現フレーム格納領域に格納されている現フレームと、前フレーム格納領域から格納されている前フレームとを比較することによって互いの内容データの不一致を判断する不一致判断手順と、
前記不一致判断手順によって前記内容データが不一致であると判断した場合、前記現フレームを表示ユニットに表示させる不一致フレーム表示手順と、
前記現フレーム表示後に前記現フレームを前記前フレーム格納領域に格納し、次フレームを前記現フレーム格納領域に格納して前記不一致判断手順を実行する手順と、
前記不一致判断手順によって前記内容データが一致すると判断した場合、連続して一致したフレーム数が第一の所定数を超えない範囲で、該内容データが一致する前記現フレームを表示ユニットに表示させる一致フレーム表示手順とを実行させることを特徴とするコンピュータ実行可能なプログラム。
（付記２）
前記コンピュータに、
先読みによって現フレーム格納領域に格納されている現フレームと、前フレーム格納領域から格納されている前フレームとを比較することによって互いの内容データの不一致を判断する先読み不一致判断手順と、
前記先読み不一致判断手順によって前記内容データが一致すると判断した場合、連続して一致したフレーム数が第二の所定数を超えない範囲で、該内容データが一致する該第二の所定数分のフレームをバッファに順次蓄積するフレーム蓄積手順と、
前記不一致判断手順によって前記内容データが不一致であると判断した場合、前記フレーム蓄積手順によって前記バッファに蓄積されている前記フレームと、前記内容データが不一致となった現フレームとを表示ユニットに表示させる不一致前フレーム表示手順とを実行させることを特徴とする付記１記載のコンピュータ実行可能なプログラム。
（付記３）
前記コンピュータに、
利用者から音声の有無の選択を取得する音声有無選択手順を実行させ、
音声有無選択手順によって取得した前記利用者による選択が音声無しを示す場合、前記複数の手順を有効とすることを特徴とする付記１又は２記載のコンピュータ実行可能なプログラム。
（付記４）
前記不一致フレーム表示手順は、前記内容データの不一致をアニメーションデータを含むか含まないかによって判断することを特徴とする付記１記載のコンピュータ実行可能なプログラム。
（付記５）
前記先読み不一致判断手順は、前記内容データの不一致をアニメーションデータを含むか含まないかによって判断することを特徴とする付記２記載のコンピュータ実行可能なプログラム。
（付記６）
動画に係る表示制御をコンピュータに実行させるプログラムを記憶したコンピュータ読取可能な記憶媒体において、該コンピュータに、
現フレーム格納領域に格納されている現フレームと、前フレーム格納領域から格納されている前フレームとを比較することによって互いの内容データの不一致を判断する不一致判断手順と、
前記不一致判断手順によって前記内容データが不一致であると判断した場合、前記現フレームを表示ユニットに表示させる不一致フレーム表示手順と、
前記現フレーム表示後に前記現フレームを前記前フレーム格納領域に格納し、次フレームを前記現フレーム格納領域に格納して前記不一致判断手順を実行する手順と、
前記不一致判断手順によって前記内容データが一致すると判断した場合、連続して一致したフレーム数が第一の所定数を超えない範囲で、該内容データが一致する前記現フレームを表示ユニットに表示させる一致フレーム表示手順と、
先読みによって現フレーム格納領域に格納されている現フレームと、前フレーム格納領域から格納されている前フレームとを比較することによって互いの内容データの不一致を判断する先読み不一致判断手順と、
前記先読み不一致判断手順によって前記内容データが一致すると判断した場合、連続して一致したフレーム数が第二の所定数を超えない範囲で、該内容データが一致する該第二の所定数分のフレームをバッファに順次蓄積するフレーム蓄積手順と、
前記不一致判断手順によって前記内容データが不一致であると判断した場合、前記フレーム蓄積手順によって前記バッファに蓄積されている前記フレームと、前記内容データが不一致となった現フレームとを表示ユニットに表示させる不一致前フレーム表示手順とを実行させることを特徴とするプログラムを記憶したコンピュータ読取可能な記憶媒体。
（付記７）
動画に係る表示制御を行なう動画表示制御装置であって、
現フレーム格納領域に格納されている現フレームと、前フレーム格納領域から格納されている前フレームとを比較することによって互いの内容データの不一致を判断する不一致判断手段と、
前記不一致判断手段によって前記内容データが不一致であると判断した場合、前記現フレームを表示ユニットに表示させる不一致フレーム表示手段と、
前記現フレーム表示後に前記現フレームを前記前フレーム格納領域に格納し、次フレームを前記現フレーム格納領域に格納して前記不一致判断手段を実行する手段と、
前記不一致判断手段によって前記内容データが一致すると判断した場合、連続して一致したフレーム数が第一の所定数を超えない範囲で、該内容データが一致する前記現フレームを表示ユニットに表示させる一致フレーム表示手段と、
先読みによって現フレーム格納領域に格納されている現フレームと、前フレーム格納領域から格納されている前フレームとを比較することによって互いの内容データの不一致を判断する先読み不一致判断手段と、
前記先読み不一致判断手段によって前記内容データが一致すると判断した場合、連続して一致したフレーム数が第二の所定数を超えない範囲で、該内容データが一致する該第二の所定数分のフレームをバッファに順次蓄積するフレーム蓄積手段と、
前記不一致判断手段によって前記内容データが不一致であると判断した場合、前記フレーム蓄積手段によって前記バッファに蓄積されている前記フレームと、前記内容データが不一致となった現フレームとを表示ユニットに表示させる不一致前フレーム表示手段と有することを特徴とする動画表示制御装置。
【００８６】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【図面の簡単な説明】
【００８７】
【図１】本発明の一実施形態に係るコンテンツ提供システムの構成を示す図である。
【図２】コンテンツの構成を示す図である。
【図３】エンジンとデータファイルのローディング手順を説明するための図である。
【図４】音声有無に応じたコンテンツ表示制御に関するデータ構成を示す図である。
【図５】音声の有無を利用者に選択可能とする画面例を示す図である。
【図６】コンテンツ表示制御処理の全体概要を説明するためのフローチャート図である。
【図７】表示フレーム判断処理において変化のあるフレームの表示開始前の所定フレーム数を表示する処理を説明するためのフローチャート図である。
【図８】変化のあるフレームの表示及び変化のあるフレームの表示後の所定フレーム数を表示する処理を説明するためのフローチャート図である。
【符号の説明】
【００８８】
１            音声フラグ領域
２            フレーム領域
３ａ          現フレーム（ｆｒａｍｅ＿０）
３ｂ          前フレーム（ｆｒａｍｅ＿ｐ）
４            フレーム蓄積バッファ
１１          ネットワーク
１００        コンテンツ提供システム
２００        コンテンツ提供サーバ
２１０        コンテンツ送出部
２２１        目次データ
２２２        エンジン部
２２３        シナリオファイル
２２４        アニメーションファイル
２２５        音声ファイル
３００        クライアント
２０９        インストーラ
２１０        記憶媒体
３２０        コンテンツ表示制御部
３２２        目次表示部
３３０        エンジン部
３３１        音声モード入力部
３３２        表示フレーム判断部
３４０        シナリオ
３５１        アニメーションファイル
３５２        音声ファイル
【図１】
2006258991.tif 000003
【図２】
2006258991.tif 000004
【図３】
2006258991.tif 000005
【図４】
2006258991.tif 000006
【図５】
2006258991.tif 000007
【図６】
2006258991.tif 000008
【図７】
2006258991.tif 000009
【図８】
2006258991.tif 000010