(57)【要約】【課題】  ユーザ端末に搭載されたＢＭＬラウザを用いてオンデマンドサービスの番組終了検出を実現する。【解決手段】  ＳＴＢ１３０からＢＭＬコントローラ１２０へ番組の再生要求が送信されると、ＢＭＬコントローラ１２０は、ＶＯＤサーバ１１０に再生要求を送る。ＶＯＤサーバ１１０から再生了解を受け取ると、ＢＭＬコントローラ１２０はＳＴＢ１３０に対して、ＶＯＤサーバ１１０から受け取った番組再生時間を含むＢＭＬデータをＳＴＢ１３０に送信する。ＳＴＢ１３０は、受信したＢＭＬデータに含まれている番組再生時間に基づいてタイマー１３６６をセットする。タイマー１３６６にセットされた時間が経過するとＢＭＬブラウザ１３６０はＢＭＬコントローラ１２０からトップメニュー画面を取得して表示する。【選択図】  図１
2006345379.tif 000002
【特許請求の範囲】
【請求項１】
受信装置からの要求に応じて映像データを配信する映像配信装置と、映像データを受信する前記受信装置と、前記映像配信装置と前記受信装置間の通信を制御する通信制御装置を備えたオンデマンド映像配信システムであって、
前記映像配信装置は、
配信番組の映像データを蓄積する蓄積手段と、
前記蓄積手段から映像データを読み出して前記受信装置に配信する映像配信手段と、
前記通信制御装置と第１のプロトコルを用いて通信を行う第１の通信手段とを備え、
前記通信制御装置は、
前記映像配信装置と前記第１のプロトコルを用いて通信を行う第２の通信手段と、
前記受信装置との間で第２のプロトコルを用いて通信する第３の通信手段と、
前記映像配信装置との通信に利用される前記第１のプロトコルと前記受信装置との通信に利用される前記第２のプロトコルを相互に変換するプロトコル変換手段とを備え、
前記受信装置は、
前記映像配信装置から映像信号を受信する受信手段と、
前記受信手段によって受信された映像信号をデコードするデコード手段と、
前記デコード手段によってデコードされた映像を表示装置に表示させる表示制御手段と、
前記通信制御装置と前記第２のプロトコルを用いて通信する第４の通信手段と、
所定のマークアップ言語で記述されたデータを解釈実行するマークアップ言語処理手段とを備え、
前記通信制御装置は、前記受信装置から映像データの配信要求があったときに、前記所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、番組の終了時に所定の終了処理を前記受信装置に実行させる第１の制御手段をさらに備えることを特徴とする、オンデマンド映像配信システム。
【請求項２】
前記通信制御装置と前記受信装置間の通信が、前記受信装置の主動によってのみ開始可能であることを特徴とする、請求項１に記載のオンデマンド映像配信システム。
【請求項３】
前記第１のプロトコルがＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）であり、前記第２のプロトコルがＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）であり、前記所定のマークアップ言語がＢＭＬ（Ｂｒｏａｄｃａｓｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）であることを特徴とする、請求項１に記載のオンデマンド映像配信システム。
【請求項４】
前記通信制御装置は、前記受信装置から映像データの配信要求があったときに、当該映像データの再生時間を前記映像配信装置から取得する再生時間取得手段をさらに備え、
前記第１の制御手段は、前記所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、当該受信装置に、前記再生時間取得手段によって取得された再生時間をカウントさせ、当該再生時間のカウントが完了した時点で前記所定の終了処理を当該受信装置に実行させるものであることを特徴とする、請求項１に記載のオンデマンド映像配信システム。
【請求項５】
前記通信制御装置は、前記受信装置から映像データの配信要求があったときに、当該映像データの再生時間を前記映像配信装置から取得して前記受信装置に通知する再生時間通知手段をさらに備え、
前記第１の制御手段は、前記所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、当該受信装置に前記再生時間から所定時間を除いた時間をカウントさせ、当該時間のカウントが完了した時点から前記通信制御手段に番組が終了したかどうかを周期的に確認する処理を当該受信装置に実行させるものであることを特徴とする、請求項１に記載のオンデマンド映像配信システム。
【請求項６】
受信装置からの要求に応じて映像を配信する映像配信装置と、映像を受信する受信装置と、前記映像配信装置と前記受信装置間の通信を制御する通信制御装置からなるオンデマンド映像配信システムであって、
前記映像配信装置は、
配信番組の映像データを蓄積する蓄積手段と、
前記蓄積手段から映像データを読み出して前記受信装置に配信する映像配信手段と、
前記通信制御装置と第１のプロトコルを用いて通信を行う第１の通信手段とを備え、
前記通信制御装置は、
前記映像配信装置と前記第１のプロトコルを用いて通信を行う第２の通信手段と、
前記受信装置との間で第２のプロトコルを用いて通信する第３の通信手段と、
前記映像配信装置との通信に利用される前記第１のプロトコルと前記受信装置との通信に利用される前記第２のプロトコルを相互に変換するプロトコル変換手段とを備え、
前記受信装置は、
前記映像配信装置から映像信号を受信する受信手段と、
前記受信手段によって受信された映像信号をデコードするデコード手段と、
前記デコード手段によってデコードされた映像を表示装置に表示させる表示制御手段と、
前記通信制御装置と前記第２のプロトコルを用いて通信する第４の通信手段と、
所定のマークアップ言語で記述されたデータを解釈実行するマークアップ言語処理手段とを備え、
前記受信装置に配信されている番組が終了したときに、当該受信装置に所定の終了処理を実行させるための終了処理コマンドを含む所定のマークアップ言語で記述された終了処理データと、当該終了処理データに関する情報を含むＰＭＴとを当該受信装置に送信することによって、番組の終了時に所定の終了処理を当該受信装置に実行させる第２の制御手段を、前記映像配信装置の内部または外部にさらに備えていることを特徴とする、オンデマンド映像配信システム。
【請求項７】
受信装置からの要求に応じて映像データを配信する映像配信装置と映像データを受信する前記受信装置との間の通信を制御する、オンデマンド映像配信サービスのための通信制御装置であって、
前記映像配信装置と第１のプロトコルを用いて通信を行う第２の通信手段と、
前記受信装置との間で第２のプロトコルを用いて通信する第３の通信手段と、
前記映像配信装置との通信に利用される前記第１のプロトコルと前記受信装置との通信に利用される前記第２のプロトコルを相互に変換するプロトコル変換手段と、
前記受信装置から映像データの配信要求があったときに、所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、番組の終了時に所定の終了処理を前記受信装置に実行させる第１の制御手段とを備えた通信制御装置。
【請求項８】
前記受信装置から映像データの配信要求があったときに、当該映像データの再生時間を前記映像配信装置から取得して前記受信装置に通知する再生時間通知手段をさらに備え、
前記第１の制御手段は、前記所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、当該受信装置に前記再生時間をカウントさせ、当該再生時間のカウントが完了した時点で前記所定の終了処理を当該受信装置に実行させるものであることを特徴とする、請求項７に記載の通信制御装置。
【請求項９】
前記受信装置から映像データの配信要求があったときに、当該映像データの再生時間を前記映像配信装置から取得して前記受信装置に通知する再生時間通知手段をさらに備え、
前記第１の制御手段は、前記所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、当該受信装置に前記再生時間から所定時間を除いた時間をカウントさせ、当該時間のカウントが完了した時点から前記通信制御手段に番組が終了したかどうかを周期的に確認する処理を当該受信装置に実行させるものであることを特徴とする、請求項７に記載の通信制御装置。
【請求項１０】
受信装置からの要求に応じて映像を配信する、オンデマンド映像配信サービスのための映像配信装置であって、
配信番組の映像データを蓄積する蓄積手段と、
前記蓄積手段から映像データを読み出して前記受信装置に配信する映像配信手段と、
前記映像配信装置と前記受信装置間の通信を制御する通信制御装置と第１のプロトコルを用いて通信を行う第１の通信手段と、
前記受信装置に配信されている番組が終了したときに、当該受信装置に所定の終了処理を実行させるための終了処理コマンドを含む所定のマークアップ言語で記述された終了処理データと、当該終了処理データに関する情報を含むＰＭＴとを当該受信装置に送信することによって、番組の終了時に所定の終了処理を当該受信装置に実行させる第２の制御手段とを備えた映像配信装置。
【請求項１１】
受信装置からの要求に応じて映像データを配信する映像配信装置と映像データを受信する前記受信装置との間の通信を制御する、オンデマンド映像配信サービスのための通信制御装置としてコンピュータを機能させるためのコンピュータプログラムであって、当該コンピュータを、
前記映像配信装置と第１のプロトコルを用いて通信を行う第２の通信手段、
前記受信装置との間で第２のプロトコルを用いて通信する第３の通信手段、
前記映像配信装置との通信に利用される前記第１のプロトコルと前記受信装置との通信に利用される前記第２のプロトコルを相互に変換するプロトコル変換手段、および
前記受信装置から映像データの配信要求があったときに、所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、番組の終了時に所定の終了処理を前記受信装置に実行させる第１の制御手段として機能させるためのコンピュータプログラム。
【請求項１２】
受信装置からの要求に応じて映像を配信する、オンデマンド映像配信サービスのための映像配信装置としてコンピュータを機能させるためのコンピュータプログラムであって、当該コンピュータを、
配信番組の映像データを蓄積する蓄積手段から映像データを読み出して前記受信装置に配信する映像配信手段、
前記映像配信装置と前記受信装置間の通信を制御する通信制御装置と第１のプロトコルを用いて通信を行う第１の通信手段、および
前記受信装置に配信されている番組が終了したときに、当該受信装置に所定の終了処理を実行させるための終了処理コマンドを含む所定のマークアップ言語で記述された終了処理データと、当該終了処理データに関する情報を含むＰＭＴとを当該受信装置に送信することによって、番組の終了時に所定の終了処理を当該受信装置に実行させる第２の制御手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オンデマンド映像配信システムの終了制御に関し、特に映像配信サーバと受信端末間の制御をＢＭＬ（Ｂｒｏａｄｃａｓｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）を代表とするマークアップ言語を用いて実現するオンデマンド映像配信システムに関する。
【背景技術】
【０００２】
従来、ＩＰネットワークを用いた通信サービスの一つとして、ユーザがパソコンなどのユーザ端末からネットワークを介して任意の時間に好みに応じた映像をサーバ装置にリクエストし、このリクエストに応じてサーバ装置から送信された映像データを受信してユーザ端末で映像を視聴するＶＯＤ（Ｖｉｄｅｏ  Ｏｎ  Ｄｅｍａｎｄ）サービスが提供されている。ＶＯＤサービスでは受信者がリクエストした番組の配信が終了するとサービスが終了する。ユーザ端末では、番組が終了したことが検出されると、画面表示を例えばメニュー画像などに切り替える。
【０００３】
従来のＶＯＤサービスにおいてユーザ端末において番組の終了を検出する方法としては、ユーザ端末からサーバ装置へ終了を知らせる方法（例えば特許文献１）、あるいはＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）と呼ばれる通信プロトコルに対応したアプリケーションを搭載して双方向通信を実現し、サーバ装置と受信装置との間で終了コマンドをやり取りする方法（非特許文献１）があった。
【特許文献１】特開平８−２６５７１８号公報
【非特許文献１】ＩＥＴＦ（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒ）  ＲＦＣ（Ｒｅｑｕｅｓｔ  Ｆｏｒ  Ｃｏｍｍｅｎｔ）２３２６  ＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍ  Ｐｒｏｔｏｃｏｌ）
【０００４】
まず、上記特許文献１の従来技術の内容を図１８を参照して説明する。
【０００５】
図１８は上記特許文献１に開示されているデータ送出装置の構成を示すブロック図である。図１８において、Ｘ１０１は受付手段、Ｘ１０２はタイマー手段、Ｘ１０３はデータ読出手段、Ｘ１０４はデータ蓄積手段をそれぞれ示している。
【０００６】
受付手段Ｘ１０１は、ユーザ端末からのデータ配信要求など様々な要求を受け付ける。データ読出手段Ｘ１０３は、受付手段Ｘ１０１がユーザ端末から再生要求を受け付けると、映像データを蓄積するデータ蓄積手段Ｘ１０４から映像データを読み出してユーザ端末に送出する。また、受付手段Ｘ１０１は、ユーザ端末からポーズ要求を受け付けるとポーズ開始信号を出力する。データ読出手段Ｘ１０３は受付手段Ｘ１０１からポーズ開始信号を受け取ると、データ蓄積手段Ｘ１０４からの映像データの読み出しおよびユーザ端末への映像データの送出を停止する。一方、タイマー手段Ｘ１０２は受付手段Ｘ１０１からポーズ開始信号が出力された時点でタイムカウントを開始し、予め定めたカウント数に到達した時点でタイムアウト信号を発生する。データ読出手段Ｘ１０３はタイマー手段Ｘ１０２からタイムアウト信号を受け取ると、映像データの送出を終了し、映像データの送出に使用していた回線を開放する。
【０００７】
このように特許文献１に開示されているデータ送出装置によれば、ビデオオンデマンドシステムなどでユーザ端末における映像再生処理のポーズ状態が長引いたときに、ポーズを開始してから予め定められた時間の経過の後に使用中の回線を開放して他の端末が使える状態に復帰させることで、回線の利用効率の低下を抑えることができる。
【０００８】
次に、上記非特許文献１の従来技術の内容について説明する。
【０００９】
配信装置と受信装置間の通信インタフェースにはＲＴＳＰが利用され、受信装置にＲＴＳＰクライアントと呼ばれる専用アプリケーションが搭載されている。ＲＴＳＰにはＴｅａｒｄｏｗｎコマンドという終了専用コマンドが用意されている。配信装置が番組終了時にＴｅａｒｄｏｗｎコマンドを受信装置に送信することによって、受信装置のＲＴＳＰクライアントがＴｅａｒｄｏｗｎコマンドを認識し、予め定められた番組受信終了処理を受信装置において行うことができる。図１９にＴｅａｒｄｏｗｎコマンドの記述例を示す。
【００１０】
一方、ＢＳデジタル放送サービスの提供が開始されたのを皮切りに、１１０°ＣＳデジタル放送サービス、地上デジタル放送サービスの提供が相次いで開始された。これらの放送サービスでは、映像情報や音声情報の放送のほかに、ＢＭＬで記述されたデータを放送するデータ放送も行われている。このようなデータ放送を受信するために、ユーザ端末にはＢＭＬブラウザが搭載される。ユーザはＢＭＬブラウザを通じて、データ放送サービスで提供されているデータの中から所望のデータを取得することが可能である。このようなシステムでは、ユーザ端末からの要求無しにサーバ装置が適宜のタイミングで能動的にデータやコマンドをユーザ端末に送信することができないという制約がある。そこで、番組が終了したかどうかをＢＭＬブラウザから送信装置に対して定期的に問い合わせる（ポーリング）ことで、ユーザ端末側で番組の終了を検出することができる。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかし、上記特許文献１の技術では、ユーザがリモコンのボタンを押すなどして画面表示をメニュー画面等に切り替えない限り、ビデオオンデマンドシステムで配信された番組の再生が終了した後に黒画面や青画面などが継続する。よって、番組が最後まで正常に再生されたのか、通信エラーなどによって途中で番組が中断されてしまったのかをユーザが容易に判別することができないという欠点がある。
【００１２】
また、上記非特許文献１の技術では、配信装置がＴｅａｒｄｏｗｎコマンドを送信し、受信装置でこのＴｅａｒｄｏｗｎコマンドを受信することによって、番組が終了したことを受信装置側で検出し、その時点で画面表示をメニュー画面に切り替えることができる。しかしながら、受信装置でこのＴｅａｒｄｏｗｎコマンドを認識するためには受信装置にＲＴＳＰに対応した専用アプリケーションソフトウェアを搭載する必要があり、このような専用アプリケーションソフトウェアを搭載していない受信装置においては番組の終了を検出することはできない。よって、このような専用アプリケーションソフトウェアを搭載していない既に販売された受信装置に対しては改修が必要となり改修の手間と費用が発生してしまうという欠点がある。また新たに販売する受信機に対してはこのような専用アプリケーションソフトウェアを搭載することに伴って価格が上昇してしまうという欠点がある。
【００１３】
また、番組が終了したかどうかをＢＭＬブラウザから送信装置に対して定期的に問い合わせる方法では、ネットワークの回線を常時占有してしまうと共に送信装置の負荷も重くなってしまうという欠点がある。
【００１４】
それゆえに本発明は、既存のシステム（特に受信装置）の構成を大きく変更することなしに、受信側で番組の終了を検出して番組の終了後にメニュー画面等に自動的に移行することのできるオンデマンド映像配信システムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記のような課題を解決するために、本発明は以下の構成を採用した。
【００１６】
本発明の第１の局面は、受信装置からの要求に応じて映像データを配信する映像配信装置と、映像データを受信する前記受信装置と、前記映像配信装置と前記受信装置間の通信を制御する通信制御装置を備えたオンデマンド映像配信システムである。前記映像配信装置は、配信番組の映像データを蓄積する蓄積手段と、前記蓄積手段から映像データを読み出して前記受信装置に配信する映像配信手段と、前記通信制御装置と第１のプロトコルを用いて通信を行う第１の通信手段とを備えている。前記通信制御装置は、前記映像配信装置と前記第１のプロトコルを用いて通信を行う第２の通信手段と、前記受信装置との間で第２のプロトコルを用いて通信する第３の通信手段と、前記映像配信装置との通信に利用される前記第１のプロトコルと前記受信装置との通信に利用される前記第２のプロトコルを相互に変換するプロトコル変換手段とを備えている。前記受信装置は、前記映像配信装置から映像信号を受信する受信手段と、前記受信手段によって受信された映像信号をデコードするデコード手段と、前記デコード手段によってデコードされた映像を表示装置に表示させる表示制御手段と、前記通信制御装置と前記第２のプロトコルを用いて通信する第４の通信手段と、所定のマークアップ言語で記述されたデータを解釈実行するマークアップ言語処理手段とを備えている。前記通信制御装置は、前記受信装置から映像データの配信要求があったときに、前記所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、番組の終了時に所定の終了処理を前記受信装置に実行させる第１の制御手段をさらに備えている。
【００１７】
本発明の第２の局面は、受信装置からの要求に応じて映像を配信する映像配信装置と、映像を受信する受信装置と、前記映像配信装置と前記受信装置間の通信を制御する通信制御装置からなるオンデマンド映像配信システムである。前記映像配信装置は、配信番組の映像データを蓄積する蓄積手段と、前記蓄積手段から映像データを読み出して前記受信装置に配信する映像配信手段と、前記通信制御装置と第１のプロトコルを用いて通信を行う第１の通信手段とを備えている。前記通信制御装置は、前記映像配信装置と前記第１のプロトコルを用いて通信を行う第２の通信手段と、前記受信装置との間で第２のプロトコルを用いて通信する第３の通信手段と、前記映像配信装置との通信に利用される前記第１のプロトコルと前記受信装置との通信に利用される前記第２のプロトコルを相互に変換するプロトコル変換手段とを備えている。前記受信装置は、前記映像配信装置から映像信号を受信する受信手段と、前記受信手段によって受信された映像信号をデコードするデコード手段と、前記デコード手段によってデコードされた映像を表示装置に表示させる表示制御手段と、前記通信制御装置と前記第２のプロトコルを用いて通信する第４の通信手段と、所定のマークアップ言語で記述されたデータを解釈実行するマークアップ言語処理手段とを備えている。このオンデマンド映像配信システムは、前記受信装置に配信されている番組が終了したときに、当該受信装置に所定の終了処理を実行させるための終了処理コマンドを含む所定のマークアップ言語で記述された終了処理データと、当該終了処理データに関する情報を含むＰＭＴとを当該受信装置に送信することによって、番組の終了時に所定の終了処理を当該受信装置に実行させる第２の制御手段を、前記映像配信装置の内部または外部にさらに備えている。
【００１８】
本発明の第３の局面は、受信装置からの要求に応じて映像データを配信する映像配信装置と映像データを受信する前記受信装置との間の通信を制御する、オンデマンド映像配信サービスのための通信制御装置である。当該通信制御装置は、前記映像配信装置と第１のプロトコルを用いて通信を行う第２の通信手段と、前記受信装置との間で第２のプロトコルを用いて通信する第３の通信手段と、前記映像配信装置との通信に利用される前記第１のプロトコルと前記受信装置との通信に利用される前記第２のプロトコルを相互に変換するプロトコル変換手段と、前記受信装置から映像データの配信要求があったときに、所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、番組の終了時に所定の終了処理を前記受信装置に実行させる第１の制御手段とを備えている。
【００１９】
本発明の第４の局面は、受信装置からの要求に応じて映像を配信する、オンデマンド映像配信サービスのための映像配信装置である。当該映像配信装置は、配信番組の映像データを蓄積する蓄積手段と、前記蓄積手段から映像データを読み出して前記受信装置に配信する映像配信手段と、前記映像配信装置と前記受信装置間の通信を制御する通信制御装置と第１のプロトコルを用いて通信を行う第１の通信手段と、前記受信装置に配信されている番組が終了したときに、当該受信装置に所定の終了処理を実行させるための終了処理コマンドを含む所定のマークアップ言語で記述された終了処理データと、当該終了処理データに関する情報を含むＰＭＴとを当該受信装置に送信することによって、番組の終了時に所定の終了処理を当該受信装置に実行させる第２の制御手段とを備えている。
【００２０】
本発明の第５の局面は、受信装置からの要求に応じて映像データを配信する映像配信装置と映像データを受信する前記受信装置との間の通信を制御する、オンデマンド映像配信サービスのための通信制御装置としてコンピュータを機能させるためのコンピュータプログラムである。当該コンピュータプログラムは、前記コンピュータを、前記映像配信装置と第１のプロトコルを用いて通信を行う第２の通信手段、前記受信装置との間で第２のプロトコルを用いて通信する第３の通信手段、前記映像配信装置との通信に利用される前記第１のプロトコルと前記受信装置との通信に利用される前記第２のプロトコルを相互に変換するプロトコル変換手段、および前記受信装置から映像データの配信要求があったときに、所定のマークアップ言語で記述されたデータを前記受信装置に送信することによって、番組の終了時に所定の終了処理を前記受信装置に実行させる第１の制御手段として機能させるためのコンピュータプログラムである。
【００２１】
本発明の第６の局面は、受信装置からの要求に応じて映像を配信する、オンデマンド映像配信サービスのための映像配信装置としてコンピュータを機能させるためのコンピュータプログラムである。当該コンピュータプログラムは、前記コンピュータを、配信番組の映像データを蓄積する蓄積手段から映像データを読み出して前記受信装置に配信する映像配信手段、前記映像配信装置と前記受信装置間の通信を制御する通信制御装置と第１のプロトコルを用いて通信を行う第１の通信手段、および前記受信装置に配信されている番組が終了したときに、当該受信装置に所定の終了処理を実行させるための終了処理コマンドを含む所定のマークアップ言語で記述された終了処理データと、当該終了処理データに関する情報を含むＰＭＴとを当該受信装置に送信することによって、番組の終了時に所定の終了処理を当該受信装置に実行させる第２の制御手段として機能させるためのコンピュータプログラムである。
【発明の効果】
【００２２】
本発明によれば、ＢＭＬブラウザを用いて番組の終了を検出して番組終了時にＶＯＤメニュー画面を表示することが可能となるので、現在広く利用されているＢＭＬブラウザを搭載した放送系受信装置に対してアプリケーションソフトウェアを新たに追加すること無しに、より円滑で快適なＶＯＤサービスを提供することが可能となる。
【００２３】
また、ポーリングが不要、あるいは終了間際にのみのポーリングを行うだけなので、常時ポーリングを行う場合と比較して帯域を効率的に利用でき、さらに映像配信装置の負荷を低減することができる。
【発明を実施するための最良の形態】
【００２４】
以下本発明の実施の形態について、図面を参照しながら説明する。
【００２５】
（実施の形態１）
図１は、本発明の実施の形態１に係るＶＯＤシステムの構成図である。なお、ここではＣＡＴＶネットワークへの適用例について説明するが、本発明はＣＡＴＶネットワークに限らず他の種類のネットワークにも適用可能である。
【００２６】
図１において、１１０はユーザの要求に応じて映像データを配信するＶＯＤサーバであり、１２０はＶＯＤサーバ１１０と受信端末であるＳＴＢ（Ｓｅｔ  Ｔｏｐ  Ｂｏｘ）１３０間の通信を制御する通信制御装置としてのＢＭＬコントローラであり、１４０はＶＯＤサーバ１１０の出力であるＴＳ  ｏｖｅｒ  ＩＰ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）形式の信号を、ＣＡＴＶネットワークにあわせて６４ＱＡＭ変調するＩＰ−ＱＡＭであり、１５０はＣＡＴＶネットワークにおいてＩＰ通信を行うケーブルモデムのＣＡＴＶ局側の終端システムであるＣＭＴＳ（Ｃａｂｌｅ  Ｍｏｄｅｍ  Ｔｅｒｍｉｎａｔｉｏｎ  Ｓｙｓｔｅｍ）であり、１６０は６４ＱＡＭ変調された信号を混合するミキサ（ＭＩＸＥＲ）であり、１７０はＣＡＴＶネットワークであり、１８０はケーブルモデムであり、１１０１はＶＯＤサーバ１１０においてＢＭＬコントローラ１２０との通信や配信制御を行う通信管理部であり、１１０２は配信すべき番組（コンテンツ）を蓄積する蓄積部であり、１１０３は番組を配信する配信部であり、１２０１はＢＭＬコントローラ１２０において、ＲＴＳＰを用いてＶＯＤサーバ１１０との間でやりとりされるコマンドとＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）を用いてＳＴＢ１３０との間でやりとりされるＢＭＬで記述されたデータ（ＢＭＬデータ）とを相互に変換するＲＴＳＰ／ＢＭＬ変換部であり、１２０２はＶＯＤサーバ１１０から供給されるメニュー情報に応じてＢＭＬで記述されたメニュー情報を生成するメニュー生成部であり、１２０３は配信された番組に関する情報（例えば番組の終了時刻など）をユーザごとに管理するユーザ管理部であり、１２０４はＨＴＴＰを用いてＳＴＢ１３０との間でＢＭＬデータをやりとりする通信部であり、１３１０はＳＴＢ１３０において、ＣＡＴＶネットワーク１７０を経由してＶＯＤサーバ１１０から配信される番組や地上波放送などを選局して復調する選局部であり、１３２０は選局部１３１０で復調されたＭＰＥＧフォーマットの信号をデコードするデコード部であり、１３３０はデコード部１３２０でデコードされた信号のうちのＡＶ信号に関する処理を行うＡＶ処理部であり、１３４０はＡＶ処理部１３３０で処理されたＡＶ信号を図示しないテレビなどに表示できるように処理するＡＶ出力部であり、１３５０はケーブルモデム１８０を介してＢＭＬコントローラ１２０との通信を行う通信処理部であり、１３６０はＢＭＬブラウザであり、１３６１はＢＭＬブラウザ１３６０においてＢＭＬデータをデコードするＢＭＬデコード部であり、１３６２はＢＭＬデコード部１３６１でデコードされた情報のうち、選局情報に関する処理を行う選局情報処理部であり、１３６３はＢＭＬデコード部１３６１でデコードされた情報のうち、メニュー情報に関する処理を行うメニュー処理部であり、１３６４はＢＭＬデコード部でデコードされた情報のうち、終了処理情報に関する処理を行う終了処理部であり、１３６５はＢＭＬデコード部１３６１でデコードされた情報のうち、時刻情報に関する処理を行う時刻情報処理部であり、１３６６はタイマーであり、１３７０はユ���ザがＳＴＢ１３０を制御するためのリモコンであり、１３８０はＳＴＢ１３０においてリモコン１３７０からの制御信号を処理するリモコン処理部である。
【００２７】
なお、上記のようなＳＴＢ１３０の各構成要素は、典型的には、ＳＴＢ１３０に搭載されたコンピュータ（制御手段）が、ＢＭＬブラウザソフトウェアや、ＶＯＤサーバ１１０やＢＭＬコントローラ１２０から受信したＢＭＬデータを処理することによって実現される。ＶＯＤサーバの各構成要素やＢＭＬコントローラの各構成要素についても、コンピュータとソフトウェアの組み合わせによって実現することができる。
【００２８】
まず、ＳＴＢ１３０がＶＯＤシステムで提供されている番組（以下、ＶＯＤ番組と称す）を選択するまでの動作を図１を用いて説明する。
【００２９】
ＶＯＤサーバ１１０からは、ＶＯＤ番組の配信要求画面に関するＢＭＬデータがデータ放送によって配信され、ＢＭＬブラウザ１３６０はデータ放送を通じて受信した配信要求画面に関するＢＭＬデータに基づいて、配信要求画面をユーザに提示する。
【００３０】
ユーザは配信要求画面を参照し、リモコン１３７０に設けられた、ＶＯＤ番組の配信を要求するための所定のボタンを押す。すると、ＳＴＢ１３０ではリモコン処理部１３８０がリモコン１３７０からの配信要求を認識し、通信処理部１３５０から、ＶＯＤサーバ１１０へ直接送信するのではなくＢＭＬコントローラ１２０に対してＶＯＤ配信要求が送信される。通信処理部１３５０から送信された配信要求信号は、ケーブルモデム１８０、ＣＡＴＶネットワーク１７０、ミキサー１６０およびＣＭＴＳ１５０を経由してＢＭＬコントローラ１２０の通信部１２０４によって受信される。
【００３１】
ＢＭＬコントローラ１２０において、通信部１２０４は、配信要求を受信するとメニュー生成部１２０２にＶＯＤメニュー（ＶＯＤ番組を選択するためのメニュー画面）の送信を要求する。メニュー生成部１２０２は、予めＶＯＤサーバ１１０からＲＴＳＰを用いて受け取ったメニューデータをＲＴＳＰ／ＢＭＬ変換部１２０１でＢＭＬデータに変換したものを保持しており、通信部１２０４からの要求を受けるとこのＢＭＬで記述されたＶＯＤメニューを通信部１２０４を介してＳＴＢ１３０に送信する。
【００３２】
ＳＴＢ１３０では、通信処理部１３５０でＶＯＤメニューを受信すると、ＢＭＬデコード部１３６１は通信処理部１３５０が受信した情報がメニュー情報であると認識し、このメニュー情報をメニュー処理部１３６３に送る。メニュー処理部１３６３はメニュー情報に基づいてＶＯＤメニュー画面を生成する。メニュー処理部１３６３で生成されたＶＯＤメニュー画面は、ＡＶ出力部１３４０を経由してＳＴＢ１３０からテレビなどの表示装置に出力され、表示装置の画面にＶＯＤメニューが表示される。
【００３３】
図２にＶＯＤメニューの一例を示す。図２において、２００はＶＯＤメニューのトップメニュー画面であり、２０１〜２０３はトップメニュー画面２００において選択可能なジャンルの表示であり、２１０はＶＯＤトップメニュー画面で洋画ジャンル２０１を選択したときに続けて表示される洋画メニュー画面であり、２１１〜２１３は洋画メニュー画面２１０において選択可能なタイトルの表示であり、２２０は洋画メニュー画面２１０においてタイトル１を選択したときに続けて表示される購入確認画面であり、２２１〜２２２は購入確認画面２２０における選択ボタンである。
【００３４】
表示装置にトップメニュー画面２００が表示されると、ユーザはリモコン１３７０を操作して、トップメニュー画面２００に表示されているジャンルの中から所望のジャンルを選択する。ここでユーザが例えば洋画ジャンル２０１を選択すると、リモコン処理部１３８０から「洋画ジャンル２０１が選択された」という情報がＢＭＬコントローラ１２０に送信され、これを受けてＢＭＬコントローラ１２０のメニュー生成部１２０２は洋画メニュー画面２１０の情報を、トップメニュー画面と同じ要領でＳＴＢ１３０に送信する。こうしてメニュー生成部１２０２から送信された情報に基づいて表示装置に洋画メニュー画面２１０が表示される。ここでユーザが例えばタイトル１を選択すると、同様の流れで購入確認画面２２０の情報がＢＭＬコントローラのメニュー生成部１２０２からＳＴＢ１３０に送信され、表示装置に購入確認画面２２０が表示される。ユーザが購入確認画面２２０の購入ボタン２２１を選択すると、ＳＴＢ１３０からタイトル１に対応する番組の再生要求が発行される。
【００３５】
次に図３を参照して、再生要求の発行から番組の再生開始までの処理の流れを説明する。なお、ＳＴＢ１３０とＢＭＬコントローラ１２０の間の通信はＨＴＴＰを用いて行われ、ＢＭＬコントローラ１２０とＶＯＤサーバ１１０の間の通信はＲＴＳＰを用いて行われ、ＢＭＬコントローラ１２０ではＲＴＳＰ／ＢＭＬ変換部１２０１がＲＴＳＰとＨＴＴＰのプロトコル変換処理を行う。
【００３６】
ユーザがリモコン１３７０を操作して購入ボタン（再生要求ボタン）２２１を選択すると、ＳＴＢ１３０からＢＭＬコントローラ１２０へタイトル１に対応する番組の再生要求が送信される（Ｓ３０１）。この再生要求コマンドは、ＢＭＬコントローラからＳＴＢ１３０に送られた購入確認画面２２０の情報を示すＢＭＬデータの中に含まれており、ユーザがリモコン１３７０を操作して購入ボタン２２１を選択すると、購入ボタン２２１に関連づけられた再生要求コマンドをＢＭＬブラウザ１３６０がＢＭＬコントローラ１２０に送信する仕組みになっている。ＢＭＬコントローラ１２０は再生要求を受信すると、まずＲＴＳＰのＤｅｓｃｒｉｂｅコマンドを用いてＶＯＤサーバ１１０に対してユーザが要求した番組に対応する番組情報（番組の再生時間等の情報）を要求する（Ｓ３０２）。この要求に応じてＶＯＤサーバ１１０はＲＴＳＰのＡｃｋコマンドを用いて番組情報を返信する（Ｓ３０３）。次にＢＭＬコントローラ１２０はＲＴＳＰのＳｅｔｕｐコマンドを用いて、番組を配信するための伝送路、すなわちＶＯＤサーバ１１０とＳＴＢ１３０の間の伝送路の帯域確保要求を行う（Ｓ３０４）。この帯域確保要求に応じてＶＯＤサーバ１１０はＡｃｋコマンドを用いて、選局部１３１０での選局処理に必要となるネットワーク情報などの情報を、帯域確保情報としてＢＭＬコントローラ１２０に返信する（Ｓ３０５）。このステップＳ３０４およびステップＳ３０５でやり取りされる情報の一例を図４に示す。図４の最終行には、ＶＯＤサーバ１１０からＳＴＢ１３０に通知される帯域確保情報としてｆｒｅｑｕｅｎｃｙ（周波数）＝７７０（ＭＨｚ）や、ｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄ（ＴＳＩＤ）＝１、ｐｒｏｇｒａｍ＿ｎｕｍｂｅｒ（ＳｅｒｖｉｃｅＩＤ）＝２といった情報が記述されている。
【００３７】
次にＢＭＬコントローラ１２０は、ＶＯＤサーバ１１０にＲＴＳＰのＰｌａｙコマンドを用いて再生要求を送る（Ｓ３０６）。これを受けてＶＯＤサーバ１１０はＡｃｋコマンドを用いてＢＭＬコントローラ１２０に再生了解を送る（Ｓ３０７）。再生了解を受け取ると、ＢＭＬコントローラ１２０はＢＭＬのｅｐｇｔｕｎｅコマンドを用いて、選局部１３１０での選局処理に必要な情報であるオリジナルネットワークＩＤ情報やＴＳＩＤおよびＳｅｒｖｉｃｅＩＤをＳＴＢ１３０に送信する（Ｓ３０８）。これにより、ＳＴＢ１３０ではユーザが要求した番組の配信に使われるチャンネルが判別できるため、ＶＯＤサーバ１１０から送られてくる番組を受信して再生することが可能となる。
【００３８】
次に図５を参照して、ＳＴＢ１３０において番組の再生が開始されてから番組が終了してメニュー画面が表示されるまでの処理の流れを説明する。なお、図５においてステップＳ３０１〜Ｓ３０７の処理については図３と同様のため説明を省略する。
【００３９】
ステップＳ３０７で再生了解を受け取ると、ＢＭＬコントローラ１２０はＳＴＢ１３０に対して、ステップＳ３０３でＶＯＤサーバ１１０から受け取った番組再生時間（例えば２時間）をＢＭＬのｗｒｉｔｅＰｅｒｓｉｓｔｅｎｔＳｔｒｉｎｇコマンドを用いて送信するとともに、ステップＳ３０５でＶＯＤサーバ１１０から受け取った、選局部１３１０での選局処理に必要な情報であるオリジナルネットワークＩＤ情報、ＴＳＩＤおよびＳｅｒｖｉｃｅＩＤをＢＭＬのｅｐｇＴｕｎｅコマンドを用いて送信する（Ｓ５０１）。これにより、ＳＴＢ１３０では、ＶＯＤサーバ１１０から送られてくる番組を受信することが可能となり、番組の再生を開始する。なお、ステップＳ５０１でＢＭＬコントローラ１２０からＳＴＢに送信されるＢＭＬデータには、上記情報の他に、後述する図６のステップＳ６０３〜Ｓ６０９の処理をＢＭＬブラウザ１３６０に実行させるための命令コードが含まれている。
【００４０】
ステップＳ５０１でＢＭＬコントローラ１２０からＢＭＬデータを受け取ったＳＴＢ１３０では、時刻情報処理部１３６５がＢＭＬデータに含まれている番組再生時間に基づいてタイマー１３６６をセットする。番組の再生中はこのタイマー１３６６のカウントが進み、タイマー１３６６にセットされた時間が経過すると（すなわち番組が終了したら）、ＢＭＬブラウザ１３６０はＢＭＬのｌａｕｎｃｈＤｏｃｕｍｅｎｔコマンドを用いてＢＭＬコントローラ１２０に対してＶＯＤのトップメニュー画面２００を要求する（Ｓ５０２）。これを受けてＢＭＬコントローラ１２０はＳＴＢ１３０にトップメニュー画面２００を送信する（Ｓ５０３）。このような手順により、番組の再生が終了した時点で自動的にＶＯＤのトップメニュー画面２００がＳＴＢ１３０に接続された表示装置に表示され、ユーザは番組の再生が最後まで正常に終了したことを把握することができる。
【００４１】
次に図６のフローチャートを参照して番組の再生要求から終了処理までのＳＴＢ１３０の動作（典型的にはＳＴＢ１３０に搭載されているコンピュータの動作）を説明する。
【００４２】
リモコン１３７０を通じてユーザから番組の再生要求を受け付けると（Ｓ６０１）、ＳＴＢ１３０は、ＢＭＬコントローラ１２０へ再生要求として「Ｂｒｏｗｓｅ．ｌａｕｎｃｈｄｏｃｕｍｅｎｔ（ｈｔｔｐ：／／１９２．１６８．１０．１２３／ｐｌａｙ．ｂｍｌ）」を送信する（Ｓ６０２）。「１９２．１６８．１０．１２３」はＢＭＬコントローラ１２０のＩＰアドレスである。「ｐｌａｙ．ｂｍｌ」はＢＭＬコントローラ１２０が認識することのできる、再生要求のための独自コマンドである。次にＳＴＢ１３０は、ＢＭＬコントローラ１２０から番組の再生時間と選局指示の情報を含むＢＭＬデータを受け取る（Ｓ６０３）。このとき、受け取ったＢＭＬデータに記述されているｗｒｉｔｅＰｅｒｓｉｓｔｅｎｔＳｔｒｉｎｇコマンドに従って「ｔｉｍｅｉｎｆｏ．ｄａｔａ」という再生時間（たとえば２００）が記入されたファイルがメモリに保存される。
【００４３】
このようにしてＢＭＬコントローラ１２０から再生時間と選局指示を含むＢＭＬデータを受け取ると、ＳＴＢ１３０はＢＭＬブラウザを一旦終了し、ＢＭＬコントローラ１２０から受け取ったＢＭＬデータに記述されているｅｐｇＴｕｎｅコマンドを選局情報処理部１３６２で処理し、ｅｐｇＴｕｎｅコマンドにおいて指定されたパラメータに基づいて選局部１３１０を設定することによって番組を選局する（Ｓ６０４）。この結果、ＳＴＢ１３０において番組の再生が開始される。
【００４４】
選局後は、選局したチャンネルに流れてくるＰＭＴ（Ｐｒｏｇｒａｍ  Ｍａｐ  Ｔａｂｌｅ）を受信し、ＰＭＴにおいて指定されているデータ放送信号を処理し、ＢＭＬブラウザを起動する（Ｓ６０５）。続いて、ＢＭＬコントローラ１２０から受け取ったＢＭＬデータに基づいて、ステップＳ６０３で保存されていたファイル「ｔｉｍｅｉｎｆｏ．ｄａｔａ」をｒｅａｄＰｅｒｓｉｓｔｅｎｔＳｔｒｉｎｇコマンドによって読み出し、このファイルが示す再生時間の値をｅｎｄｔｉｍｅという変数名でｓｅｔＩｎｔｅｒｖａｌコマンドを用いてタイマー１３６６にセットする（Ｓ６０６）。このとき、タイマー１３６６にセットされた時間が経過したときに行うべき処理“ｔｉｍｅｒ（）”も同時にセットされる。そして、番組の再生中にタイマー１３６６のカウント値がｅｎｄｔｉｍｅの値（例えば２００）から１ずつカウントダウンし、カウント値が０になったときにｔｉｍｅｒ（）に記述された処理が実行される（Ｓ６０７）。なお、カウントダウンの替わりにカウントアップにより再生時間をカウントしてもよい。タイマーが０になる、すなわち番組の終了時刻に達すると、ｔｉｍｅｒ（）の記述に従って、ｌａｕｎｃｈＤｏｃｕｍｅｎｔコマンドを用いてＢＭＬコントローラ１２０にトップメニュー画面の要求を行う（Ｓ６０８）。「ｅｎｄ．ｂｍｌ」は、ＢＭＬコントローラ１２０が認識することのできる、トップメニュー画面の送信要求の独自コマンドである。ＢＭＬコントローラ１２０からトップメニュー画面を表示するためのＢＭＬデータが送られてくると、このＢＭＬデータに基づいて表示装置にトップメニュー画面を表示する（Ｓ６０９）。
【００４５】
次に、図７を参照して、番組視聴中にユーザが早送り操作を行なった場合の処理の流れを説明する。なお、ここでは番組視聴中に早送り操作が行われた場合の例に説明を行うが、巻き戻し操作や一時停止操作が行われた場合にも同様の処理の流れによって対応することができる。
【００４６】
図７において、ステップＳ５０１までの処理は図５と同じであるので説明を省略する。
【００４７】
番組の再生が開始されるとタイマー１３６６がカウントダウンを開始するが、番組の途中でリモコン１３７０を通じてユーザからの早送り要求を受け付けると、ＳＴＢ１３０はＢＭＬコントローラ１２０へ早送り要求として「Ｂｒｏｗｓｅ．ｔｒａｎｓｍｉｔＴｅｘｔＤａｔａＯｖｅｒＩＰ（ｈｔｔｐ：／／１９２．１６８．１０．１２３／ｆｆ．ｊａｖａ，ＣＭＤ＿ＦＦ）」を送信する（Ｓ７０１）。「ｆｆ．ｊａｖａ」は送り先アドレスを示しており、「ｆｆ．ｊａｖａ」に「ＣＭＤ＿ＦＦ」という値を送ることによって、ＢＭＬコントローラ１２０は早送り要求があったことを認識する（独自コマンド）。ＣＭＤ＿ＦＦを受け取るとＢＭＬコントローラ１２０はＶＯＤサーバ１１０に対して、Ｐｌａｙコマンドのｓｃａｌｅ指定で再生速度を指定する（Ｓ７０２）。「Ｐｌａｙ  ｓｃａｌｅ＝６．０」は６倍速再生を意味し、「Ｐｌａｙ  ｓｃａｌｅ＝１．０」は通常再生を意味する。これを受けてＶＯＤサーバ１１０は早送りを開始し、Ａｃｋコマンドを用いてＢＭＬコントローラ１２０に早送り了解を返信する（Ｓ７０３）。
【００４８】
ＶＯＤサーバ１１０において番組の早送り処理が行なわれてユーザの所望の位置までシーンが進み、ユーザからリモコン１３７０を通じて通常の再生要求が送られてくると、ＳＴＢ１３０はこの再生要求をＢＭＬコントローラ１２０に送信する（Ｓ７０４）。ＢＭＬコントローラ１２０はＰｌａｙコマンドのｓｃａｌｅ指定において「Ｐｌａｙ  ｓｃａｌｅ＝１．０」をＶＯＤサーバ１１０に送る（Ｓ７０５）。これを受けてＶＯＤサーバ１１０は再生速度を通常（すなわち１倍速）に戻し、Ａｃｋコマンドを用いてＢＭＬコントローラ１２０に再生了解を返信する（Ｓ７０６）。このとき、番組のどの位置から通常再生が再開されたかを示す時間情報もＢＭＬコントローラ１２０に送信される。
【００４９】
上記のステップＳ７０１およびステップＳ７０３においてＢＭＬコントローラ１２０とＶＯＤサーバ１１０の間でやり取りされるＰｌａｙコマンドに関する情報の一例を図８に示す。図８の最終行に「Ｒａｎｇｅ：ｎｐｔ＝３９．５７４−」とあるのは、番組全体のうちのどの位置から再生を行うかを示している。この場合は番組全体の再生時間は２００であるが、番組の開始から３９．５７４の時間が経過した位置から番組の通常再生を再開することになる。
【００５０】
ＢＭＬコントローラ１２０からＳＴＢ１３０へは通常再生の再開位置を示す時刻情報（図８の例では３９．５７４）が送られてくるので（Ｓ７０７）、この値に基づいてタイマー１３６６を再セットする。例えば、タイマー１３６６がカウントダウンによって時間をカウントする場合には、番組全体の再生時間２００から通常再生の再開位置を示す時刻情報３９．５７４を引いた値をタイマー１３６６にセットする。これ以降の処理については図５のステップＳ５０２〜Ｓ５０３と同じであるため説明を省略する。これにより、番組の視聴途中で早送り操作や巻き戻し操作が行われたときでも番組の終了に合わせて自動的にトップメニュー画面２００を表示することが可能となる。
【００５１】
なお、本実施の形態では、番組が終了した時点で自動的にトップメニュー画面が表示される例を説明したが、プレイヤに番組が終了したことを明確に認識させることさえできれば、洋画メニュー画面２１０などの他の画面を表示するようにしてもよい。
【００５２】
（実施の形態２）
次に、本発明の実施の形態２として、再生要求に対するＢＭＬコントローラ１２０からＳＴＢ１３０への応答時に、番組終了時に表示すべき終了画面（例えば番組が終了した旨のメッセージを含む画像）のデータおよびこの終了画面を表示するためのコマンドが一緒に送信される例を説明する。
【００５３】
図９は本発明の実施の形態２に係るＶＯＤシステムの構成図である。図１のＶＯＤシステムとの相違点は、ＢＭＬコントローラ１２０に、終了処理コマンド（終了画面を表示するために必要となる上記のデータとコマンドを含む）を格納するコマンド格納部１２０５が備えられている点のみである。
【００５４】
本実施の形態の処理の流れを図１０を参照して説明する。
【００５５】
図１０において、ステップＳ３０１〜Ｓ３０７の処理は前述の実施の形態１と同じであるため説明を省略する。ステップＳ３０７でＶＯＤサーバ１１０から再生了解を示すＡｃｋコマンドを受け取ると、ＢＭＬコントローラ１２０は選局指示とともに、コマンド格納部１２０５に格納されている終了処理コマンドを含むＢＭＬデータをＳＴＢ１３０に送る（Ｓ１００１）。
【００５６】
これらの情報を受け取ったＳＴＢ１３０は、終了画面データをメモリに格納し、タイマー１３６６に番組の再生時間をセットし、映像の再生を開始する。その後、タイマー１３６６に基づいて番組の終了を検出すると、ＳＴＢ１３０はメモリから終了画面データを読み出し、このデータに基づいてトップメニュー画面２００を表示装置に表示する。
【００５７】
次に図１１のフローチャートを参照して、本実施の形態における番組の再生要求から終了処理までのＳＴＢ１３０の動作（典型的にはＳＴＢ１３０に搭載されているコンピュータの動作）を説明する。
【００５８】
図１１のフローチャートにおいて図６と異なる点は、ステップＳ６０３の代わりにステップＳ１１０１の処理が、ステップＳ６０８の代わりにステップＳ１１０２の処理がそれぞれ行なわれる点である。これらのステップＳ１１０１およびステップＳ１１０２は、いずれも番組終了時に利用される終了画面データに関する処理である。タイマー１３６６による再生時間のカウント処理に関しては図６の処理と同じであるためここでは詳細な説明は省略する。
【００５９】
ＳＴＢ１３０は、リモコンを通じてユーザの再生要求を受け付けると（Ｓ６０１）、これに応じてＢＭＬコントローラ１２０へ再生要求を行う（Ｓ６０２）。そして、ＢＭＬコントローラ１２０から番組の再生時間と選局指示に加えて番組終了時に表示すべき画面データ（終了画面データ）である「ｅｎｄｆｉｌｅ．ｄａｔａ」を受け取る（Ｓ１１０１）。この終了画面データ「ｅｎｄｆｉｌｅ」は、ＢＭＬデータに記述されているｓａｖｅＨｔｔｐＳｅｒｖｅｒＦｉｌｅＡｓコマンドに従ってメモリに格納される。
【００６０】
ステップＳ６０４〜Ｓ６０７の処理を経て番組の再生が開始された後、タイマー１３６６が番組の再生時間をカウントし終えると、ＳＴＢ１３０は「ｔｉｍｅｒ（）」の記述に従って、ステップＳ１１０１でメモリに格納された終了画面データ「ｅｎｄｆｉｌｅ」をｌａｕｎｃｈＤｏｃｕｍｅｎｔコマンドに従ってメモリから読み出す（Ｓ１１０２）。そして、この終了画面データに基づいて終了画面を表示装置に表示する（Ｓ６０９）。
【００６１】
以上のような処理により、番組が終了した後にＳＴＢ１３０からＢＭＬコントローラ１２０へアクセスすること無しに、すなわちＳＴＢ１３０とＢＭＬコントローラ１２０の間で通信しなくても、ＳＴＢ１３０において番組終了後の終了処理として自動的に終了画面を表示させることができる。
【００６２】
（実施の形態３）
次に、実施の形態３として、番組の終了時刻が近づいてきたときにのみＳＴＢ１３０からＢＭＬコントローラ１２０へのポーリングを行う例を説明する。なお、参照符号については図１に付した参照符号を使用する。
【００６３】
本実施の形態の処理の流れを図１２を参照して説明する。
【００６４】
図１２において、ステップＳ３０１〜Ｓ５０１の処理は前述の実施の形態１と同じであるため説明を省略する。ステップＳ５０１でＢＭＬコントローラ１２０から選局指示と番組の再生時間を含むＢＭＬデータを受け取ると、ＳＴＢ１３０はタイマー１３６６に対して、ＢＭＬコントローラ１２０から受け取った再生時間よりも少しだけ小さい値（例えばＢＭＬコントローラ１２０から受け取った再生時間が２００である場合には１９５）をセットする。
【００６５】
番組の再生を開始後、タイマー１３６６が残り再生時間をカウントダウンし、タイマー１３６６のカウント値が０になった時点（すなわち最初にセットした１９５から０までカウントダウンが行われた時点）で、ＳＴＢ１３０は通信処理部１３５０を通じてＢＭＬコントローラ１２０に終了確認を行う（Ｓ１２０１）。これに対してＢＭＬコントローラ１２０は、その時点までにＶＯＤサーバ１１０から番組の終了を示すＲＴＳＰのＴｅａｒｄｏｗｎコマンドを受信していなければＳＴＢ１３０に「未終了」を返し、ＶＯＤサーバ１１０から番組の終了を示すＲＴＳＰのＴｅａｒｄｏｗｎコマンドを受信していればＳＴＢ１３０に終了コマンドを返す。ＳＴＢ１３０は、ＢＭＬコントローラ１２０から終了コマンドが返ってくるまで、定期的にＢＭＬコントローラ１２０に終了確認を行う。図１２の例では、ステップＳ１２０１の終了確認に対しては未終了を返し（Ｓ１２０２）、ステップＳ１２０４の終了確認に対しては、それ以前にＶＯＤサーバ１１０からＴｅａｒｄｏｗｎコマンドを受信している（Ｓ１２０３）のでＳＴＢ１３０に終了コマンドを送る（Ｓ１２０５）。ＳＴＢ１３０はこの終了コマンドに基づいてステップＳ５０２でトップメニュー画面要求を行い、ステップＳ５０３でＢＭＬコントローラ１２０からトップメニュー画面のデータを受信し、表示装置にトップメニュー画面を表示する。
【００６６】
次に図１３のフローチャートを参照して、本実施の形態におけるＳＴＢ１３０の動作を説明する。
【００６７】
図１３のフローチャートにおいて図６と異なる点は、ステップＳ６０６の代わりにステップＳ１３０１の処理が行なわれる点と、ステップＳ６０７とステップＳ６０８の間にステップＳ１３０２とステップＳ１３０３の処理が追加されている点である。ここでは図６のフローチャートと重複する処理については詳細な説明を省略する。
【００６８】
ステップＳ６０１〜Ｓ６０５については図６と同じである。続いてＳＴＢ１３０はｓｅｔＩｎｔｅｒｖａｌコマンドに従って、メモリに格納された再生時間（例えば２００）から所定の値（例えば５）を減算した値（例えば１９５）をタイマー１３６６にセットし、タイマー１３６６のカウントが終了したときに行うべき処理「ｔｉｍｅｒ（）」もセットする（Ｓ１３０１）。本実施の形態において「ｔｉｍｅｒ（）」に記述される処理は、ＢＭＬのｔｒａｎｓｍｉｔＴｅｘｔＤａｔａＯｖｅｒＩＰコマンドによってＢＭＬコントローラ１２０（ＩＰアドレス：１９２．１６８．１０．１２３／ｃｈｅｃｋ．ｊａｖａ）に終了確認を行い（Ｓ１３０２）、終了確認の結果を変数（ＣＭＤ＿ＣＨＫ）に格納することと、チェックの結果、番組の終了が確認されなかったときには終了確認を再度行い（Ｓ１３０３）、番組の終了が確認されたときにはｌａｕｎｃｈＤｏｃｕｍｅｎｔコマンドによってＢＭＬコントローラ１２０にトップメニュー画面２００を要求してこれを表示すること（Ｓ６０８）である。なお、ステップＳ６０８でトップメニュー画面２００を要求する代わりに、洋画メニュー画面２１０などの他の画面を要求するようにしてもよい。また、ステップＳ６０８でトップメニュー画面２００を要求する代わりに、実施の形態２で説明したように、例えばステップＳ１１０１でＢＭＬコントローラ１２０から終了画面データを受け取っておき、ステップＳ１１０２でトップメニュー画面を要求する代わりにその終了画面データに基づく終了画面を表示するようにしてもよい。
【００６９】
（実施の形態４）
次に、本発明の実施の形態４として、番組の終了時にＶＯＤサーバ１１０で終了画面を多重してＳＴＢ１３０に送信する例を説明する。
【００７０】
図１４は本発明の実施の形態４に係るＶＯＤシステムの構成図である。図１のＶＯＤシステムとの相違点は、ＶＯＤサーバ１１０に、終了処理コマンドを多重する多重部１１０４が追加されている点のみである。以下、図１５を参照してＶＯＤサーバ１１０の動作を説明する。
【００７１】
ＶＯＤサーバ１１０は番組関連情報としてＰＭＴを送信している。番組の再生中（すなわち配信中）は、ＰＭＴには再生中の映像データであるＶｉｄｅｏＥＳ（Ｖｉｄｅｏ  Ｅｌｅｍｅｎｔａｌｙ  Ｓｔｒｅａｍ）のＰＩＤ（Ｐａｃｋｅｔ  ＩＤ）と音声データであるＡｕｄｉｏＥＳ（Ａｕｄｉｏ  Ｅｌｅｍｅｎｔａｌｙ  Ｓｔｒｅａｍ）のＰＩＤが記述されている。どのＰＩＤがどのＥＳに対応するかは社団法人電波産業会の地上デジタルテレビジョン放送運用規定（ＡＲＩＢ  ＴＲ−Ｂ１４）で規定されているストリーム識別記述子内のコンポーネントタグ値で判別する。映像データのコンポーネントタグ値は０ｘ００〜０ｘ０ｆ、音声データのコンポーネントタグ値は０ｘ１０〜０ｘ１ｆと規定されている。
【００７２】
番組終了時、多重部１１０４は、配信データに番組再生時のＰＭＴが多重されている場合には番組再生時のＰＭＴの代わりに、またＰＭＴが一定期間多重されていなければ新たに、ＰＭＴのバージョン番号を１つ増加させたバージョンアップされたＰＭＴを多重する。このバージョンアップされたＰＭＴにはデータ放送用データであるＤａｔａＥＳのＰＩＤが多重され、ＤａｔａＥＳのＰＩＤと関連付けてストリーム識別記述子とＡＲＩＢ  ＴＲ−Ｂ１４で規定されているデータ符号化方式記述子も多重されている。ストリーム識別記述子には上記のコンポーネントタグ値が、データ符号化方式記述子にはＢＭＬブラウザの自動起動フラグなどが記述されており、このＢＭＬブラウザの自動起動フラグはＯＮに設定されている。データ放送用のコンポーネントタグ値には０ｘ４０が割り当てられている。そしてＶＯＤサーバ１１０は、ユーザに番組の終了を告知して所定の入力操作を促すメッセージを含む終了画面データをデータ放送用データに多重して送る。このメッセージを見たユーザが所定の入力操作を行うと、自動起動したＢＭＬブラウザがこの操作を受けてＢＭＬコントローラ１２０からトップメニュー画面を取得して表示装置に表示する。
【００７３】
なおＶＯＤサーバ１１０において、上記のバージョンアップされたＰＭＴや終了画面データは蓄積部１１０２に蓄積されていてもいいし、多重部１１０４や図示されていないメモリに蓄積されていてもよい。
【００７４】
番組の終了に伴って上記のバージョンアップされたＰＭＴがＶＯＤサーバ１１０から送信された場合のＳＴＢ１３０の処理の流れについて、図１６を用いて詳細に説明する。
【００７５】
図１６において、ＳＴＢ１３０は、番組の再生処理を開始すると（Ｓ１６０１）、ＰＭＴにコンポーネントタグ値とＰＩＤで記述されたＶｉｄｅｏＥＳとＡｕｄｉｏＥＳをデコードすることで映像音声（ＡＶ）の再生を行う（Ｓ１６０２）。その後ＳＴＢ１３０は、ＶＯＤサーバ１１０から周期的に送られてくるＰＭＴをチェックする（Ｓ１６０３）。ＰＭＴのバージョン番号をチェックし、バージョン番号に変化がなければＡＶ処理を継続する（Ｓ１６０４）。一方、ＰＭＴのバージョン番号に変化があった場合には、さらに、ＰＭＴの中にデータ放送を示すＤａｔａＥＳのＰＩＤがありかつストリーム識別記述子のコンポーネントタグ値が０ｘ４０を示しているかどうかをチェックし、ＤａｔａＥＳのＰＩＤがないまたはストリーム識別記述子のコンポーネントタグ値が０ｘ４０を示していなければＡＶ処理を継続する（Ｓ１６０５）。一方、ＰＭＴの中にＤａｔａＥＳのＰＩＤがありかつストリーム識別記述子のコンポーネントタグ値が０ｘ４０を示していた場合には、さらに、データ符号化方式記述子のＢＭＬブラウザ自動起動フラグがＯＮかどうかをチェックし、ＯＦＦであればＡＶ処理に加えてデータ放送再生処理を継続する（Ｓ１６０６）。一方、データ符号化方式記述子のＢＭＬブラウザ自動起動フラグがＯＮであった場合には、ＳＴＢ１３０はＢＭＬブラウザ１３６０を起動し（Ｓ１６０７）、ＤａｔａＥＳのＰＩＤで規定されたデータをＢＭＬデコード部１３６１でデコードし、デコードの結果得られた終了画面データをメニュー処理部１３６３が処理して、ＡＶ出力部１３４０を通じて表示装置に出力する（Ｓ１６０８）。こうして表示される終了画面には、例えば「再生が終了しました。メニューボタンを押してください」など、ユーザに番組が終了したことを告知して所定の入力操作を促すメッセージが含まれている。このメッセージを見たユーザがリモコンの該当するキー（ここではメニューボタン）を押下すると、リモコンキーイベントが発生したことがＢＭＬブラウザ１３６０によって認識され（Ｓ１６０９）、ステップＳ６０８〜Ｓ６０９の処理によりトップメニュー画面が表示される。
【００７６】
（実施の形態５）
次に、本発明の実施の形態５として、ＶＯＤサーバ１１０の出力がＩＰデータではなくＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）の場合に、ＶＯＤサーバ１１０の出力段に多重装置を設け、番組終了時にこの多重装置で終了画面データを多重して送信する例を説明する。
【００７７】
図１７は本発明の実施の形態５に係るＶＯＤシステムの構成図である。図１４のＶＯＤシステムとの相違点は、多重装置１９０がＶＯＤサーバ１１０の出力段に追加されている点のみである。なお、ＶＯＤサーバ１１０の配信部１１０３の出力形式はＴＳであるものとする。
【００７８】
図１７において、１９０は多重装置であり、１９０１はＶＯＤサーバ１１０やＢＭＬコントローラ１２０と通信を行う通信管理部であり、１９０２はＶＯＤサーバ１１０から出力されるＴＳに別のＴＳを多重する多重部であり、１９０３はＩＰ−ＱＡＭ１４０にＴＳ  ｏｖｅｒ  ＩＰで送信する送信部である。
【００７９】
多重装置１９０の動作について図１７を用いて説明する。
【００８０】
通信管理部１９０１がＶＯＤサーバ１１０からのＲＴＳＰのＴｅａｒｄｏｗｎコマンドを検出すると、多重部１９０２は、ＶＯＤサーバ１１０から出力されたＴＳにＰＭＴが多重されている場合には番組再生時のＰＭＴを削除もしくは置換して、またＰＭＴが一定期間多重されていなければ新たに、ＰＭＴのバージョン番号を１つ増加させたバージョンアップしたＰＭＴをＴＳに多重する。このバージョンアップしたＰＭＴにはデータ放送用データであるＤａｔａＥＳのＰＩＤが多重され、ＤａｔａＥＳのＰＩＤと関連付けてストリーム識別記述子とデータ符号化方式記述子も多重されている。ストリーム識別記述子には前述のコンポーネントタグ値が、データ符号化方式記述子にはＢＭＬブラウザの自動起動フラグなどが記述されており、ＢＭＬブラウザの自動起動フラグはＯＮに設定されている。多重装置１９０は、データ放送用データには、ユーザに番組の終了を告知して所定の操作を促すメッセージを含む終了画面データを多重したデータ放送用データをＶＯＤサーバ１１０の出力に多重し、こうして得られたデータをＩＰデータに変換してＩＰ−ＱＡＭ１４０に送信する。
【００８１】
ＳＴＢ１３０の動作は実施の形態４と同じである。
【００８２】
以上のように本実施の形態５のＶＯＤシステムによれば、既存のＶＯＤサーバ１１０に新たな機能を追加することなしに実施の形態４と同様の効果が得られる。
【００８３】
なお、以上の実施の形態では、記述言語としてＢＭＬを用いる例を説明したが、ＨＴＭＬやＸＭＬなどの他のマークアップ言語を用いても同様の効果が得られる。
【００８４】
なお、再生時間情報や終了処理コマンドのやり取りは、ＨＴＴＰで規定されているｃｏｏｋｉｅを用いても同様の効果が得られる。
【産業上の利用可能性】
【００８５】
本発明に係るオンデマンド映像配信システムの終了制御は、特に、放送系に広く普及した受信機を用いたオンデマンド映像配信システムに有用である。
【図面の簡単な説明】
【００８６】
【図１】本発明の実施の形態１に係るＶＯＤシステムの構成を示す図
【図２】メニュー画面の遷移例を示す図
【図３】本発明の実施の形態１に係るＶＯＤシステムの処理の流れの一部を示す図
【図４】Ｓｅｔｕｐコマンドのやり取りの一例を示す図
【図５】本発明の実施の形態１に係るＶＯＤシステムの処理の流れの一部を示す図
【図６】本発明の実施の形態１におけるＳＴＢ１３０の動作を示すフローチャート
【図７】本発明の実施の形態１に係るＶＯＤシステムにおいて早送り処理が行なわれた場合の処理の流れを示す図
【図８】Ｐｌａｙコマンドのやり取りの一例を示す図
【図９】本発明の実施の形態２に係るＶＯＤシステムの構成を示す図
【図１０】本発明の実施の形態２に係るＶＯＤシステムの処理の流れを示す図
【図１１】本発明の実施の形態２におけるＳＴＢ１３０の動作を示すフローチャート
【図１２】本発明の実施の形態３に係るＶＯＤシステムの処理の流れを示す図
【図１３】本発明の実施の形態３におけるＳＴＢ１３０の動作を示すフローチャート
【図１４】本発明の実施の形態４に係るＶＯＤシステムの構成を示す図
【図１５】本発明の実施の形態４におけるＰＭＴのバージョンアップ処理の流れを示す図
【図１６】本発明の実施の形態２におけるＳＴＢ１３０の動作を示すフローチャート
【図１７】本発明の実施の形態５に係るＶＯＤシステムの構成を示す図
【図１８】従来のオンデマンドシステムの構成を示す図
【図１９】ＲＴＳＰのＴｅａｒｄｏｗｎコマンドの一例を示す図
【符号の説明】
【００８７】
１１０  ＶＯＤサーバ
１２０  ＢＭＬコントローラ
１３０  ＳＴＢ
１４０  ＩＰ−ＱＡＭ
１５０  ＣＭＴＳ
１６０  ミキサー
１７０  ＣＡＴＶネットワーク
１８０  ケーブルモデム
１９０  多重装置
１１０１  通信管理部
１１０２  蓄積部
１１０３  配信部
１１０４  多重部
１２０１  ＲＴＳＰ／ＢＭＬ変換部
１２０２  メニュー生成部
１２０３  ユーザ管理部
１２０４  通信部
１２０５  コマンド格納部
１３１０  選局部
１３２０  デコード部
１３３０  ＡＶ処理部
１３４０  ＡＶ出力部
１３５０  通信処理部
１３６０  ＢＭＬブラウザ
１３６１  ＢＭＬデコード部
１３６２  選局情報処理部
１３６３  メニュー処理部
１３６４  終了処理部
１３６５  時刻情報処理部
１３６６  タイマー
１３７０  リモコン
１３８０  リモコン処理部
１９０１  通信管理部
１９０２  多重部
１９０３  送信部
２００  トップメニュー画面
２０１〜２０３  ジャンルの表示
２１０  洋画メニュー画面
２１１〜２１３  タイトルの表示
２２０  購入確認画面
２２１〜２２２  選択ボタン
【図１】
2006345379.tif 000003
【図２】
2006345379.tif 000004
【図３】
2006345379.tif 000005
【図４】
2006345379.tif 000006
【図５】
2006345379.tif 000007
【図６】
2006345379.tif 000008
【図７】
2006345379.tif 000009
【図８】
2006345379.tif 000010
【図９】
2006345379.tif 000011
【図１０】
2006345379.tif 000012
【図１１】
2006345379.tif 000013
【図１２】
2006345379.tif 000014
【図１３】
2006345379.tif 000015
【図１４】
2006345379.tif 000016
【図１５】
2006345379.tif 000017
【図１６】
2006345379.tif 000018
【図１７】
2006345379.tif 000019
【図１８】
2006345379.tif 000020
【図１９】
2006345379.tif 000021