(57)【要約】【課題】  テレビ放送での広告や、Ｗｅｂブラウザ上に表示される広告とは異なり、ストリーミング広告は、ストリーミングコンテンツを視聴するプログラムの操作によって、早送りや完全に飛ばすことが可能なため、利用者が広告を視聴したかを判断できない。そのため、正当な広告料金を広告主に請求できない。【解決手段】  広告視聴プログラムがストリーミング広告視聴時にコンテンツの視聴をしないような処理、例えばスライドバーを使って視聴位置を変更しようとした場合に、視聴位置の変更開始位置と変更終了位置をコンテンツ配信プログラムに送信するようにし、コンテンツ配信プログラム側で広告コンテンツが視聴された時間の計算を行うようにする。すなわち、ストリーミング広告コンテンツのクライアントコンピュータにおける視聴時間を計測し、その視聴時間に応じて広告料金を計算する。【選択図】  図１
2005073003.tif 000002
【特許請求の範囲】
【請求項１】
ストリーミング配信時に映像コンテンツの途中にストリーミング広告コンテンツを挿入してクライアントコンピュータに配信するストリーミング広告配信システムであって、
前記ストリーミング広告コンテンツの前記クライアントコンピュータにおける視聴時間を計測する手段と、
前記ストリーミング広告コンテンツの視聴時間に応じて広告料金を計算する手段と
を備えたことを特徴とするストリーミング広告配信システム。
【請求項２】
ストリーミング配信時に映像コンテンツの途中にストリーミング広告コンテンツを挿入してクライアントコンピュータに配信するストリーミング広告配信システムであって、
ストリーミング広告コンテンツの挿入開始時刻と表示時間を格納しておく広告管理情報記憶手段と、
前記クライアントコンピュータから、再生位置の変更を開始した位置を示す変更開始位置情報と当該再生位置変更後の再生再開位置を示す再生再開位置情報を入手する手段と、
前記広告管理情報記憶手段に格納された情報、および前記変更開始位置情報と再生再開位置情報に基づいて、前記ストリーミング広告コンテンツの前記クライアントコンピュータにおける視聴時間を求める手段と、
前記ストリーミング広告コンテンツの視聴時間に応じて広告料金を計算する手段と
を備えたことを特徴とするストリーミング広告配信システム。
【請求項３】
ストリーミング配信時に映像コンテンツの途中にストリーミング広告コンテンツを挿入してクライアントコンピュータに配信するストリーミング広告配信システムであって、
前記映像コンテンツ配信途中において前記ストリーミング広告コンテンツを挿入すべき広告挿入位置と、当該広告挿入位置に挿入すべきストリーミング広告コンテンツを特定する情報とを、格納した広告挿入位置格納手段と、
前記クライアントコンピュータからの要求に基づいて映像コンテンツを配信する手段と、
前記映像コンテンツの配信の途中で、前記広告挿入位置に至ったとき、前記映像コンテンツに代えて、前記広告挿入位置に挿入すべきストリーミング広告コンテンツを配信する手段と、
前記クライアントコンピュータで前記ストリーミング広告コンテンツの再生が開始されたとき、その広告開始位置を取得する手段と、
前記クライアントコンピュータで前記ストリーミング広告コンテンツの再生が終了したとき、その広告終了位置を取得する手段と、
前記広告開始位置と広告終了位置に基づいて前記クライアントコンピュータにおける広告視聴時間を求める手段と、
求めた広告視聴時間に応じて広告料金を計算する手段と
を備えたことを特徴とするストリーミング広告配信システム。
【請求項４】
請求項３に記載のストリーミング広告配信システムにおいて、
前記クライアントコンピュータでコンテンツ再生位置の変更操作が為されたとき、その再生位置変更が開始された位置を示す変更開始位置情報と、その再生位置変更後の再生再開位置を示す変更終了情報とを、取得する手段を、さらに備え、
前記広告視聴時間を求める手段は、前記広告開始位置と前記変更開始位置情報と前記変更終了位置情報に基づいて、前記クライアントコンピュータにおける広告視聴時間を求めるものである
ことを特徴とするストリーミング広告配信システム。
【請求項５】
請求項１から４の何れか１つに記載のストリーミング広告配信システムにおいて、
ストリーミング広告コンテンツの視聴時に、前記クライアントコンピュータにおいて当該ストリーミング広告コンテンツを特定する情報を一時保存する手段と、
前記一時保存されたストリーミング広告コンテンツを特定する情報を用いて当該ストリーミング広告コンテンツの再生を指示する手段とを、
さらに備えたことを特徴とするストリーミング広告配信システム。
【請求項６】
請求項５に記載のストリーミング広告配信システムにおいて、
前記一時保存されたストリーミング広告コンテンツを特定する情報を用いて当該ストリーミング広告コンテンツの再生を行なう際、前記ストリーミング広告コンテンツを挿入する広告挿入位置が再生先頭位置になるように強制的に設定して再生開始することにより当該ストリーミング広告コンテンツの再生を行なうことを特徴とするストリーミング広告配信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットを利用してコンテンツ配信サーバから映像や音楽などのストリーミングコンテンツを配信する技術に関し、特にストリーミングコンテンツの途中にストリーミング広告を挿入して配信する場合に、広告主へ広告料金の請求を行うための計算を適切に行うことができる広告配信技術に関する。
【背景技術】
【０００２】
従来、テレビやラジオなどでの放送事業では、放送事業主が放送時間帯や視聴率の情報などを基にして決定した広告料金を広告主が支払うことで、広告を放送の途中に挿入していた。近年、インターネットが普及しWWWを用いて様々なコンテンツが利用できるようになると、コンテンツ提供者が提供するWebページ内に、広告情報（テキストや静止画や動画など）を表示するようになってきている。この場合、Webページのアクセス時間帯やアクセス回数、アクセス地域などの情報を基に広告料金を決定する技術が、下記特許文献１で公開されている。また、ブロードバンドの進展により、ストリーミングコンテンツの視聴が普及し始めており、ストリーミング広告を視聴した回数に応じて割引クーポンを発行する技術が、下記特許文献２で公開されている。
【特許文献１】特開２００１−１１８２８９公報
【特許文献２】特開２００２−２８１４８３公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
Webページのアクセスの場合は、Webコンテンツの表示の一部として広告コンテンツも表示されるため、Webコンテンツを見ようと意図した利用者は、必ず広告コンテンツを目にすることになる。それに対し、ストリーミング広告をストリーミングコンテンツの途中に挿入して配信する場合は、テレビなどの放送と異なり、広告コンテンツの部分だけを早送りしたり、コンテンツ表示プログラムの機能を使って、完全に広告部分を飛ばしてしまうことなどが可能なため、配信を行ったとしても視聴者が意図的に広告を見ないことがあり得る。この場合、単純に広告の配信回数では、広告料金を計算することができない。
【０００４】
本発明は、ストリーミング広告の早送りや飛ばしの状況まで把握して広告料金の計算を行うことを目的としたものである。
【課題を解決するための手段】
【０００５】
本発明は、上記課題を解決するために、ストリーミング配信時に映像コンテンツの途中にストリーミング広告コンテンツを挿入してクライアントコンピュータに配信する際、前記ストリーミング広告コンテンツの前記クライアントコンピュータにおける視聴時間を計測し、前記ストリーミング広告コンテンツの視聴時間に応じて広告料金を計算することを特徴とするものである。
【０００６】
本発明では、例えば、ストリーミングコンテンツとストリーミング広告コンテンツを格納しコンテンツ配信プログラムが稼動するコンテンツ配信サーバコンピュータと、ストリーミング視聴プログラムが稼動するクライアントコンピュータとを、ネットワークで接続した構成とする。
【０００７】
コンテンツ配信プログラムは、コンテンツ視聴プログラムの要求に従い、外部記憶装置中に格納しているストリーミングコンテンツを配信する。その際、ストリーミング広告コンテンツをストリーミングコンテンツの途中に挿入して配信する。クライアントコンピュータ上のコンテンツ視聴プログラムは、ストリーミングコンテンツの視聴（再生）を開始し、ストリーミング広告コンテンツの表示が開始されると、広告開始位置情報をコンテンツ配信サーバに送信する。ストリーミング広告コンテンツの表示が終了すると、広告終了位置情報をコンテンツ配信サーバに送信する。ストリーミング広告コンテンツの表示が通常通りに終了した場合は、広告開始位置情報と広告終了位置情報をコンテンツ配信サーバが受信するため、それらの情報を用いて広告表示時間を計算し、広告料金計算プログラムに蓄積する。
【０００８】
コンテンツ視聴プログラムを視聴している利用者が、ストリーミング広告の表示を開始した後、広告表示をスキップしようとして、例えばコンテンツ視聴プログラムがクライアントコンピュータ上の画面上に表示しているスライドバーを操作する場合がある。そのような場合は、表示位置変更開始情報を送信し、スライドバーの操作を終了した時点で表示位置変更終了情報（再生再開位置）を送信する。表示位置変更開始情報を受信したコンテンツ配信サーバは、表示位置変更開始位置がストリーミング広告表示中の場合は、その時点までの広告表示時間を計算して、広告料金計算プログラムに蓄積する。表示位置変更終了情報を受信したコンテンツ配信サーバは、表示位置変更終了位置がストリーミング広告表示中の場合は、広告表示を開始したときの初期設定を行なう（例えば、広告送信開始位置の設定など）。なお、広告表示をスキップして視聴を再開した位置が同一ストリーミング広告の途中であれば、表示位置変更開始と表示位置変更終了の間の表示時間をストリーミング広告表示に要する時間から減算したものを広告表示時間とすることもできる。
【発明の効果】
【０００９】
本発明によれば、ストリーミングコンテンツの途中にストリーミング広告を挿入して配信しクライアントコンピュータ上でストリーミングコンテンツを視聴するにあたり、利用者がスライドバーなどでストリーミング広告の部分を早送りあるいはスキップした場合でも、正確に広告の視聴時間が計測できるようになり、広告出稿者が広告料金の支払い時に正当な対価を支払うことができるようになるとともに、コンテンツ配信業者は正当な対価を要求することができるようになる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明に係るストリーミング広告配信システムの実施の一形態を図面を用いて説明する。
【００１１】
図１は、本実施形態のシステム構成を示したものである。
【００１２】
該システムでは、ストリーミングコンテンツなどを配信するコンテンツ配信サーバコンピュータ１と、利用者がストリーミングコンテンツを視聴するクライアントコンピュータ２とが、ネットワーク３を通じて接続されている。コンテンツ配信サーバコンピュータ１は、ＣＰＵ１１Ａおよびメモリ１１Ｂを備えた端末装置１１、コンテンツ配信プログラム１２Ａ、広告料金計算プログラム１２Ｂ、ストリーミングコンテンツ１２Ｃ、およびストリーミング広告コンテンツ１２Ｄが格納されている外部記憶装置１２、並びに、通信ポート１３を備えている。クライアントコンピュータ２は、ＣＰＵ２１Ａおよびメモリ２１Ｂを備えた端末装置２１、コンテンツ視聴プログラム２２Ａが格納されている外部記憶装置２２、並びに、通信ポート２３を備えている。コンテンツ配信サーバコンピュータ１とクライアントコンピュータ２とは、データを通信するためのネットワーク（インターネット）３で接続されている。なお、図示しないが、クライアントコンピュータ２は、コンテンツ視聴プログラム２２Ａの管理のもとで各種コンテンツを表示するディスプレイ装置や利用者が操作するポインティングデバイスその他の入力装置を備えているものとする。
【００１３】
図２は、コンテンツ配信サーバコンピュータ１上で稼働するコンテンツ配信プログラム１２Ａの構成を示す機能ブロック図である。
【００１４】
コンテンツ配信プログラム１２Ａは、コンテンツ視聴プログラム２２Ａからのコンテンツ配信要求を受け取るコンテンツ配信コントロールプログラム２０１、ストリーミングコンテンツの途中へのストリーミング広告コンテンツの挿入処理を管理する広告管理プログラム２０２、および、クライアントコンピュータ２上で稼動しているコンテンツ視聴プログラム２２Ａからの広告開始・終了位置情報と表示位置変更開始・終了情報を受信し広告視聴時間を計算する視聴時間管理プログラム２０３を備える。
【００１５】
図３は、クライアントコンピュータ２上で稼動するコンテンツ視聴プログラム２２Ａによるディスプレイへの表示画面例である。
【００１６】
画面３００は、ストリーミングコンテンツの位置を指定するためのURL入力ボックス３０１、ストリーミングコンテンツの入手開始を指示する開始ボタン３０２、ストリーミングコンテンツの入手停止を指示する停止ボタン３０３、入手したストリーミングコンテンツやストリーミング広告コンテンツを表示するストリーミングコンテンツ表示画面３０４、音声出力するかしないかを制御する音声出力設定ボタン３０５、音声の大きさを制御する音声強弱設定スライドバー３０６、および、コンテンツ表示の巻き戻しやスキップを指示するための画面表示用スライドバー３０７を備える。URL入力ボックス３０１に入力されるURLはコンテンツ名称（ファイル名）を含む形で入力されるものとする。
【００１７】
図４は、コンテンツ配信サーバコンピュータ１上で稼動する広告料金計算プログラム１２Ｂが利用する、広告視聴時間テーブル４００の例である。広告視聴時間テーブル４００は、広告ＩＤ４０１と、広告視聴時間４０２からなり、コンテンツ配信サーバコンピュータ１が稼動している間はメモリ１１Ｂ上に保持されている。広告視聴時間４０２の欄には、対応する広告ＩＤ４０１の広告コンテンツを利用者が視聴した時間の累算値が格納される。本テーブル４００により、利用者全体がどの広告をどれだけの時間視聴したかが分かる。
【００１８】
図５は、コンテンツ配信サーバコンピュータ１上で稼動するコンテンツ配信プログラム１２Ａを構成する広告管理プログラム２０２が利用する、広告挿入位置管理テーブル５００の例である。広告挿入位置管理テーブル５００は、コンテンツ名称５０１と、広告挿入位置テーブル６００に対する複数のインデックス５０２からなる。コンテンツ名称５０１は視聴者が視聴するコンテンツの名称（ファイル名）を示し、インデックス５０２は視聴者がそのコンテンツを視聴するときにどの位置でどの広告を挿入するかを示している。具体的には、インデックス５０２の値が、次に説明する図６の広告挿入位置テーブル６００のレコードを指している。例えば、インデックス５０２の値「１」は、図６の広告挿入位置テーブル６００の第１行目のレコード（広告挿入開始時刻が「１５００．０」、広告ＩＤが「ＩＤ００００１」）にしたがって広告挿入を行なうことを示すものである。
【００１９】
図６は、コンテンツ配信サーバコンピュータ１上で稼動するコンテンツ配信プログラム１２Ａを構成する広告管理プログラム２０２が利用する、広告挿入位置テーブル６００の例である。広告挿入位置テーブル６００は、広告挿入開始時刻６０１と、広告ＩＤ６０２からなる。広告挿入開始時刻６０１は、ストリーミングコンテンツの視聴開始からの時間で、広告ストリームを挿入開始する位置を示す。広告ＩＤ６０２は、対応する広告挿入開始時刻６０１に至ったときに挿入する広告コンテンツのＩＤを示す。第１行目、第２行目、…のレコードが、それぞれ、図５で説明したインデックス１，２，…のレコードである。例えば、インデックス１のレコードは、ストリーミングコンテンツの視聴開始から１５００秒後に、広告ＩＤ００００１の広告ストリーミングを挿入することを示している。
【００２０】
図７は、コンテンツ配信サーバコンピュータ１上で稼動するコンテンツ配信プログラム１２Ａを構成する広告管理プログラム２０２が利用する、広告管理テーブル７００の例である。広告管理テーブル７００は、広告ＩＤ７０１、ストリーミング広告の外部記憶装置上の格納場所７０２、および広告表示時間７０３からなる。各広告ＩＤ７０１に対応する広告ストリーミングのファイルの格納場所７０２と、その広告ストリーミングの表示時間（開始から終了までの再生時間）を格納するものである。
【００２１】
以後、本実施形態のストリーミング広告配信システムを構成する各プログラムの動作をフローチャートを用いて詳細に説明する。各プログラムは、本システム稼動時にそれぞれ並行して起動されるものとする。なお、以下のフローチャートでは各処理を順番に実行しているように記載しているが、これは説明の便宜上そのようにしているのであって、実際のプログラムはいくつかの処理がマルチプロセスで並行して実行されているものである。例えば、ストリーミングコンテンツの送信と各種命令の送受信およびその処理とは並行して実行されている。図３の画面における各種操作の受付けと該操作に応じた処理についても、各操作ごとのイベントドリブンな処理でそれぞれ実現されている。
【００２２】
図８(1)および図８(2)は、コンテンツ配信サーバコンピュータ１上で稼動するコンテンツ配信プログラム１２Ａを構成するコンテンツ配信コントロールプログラム２０１の動作を示すフローチャートである。コンテンツ配信コントロールプログラム２０１が開始すると、コンテンツ視聴プログラム２２Ａからの接続を受け付け、コンテンツ名称または広告ＩＤを入手する（ステップ８０１）。これらのデータは、図１２(1)のステップ１２０４，１２１６で送られるものである。入手したデータがコンテンツ名称かどうかを判断し（ステップ８０２）、コンテンツ名称であった場合は、広告管理プログラム２０２へ広告情報入手命令とコンテンツ名称を送信し（ステップ８０３）、広告ＩＤと広告挿入開始時刻の組（図９のステップ９０６で送信されたもの）をすべて入手する（ステップ８０４）。次に、当該コンテンツ名称に対応するストリーミングコンテンツを外部記憶装置１２上から取り出し（ステップ８０５）、当該ストリーミングコンテンツの送信を開始する（ステップ８０６）。同時に、コンテンツ視聴プログラム２２Ａからの命令を受信したかどうかを判断する（ステップ８０７）。
【００２３】
命令を受信した場合は、その命令が視聴停止命令（図１０のステップ１００７で送信されたもの）かどうか判断し（ステップ８０８）、視聴停止命令の場合は、視聴停止位置を入手し（ステップ８０９）、当該視聴停止位置が広告コンテンツ送信中かどうか判断する（ステップ８１０）。広告コンテンツ送信中の場合は、広告送信開始位置と視聴停止位置から広告コンテンツ視聴時間を計算し（ステップ８１１）、送信中広告ＩＤと当該広告コンテンツ視聴時間を広告料金計算プログラム１２Ｂ（図１１）に送信し（ステップ８１２）、広告送信開始位置と送信中広告ＩＤをクリアし（ステップ８１３）、ステップ８０７から繰り返す。ステップ８１０で、視聴停止位置が広告コンテンツ送信中でない場合は、ステップ８０７から繰り返す。
【００２４】
ステップ８０８で、受信した命令が視聴停止命令でない場合は、その命令が視聴再開命令（図１０のステップ１００９で送信されたもの）かどうかを判断する（ステップ８１４）。視聴再開命令の場合は、視聴再開位置を入手し（ステップ８１５）、当該視聴再開位置が広告コンテンツ送信中かどうかを判断する（ステップ８１６）。当該視聴再開位置が広告コンテンツ送信中であった場合は、広告送信開始位置として当該視聴再開位置を、送信中広告ＩＤとして対応する広告ＩＤを、それぞれ設定し（ステップ８１７）、ステップ８０７から繰り返す。ステップ８１６で、視聴再開位置が広告コンテンツ送信中でない場合は、ステップ８０７から繰り返す。
【００２５】
ステップ８１４で、受信した命令が視聴再開命令でない場合は、受信終了命令（図１０のステップ１０１１で送信されたもの）かどうか判断し（ステップ８１８）、受信終了命令の場合は、受信終了位置を入手し（ステップ８１９）、当該受信終了位置が広告コンテンツ送信中かどうか判断する（ステップ８２０）。広告コンテンツ送信中であった場合は、広告送信開始位置と受信終了位置から広告コンテンツ視聴時間を計算し（ステップ８２１）、送信中広告ＩＤと当該広告コンテンツ視聴時間を広告料金計算プログラム１２Ｂ（図１１）に送信し（ステップ８２２）、広告送信開始位置と送信中広告ＩＤをクリアし（ステップ８２３）、コンテンツ視聴プログラム２２Ａとの間の接続を切断して（ステップ８２４）、終了する。ステップ８２０で受信終了位置が広告コンテンツ送信中でない場合は、ステップ８２４から継続する。
【００２６】
ステップ８１８で、受信した命令が受信終了命令でない場合は、広告コンテンツ視聴開始命令（図１０のステップ１００３で送信されたもの）かどうか判断し（ステップ８２５）、広告コンテンツ視聴開始命令の場合は、視聴開始位置を入手し（ステップ８２６）、広告送信開始位置として当該視聴開始位置を、送信中広告ＩＤとして対応する広告ＩＤを、それぞれ設定し（ステップ８２７）、ステップ８０７から繰り返す。
【００２７】
ステップ８２５で、受信した命令が広告コンテンツ視聴開始命令でない場合は、その命令が広告コンテンツ視聴終了命令（図１０のステップ１００５で送信されたもの）かどうかを判断し（ステップ８２８）、広告コンテンツ視聴終了命令の場合は、視聴終了位置を入手し（ステップ８２９）、広告送信開始位置と視聴終了位置から広告コンテンツ視聴時間を計算し（ステップ８３０）、送信中広告ＩＤと当該広告コンテンツ視聴時間を広告料金計算プログラム１２Ｂ（図１１）に送信し（ステップ８３１）、広告送信開始位置と送信中広告ＩＤをクリアし（ステップ８３２）、ステップ８０７から繰り返す。ステップ８２８で、受信した命令が広告コンテンツ視聴終了命令でない場合は、その命令を無視して、ステップ８０７から繰り返す。
【００２８】
ステップ８０７で、命令を受信していない場合は、コンテンツの送信位置がステップ８０４で入手（あるいはステップ８４０で設定）した広告挿入開始時刻に達しているかを判断し（ステップ８３３）、達していた場合は、広告コンテンツ（ステップ８０４または８０１で入手した広告ＩＤのもの）の挿入の開始かどうかを判断する（ステップ８３４）。初めて挿入する場合は、広告管理プログラム２０２に広告位置入手命令と広告ＩＤを送信して、当該広告コンテンツの外部記憶装置１２上の位置とその表示時間を入手する（ステップ８３５）。次に、視聴開始位置情報と視聴終了位置情報をコンテンツ視聴プログラム２２Ａに送信し（ステップ８３６）、ステップ８３７から継続する。なお、視聴終了位置情報は、視聴開始位置に当該広告コンテンツの表示時間を加算して求めればよい。
【００２９】
ステップ８３４で広告コンテンツ挿入の途中であった場合は、広告ＩＤに対応する広告コンテンツを外部記憶装置１２から入手し（ステップ８３７）、入手した広告コンテンツをコンテンツ視聴プログラム２２Ａに送信し（ステップ８３８）、ステップ８０７から繰り返す。ステップ８３３で広告コンテンツの挿入開始時刻に達していない場合は、ストリーミングコンテンツの送信を継続し（ステップ８３９）、ステップ８０７から繰り返す。ステップ８０１で入手したデータが広告ＩＤの場合は、広告挿入開始時刻を０に設定し（ステップ８４０）、ステップ８０７から継続する。
【００３０】
図９は、コンテンツ配信サーバコンピュータ１上で稼動するコンテンツ配信プログラム１２Ａを構成する広告管理プログラム２０２の動作を示すフローチャートである。広告管理プログラム１２Ａが起動すると、コンテンツ配信コントロールプログラム２０１からの命令を受信する（ステップ９０１）。受信した命令が広告情報入手命令（図８(1)のステップ８０３で送信されたもの）かどうかを判断し（ステップ９０２）、広告情報入手命令であれば、コンテンツ名称を受信する（ステップ９０３）。次に、広告挿入位置管理テーブル５００（図５）から、当該コンテンツ名称に対応する複数のインデックスを入手する（ステップ９０４）。次に、図６の広告挿入位置テーブル６００を参照して、入手した全てのインデックスに対応する広告ＩＤと挿入位置（広告挿入開始時刻）を入手する（ステップ９０５）。入手した広告ＩＤと挿入位置をコンテンツ配信コントロールプログラム２０１に送信して（ステップ９０６）、ステップ９０１から繰り返す。
【００３１】
ステップ９０２で受信した命令が広告情報入手命令でなければ、広告位置入手命令（図８(2)のステップ８３５で送信されたもの）かどうかを判断し（ステップ９０７）、広告位置入手命令であれば、広告ＩＤを受信し（ステップ９０８）、広告管理テーブル７００（図７）から当該広告ＩＤに対応する広告コンテンツの外部記憶装置１２上の位置と表示時間を取り出し（ステップ９０９）、コンテンツ配信コントロールプログラム２０１に送信して（ステップ９１０）、ステップ９０１から繰り返す。ステップ９０７で広告位置入手命令でない場合は、命令を無視してステップ９０１から繰り返す。
【００３２】
図１０は、コンテンツ配信サーバコンピュータ１上で稼動するコンテンツ配信プログラム１２Ａを構成する視聴時間管理プログラム２０３の動作を示すフローチャートである。視聴時間管理プログラム２０３が起動すると、クライアントコンピュータ２上のコンテンツ視聴プログラム２２Ａからの接続を受け付け、情報を受信する（ステップ１００１）。受信した情報が広告開始位置情報（図１２(1)のステップ１２１２で送信されたもの）かどうかを判断し（ステップ１００２）、情報が広告開始位置情報であれば、視聴開始命令と視聴開始位置をコンテンツ配信コントロールプログラム２０１に送信し（ステップ１００３）、ステップ１００１から繰り返す。受信した情報が広告開始位置情報でなければ、広告終了位置情報（図１２(1)のステップ１２１５で送信されたもの）かどうかを判断し（ステップ１００４）、広告終了位置情報であれば、視聴終了命令と視聴終了位置をコンテンツ配信コントロールプログラム２０１に送信し（ステップ１００５）、ステップ１００１から繰り返す。
【００３３】
ステップ１００４で、受信した情報が広告終了位置情報でなければ、表示位置変更開始情報（図１２(2)のステップ１２２０で送信されたもの）かどうかを判断し（ステップ１００６）、表示位置変更開始情報であれば、視聴停止命令と視聴停止位置をコンテンツ配信コントロールプログラム２０１に送信し（ステップ１００７）、ステップ１００１から繰り返す。受信した情報が表示位置変更開始情報でなければ、表示位置変更終了情報（図１２(2)のステップ１２２３で送信されたもの）かどうかを判断し（ステップ１００８）、表示位置変更終了情報であれば、視聴再開命令と視聴再開位置をコンテンツ配信コントロールプログラム２０１に送信し（ステップ１００９）、ステップ１００１から繰り返す。受信した情報が表示位置変更終了情報でなければ、受信終了情報（図１２(1)のステップ１２０７または図１２(2)のステップ１２１８で送信されたもの）かどうかを判断し（ステップ１０１０）、受信終了情報であれば受信終了命令と受信終了位置をコンテンツ配信コントロールプログラム２０１に送信し（ステップ１０１１）、ステップ１００１から繰り返す。受信した命令が受信終了情報でなければ、情報を無視してステップ１００１から繰り返す。
【００３４】
図１１は、コンテンツ配信サーバコンピュータ１上で稼動する広告料金計算プログラム１２Ｂの動作を示すフローチャートである。広告料金計算プログラム１２Ｂが起動すると、コンテンツ配信コントロールプログラム２０１からの接続を受け付け（ステップ１１０１）、広告ＩＤと広告視聴時間（図８(1)のステップ８１２または図８(2)のステップ８２２若しくは８３１で送信されたもの）を受信する（ステップ１１０２）。次に、受信した広告ＩＤに対応する広告視聴時間テーブル４００（図４）のエントリを探し（ステップ１１０３）、そのエントリの広告視聴時間に、受信した広告視聴時間を加えて（ステップ１１０４）、ステップ１１０１から繰り返す。
【００３５】
図１２(1)および図１２(2)は、クライアントコンピュータ２上で稼動するコンテンツ視聴プログラム２２Ａの動作を示すフローチャートである。コンテンツ視聴プログラム２２Ａが起動すると、ディスプレイ上に図３に示したウィンドウ３００を表示する（ステップ１２０１）。次に、利用者から、コンテンツ名称または広告ＩＤの入力（ＵＲＬ）を受け付ける（ステップ１２０２）。受け付けた名称がコンテンツ名称かどうかを判断し（ステップ１２０３）、コンテンツ名称であった場合は、コンテンツ配信コントロールプログラム２０１に対し、受け付けたコンテンツ名称を送信し（ステップ１２０４）、ストリーミングコンテンツを受信する（ステップ１２０５）。ストリーミングコンテンツは、図８(1)のステップ８０６で送信開始されステップ８３９で送信継続されるものである。ストリーミングコンテンツの受信が終了しているかどうかを判断し（ステップ１２０６）、終了していた場合は視聴時間管理プログラム２０３（図１０）に、受信終了情報を送信して（ステップ１２０７）、終了する。
【００３６】
ステップ１２０６でストリーミングコンテンツの受信の途中の場合は、利用者からの操作イベントが発生していないかを確認し（ステップ１２０８）、イベントがなければ、ストリーミング広告コンテンツの視聴位置開始情報と視聴位置終了情報を受信したか確認する（ステップ１２０９）。視聴位置開始情報と視聴位置終了情報は、図８(2)のステップ８３６で送信されるものである。これらの情報を受信していなければ、ストリーミングコンテンツを表示し（ステップ１２１０）、ステップ１２０５から繰り返す。視聴位置開始情報と視聴位置終了情報を受信していた場合、ストリーミング広告コンテンツの表示を開始したかどうか確認し（ステップ１２１１）、開始したのであれば視聴時間管理プログラム２０３に広告開始位置情報を送信する（ステップ１２１２）。受信したストリーミング広告コンテンツを表示し（ステップ１２１３）、ストリーミング広告コンテンツの表示が完了したかを確認し（ステップ１２１４）、完了していれば、視聴時間管理プログラム２０３に広告終了位置情報を送信し（ステップ１２１５）、ステップ１２０５から繰り返す。完了していなければ、ステップ１２０５から繰り返す。ステップ１２０３で受け付けた名称が広告ＩＤの場合は、コンテンツ配信プログラムに広告ＩＤを送信し（ステップ１２１６）、ステップ１２０５から継続する。
【００３７】
ステップ１２０８で利用者からの操作イベントが発生していた場合は、イベントが停止ボタン３０３の押下かどうかを判断し（ステップ１２１７）、その場合は視聴時間管理プログラム２０３に、受信終了情報を送信し（ステップ１２１８）、ステップ１２０９から繰り返す。イベントが停止ボタン３０３の押下でない場合は、画面表示用スライドバー３０７の押下かどうかを判断し（ステップ１２１９）、その場合は、視聴時間管理プログラム２０３に表示位置変更開始情報を送信し（ステップ１２２０）、画面への表示を停止し（ステップ１２２１）、ステップ１２０８から繰り返す。イベントが画面表示用スライドバー３０７の押下でない場合は、画面表示用スライドバー３０７の開放かどうかを判断し（ステップ１２２２）、その場合は、視聴時間管理プログラム２０３に表示位置変更終了情報を送信し（ステップ１２２３）、ステップ１２０５から繰り返す。なお、スライドバーの「開放」とは、ドラッグ操作の終了、すなわちポインティングデバイスであるマウスのボタンを押下してスライドバーを選択しドラッグ操作を行った後、マウスボタンの押下を終了することを示す。
【００３８】
ステップ１２２２でイベントが画面表示用スライドバー３０７の開放でない場合は、音声出力設定ボタン３０５の押下かどうかを判断し（ステップ１２２４）、その場合は、音声出力フラグがオンかどうかを判断し（ステップ１２２５）、オンの場合は、音声出力フラグをオフに設定し（ステップ１２２６）、以後の音声出力を停止し（ステップ１２２７）、ステップ１２０９から繰り返す。ステップ１２２５で音声出力フラグがオフの場合は、音声出力フラグをオンに設定し（ステップ１２２８）、以後音声出力を開始し（ステップ１２２９）、ステップ１２０９から繰り返す。
【００３９】
ステップ１２２４でイベントが音声出力設定ボタン３０５の押下でない場合は、音声強弱設定スライドバー３０６の位置変更かどうかを判断し（ステップ１２３０）、その場合は、音声出力の強弱を設定にあわせて変更し（ステップ１２３１）、ステップ１２０９から繰り返す。イベントが音声強弱設定スライドバー３０６の位置変更でなければ、ストリーミングコンテンツ表示画面３０４の押下かどうかを判断し（ステップ１２３２）、その場合、ストリーミング広告コンテンツを表示中かどうかを判断し（ステップ１２３３）、ストリーミング広告コンテンツを表示中であれば、その広告ＩＤを外部記憶装置２２上に格納して（ステップ１２３４）、ステップ１２０９から繰り返す。ストリーミング広告コンテンツの表示中でなければ、ステップ１２０９から繰り返す。ステップ１２３２でイベントが表示画面３０４の押下でなければ、ステップ１２０９から繰り返す。
【００４０】
なお、ステップ１２３４で外部記憶装置２２に格納した広告ＩＤは、ステップ１２０２において所定の簡単な操作で図３のＵＲＬ入力ボックス３０１に呼び出すことができ、その後、開始ボタン３０２を押下することで当該広告ＩＤの広告を再視聴することができる。従って、利用者は映像コンテンツの視聴中に挿入される広告コンテンツのうち気になるものがあったらすぐにその広告ＩＤを一時記憶させておき、後で簡単に再視聴できる。サーバでの処理上は、ステップ８０２で広告ＩＤが入手されたときステップ８４０で広告挿入開始時刻を０に設定（すなわち、再生の先頭から広告を挿入するという意味）するだけでよい。その後の処理は、広告挿入開始時刻に至ったとき広告が再生されるようになっているので、再生の先頭から広告が再生されることになる。
【００４１】
以上のように本実施形態においては、ストリーミングコンテンツ視聴中にストリーミング広告コンテンツを挿入して視聴させる場合に、利用者が実際にストリーミング広告コンテンツを視聴した時間を積算することができる。視聴時間を正確に積算することが可能になるため、広告料金を計算するにあたり、広告出稿者にとっては正当な広告料金かどうかを判断することが可能になる。
【図面の簡単な説明】
【００４２】
【図１】本発明に係るストリーミング広告配信システムの実施形態を示すシステム構成図である。
【図２】コンテンツ配信サーバコンピュータ上で稼働するコンテンツ配信プログラムの構成を示す機能ブロック図である。
【図３】クライアントコンピュータ上で稼動するコンテンツ視聴プログラムの画面例である。
【図４】コンテンツ配信サーバコンピュータ上で稼動する広告料金計算プログラムが利用する、広告視聴時間テーブルの例である。
【図５】コンテンツ配信サーバコンピュータ上で稼動するコンテンツ配信プログラムを構成する広告管理プログラムが利用する、広告挿入位置管理テーブルの例である。
【図６】コンテンツ配信サーバコンピュータ上で稼動するコンテンツ配信プログラムを構成する広告管理プログラムが利用する、広告挿入位置テーブルの例である。
【図７】コンテンツ配信サーバコンピュータ上で稼動するコンテンツ配信プログラムを構成する広告管理プログラムが利用する、広告管理テーブルの例である。
【図８（１）】コンテンツ配信サーバコンピュータ上で稼動するコンテンツ配信プログラムを構成するコンテンツ配信コントロールプログラムの動作を示すフローチャート（その１）である。
【図８（２）】コンテンツ配信サーバコンピュータ上で稼動するコンテンツ配信プログラムを構成するコンテンツ配信コントロールプログラムの動作を示すフローチャート（その２）である。
【図９】コンテンツ配信サーバコンピュータ上で稼動するコンテンツ配信プログラムを構成する広告管理プログラムの動作を示すフローチャートである。
【図１０】コンテンツ配信サーバコンピュータ上で稼動するコンテンツ配信プログラムを構成する視聴時間管理プログラムの動作を示すフローチャートである。
【図１１】コンテンツ配信サーバコンピュータ上で稼動する広告料金計算プログラムの動作を示すフローチャートである。
【図１２（１）】クライアントコンピュータ上で稼動するコンテンツ視聴プログラムの動作を示すフローチャート（その１）である。
【図１２（２）】クライアントコンピュータ上で稼動するコンテンツ視聴プログラムの動作を示すフローチャート（その２）である。
【符号の説明】
【００４３】
１…コンテンツ配信サーバコンピュータ、２…クライアントコンピュータ、１１，２１，…端末装置、１２，２２…外部記憶装置、１３，２３…通信ポート、１２Ａ…コンテンツ配信プログラム、１２Ｂ…広告料金計算プログラム、１２Ｃ…ストリーミングコンテンツ、１２Ｄ…ストリーミング広告コンテンツ、２２Ａ…コンテンツ視聴プログラム。
【図１】
2005073003.tif 000003
【図２】
2005073003.tif 000004
【図３】
2005073003.tif 000005
【図４】
2005073003.tif 000006
【図５】
2005073003.tif 000007
【図６】
2005073003.tif 000008
【図７】
2005073003.tif 000009
【図８（１）】
2005073003.tif 000010
【図８（２）】
2005073003.tif 000011
【図９】
2005073003.tif 000012
【図１０】
2005073003.tif 000013
【図１１】
2005073003.tif 000014
【図１２（１）】
2005073003.tif 000015
【図１２（２）】
2005073003.tif 000016