(57)【要約】【課題】受信ビットレート測定を実行し、この結果を用いてネットワークの状況に応じた配信ビットレートの選択をクライアント側で実行することを可能にする。【解決手段】ＳＴＢ（Ｓｅｔｔｏｐ  Ｂｏｘ）６０は、ＩＰネットワークを介して、配信サーバ１２からストリーミング配信されるコンテンツデータを受信し、ＴＶ受像機７０において出力させる。ＳＴＢ６０には、コンテンツデータを受信する際のビットレートを測定し、コンテンツデータをもとにＴＶ受像機７０の画面に表示されたコンテンツと共に測定された結果を表示させる。そして、ＳＴＢ６０は、ユーザから、画面中に表示された結果に対する指示、例えば視聴を継続するか否か、あるいは配信ビットレートを選択する指示を入力し、この指示を配信サーバ１２に送信する。【選択図】    図２
2004289628.tif 000002
【特許請求の範囲】
【請求項１】
ＩＰ（ｉｎｔｅｒｎｅｔ  ｐｒｏｔｏｃｏｌ）ネットワークを介して、配信サーバからストリーミング配信されるコンテンツデータを受信し、ＴＶ（ｔｅｌｅｖｉｓｉｏｎ）受像機において出力させるセットトップボックスにおいて、
前記コンテンツデータを受信する際のビットレートを測定する測定手段と、
前記コンテンツデータをもとに前記ＴＶ受像機の画面に表示されたコンテンツと共に、前記測定手段によって測定された結果を表示させる結果画面表示手段と、
前記結果画面表示手段によって表示された結果に対する指示を入力する入力手段と、
前記入力手段によって入力された指示を前記配信サーバに送信する応答送信手段と
を具備したことを特徴とするセットトップボックス。
【請求項２】
前記結果画面表示手段は、
前記測定手段によって測定されたビットレートが前記配信サーバからの配信ビットレートよりも低い場合に、前記測定手段により測定されたビットレート値を表示し、
コンテンツデータの受信を継続するか否かの指示を前記入力手段により入力するための選択肢を表示することを特徴とする請求項１記載のセットトップボックス。
【請求項３】
前記配信サーバがコンテンツデータを配信する際の配信ビットレート毎に、各配信ビットレートで配信されるコンテンツデータを記録する記録手段と、
配信ビットレートの指定と共にコンテンツの出力要求を入力する要求入力手段と、
前記要求入力手段により入力された出力要求に応じた前記配信ビットレートに対応する前記記録手段に記録されたコンテンツデータを出力させるサンプル出力手段と
を具備したことを特徴とする請求項１記載のセットトップボックス。
【請求項４】
前記配信サーバがコンテンツデータを配信した際の配信ビットレート毎に、前記ＩＰネットワークの所定の状況時に受信したコンテンツデータを記録する記録手段と、
配信ビットレート及び前記ＩＰネットワークの所定の状況の指定と共にコンテンツの出力要求を入力する要求入力手段と、
前記要求入力手段からの出力要求に応じた前記配信ビットレート及び前記状況に対応する前記記録手段に記録されたコンテンツデータを出力させるサンプル出力手段と
を具備したことを特徴とする請求項１記載のセットトップボックス。
【請求項５】
ＩＰネットワークを介して、配信サーバからストリーミング配信されるコンテンツデータを受信し、ＴＶ受像機において出力させるセットトップボックスにおいて、
前記配信サーバからテスト用のコンテンツデータを受信する受信手段と、
前記受信手段によって受信されたテスト用のコンテンツデータを受信する際のビットレートを測定する測定手段と、
前記測定手段によって測定されたビットレートに応じて決定される、利用可能な範囲の配信ビットレートの選択肢を表示させる結果画面表示手段と、
前記結果画面表示手段によって表示された選択肢に対する指示を入力する入力手段と、
前記入力手段によって入力された指示により決定された配信ビットレートを前記配信サーバに通知する配信ビットレート通知手段と、
を具備したことを特徴とするセットトップボックス。
【請求項６】
ＩＰネットワークを介してコンテンツデータをクライアントに対してストリーミング配信するサーバ装置において、
テスト用のコンテンツデータを前記クライアントに送信する送信手段と、
前記送信手段によって送信したテスト用のコンテンツデータに対して、前記クライアントから配信ビットレートの通知を受信する通知受信手段と、
前記通知受信手段によって受信した配信ビットレートによって、前記クライアントに対してコンテンツデータを配信するコンテンツ配信手段と
を具備したことを特徴とするサーバ装置。
【請求項７】
ＩＰネットワークを介して、配信サーバからストリーミング配信されるコンテンツデータを受信し、ＴＶ受像機において出力させるセットトップボックスにおいて、
前記コンテンツデータを受信する際のビットレートを測定する測定ステップと、
前記コンテンツデータをもとに前記ＴＶ受像機の画面に表示されたコンテンツと共に、前記測定ステップによって測定された結果を表示させる結果画面表示ステップと、
このステップによって表示された結果に対する指示を入力する入力ステップと、
この入力ステップによって入力された指示を前記配信サーバに送信する応答送信ステップとを有することを特徴とするストリーミング配信方法。
【請求項８】
配信サーバからＩＰネットワークを介してストリーミング配信されるコンテンツデータをクライアントにおいて出力させるストリーミング配信システムにおいて、
前記配信サーバから前記クライアントに対してテスト用のコンテンツデータを送信し、このテスト用のコンテンツデータを受信する際のビットレートを前記クライアントにおいて測定し、
前記クライアントにおいて、測定されたビットレートに応じて決定される利用可能な範囲の配信ビットレートの選択肢を表示させ、その中から選択された配信ビットレートを前記配信サーバに通知し、
前記配信サーバにおいて、前記クライアントから通知された配信ビットレートによって、前記クライアントに対してコンテンツデータを配信することを特徴とするストリーミング配信方法。
【請求項９】
ＩＰネットワークを介して、配信サーバからストリーミング配信されるコンテンツデータを受信し、ＴＶ受像機において出力させるストリーミング配信プログラムであって、
コンピュータを、
前記コンテンツデータを受信する際のビットレートを測定する測定手段と、
前記コンテンツデータをもとに前記ＴＶ受像機の画面に表示されたコンテンツと共に、前記測定手段によって測定された結果を表示させる結果画面表示手段と、
前記結果画面表示手段によって表示された結果に対する指示を入力する入力手段と、
前記入力手段によって入力された指示を前記配信サーバに送信する応答送信手段とに機能させるためのストリーミング配信プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、インターネット技術を利用したＩＰネットワークを介して、コンテンツデータをストリーミング配信するストリーミング配信システム、同システムで用いられるセットトップボックス、ストリーミング配信方法、及びストリーミング配信プログラムに関する。
【０００２】
【従来の技術】
近年、インターネット技術を利用した、ＣＡＴＶ網やインターネットなどによるＩＰ（ｉｎｔｅｒｎｅｔ  ｐｒｏｔｏｃｏｌ）ネットワークを介して、映像（動画）や音楽などのＩＰストリーミング放送が行われている。ＩＰストリーミングとは、ＩＰを利用して映像や音声等のコンテンツをＩＰパケットとして配信し、ユーザ側にてコンテンツを再生する技術全般を示し、ユーザ側でＩＰパケットをメモリに受信して再生する狭義のＩＰストリーミングと、ユーザ側で一部か全てのコンテンツを一旦ハードディスク装置（ＨＤＤ）に蓄積した後に再生を開始する擬似ＩＰストリーミングの両方を含む。
【０００３】
ＩＰネットワークを経由したストリーミング配信システムでは、ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）の保証は重要な課題である。ネットワークがクローズなシステムとして構築され、予めＱｏＳの提供を念頭において構築されている場合は、ネットワークにおける帯域保証をすることが可能である。しかし、インターネットでは、複数のＩＳＰ（Ｉｎｔｅｒｎｅｔ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ）が結合されて構成されているため、エンドツーエンドのシステムにＩＳＰが複数存在しているとＱｏＳの保証が困難となる。
【０００４】
ところで、ストリーミング配信システムでは、通常、配信サーバ１２からクライアントに対して映像や音声等をストリーミング配信する場合、クライアント側のユーザが配信ビットレートを選択し、配信サーバ１２に通知する方法が一般的である。配信サーバ１２は、クライアントから通知された配信ビットレートに従ってコンテンツを配信する。
【０００５】
また、従来では、ユーザによって指定された条件（例えば許容待機時間）にデータの送信が実行できるように、コンテンツの画像データを送信するのに先立って、サーバからテストファイルを送信し、このテストファイルの送信結果から回線の混雑状況を判定し、圧縮率を変更してコンテンツの画像データを処理することが考えられている（例えば、特許文献１）。
【０００６】
【特許文献１】
特開２０００−２９５２７２号公報（図１、図４、図５）
【０００７】
【発明が解決しようとする課題】
このように従来では、テストファイルをもとに回線の混雑状況を判定し、この結果に応じてコンテンツに対して処理をする場合には、配信サーバ１２とクライアントとが例えば同一メーカ製品であるなど、両者がテストファイルを用いた配信ビットレート測定のための機能に対応していなくては実現できなかった。
【０００８】
また、エンドユーザに配信ビットレートを選択させてしまうと、実際のネットワークの輻輳状態を考慮して配信ビットレートが決定されず、最適なビットレートが採用されていないという場合があった。
【０００９】
本発明は前記のような事情を考慮してなされたもので、受信ビットレート測定を実行し、この結果を用いてネットワークの状況に応じた配信ビットレートの選択をクライアント側で実行することが可能なストリーミング配信システム、セットトップボックス、ストリーミング配信方法、及びストリーミング配信プログラムを提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明は、ＩＰネットワークを介して、配信サーバ１２からストリーミング配信されるコンテンツデータを受信し、ＴＶ受像機において出力させるセットトップボックスにおいて、前記コンテンツデータを受信する際のビットレートを測定する測定手段と、前記コンテンツデータをもとに前記ＴＶ受像機の画面に表示されたコンテンツと共に、前記測定手段によって測定された結果を表示させる結果画面表示手段と、前記結果画面表示手段によって表示された結果に対する指示を入力する入力手段と、前記入力手段によって入力された指示を前記配信サーバ１２に送信する応答送信手段とを具備したことを特徴とする。
【００１１】
また本発明は、ＩＰネットワークを介して、配信サーバ１２からストリーミング配信されるコンテンツデータを受信し、ＴＶ受像機において出力させるセットトップボックスにおいて、前記配信サーバ１２からテスト用のコンテンツデータを受信する受信手段と、前記受信手段によって受信されたテスト用のコンテンツデータを受信する際のビットレートを測定する測定手段と、前記測定手段によって測定されたビットレートに応じて決定される、利用可能な範囲の配信ビットレートの選択肢を表示させる結果画面表示手段と、前記結果画面表示手段によって表示された選択肢に対する指示を入力する入力手段と、前記入力手段によって入力された指示により決定された配信ビットレートを前記配信サーバ１２に通知する配信ビットレート通知手段とを具備したことを特徴とする。
【００１２】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態について説明する。図１は本実施形態に係わるストリーミング配信システムの構成を示すブロック図である。
【００１３】
本実施形態におけるストリーミング配信システムは、配信サーバ１２（コンテンツ配信システム１０）によるストリーミング配信サービスにおいて、クライアント（後述するＳＴＢ６０、ＰＣ５０、ＴＶ装置７２）側において、コンテンツ配信システム１０に依存することなく、実際のコンテンツ配信時に受信されるコンテンツデータのビットレートを測定し、その結果を利用してエンドユーザに視聴をするか（続けるか）を選択させることができる（第１実施形態）。
【００１４】
また、配信サーバ１２からクライアントに対してコンテンツを配信する際に、エンドユーザによって配信ビットレートを選択させずに、実際のコンテンツデータの配信に先立ち配信サーバ１２側からテスト用コンテンツ（あるいはファイル）を送信し、そのテスト用コンテンツの受信ビットレートをクライアント側で計測して、利用可能な範囲の配信ビットレートを決定し、その中からユーザに選択させることで配信サーバ１２からのストリーミングコンテンツの配信ビットレートを決定することができる（第２実施形態）。
【００１５】
図１は、本発明の実施形態に係わるＩＰ（ｉｎｔｅｒｎｅｔ  ｐｒｏｔｏｃｏｌ）ネットワークを経由してストリーミング配信を実施するストリーミング配信システムの構成を示すブロック図である。図１に示すように、本実施形態におけるストリーミング配信システムは、コンテンツ配信システム１０、ＰＯＰ（Ｐｏｉｎｔ  ｏｆ  Ｐｒｅｓｅｎｓｅ）２０，４０、ＩＳＰ（Ｉｎｔｅｒｎｅｔ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ）バックボーン３０、ＳＴＢ（Ｓｅｔｔｏｐ  Ｂｏｘ）６０、及びＴＶ装置７０によって構成されている。また、ＳＴＢ６０と同等の機能が実装されたＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）５０、ＴＶ装置７２を用いることもできる。
【００１６】
コンテンツ配信システム１０は、多種類のマルチメディアコンテンツを蓄積し、ユーザ側から試聴要求があった映像等のマルチメディアコンテンツの配信処理を実行する。
【００１７】
コンテンツ配信システム１０は、ナビゲーションサーバ１１、配信サーバ１２等のサーバ群が設けられ、さらにルーティングプロトコルに基づきルーティングテーブルを構成し、サーバ群及びネットワーク側から送られてくるＩＰパケットを中継するルータ１４が設けられている。
【００１８】
ナビゲーションサーバ１１は、ユーザが実際にコンテンツを選択するためのメニュー画面をＳＴＢ６０（あるいはＴＶ装置７２やＰＣ５０）において表示させるためのＥＰＧ（Ｅｌｅｃｔｒｏｎｉｃ  Ｐｒｏｇｒａｍ  Ｇｕｉｄｅ：電子プログラムガイド）を保持しており、ＳＴＢ６０のブラウザを通じたユーザからの視聴要求に従ってＳＴＢ側にロードする。ＥＰＧによるメニュー画面には、例えばコンテンツのサムネイル（ｔｈｕｍｂｎａｉｌ）（コンテンツ映像を縮小した静止画像）等を表示して、エンドユーザにコンテンツを選択させることができるようにする。また、ナビゲーションサーバ１１は、ナビゲーションサーバソフトウェアその他必要とするプログラム等が搭載され、これらＥＰＧや各種プログラムとの間で連携をとりながら処理を実行し、またユーザ側から視聴を希望するコンテンツの要求があった時、その要求コンテンツを受理して、ＶＯＤ（Ｖｉｄｅｏ  Ｏｎ  Ｄｅｍａｎｄ）コンテンツの要求の場合には配信サーバ１２に通知する。
【００１９】
配信サーバ１２は、他種類のマルチメディアコンテンツの他、各コンテンツの配信に必要な情報を蓄積する配信情報データベース１２ａを有し、これら各種コンテンツを含む配信情報を管理する機能が設けられている。配信サーバ１２は、ナビゲーションサーバ１１からＩＰアドレス等の要求元情報をもとにＶＯＤコンテンツの配信要求を受けると、配信情報データベース１２ａから配信要求コンテンツのコンテンツファイルを読み出し、要求元情報に基づいてコンテンツデータをストリーミング配信する。本実施形態の配信サーバ１２では、例えば各コンテンツについて、コンテンツデータを配信する際の配信ビットレート、例えば５００ｋｂｐｓ、７５０ｋｂｐｓ、１Ｍｂｐｓのそれぞれに応じたコンテンツファイルが用意されているものとする。配信サーバ１２は、コンテンツ側から要求される配信ビットレートに応じたコンテンツファイルを読み出して、要求元のクライアントに対してストリーミング配信する。
【００２０】
ＰＯＰ（Ｐｏｉｎｔ  ｏｆ  Ｐｒｅｓｅｎｓｅ）２０，４０は、多くのエンドユーザをインターネットに接続するための拠点である。ＰＯＰ２０，４０には、例えば、相互に結合されたルータ群とＤＮＳ（Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ）サーバ、ダイヤルアップのためのアクセスサーバ等で構成されるが、ここでは直接関係のあるルータ２２，４２のみを表している。
【００２１】
ＩＳＰバックボーン３０は、ＰＯＰ２０，４０を相互に接続するもので、例えばＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ）スイッチやＳＯＮＥＴ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｏｐｔｉｃａｌ  Ｎｅｔｗｏｒｋ：同期光通信網）接続装置、ＤＷＤＭスイッチ等で構成される。
【００２２】
ＳＴＢ（Ｓｅｔｔｏｐ  Ｂｏｘ）６０は、ネットワークインタフェースを持ち、インターネット（ＩＰネットワーク）に接続する機能、ブラウザ機能、コンテンツ配信システム１０から配信されるＩＰストリーミング（コンテンツデータを含むＩＰパケット）を受信する機能、ＩＰパケットに含まれるコンテンツデータの映像・音声をＣＯＤＥＣ（コード・デコード）に従ってデコード処理する機能、コンテンツをＴＶ装置７０において出力（映像、音声等）させる接続機能等を有する。ＳＴＢ６０には、本発明によるコンテンツ配信システム１０からコンテンツデータを配信させる際の配信ビットレートを決定するための機能が設けられている。詳細な構成については後述する（図２参照）。
【００２３】
ＴＶ装置７０は、ＳＴＢ６０と接続されて、コンテンツ配信システム１０から配信されたコンテンツデータによる映像を画面に表示させ、またスピーカから音声を出力する。
【００２４】
ＰＣ５０は、ＳＴＢ６０と同等の機能（以下、コンテンツ受信機能）５０ａが搭載されており、ネットワークインタフェースを通じてＰＯＰ４０と接続される。ＰＣ５０は、コンテンツ受信機能５０ａによって受信したストリーミング（コンテンツデータ）をもとに、ディスプレイに映像を表示し、またスピーカより音声を出力する。
【００２５】
ＴＶ装置７２は、ＳＴＢ６０と同等の機能（以下、コンテンツ受信機能）７２ａが搭載されており、ネットワークインタフェースを通じてＰＯＰ４０と接続される。ＴＶ装置７２は、コンテンツ受信機能７２ａによって受信したストリーミング（コンテンツデータ）をもとに、ディスプレイに映像を表示し、またスピーカより音声を出力する。
【００２６】
図２は、本実施形態におけるＳＴＢ６０の構成を示すブロック図である。図２に示すように、ＳＴＢ６０は、ＰＨＹ部８０、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）コントローラ８１、ＨＤＤコントローラ８２、ＨＤＤ８３、ビデオデコーダ８４、フラッシュメモリ８５、メモリ８６、ＣＰＵ８７、ＩＲ−ＩＦ８８、ＮＳＴＣ（Ｎａｔｉｏｎａｌ  Ｔｅｌｅｖｉｓｉｏｎ  Ｓｙｓｔｅｍ  Ｃｏｍｍｉｔｔｅｅ）エンコーダ８９を有している。内部バス９０は、ＰＨＹ部８０、ＨＤＤ８３、及びＩＲ−ＩＦ８８を除く各部を相互に接続している。
【００２７】
ＰＨＹ部８０は、例えばイーサネット（登録商標）（１００Ｂａｓｅ−Ｔ）の他、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）やＦＴＴＨ（Ｆｉｂｅｒ  ｔｏ  ｔｈｅ  Ｈｏｍｅ）（光ファイバケーブル）、ＣＡＴＶケーブル等によるケーブルを接続すし、コンテンツ配信システム１０から配信されるＩＰストリーミングを受信するインタフェースである。
【００２８】
ＭＡＣコントローラ８１は、ＰＨＹ部８０を介して受信されたＩＰストリーミングに対するアクセス制御を実行する。すなわち、受信側はケーブルＭＡＣフレームを受信し、ＩＰパケットを内部バス９０に送信し、送信側は内部バス９０から受信したＩＰパケットをケーブルＭＡＣフォーマットにカプセル化し、ＰＨＹ部８０に出力するといった機能を有する。
【００２９】
ＨＤＤコントローラ８２は、ＨＤＤ８３とメモリ８６間のデータ転送を制御する。
【００３０】
ＨＤＤ８３は、ＯＳ（オペレーティングシステム）や各種ミドルウエアプログラムやコンテンツを一時記憶する等の目的で用いる。なお、各種不揮発メモリで代用することも可能である。本実施形態では、ＨＤＤ８３に、コンテンツ配信システム１０（配信サーバ１２）がコンテンツデータを配信する際の配信ビットレート毎に、各配信ビットレートで配信されるコンテンツデータ（ファイル）、あるいは配信ビットレート毎だけでなく、ＩＰネットワークの所定の状況時に受信したコンテンツデータ（ファイル）が記録される。ＨＤＤ８３に記録されるコンテンツデータは、配信サーバ１２からの配信ビットレートをユーザに選択させる際に、参考のために出力するサンプルとして用いられる。ＨＤＤ８３に記録されるサンプル用のコンテンツデータは、コンテンツ配信システム１０がユーザからの指示を受けることなくネットワークを通じて記録しても良いし、ＳＴＢ６０がコンテンツ配信システム１０から配信されたコンテンツデータを、所定の通信状況毎のサンプルとして記録しても良い。
【００３１】
ビデオデコーダ８４は、例えば、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）２等のＣＯＤＥＣ（ｃｏｄｅ／ｄｅｃｏｄｅ）に対応するＩＣである。また、ビデオデコーダ８４は、映像だけでなく音声についての処理も実行する。なお、ビデオデコードの処理をプログラムに基づきＣＰＵ８７により実行する場合には、ビデオデコーダ８４を設ける必要はない。
【００３２】
フラッシュメモリ８５は、ブートプログラムが記録されている。
【００３３】
メモリ８６は、コンテンツ配信システム１０から配信されたコンテンツデータを含むＩＰパケットの送受信や各種プログラムの実行時の作業領域等に使用される。
【００３４】
ＣＰＵ８７は、各種プログラムを実行して各種機能を実現するもので、例えば制御用ＩＰパケットの送受信処理、映像・音声コンテンツのデコード処理、各種アプリケーション処理、及びこれらの処理の制御をリアルタイムに実行するリアルタイムＯＳの処理の他、コンテンツ配信システム１０から配信されるコンテンツデータの受信ビットレートを促成する際に使用されるタイマ機能を持つものとする。
【００３５】
ＩＲ−ＩＦ８８は、例えばシリアルインタフェース等を経由してＣＰＵ８７に接続されており、ユーザが操作するリモートコントローラ（図示せず。以下、リモコンと称する）から出力される赤外線（ｉｎｆｒａｒｅｄ  ｒａｄｉａｔｉｏｎ）による制御情報、例えばチャンネル変更、電源オン・オフ、画面中に表示された選択肢を選択する指示などを受信し、ＣＰＵ８７に通知する。
【００３６】
ＮＴＳＣエンコーダ８９は、コンテンツデータ（映像）をＮＴＳＣ方式の映像信号にエンコードしてＴＶ装置７０に出力するもので、例えば、コンポジットインタフェースやＳ−ＶＩＤＥＯ端子等を経由してＴＶ装置７０と接続される。なお、ＮＳＴＣエンコーダ８９ではなく、ＰＡＬ（Ｐｈａｓｅ  Ａｌｔｅｒｎａｔｉｏｎ  ｂｙ  Ｌｉｎｅ）フォーマットの映像信号を扱うＴＶ用エンコーダを用いることも可能である。
【００３７】
（第１実施形態）
次に、本発明の第１実施形態について説明する。
【００３８】
図３は、ＳＴＢ６０側と配信サーバ１２側の手続きのシーケンスを示す図である。第１実施形態では、ＳＴＢ６０がコンテンツ配信システム１０に依存しないで、配信サーバ１２から配信された実際のコンテンツデータのビットレートを測定し、その結果を利用してエンドユーザに視聴をするか（続けるか）を選択させる機能を実現する。
【００３９】
まず、ＳＴＢ６０では、ブラウザ機能を通じて、映像コンテンツを保持するＵＲＬ（ｕｎｉｆｏｒｍ  ｒｅｓｏｕｒｃｅ  ｌｏｃａｔｏｒ）やコンテンツのファイル名等の情報を取得する。例えば、インターネット上の映像検索ポータルサイトからリンク情報として入手することができる（ステップＡ１）。なお、オフライン情報（人、雑誌）としてユーザが取得し、ＳＴＢ６０に入力されても良い。
【００４０】
ここで、ＳＴＢ６０は、ブラウザ機能を通じて、コンテンツ配信システム１０にアクセスして、ナビゲーションサーバ１１が持つコンテンツの情報（ＥＰＧ）を獲得し、ＴＶ装置７０に表示する。エンドユーザは、コンテンツ情報を見て、自分の見たいコンテンツを選択し、また複数の配信ビットレートが用意されている場合は何れかの配信ビットレート（例えば５００ｋｂｐｓ）を選択する。ＳＴＢ６０は、ユーザによって指定されたコンテンツと配信ビットレートをナビゲーションサーバ１１に通知する。このナビゲーションサーバ１１に対する通知に対して、ＳＴＢ６０は、コンテンツのファイル名や配信サーバ１２のアドレス（ＵＲＬ）をナビゲーションサーバ１１より取得する。
【００４１】
ＳＴＢ６０は、ナビゲーションサーバ１１から取得したコンテンツのファイル名や配信サーバ１２のアドレスをもとに、配信サーバ１２のセットアップのためのコマンドを送出し、コンテンツセットアップ要求を送信する（ステップＡ２）。配信サーバ１２は、この要求を受信後、配信のための準備を実行し、準備完了後、セットアップ完了の応答をＳＴＢ６０に通知する（ステップＡ３）。
【００４２】
ＳＴＢ６０は、セットアップ完了の応答を受信すると、コンテンツの配信開始要求（ファイル要求）を送信する（ステップＡ４）。これに対し、配信サーバ１２は、ファイル要求に対して応答し（ステップＡ５）、ユーザから指定された配信ビットレートによるコンテンツファイルを配信情報データベース１２ａから読み出し、コンテンツデータをストリーミング配信する（ステップＡ６）。
【００４３】
ここで、ＳＴＢ６０は、配信サーバ１２から配信されるコンテンツデータを受信してバッファリングし始める。ＳＴＢ６０は、この最初に受信するコンテンツデータのバッファリング時間を用いて、コンテンツデータの受信レート測定処理を実行する（ステップＡ７）。なお、受信レート測定処理については、図４を参照しながら説明する（後述する）。
【００４４】
ＳＴＢ６０は、受信レート測定処理が完了すると、一定時間の平均ビットレートを受信レートの測定結果として、コンテンツデータをもとに映像が表示されているＴＶ装置７０の画面の一部に表示する（ステップＡ８）。なお、ＳＴＢ６０は、フラッシュディスク等の不揮発メモリ（図示せず）に記憶していた画面データ（コンテンツの映像）を利用して、表示を行うこともできる。
【００４５】
図５には、受信レートの測定結果が表示されたＴＶ装置７０の画面の表示例を示している。図５では、コンテンツ表示領域１０６においてコンテンツ映像が表示されており、この映像と共に受信レートの測定結果がテスト結果１０８として、例えば「８００ｋｂｐｓ」と表示されている。また、ユーザに対して、コンテンツの視聴を継続するか否かを選択させるためのメニュー１１０が表示されている。ここでは、「視聴を続けますか？」のメッセージと共に、「はい」「いいえ」の選択肢が表示されている。すなわち、配信サーバ１２から現在の配信ビットレートによるコンテンツデータの配信を継続するかを選択させる。
【００４６】
ここで、エンドユーザは、テスト結果画面に表示された結果（現在の受信レート）と、一般的にクリアな映像が視聴可能なビットレートによる映像と比較して、視聴するかどうかの判断を実施することができる。
【００４７】
例えば、ＳＴＢ６０は、ユーザのリモコンに対する操作によって、サンプル映像の表示要求がＩＲ−ＩＦ８８によって受信された場合、ＨＤＤ８３に記録されているサンプル映像のビットレート一覧をＴＶ装置７０において表示させる。例えば、ＨＤＤ８３には、図６に示すように、配信サーバ１２によってコンテンツデータが配信可能な３種のビットレート（５００ｋｂｐｓ、７５０ｋｂｐｓ、１Ｍｂｐｓ）毎の、サンプル表示用のコンテンツファイルが記録されているものとする。ＳＴＢ６０は、ＨＤＤ８３にコンテンツファイルが記録されたビットレートをＴＶ装置７０の画面に一覧表示させて、ユーザによって選択させる。ＳＴＢ６０は、ユーザによって指定されたビットレートのコンテンツファイルを読み出し、このファイル中のコンテンツデータをもとに映像及び音声をＴＶ装置７０において出力させる。これにより、受信レート測定によって測定された現在の受信ビットレート及び現在受信中のコンテンツの映像と、配信ビットレートを変更した場合に視聴可能となる映像とを比較することができる。
【００４８】
なお、図６では、配信サーバ１２によって配信可能なビットレート毎のサンプル表示用のコンテンツファイルが記録されているとしたが、図７に示すように、配信サーバ１２によって配信可能なビットレート毎に、実際にコンテンツ配信システム１０から配信されたコンテンツデータを所定の通信状況毎のサンプルとして記録しても良い。例えば、受信レート測定処理によって測定される受信ビットレートを所定のビットレート毎、例えば５０ｋｂｐｓ毎に分類する。ＳＴＢ６０は、例えば配信サーバ１２による配信ビットレートが５００ｋｂｐｓの場合に、その中の何れの分類（Ｘ１，Ｘ２，…）に該当するかを判別し、配信サーバ１２から実際に受信したコンテンツデータ（ファイル）をサンプル用として該当する分類と対応づけて記録しておく。これにより、前述と同様にして、サンプル映像の配信ビットレートと受信ビットレートの組の一覧をＴＶ装置７０において表示する。そして、ユーザによって選択された配信ビットレートと受信ビットレートの組に対応するサンプル映像を表示させる。
【００４９】
ここで、視聴を継続するために、リモコン操作によってメニュー１１０から「はい」が選択された場合には、ＳＴＢ６０は、そのまま配信サーバ１２から配信されるコンテンツデータの受信を継続し、受信したコンテンツデータに応じた映像と音声をＴＶ装置７０において出力させる。
【００５０】
一方、メニュー１１０から「いいえ」がユーザによって選択され、視聴の中止が指示された場合には、ＳＴＢ６０は、配信サーバ１２に対してコンテンツ停止要求を送信する（ステップＡ９）。配信サーバ１２は、これに対する応答を送信すると共に、初期状態にリセットする（ステップＡ１０）。
【００５１】
コンテンツ配信システム１０は、例えば配信ビットレートの指定を変更したコンテンツの配信要求がＳＴＢ６０からあった場合、前述と同様の手続きによってコンテンツデータの配信を実行する。
【００５２】
なお、前述した説明では、ステップＡ８においてテスト結果画面を表示し、この画面中でエンドユーザがコンテンツ送信の停止要求を選択することで、ＳＴＢ６０からコンテンツ停止要求を送信しているが、ユーザによって選択させることなく自動的にコンテンツ送信の停止要求を送信して、その後にエンドユーザにコンテンツの配信を継続させるか否かの判断を委ねることも可能である。
【００５３】
また、例えばユーザからの指定に応じて、予めＳＴＢ６０側に最低視聴ビットレートを設定しておき、その受信レート測定によって測定された受信ビットレートが最低視聴ビットレート以下であれば、自動的にコンテンツの配信を停止（コンテンツ送信の停止要求を送信）するようにしても良い。
【００５４】
次に、ステップＡ７における受信レート測定処理について、図４に示すフローチャートを参照しながら説明する。
【００５５】
まず、ＳＴＢ６０は、コンテンツデータの受信に先立ち内部タイマをリセットし（ステップＢ１）、タイマ計測を開始する（ステップＢ２）。
【００５６】
次に、コンテンツデータのＩＰパケットの受信バイトの計測を開始する（ステップＢ３）。また、本プロセスでは、定期的にタイマの計測値を確認し、タイマ計測開始からの経過時間が予め決められた単位時間に達したかどうかを判別する（ステップＢ４）。
【００５７】
ここで、単位時間未達の場合は（ステップＢ４、Ｎｏ）、受信バイトのカウントを継続する。一方、単位時間に達した場合（ステップＢ４、Ｙｅｓ）、その受信バイト数を単位時間で割り、受信ビットレートを決定する（ステップＢ５）。
【００５８】
なお、受信ビットレートの測定方法には、種々の方法があり、例えばステップＢ１でタイマをリセットせず、実時刻を利用して、受信バイトがある値に達した場合に、その実時刻との差分時間で受信レートを計算する方法を用いることも可能である。
【００５９】
このようにして、第１実施形態におけるストリーミング配信システムでは、コンテンツ配信システム１０に依存することなく、ＳＴＢ６０において、配信サーバ１２から配信されたコンテンツデータをもとにビットレートを測定し、その測定結果を表示してユーザに提示することができる。そして結果をもとにして、ユーザからコンテンツデータの配信中止の指示を入力して、コンテンツ配信システム１０（配信サーバ１２）に通知することができる。そして、改めて視聴に適した配信ビットレートを選択して、コンテンツデータを受信することができるようになる。
【００６０】
なお、前述した説明では、クライアント側としてＳＴＢ６０を対象として説明しているが、ＳＴＢ６０と同等の機能を持つコンテンツ受信機能５０ａが実装されたＰＣ５０や、コンテンツ受信機能７２ａが実装されたＴＶ装置７２で実現することも可能である。また、ＰＣ５０では、ＳＴＢ６０が実行する同等の機能をソフトウエアで実現することも可能である。
【００６１】
（第２実施形態）
次に、第２実施形態について説明する。
【００６２】
図８は、ＳＴＢ６０側と配信サーバ１２側の手続きのシーケンスを示す図である。第２実施形態では、配信サーバ１２からＳＴＢ６０に対してコンテンツを配信する際に、コンテンツデータの配信の前に配信サーバ１２からテスト用コンテンツ（あるいはファイル）を送信し、そのテスト用コンテンツの受信ビットレートをＳＴＢ６０で計測して、利用可能な範囲の配信ビットレートを決定し、その中からユーザに選択させることで配信サーバ１２からのストリーミングコンテンツの配信ビットレートを決定する。
【００６３】
初期状態としてＳＴＢ６０は、ナビゲーションサーバ１１からＥＰＧを取得済みであり、ＴＶ装置７０にメニューを表示しているものとし、エンドユーザはその内の１コンテンツを選択（リンク情報を選択）したものとする。
【００６４】
まず、ＳＴＢ６０は、ナビゲーションサーバ１１に対して、映像コンテンツを保持するＵＲＬやファイル名等の情報を問い合わせる（ステップＣ１）。ナビゲーションサーバ１１は、この問い合わせに対し、映像コンテンツのＵＲＬやファイル名等の情報をＳＴＢ６０へ通知する（ステップＣ２）。
【００６５】
ここで、ＳＴＢ６０は、実コンテンツの配信に先立ち、回線の利用可能なビットレート測定のために、予めプレーヤ等に情報として付加されたテスト用コンテンツのセットアップ要求を、ステップＣ２で取得したＵＲＬが示す配信サーバ１２に対して要求する（ステップＣ３）。なお、テスト用コンテンツの情報は、最初のＥＰＧ画面に含まれていても良い。
【００６６】
配信サーバ１２は、ＳＴＢ６０からのテスト用コンテンツセットアップ要求を受信した後、配信のための準備を実行し、準備完了後、セットアップ完了をＳＴＢ６０に通知する（ステップＣ４）。
【００６７】
ＳＴＢ６０は、配信サーバ１２からの応答に対して、テスト用コンテンツの配信開始要求を送信する（ステップＣ５）。これに対し、配信サーバ１２は、配信開始要求に対して応答し（ステップＣ６）、テスト用コンテンツの配信を開始する（ステップＣ７）。
【００６８】
ここで、ＳＴＢ６０は、配信サーバ１２からテスト用コンテンツを受信し、その時の平均受信ビットレートを計測する（ステップＣ８）。このビットレートの計測方法は、例えば第１実施形態において説明した、図４に示すフローチャートの手順に従って実行する。
【００６９】
なお、図４で説明して受信ビットレートの測定方法以外にも、例えばテストファイルの容量や時間を予めＳＴＢ６０と配信サーバ１２間で取り決めておき、そのファイル全体を受信した時間でファイル容量を割って受信ビットレートを決定する方法を用いることもできる。また、受信ビットレートの測定でなく、受信したコンテンツデータを再生して（再生結果を表示しなくても良い）、コンテンツデータをバッファリングしているバッファのポインタ、すなわちコンテンツデータの書き込み位置を示すポインタと再生のために読み出される位置を示すポインタとがある一定範囲内で移動していることにより、該当テストコンテンツのビットレートの視聴は可能と判断する方法もある。すなわち、バッファに対するコンテンツデータの書き込みと読み出しの両方が一定範囲内で安定しているということは、コンテンツの安定した視聴が可能な状態であると判別できる。この場合、配信ビットレートが早い順にテストを実行し（例えば１Ｍｂｐｓ、７５０ｋｂｐｓ、５００ｋｂｐｓの順）、バッファのポインタが一定範囲内に収まらないことが確認された場合にはその時の配信ビットレートを表示し、１Ｍｂｐｓ、７５０ｋｂｐｓ、５００ｋｂｐｓの何れの場合もバッファのポインタが一定範囲内であれば、問題なしであることをテスト結果として表示する等の方法がある。
【００７０】
受信ビットレートの測定が終了すると、ＳＴＢ６０は、受信レートの計測結果を配信サーバ１２に対して通知する（ステップＣ９）。配信サーバ１２は、この計測結果を受信し、受信確認通知をＳＴＢ６０に送信する（ステップＣ１０）。
【００７１】
次に、ＳＴＢ６０は、受信レートの測定結果と、それに基づき配信サーバ１２から配信可能なビットレートの選択肢をユーザに提示する表示のために、配信サーバ１２に対してテスト結果画面要求を送信する（ステップＣ１１）。この時のテスト結果画面要求のファイル名に関してはステップＣ１０の応答に含まれていても良いし、またステップＣ２において映像や音声のファイル名と同時にテスト結果画面ファイル名として取得しておいても良い。
【００７２】
配信サーバ１２は、ＳＴＢ６０から通知された受信レートの計測結果に基づき、その受信レートを超えない範囲の配信ビットレートと、該当する配信ビットレート用として用意されているコンテンツファイルのファイル名とそのファイルの内容を確認するためのサムネイル等を構成してＳＴＢ６０に送信する（ステップＣ１２）。この時、コンテンツファイルに対応するプレビューファイルを実際に送信し、ＳＴＢ６０によってプレビュー映像を表示させて、配信ビットレートと映像品質の関係を確認させるようにしても良い。
【００７３】
例えば、ＳＴＢ６０におけるテスト用コンテンツについての受信ビットレートの測定結果が８００ｋｂｐｓであった場合、ユーザが選択したコンテンツについて５００ｋｂｐｓ、７５０ｋｂｐｓ、１Ｍｂｐｓの配信ビットレート用のコンテンツファイルが用意されている場合、５００ｋｂｐｓと７５０ｋｂｐｓのファイルのみ視聴可能という様に画面を構成してＳＴＢ６０に対して送信する。
【００７４】
図９には、ＳＴＢ６０によってＴＶ装置７０の画面に表示されるテスト結果画面の一例を示している。図９に示すテスト結果画面では、コンテンツファイルに対するサムネイル画像が表示される表示領域１００の他（プレビュー映像を表示させても良い）、ユーザが選択可能な配信ビットレートの範囲１０２と、その中で選択中の配信ビットレートを示す選択カーソル１０４が表示されている。選択カーソル１０４は、ユーザによるリモコン操作によって、範囲１０２内で移動させることができる。
【００７５】
ここで、ＳＴＢ６０は、ユーザによるリモコン操作によって、テスト結果画面中での選択カーソル１０４の移動が指示されると、この指示に応じて範囲１０２内で選択対象とする配信ビットレートを変更する。そして、選択実行が指示された場合、ＳＴＢ６０は、その時の選択カーソル１０４が示す配信ビットレート、例えば７５０ｋｂｐｓをユーザ指定の配信ビットレートに確定し、その配信ビットに対応するコンテンツのファイル名情報を入手するための問い合わせを配信サーバ１２に送信する（ステップＣ１３）。配信サーバ１２は、ＳＴＢ６０からの問い合わせに対して、ユーザが指定した配信ビットレートのコンテンツファイルのファイル名情報をＳＴＢ６０に通知する（ステップＣ１４）。
【００７６】
ここでは、説明を簡単にするため、ステップＣ９からのステップを全てＳＴＢ６０と配信サーバ１２間で実行するものとして説明したが、配信サーバ１２では５００ｋｂｐｓ、７５０ｋｂｐｓ、１Ｍｂｐｓの実コンテンツファイルのみ保持しておき、配信サーバ１２がナビゲーションサーバ１１（あるいはそのデータベース）を利用して、ステップＣ９〜Ｃ１４を実行することも可能である。また、ステップＣ１１，Ｃ１２は、ＳＴＢ６０が自身の不揮発メモリ上に記憶している画面情報等を利用して、クライアント側でテスト結果を表示することも可能である。また、第１実施形態で説明したように、ユーザからの指示に応じてサンプル画像を読み出して表示させることも可能である（図６、図７参照）。
【００７７】
また、ＳＴＢ６０における受信レート測定のために、テスト用コンテンツを配信すると説明したが、単純にＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）等を利用したファイル転送で受信ビットレートを測定するとしても良い。
【００７８】
次に、配信サーバ１２から実配信コンテンツのファイル名を取得したＳＴＢ６０は、セットアップ要求を実コンテンツの該ファイル名と共に配信サーバ１２に送信する（ステップＣ１５）。配信サーバ１２は、この要求を受信した後、コンテンツの配信のための準備を実行し、準備完了後、セットアップ完了をＳＴＢ６０に通知する（ステップＣ１６）。
【００７９】
この後、ＳＴＢ６０は、実コンテンツの配信開始要求を送信する（ステップＣ１７）。配信サーバ１２は、配信開始要求に対して応答し（ステップＣ１８）、受信レートの測定結果を利用して決定された適正な配信ビットレートのコンテンツファイルをＳＴＢ６０に対して配信する（ステップＣ１９）。
【００８０】
このようにして、第２実施形態におけるストリーミング配信システムでは、実際のコンテンツデータの配信に先立ち配信サーバ１２側から送信されるテスト用コンテンツを用いて受信ビットレートをＳＴＢ６０において計測し、この結果をもとに配信サーバ１２が配信可能な配信ビットレートの範囲を決定し、その中からユーザによって視聴に適した配信ビットレートを選択させることができる。
【００８１】
なお、上述した実施形態において記載した手法は、コンピュータに実行させることのできるプログラムとして、例えば磁気ディスク（フレキシブルディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）、半導体メモリなどの記録媒体に書き込んで各種装置に提供することができる。また、通信媒体により伝送して各種装置に提供することも可能である。本装置を実現するコンピュータは、記録媒体に記録されたプログラムを読み込み、または通信媒体を介してプログラムを受信し、このプログラムによって動作が制御されることにより、上述した処理を実行する。
【００８２】
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【００８３】
【発明の効果】
以上詳述したように本発明によれば、受信ビットレート測定を実行し、この結果を用いてネットワークの状況に応じた配信ビットレートの選択をクライアント側で実行することが可能となる。
【図面の簡単な説明】
【図１】本実施形態に係わるストリーミング配信システムの構成を示すブロック図。
【図２】本実施形態におけるＳＴＢ６０の構成を示すブロック図。
【図３】第１実施形態におけるＳＴＢ６０側と配信サーバ１２側の手続きのシーケンスを示す図。
【図４】受信レート測定処理について説明するためのフローチャート。
【図５】受信レートの測定結果が表示されたＴＶ装置７０の画面の表示例を示す図。
【図６】サンプル表示用のコンテンツファイルの記録を概念的に示す図。
【図７】サンプル表示用のコンテンツファイルの記録を概念的に示す図。
【図８】第２実施形態におけるＳＴＢ６０側と配信サーバ１２側の手続きのシーケンスを示す図。
【図９】ＳＴＢ６０によってＴＶ装置７０の画面に表示されるテスト結果画面の一例を示す図。
【符号の説明】
１０…コンテンツ配信システム、１１…ナビゲーションサーバ、１２…配信サーバ、１２ａ…配信情報データベース、１４，２２，４２…ルータ、２０，４０…ＰＯＰ（Ｐｏｉｎｔ  ｏｆ  Ｐｒｅｓｅｎｓｅ）、３０…ＩＳＰバックボーン、５０…ＰＣ（パーソナルコンピュータ）、６０…ＳＴＢ（Ｓｅｔｔｏｐ  Ｂｏｘ）、７０…ＴＶ装置、８０…ＰＨＹ部、８１…ＭＡＣ、８２…ＨＤＤコントローラ、８３…ＨＤＤ、８４…ビデオデコーダ、８５…フラッシュメモリ、８６…メモリ、８７…ＣＰＵ、８８…ＩＲ−ＩＦ（インタフェース）、８９…ＮＳＴＣエンコーダ。
【図１】
2004289628.tif 000003
【図２】
2004289628.tif 000004
【図３】
2004289628.tif 000005
【図４】
2004289628.tif 000006
【図５】
2004289628.tif 000007
【図６】
2004289628.tif 000008
【図７】
2004289628.tif 000009
【図８】
2004289628.tif 000010
【図９】
2004289628.tif 000011