(57)【特許請求の範囲】
【請求項１】
クライアント機器とともに動画配信システムにおいて利用されるサーバ機器であって、
動画を録画して所定のデータ単位から構成される動画データを生成するとともに前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を生成する録画処理部と、
前記動画データおよび前記管理情報を蓄積する記録媒体と、
クライアント機器から前記管理情報の取得要求、および、前記データ単位の送信要求を受信することが可能な受信部と、
前記取得要求に応答して前記管理情報を読み出し、前記送信要求に応答して前記データ単位を読み出して送信を指示する要求処理部と、
指示された前記管理情報および前記データ単位を送信する送信部と
を備え、前記管理情報を送信した後に前記データ単位の送信要求を受信したときには、前記要求処理部は、前記送信要求によって特定された前記データ単位とともに最新の管理情報の少なくとも一部を送信を指示する、サーバ機器。
【請求項２】
前記要求処理部は、前記管理情報を送信した後から、前記送信要求によって特定された少なくとも１つのデータ単位を送信するまでの間に更新された管理情報の部分の送信を指示する、請求項１に記載のサーバ機器。
【請求項３】
前記録画処理部において録画が停止されたとき、前記要求処理部は録画が停止されたことを示す通知の送信を指示し、前記送信部は前記送信要求によって特定された前記データ単位とともに前記通知を送信する、請求項１に記載のサーバ機器。
【請求項４】
前記送信部は、前記データ単位、前記最新の管理情報の少なくとも一部および前記通知の２以上を、１つのメッセージ内の区画に識別可能に格納して送信する、請求項３に記載のサーバ機器。
【請求項５】
前記動画データは、ＭＰＥＧ規格に準拠したストリームに関するデータであり、  前記データ単位はビデオ・オブジェクト・ユニットである、請求項１に記載のサーバ機器。
【請求項６】
前記録画処理部は、前記動画の再生に関する属性を前記データ単位ごとにさらに対応付けた管理情報を生成する、請求項１に記載のサーバ機器。
【請求項７】
サーバ機器とともに動画配信システムにおいて利用されるクライアント機器であって、
前記サーバ機器は、動画を録画して所定のデータ単位から構成される動画データを蓄積し、かつ、前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を蓄積し、
前記サーバ機器に対して、前記管理情報の取得要求および前記データ単位の送信要求を送信することが可能な送信部と、
前記取得要求に応答した前記サーバ機器から前記管理情報を受信し、前記送信要求に応答した前記サーバ機器から前記データ単位を受信する受信部と、
前記管理情報に基づいてストリーミング再生に必要なデータ単位を特定し、前記送信要求の送信を指示する再生制御部と、
受信したデータ単位に基づいて前記動画を再生する動画出力処理部と
を備え、前記受信部は、前記サーバ機器から前記データ単位とともに最新の管理情報の少なくとも一部を受信する、クライアント機器。
【請求項８】
前記受信部は、前記取得要求に基づいて前記サーバ機器が前記管理情報を送信した後から、前記送信要求によって特定された少なくとも１つのデータ単位を送信するまでの間に更新された管理情報の部分を受信する、請求項７に記載のクライアント機器。
【請求項９】
前記受信部は、前記サーバ機器から前記データ単位とともに、前記サーバ機器において録画が停止されたことを示す通知を受信する、請求項７に記載のクライアント機器。
【請求項１０】
前記受信部は、前記データ単位、前記最新の管理情報の少なくとも一部および前記通知の２以上が格納された１つのメッセージを受信し、それぞれを識別して取り出す、請求項９に記載のクライアント機器。
【請求項１１】
前記動画データは、ＭＰＥＧ規格に準拠したストリームに関するデータであり、  前記データ単位はビデオ・オブジェクト・ユニットである、請求項７に記載のクライアント機器。
【請求項１２】
前記受信部は、前記動画の再生に関する属性が前記データ単位ごとにさらに対応付けられた管理情報を受信し、
前記動画出力処理部は、前記属性および前記データ単位に基づいて前記動画を再生する、請求項７に記載のクライアント機器。
【請求項１３】
所定のデータ単位から構成される動画データをサーバ機器から受信して、クライアント機器が動画のストリーミング再生を行う動画配信システムであって、
前記サーバ機器は、
動画を録画して所定のデータ単位から構成される動画データを生成するとともに前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を生成する録画処理部と、
前記動画データおよび前記管理情報を蓄積する記録媒体と、
クライアント機器から前記管理情報の取得要求、および、前記データ単位の送信要求を受信することが可能なサーバ受信部と、
前記取得要求に応答して前記管理情報を読み出し、前記送信要求に応答して前記データ単位を読み出して送信を指示する要求処理部と、
指示された前記管理情報および前記データ単位を送信するサーバ送信部と
を備えており、
前記クライアント機器は、
前記サーバ機器に対して、前記管理情報の取得要求および前記データ単位の送信要求を送信することが可能なクライアント送信部と、
前記取得要求に応答した前記サーバ機器から前記管理情報を受信し、前記送信要求に応答した前記サーバ機器から前記データ単位を受信するクライアント受信部と、
前記管理情報に基づいてストリーミング再生に必要なデータ単位を特定し、前記送信要求の送信を指示する再生制御部と、
受信したデータ単位に基づいて前記動画を再生する動画出力処理部と
を備えており、
前記管理情報を送信した後に前記データ単位の送信要求を受信したときには、
前記サーバ機器の要求処理部は、前記送信要求によって特定された前記データ単位とともに最新の管理情報の少なくとも一部の送信を指示し、
前記クライアント受信部は、前記サーバ機器から前記データ単位とともに前記最新の管理情報の少なくとも一部を受信する、動画配信システム。
【請求項１４】
クライアント機器とともに動画配信システムにおいて利用されるサーバ機器によって実行される方法であって、
動画を録画して所定のデータ単位から構成される動画データを生成するとともに前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を生成するステップと、
前記動画データおよび前記管理情報を蓄積するステップと、
クライアント機器から前記管理情報の取得要求を受信するステップと、
前記取得要求の受信に応答して前記管理情報を送信するステップと、
送信された前記管理情報に基づいて前記クライアント機器が特定したデータ単位に関する送信要求を受信するステップと、
前記送信要求の受信に応答して、指定された前記データ単位を読み出して、読み出した前記データ単位を送信するステップと
を包含し、前記管理情報を送信した後に前記データ単位の送信要求を受信したときには、前記データ単位を送信するステップは、前記送信要求によって特定された前記データ単位とともに最新の管理情報の少なくとも一部を送信する、方法。
【請求項１５】
サーバ機器とともに動画配信システムにおいて利用されるクライアント機器によって実行される方法であって、
前記サーバ機器は、動画を録画して所定のデータ単位から構成される動画データを蓄積し、かつ、前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を蓄積しており、
前記サーバ機器に対して、前記管理情報の取得要求を送信するステップと、
前記取得要求に応答した前記サーバ機器から前記管理情報を受信するステップと、
前記管理情報に基づいてストリーミング再生に必要なデータ単位を特定し、前記送信要求の送信を指示するステップと、
前記送信要求に応答した前記サーバ機器から前記データ単位を受信するステップと、
受信したデータ単位に基づいて前記動画を再生するステップと
を包含し、前記データ単位を受信するステップは、前記サーバ機器から前記データ単位とともに最新の管理情報の少なくとも一部を受信する、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画の早送り再生や早戻し再生などの特殊再生を可能にする技術に関する。より具体的には、本発明は、ネットワーク環境においてサーバ機器が録画を実行している間に、クライアント機器がその動画をストリーミング再生する際の特殊再生を可能にする技術に関する。
【背景技術】
【０００２】
近年、ハードディスクや光ディスクに放送番組等を録画できる機器の普及が進んでいる。ハードディスクや光ディスクはランダムアクセスが可能な記録媒体であるため、多くの機器では、ユーザは番組の録画を実行しながら、その番組の録画された部分を再生し視聴することができる。
【０００３】
そのような機器の中には、ネットワークに接続されて動画データを他の機器に配信する機能（サーバ機能）を有するものが存在する。以下、サーバ機能を有する機器を「サーバ機器」といい、番組データの配信を受ける機器を「クライアント機器」という。クライアント機器は、ネットワークを介してサーバ機器から動画データを受信しながら動画を再生することができる。このような再生をストリーミング再生という。
【０００４】
クライアント機器は、サーバ機器に蓄積された録画済みの動画をストリーミング再生することもできる。このストリーミング再生は早送り再生や早戻し再生などの特殊再生をも含む。例えば特許文献１は、ネットワークを介したストリーミング再生中に特殊再生を可能にする技術を開示している。特許文献１に記載された技術によれば、サーバ機器はハードディスクに動画を録画した後、その動画を解析して特殊再生に必要な管理情報を生成しＨＤＤにさらに記録する。その動画のストリーミング再生を行う際には、クライアント機器は事前に管理情報をサーバ機器から取得し、取得した管理情報に基づいて動画データをサーバ機器から取得する。これにより、ストリーミング再生中に特殊再生を行ったときでも、動画データを蓄積するためのクライアント機器側のメモリ容量を低減できる。
【特許文献１】特開２００３−４６９２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし上述のネットワーク動画再生方法では、動画データの配信の開始後に録画された動画部分の特殊再生ができないという問題があった。その理由は、クライアント機器が取得した管理情報には、配信開始後に録画された動画部分の管理情報が含まれていないからである。よって上述の方法では、現在録画が行われている動画をストリーミング再生している時に特殊再生をすることができない。
【０００６】
また管理情報には動画の解像度等の属性が記述されているため、動画データの配信の開始後に属性が変化したときには、配信の開始後に録画された動画部分を再生することができないという問題も存在する。
【０００７】
本発明の目的は、ストリーミング再生の開始後に録画された動画部分の特殊再生を可能にすることである。
【課題を解決するための手段】
【０００８】
本発明によるサーバ機器は、クライアント機器とともに動画配信システムにおいて利用される。前記サーバ機器は、動画を録画して所定のデータ単位から構成される動画データを生成するとともに前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を生成する録画処理部と、前記動画データおよび前記管理情報を蓄積する記録媒体と、クライアント機器から前記管理情報の取得要求、および、前記データ単位の送信要求を受信することが可能な受信部と、前記取得要求に応答して前記管理情報を読み出し、前記送信要求に応答して前記データ単位を読み出して送信を指示する要求処理部と、指示された前記管理情報および前記データ単位を送信する送信部とを備えている。前記管理情報を送信した後に前記データ単位の送信要求を受信したときには、前記要求処理部は、前記送信要求によって特定された前記データ単位とともに最新の管理情報の少なくとも一部の送信を指示する。
【０００９】
前記要求処理部は、前記管理情報を送信した後から、前記送信要求によって特定された少なくとも１つのデータ単位を送信するまでの間に更新された管理情報の部分の送信を指示してもよい。
【００１０】
前記録画処理部において録画が停止されたとき、前記要求処理部は録画が停止されたことを示す通知の送信を指示し、前記送信部は前記送信要求によって特定された前記データ単位とともに前記通知を送信してもよい。
【００１１】
前記送信部は、前記データ単位、前記最新の管理情報の少なくとも一部および前記通知の２以上を、１つのメッセージ内の区画に識別可能に格納して送信してもよい。
【００１２】
前記動画データは、ＭＰＥＧ規格に準拠したストリームに関するデータであり、  前記データ単位はビデオ・オブジェクト・ユニットであってもよい。
【００１３】
前記録画処理部は、前記動画の再生に関する属性を前記データ単位ごとにさらに対応付けた管理情報を生成してもよい。
【００１４】
本発明によるクライアント機器は、サーバ機器とともに動画配信システムにおいて利用される。前記サーバ機器は、動画を録画して所定のデータ単位から構成される動画データを蓄積し、かつ、前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を蓄積する。前記クライアント機器は、前記サーバ機器に対して、前記管理情報の取得要求および前記データ単位の送信要求を送信することが可能な送信部と、前記取得要求に応答した前記サーバ機器から前記管理情報を受信し、前記送信要求に応答した前記サーバ機器から前記データ単位を受信する受信部と、前記管理情報に基づいてストリーミング再生に必要なデータ単位を特定し、前記送信要求の送信を指示する再生制御部と、受信したデータ単位に基づいて前記動画を再生する動画出力処理部とを備えている。前記受信部は、前記サーバ機器から前記データ単位とともに最新の管理情報の少なくとも一部を受信する。
【００１５】
前記受信部は、前記取得要求に基づいて前記サーバ機器が前記管理情報を送信した後から、前記送信要求によって特定された少なくとも１つのデータ単位を送信するまでの間に更新された管理情報の部分を受信してもよい。
【００１６】
前記受信部は、前記サーバ機器から前記データ単位とともに、前記サーバ機器において録画が停止されたことを示す通知を受信してもよい。
【００１７】
前記受信部は、前記データ単位、前記最新の管理情報の少なくとも一部および前記通知の２以上が格納された１つのメッセージを受信し、それぞれを識別して取り出してもよい。
【００１８】
前記動画データは、ＭＰＥＧ規格に準拠したストリームに関するデータであり、前記データ単位はビデオ・オブジェクト・ユニットであってもよい。
【００１９】
前記受信部は、前記動画の再生に関する属性が前記データ単位ごとにさらに対応付けられた管理情報を受信し、前記動画出力処理部は、前記属性および前記データ単位に基づいて前記動画を再生してもよい。
【００２０】
本発明による動画配信システムでは、所定のデータ単位から構成される動画データをサーバ機器から受信して、クライアント機器が動画のストリーミング再生を行う。前記動画配信システムのサーバ機器は、動画を録画して所定のデータ単位から構成される動画データを生成するとともに前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を生成する録画処理部と、前記動画データおよび前記管理情報を蓄積する記録媒体と、クライアント機器から前記管理情報の取得要求、および、前記データ単位の送信要求を受信することが可能なサーバ受信部と、前記取得要求に応答して前記管理情報を読み出し、前記送信要求に応答して前記データ単位を読み出して送信を指示する要求処理部と、指示された前記管理情報および前記データ単位を送信するサーバ送信部とを備えている。また動画配信システムのクライアント機器は、前記サーバ機器に対して、前記管理情報の取得要求および前記データ単位の送信要求を送信することが可能なクライアント送信部と、前記取得要求に応答した前記サーバ機器から前記管理情報を受信し、前記送信要求に応答した前記サーバ機器から前記データ単位を受信するクライアント受信部と、前記管理情報に基づいてストリーミング再生に必要なデータ単位を特定し、前記送信要求の送信を指示する再生制御部と、受信したデータ単位に基づいて前記動画を再生する動画出力処理部とを備えている。前記管理情報を送信した後に前記データ単位の送信要求を受信したときには、前記サーバ機器の要求処理部は、前記送信要求によって特定された前記データ単位とともに最新の管理情報の少なくとも一部の送信を指示し、前記クライアント受信部は、前記サーバ機器から前記データ単位とともに前記最新の管理情報の少なくとも一部を受信する。
【００２１】
本発明による方法は、クライアント機器とともに動画配信システムにおいて利用されるサーバ機器によって実行される。前記方法は、動画を録画して所定のデータ単位から構成される動画データを生成するとともに前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を生成するステップと、前記動画データおよび前記管理情報を蓄積するステップと、クライアント機器から前記管理情報の取得要求を受信するステップと、前記取得要求の受信に応答して前記管理情報を送信するステップと、送信された前記管理情報に基づいて前記クライアント機器が特定したデータ単位に関する送信要求を受信するステップと、前記送信要求の受信に応答して、指定された前記データ単位を読み出して、読み出した前記データ単位を送信するステップとを包含する。前記管理情報を送信した後に前記データ単位の送信要求を受信したときには、前記データ単位を送信するステップは、前記送信要求によって特定された前記データ単位とともに最新の管理情報の少なくとも一部を送信する。
【００２２】
本発明による方法は、サーバ機器とともに動画配信システムにおいて利用されるクライアント機器によって実行される。前記サーバ機器は、動画を録画して所定のデータ単位から構成される動画データを蓄積し、かつ、前記データ単位ごとに再生時間とデータサイズとを対応付けた管理情報を蓄積している。前記方法は、前記サーバ機器に対して、前記管理情報の取得要求を送信するステップと、前記取得要求に応答した前記サーバ機器から前記管理情報を受信するステップと、前記管理情報に基づいてストリーミング再生に必要なデータ単位を特定し、前記送信要求の送信を指示するステップと、前記送信要求に応答した前記サーバ機器から前記データ単位を受信するステップと、受信したデータ単位に基づいて前記動画を再生するステップとを包含する。前記データ単位を受信するステップは、前記サーバ機器から前記データ単位とともに最新の管理情報の少なくとも一部を受信する。
【発明の効果】
【００２３】
本発明の動画配信システムによれば、サーバ機器が最新の管理情報の差分を動画データに混ぜてクライアント機器に送信するため、録画中の動画をクライアント機器がストリーミング再生する際に、ストリーミング再生を開始した後に更新された箇所についても特殊再生が可能になる。また、録画中の動画の属性情報が録画中に変化した場合でも、クライアント機器がストリーミング再生を継続することが可能になる。
【発明を実施するための最良の形態】
【００２４】
以下、添付の図面を参照しながら、本発明の実施形態を説明する。
【００２５】
（実施形態１）
本実施形態においては、サーバ機器がネットワークを介してクライアント機器に動画のデータを配信する動画配信システムを説明する。まずはじめに配信の対象となる動画データのデータ構造を説明し、その後動画配信システムにおける各機器の機能および動作を説明する。以下の説明においては「動画」とは映像および音声の両方を含むコンテンツ（放送番組）を指すとするが、映像および音声の少なくとも一方であればよい。
【００２６】
本実施形態においては、動画データとしてＤＶＤビデオレコーディング規格（以下「ＶＲ規格」と記述する）に準拠したＭＰＥＧ２プログラムストリームを例に挙げて説明する。ＶＲ規格のＭＰＥＧ２プログラムストリームは記録型のＤＶＤ等にリアルタイムで動画を録画する際に有用なデータ構造を有している。サーバ機器による動画の録画および録画された動画の配信は、ＶＲ規格のＭＰＥＧ２プログラムストリームで行われるとする。
【００２７】
図１は、ＶＲ規格に準拠したＭＰＥＧ２プログラムストリーム１のデータ構造を示す。以下、このストリームを単に「プログラムストリーム１」と称する。
【００２８】
プログラムストリーム１は、複数のビデオオブジェクト２（ＶＯＢ＃１、＃２、・・・、＃ｋ）を含んでいる。例えば、プログラムストリーム１が録画されたコンテンツとすると、各ＶＯＢは、ユーザが録画を開始してから録画を停止するまでの１回の録画動作に対応する動画データが格納されている。
【００２９】
各ＶＯＢは、複数のＶＯＢユニット１０（ＶＯＢＵ＃１、＃２、・・・、＃ｎ）を含んでいる。各ＶＯＢＵは、映像の再生時間にして０．４秒から１秒程度のデータを含むデータ単位である。以下、最初に配置されたＶＯＢＵ＃１とその次に配置されたＶＯＢＵ＃２を例にして、ＶＯＢＵのデータ構造を説明する。
【００３０】
ＶＯＢＵ＃１は、複数のパックから構成されている。プログラムストリーム５０内の各パックのデータ長（パック長）は一定（２キロバイト（２０４８バイト））である。ＶＯＢＵの先頭には、図１に"Ｒ"で示されるリアルタイムインフォメーションパック（ＲＤＩパック）１１が配置されている。ＲＤＩパック１１の後には、"Ｖ"で示されるビデオパック（ビデオパック１２ａ、１２ｂ等）および"Ａ"で示されるオーディオパック（オーディオパック１３等）が複数含まれている。
【００３１】
各パックは以下の情報を格納している。すなわち、ＲＤＩパック１１は、プログラムストリーム１の再生を制御するために用いられる情報、例えばＶＯＢＵの再生タイミングを示す情報や、プログラムストリーム１のコピーを制御するための情報を格納している。ビデオパック１２ａ、１２ｂ等は、ＭＰＥＧ２圧縮されたビデオデータを格納している。オーディオパック１３等は、例えばＭＰＥＧ２−オーディオ規格によって圧縮されたオーディオデータを格納している。近接するビデオパックおよびオーディオパックには、例えば、同期して再生されるビデオデータおよびオーディオデータが格納されているが、それらの配置（順序）は任意である。
【００３２】
ＶＯＢＵ＃２もまた、複数のパックから構成されている。ＶＯＢＵ＃２の先頭には、ＲＤＩパック１４が配置され、その後、ビデオパック１５およびオーディオパック１６等が複数配置されている。各パックに格納される情報の内容はＶＯＢＵ＃１と同様である。
【００３３】
図２は、プログラムストリーム１内のビデオパックのデータ構造を示す。以下、ビデオパック１２ａ、１２ｂを例として説明する。ビデオパック１２ａは、ＭＰＥＧ２圧縮されたビデオデータ１２ａ−１を格納している。また、ビデオパック１２ａはビデオパックであることを特定するパックヘッダ１２ａ−２およびＰＥＳパケットヘッダ１２ａ−３の他、さらにＶＯＢＵの最初のビデオパックであればパックヘッダ１２ａ−２の中にシステムヘッダ（図示せず）も含まれる。
【００３４】
図２に示すビデオパック１２ａのビデオデータ１２ａ−１は、後続のビデオパック１２ｂ以後のビデオデータ１２ｂ−１等とともにＩピクチャ１９−１のデータを構成する。さらにＩピクチャに続くＢピクチャ１９−２や、Ｐピクチャを構成するビデオパックが続けて記録される。
【００３５】
また、ビデオデータ１２ａ−１は、シーケンスヘッダ１７およびＧＯＰヘッダ１８を含んでいる。ＭＰＥＧ２規格では、ビデオピクチャを複数まとめた「グループ・オブ・ピクチャ」（Group Of Picture；ＧＯＰ）が規定されており、ＧＯＰヘッダ１８はその先頭を表す。ＧＯＰの先頭ピクチャは必ずＩピクチャである。
【００３６】
次に、図３を参照しながら本実施形態によるネットワークの構成を説明する。図３は、本実施形態による動画配信システム１００の構成を示す。動画配信システム１００は、サーバ機器１０１およびクライアント機器１０２をネットワーク１０３を介して接続することによって構成されている。動画配信システム１００においては、クライアント機器１０２がサーバ機器１０１に対してサーバ機器１０１が保持するＡＶデータ（プログラムストリーム１）のストリーミング再生要求を送信する。その要求に対して、サーバ機器１０１はネットワーク１０３を介してプログラムストリーム１を送信する。クライアント機器１０２はプログラムストリーム１を受信して逐次再生することによってストリーミング再生を行う。ネットワーク１０３は、例えば、インターネットや家庭内ＬＡＮなどである。
【００３７】
本動画配信システム１００の特徴のひとつは、サーバ機器１０１が動画を録画している最中にクライアント機器１０２がその動画のストリーミング再生を行っている環境において、サーバ機器１０１が特殊再生に必要な管理情報の差分を動画データとともにクライアント機器１０２に送出することにある。管理情報の差分とは、最後に動画データを送出した後から、次の動画データを送出するまでに更新された管理情報の部分をいう。これにより、クライアント機器１０２は録画中の動画の早送り再生および早戻し再生などの特殊再生を実現することができる。またクライアント機器１０２においては必要なＲＡＭ容量が小さくてすむため、実装上も有利になる。
【００３８】
図４は、サーバ機器１０１のハードウェア構成の例を示す。サーバ機器１０１は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、テレビチューナ２０４、Ａ／Ｄコンバータ２０５、ＭＰＥＧ−２エンコーダ２０６、ハードディスクドライブ（ＨＤＤ）２０７、ネットワークインターフェイス２０８、リモコン受信機２０９を有する。なお、図４にはリモコン送信機２１０が記載されているが、これは遠隔操作のための入力装置であり、サーバ機器１０１とは別体である。
【００３９】
サーバ機器１０１の各構成要素の動作および機器全体の動作は、主としてＣＰＵ２０１がＲＯＭ２０３に格納されたプログラムをＲＡＭ２０２に展開し、実行することにより実現される。より詳細な機能の説明は、図６を参照しながら後述する。
【００４０】
テレビチューナ２０４は、例えばアナログテレビ放送信号を受信して特定の放送局の信号のみを抽出する。このテレビ放送信号は一般に映像および音声（すなわち動画）を構成する各信号を含んでいる。抽出された信号はアナログ信号である。
【００４１】
Ａ／Ｄコンバータ２０５は、抽出されたアナログ信号をデジタル信号に変換する。ＭＰＥＧ−２エンコーダ２０６は、デジタル信号に基づいてＭＰＥＧ規格にしたがった圧縮符号化処理を行い、プログラムストリーム１を生成する。ビデオデータに関して言えば、ＭＥＰＧ−２エンコーダ３０４は、デジタルビデオ信号をＭＰＥＧ規格に基づいて圧縮符号化しピクチャデータを得る。そしてそのピクチャデータを図２に示すデータ構造にしたがってパック化し、プログラムストリーム１を生成する。なおＭＰＥＧ−２エンコーダ２０６が圧縮符号化処理までを行い、圧縮符号化された映像・音声データからＣＰＵ２０１がプログラムストリーム１を生成してもよい。
【００４２】
ＨＤＤ２０７は、生成されたプログラムストリーム１をハードディスクに順次格納する。ネットワークインターフェイス２０８は、例えばイーサネット（登録商標）に接続するためのネットワーク端子であり、サーバ機器１０１をネットワーク１０３に接続する。
【００４３】
ユーザがリモコン送信機２１０を利用してサーバ機器１０１に対する操作を入力すると、リモコン送信機２１０はユーザの操作入力に応じた操作信号を出力する。リモコン受信機２０９は操作信号を受信して、その信号をＣＰＵ２０１に送る。ＣＰＵ２０１はその操作信号に応じた処理を指示する。なお、リモコン送信機２１０に代えて、サーバ機器１０１に入力ボタンを設けてもよい。入力ボタンを利用しても、ユーザの操作入力に応じた操作信号をサーバ機器１０１に入力することができる。
【００４４】
次に、図５はクライアント機器１０２のハードウェア構成の例を示す。クライアント機器１０２は、ＣＰＵ３０１、ＲＡＭ３０２、ＲＯＭ３０３、ＭＰＥＧ−２デコーダ３０４、Ｄ／Ａコンバータ３０５、動画出力部３０６、ネットワークインターフェイス３０７、リモコン受信機３０８、リモコン送信機３０９、ディスプレイ３１０から構成される。なお、図５にはリモコン送信機３０９が記載されているが、これは遠隔操作のための入力装置であり、クライアント機器１０２とは別体である。
【００４５】
クライアント機器１０２の各構成要素の動作および機器全体の動作は、主としてＣＰＵ３０１がＲＯＭ３０３に格納されたプログラムをＲＡＭ３０２に展開し、実行することにより実現される。より詳細な機能の説明は、図６を参照しながら後述する。
【００４６】
ＭＥＰＧ−２デコーダ３０４は、プログラムストリーム内のビデオデータおよびオーディオデータを抽出して復号化し、動画として出力する。ビデオデータに関して言えば、ＭＥＰＧ−２デコーダ３０４は、図１および２に示す階層構造にしたがってプログラムストリームからピクチャデータを抽出し、ピクチャデータをＭＰＥＧ規格に基づいて復号化する。Ｄ／Ａコンバータ３０５は、動画のデジタル信号を外部のディスプレイ３１０に出力する。ネットワークインターフェイス３０７は、例えばイーサネット（登録商標）に接続するためのネットワーク端子であり、クライアント機器１０２をネットワーク１０３に接続する。
【００４７】
ユーザがリモコン送信機３０９を利用してクライアント機器１０２に対する操作を入力すると、リモコン送信機３０８はユーザの操作入力に応じた操作信号を出力する。リモコン受信機３０８は操作信号を受信して、その信号をＣＰＵ３０１に送る。ＣＰＵ３０１はその操作信号に応じた処理を指示する。なお、リモコン送信機３０９に代えて、クライアント機器１０２に入力ボタンを設けてもよい。入力ボタンを利用しても、ユーザの操作入力に応じた操作信号をクライアント機器１０２に入力することができる。
【００４８】
図６は、サーバ機器１０１とクライアント機器１０２の機能ブロックの構成を示す。サーバ機器１０１の機能ブロックは、図４に示すサーバ機器１０１のＣＰＵ２０１がコンピュータプログラムを実行することにより、ＣＰＵ２０１を含む各構成要素によって実現されている。また図５に示すクライアント機器１０２の機能ブロックも同様に、図５に示すクライアント機器１０２のＣＰＵ３０１がコンピュータプログラムを実行することにより、ＣＰＵ３０１を含む各構成要素によって実現されている。サーバ機器１０１およびクライアント機器１０２の各々がコンピュータプログラムを実行することによって実現される処理の手順は図８を参照しながら後述する。なお、コンピュータプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録して市場に流通され、または、インターネット等の電気通信回線を通じて伝送される。これにより、ＰＣ等の情報処理装置を、上述のサーバ機器およびクライアント機器と同等の機能を有するとして動作させることができる。
【００４９】
サーバ機器１０１は、要求受信処理部４０１、要求処理部４０２、送信処理部４０３、動画録画処理部４０４を有する。ＨＤＤ２０７には管理情報４０５、ＭＰＥＧ−２動画データ４０６が記録される。また、クライアント機器１０２は、要求送信処理部４０７、ストリーミング再生制御部４０８、受信処理部４０９、動画出力処理部４１０を有する。クライアント機器１０２のＲＡＭ３０２内には管理情報バッファ４１１、ＭＰＥＧ−２データバッファ４１２が設けられる。図６では、サーバ機器１０１の送信処理部４０３からクライアント機器１０２の受信処理部４０９に送信されるデータを「送信データ４１３」と記載している。送信データ４１３には、ＭＰＥＧ−２データ４１４、管理情報更新差分４１５、イベント情報４１６が含まれる。ＭＰＥＧ−２データ４１４は、ＭＰＥＧ−２動画データ４０６の一部を構成するデータの一部であり、本実施形態においては１ＶＯＢＵのデータであるとする。管理情報更新差分４１５およびイベント情報４１６については、以下の処理の手順の説明に関連して詳しく説明する。
【００５０】
まずサーバ機器１０１における録画処理を説明する。ユーザによって録画開始の操作入力がなされると、動画録画処理部４０４は受信したテレビ放送信号をテレビチューナ２０４によってアナログ動画信号に変換し、そのアナログ動画信号をＡ／Ｄコンバータ２０５によってデジタル動画信号に変換する。さらに、そのデジタル動画信号はＭＰＥＧ−２エンコーダ２０６によってＭＰＥＧ−２データに圧縮され、ＭＰＥＧ−２動画データ４０６としてＨＤＤ２０７に記録される。この録画処理における一連の動作は、ユーザによって録画停止の操作入力がなされるまで繰り返される。
【００５１】
また動画録画処理部４０４は、ＭＰＥＧ−２動画データ４０６をＨＤＤ２０７に記録すると同時に、そのＭＰＥＧ−２動画データ４０６の特殊再生に必要な情報を管理情報４０５としてＨＤＤ２０７に記録する。
【００５２】
図７（ａ）は、管理情報４０５のデータ構造を示す。管理情報４０５はＶＯＢＵ再生時間５０１−１〜５０１−ｎおよびＶＯＢＵデータサイズ５０２−１〜５０２−ｎを含む。ＶＯＢＵ再生時間は各ＶＯＢＵの映像に関する再生時間を示し、ＶＯＢＵデータサイズは各ＶＯＢＵのデータサイズを示す。ＶＯＢＵ再生時間とそのＶＯＢＵのデータサイズの各値は対応付けられて格納されている。対応付けられたＶＯＢＵ再生時間とＶＯＢＵのデータサイズの組を以下では「エントリ」と呼ぶ。例えばエントリ１は、ＶＯＢＵ再生時間５０１−１およびＶＯＢＵデータサイズ５０２−１から構成される。またエントリｎは、ＶＯＢＵ再生時間５０１−ｎおよびＶＯＢＵデータサイズ５０２−ｎから構成される。
【００５３】
管理情報４０５に含まれるエントリは、ＭＰＥＧ−２動画データ４０６に含まれる全てのＶＯＢＵに対応して設けられる。ＭＰＥＧ−２動画データ４０６にｎ個のＶＯＢＵが含まれるときには、管理情報４０５にはｎ個のエントリが含まれる。動画録画処理部４０４は、ＭＰＥＧ−２動画データ４０６にＶＯＢＵが形成される度にそのＶＯＢＵに対応するＶＯＢＵ再生時間５０１およびＧＯＰデータサイズ５０２をＨＤＤ２０７に逐次、順番に記録する。なお、管理情報４０５はＶＲ規格で定められているナビゲーションデータに含まれるＴＭＡＰ情報でも構わない。
【００５４】
上述の管理情報４０５のエントリはＶＯＢＵに関する情報によって構成されているが、これは例である。ＶＯＢＵに関する情報に代えて、図２に示すグループ・オブ・ピクチャ（ＧＯＰ）に関する情報を用いてもよい。図７（ｂ）は、ＧＯＰに関する情報に基づいて構成した管理情報４０５の例を示す。このときは、ＶＯＢＵ再生時間に代えてＧＯＰ再生時間５０１を規定し、ＶＯＢＵデータサイズに代えてＧＯＰデータサイズ５０２を規定すればよい。
【００５５】
次に、サーバ機器１０１が動画を録画している最中にクライアント機器１０２がその動画のストリーミング再生を行う手順を説明する。
【００５６】
図８は、ストリーミング再生処理のシーケンスを示す。まずユーザがクライアント機器１０２に対してストリーミング再生を指示する。クライアント機器１０２のストリーミング再生制御部４０８は要求送信処理部４０７に対してユーザが選択したＭＰＥＧ−２動画データ４０６に対応する管理情報４０５の取得を命令する。その命令を受けた要求送信処理部４０７は要求受信処理部４０１に対して管理情報４０５の取得要求をＨＴＴＰのＧＥＴメソッドを用いて送信する（ステップＳ０１）。
【００５７】
その要求を受信したサーバ機器１０１の要求受信処理部４０１は、要求処理部４０２に対してＨＤＤ２０７から管理情報４０５の読み出しを命令する。要求処理部４０２は管理情報４０５を読み出し、送信処理部４０３に転送する。この時点において、管理情報４０５にはエントリ＃１から＃（ｋ−１）までが含まれているとする。要求処理部４０２は、この時点における最終エントリ番号（ｋ−１）を保持しておく。その後、送信処理部４０３は管理情報４０５をＧＥＴメソッドのレスポンスとして、クライアント機器１０２の受信処理部４０９に送信する（ステップＳ０２）。管理情報４０５を受信したクライアント機器１０２の受信処理部４０９は、管理情報４０５を管理情報バッファ４１１に記憶する（ステップＳ０３）。
【００５８】
この後、クライアント機器１０２のストリーミング再生制御部４０８は、ＭＰＥＧ−２動画データ４０６の取得を開始する。この処理に関して留意すべきは、ストリーミング再生制御部４０８はＭＰＥＧ−２動画データ４０６のすべてを一度に取得しないことである。ストリーミング再生制御部４０８は、管理情報バッファ４１１に記憶された管理情報４０５を参照して、ＶＯＢＵ再生時間５０１とＶＯＢＵデータサイズ５０２とから、ＭＰＥＧ−２動画データ４０６に含まれる各ＶＯＢＵのアドレスを計算する。そして、再生に必要なＶＯＢＵを適切な再生時刻にＶＯＢＵ単位で取得するように要求送信処理部４０７に対して命令する。なお「各ＶＯＢＵのアドレス」とは、ＭＰＥＧ−２動画データ４０６の先頭から起算したときに各ＶＯＢＵがどのビット位置から開始されているかを示す、データの格納位置の情報である。
【００５９】
要求送信処理部４０７は、サーバ機器１０１の要求受信処理部４０１に対して、ＨＴＴＰのＧＥＴメソッドを用いてＶＯＢＵの取得要求を送信する（ステップＳ０４）。このとき、ＶＯＢＵのアドレスはＧＥＴメソッドのＲＡＮＧＥヘッダで指定される。
【００６０】
上述のＶＯＢＵの取得処理は、種々の再生方法に適用することができる。例えば、録画中の動画をその先頭から再生したい場合には、ストリーミング再生制御部４０８は先頭のＶＯＢＵから取得を命令する。また、録画中の動画をある特定の場面から再生したい場合には、ストリーミング再生制御部４０８はその場面を含むＶＯＢＵから取得を命令する。さらに、動画を２倍速で再生したい場合には、ストリーミング再生制御部４０８は、そのＶＯＢＵの再生時間の半分の時間が経過したときに、次のＶＯＢＵの取得を命令する。第１および第２の例は通常の再生であり、第３の例はいわゆる特殊再生である。第３の例として２倍速再生を挙げたが、その速度は任意であり、ストリーミング再生制御部４０８はＶＯＢＵを再生速度に応じた間隔で間欠的に要求すればよい。
【００６１】
これらの例から明らかなように、どのＶＯＢＵを取得するか、およびどのタイミングでＶＯＢＵを取得するかはユーザからの指示に応じて任意に調整できる。これにより、ストリーミング再生時における特殊再生が可能になる。
【００６２】
クライアント機器１０２の要求送信処理部４０７からＶＯＢＵ取得要求を受信すると、サーバ機器１０１の要求受信処理部４０１は、要求処理部４０２に対してＨＤＤ２０７からＶＯＢＵに対応するＭＰＥＧ−２データの読み出しを命令する。要求処理部４０２はＭＰＥＧ−２データを読み出し、送信処理部４０３に転送する。送信処理部４０３はＧＥＴメソッドのレスポンスメッセージとして送信データ４１３を作成し、ＭＰＥＧ−２データを送信データ４１３に含まれるＭＰＥＧ−２データ４１４として格納する（ステップＳ０５）。
【００６３】
ここで、録画中のＭＰＥＧ−２動画データ４０６のストリーミング再生について考える。録画中のＭＰＥＧ−２動画データ４０６は、ユーザの操作入力などによって録画が停止されるまで繰り返し更新され続ける。したがって、ＭＰＥＧ−２動画データ４０６に対応する管理情報４０５も更新され続ける。図８においては、ステップＳ０２における送信処理の後、ステップＳ０５におけるＶＯＢＵの要求を受け取るまでの間に、管理情報４０５の最終エントリ番号がｋ、・・・、ｍと変化していることを示している。
【００６４】
一方、クライアント機器１０２の管理情報バッファ４１１には、更新前のエントリ（ｋ−１）までの管理情報４０５しか格納されていない。ストリーミング再生制御部４０８は管理情報バッファ４１１に記憶された管理情報に基づいてＭＰＥＧ−２データ４１４を要求するため、ストリーミング再生制御部４０８はＭＰＥＧ−２動画データ４０６のストリーミング再生が開始された後に更新された箇所については要求することができない。
【００６５】
そこで、要求処理部４０２は管理情報４０５が更新されると、ＭＰＥＧ−２データ４１４の送信とともに、管理情報４０５の更新差分をクライアント機器１０２の送信処理部４０３に送信する。管理情報４０５の更新差分とは、クライアント機器１０２に対して最後に送信した管理情報４０５の最終エントリ番号以降で、かつ、クライアント機器１０２の送信処理部４０９にＭＰＥＧ−２データ４１４を送信する直前の時点の最終エントリ番号までの管理情報である。図８においては、管理情報４０５の更新差分はエントリ番号ｋからｍまでの部分に相当する。
【００６６】
送信処理部４０３は、更新差分を送信データ４１３中に管理情報更新差分４１５として格納する（ステップＳ０６）。また、録画が停止されたとき、要求処理部４０２は録画停止のイベントを送信処理部４０３に通知し、その通知を受けた送信処理部４０３は録画停止を示す情報を送信データ４１３中のイベント情報４１６として格納する（Ｓ０７）。このとき、送信データ４１３はマルチパート型のメッセージとなる。マルチパート型のメッセージとは、複数の区画（パート）からなる送信メッセージであり、隣接する２つのパートの境界は「バウンダリ」と呼ばれる宣言された所定の文字列の行によって規定される。１つの区画は他の区画から識別可能である。送信処理部４０３は、管理情報の更新差分と動画データとを混在させて一つのＴＣＰセッションで送信する。その結果、更新差分の処理に関連してクライアント機器１０２の受信処理部４０９において複数のＴＣＰセッションを管理する処理は不要になり、その処理に要求されるＲＡＭ容量を削減できる。サーバ機器１０１の送信処理部４０３は送信データ４１３へのデータの格納が終わると、送信データ４１３を受信処理部４０９に送信する（ステップＳ０８）。
【００６７】
クライアント機器１０２の受信処理部４０９は、送信データ４１３を受信すると、送信データ４１３からＭＰＥＧ−２データ４１４を取り出し、ＭＰＥＧ−２データ４１４をＭＰＥＧ−２データバッファ４１１に記憶する（ステップＳ０９）。また、送信データ４１３がマルチパート型のメッセージであり、管理情報更新差分４１５が格納されていることを識別した場合には、受信処理部４０９は、送信データ４１３から管理情報更新差分４１５を取り出し、管理情報バッファ４１１に管理情報更新差分４１５を追加することによって管理情報バッファ４１１に記憶された管理情報４０５を更新する（ステップＳ１０）。これにより、ストリーミング再生制御部４０８はＭＰＥＧ−２動画データ４０６のストリーミング再生開始後に更新された箇所についてもＭＰＥＧ−２データ４１４の取得を要求することが可能となる。また、送信データ４１３にイベント情報４１６が格納されていた場合には、ストリーミング再生制御部４０８は送信データ４１３からイベント情報４１６を取り出し、イベント情報４１６をストリーミング再生制御部４０８に転送する。
【００６８】
ストリーミング再生制御部４０８はＭＰＥＧ−２データバッファ４１１に記憶されたＭＰＥＧ−２データ４１４を動画出力処理部４１０に転送する。動画出力処理部４１０は所定の処理を行い、外部に接続されたディスプレイ３１０に対して映像および音声（動画）を出力する（ステップＳ１１）。動画出力処理部４１０に対応する実際の処理は、ＭＰＥＧ−２データ４１４をＭＰＥＧ−２デコーダ３０４によってデジタル動画信号に展開し、さらにそのデジタル動画信号をＤ／Ａコンバータ３０５によってアナログ動画信号に変換し、動画出力部３０６によってそのアナログ動画信号を描画し、外部に接続されたディスプレイ３１０に対して出力することによって実現される。
【００６９】
ストリーミング再生におけるステップＳ０４からＳ１１までの動作は、ユーザによってストリーミング再生停止の操作入力がなされか、ＭＰＥＧ−２動画データ４０６の終端に達するまで繰り返される。ストリーミング再生が開始された時点でＭＰＥＧ−２動画データ４０６が録画中であった場合には、クライアント機器１０２のストリーミング再生制御部４０８は、イベント情報４１６によってＭＰＥＧ−２動画データ４０６の録画停止を認識し、それにより、ＭＰＥＧ−２動画データ４０６の終端を認識する。録画の一時停止についても同様の通知を行い、ストリーミング再生制御部４０８はその状態を認識する。
【００７０】
なお上述の説明においては、サーバ機器１０１にはＨＤＤ２０７に記録されたＭＰＥＧ−２動画データ４０６を再生する機能を持たせていないが、その機能を持たせても構わない。また、クライアント機器１０２にはＨＤＤなどの記録媒体にＭＰＥＧ−２動画を記録する機能を持たせていないが、ＭＰＥＧ−２動画を記録する機能を持たせても構わない。
【００７１】
（実施形態２）
本実施形態においては、録画途中で映像の解像度が変化する場合であっても、動画データの配信に対応できる処理を説明する。
【００７２】
本実施形態における動画配信システム１００の全体構成は図３に示すとおりである。また、サーバ機器１０１およびクライアント機器１０２のハードウェア構成および機能ブロックの構成は図４〜６に示すとおりである。これらについては実施の形態１において既に説明しているため、ここでは詳細な説明は省略する。
【００７３】
動画録画処理部４０４がアナログ放送信号などをＭＰＥＧ−２動画データ４０６として書き込む際、動画の解像度や音声チャンネル数などの属性が変化することがある。特に、クライアント機器１０２において管理情報が更新される前後で動画の属性が変化すると、クライアント機器１０２はその変化を認識できないため復号化が失敗する恐れがある。
【００７４】
そこで、サーバ機器１０１の動画録画処理部４０４は、動画属性情報７０３を作成し管理情報の一部としてＨＤＤ２０７に逐次書き込む。図９は、本実施形態による管理情報９０５の例を示す。管理情報９０５はＶＯＢＵ再生時間７０１、ＶＯＢＵデータサイズ７０２および動画属性情報７０３から構成される。ＶＯＢＵ再生時間７０１およびＶＯＢＵデータサイズ７０２が示す内容は図５（ａ）と実質的に同じであるため、その説明は省略する。動画属性情報７０３は、動画の解像度や音声チャンネル数などの属性を特定する情報である。本実施形態においては、ＶＯＢＵ再生時間７０１、ＶＯＢＵデータサイズ７０２および動画属性情報７０３を１つのエントリとして管理情報９０５が構成されている。なお、管理情報９０５は常に動画属性情報を設けなくてもよく、属性が変化すると、そのＶＯＢＵに対応するエントリにのみ追加してもよい。動画属性情報７０３は、ＤＶＤ−ＶＲ規格で定められているナビゲーションデータ中の情報（具体的にはＭ＿ＶＯＢ＿ＳＴＩ情報）をそのままコピーしてもよい。
【００７５】
サーバ機器１０１において録画中の動画をクライアント機器１０２がストリーミング再生するシーケンスは、原則として図８に示すとおりであり、本実施形態に対応する管理情報９０５に読み替えて適用すればよい。ただしステップＳ０４において、クライアント機器１０２のストリーミング再生制御部４０８は、管理情報９０５に含まれる動画属性情報７０３からＭＰＥＧ−２動画データ４０６の属性情報を取得し、それに基づいて再生処理を行う。また、ＭＰＥＧ−２動画データ４０６の属性情報が録画中に変化する際には、ステップＳ０６において、要求処理部４０２は新たに作成された動画属性情報７０３を送信処理部４０３に転送し、送信処理部４０３は動画属性情報７０３を管理情報更新差分４１５に含めて送信する。これにより、クライアント機器１０２は録画中のＭＰＥＧ−２動画データ４０６の属性情報が変化しても変化後の動画属性情報７０３を取得することができるので、ストリーミング再生を継続することが可能になる。
【００７６】
以上、本発明の実施形態を説明した。上述のサーバ機器１０１が行う録画は、主にアナログテレビ放送信号からＭＰＥＧ−２プログラムストリームを生成し、ＨＤＤ２０７に書き込むことにより実現されるとした。しかしサーバ機器１０１は、デジタルテレビ放送において採用されているＭＰＥＧ−２トランスポートストリームを受信して所定の処理を行い、ＨＤＤ２０７やＢｌｕ−ｒａｙディスク（ＢＤ）に書き込むことも可能である。ＢＤとは約４０５ｎｍの波長のレーザ光を用いてデータを書き込み、読み出すことが可能な光ディスクであり、記録層１層で約２５ＧＢの容量を有している。
【００７７】
このとき、ＭＰＥＧ−２トランスポートストリームのパケット構造は保持された状態で書き込まれる。以下ではＨＤＤ２０７に書き込まれるとして説明する。
【００７８】
そこで以下図１０〜図１３を参照しながら、デジタル放送波として伝送されるＭＰＥＧ−２トランスポートストリームのデータ構造を説明する。以下の説明によれば、プログラムストリーム１に関してした実施形態１および２の説明がＭＰＥＧ−２トランスポートストリームに対しても適用できることが理解される。以下では「ＭＰＥＧ−２トランスポートストリーム」を単に「トランスポートストリーム」または「ＴＳ」と記述する。
【００７９】
図１０は、トランスポートストリーム２０のデータ構造を示す。トランスポートストリーム２０は、各々が１８８バイトのパケット長を有する複数種類のＴＳパケットから構成されている。ＴＳパケットの種類は、例えば、圧縮されたビデオデータが格納されたビデオＴＳパケット（Ｖ＿ＴＳＰ）３０、圧縮されたオーディオデータが格納されたオーディオＴＳパケット（Ａ＿ＴＳＰ）３１の他、番組表（プログラム・アソシエーション・テーブル；ＰＡＴ）が格納されたパケット（ＰＡＴ＿ＴＳＰ）、番組対応表（プログラム・マップ・テーブル；ＰＭＴ）が格納されたパケット（ＰＭＴ＿ＴＳＰ）およびプログラム・クロック・リファレンス（ＰＣＲ）が格納されたパケット（ＰＣＲ＿ＴＳＰ）等を含む。
【００８０】
以下、本発明の処理に関連するビデオＴＳパケットおよびオーディオＴＳパケットを説明する。図１１（ａ）はビデオＴＳパケット３０のデータ構造を示す。ビデオＴＳパケット３０は、４バイトのトランスポートパケットヘッダ３０ａ、および、１８４バイトのトランスポートパケットペイロード３０ｂを有する。ペイロード３０ｂにはビデオデータ３０ｂが格納されている。一方、図１１（ｂ）は、オーディオＴＳパケット３１のデータ構造を示す。オーディオＴＳパケット３１も同様に、４バイトのトランスポートパケットヘッダ３１ａ、および、１８４バイトのトランスポートパケットペイロード３１ｂを有する。オーディオデータ３１ｂはトランスポートパケットペイロード３１ｂに格納されている。
【００８１】
上述の例から理解されるように、一般にＴＳパケットは４バイトのトランスポートパケットヘッダと、１８４バイトのエレメンタリデータとから構成されている。パケットヘッダには、そのパケットの種類を特定するパケット識別子（Ｐａｃｋｅｔ  ＩＤｅｎｔｉｆｉｅｒ；ＰＩＤ）が記述されている。例えば、ビデオＴＳパケットのＰＩＤは"０ｘ００２０"であり、オーディオＴＳパケットのＰＩＤは"０ｘ００２１"である。エレメンタリデータは、ビデオデータ、オーディオデータ等のコンテンツデータや、再生を制御するための制御データ等である。どのようなデータが格納されているかは、パケットの種類に応じて異なる。
【００８２】
以下、ビデオデータを例に挙げて、映像を構成するピクチャとの関係を説明する。図１２（ａ）〜（ｄ）は、ビデオＴＳパケットからビデオピクチャを再生する際に構築されるストリームの関係を示す。図１２（ａ）に示すように、ＴＳ４０は、ビデオＴＳパケット４０ａ〜４０ｄを含む。なお、ＴＳ４０には、他のパケットも含まれ得るが、ここではビデオＴＳパケットのみを示している。ビデオＴＳパケットは、ヘッダ４０ａ−１に格納されたＰＩＤによって容易に特定される。
【００８３】
ビデオデータ４０ａ−２等の各ビデオＴＳパケットのビデオデータから、パケット化エレメンタリストリームが構成される。図１２（ｂ）は、パケット化エレメンタリストリーム（ＰＥＳ）４１のデータ構造を示す。ＰＥＳ４１は、複数のＰＥＳパケット４１ａ、４１ｂ等から構成される。ＰＥＳパケット４１ａは、ＰＥＳヘッダ４１ａ−１およびＰＥＳペイロード４１ａ−２から構成されており、これらのデータがビデオＴＳパケットのビデオデータとして格納されている。
【００８４】
ＰＥＳペイロード４１ａ−２は、それぞれが１つのピクチャのデータを含んでいる。ＰＥＳペイロード４１ａ−２から、エレメンタリストリームが構成される。図１２（ｃ）は、エレメンタリストリーム（ＥＳ）４２のデータ構造を示す。ＥＳ４２は、ピクチャヘッダ、および、ピクチャデータの組を複数有している。ＥＳ４２を構成するヘッダおよびピクチャデータは、図２に示すピクチャ１９−１、１９−２のデータと同じである。なお、「ピクチャ」とは一般にフレームおよびフィールドのいずれも含む概念として用いられる。
【００８５】
図１２（ｃ）に示すピクチャヘッダ４２ａには、その後に配置されたピクチャデータ４２ｂのピクチャ種別を特定するピクチャコーディングタイプが記述され、ピクチャヘッダ４２ｃにはピクチャデータ４２ｄのピクチャ種別を特定するピクチャコーディングタイプが記述されている。種別とは、Ｉピクチャ（Ｉｎｔｒａ−ｃｏｄｅｄ  ｐｉｃｔｕｒｅ）、Ｐピクチャ（Ｐｒｅｄｉｃｔｉｖｅ−ｃｏｄｅｄ  ｐｉｃｔｕｒｅ）またはＢピクチャ（Ｂｉｄｉｒｅｃｔｉｏｎａｌｌｙ−ｐｒｅｄｉｃｔｉｖｅ−ｃｏｄｅｄ  ｐｉｃｔｕｒｅ）を表す。種別がＩピクチャであれば、そのピクチャコーディングタイプは、例えば"００１ｂ"である。
【００８６】
ピクチャデータ４２ｂ、４２ｄ等は、そのデータのみによって、または、そのデータとその前および／または後に復号化されるデータとによって構築可能な１枚分のフレームのデータである。例えば図１２（ｄ）は、ピクチャデータ４２ｂから構築されるピクチャ４３ａおよびピクチャデータ４２ｄから構築されるピクチャ４３ｂを示す。
【００８７】
デジタル放送のトランスポートストリームには、複数の番組の映像、音声等のＴＳパケットが混在し得るため、ある番組を録画する際にはその番組の再生に必要なパケットを抽出する必要がある。そこで次に、図１３を参照しながらサーバ機器１０１における動画の録画に際してトランスポートストリームがどのように処理され、ＨＤＤ２０７に格納されるかを説明する。以下では、複数の番組のＴＳパケットが含まれるトランスポートストリームを「フルＴＳ」と呼び、必要なＴＳパケットが抽出されたときのトランスポートストリームを「パーシャルＴＳ」と呼ぶ。
【００８８】
図１３（ａ）〜（ｅ）は、トランスポートストリームとクリップＡＶストリームとの関係を示す。図１３（ａ）はフルＴＳ５０を示している。フルＴＳ５０は、例えば３つの番組Ｘ，ＹおよびＺのデータを含むＴＳパケットが連続して配置されている。図１３（ｂ）は、サーバ機器１０１のテレビチューナ２０４によってフルＴＳ５０から生成されたパーシャルＴＳ５１を示す。パーシャルＴＳ５１は、連続したフルＴＳから一部のパケットを取り出したストリームであるため、パケットが時間的に離散して存在している。このパケットの間隔は、フルＴＳの送信側によって調整されており、デコーダにおいてデコードが適正に行われるために必要な条件を満たす。この「条件」とは、ＭＰＥＧ−２ＴＳの理想モデルとして規定されたＴ−ＳＴＤ（ＴＳシステムターゲットデコーダ；ＴＳ  Ｓｙｓｔｅｍ  Ｔａｒｇｅｔ  Ｄｅｃｏｄｅｒ）のバッファメモリがオーバーフローおよびアンダーフローを引き起こさないためにＭＰＥＧ規格上定められた条件である。
【００８９】
パーシャルＴＳ５１は、例えば番組Ｘに関するＴＳパケットを含んでいる。
【００９０】
図１３（ｃ）は、パーシャルＴＳをサーバ機器１０１のＨＤＤ２０７に格納する際のストリーム（クリップＡＶストリーム）５２を示す。クリップＡＶストリーム５２は、ソースパケットが連続して配列されている。
【００９１】
図１３（ｄ）は、ソースパケット５３のデータ構造を示す。ソースパケット５３のデータ長は１９２バイトに固定されている。すなわち、各ソースパケット５３は、１８８バイトのＴＳパケット５５の前に、４バイトのＴＰエクストラヘッダ５４を付加して構成されている。
【００９２】
図１３（ｅ）は、ＴＰエクストラヘッダ５４のデータ構造を示す。ＴＰエクストラヘッダ５４は、２ビットのコピー許可インジケータ（ＣＰＩ）５６と、３０ビットの到着タイムスタンプＡＴＳ５７とから構成されている。コピー許可インジケータ（ＣＰＩ）５６は、そのビット値に応じて、クリップＡＶストリーム５２の全部または一部のコピー回数（０回（コピー不可）／１回のみ／制限なし等）を規定している。到着タイムスタンプＡＴＳ５７には、９０ｋＨｚ精度でＴＳパケットがサーバ機器１０１に到着した時刻が記述される。このような時刻情報が付加される理由は、パーシャルＴＳのＴＳパケットは連続してＨＤＤ２０７に書き込まれるため、再生時にパーシャルＴＳのＴＳパケットの到着時刻と同じタイミングでＴＳパケットの処理を行うためには、その到着時刻の情報が各パケットに必要になるからである。
【００９３】
なお、図１３（ｃ）に記載されたクリップＡＶストリーム５２は、例えば３２個のソースパケットの集合（６ＫＢ）を１つの単位としてＨＤＤ２０７に書き込まれる。このような単位をアラインド・ユニットという。アラインド・ユニットを規定する理由は、ＢＤ２０５ａが１セクタ２ＫＢであるため、３２ソースパケットの単位でセクタとのアライメントが確保できるためである。
【００９４】
サーバ機器１０１のＨＤＤ２０７に書き込まれたクリップＡＶストリーム５２は、実施形態１におけるＭＰＥＧ−２動画データ４０６に対応する。一方、本発明の処理を行うためには、クリップＡＶストリーム５２に対する管理情報も必要になる。そこで以下、図１４および図１５を参照しながら、クリップＡＶストリーム５２に対する管理情報を説明する。
【００９５】
図１４は、クリップＡＶストリーム５２に対する管理情報（ＥＰ＿ＭＡＰ）の例を示す。この管理情報は再生時刻とソースパケット番号との組（エントリ）を複数並べて構成されており、図５（ａ）に示す管理情報と類似のデータ構造を有している。
【００９６】
再生時刻に対応するタイムスタンプ（ＰＴＳ）は、映像に関していえば、図２に示すＭＰＥＧ規格のＧＯＰの先頭に配置される各ＩピクチャのＰＴＳを表す。そしてソースパケット番号（ＳＰＮ）とは、そのＰＴＳに対応する時刻に再生されるＩピクチャの先頭データが格納されたソースパケット番号（ＳＰＮ）である。ソースパケットのデータサイズは１９２バイトであるから、ソースパケット番号が特定されるとクリップＡＶストリームの先頭からのバイト数が特定され、そのデータに容易かつ確実にアクセスできる。よってデータサイズをソースパケット番号によって記述しているといえる。
【００９７】
実施形態１および２における管理情報およびＭＰＥＧ−２動画データに関する説明（例えば図８に関連する説明）を管理情報（ＥＰ＿ＭＡＰ）およびクリップＡＶストリーム５２に置き換えると、トランスポートストリームを採用するデジタル放送であっても、全く同様に実施形態１および２の技術を適用できることが理解される。すなわち、サーバ機器１０１が録画中のクリップＡＶストリーム５２をクライアント機器１０２に送信する際に、管理情報（ＥＰ＿ＭＡＰ）の更新差分（エントリの追加部分）も送信する。これにより、クライアント機器１０２は最新の管理情報（ＥＰ＿ＭＡＰ）に基づいて録画された番組を再生できる。
【００９８】
クライアント機器１０２の動画出力処理部４１０にて特殊再生を行うための処理は以下のとおりである。特殊再生はピクチャの表示タイミングを２倍や１／２倍に進めまたは戻すことであるから、標準よりも早い／遅いタイミングで再生時刻を指定すればよいことになる。
【００９９】
図１５は、再生時刻とソースパケット番号の対応関係を示す。管理情報にはＧＯＰの先頭に配置される各ＩピクチャのＰＴＳ値のみが記述されているため、動画出力処理部４１０がそのＰＴＳ値以外のＰＴＳ値が開始時刻（Ｉｎ＿ｔｉｍｅ）および／または終了時刻（Ｏｕｔ＿ｔｉｍｅ）を指定すると、その時刻に対応するソースパケット番号（アドレス）を直接得ることができない。しかし、ＭＰＥＧ−２ビデオの符号化圧縮方式では、ピクチャ間の差分を用いて圧縮処理を行うため、まず最初にＧＯＰ先頭のＩピクチャを復号しなければ、続くピクチャも復号できない。
【０１００】
そこでクライアント機器１０２の動画出力処理部４１０は、ＧＯＰ先頭のＩピクチャ以外のピクチャから再生を行うときは、管理情報（ＥＰ＿ｍａｐ）で指定されるＩピクチャから復号を開始し、続くピクチャを解析／復号しながら、指定された時刻のピクチャから動画の出力を開始する。この結果、任意の位置から再生を開始することができるのみならず、どのようなピクチャからでも再生出力を開始できる。
【０１０１】
なお、図１４および図１５においては、ソースパケット番号Ｘ１、Ｘ２等の実際の値は必ずしも連続する整数ではなく、飛び飛びに大きくなっていく整数値である。
【産業上の利用可能性】
【０１０２】
本発明によるサーバ機器およびクライアント機器を用いて動画配信システムを構成することにより、サーバ機器が録画中であってもストリーミング再生中に特殊再生を行うことができる。また、録画中の動画の属性情報が録画中に変化した場合でも、クライアント機器がストリーミング再生を継続することができる。
【図面の簡単な説明】
【０１０３】
【図１】ＶＲ規格に準拠したＭＰＥＧ２プログラムストリーム１のデータ構造を示す図である。
【図２】プログラムストリーム１内のビデオパックのデータ構造を示す図である。
【図３】本発明による動画配信システム１００の構成を示す図である。
【図４】サーバ機器１０１のハードウェア構成の例を示す図である。
【図５】クライアント機器１０２のハードウェア構成の例を示す図である。
【図６】サーバ機器１０１とクライアント機器１０２の機能ブロックの構成を示す図である。
【図７】（ａ）は実施形態１による管理情報４０５のデータ構造を示す図であり、（ｂ）はＧＯＰに関する情報に基づいて構成した管理情報４０５の例を示す図である。
【図８】ストリーミング再生処理のシーケンスを示す図である。
【図９】実施形態２による管理情報９０５の例を示す図である。
【図１０】トランスポートストリーム２０のデータ構造を示す図である。
【図１１】（ａ）はビデオＴＳパケット３０のデータ構造を示す図であり、（ｂ）はオーディオＴＳパケット３１のデータ構造を示す図である。
【図１２】（ａ）〜（ｄ）は、ビデオＴＳパケットからビデオピクチャを再生する際に構築されるストリームの関係を示す図である。
【図１３】（ａ）〜（ｅ）は、トランスポートストリームとクリップＡＶストリームとの関係を示す図である。
【図１４】クリップＡＶストリーム５２に対する管理情報（ＥＰ＿ＭＡＰ）の例を示す図である。
【図１５】再生時刻とソースパケット番号の対応関係を示す図である。
【符号の説明】
【０１０４】
１００    動画配信システム
１０１    サーバ機器
１０２    クライアント機器
１０３    ネットワーク
３１０    ディスプレイ
４０１    要求受信処理部
４０２    要求処理部
４０３    送信処理部
４０４    動画録画処理部
４０５    管理情報
４０６    ＭＰＥＧ−２動画
４０７    要求送信処理部
４０８    ストリーミング再生制御部
４０９    受信処理部
４１０    動画出力処理部
４１１    管理情報バッファ
４１２    ＭＰＥＧ−２データバッファ
４１３    送信データ
４１４    ＭＰＥＧ−２データ
４１５    管理情報更新差分
４１６    イベント情報
【図１】
0004500267.tif 000002
【図２】
0004500267.tif 000003
【図３】
0004500267.tif 000004
【図４】
0004500267.tif 000005
【図５】
0004500267.tif 000006
【図６】
0004500267.tif 000007
【図７】
0004500267.tif 000008
【図８】
0004500267.tif 000009
【図９】
0004500267.tif 000010
【図１０】
0004500267.tif 000011
【図１１】
0004500267.tif 000012
【図１２】
0004500267.tif 000013
【図１３】
0004500267.tif 000014
【図１４】
0004500267.tif 000015
【図１５】
0004500267.tif 000016