JP2003235012A - ファイル及びコンテンツ管理 - Google Patents

ファイル及びコンテンツ管理

Info

Publication number
JP2003235012A
JP2003235012A JP2002240717A JP2002240717A JP2003235012A JP 2003235012 A JP2003235012 A JP 2003235012A JP 2002240717 A JP2002240717 A JP 2002240717A JP 2002240717 A JP2002240717 A JP 2002240717A JP 2003235012 A JP2003235012 A JP 2003235012A
Authority
JP
Japan
Prior art keywords
bitstream
data
command
file
hdvr
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002240717A
Other languages
English (en)
Other versions
JP2003235012A5 (ja
JP4257084B2 (ja
Inventor
Andre Surcouf
シュルクフ アンドレ
Nicolas Gaude
ゴーデ ニコラス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KCA Licensing SA
Original Assignee
Canal Plus Technologies SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from EP01402202A external-priority patent/EP1286262A1/en
Priority claimed from PCT/IB2001/001845 external-priority patent/WO2002017635A2/en
Priority claimed from EP01310888A external-priority patent/EP1286349A1/en
Application filed by Canal Plus Technologies SA filed Critical Canal Plus Technologies SA
Publication of JP2003235012A publication Critical patent/JP2003235012A/ja
Publication of JP2003235012A5 publication Critical patent/JP2003235012A5/ja
Application granted granted Critical
Publication of JP4257084B2 publication Critical patent/JP4257084B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Management Or Editing Of Information On Record Carriers (AREA)
  • Television Signal Processing For Recording (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

(57)【要約】 【課題】 ビットストリーム、特に音声及び/または視
覚(視聴覚)ビットストリームのレコーディング、処
理、記憶、及びプレイバックに関する。 【解決手段】 ビットストリーム中のデータオフセット
をマッピングするテーブルと、ビットストリーム中の位
置を評価するための装置と、ビットストリームの転送を
制御するためのコマンドである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ビットストリー
ム、特に音声及び/または視覚(視聴覚)ビットストリ
ームのレコーディング、処理、記憶、及びプレイバック
に関する。3つの全般的な態様が説明される。
【0002】第1に、このように記録されたビットスト
リーム中の点の指標付けが、特に特定的な点の編集に関
して、及びこのような記録されたビットストリームの動
作の性能における規則正しく間隔をあけて配置される位
置決め点の使用に関して説明される。
【0003】第2に、このような記録されたビットスト
リームに関する条件付きアクセス情報の同期が説明され
る。
【0004】第3に、このような記録されたビットスト
リームでの動作の制御のためのコマンドセットが説明さ
れる。
【0005】本発明は、ファイルの探索を容易にする方
法、ファイルを探索する方法、テーブル、ビットストリ
ームの表現及びテーブルを備えるファイル、記憶手段、
ハードディスクビデオレコーダ、受信機/デコーダ、及
び放送システムに係わる。
【0006】発明は、記録されたビットストリーム、特
に可変ビット・レートビットストリーム、及び特に受信
機/デコーダの制御下で記録される番組からのデータの
定位及び検索に、特定的にではあるが、排他的にではな
く応用される。
【0007】データのこのようなレコーディング及び検
索は、特に、内容がここに参照して組み込まれているC
anal+ Technologies Societ
eAnonymeの名のもとに国際特許出願番号第PC
T/IB01/01845号に説明されている。
【0008】本発明は、ビットストリーム中の位置を評
価するための装置、ビットストリームを操作するための
装置、ビットストリーム中の位置を評価する方法、ビッ
トストリームを操作する方法、受信機/デコーダ、この
ような装置を組み込む放送システム、コンピュータプロ
グラム製品、コンピュータ読み取り可能媒体、及び前記
コンピュータプログラム製品を具現する信号にも係わ
る。
【0009】発明は、デジタルビットストリームの処理
に、特定的にではあるが、排他的にではなく応用され
る。本発明は、ビットストリーム操作の記録段階でさら
に特定的に使用される。
【0010】発明は、音声/視覚ビットストリームの転
送を制御するためのコマンド、このようなコマンドを組
み込むコマンドセット、オペレーティングシステム、受
信機/デコーダ、コンピュータプログラム製品、コンピ
ュータ読み取り可能媒体、このようなコンピュータプロ
グラム製品を具体的に具現する信号、音声/画像データ
を処理するための装置、音声/視覚処理装置、放送シス
テム、及び音声/視覚ビットストリームの再生を制御す
る方法にも係わる。
【0011】発明は、デジタルテレビ用の受信機/デコ
ーダ内の機能性を提供することに、特定的にではある
が、排他的にではなく応用される。
【0012】デジタルテレビシステムは、アナログ形式
よりむしろデジタル形式での視聴者にテレビジョンチャ
ネルを伝送する。デジタルチャネルは、送信機終端でデ
ジタルデータストリームに符号化され、デジタル受信機
/デコーダを使用して受信機終端で復号される。対話性
を可能とするために、テレビジョンチャネルを送達する
同じ媒体、あるいは電話リンクなどの別の媒体のどちら
かを介してアップリンクが提供されてよい。デジタル音
声、ソフトウェアデータ及び対話型データなどの追加の
種類のデータが一斉送信できる、あるいは一斉送信もさ
れている。ここに使用されるように、用語「デジタルテ
レビシステム」は、例えば、任意の衛星システム、地上
システム、ケーブルシステム及び他のシステムを含む。
【0013】ここに使用されるような用語「受信機/デ
コーダ」は、好ましくはMPEGフォーマットで、なん
らかの他の手段により一斉送信または伝送されてよい、
テレビ信号及び/または無線信号などの、符号化済み
の、または符号化されていないかのどちらかの信号を受
信するための受信機を意味してよい。用語は、受信され
た信号を復号するためのデコーダも意味してよい。この
ような受信機/デコーダの実施形態は、例えば、物理的
に別個の受信機と組み合わされて機能するデコーダ、ま
たはウェブブラウザ、ビデオレコーダまたはテレビなど
の追加機能を含むこのようなデコーダなどの「セットト
ップボックス」で、受信された信号を復号するための、
受信機と一体化されたデコーダを含んでよい。
【0014】用語MPEGは、国際標準化機構作業グル
ープ「エムペグ(動画専門家グループ)」により開発さ
れたデータ伝送規格、及び特にではあるが、排他的にで
はなく、デジタルテレビ用途向けに開発され、文書IS
O 13818−1、ISO13818−2、ISO
13818−3及びISO 13818−4に述べられ
ているMPEG−2規格を指す。本特許出願の文脈にお
いては、用語は、デジタルデータ伝送の分野に適用でき
るMPEGフォーマットのすべての変形、修正または展
開したものを含む。
【0015】
【従来の技術】可変ビット・レートビットストリームな
どのビットストリームの表現を含むファイルの生成、記
憶、伝送及び処理は、デジタル技術の分野では周知であ
る。しかしながら、例えば、関連付けられたビットスト
リーム中の特定のタイムオフセットに対応する、このよ
うなファイルの所望される部分の位置を、特にこのよう
なファイルを復号または復元しないで突き止めることは
困難且つ非効率である場合がある。
【0016】既知のシステムでは、例えば、ビットスト
リーム中のある特定のタイムオフセットに対応するデー
タを求めてファイルを探索することは、一般的には、ビ
ットストリームが一定のビットレートを有すると仮定す
ることによって反復して行われる。ビットストリームが
一定のビットレートを有するという仮定は概してやや粗
雑であり、このような方法でのファイルの検索は時間が
かかり、非効率的であり、実際には、ファイルまたは関
連付けられるビットストリーム中の指定された点の場所
に依存するプロセスを不可能に、あるいは困難且つ非効
率にすることがある。このようなプロセスは、例えば、
ファイル内の点を早送り、巻き戻し、読み飛ばし、ブッ
クマークを付けること、ファイルの部分に対するアクセ
スを制御するか、あるいはファイルまたはビットストリ
ームの特徴をタイムオフセットまたはデータオフセット
の関数として分析することであってよい。
【0017】DVDは、章の始まりに相当するDVDフ
ァイル中の点に対応するデータオフセットを含む別々の
ファイルを含むことがある。しかしながら、通常、DV
Dファイルの中には限られた数の章、その結果限られた
数の基準点があり、このような基準点は、一般的にはタ
イムオフセットのマッピングを対象にしていない。この
ようなデータオフセットファイルは、章の始まり以外、
ファイル内での特定の点の検索にはほとんど役立たな
い。
【0018】
【発明が解決しようとする課題】本発明は、前記従来の
技術が遭遇した問題点を改善しようとしている。
【0019】したがって、ビットストリームの表現を含
むファイル内のそれぞれのデータオフセットを、ビット
ストリーム中の対応するタイムオフセットにマッピング
する少なくとも1つのレコードを備えるテーブルが提供
される。
【0020】このようにして、ビットストリーム中のあ
る特定のタイムオフセットに対応するファイル内のデー
タは、迅速に且つ効率的にアクセスされてよい。
【0021】
【課題を解決するための手段】ここに使用されるよう
に、用語「ビットストリーム」は、好ましくは、例え
ば、時間的に配列される一連のビットを備えるデータを
意味する。用語ビットストリームは、用語データストリ
ームと交替に使用される。ビットストリームは、音声/
画像データを備えてよい、またはこのような音声/画像
データを表現してよい、あるいはそれはテレテキスト情
報、字幕、その他の種類のテキスト情報、数値情報、ま
たはコンピュータプログラムを含むコンピュータデータ
を備えてよい、または表してよい。
【0022】デジタルテレビ伝送及び衛星テレビ伝送
は、一般的には、音声/画像データまたはこのようなデ
ータの表現を備える少なくとも1つのビットストリーム
を備える。しかしながら、コンピュータデバイス、プロ
セッサ、A/D変換器、テレビ、HDVR、あるいはハ
ードディスク、テープ、コンピュータ記憶装置、CD、
またはDVDなどの記憶装置などのデジタルデバイスの
中、あるいは間で伝送されるデータは、ビットストリー
ム、またはビットストリームの表現を備えてよい。
【0023】タイムオフセットは、例えばビットストリ
ームの始まりなどの定められた点からのビットストリー
ム中のある特定の点の時間でのオフセットであってよ
い。ファイル内のデータオフセットは、例えば、ファイ
ルの始まりなどの定められた位置に関するメモリ内の位
置であってよい。ビットストリームがメモリ内の一連の
ビットを備えるファイルとして記憶される場合には、デ
ータオフセットは、例えば、ファイルの始まりからのビ
ット数であってよい。
【0024】ここで使用されるように、用語「テーブ
ル」は、好ましくは、少なくとも1つのデータポイント
を備えるデータを意味する。テーブルは、このような少
なくとも1つのデータポイントを同種または異種の他の
データポイントに、直接的または間接的にマッピングし
てよい。テーブルは、データベース、スプレッドシー
ト、または例えば、ハードディスク、フロッピー(登録
商標)ディスク、CD、DVD、または光記憶装置など
の例えば電子データ記憶装置内に記憶されるファイル、
あるいは例えばプリントアウトなどの非電子記憶装置の
形を取ってよい。ここに使用されるような用語「テーブ
ル」は、このような1つまたは複数のデータポイントを
生成するためのアルゴリズムまたはプロセスも意味して
よい。
【0025】好ましくは、テーブルは、ビットストリー
ムの表現を含むファイル内のそれぞれ少なくとも1つの
データオフセットを表す少なくとも1つのデータポイン
ト、及びビットストリーム内の対応する少なくとも1つ
のタイムオフセットを表す少なくとも1つのデータポイ
ントを備える。このようにして、テーブルは、それぞれ
のデータオフセットを対応するタイムオフセットに直接
的にマッピングしてよく、該それぞれのデータオフセッ
ト及び/または該対応するタイムオフセットの値は迅速
に且つ効率的に得られてよい。
【0026】代わりに、テーブルは、ビットストリーム
の表現を含むファイル内のそれぞれ少なくとも1つのデ
ータオフセットを表す少なくとも1つのデータポイント
を備えてよく、テーブルは、該それぞれの少なくとも1
つのデータオフセットを、追加のテーブル内のエントリ
にマッピングしてよく、該追加テーブル内のこのエント
リは、該ビットストリーム中の対応する少なくとも1つ
のタイムオフセットであってよい、あるいは該ビットス
トリーム中の対応する少なくとも1つのタイムオフセッ
トにマッピングしてよい。
【0027】代わりに、テーブルは、ビットストリーム
中のそれぞれの少なくとも1つのタイムオフセットを表
す少なくとも1つのデータポイントを備えてよく、テー
ブルは、該それぞれの少なくとも1つのタイムオフセッ
トを追加のテーブル内のエントリにマッピングしてよ
く、該追加テーブル内のこのエントリは、ビットストリ
ームの表現を含むファイル内の対応する少なくとも1つ
のデータオフセットであってよい、あるいはビットスト
リームの表現を含むファイル内の対応する少なくとも1
つのデータオフセットにマッピングしてよい。
【0028】特に、音声/画像データは、1つのフレー
ムまたは一連のフレームを表すビットストリームの形を
取ってよい。このようなビットストリームは、このよう
なフレーム内のピクセルまたは点を表す一連のビットを
備えてよい。フィルムまたは動画のその他のシーケンス
は一連のコマを備えてよく、各コマが別の画像を表して
よい。関連付けられる音声情報、及び条件付アクセスま
たは権利付与情報などの事実上他の情報もこのようなビ
ットストリームに含まれてよい。
【0029】好ましくは、該少なくとも1つのそれぞれ
のデータオフセット及び/または該少なくとも1つのそ
れぞれのタイムオフセットの値は、ビットストリームの
特徴及び/またはビットストリームの表現に従って選ば
れる。
【0030】好ましくは、ビットストリームは、可変ビ
ット・レートビットストリームである。
【0031】このようにして、ビットストリーム内のあ
る特定のタイムオフセットに対応するファイル内のデー
タは、たとえファイル全体でのデータオフセットとビッ
トストリーム全体でのタイムオフセットの間に直線関係
がないにしても迅速に、且つ効率的にアクセスされてよ
い。
【0032】ここに使用されるように、用語「可変ビッ
ト・レートビットストリーム」は、好ましくは、時間ま
たは場所などのパラメータとともに変化してよく、パラ
メータの特定の値または値の範囲でのデータのある部分
を表すビットの数が、該パラメータの別の値または値の
範囲でのデータの別の部分を表すビット数に対して異な
ってよいデータを表す一連のビットを備えるビットスト
リームを意味する。
【0033】したがって、例えば、ビットストリームが
画像コマを表す一連のビットを備え、この画像のある部
分、例えば前景オブジェクトを表すために必要とされる
ビット数が該画像の別の部分、例えば無地の背景を表す
ために必要とされるビット数より多い場合には、ビット
ストリームは可変ビット・レートビットストリームであ
ってよく、該ビットストリーム中の、つまりこのような
ビットストリームの表現を含むファイル内のデータオフ
セットは、該画像コマ自体の空間オフセットとともに線
形に変化しない可能性がある。
【0034】例えば、時間的に配列された一連のビット
を備えるビットストリームにおいて、ビットレートは、
該ビットストリーム中の単位時間あたりのビット数であ
ってよく、及び可変ビット・レートビットストリーム
は、単位時間あたりのビット数がタイムオフセットとと
もに変化してよいビットストリームであってよい。
【0035】ビットストリームが、一連の周期的に間隔
をあけて配置される時間変化する画像コマ、例えばフィ
ルムを表す一連のビットを備え、あるコマを表すために
必要なビットの数が別のコマを表すために必要なビット
数未満である場合には、ビットストリームは可変ビット
・レートビットストリームであってよく、ビットストリ
ームの表現を含むファイル内のデータオフセットは、ビ
ットストリーム中、つまりフィルム自体の中のタイムオ
フセットとともに線形に変化しない可能性がある。
【0036】このような可変ビット・レートビットスト
リームは、HDVR、あるいは実際には、セットトップ
ボックスに含まれるか、セットトップボックスと関連付
けられる任意のビデオデバイスまたは音声デバイス、あ
るいはコンピュータ、プロセッサ、またはハードディス
クなどの大量記憶装置、つまりDVDに伝送されるか、
それに記憶されるか、あるいはそれによって生成される
データなどの圧縮された、または符号化されたデジタル
データ(またはこのようなデータの表現)を備えてよ
い。このような可変ビット・レートビットストリーム
は、DVB−CS、DES、3DESを含むさまざまな
暗号化または符号化アルゴリズムによって保護されてい
るMPEG−2、MPEG−4、MP3を含む多岐に渡
る圧縮フォーマットのデータを含み、画像及びまたは音
声データ、テレテキスト情報、字幕、他の種類のテキス
ト情報、スーパーインポーズデータ、コンピュータデー
タ、またはこのようなデータの表現を含んでよい。
【0037】ここに使用されるように、用語「暗号にす
る」、「符号化する」、及び「暗号化する」は、好まし
くは交互に使用されると理解されなければならない。同
様に、用語「解読する」、「復号する」及び「平文に直
す」は、好ましくは交互に使用されると理解されなけれ
ばならない。
【0038】事実上、前述されたものを含む、すべてで
はないが、多くの業界規格の圧縮または暗号化フォーマ
ットのデータを含むビットストリームは、元来、可変速
度サービスを有してよい。
【0039】例えば、多くの圧縮フォーマットは、時間
帯ごとに独立したデータセットを生成するよりむしろ、
ある時間帯から別の時間帯へ基準データに変化をマッピ
ングする技法を使用する。特に、MPEGデータは、ビ
ットストリーム中のデータの他の部分とは無関係に、例
えば映画の中の1コマなどの、データ、特に視聴覚デー
タの一部分を生成し直すために使用できるキーフレー
ム、及び関連付けられるキーフレームから変化をマッピ
ングするデルタフレームを含む。ビットストリーム中の
キーフレームと関連付けられるビットレートは、通常、
デルタフレームと関連付けられるビットレートより速く
なるだろう。
【0040】ここに使用されるような用語「キーフレー
ム」は、好ましくは、データの他の部分と無関係に、デ
ータのそれぞれの追加部分を再生するために独立して使
用できるデータのある部分を意味する。一般的には、デ
ータの該それぞれの追加部分は視聴覚データであり、キ
ーフレームは一般的にはビットストリーム中に含まれて
よい。
【0041】キーフレームは、例えば、映画の中のある
特定の場面など、画面上に表示するためにイメージデー
タを生成し直すために独立して使用されてよい。
【0042】用語「キーフレーム」は、ここに使用され
るように、好ましくは、データの別の部分に従って、デ
ータのそれぞれの追加部分を生成し直すために使用でき
るデータの部分を意味する用語「デルタフレーム」と対
照されてよい。一般的には、データの前記別の部分はキ
ーフレームであり、デルタフレームがこのキーフレーム
から変化をマッピングする。
【0043】例えば、映画は、画面上に連続して表示さ
れる一連のイメージを備えてよい。1つのイメージを表
すデータはキーフレームの形を取ってよく、該イメージ
はデータの他の部分とは無関係に該キーフレームから生
成し直されてよい。
【0044】その後のイメージを表すデータはデルタフ
レームの形を取ってよく、これらのイメージは、キーフ
レームに従って該デルタフレームから生成し直されてよ
い。一般的には、デルタフレームは、キーフレームデー
タによって表されるイメージから、イメージ内の変化を
マッピングするだろう。ビットストリームは、先行する
キーフレームから変化をマッピングする一連のデルタフ
レームと時間内にインタリーブされる一連のキーフレー
ムを備えてよい。
【0045】MPEG−2プロトコルの元では、ビデオ
データは、両方とも前記のこの用語の使用に従ってデル
タフレームとして分類できるフレーム間(interf
rames)(Pフレーム)及び双方向フレーム(Bフ
レーム)とインタリーブされるフレーム内(intra
frames)(Iフレーム)として知られる一連のキ
ーフレームを備える。フレーム間(Pフレーム)は先行
するフレームから変化をマッピングするが、Bフレーム
は先行するフレームと続くフレームのどちらかまたは両
方から変化をマッピングする。Pフレーム及びBフレー
ムのIフレームとのインタリーブは、エンコーダに依存
し、定期的である必要はない。
【0046】ファイルが符号化される場合に、好ましく
は該少なくとも1つのレコードが、符号化されたファイ
ル内のデータオフセットをビットストリーム中の対応す
るタイムオフセットにマッピングする。
【0047】したがって、ある特定のタイムオフセット
でのデータ、つまり対応するデータオフセットを求める
ファイルの探索は、該ファイルを復号する必要なく可能
にされ、このようにして機密保護手段を維持し、データ
に対するアクセスの効率を高める。
【0048】このような符号化されたファイルは、例え
ばMPEG−2及びDVB−CSまたはMP3及び3D
ESなどの、例えば圧縮プロセスと暗号化プロセスの任
意の組み合わせの対象となるファイルを含んでよい。
【0049】好ましくは、テーブルは少なくとも3つの
レコードを備え、タイムオフセットは周期的である。
【0050】したがって、ビットストリーム中に時間で
周期的に間隔をあけて配置される点は、迅速に且つ効率
的にアクセスされてよく、読み飛ばし、早送り、及び巻
き戻しなどの時間に依存するプロセスの迅速で円滑、及
び効率的な動作を可能にする。
【0051】周期的なタイムオフセットは、章などのビ
ットストリームの特定な部分に、あるいは少なくとも1
つの期間があるビットストリーム全体を通して位置して
よい。
【0052】好ましくは、タイムオフセットの期間は変
えられる。したがって、検索、早送り、巻き戻し、また
は読み飛ばしなどのプロセスの速度は変えられてよい。
【0053】期間は、ビットストリーム、つまりビット
ストリームの部分を通して変わってよく、時間につれて
変わってよい。周期性はユーザによって変えられてよい
か、あるいは例えばユーザの動作に、またはビットスト
リームの特性に、またはビットストリームで表される視
聴覚データなどのデータの特性に反応して自動的に変え
られてよい。一般的には、期間はある特定的なファイル
トラック、つまり番組を通して同じままとなるだろう。
【0054】例えば、ある特定のビットストリームが映
画の表現を備える場合には、位置決め点は、例えば、映
画の中のアクションシーケンスに関連付けられてよい、
高いビットレートでビットストリームの部分に対応して
テーブル内に挿入されてよい。代わりに、テーブルは更
新されてよく、例えば点は、ビットストリームのある特
定の部分に対応して、ユーザが、例えば早送り、休止ま
たは巻き戻しなどのビットストリームのその部分に対応
する多数の動作を実行する場合に自動的に挿入されてよ
い。このようなタイムオフセットは、ユーザの要求で挿
入されてもよい。
【0055】さらに、タイムオフセット及びデータオフ
セットは、章の始まりまたは最後などのファイルまたは
関連付けられるビットストリームの中の他の好ましい点
に対応してよい。
【0056】好ましくは、タイムオフセットの期間は、
ビットストリームの特性に適合するように選ばれ、好ま
しくは0.5秒、1秒、2秒または10秒である。
【0057】例えばMPEG−2ビットストリームのケ
ースでは、キーフレームは、2Hzという周波数で発生
してよいため、位置決め点の時間オフセットが0.5秒
という期間で選ばれると、位置決め点はキーフレームに
一致してよい。同様に、キーフレームがビットストリー
ムの中で発生する周波数が変わると、位置決め点のタイ
ムオフセットの期間は、位置決め点及びキーフレームが
一致するように変わることがある。
【0058】タイムオフセットの期間は、ビットストリ
ームの他の特性に適合するように選ぶこともできる。
【0059】さらに、タイムオフセットの期間は、ビッ
トストリームの記憶されている表現の特性に従って、及
び好ましくは暗号期間のサイズに従って選ばれてよい。
【0060】好ましくは、ビットストリームは、視聴覚
データのそれぞれの少なくとも1つの部分を生成し直す
ために独立して使用できるビットストリームデータの少
なくとも1つの部分を備え、該少なくとも1つのレコー
ドのタイムオフセットは、ビットストリームデータの該
それぞれの少なくとも1つの部分に一致する。
【0061】データのこのような部分は、例えばMPE
Gビットストリーム中のキーフレームであってよい、及
びまたは例えば背景イメージ、またはオーバレイイメー
ジを表してよい。データのこのような部分は、直接的に
且つ即座にアクセスされてよく、音声/画像データの代
表的な出力は、ビットストリームを通してさまざまな点
で速やかに得られてよい。
【0062】好ましくは、ビットストリームデータの該
少なくとも1つの部分は、キーフレームを備える。
【0063】好ましくは、ビットストリームはMPEG
データを備え、ビットストリームデータの該少なくとも
1つの部分はフレーム内を備える。
【0064】好ましくは、ビットストリームは、ビット
ストリームデータの該少なくとも1つの部分とともに視
聴覚データの一部を生成し直すために使用できるビット
ストリームデータの少なくとも1つの追加部分を備え、
好ましくはビットストリームデータの該少なくとも1つ
の追加部分はデルタフレームを備える。
【0065】したがって、早送り、巻き戻し及び読み飛
ばしなどのプロセスの円滑で速やか、且つ効率的な動作
を可能にすることができる。キーフレームの位置を突き
止める速度が加速されてよいので、及びデルタフレーム
などのデータの依存する部分を処理する必要はない、あ
るいはデータの限られた数のこのような依存する部分だ
けが処理される必要がある場合があるので、これらの動
作の潜在的な最大速度もこのようにして加速されてよ
い。
【0066】もしかしたら、ビットストリームの表現が
符号化され、好ましくはテーブル内の該少なくとも1つ
のレコードが復号データにマッピングされるかもしれな
い。
【0067】このような復号データは、それぞれがビッ
トストリームの符号化された表現のそれぞれの部分を復
号するように適応される復号データの複数の断片を備え
てよい。
【0068】好ましくは、テーブルは、それぞれがビッ
トストリームの表現を含むファイル内のそれぞれのデー
タオフセットを、該ビットストリーム中の対応するタイ
ムオフセットにマッピングする複数のレコードを備えて
よく、各レコードは、ビットストリームの符号化された
表現のそれぞれの部分を復号するためにそれぞれの復号
データにマッピングされてよい。
【0069】さらに、ビットストリームの表現は、復号
データにマッピングするデータの少なくとも1つの断片
を備えてよい、及び/または復号データを備えてよい。
【0070】好ましくは、ビットストリームの記憶され
ている表現を復号する上で、ビットストリーム自体の該
記憶されている表現内のデータに対し、及び/またはこ
こに記述されるようなテーブルの中に記憶される、また
はそれによってマッピングされるデータに対し参照がな
されてよい。
【0071】このような復号データは、キーワードまた
は制御ワードであってよく、それ自体符号化されてよ
く、追加のキーが復号されることを必要としてよい。条
件付きアクセスまたはコンテンツ管理情報を含む多様な
符号化データは、符号化され、記憶されてよい。条件付
きアクセス情報とコンテンツ管理情報の符号化、復号及
び記憶、及びデータ、特にビットストリームデータの記
憶と検索における条件付きアクセス情報とコンテンツ管
理情報の使用は、内容が参照してここに組み込まれ、任
意の部分がここに説明されている任意の特徴または特徴
の組み合わせとの適切な組み合わせで結合されてよい国
際(PCT)特許出願番号第PCT/IB01/018
45号に詳細に説明されている。
【0072】好ましくは、テーブルは、ファイル内のビ
ットストリームの表現のレコーディング中に自動的に生
成される。
【0073】したがって、ビットストリームのレコーデ
ィングが完了した後には記録されたビットストリームの
追加処理は必要なく、レコーディングが中断または終了
されたとしてもHDVR索引表は所定の位置にある。
【0074】好ましくは、テーブル内の少なくとも1つ
のレコードがそれぞれの少なくとも1つの追加レコード
にマッピングされ、好ましくは前記少なくとも1つの追
加レコードは条件付きアクセス情報またはコンテンツ管
理情報を備える。
【0075】復号データは、このような追加レコードを
備えてよい、あるいはこのような追加レコードに含まれ
てよい。
【0076】コンテンツ管理情報または条件付きアクセ
ス情報は、例えば、制御ワード(CW),またはCM
M、ECM、EMM、URM、あるいはデータオフセッ
トまたはタイムオフセットのある特定の値または値の範
囲に位置するデータと関連付けられてよい関連情報であ
ってよい。一般的には、ビットストリームはタイムセグ
メント、つまり(タイムオフセットの範囲を包含する)
暗号期間に分割されてよく、該追加レコードは1つの特
定の暗号期間または複数の暗号期間と関連付けられてよ
い。該追加レコードは、例えば章と、あるいは全体とし
てのファイルと、または特定のユーザまたはユーザグル
ープと関連付けられてもよい。データへのアクセスは、
特定のデータオフセットまたはタイムオフセットに対応
する記憶されている関連情報を読み取ることによって速
やかに且つ効率的に可能とされてよい。データに対する
このような速やかなアクセスは、早送り、巻き戻しまた
は読み飛ばしなどのプロセスという点で特に重要であっ
てよい。
【0077】特に、該追加レコードは、1つのCMMま
たは複数のCMMを備えてよい。
【0078】テーブル内の点がある暗号期間の始まりに
一致しないファイル内のデータオフセットにマッピング
する場合には、HDVRは、通常、CMM、またはこの
ようなCMMに対するポインタ、またはその点にあるデ
ータを復号するために必要な他のコンテンツ管理または
条件付きアクセスの情報にアクセスできないだろう。H
DVRは、一般的には、データの復号を開始するために
このような情報の次のセット、またはこのような情報に
対するポインタを見つけ出すために、ファイルを通して
順方向にまたは逆方向に連続して読み取らなければなら
ないだろう。テーブル内の少なくとも1つのレコードを
少なくとも1つの追加レコードにマッピングすることに
よって、レコードによって索引が付けられるファイル内
の点に適用可能な条件付きアクセスまたはコンテンツ管
理の情報を提供することができ、この点からのデータ
は、このような情報を見つけ出すために最初にファイル
を読み通す必要なく即座に復号できる。この特徴は、例
えば、早送りまたは巻き戻しなどの一定のトリックモー
ド動作の実行において、ファイル内の数多くの点でデー
タが連続して且つ速やかに読み取られる必要がある場合
に特に有利である。
【0079】該追加レコードは、例えば、画面上に表示
できるだろうコメント、またはテレビ制御コマンドなど
のコマンドを備えてよい。代わりに、データは親制御機
構に関係するだろう。このような親制御機構は特定の章
に向けられてよいが、暗号期間及び複数の暗号期間、及
びファイルのユーザにより定義される部分に向けられて
もよい。
【0080】追加レコードは、レコードのテーブル内、
または別個のファイルまたはテーブル内に記憶されてよ
いか、あるいはレコードのテーブル及びまたは関連情報
は、例えばヘッダにファイルとともに記憶されてよい。
【0081】好ましくは、前記少なくとも1つの追加レ
コードは追加テーブルに記憶される。
【0082】このような追加テーブル内のエントリは、
データオフセットをタイムオフセットにマッピングする
テーブル内のエントリに容易にマッピングされてよい。
【0083】好ましくは、前記少なくとも1つの追加レ
コードは、ユーザの命令時に挿入される。
【0084】このようにして、ユーザは、番組またはビ
ットストリームの特性に関する情報を追加、または実際
には削除してよい。例えば、ユーザは、アクセスの制御
を希望する録画された映画の中の特定の場面を選択して
よく、このようなアクセスは親制御機構を起動するレコ
ードの追加または修正によって制御できるだろう。
【0085】好ましくは、テーブル内の前記少なくとも
1つのレコードは、ユーザの命令時に該それぞれの少な
くとも1つの追加レコードにマッピングされる。
【0086】このようにして、ユーザは、どのレコード
がどの追加レコードと関連付けられるのかを制御でき
る。
【0087】好ましくは、ファイルは符号化され、該少
なくとも1つのレコードが、符号化されたファイル内の
データオフセットをビットストリーム中の対応する時間
オフセットにマッピングする。
【0088】好ましくは、少なくとも1つのレコード
は、ビットストリームの特性に従って挿入される。
【0089】好ましくは、少なくとも1つのレコード
は、ユーザの命令時に挿入される。
【0090】このようにして、ファイル内の点は、アク
セスの容易さのためにブックマークが付けられてよい。
【0091】レコードは、番組を見ている間またはファ
イルを読んでいる間に、「進行中に」ユーザによって挿
入されるか、あるいは実際には削除または修正されてよ
いか、あるいはビットストリームを通してユーザによっ
て指定される間隔に対応する点でファイル内に挿入され
てよい。
【0092】好ましくは、少なくとも1つのレコード
は、それぞれのデータオフセットを表す第1データポイ
ント、及び対応するタイムオフセットを表す第2データ
ポイントを備える。
【0093】好ましくは、少なくとも1つのレコード
は、自動的に挿入される。
【0094】このようにして、ユーザは、直接的または
間接的に、ファイルまたはビットストリームを全体とし
て、または部分的に見直す必要なく、重要なビットスト
リームの特定な部分にブックマークを付けてよい。例え
ば、ユーザは、映画を見る必要なく、ビットストリーム
の表現を含むファイルに表現が記憶される映画の部分に
ブックマークを付けてよい。
【0095】特定的な型のデータ、または例えばビット
ストリーム内でのデータ対時間の割合が(例えば、映画
の中のアクションシーケンスに、または爆発または落雷
などのきわめて対照的なイメージを含む映画の中の場面
に相当してよい)一定の範囲内にあるビットストリーム
の部分は、位置を突き止められ、ブックマークを付けら
れてよい。
【0096】好ましくは、テーブルは、ビットストリー
ムの表現とともにファイルの中に記憶するために適応さ
れる。
【0097】このようにして、ファイル及び関連付けら
れるテーブルは、容易に、例えば記憶、処理またはとも
に伝送されてよい。例えば、テーブルは、放送センタで
作成され、ファイルとともに伝送されてよく、このよう
にしてHDVRまたは他のデバイスが、テーブル自体を
作成する能力を必要とせずに、テーブルを読み取り、そ
の中に含まれている情報を使用することができる。ま
た、放送局は、ファイル及び関連付けられるテーブルに
対する集中制御を保持してよい。
【0098】テーブルは、HDVRで、あるいはセット
トップボックス内に含まれる、またはセットトップボッ
クスと関連付けられる任意のデバイス内で、あるいはデ
ジタルデータを読み取るように適応された任意のデバイ
ス内で作成、及びまたは記憶されてもよい。
【0099】発明の関連する態様においては、前述され
たようにテーブルを作成することを備える、ビットスト
リームの表現を含むファイルの探索を容易にする方法が
提供される。
【0100】特に、ビットストリームの表現を含むファ
イル内のそれぞれのデータオフセットを、該ビットスト
リーム内の対応するタイムオフセットにマッピングする
少なくとも1つのレコードを備えるテーブルを生成する
ことを備える、ビットストリームの表現を含むファイル
の探索を容易にする方法が提供される。
【0101】好ましくは、該少なくとも1つのそれぞれ
のデータオフセット及び/または該少なくとも1つのそ
れぞれのタイムオフセットの値は、ビットストリームの
特性及び/またはビットストリームの表現に従って選ば
れる。
【0102】前述されたように、ビットストリームは、
好ましくは可変ビット・レートビットストリームであ
る。
【0103】好ましくは、テーブルは、少なくとも3つ
のレコードを備え、タイムオフセットは周期的である。
【0104】タイムオフセットが周期的である場合に
は、その期間は、好ましくはビットストリームの特性に
適合するように選ばれ、好ましくは0.5秒、1、2
秒、または10秒である。
【0105】好ましくは、タイムオフセットの期間は、
ビットストリームの記憶されている表現の特性に従っ
て、及び好ましくは暗号期間のサイズに従って選ばれ
る。
【0106】好ましくは、ビットストリームは、視聴覚
データのそれぞれ少なくとも1つの部分を生成し直すた
めに独立して使用できるビットストリームデータの少な
くとも1つの部分を備え、該少なくとも1つのレコード
のタイムオフセットは、ビットストリームデータの部分
のそれぞれの少なくとも1つに一致する。ビットストリ
ームデータの該少なくとも1つの部分は、ビットストリ
ームが例えばMPEGデータを備える場合には、フレー
ム内などのキーフレームを備えるだろう。
【0107】前述されたように、好ましくは、ビットス
トリームは、ビットストリームデータの該少なくとも1
つの部分とともに視聴覚データの一部を生成し直すため
に使用できるビットストリームの少なくとも1つの追加
部分を備え、ビットストリームデータの該少なくとも1
つの追加部分は、デルタフレームを備えてよい。
【0108】好ましくは、テーブルは、ファイル内のビ
ットストリームの表現のレコーディング中に自動的に作
成される。
【0109】ビットストリームの表現は符号化されてよ
く、好ましくはテーブル内の該少なくとも1つのレコー
ドが復号データにマッピングされる。
【0110】好ましくは、復号データは、それぞれが、
ビットストリームの符号化された表現のそれぞれの部分
を復号するように適応される、復号データの複数の断片
を備える。
【0111】好ましくは、テーブルは、それぞれがビッ
トストリームの表現を含むファイル内のそれぞれのデー
タオフセットを、該ビットストリーム中の対応するタイ
ムオフセットにマッピングする複数のレコードを備え、
各レコードは、ビットストリームの符号化された表現の
それぞれの部分を復号するためにそれぞれの復号データ
にマッピングされてよい。
【0112】好ましくは、ビットストリームの表現は、
復号データにマッピングするデータの少なくとも1つの
断片を備える。復号データは、少なくとも1つの追加レ
コードを備えてよいか、あるいは少なくとも1つの追加
レコードに含まれてよく、好ましくは前記少なくとも1
つの追加レコードは、条件付きアクセス情報またはコン
テンツ管理情報を備えてよい。
【0113】再び、テーブル内の少なくとも1つのレコ
ードが、それぞれの少なくとも1つの追加レコードにマ
ッピングされてよく、好ましくは前記少なくとも1つの
追加レコードは条件アクセス情報またはコンテンツ管理
情報を備える。
【0114】好ましくは、前記少なくとも1つの追加レ
コードは、追加テーブルに記憶される。
【0115】前述されたように、前記少なくとも1つの
追加レコードは、ユーザの命令時に挿入される。
【0116】好ましくは、テーブル内の該少なくとも1
つのレコードは、ユーザの命令時に、該それぞれの少な
くとも1つの追加レコードにマッピングされる。
【0117】好ましくは、ファイルは符号化され、該少
なくとも1つのレコードは、ビットストリーム内の対応
するタイムオフセットに、符号化されたファイル内のデ
ータオフセットをマッピングする。
【0118】好ましくは、少なくとも1つのレコード
が、ビットストリームの特性に従って挿入される。
【0119】好ましくは、少なくとも1つのレコード
が、ユーザの命令で挿入される。
【0120】好ましくは、少なくとも1つのレコード
は、それぞれのデータオフセットを表す第1データポイ
ント、及び対応するタイムオフセットを表す第2データ
ポイントを備える。
【0121】好ましくは、少なくとも1つのレコードが
自動的に挿入される。
【0122】好ましくは、テーブルは、ビットストリー
ムの表現を含むファイルに記憶される。
【0123】追加の態様においては、ファイル内の位置
にジャンプするステップと、例えば、データの所望され
る部分が見つけられるまでこの位置からデータを読み取
るステップとを備える、データの所望される部分を求め
てビットストリームの表現を含むファイルを探索する方
法が提供される。
【0124】これは、例えば所望される点に達するまで
ビット単位でファイルの中を進む代替方法より、ファイ
ル内のある特定の点を見つけるためのさらに効率的な方
法を提供できる。
【0125】好ましくは、データを読み取るステップ
は、データの所望される部分が見つけられるまで読み取
ること、及び/または固定量のデータを読み取ること、
及び/または固定時間帯を表すデータの量を読み取るこ
と、及び/またはデータのある特定の断片が読み取られ
るまでデータを読み取ることとを備える。
【0126】再び、ビットストリームは、可変ビット・
レートビットストリームである。
【0127】このようにして、ファイル内の特定の点
は、例えば、ファイル内のデータオフセットとビットス
トリーム中のタイムオフセットの間に線形関係がないと
しても、所望される点に達するまでビット単位でファイ
ルの中を進む方法を使用するよりさらに効率的に見つけ
ることができる。
【0128】好ましくは、データの所望される部分は、
データの追加部分を生成し直すために独立して使用でき
るビットストリームデータを表す。
【0129】データの追加部分は、例えば視聴覚データ
であってよく、所望される部分は、キーフレームであっ
てよい。
【0130】好ましくは、ファイル内の位置にジャンプ
するステップは、ここに説明されるようなテーブルから
レコードを読み取ることと、該レコード内で指定される
データオフセットにジャンプすることを備える。
【0131】好ましくは、ファイル内の位置にジャンプ
するステップは、ここに説明されるようなテーブルから
レコードを読み取ることと、該レコード内で指定される
データオフセットにジャンプすることを備え、少なくと
も1つの追加レコードがデータを読み取るステップに使
用される。
【0132】該少なくとも1つの追加レコードは、条件
付きアクセス情報、またはコンテンツ管理情報であって
よく、特に1つのまたは複数のCMMであってよい。該
追加レコードは、ファイル内のデータを復号するために
使用されてよい。
【0133】好ましくは、レコード内のデータオフセッ
トは、ファイル内の所望される位置に対応する。
【0134】このようにして、所望される点は、ファイ
ル内の所望される点の位置を突き止める前に、追加のデ
ータを読み取る必要なく、ファイル内のデータオフセッ
トに相当するファイル内の点にジャンプすることによっ
て見つけ出すことができる。
【0135】好ましくは、データを読み取るステップ
は、データを復号することを備える。さらに、データを
読み取るステップは、前述されたようにテーブルからレ
コードを読み取ることと、復号データを使用してデータ
を復号することを備えてよい。
【0136】追加の態様において、ここに説明されるよ
うな方法を使用してデータのそれぞれの所望される部分
を探索することを備える、データの複数の所望される部
分に対するビットストリームの表現を含むファイルを探
索する方法が提供される。
【0137】このようにして、ファイル内の一連の所望
される点は、迅速に且つ効率的に位置を突き止めること
ができ、これらの点にあるデータを読み取ることができ
る。
【0138】好ましくは、データの所望される部分は、
時間的に周期的に間隔をあけて配置されるビットストリ
ームの部分を表す。
【0139】このようにして、時間的に均等に間隔をあ
けて配置されるビットストリームの部分は、迅速に且つ
効率的に位置を突き止め、読み取ることができ、記憶さ
れているビットストリームでの早送りまたは巻き戻しな
どのトリックモード動作の迅速且つ効率的な実行を可能
にしてよい。
【0140】好ましくは、データの所望される部分は、
早送り動作または巻き戻し動作を達成するために使用さ
れる。
【0141】一般的には、関連付けられるCMMを使用
してデータの所望される部分の位置が突き止められ、読
み取られ、結果的に生じるデータ、通常は、視聴覚デー
タは、ディスプレイ装置に出力されてよい。
【0142】好ましくは、データの所望される部分によ
って表されるビットストリームデータの部分間の時間帯
は、指定された早送り速度または巻き戻し速度を達成す
るために選ばれる。
【0143】好ましくは、データの所望される部分によ
って表されるビットストリームデータの部分間の時間帯
は、方法を実施するために使用される手段の特性に従っ
て選ばれる。
【0144】データが、位置を突き止められ、読み取ら
れ、ディスプレイ装置とともにHDVRなどの手段によ
って表示されてよい最大速度は、このような手段の特性
に依存し、ハードウェア特性またはソフトウェア特性の
どちらかに依存してよい。指定される先送り速度または
巻き戻し速度は、例えば、記憶されているファイル内の
一定の割合のデータがプレイバックされる場合に持続で
きるにすぎない可能性がある。例えば、ファイル内のす
べてのデータを通常の速度より速くプレイバックするこ
とは可能でないことがある。他方、プレイバックされる
データの割合の制限が厳しすぎると、例えば画質が劣化
することがある。
【0145】好ましくは、特性は、ファイルからのデー
タの検索または処理の最大持続可能速度である。
【0146】ビットストリームデータの部分間の時間帯
を変えることによって、ファイルからのデータの検索ま
たは処理の最大持続可能速度が、手段の指定された特性
について得ることができる。したがって、例えば、最適
の画質が、指定された早送り速度または巻き戻し速度に
ついて得られてよい。
【0147】好ましくは、特性は、読み取り/書き込み
ハードディスクアクセス時間、またはパージングデマル
チプレクサ帯域幅、またはオペレーティングシステムの
スケジューリング精度である。
【0148】好ましくは、指定される早送り速度または
巻き戻し速度は、ユーザの命令時に変えられる。
【0149】発明の追加の態様においては、前述された
ような方法を使用してデータの所望される部分を探索す
ることと、データの所望される部分を検索することを備
える、ビットストリームの表現を含むファイルからデー
タの少なくとも1つの所望される部分を検索する方法が
提供される。
【0150】好ましくは、該方法は、前述に従って方法
を使用してデータのそれぞれの所望される部分を探索す
ることと、データのそれぞれの所望される部分をその結
果として検索することを備える、ファイルからデータの
複数の所望される部分を検索するための方法である。
【0151】発明の別の態様においては、前述されたよ
うな方法を使用してビットストリームの表現を含むファ
イルから少なくとも1つの所望される部分を検索するこ
とと、データの該少なくとも1つの所望される部分を出
力することとを備える、データを出力する方法が提供さ
れる。
【0152】発明のまだ追加の態様においては、前述さ
れるような方法を使用してデータの複数の所望される部
分を検索することと、その結果としてデータのそれぞれ
の所望される部分を出力することを備える、データを出
力する方法が提供される。
【0153】好ましくは、データの複数の所望される部
分のそれぞれは、ビットストリームデータのそれぞれの
部分を表し、ビットストリームデータの該それぞれの部
分は、時間的に周期的に間隔をあけて配置される、及び
/または同じ持続時間を有する。
【0154】発明の別の態様は、前述されたようにデー
タを出力することを備える、早送り動作または巻き戻し
動作を達成する方法を提供する。
【0155】発明の追加の態様においては、ビットスト
リームの表現及びここに説明されるようなテーブルを備
えるファイルが提供される。
【0156】発明は、ビットストリーム内のタイムオフ
セットをファイル内のデータオフセットにマッピングす
る索引を備える索引表も提供する。
【0157】まだ追加の態様においては、ここに説明さ
れるようなテーブルの作成のためのプロセッサ、及びビ
ットストリームの特性の分析、及びこの分析に従うこの
ようなテーブル中へのレコードの挿入のためのプロセッ
サが提供される。
【0158】ここに説明されるようなテーブルの記憶の
ための記憶手段も提供され、好ましくは、該記憶手段
は、ビットストリームの表現を含むファイルの記憶のた
めに適応される。
【0159】ここに記述されるような記憶手段を備え、
好ましくはさらにここに説明されるようなプロセッサを
備えるハードディスクビデオレコーダ、及びこのような
ハードディスクビデオレコーダを備える受信機/デコー
ダも提供される。好ましくは、このような受信機/デコ
ーダを組み込む放送システムも提供される。
【0160】追加の態様においては、ここに説明される
ようなハードディスクビデオレコーダと通信するように
適応される受信機/デコーダが提供され、このような受
信機/デコーダを組み込む放送システムが提供される。
【0161】発明は、さらに、ここに説明される方法の
どれかを実施するため、及び/またはここに説明される
装置特徴のどれかを具体化するためのコンピュータプロ
グラム及びコンピュータプログラム製品、及びここに説
明される方法のどれかを実施するため、及び/またはこ
こに説明される装置特徴のどれかを具体化するためのプ
ログラムをその上に記憶しているコンピュータ読み取り
可能媒体を提供する。
【0162】発明は、ここに説明される方法のどれかを
実施するため、及び/またはここに説明される装置機能
のどれかを具体化するためのコンピュータプログラム及
び/またはコンピュータプログラム製品を具体的に具現
する信号、このような信号を伝送する方法、及びここに
説明される方法のどれかを実施するため、及び/または
ここに説明される装置機能のどれかを具体化するための
コンピュータプログラムをサポートするオペレーティン
グシステムを有するコンピュータ製品も提供する。
【0163】既知のシステムの追加の態様の考慮を始め
ると、いくつかの既知のシステムは、ハードディスクで
受信されたスクランブルされたビットストリーム(つま
り、符号化されたデジタルテレビ信号)を記録すること
ができる。1つのこのようなシステムにおいて、ビット
ストリームは、それを記録したときの圧縮され、スクラ
ンブルされた形式で保持されるが、その結果レコーディ
ングは(定期的に置換される)活用キーの持続期間だけ
有効である。この問題を克服する1つの技法は、本来、
ビットストリームから、それが記録される前にエンタイ
トルメント制御メッセージ(ECM)を抽出すること、
従来通りにECMを平文に直すこと、ECMを(各加入
者に固有の)内部活用キーで暗号化し直すこと、及び
(つねにビットストリームをスクランブルするために使
用される制御ワードを改変しないで)ECMをその元の
位置のビットストリームの中に入れ直すことから成り立
っている。これは、機密保護を高めるという所望される
効果を有するが、それは、特に、非常に計算上集約的で
ある、ビットストリーム内での各ECMの位置が正確に
突き止められることを要求するため、実現するのは複雑
である。
【0164】本発明は、前記及び他の従来の技術におけ
る問題も改善しようとする。
【0165】したがって、発明の追加の態様において、
位置を推定するための手段を備える、ビットストリーム
内の位置を評価するための方法が提供される。
【0166】例えば、位置を、それを正確に突き止める
代わりに推定することにより、位置を評価するプロセス
はさらに容易になる。
【0167】位置は、好ましくは、ビットストリーム中
の、MPEGテーブルなどのデータパケットの空間的な
位置である。それは、代わりに、例えば秒で測定される
ビットストリーム内の時間的な位置であってよい。好ま
しくは、装置は、リアルタイムに処理されているビット
ストリームに関して動作するように適応されるが、それ
は静的及び/またはランダムアクセスビットストリーム
に関して動作するように適応されてもよい。さらに、ビ
ットストリームは、好ましくは(MPEGフォーマット
などの)パケット化された、及び/または音声/画像デ
ータを含む。
【0168】ここに使用されるような用語「音声/画
像」は、好ましくは、音声または画像どちらかの内容、
あるいは2つの組み合わせを意味する。受信機/デコー
ダによって受信される放送信号という文脈では、用語
は、字幕、テレテキスト、同期及びテレビ番組を構成す
る音声構成要素とビデオ構成要素に密接に関係して伝送
される他のデータを包含してよい。
【0169】位置を推定する手段は、好ましくは、ビッ
トストリーム中の既知の位置に従って位置を推定するよ
うに適応される。既知の位置は、例えば、ビットストリ
ームのさまざまな部分の間での遷移だろう。推定がビッ
トストリーム中の既知の位置に依存しているため、推定
をさらに正確に行うことができる。
【0170】好ましい実施形態においては、装置は、さ
らに、複数の代替策から既知の位置を選択するための手
段を備える。これは、プロセスの選択性を高めることに
よって、推定をさらに精緻化できる。
【0171】結果的に、既知の位置を選択するための手
段は、好ましくは、評価される位置に対するその近接さ
に従って既知の位置を選択するように適応される。
【0172】したがって、推定される位置はそれ自体容
易に決定できない、あるいはまったく正確に決定できな
いが、推定される位置にそれほど近くない他の既知の位
置に優先して、推定される位置に近い既知の位置を突き
止めることは可能である場合がある。これが、位置が推
定される精度を、ビットストリーム中の少なくとも1つ
の既知の位置に従ってさらに適切に制限できるようにす
る。
【0173】既知の位置を選択するための手段は、評価
される位置に最も近い2つの既知の位置の1つを整然と
選択するように適応されてよい。これは、さらに、推定
の精度を高めることができる。特に、既知の位置は、推
定される位置の前または後ろのどちらかの最も近い位置
であるように選ばれる。どちらかの場合には、これは、
位置の推定をビットストリーム中でそれぞれ通常後方
に、または通常前方にどちらかで偏向させることがあ
る。代わりに、既知の位置は、推定値の通常の偏向を生
じさせないことがある、どちらかの方向での最も近い位
置であるように選ばれてよい。
【0174】さらに、既知の位置を選択するための手段
は、ビットストリームの第1部分と第2部分の間のビッ
トストリーム内の遷移として既知の位置を選択するよう
に適応されてよい。このような第1部分と第2部分は、
例えば、直接メモリアクセス(DMA)データ転送で転
送されるビットストリームのセグメントであるだろう。
【0175】これは、既知の位置を突き止めるときに、
ビットストリームの既存の分割を利用することによって
推定をさらに効率的にすることがある。ビットストリー
ムの区分の内の1つは、推定される位置を含むことがあ
る。
【0176】好ましくは、位置を推定するための手段
は、位置を既知の位置からの偏位として推定し、それに
よって時間−変位の影響を考慮に入れることを可能にす
るように適応されてよい。該偏位はゼロであってよく、
その場合、推定される位置は既知の位置に等しいか、あ
るいはそれは正または負であってよい。
【0177】さらに、位置を推定するための手段は、バ
ッファサイズに従って位置を推定するように適応されて
よい。好ましくは、位置は、とりわけ、既知の位置にバ
ッファサイズを追加することによって推定される。バッ
ファサイズ(好ましくは、最大サイズとして定められる
か、あるいは代わりに予想されるサイズまたは正確なサ
イズ)は、例えばFIFOなどのビットストリームを移
すために使用されるバッファに関係してよい。バッファ
サイズに従って位置を推定することによって、事実上、
このようなバッファの使用から生じる不確実性及び/ま
たは遅延を考慮に入れることができる。
【0178】代わりに、またはさらに、位置を推定する
ための手段は、機密保護パラメータに従って位置を推定
するように適応されてよい。特に、位置は、とりわけ、
既知の位置に機密保護パラメータを追加することによっ
て推定されてよい。機密保護パラメータは、負または正
であってよく、好ましくは推定値が臨界値を超えるか、
あるいは臨界値範囲内に留まるかのどちらかであり、代
わりにまたはさらに、単一の補正係数の中に(考えられ
るタイミング誤差、ソフトウェア遅延、未知のパケット
サイズ等の)推定値に影響を及ぼす複数の不確実性また
は偏向を要約できることを確実にするために「安全係
数」として利用される。
【0179】好ましい実施形態においては、装置は、さ
らに、ビットストリームを記憶するための手段を備えて
よい。この記憶するための手段は、好ましくは、ビット
ストリームを記憶させるための制御装置を備えるが、代
わりにまたはさらに、ハードディスクなどの対応する記
憶装置を備えてよい。これが、装置の汎用性を高めるこ
とができる。
【0180】この場合、装置は、さらに、ビットストリ
ームとは別個にビットストリームと関連付けられるデー
タを記憶するための手段を備えてよい。ビットストリー
ムに関連付けられるデータは、好ましくは、推定位置、
推定位置に対応するデータ、及び推定位置に対応するデ
ータを記憶されるビットストリームと同期できるように
する情報の内の少なくとも1つを備える。ビットストリ
ームとは別個に、ビットストリームと関連付けられるデ
ータを記憶するための手段は、好ましくは条件付きアク
セスデータを記憶するように適応される。
【0181】この重要な機能は、条件付きアクセスデー
タを受信するための手段、条件付きアクセスデータをビ
ットストリームと同期させるための手段、及びビットス
トリームを記憶するための手段を備える、ビットストリ
ームを操作するための装置を提供する発明の関係する態
様に関しても備えられる。
【0182】条件付アクセスデータをビットストリーム
と同期させることによって、ビットストリーム自体の中
での条件付きアクセスデータに対する依存を削減でき
る。
【0183】前述されたように、装置は、好ましくは、
さらに、ビットストリームとは別個に条件付きアクセス
データを記憶するための手段を備える。しかしながら、
装置は、代わりに、例えば、多重化するか、あるいはそ
れ以外の場合ビットストリームの中にデータを挿入し直
すことによって、ビットストリームの中に条件付きアク
セスデータを記憶するための手段を備えてよい。前者の
場合、条件付きアクセスデータは、記憶されるビットス
トリームも含むファイルの別個の部分に含まれてよい
か、あるいはそれは別個のファイルまたは別の記憶装置
媒体内に記憶されてよい。
【0184】これが、例えば、(対応するビットストリ
ームに関して)通常さらに少量の条件付アクセスデータ
に対するさらに高速なアクセスを可能にすることによっ
て、条件付きアクセスデータを管理する効率を改善でき
る。
【0185】同期させるための手段は、好ましくは、条
件付きアクセスデータとビットストリーム内の対応する
位置の間に基準を作成するように適応される。さらに好
ましくは、装置は、条件付きアクセスデータ及び/また
はビットストリームとの、あるいは条件付きアクセスデ
ータ及び/またはビットストリームに近接する該または
それぞれの基準を記憶するための手段をさらに備える。
これが、条件付きアクセスデータをビットストリームと
同期させるタスクを容易にできる。
【0186】装置は、さらに、例えば、ビットストリー
ムの再生の間に、条件付きアクセスデータに対するアク
セスをさらに容易にできる、テーブルに基準を記憶する
ための手段を備えてよい。
【0187】同期させるための手段は、安全値の範囲か
ら参照される位置(つまり、条件付きアクセスデータと
対応する位置の間の基準での「対応する位置」)を選択
するように適応される。
【0188】安全値の範囲は、好ましくは、条件付きア
クセスデータに対応するビットストリーム中の実際の位
置を備え、これが、条件付きアクセスデータ(またはそ
のコピー)が実際に伝送されるビットストリーム中の位
置である。
【0189】同期させるための手段が参照される位置
を、それが、条件付きアクセスデータが対応するビット
ストリームの部分に含まれるように選択するように適応
される場合、同期させる手段は、好ましくは、さらに、
参照される位置を、それが、条件付きアクセスデータが
対応する暗号期間に含まれるように選択するように適応
される。
【0190】条件付きアクセスデータが対応する暗号期
間との参照される位置のこの整合が、ビットストリーム
と条件付きアクセスデータ間の同期の質を改善できる。
【0191】好ましくは、同期させるための手段は、受
信手段による条件付きアクセスデータの受信を簡略化す
るイベントに従って、参照される位置を選択するように
適応される。これが、ビットストリームと条件付きアク
セスデータをなおさらに密接に同期させることを可能に
する。
【0192】前述されたように、装置は、さらに、ビッ
トストリーム中の位置を推定するための手段を備えてよ
いが、参照される位置は、推定位置に従って選択され
る。
【0193】好まれるように、装置が好ましくは、さら
に、複数の離散セグメント内のビットストリームを転送
するための手段を備える場合、位置を推定するための手
段は、好ましくは、該セグメントの1つの最後に従って
位置を推定するように適応され、さらに、装置は、好ま
しくはさらに少なくとも1つのセグメントのサイズを事
前に決定するための手段を備える。これは、該少なくと
も1つのセグメントのサイズの変動が、推定値自体及び
推定プロセスの安定性に直接的にまたは間接的に影響を
及ぼすことがあるため、推定プロセスの柔軟性を高める
ことができる。
【0194】それは代わりにセグメントのサイズを検出
することを伴ってよいが、事前決定は、好ましくは、セ
グメントのサイズを設定することを伴う。おそらく、シ
ステム性能、FIFO、及びハードディスクサイズなど
の要因に応じて、各セグメントは、例えば、1ビットほ
ど小さく、100Mbほど大きいまたはなおさらに大き
くなるだろう。しかしながら、効率のために、典型的な
MPEG音声/画像ビットストリームにとっては、約1
Mbと、例えば6MBの間の値が適切であってよい。転
送するための手段は、例えば、直接メモリアクセス(D
MA)制御装置、大容量記憶装置、FIFO及び/また
はFIFOマネージャ等であってよい。
【0195】発明の関係する態様において、複数の離散
セグメントの中のビットストリームを転送するための手
段、及びセグメントの1つのプロパティに従ってビット
ストリーム中の位置を推定するための手段を備える、ビ
ットストリームを操作するための装置が提供される。
【0196】このようなプロパティは、例えば、セグメ
ントサイズであるだろう。
【0197】前述されたように、好ましくは、位置を推
定するための手段は、ビットストリーム中の、ECMな
どの条件付きアクセスデータの部分を推定するように適
応される。やはり前述されたように、装置は、好ましく
は、さらに、注記されるように推定の柔軟性を高めるこ
とができるセグメントのサイズを事前に決定するための
手段を備える。
【0198】サイズを事前に決定するための手段は、理
想的には、位置に関連付けられるビットストリームの部
分未満に同等なサイズを事前に決定するように適応され
る。このような部分は、所定数の暗号期間であってよ
く、その場合、暗号期間の数は整数である必要はなく、
実際には、例えば、FIFOバッファの影響を考慮に入
れるために自然数よりわずかに少なくてよい。これが、
推定の安全性を確実にできる。
【0199】サイズを事前に決定するための手段は、や
はりまたは代わりに、ビットストリームの特性に従って
サイズを事前に決定するように適応されてよい。ビット
ストリームの特性に従ってセグメントのサイズを決定す
ることにより、例えば、推定値の精度に影響を及ぼすこ
とのあるビットストリームに関係する係数を考慮に入れ
ることができる。
【0200】さらに、サイズを事前に決定するための手
段は、ビットストリームのビットレートに従ってサイズ
を事前に決定するように適応されてよい。好ましくは、
このビット速度は、問題のセグメント、または好ましく
は位置を含むビットストリームの他の部分について計算
されてよい平均ビットレートである。
【0201】サイズを事前に決定するための手段が、一
定のサイズを事前に決定するように適応される場合、サ
イズを事前に決定するための手段は、さらに静的フィル
タを備えてよい。他方、サイズを事前に決定するための
手段が、可変サイズを事前に決定するように適応される
場合、サイズを事前に決定するための手段は、好ましく
は動的フィルタを備える。
【0202】両方の種類のフィルタは、入力として、好
ましくはビットストリームの少なくとも1つの特性を受
け入れ、出力として所望されるセグメントサイズを生成
する。事実上、好ましくは、ビットストリームの一連の
特性に対応して、数多くのフィルタ係数が使用される。
このような特性は、前述されただろう。フィルタは、例
えばデジタル信号プロセッサ(DSP)、コプロセッ
サ、またはメインプロセッサの制御下で、ソフトウェア
内で実現できる。ここに使用されるような用語「フィル
タ」は、好ましくは、少なくとも1つの入力を少なくと
も1つの出力に変換するためのプロセスまたは装置を意
味する。このようなフィルタは、変数がフィルタ入力で
ある数式の積として見ることができるだろう。
【0203】さらに、サイズを事前に決定するための手
段は、高速動的フィルタ、慣性動的フィルタ、及びハイ
ブリッド動的フィルタの少なくとも1つを備えてよい。
該高速フィルタ及び慣性フィルタは、それぞれ、相対的
に少ない入力値を有する、及び相対的に多くの入力値を
有するという点で特徴付けられる。ハイブリッドフィル
タは、高速フィルタと慣性フィルタ両方の特性を有する
ことを特徴としてよく、好ましくは事実上高速フィルタ
と慣性フィルタの組み合わせであり、総合的なフィルタ
出力は、ある特定の入力が増加しているのか、あるいは
減少しているのかなどの特定の制約に従って、これら2
つのサブフィルタのある特定の1つの出力として選択さ
れる。
【0204】位置を推定するための手段は、少なくとも
1つの過去の推定値の誤差を考慮に入れるように適応さ
れてよい。このような誤差は、例えば、推定位置と実際
位置の間で機能的に観察される時間差であるだろう。こ
れが、推定値を経時的に精緻化できるようにする。
【0205】装置は、さらに、ビットストリームの少な
くとも1つの特性に従って位置を推定するための手段を
備えてよい。例えば、特にビットストリームに関してさ
らに多くの情報が入手できる場合に、これはさらに正確
な推定値を生じさせることがある。
【0206】この重要な機能も独自に提供される。した
がって、発明の関係する態様においては、ビットストリ
ームの少なくとも1つの特性に従って位置を推定するた
めの手段を備える、ビットストリーム内の位置を評価す
るための装置が提供される。
【0207】該、またはそれぞれの特性は、好ましく
は、ビットストリームのビットレート、ビットストリー
ム内の相対位置、及びビットストリームの部分間で経過
する時間の少なくとも1つである。
【0208】装置は、さらに、位置の発生と位置に関係
するイベントの発生の間の分離の約数を推定するための
手段を備える。このような分離の約数は、例えば、後述
される時間△tであろう。これは、さらに優れた推定を
行うためのさらに多くの情報を提供できる。
【0209】ビットストリーム中の位置を推定するため
の手段は、好ましくは、ビットストリーム中の位置に近
いビットストリームのビットレートの推定値とともに、
分離の約数を組み込むように適応される。これは、さら
に推定プロセスを精緻化できる。
【0210】分離の約数を推定するための手段は、好ま
しくは、位置の発生と処理動作の最後の間の分離を測定
するように適応される。該処理動作は、好ましくは、ビ
ットストリーム中の位置に関連付けられるデータの処理
に関係する。
【0211】発明の追加の関係する態様において、前述
されたように、(多様な態様のどれかに)装置を組み込
む受信機/デコーダが提供される。
【0212】まだ追加の態様においては、位置を推定す
ることを備える、ビットストリーム中の位置を評価する
方法も提供される。
【0213】発明の別の態様においては、条件付きアク
セスデータを受信することと、条件付きアクセスデータ
をビットストリームと同期させることと、ビットストリ
ームを記憶することとを備える、ビットストリームを操
作する方法が提供される。
【0214】発明の追加の態様においては、複数の離散
セグメント内のビットストリームを転送することと、セ
グメントの1つのプロパティに従ってビットストリーム
中の位置を推定することとを備える、ビットストリーム
を操作する方法が提供される。
【0215】発明のまだ追加の態様においては、ビット
ストリームの少なくとも1つの特性に従って位置を推定
することを備える、ビットストリームの中の位置を評価
する方法が提供される。
【0216】発明の別の態様においては、前述されたよ
うに、放送センタ及び受信機/デコーダを備える放送シ
ステムが提供される。
【0217】発明の追加の態様においては、前述された
ように方法を実施するように適応されるコンピュータプ
ログラム製品が提供される。
【0218】発明のまだ追加の態様においては、前述さ
れたようにコンピュータプログラム製品をその上に記憶
しているコンピュータ読み取り可能媒体が提供される。
【0219】発明の別の態様においては、前述されたよ
うにコンピュータプログラム製品を具体的に具現する信
号が提供される。
【0220】発明は、ここに説明される方法のどれかを
実施するため、及び/またはここに説明さらえる装置機
能のどれかを実施するためのコンピュータプログラム及
びコンピュータプログラム製品、及びここに説明される
方法のどれかを実施するため、及び/またはここに説明
される装置機能のどれかを具体化するためのプログラム
をその上に記憶しているコンピュータ読み取り可能媒体
も提供する。
【0221】発明は、ここに説明される方法のどれかを
実施するため、及び/またはここに説明される装置機能
のどれかを具体化するためのコンピュータプログラムを
具現するための信号、このような信号を伝送する方法、
及びここに説明される方法のどれかを実施するため、及
び/またはここに説明される装置機能のどれかを具体化
するためのコンピュータプログラムをサポートするオペ
レーティングシステムを有するコンピュータ製品も提供
する。
【0222】追加の従来の技術の考慮を始めると、ビデ
オカセットレコーダ及びオーディカセットレコーダも遍
在するようになり、家庭環境と専門環境の両方で応用さ
れている。しかしながら、それらのおもな欠点は、デー
タ信号がテープ上に記録されるため、連続的にだけアク
セスできるという点である。テープは、そのセクション
が読み飛ばされなければならない場合、あるいはレコー
ディングのある特定の部分にアクセスするためには高速
で巻き取られなければならない。これは、相対的にゆっ
くりとした手順である。さらに、家庭用の用途で最も一
般的に見られる特に安価な型の多くのテープレコーダ
は、(スローモーションまたは加速されたモーションエ
フェクトのために)それが録音された速度以外の速度で
レコーディングを、あるいはディスプレイのかなりの歪
みなくレコーディングの単一の凍結されたコマを再生す
ることはできない。
【0223】高容量大容量データ記憶装置、及び特にハ
ードディスクドライブは、現在では、特にこのような信
号がMPEGなどの効率的な圧縮アルゴリズムを使用し
て符号化されるときに、それらがかなりの量のデジタル
的に符号化されたビデオ信号及び/または音声信号を記
憶できるほど大きな記憶装置容量を有している。デバイ
スに記憶されるデータの指定された断片は、少なくとも
人間のオペレータの観点からは、元来瞬時にアクセスで
きる。このような装置の可用性が、信号がこのような大
容量記憶装置に記憶されるビデオ信号及び/または音声
信号を記録、再生するための装置の開発につながってき
た。
【0224】このような大量記憶装置を使用するビデオ
及び/または音声プレイバック装置の実現は、従来のテ
ープをベースにしたビデオレコーダ及び/またはオーデ
ィオレコーダよりはるかに大きな操作上の柔軟性をユー
ザに提供する可能性を有し、従来のテープレコーダの能
力を超える一連の能力を有するビデオ及び/または音声
プレイバック製品を提供する機会を開発者に与える。開
発者が、このようなプレイバック装置によって提供され
るこれらの機能を使用利用することができる手段を提供
することが、本発明の追加の目的である。
【0225】したがって、発明の追加の態様において
は、音声/画像ビットストリームの転送を制御するため
のコマンドが提供され、そこでは転送速度はパラメータ
として表される。
【0226】転送は、好ましくは、大容量記憶装置から
(MPEGデコーダ及び/またはビデオ出力装置など
の)オーディオビジュアルプレイバック装置への音声/
画像データの再生である。代わりに(及び排他的にでは
なく)、転送は、例えば生放送(または他の)信号ソー
スから大容量記憶装置への音声/画像データのレコーデ
ィングであってよい。
【0227】コマンドのパラメータを介して転送速度を
設定できることにより、数多くの異なる効果を同じコマ
ンドに対する呼び出しで達成することができる。このよ
うなコマンドは、例えば、仮想(または実)ビデオレコ
ーダまたは他のランダムアクセス記憶装置または順次ア
クセス記憶装置の動作を制御するために使用できるだろ
う。後述されるset_speed()コマンドは、お
もに音声/画像データの再生に適用されるこのようなコ
マンドの例である。
【0228】ここに使用されるような用語「コマンド」
は、好ましくはメモリ内の電気的な衝撃の形、または例
えば適切なデータキャリヤ上でのルーチンのレコーディ
ングなどのさらに恒久的な形を取る、指定された関数を
実施するように設定されたソフトウェアルーチンの物理
的な現れを好ましくは意味する。好ましくは、ルーチン
の該現れはプロセッサによって即座に実行可能であり、
例えばオブジェクトコードとして記憶される。用語は、
ルーチンを実行するために物理的に具現される命令の形
を取るか、あるいはルーチンを実行させるように設計さ
れる――遠隔手続き呼び出し(RPC)などの――実際
の信号としてこのようなルーチンの実際の呼び出しに及
ぶように拡大されてもよい。
【0229】速度は、正、ゼロ及び/または負であって
よい。転送が再生である場合に、速度が正であると、再
生は、好ましくは通常のプレイバック、スロープレイバ
ック、早送り、及び停止/休止の1つだろう。代わり
に、速度が負であると、再生は、早巻き戻しとスロー巻
き戻しの1つだろう。したがってこのような速度の変化
を可能とすることによって、コマンドによって提供され
る柔軟性を高めることができる。
【0230】速度の範囲がハードウェアまたは他の考慮
事項により制限される場合、最大速度は好ましくは通常
の転送速度の2倍、5倍、10倍、50倍、100倍ま
たは500倍の同等物である。同様に、最小速度は、通
常の転送速度(0以上という最小値は、再生のケースで
ストリームを「巻き戻す」可能性を妨げ、レコーディン
グのケースで、0以下の最小値は音声/画像ビットスト
リームを逆に記憶する可能性を開く)の1倍、0倍、−
1倍、−2倍、−5倍、−10倍、−50倍、−100
倍または−500倍の同等物であってよい。速度の範囲
は、連続範囲であってよく、おそらくハードウェアの制
限を考慮に入れ、例えばさまざまな転送速度、または例
えば速度の離散集合の間での円滑な遷移を可能にする。
コマンドのパラメータは、事実上、コマンドの実行中、
またはその後に、適宜に、速度の離散集合の1つに変換
される任意の速度であってよい。
【0231】速度は、好ましくは、(再生のケースでの
通常のプレイバック速度などの)通常の転送速度の倍数
によってパラメータに関係付けられる。手続きは、例え
ばビットストリームの再生のための対応するビットレー
トを計算する必要がない可能性があるため、これによ
り、コマンドを呼び出す手続きを大幅に簡略化できる。
レコーディングのケースでは、パラメータは、例えば、
所望されるフレームレート(それが通常のフレームレー
トより低い場合には、コマンドは、記憶されているビッ
トストリームからフレームを適切な速度で廃棄させるだ
ろう)を指定してよい。
【0232】例えば、速度が通常の転送速度によって乗
算されるパラメータに等しいと、1というパラメータは
通常の転送速度に同等となり、0というパラメータは転
送を休止させる結果となり、1より大きいパラメータ
は、例えば、さらに低い品質/速度での(再生のケース
では)早送りまたは(レコーディングケースでは)レコ
ーディングに相当するだろう。代わりに、速度とパラメ
ータ間にさらに複雑な関係がある場合があり、それによ
って定数値が、例えば速度またはパラメータのどちらか
から差し引かれるだろう。
【0233】好ましくは、転送が発生する位置は、パラ
メータとして表される。これが、音声/画像ビットスト
リームの転送で追加の柔軟性を可能にする。転送が音声
/画像データの再生である場合には、転送が発生する位
置は、好ましくは音声/画像データの中への偏位であ
り、他のデータ倍数を考慮して、時間帯、またはデータ
のフレームを考慮して最も近いビット、バイトに設定さ
れてよいか、あるいはそれ以外の場合またはさらに番組
またはトラック番号という点で指定されてよい。それ以
外の場合、例えば、レコーディングケースでは、位置は
大容量記憶装置上の位置を基準にする場合があり、レコ
ーディングが開始するまたは続行する位置を設定する。
【0234】この重要な特徴も独立して提供される。し
たがって、発明の追加の態様においては、音声/画像ビ
ットストリームの転送を制御するためのコマンドが提供
され、そこでは転送が発生する位置はパラメータとして
表される。後述されるset_post()ルーチン
は、このような関数の例である。
【0235】再生が発生する位置を指定するパラメータ
は、呼び出しルーチンを、時間をビットストリーム内の
データオフセットに関係付ける計算から解放できる時間
の基準に関係付けられてよい。
【0236】代わりに、再生が発生する位置を指定する
パラメータがビットストリーム内のオフセット(または
例えば大容量記憶装置上の場所)に関係付けられる場
合、コマンドは、より簡略に実現することができ、メモ
リの保存を引き起こし、実行の速度を加速する。
【0237】発明の別の態様においては、前述されたよ
うに少なくとも1つのコマンドを備える、コマンドセッ
トが提供される。これは、前述されたコマンドのどれか
をビルディングブロックとして使用することにより、広
範囲のさらに特殊化したコマンドを容易に実現できるよ
うにする。
【0238】この重要な特徴も独立して提供され、した
がって再生が発生する位置をパラメータとして表させる
コマンド、及び転送速度をパラメータとして表させるコ
マンドを備える、音声/画像ビットストリームの転送を
制御するためのコマンドセットも提供される。
【0239】発明の追加の関係する態様においては、音
声/画像ビットストリームの転送を制御するためのコマ
ンドが提供され、該コマンドは前述されたように少なく
とも1つのコマンドを呼び出すように適応される。
【0240】コマンドは、音声/画像ビットストリーム
の転送に関係する状態に従ってさまざまな追加のコマン
ドを選択的に呼び出すように適応されてよい。このよう
な状態は、例えば、転送が休止されたかどうか(言い換
えると、転送速度がゼロであったかどうか)であるだろ
う。この場合、コマンドは、例えば、転送が休止される
と、1つの追加のコマンドを、及び転送が進行している
ときには、異なる追加コマンドを呼び出すことができる
だろう。
【0241】それらは前述された状態の一定の値を考慮
に入れる必要なく作成できるだろうため、これは、追加
コマンドを簡略化できるようにする。
【0242】代わりにまたはさらに、コマンドは、通常
の転送速度に同等なパラメータで、前述されたように
(好ましくは転送速度を設定するための)コマンドを呼
び出し、音声/画像ビットストリーム内の位置に同等な
パラメータで、前述されたように(好ましくは再生の位
置を設定するための)コマンドを呼び出すように適応さ
れてよい。好ましくは、このようなコマンドは、音声/
画像ビットストリーム内でプレイバックを開始するよう
に適応され、それ自体、「プレイ」コマンドまたは「シ
ークアンドプレイ」コマンドに対応してよい、あるいは
「プレイ」コマンドまたは「シークアンドプレイ」コマ
ンドによって呼び出されてよい。また、このようなコマ
ンドは、好ましくは、呼び出されたコマンドの一方また
は両方の少なくとも1つのパラメータと同じフォーマッ
トの少なくとも1つのパラメータを有する。
【0243】コマンドは、ゼロ速度に同等なパラメータ
で、前述されたように(好ましくは転送速度を設定する
ための)コマンドを呼び出すように適応されてよい。コ
マンドは、好ましくは、音声/画像ビットストリームの
プレイバックを停止または休止するように適応され、そ
れ自体、「休止」コマンドまたは「停止」コマンドに対
応してよい、あるいは「休止」コマンドまたは「停止」
コマンドによって呼び出されてよい。呼び出されたコマ
ンドは、音声/画像ビットストリームのディスプレイも
中止させてよい。
【0244】コマンドは、代わりに、通常より大きいプ
レイバック速度に同等なパラメータで、前述されたよう
に(好ましくは転送速度を設定するための)コマンドを
呼び出すように適応されてよい。好ましくは、コマンド
は、音声/画像ビットストリームを早送りするように適
応され、それ自体、「早送り」コマンドに対応してよ
い、あるいは「早送り」コマンドによって呼び出されて
よい。さらに、コマンドは、例えば、「早送り」ボタン
が長く押されるほど、より速くビットストリームを再生
させるための別のパラメータで、コマンドをさらに呼び
出すように適応されてよい。
【0245】コマンドは、通常より小さい転送速度に同
等なパラメータで、前述されたように(好ましくは転送
速度を設定するための)コマンドを呼び出すように適応
されてよい。このコマンドは、スローモーションで音声
/画像ビットストリームを再生するように適応され、そ
れ自体、「スローモーション」コマンドに対応してよ
い、あるいは「スローモーション」コマンドによって呼
び出されてよい。
【0246】コマンドは、代わりにまたはさらに、負の
プレイバック速度に同等なパラメータで、前述されたよ
うに(好ましくは転送速度を設定するための)コマンド
を呼び出すように適応されてよい。好ましくは、このコ
マンドは、音声/画像ビットストリームを逆に再生する
ように適応され、それ自体「巻き戻し」コマンドに対応
してよい、あるいは「巻き戻し」コマンドによって呼び
出されてよい。
【0247】さらに、コマンドは、通常のプレイバック
速度に同等なパラメータで、前述されたように(好まし
くは転送速度を設定するための)コマンドを呼び出すよ
うに適応されてよい。好ましくは、このコマンドは、音
声/画像ビットストリームのプレイバックを再開するよ
うに適応され、それ自体「再生」コマンド、「休止」コ
マンド、または「休止解除」コマンドに対応してよい、
あるいは「再生」コマンド、「休止」コマンド、または
「休止解除」コマンドによって呼び出されてよい。
【0248】コマンドは、場所に同等なパラメータで、
前述されたように(好ましくは再生の位置を設定するた
めの)コマンドを呼び出すように適応されてよい。好ま
しくは、このコマンドは、音声/画像ビットストリーム
内の場所にジャンプするように適応され、それ自体、
「次章アップ」コマンド、「前章」コマンド、「プレ
イ」コマンド、「次索引」コマンド、または「前索引」
コマンドに対応してよい、あるいは次章アップ」コマン
ド、「前章」コマンド、「プレイ」コマンド、「次索
引」コマンド、または「前索引」コマンドによって呼び
出されてよい。
【0249】コマンドは、該音声/画像ビットストリー
ムまたは追加音声/画像ビットストリームを記憶させる
ように適応されてよい。このようにして、柔軟性は、ビ
ットストリームを再生するためのコマンドを、該ビット
ストリームまたは追加ビットストリームを記憶する(好
ましくは記録する)能力と結合することによって達成で
きる。
【0250】発明の関係するにおいては、音声/画像ビ
ットストリームの転送を制御するためのコマンドが提供
され、該コマンドは、(特に、追加コマンドを呼び出す
コマンドを含む)前述されたように少なくとも1つのコ
マンドを呼び出すように適応される。
【0251】最高3つのレベルの抽象以上を提供するに
も関わらず、これは、追加の計算上の簡略さという優位
点を提供するために、これは本発明に従っていることが
分かった。
【0252】特に、コマンドがユーザが選択可能な音声
/画像制御動作に対応する場合、コマンドの各層は、そ
れ自体相対的に簡略であり、上及び下の層と相対的に簡
略なインタフェースを有するが、単一の高レベルユーザ
(または他の)要求に応えて複雑な低レベルのアクショ
ンを発生させる。
【0253】発明の追加態様においては、ここに説明さ
れるようなコマンドを制御基準に比較することと、コマ
ンドが該制御基準に一致するかどうかに従って追加コマ
ンドを生成することと、コマンドが該制御基準に一致し
ない場合に追加コマンドを生成することとを備える、音
声/画像ビットストリームの転送を制御する方法が提供
される。
【0254】好ましくは、コマンドは、前述されたよう
に生成される追加コマンドである。
【0255】したがって、無効なまたは所望されていな
いコマンドあるいはコマンドのシーケンスは、修正され
てよいか、あるいはデフォルトコマンドがそれらの代わ
りに置換されてよい。
【0256】好ましくは、該追加コマンドは制御基準に
比較されてから、該追加コマンドは、それが制御基準に
一致するかどうかに従って修正される。
【0257】該追加コマンドと制御基準の比較、及び該
追加コマンドの修正は、繰り返しの最大数まで、または
制御基準に一致する追加コマンドが生成されるまで無期
限に繰り返されてよい。
【0258】好ましくは、制御基準は、音声/画像ビッ
トストリームの転送の、好ましくはコマンドの受信時に
発生する転送の特性に依存している。
【0259】したがって、音声/画像ビットストリーム
の転送に対するさらに大きな制御は、コマンドのシーケ
ンスの受信時、あるいは音声/画像ビットストリームの
転送の現在の特性に相対的である動作を指定するコマン
ドの受信時に得られてよい。
【0260】例えば、コマンド一定のシーケンスまたは
許されていいないまたは望ましくないビットストリーム
での動作は、検出され、置換されてよい。
【0261】例えば、ビットストリーム中の点にジャン
プしてから、早送りすることは許されておらず、早送り
するためのコマンドは、それがビットストリーム中の点
にジャンプするためのコマンドの直後に受信されると、
再生するためのコマンドで置き換えられてよい。
【0262】他のコマンドは、音声/画像ビットストリ
ームの転送の現在の特性に関連してよい。例えば、コマ
ンドは、現在位置を基準にした位置まで前方へジャンプ
することを指定してよい。このコマンドの容認可能性
は、コマンド自体及び現在位置の両方に依存してよい。
【0263】好ましくは、音声/画像ビットストリーム
の転送の特性は、転送速度及びまたはビットストリーム
中の位置である。
【0264】好ましくは、制御基準は、条件付きアクセ
ス及びまたは親制御データに依存している。
【0265】発明の追加態様においては、転送速度を設
定するためのコマンドを呼び出すことと、パラメータと
して転送速度をコマンドに渡すことを備える、音声/画
像ビットストリームの転送を制御する方法が提供され
る。
【0266】発明の別の態様においては、再生が発生す
る位置を設定するためのコマンドを呼び出すことと、該
位置をパラメータとして渡すことを備える、音声/画像
ビットストリームの転送を制御する方法が提供される。
【0267】発明の追加の関係する態様においては、前
述されたような少なくとも1つのコマンドを備え、好ま
しくは、ここに説明されるように方法を実施するように
適応されるオペレーティングシステムが提供される。
【0268】発明の別の態様においては、前述されたよ
うな少なくとも1つのコマンドを備え、好ましくは、こ
こに説明されるように方法を実施するように適応される
受信機/デコーダが提供される。
【0269】発明のまだ追加の態様においては、前述さ
れたように少なくとも1つのコマンドを呼び出すように
適応される受信機/デコーダが提供される。
【0270】発明の別の態様においては、前述されるよ
うな少なくとも1つのコマンドを備える、コンピュータ
プログラム製品が提供される。
【0271】発明の追加の態様においては、前述される
ようなコンピュータプログラム製品を備える、コンピュ
ータ読み取り可能媒体が提供される。
【0272】発明の別の態様においては、前述されたよ
うにコンピュータプログラム製品を具体的に具現する信
号が提供される。
【0273】発明の追加態様においては、音声/画像デ
ータを受信するための(入力などの)手段、音声/画像
データを出力するための(出力などの)手段、及び前述
されたように少なくとも1つのコマンドを実行するため
の、及び/または前述されたように方法を実施するため
の(プロセッサ及び関連付けられるメモリなどの)手段
を備える、音声/画像データを処理するための装置が提
供される。
【0274】発明の関連する態様においては、入力、出
力、及びプロセッサと関連付けられるメモリを備える、
音声/画像データを処理するための装置が提供され、該
プロセッサは、前述されたように少なくとも1つのコマ
ンドを実行するように適応され、及び/またはここに説
明されるように方法を実施するように適応される。
【0275】発明の別の態様においては、前述されたよ
うな装置を備える、音声/画像処理装置が提供される。
【0276】発明の別の態様においては、前述されたよ
うな受信機/デコーダを備える、放送システムが提供さ
れる。
【0277】発明の別の態様においては、ビットストリ
ーム中のタイムオフセットをファイル内のデータオフセ
ットにマッピングする索引を備える索引表が提供され
る。
【0278】好ましくは、索引表は、ここに説明される
ようなテーブルである。
【0279】発明の追加態様においては、ユーザ入力に
応えてクライアントからコマンドを受信するように適応
されるハードディスクビデオレコーダ(HDVR)が提
供される。このようなコマンドは、ある特定の番組の録
画を開始するためのコマンドであってよい。該クライア
ントは、例えば、パーソナルビデオレコーダ(PVR)
アプリケーションであってよい。
【0280】好ましくは、HDVRは、並列でサービス
デバイス及び記憶装置、好ましくはファイルシステムラ
イブラリと対話する。好ましくは、このような対話は記
録されるまたはプレイバックされるビットストリームを
処理する受信機/デコーダの部分をセットアップし、同
期させ、及び/またはハードディスク上の適切な場所で
録画動作またはプレイバック動作を調整する。
【0281】好ましくは、ハードディスクビデオレコー
ダ(HDVR)は、さらに、特定の番組の録画を開始す
るためのコマンドを受信するように適応される。
【0282】ハードディスクビデオレコーダ(HDV
R)は、デバイス、好ましくはサービスデバイスと対話
する、及び/またはファイルシステムライブラリと対話
するように適応されてよい。
【0283】好ましくは、ハードディスクビデオレコー
ダ(HDVR)は、サービスデバイス及び/またはファ
イルシステムライブラリと対話するために、追加コマン
ドを送信または受信するように適応されてよい。
【0284】コマンドまたは該追加コマンドは、追加コ
マンドの生成を引き起こしてよい。
【0285】好ましくは、コマンドまたは該追加コマン
ドは、ここに説明されるようなコマンドである。
【0286】発明は、添付図面を参照して、実質的にこ
こに説明されるような方法及び/または装置まで拡大す
る。
【0287】発明のある態様における任意の特徴は、適
切な組み合わせで発明の他の態様に適用されてよい。特
に、方法態様は、装置態様に適用されてよく、装置態様
は方法態様に適用されてよい。
【0288】さらに、ハードウェア内で実現される機能
は、一般的にはソフトウェア内で実現されてよく、逆の
場合も同じであってよい。ソフトウェア機能及びハード
ウェア機能に対する参照は、この点で相応して構築され
なければならない
【発明の実施の形態】本発明の好ましい機能は、ここ
で、添付図面を参照して純粋に一例として説明されるだ
ろう。
【0289】システム概要 デジタルテレビシステム500の概観は、図1に示され
ている。後述されるように、システム500は、すべて
後述されるように、放送センタ1000、受信機/デコ
ーダ2000、該受信機/デコーダのフトウェア/ハー
ドウェアアーキテクチャ3000、対話型システム40
00、及び条件付きアクセスシステム5000を備え
る。
【0290】システム5000は、圧縮されたデジタル
信号を伝送するために既知のMPEG−2圧縮システム
を使用するおもに従来のデジタルテレビシステム502
を含む。さらに詳細には、放送センタ1000内のMP
EG−2圧縮機1010は、デジタル信号ストリーム
(一般的には、ビデオ信号のストリーム)を受信する。
圧縮機1010は、マルチプレクサ及びスクランブラ1
030にリンケージ1020によって連結される。
【0291】マルチプレクサ1030は、複数の追加の
入力信号を受信し、トランスポートストリームをアセン
ブルし、言うまでもなく通信リンクを含む多岐に渡る形
式を取ることができるリンケージ1022を介して放送
センタの送信機1010に圧縮されたデジタル信号を伝
送する。送信機510は、衛星トランスポンダ520に
向かってアップリンク514を介して電磁信号を伝送
し、そこで信号は電子的に処理され、従来はエンドユー
ザによって所有または賃借りされる放物面反射器の形を
取る地球受信機512に概念上のダウンリンク516を
介して一斉送信される。言うまでもなく、地上放送、ケ
ーブル伝送、組み合わされた衛星/ケーブルリンク、電
話網等のデータの伝送のための他のトランスポートチャ
ネルも考えられる。
【0292】受信機512によって受信された信号は、
エンドユーザによって所有または借りられており、エン
ドユーザのテレビセット10000に接続されている統
合型受信機/デコーダ2000に伝送される。該受信機
/デコーダ2000は、圧縮されたMPEG−2信号を
テレビセット10000用のテレビ信号に復号する。別
個の受信機/デコーダが図1に図示されているが、該受
信機/デコーダは、統合型デジタルテレビの一部であっ
てもよい。ここに使用されるように、用語「受信機/デ
コーダ」は、セットトップボックスなどの別個の受信機
/デコーダ、及び受信機/デコーダがそこに統合された
テレビを含む。
【0293】受信機/デコーダ2000内には、視聴覚
データ及び他のデータを記憶できるハードディスク21
00が備えられる。これが、受信機/デコーダによって
受信される番組用の高度なレコーディング機構及びプレ
イバック機構を与え、電子番組表データなどの大量の他
の種類のデータも受信機/デコーダに記憶できるように
する。
【0294】受信機/デコーダ内のコンテンツ管理保護
システム(CMPS)2300(図示されていない)
は、ハードディスク(または他の記憶装置)でのデータ
のレコーディング及びプレイバックを安全に且つ柔軟に
制御する能力を提供する。
【0295】多重チャネルシステムにおいては、マルチ
プレクサ1030が数多くの並列ソースから受信される
音声情報とビデオ情報を処理し、対応する数のチャネル
に沿って情報を一斉送信するために送信機510と対話
する。視聴覚情報に加えて、メッセージまたはアプリケ
ーションまたは他の種類のデジタルデータが、伝送され
たデジタル音声情報及びビデオ情報とインタレースされ
るこれらのチャネルのいくつかまたはすべてに導入され
てよい。
【0296】対話型システム4000は、マルチプレク
サ1030及び受信機/デコーダ2000に接続され、
部分的には放送センタ内に、部分的には受信機/デコー
ダ内に位置する。それが、エンドユーザが、バックチャ
ネル570を介して多様なアプリケーションと対話でき
るようにする。該バックチャネルは、例えば、公衆加入
電話網(PSTN)チャネル(例えば、モデム化された
バックチャネル)または帯域外(OOB)チャネルであ
ってよい。
【0297】やはりマルチプレクサ1030及び受信機
/デコーダ2000に接続され、再び部分的に放送セン
タ内に、部分的に受信機/デコーダ内に位置する条件付
きアクセスシステム5000によって、エンドユーザ
は、1社または複数の放送供給者からのデジタルテレビ
放送にアクセスできる。商業的なオファー(つまり、放
送供給者によって販売される1つまたは複数のテレビ番
組)に関係するメッセージを解読できるスマートカード
を受信機/デコーダ2000の中に差し込むことができ
る。受信機/デコーダ2000及びスマートカードを使
用し、エンドユーザは加入モードまたは有料視聴モード
のどちらかで商業的なオファーを購入してよい。一般的
には、これは、対話型システム4000によって使用さ
れるバックチャネル570を使用して達成される。
【0298】前述されたように、システムによって伝送
される番組は、マルチプレクサ1030でスクランブル
され、指定される伝送に適用される条件及び暗号化キー
は、アクセス制御システム5000によって決定され
る。このようにしてスクランブルされたデータを伝送す
ることは、有料テレビの分野ではよく知られている。一
般的には、スクランブルされたデータは、該データの逆
スクランブルのための制御ワードとともに伝送され、該
制御ワード自体が、いわゆる活用キーによって暗号化さ
れ、暗号化された形で伝送される。
【0299】それから、スクランブルされたデータ及び
暗号化された制御ワードが、暗号化された制御ワードを
解読し、その後で伝送されたデータを逆スクランブルす
るために、受信機/デコーダ内に差し込まれたスマート
カード上に記憶される活用キーの同等物にアクセスする
受信機/デコーダ2000によって受信される。会費を
納付し終わった加入者は、例えば、放送月次EMM(エ
ンタイトルメント管理メッセージ)の中で、伝送の視聴
を可能にするために暗号化された制御ワードを解読する
のに必要な活用キーを受信するだろう。
【0300】図2は、圧縮されたデジタル信号用の放送
媒体としてケーブルネットワークを活用するデジタルテ
レビシステム504の代替実施形態を描く。この図中、
類似する部分は類似する番号で示される。
【0301】衛星トランスポンダ及び伝送局と受信局
は、ケーブルネットワーク550によって置き換えられ
る。さらに、この特定の実施形態においては、受信機/
デコーダ2000と対話型システム4000と条件付ア
クセスシステム5000間のモデム化されたバックチャ
ネルが削除され、それぞれケーブルネットワーク550
と条件付きアクセスシステム5000と対話型システム
4000の間のリンケージ554、556によって置き
換えられる。受信機/デコーダ2000は、このように
して、それが放送センタからデータを受信するにつれ
て、同じリンクを介してデータを送受できるようにする
ケーブルモデムまたは他の手段を活用して、ケーブルネ
ットワーク550を介して他のシステムと通信する。
【0302】ケーブルネットワーク550は、専用接
続、インターネット、市内ケーブル分散ネットワーク、
無線接続、あるいは前記の任意の組み合わせなどの広域
ネットワーク(WAN)の任意の形式を取ってよい。本
実施形態においては、ハイブリッドファイバ同軸(HF
C)ネットワークが使用される。受信機/デコーダ20
00とテレビシステムの他の構成要素間の多様な通信の
手段が取り替え可能であることが認識される。
【0303】条件付きアクセスシステム 図3に関して、概観では、条件付きアクセスシステム5
000は、加入者許可システム(SAS)5200を含
む。該SAS5200は、1つまたは複数の加入者管理
システム(SMS)1100に、放送供給者ごとに1つ
のSMS、TCP−IPリンクまたは他の種類のリンク
であってよいリンク1044によって接続される。代わ
りに、1つのSMSは、2つの商業事業者の間で共用で
きるか、あるいは一人の事業者が2つのSMSを使用で
きる等だろう。
【0304】「マザー」スマートカード5110を活用
する暗号化装置5100の形を取る第1暗号化装置は、
リンケージ1042によってSASに接続される。やは
りマザースマートカード5112を活用する暗号化装置
5102の形を取る第2暗号化装置は、リンケージ10
40によってマルチプレクサ1030に接続される。受
信機/デコーダ2000は、「ドーター」スマートカー
ド5500を受け入れる。受信機/デコーダは、通信サ
ーバ1200及びモデム化されたバックチャネル570
を介してSAS5200に直接的に接続される。SAS
は、特に、依頼に応じて加入権をドータ−スマートカー
ドに送信する。
【0305】好ましい実施形態の変型において、インタ
ーネットケーブル接続は、PSTN570及び通信サー
バ1200を補足するか、置き換えるかのどちらかであ
る。
【0306】スマートカードは、1つまたは複数の商業
的な事業者からの機密情報を含む。「マザー」スマート
カードは、さまざまな種類のメッセージを暗号化し、
「ドータ−」スマートカードは、それらがそうする権利
を有する場合には該メッセージを平文に直す。
【0307】図3に関して、放送センタにおいて、デジ
タルビデオ信号は、MPEG−2圧縮機1010を使用
して最初に圧縮される(またはビットレート減速され
る)。それから、この圧縮された信号は、他の圧縮デー
タなどの他のデータと多重化されるために、マルチプレ
クサとスクランブラ1030に伝送される。
【0308】スクランブラは、スクランブルプロセスで
使用され、マルチプレクサ1030内のMPEG−2ス
トリームに含まれる制御ワードを生成する。該制御ワー
ドは内部で生成され、エンドユーザの統合型受信機/デ
コーダ2000が番組を逆スクランブルできるようにす
る。
【0309】番組がどのように商品化されているのかを
示すアクセス基準も、MPEG−2ストリームに追加さ
れる。番組は数多くの「加入」モードの1つ及び/また
は数多くの「有料視聴」(PPV)モードまたはイベン
トの1つで商品化されてよい。加入モードでは、エンド
ユーザは1つまたは複数の商業的なオファー、つまり
「ブーケ」に加入し、このようにしてそれらのブーケの
内側のあらゆるチャネルを見る権利を得る。有料視聴モ
ードでは、エンドユーザは、自分が希望するとおりにイ
ベントを購入する能力を備える。
【0310】制御ワードとアクセス基準の両方とも、エ
ンタイトルメント制御メッセージ(ECM)を構築する
ために使用される。これは、1つのスクランブルされた
番組について送信されるメッセージである。該メッセー
ジは、(番組の逆スクランブルに対処する)制御ワード
及び放送プログラムのアクセス基準を含む。アクセス基
準及び制御ワードは、リンケージ1040を介して第2
暗号化装置5102に伝送される。この装置では、EC
Mが生成、暗号化、及びマルチプレクサとスクランブラ
1030に伝送される。
【0311】データストリーム中で放送供給者によって
一斉送信される各サービスは、数多くの別個の成分を備
える。例えば、テレビ番組は、ビデオ成分、音声成分、
字幕成分等を含む。これらの成分のそれぞれが、個別に
スクランブルされ、それ以降の放送のために暗号化され
る。サービスのそれぞれのスクランブルされた成分とい
う点で、別個のECMが必要とされる。
【0312】マルチプレクサ1030は、暗号化された
EMMを備える電気信号をSAS5200から、暗号化
されたECMを第2暗号化装置5102から、及び圧縮
された番組を圧縮機1010から受信する。マルチプレ
クサ1030は、番組をスクランブルし、スクランブル
された番組、暗号化されたEMM及び暗号化されたEC
Mを電気信号として、例えば図1に図示されるような衛
星システム、または他の放送システムであってよい放送
システム600に伝送する。受信機/デコーダ2000
は、暗号化されたEMM及び暗号化されたECMを用い
てスクランブルされた番組を得るために信号を多重分離
する。
【0313】受信機/デコーダは、放送信号を受信し、
MPEG−2データストリームを抽出する。番組がスク
ランブルされている場合、受信機/デコーダ2000は
MPEG−2ストリームから対応するECMを抽出し、
エンドユーザの「ドータ−」スマートカード5500に
ECMを渡す。これが、受信機/デコーダ2000のハ
ウジングの中に差し込まれる。ドータ−スマートカード
5500は、エンドユーザがECMを「平文に直す」及
び番組にアクセスする権利を有するかどうかを制御す
る。有さない場合には、番組を逆スクランブルできない
旨を示すために、否定的なステータスが受信機/デコー
ダ2000に渡される。エンドユーザが実際に権利を有
する場合には、ECMは平文に直され、制御ワードが抽
出される。それから、デコーダ2000は、この制御ワ
ードを使用して番組を逆スクランブルする。MPEG−
2ストリームは復元され、テレビセット10000への
前方への伝送のためにビデオ信号に変換される。
【0314】番組がスクランブルされていない場合、E
CMはMPEG−2ストリームとともに伝送されておら
ず、受信機/デコーダ2000はデータを復元し、テレ
ビセット10000への伝送のために、信号をビデオ信
号に変換する。
【0315】加入者管理システム(SMS)1100
は、特にエンドユーザファイル、(料金表と広告など
の)商業的なオファー、加入、PPV詳細、及びエンド
ユーザ消費と許可に関するデータのすべてを管理するデ
ータベース1150を含む。SMSは、SASから物理
的に遠い可能性がある。
【0316】SMS1100は、エンドユーザに伝送さ
れるエンタイトルメント管理メッセージ(EMM)に対
する修正またはその作成を暗示するメッセージをSAS
5200に伝送する。SMS1100は、EMMに対す
る修正またはEMMの作成を暗示しないが、(製品注文
時にエンドユーザに与えられる許可に、またはエンドユ
ーザが請求を受ける額に関する)エンドユーザの状態の
変化だけを暗示するメッセージもSAS5200に伝送
する。SAS5200は、SMS1100に(一般的に
は、電話のかけ直し情報、または料金請求書作成発行情
報などの情報を要求する)メッセージも送信し、その結
果2者の間の通信が双方向であることは明らかであろ
う。
【0317】受信機/デコーダ 図4を参照すると、受信機/デコーダ2000の多様な
要素が、ここで機能ブロックに関して説明されるだろ
う。
【0318】例えば、デジタルセットトップボックス
(DSTB)であってよい受信機/デコーダ2000
は、両方とも関連付けられたメモリ要素(図示されてい
ない)を有し、コプロセッサバス2006によって接合
されている中央ホストコンピュータ2002及びデジタ
ルTVコプロセッサ2004を備える。該コプロセッサ
2004は、USBインタフェース2007、直列イン
タフェース2072、並列インタフェース(図示されて
いない)、(図1のモデムバックチャネル570に接続
される)モデム2074、及びデコーダのフロントパネ
ル2054上のスイッチ接点から入力データを受信する
ように適応される。
【0319】受信機/デコーダは、さらに、赤外線リモ
ートコントローラ2080(及びオプションでブルーツ
ースがイネーブルされたデバイスなどの他の無線周辺機
器2082)から入力を受信するように適応され、それ
ぞれ銀行スマートカードと加入スマートカード206
0、2062を読み取るように適応された2台のスマー
トカード読取装置2050、2052も所有する。加入
スマートカード読取装置2052は、必要な制御ワード
をデマルチプレクサ/デスクランブラ/リマルチプレク
サ(装置2010に与え、暗号化された放送信号を逆ス
クランブルできるようにするために、差し込まれた加入
カード2062及び条件付きアクセス装置(図示されて
いない)と係合する。デコーダは、復調器/デスクラン
ブラ装置2010によってフィルタリングされ、多重分
離される前に、衛星伝送を受信し、復調するために、従
来のチューナ2016及び復調器2012も含む。特
に、第2チャネルを第1と並行して受信し、復号できる
ようにするために、第2チューナ2018及び第2復調
器2014も備えられる。
【0320】ハードディスク2100も備えられ、受信
機/デコーダによって受信され、生成される番組及びア
プリケーションデータの記憶を可能にする。2台のチュ
ーナ2016、2018、2台の復調器2012、20
14、デスクラブラ/デマルチプレクサ/再マルチプレ
クサ2010及びデータでコーダ2024と音声デコー
ダ026とともに、高度なレコーディング及びプレイバ
ック機能が提供され、追加の番組が見られている間の1
つまたは複数の番組の同時録画、及びすべて並行して発
生する、ハードディスクに対する及びハードディスクか
らの、ディスプレイ装置に対する及びディスプレイ装置
へのより一般的な転送、及び/または入力と出力を可能
にする。
【0321】受信機/デコーダ内の音声出力2038及
びビデオ出力2040は、それぞれPCMミキサー20
30と音声DAC2034、MPEGビデオデコーダ2
028、グラフィックエンジン2032、及びPAL/
SECAM2036によって供給される。言うまでもな
く、代替出力または相補的な出力が提供されてよい。
【0322】この説明で使用されるように、好ましく
は、アプリケーションは、好ましくは受信機/デコーダ
20000の高水準機能を制御するためのコンピュータ
コードの部分である。例えば、エンドユーザがリモート
コントローラ2080のフォーカスをテレビセット(図
示されていない)の画面上で見られるボタンオブジェク
トの上に配置し、妥当性検査キーを押すと、該ボタンに
関連付けられる命令シーケンスが実行される。アプリケ
ーション及び関連付けられるミドルウェアは、ホストプ
ロセッサ2002によって実行され、遠隔手続き呼び出
し(RPC)は、必要に応じて及び必要時に、コプロセ
ッサバス2006を横切ってデジタルTVコプロセッサ
2004に対して行われる。
【0323】対話型アプリケーションは、メニューを提
案し、エンドユーザの要求でコマンドを実行し、アプリ
ケーションの目的に関係するデータを提供する。アプリ
ケーションは常駐アプリケーション、つまり受信機/デ
コーダ2000のROM(またはFLASHまたは他の
不揮発性メモリ)に記憶されてよいか、あるいは受信機
/デコーダ2000のRAM、FLASHメモリ、また
はハードディスクに一斉送信され、ダウンロードされて
よい。
【0324】アプリケーションは、受信機/デコーダ2
000内のメモリ場所に記憶され、リソースファイルと
して表される。リソースファイルは、グラフィックオブ
ジェクト記述装置ファイル、変数ブロック装置ファイ
ル、命令シーケンスファイル、アプリケーションファイ
ル、及びデータファイルを備える。
【0325】受信機/デコーダは、少なくとも1つのR
AMボリューム、FLASHボリューム及び少なくとも
1つのROMボリュームにも分割されるメモリ(図示さ
れていない)を含むが、この物理的な編成は論理的な編
成とは異なる。メモリは、さらに、多様なインタフェー
スと関連付けられたメモリボリュームに分割されてよ
い。ある観点からは、メモリは、ハードウェアの一部と
見なすことができる。別の観点からは、メモリは、ハー
ドウェアから離れて図示されるシステム全体をサポート
するまたは含むと見なすことができる。
【0326】受信機/デコーダのアーキテクチャ 図5に関して、受信機/デコーダのソフトウェア/ハー
ドウェアアーキテクチャ3000は、ソフトウェアが任
意の受信機/デコーダ内で、及び任意のオペレーティン
グシステムを用いて実現できるように編成された5つの
ソフトウェア層を含む。多様なソフトウェア層は、アプ
リケーション層3100、アプリケーションプログラミ
ングインタフェース(API)層3300、仮想機械層
3500、(多くの場合、単に「デバイス層」に省略さ
れる)デバイスインタフェース層3700、及びシステ
ムソフトウェア/ハードウェア層3900である。
【0327】アプリケーション層3100は、受信機/
デコーダ内に常駐するか、あるいは受信機/デコーダに
ダウンロードされるかのどちらかであるアプリケーショ
ン3120を包含する。それらは、例えば、Java、
HTML、MHEG−5または他の言語で作成されたカ
スタマによって使用される対話型アプリケーションであ
ってよいか、あるいはそれらは例えばこのような対話型
アプリケーションを実行するためなど他の目的のために
受信機/デコーダによって使用されるアプリケーション
であってよい。この層は、仮想機械層によって提供され
る開放アプリケーションプログラミングインタフェース
(API)の集合に基づいている。このシステムは、ア
プリケーションを、受信機/デコーダ内のハードディス
ク、フラッシュメモリまたはRAMメモリに、進行中
に、またはオンデマンドでダウンロードできるようにす
る。アプリケーションコードは、Data Stora
geMedia Command and Contr
ol(データ記憶媒体コマンドと制御)、Networ
k File Server(ネットワークファイルサ
ーバ)(NFS)などのプロトコルまたは他のプロトコ
ルを使用して圧縮済みフォーマットまたは未圧縮フォー
マットで伝送できる。
【0328】API層3300は、対話型アプリケーシ
ョンの開発に高水準ユーティリティを提供する。それ
は、高水準APIを構成する複数のパッケージを含む。
パッケージは、対話型アプありケーションを実行するた
めに必要なすべての機能性を提供する。パッケージは、
アプリケーションによってアクセス可能である。
【0329】好ましい実施形態においては、APIは、
Java、PanTalkまたはこのような類似するプ
ログラミング言語で作成されたアプリケーション向けに
適応される。さらに、それは、HTML及びMHEG−
5などの他のフォーマットの解釈を助長できる。これら
の機能に加えて、それは、要件が支配するように切り離
し可能且つ拡張可能である他のパッケージ及びサービス
モジュールも含む。
【0330】仮想機械層3500は、言語インタプリタ
及び多様なモジュールとシステムから構成される。カー
ネル3650(図示されていない)によって管理される
この層は、受信機/デコーダ内の対話型アプリケーショ
ンを受信し、実行するために必要なすべてから成り立っ
ている。
【0331】デバイスインタフェース層3700は、
(通常、ここではただ「デバイス」と呼ばれる)デバイ
スマネージャ及びソフトウェアデバイスを含む。デバイ
スは、外部イベント及び物理インタフェースの管理に必
要な論理的なリソースから成り立っているソフトウェア
モジュールである。デバイスマネージャの制御下のデバ
イスインタフェース層は、ドライバとアプリケーション
間の通信チャネルを管理し、機能強化されたエラー除外
チェックを提供する。管理された(ハードウェア)デバ
イスのいくつかの例は、以下のとおりである。つまり、
カード読取装置3722(図示されていない)、モデム
3730(図示されていない)、ネットワーク3732
(図示されていない)、PCMCIA(パーソナルコン
ピュータメモリカード国際協会)、LEDディスプレイ
等である。API層は前記からデバイスを制御するた
め、プログラマは、直接的にこの層に対処する必要はな
い。
【0332】システムソフトウェア/ハードウェア層3
900は、受信機/デコーダのメーカによって提供され
る。システムのモジュール方式のため、及び(イベント
スケジューリング及びメモリ管理などの)より高いレベ
ルのオペレーティングシステムによって供給されるサー
ビスが仮想機械及びカーネルの一部であるため、より高
いレベルの層は特定のリアルタイムオペレーティングシ
ステム(RTOS)に、または特定のプロセッサに結び
付いていない。
【0333】一般的には、ときおりデバイスインタフェ
ース層3700及び/またはAPI3300と組み合わ
される仮想機械層3500は、受信機/デコーダの「ミ
ドルウェア」と呼ばれる。
【0334】図6に関して、(アプリケーション層31
00、API層3300及び仮想機械層3500を備え
る)図5の上半分に対応する受信機/デコーダ3000
のソフトウェアアーキテクチャが、ここでさらに詳細に
説明されるだろう。
【0335】対話型アプリケーションは、例えば、電子
番組表、テレバンキングアプリケーション及びゲームな
どの製品とサービスを得るためにユーザが対話するアプ
リケーションである。
【0336】アプリケーション層3100には、アプリ
ケーションマネージャ3110に加えて、2種類のアプ
リケーションがある。それらがAPI3300に準拠す
る限り、いつでも追加できるウェブブラウザ3130な
どの対話型アプリケーションがあり、対話型アプリケー
ションを管理、サポートする常駐アプリケーションがあ
る。常駐アプリケーションは、実質的には恒久的であ
り、以下を含む。
【0337】・ブート。ブートアプリケーション314
2は、受信機/デコーダが電源投入されると起動される
最初のアプリケーションである。ブートアプリケーショ
ンは、最初にアプリケーションマネージャ3110を起
動してから、メモリマネージャ3544及びイベントマ
ネージャ3546などの仮想機械で「マネージャ」ソフ
トウェアモジュールを起動する。
【0338】・アプリケーションマネージャ。アプリケ
ーションマネージャ3110は、受信機/デコーダ内で
実行される対話型アプリケーションを管理する。すなわ
ち、それはイベントを起動し、停止し、一時停止し、再
開し、処理し、アプリケーション間の通信に対処する。
それは、複数のアプリケーションを同時に実行できるよ
うにするため、それらの間でのリソースの割り当てに関
与する。このアプリケーションは、ユーザに対して完全
にトランスペアレントである。
【0339】・セットアップ。セットアップアプリケー
ション3144の目的は、おもに初めてそれが使用され
るときに、受信機/デコーダを構成することである。そ
れは、テレビチャネルについての走査、日付と時刻の設
定、ユーザ優先順位の設定等のアクションを実行する。
ただし、セットアップアプリケーションは、受信機/デ
コーダ構成を変更するためにユーザによって任意の時点
で使用することができる。
【0340】・ザッピング。ザッピングアプリケーショ
ン3146は、プログラムアップキー、プログラムダウ
ンキー、及び数値キーを使用してチャネルを変更するた
めに使用される。例えば、バナー(パイロット)アプリ
ケーションを通して別の形のザッピングが使用されると
き、ザッピングアプリケーションは停止される。
【0341】・コールバック。コールバックアプリケー
ション3148は、受信機/デコーダメモリ内に記憶さ
れる多様なパラメータの値を抽出し、これらの値をモデ
ム化されたバックチャネル1070(図示されていな
い)を介して、または他の手段によって商業事業者に戻
すために使用される。
【0342】アプリケーション層3100での他のアプ
リケーションは、番組表アプリケーション3132、有
料視聴アプリケーション3134、バナー(パイロッ
ト)アプリケーション3136、ホームバンキングアプ
リケーション3138、ソフトウェアダウンロードアプ
リケーション3140、及びPVR(パーソナルビデオ
レコーダ)アプリケーション3154(以下を参照する
こと)を含む。
【0343】前記に注記されたように、アプリケーショ
ンプログラミングインタフェース(API)層3300
は、複数のパッケージを含む。これらは、例えば、仮想
機械の基本的な機能にアクセスするために使用される基
本システムパッケージ3310、DAVICパッケージ
3320、及びおもなソフトウェアベンダに固有のソフ
トウェアアーキテクチャの機能にアクセスするために使
用される独自に開発したパッケージ3330を含む。
【0344】さらに詳細に考えられると、仮想機械35
00は、以下を含む。
【0345】・言語インタプリタ3510。さまざまな
インタプリタが、読み取られるアプリケーションの種類
に準拠するためにインストールできる。これらは、Ja
vaインタプリタ3512、PanTalkインタプリ
タ3514、HTMLインタプリタ3516、MHEG
−5インタプリタ3518及び他を含む。
【0346】・サービス情報(SI)エンジン。SIエ
ンジン3540は、共通のデジタルビデオ一斉送信(D
VB)またはプログラムシステム情報プロトコル(PS
IP)テーブルをロード、監視し、それらをキャッシュ
の中に入れる。それは、それらの中に含まれるデータを
必要とするアプリケーションによるこれらのテーブルへ
のアクセスを可能にする。
【0347】・スケジューラ3542。このモジュール
は、それぞれのスレッドが独自のイベント待ち行列を有
する、予防マルチスレッドスケジューリングに対処す
る。
【0348】・メモリマネージャ3544。このモジュ
ールはメモリに対するアクセスを管理する。それは、必
要時にメモリ内のデータを自動的に圧縮し、自動ゴミ収
集を実行する。
【0349】・イベントマネージャ3546。このモジ
ュールは、イベントを優先順位に従ってトリガできるよ
うにする。それはタイマ及びイベントグラビングを管理
し、アプリケーションがイベントを互いに送信できるよ
うにする。
【0350】・動的リンカ3548。このモジュール
は、ネイティブJava関数から発生するアドレスの解
決を可能にし、ダウンロードされるJavaクラスから
のネイティブメソッドをRAMの中にロードし、ROM
に向かってダウンロードされたネイティブコードからの
呼び出しを解決する。
【0351】・グラフィックシステム3550。このシ
ステムはオブジェクト指向であり、最適化されている。
それは、多言語サポート付きのベクトルフォントエンジ
ンだけではなく、グラフィックウィンドウ及びオブジェ
クト管理も含む。
【0352】・クラスマネージャ3552。このモジュ
ールはクラスをロードし、あらゆるクラス参照問題を解
決する。
【0353】・ファイルシステム3554。このモジュ
ールはコンパクトであり、複数のROM、フラッシュ、
RAM、およびDSMCCボリューム付きの階層ファイ
ルシステムを管理するために最適化される。フラッシュ
完全性は、あらゆる事件に対して保証される。
【0354】・機密保護マネージャ3556。このオジ
ュールはアプリケーションを認証し、機密事項を扱うメ
モリ及びセットトップボックスの他のゾーンに対するア
プリケーションのアクセスを制御する。
【0355】・ダウンローダ3558。このモジュール
は、遠隔DSMCC回転トレーから、またはNFSプロ
トコルを通した自動データロードを使用し、ダウンロー
ドされるファイルは常駐ファイルと同様にアクセスされ
る。メモリの片付け、圧縮、及び認証も提供される。
【0356】さらに、DAVICリソース通知モデル
が、クライアントリソースが効率的に管理されるように
サポートされる。
【0357】カーネル3650は、仮想機械3500及
びデバイスインタフェース層3700(図示されていな
い)内で実行している多様な異なるプロセスを管理す
る。効率及び信頼性の理由から、カーネルは、オペレー
ティングシステム用のPOSIX規格の関連する部分を
実現する。
【0358】カーネルの制御下、(Java及びPen
talkアプリケーションを実行している)仮想機械
は、大容量記憶サーバ3850(図示されていない)な
どの、オペレーティングシステムの他の「サーバ」要素
とは別個の独自のスレッドの中で実行する。システム呼
び出しでパラメータとしてスレッドIDを渡すことを要
求するなどの対応する規約も、アプリケーション312
0がマルチスレッド環境によって益を得ることができる
ようにするためにAPI層3300内で作成される。
【0359】複数のスレッドを提供することによって、
より多くの安定性を達成できる。例えば、仮想機械35
00が、クラッシュを経験するまたはデバイスにアクセ
スを試みるアプリケーションによって長時間ブロックさ
れるなど、なんらかの理由で動作するのを中止する場合
に、ハードディスクサーバなどのシステムの他のスピー
ドが重視される部分は動作し続けることができる。
【0360】仮想機械3500及びカーネル3650だ
けではなく、ハードディスクビデオレコーダ(HDV
R)モジュール3850も、ハードディスクまたは他の
取り付けられている大容量記憶構成要素の記録機能及び
プレイバック機能を処理するために提供される。サーバ
は、記録を処理する2つの別々のスレッド3854、3
856を備え、1つのスレッド3858はプレイバック
を処理するためであり、ファイルシステムライブラリ3
852は大容量記憶構成要素と接続するためである。
【0361】ハードディスクビデオレコーダ(HDV
R)3850内のスレッド3854、3856、385
8の適切な1つが、例えば「録画」ボタンを押すユーザ
に応えて、パーソナルビデオレコーダ(PVR)アプリ
ケーション3154などのクライアントから、(ある特
定の番組の録画を開始するためのコマンドなどの)コマ
ンドを受信する。
【0362】同様に、問題のスレッドは、それから、録
画またはプレイバックされるビットストリームを処理す
る受信機/デコーダの部分をセットアップし、同期させ
るために(図7に図示されている)サービスデバイス3
736と対話する。平行して、スレッドは、ハードディ
スク2210(図示されていない)上の適切な場所での
記録またはプレイバックを調整するために、ファイルシ
ステムライブラリ3852とも対話する。
【0363】それから、ファイルシステムライブラリ3
852は、どのサブトランスポートストリーム(ST
S)を(FIFOバッファを介して)転送するのか、及
びどのハードディスクターゲットにストリームが記憶さ
れなければならないのかを大容量記憶装置3728に告
げるコマンドを、(やはり図7に図示される)大容量記
憶装置3728に送信する。ハードディスク及び汎用フ
ァイル管理でのクラスタの割り当ては、ファイルシステ
ムライブラリ3852によって実施され、大容量記憶装
置自体はさらに低いレベルの動作に関与する。
【0364】前述されたサービスデバイス3736は、
それが受信機/デコーダの物理的な構成要素に関係しな
いという点でデバイスの中で他とは異なる。それは、代
わりに、単一の「インスタンス」の中に、チューナ、デ
マルチプレクサ、リマルチプレクサ、及び受信機/デコ
ーダ内のハードディスクデバイスの多様な集合を集める
高レベルインタフェースを提供し、さらに高いレベルの
プロセスを多様なサブデバイスを調整する難事から解放
する。
【0365】図7に関して、(デバイスインタフェース
層3700及びシステムソフトウェア及びハードウェア
層3900を備える)図5の下半分に対応する受信機/
デコーダ3000のソフトウェアアーキテクチャが、こ
こでさらに詳細に説明されるだろう。
【0366】デバイス層の中に提供される追加デバイス
は、条件付きアクセスデバイス3720、図4の2つの
(またはおそらく3つ以上の)チューナ2016、20
18に対応するチューナデバイス3724、ビデオデバ
イス3734、I/Oポートデバイス3726、及び前
述されたサービスデバイス3736と大容量記憶装置3
728を含む。
【0367】大きく見ると、デバイスは、論理インタフ
ェースを定義すると見なすことができ、その結果、2つ
の異なるデバイスが、1つの共通した物理ポートに結合
されてよい。一定のデバイスはそれら自体の間で通信し
てよく、すべてのデバイスもカーネル3650の制御下
で動作する。
【0368】任意のデバイスのサービスを使用する前
に、(アプリケーション命令シーケンスなどの)製品は
「クライアント」つまり、デバイスまたはデバイスマネ
ージャ3710への論理的なアクセス方法として宣言さ
れなければならない。マネージャは、クライアントに、
デバイスに対するすべてのアクセスで参照されるクライ
アント番号を与える。デバイスは、複数のクライアント
を有することができ、クライアントの数が、デバイスご
とにデバイスの種類に応じて指定されている。クライア
ントは、プロシージャ「Device:Open Ch
annel(デバイス:チャネル開放)によってデバイ
スに導入される。このプロシージャが、クライアントに
クライアント番号を割り当てる。クライアントは、プロ
シージャ「Device:Close Channel
(デバイス:チャネル閉鎖)によって、デバイスマネー
ジャ3710クライアントリストから取り出すことがで
きる。
【0369】デバイスマネージャ3710によって提供
されるデバイスに対するアクセスは、同期または非同期
のどちらかである。同期アクセスの場合、プロシージャ
「Devic:Call(デバイス:呼び出し)」が使
用される。これは、ただちに入手できるデータ、または
所望される応答を待機することを含まない機能性にアク
セスする手段である。非同期アクセスの場合、プロシー
ジャ「Device:I/O(デバイス:I/O)」が
使用される。これは、多重送信システムを見つけるため
にチューナ周波数を走査する、またはMPEGストリー
ムからテーブルを取り戻すなどの応答を待機することを
含むデータにアクセスする手段である。要求された結果
が入手可能であると、イベントはその到着を信号で知ら
せるためにエンジンの待ち行列に入れられる。追加プロ
シージャ「Device:Event(デバイス:イベ
ント)」は、予期されないイベントを管理する手段を提
供する。
【0370】受信機/デコーダの第2実施形態において
は、受信機/デコーダのアーキテクチャの下半分が、図
8に図示される層に置き替えられる。
【0371】この実施形態では、拡張デバイス層インタ
フェース(EDLI)3600が、仮想機械3500
(図示さていない)とデバイスインタフェース層370
0の間に提供され、抽象デバイスインタフェース380
0がデバイスインタフェース層3700とシステムソフ
トウェア/ハードウェア層3900の間に提供される。
それ以外の場合、類似する部分は類似する参照番号で示
される。
【0372】拡張デバイス層インタフェース(EDL
I)3600は、仮想機械3500とデバイスインタフ
ェース層3700間に専用インタフェースを提供し、通
常、デバイスインタフェース層にマルチスレッドサポー
トを提供する。EDLIの機能は、(デバイスインタフ
ェース層はそれ自体マルチスレッドをサポートする必要
がないため)ミドルウェアの適切なスレッドに非同期イ
ベントを送ることと、スレッド間でメッセージを送るこ
とを含む。
【0373】抽象デバイスインタフェース3800は、
システムソフトウェア/ハードウェア層3900内のデ
バイスインタフェース層3700とデバイスドライバ3
910間に追加のインタフェースを提供する。このよう
なインタフェースを提供することによって、大きく、複
雑なデバイス層3700を、さらに大いにハードウェア
と無関係にすることができる。
【0374】コンテンツ管理保護システム(CMPS) 図9に関して、前述されたコンテンツ管理保護システム
(CMPS)2300が、放送センタ1000と受信機
/デコーダ2000の間で分散される。CMPSの受信
機/デコーダ構成要素は、関連付けられているスマート
カード読取装置付きのスマートカードの形で提供される
が、好ましい実施形態の変形では、単にソフトウェア
で、またはハードウェアの他の形で実現される。CMP
Sは、許可されたユーザだけが、事前に定められた使用
規則に従ってコンテンツを記録、プレイバックできるこ
とを保証することができる。
【0375】コンテンツ管理保護システムの重要な部分
は、指定される番組または伝送に関係するコンテンツ管
理情報を含み、このような番組または伝送の前に伝送さ
れる特殊な使用規則メッセージ(URM)である。基本
的に、使用規則メッセージは、コンテンツのプレイバッ
ク及び複製に対する使用制約を課し、番組内の別個の
「章」などのコンテンツの特定的な部分だけに、または
全体としてのコンテンツに向けることができる。典型的
な使用規則は、ビデオ録画、早送り、記録がプレイバッ
クできる回数、及び使用可能な複製モードに対する制限
を含む。さらに詳細に後述されるだろう別の重要な特徴
は、指定される番組に関係するURMが、(さまざまな
場所から、さまざまなときに)対応するコンテンツまた
は条件付きアクセス情報とは無関係に送信されてよいと
いう点である。
【0376】メッセージの第2クラス、つまりCMPS
エンタイトルメント管理メッセージ(CMPS EM
M、またはCMP_EMM)は、アクセス権をCMPS
に伝送するために提供される。CMPS EMMは、他
の場所で参照される、条件付きアクセスエンタイトルメ
ントメッセージ(EMM、つまいCAS_EMM)に同
等であるが、伝送されるアクセス権は、「従来の」EM
Mでの場合のように、放送番組データよりむしろ番組デ
ータのローカル記憶に関係する。
【0377】図9に示される好ましい実施形態において
は、マルチプレクサ及びスクランブラ1030が、CM
PS EMM5614及びURM 5612を受信し、
解読されたコンテンツ(番組データ)810を含むビッ
トストリームでそれらを多重化し、放送システム600
を介して、結果として生じるスクランブルされたコンテ
ンツ800を一斉送信する。それから、受信機/デコー
ダはスクランブルされたコンテンツ800を受信し、C
MPS EMM及びURMを削除し、CMPS2300
及び条件付きアクセスシステム5000に適宜に渡す。
【0378】URMは、好ましい実施形態の変形におい
てはECM活用キーと同じであるURM活用キーで暗号
化される。URM活用キーの同等物は、URMを平文に
直すことができるようにするために、受信機/デコーダ
CMPSスマートカード(図示されていない)の中に維
持される。
【0379】前述されたように、受信機/デコーダを使
用してユーザが記録及び/またはプレイバックできるよ
うにするアクセス権は、CMPSエンタイトルメント管
理メッセージ(CMPS EMMまたはCMP_EM
M)の形で提供される。CMPS EMMは、従来のE
MMと同じ構造を有することがあるが、一般的にはより
キー指向型である―CMP_EMMは、一般的には、コ
ンテンツまたはサービスと関連付けられるキーを埋め込
む。記録されたコンテンツをプレイバックする権利は、
1回限りの支払い(衝動買い)または加入と交換に与え
られる。多様なレベルのアクセス権も、任意のコンテン
ツに関して与えることができ、それによりユーザは、例
えば、コンテンツを一度再生するための権利と交換に第
1料金を支払うか、あるいは無制限な再生と交換に第2
のさらに高い料金を支払うことができるだろう。CMP
_EMMは、一般的には受信機/デコーダCMPSスマ
ートカードに記憶されるが、例えば条件付きアクセスス
マートカードの中などの他の場所に記憶されてよい。
【0380】好ましい実施形態においては、記録を再生
する権利は、記録が行われてから(「有料視聴」モデ
ル)、あるいは記録の前に(「加入」モデル)のどちら
かに得ることができる。前者のケースでは、コンテンツ
を記録した後、ユーザは条件付きアクセスシステムに、
自分がコンテンツをプレイバックする権利を得ることを
希望する旨を指示する。指示が加入管理システムによっ
て認められると、その後、適切なCMPSエンタイトル
メント管理メッセージ(「CMP_EMM」)が、双方
向リンクを介して受信機/デコーダに伝送される。
【0381】CMPSシステムにより提供される多くの
優位点の1つは、番組を記録し、プレイバックするため
のアクセス権が、従来のシステムでのように、単に番組
を見るためのアクセス権とはまったく関係がないという
点である。したがって、人は番組を見ることはできるが
それを記録、プレイバックできない状況を有することが
あり、逆に、人は番組を見ることはできないが、人はそ
れを記録し、必要な権利を得てから、それをプレイバッ
クできるだろう。
【0382】特に図10に図示されるインターネット分
散モデル特有の好ましい実施形態の変形においては、ス
クランブルされたコンテンツ(「CONTENT(コン
テンツ)*」)、CMPS EMM(「CMP_EM
M」)及びURM(「URM」)は、すべて、第1関係
者1200、第2関係者1202及び第3関係者120
4から、受信機/デコーダ2000に独自に送達され
る。第1関係者、第2関係者、または第3関係者は、例
えば、マルチアクセスポータル(MAP)であってよ
く、スクランブルされたコンテンツ1300、CMPS
EMM5614及びURM5612が送達されてよ
い。一般的には、番組プロバイダ(第2関係者120
2)は、マルチプレクサ/スクランブラに番組コンテン
ツ(「CONTENT」(コンテンツ))を送信し、ス
クランブルされたコンテンツ1300(CONTENT
*(コンテンツ))が生成されてから、通常通りに受信
機/デコーダ2000に伝送される。
【0383】図11に関して、受信機/デコーダ200
0でのCMPSのインプリメンテーションがここで説明
されるだろう。
【0384】CMPSサーバモジュール2200は、受
信機/デコーダミドルウェア内で提供され、CMPSサ
ーバAPI、CMPSコア及びリンク層を備える。CM
PSサーバモジュール2200は、CMPSライブラリ
3362と接続し、HDVR制御装置3350と間接的
に接続する。CMPSサーバモジュール2200も、M
LOADデバイス3438、(条件付きアクセススマー
トカードを収容する)LCARDデバイス3440、及
び(CMPSスマートカードを収容する)RCARDデ
バイス3442と接続する。
【0385】動作中、番組データストリームの中で受信
されるECM5602は、MLOADデバイスによって
隔離されてから、CMPSリンク層によって条件付きア
クセススマートカードに送られる。次に、ECMから引
き出される制御ワード5600が、(好ましくは番組デ
ータストリーム中でも受信されるが、他のルートを介し
て受信されてよい)対応するURM5612及びCMP
S EMM5614とともに、CMPSスマートカード
に送られる。それから、CMPSスマートカードは、そ
の後、追加処理のためにCMPSコアに渡されるコンテ
ンツ管理メッセージ5610(CMM)を形成するため
に、データの3つのアイテムを結合し、暗号化する。適
切な要求に応えて、CMMは、次に、それらが対応する
コンテンツデータとともにディスク上に記憶できるよう
に、HDVR制御装置3350に渡される。
【0386】図12に描かれているコンテンツをディス
クに記録するプロセスにおいて、各ECM5602が、
条件付きアクセススマートカード内の記述段階5550
に渡され、それは汎用活用キーKG5606を使用して
平文に直される。平文に直された制御ワード5600
は、次に、CMPSスマートカード内の暗号化段階22
02に渡り、それは対応するURM5612とCMPS
EMM5614を含むコンテンツ管理メッセージ(C
MM)の中に結合されてから、ローカル活用キーKL5
608を使用して全体として暗号化し直される。それか
ら、CMMは、別個のファイル2112から、改変され
ていないスクランブルされたコンテンツをハードディス
ク2100に記憶するために使用されるファイル211
0に記憶される。
【0387】図13に描かれているコンテンツをディス
クからプレイバックする逆プロセスにおいては、スクラ
ンブルされたコンテンツ1300がハードディスク21
00上のファイル2110から読み取られ、デスクラン
ブラ2010に送り込まれる。平行して、CMMは別個
のファイル2112から読み取られ、CMPSスマート
カードの暗号解読段階2202に送り込まれる。CMM
はローカル活用キー5608で平文に直されてから、U
RM5612、CMPS EMM5614及び制御ワー
ド5600に分割される。CMPSモジュールが、ユー
ザが(URM及びCMPS EMMに基づいて)資料を
見る権利があると判断すると、制御ワード5600が、
コンテンツを逆スクランブルできるようにするために適
切な時間にデスクランブラ2010に送信される。
【0388】インターネットフォーマット 可変ビット・レートビットストリーム伝送 好ましい実施形態により受信、処理及び記憶される伝送
は、ビットストリームの形を取り、記録されたビットス
トリームからのデータの検索及び処理は部分的にこのよ
うなビットストリームの特性に依存する。特に可変ビッ
ト・レートビットストリームの記録を含むファイルのこ
のようなレコーディングと処理、及びこのようなファイ
ルに関係する暗号化情報の同期、記憶及び検索におけ
る、レコードのテーブル、特に特定の実施形態でのHD
VRとUSER索引の使用は、後述される。この時点
で、可変ビット・レートビットストリームの一般的な特
性が簡略に説明される。
【0389】図14は、衛星TV伝送のビットレート対
時間のグラフである。
【0390】多様な実施形態では、図14に描かれてい
るものに類似する可変ビット・レートビットストリーム
が、コンピュータデバイス、プロセッサ、A/D変換
器、テレビ、HDVR、または例えばハードディスク、
テープ、コンピュータ記憶装置、CDSまたはDVSな
どの記憶装置の中または間で伝送、記憶される。このよ
うな可変ビット・レートビットストリームは、DVB−
CS、DES、3DESを含むさまざまな暗号にするア
ルゴリズムによって保護されるMPEG−2、MPEG
−4、MP3を含む多岐に渡る圧縮フォーマットのデー
タを含み、ビデオ及びまたは音声データ、テレテキスト
情報、字幕、他の種類のテキスト情報、コンピュータデ
ータ、またはこのようなデータの表現を含む。
【0391】図15は、時間の関数としてのMPEG−
2データストリームの図であり、フレーム内(I−フレ
ーム)4500と4502として知られているキーフレ
ーム及び例えば4510でのB−フレ―ム、及び例えば
ビットストリーム内の4512でのP−フレームの形を
取るデルタフレームの位置を概略して示す。キーフレー
ムは、音声/画像データの一部を再生するために独自に
使用することができるが、デルタフレームは他のフレー
ムから変更をマッピングし、このような他のフレームに
依存してのみ視聴覚データの一部を再生するために使用
できる。フレーム間(P−フレーム)は、先行するフレ
ームから変更をマッピングするが、B−フレームは先行
するフレームまたは後続のフレームのどちらか、あるい
は先行するフレームと後続のフレームの両方からの変更
をマッピングする。MPEG−2データストリームで
は、キーフレームは、通常2Hzという周波数で伝送さ
れる。
【0392】受信時、ビットストリームは、それが使い
切られない(played out)、あるいは記憶さ
れずにただちに再送されない限り、通常、データ記憶装
置内でデータファイルとして記憶される。ビットストリ
ーム6002内のタイムオフセットとデータファイル内
のデータオフセットの対応を含むデータファイルが、図
16と図17に図示される。
【0393】ここで、好ましい実施形態の3つの一般的
な態様に関して追加の詳細が提供される。
【0394】・記憶されているビットストリームの検索
及び処理における索引表の作成及び使用 ・ビットストリーム中の位置の推定、及び条件付きアク
セス情報のビットストリームとの同期 ・ビットストリームの転送を制御するためのコマンドセ
ット 記憶されているビットストリームの検索及び処理におけ
る索引表の作成及び使用で開始し、HDVRによって記
憶されるファイルの形式で記憶されているビットストリ
ームの構造及びコンテンツが、最初に調べられる。
【0395】HDVRファイルの構造 記憶されているデータの構造をさらに詳細に見ると、H
DVRファイルは、(以下でhdvr_managem
ent_dataと呼ばれる)管理データと(以下でh
dvr_content_dataと呼ばれる)コンテ
ンツデータの両方を備える。管理データ及びコンテンツ
データは、同じファイルの別々の部分として、あるいは
別々のファイルとしてのどちらかでHDVRに記憶され
る。
【0396】hdvr_content_dataは、
さらに詳細に後述される記憶済みトランスポートストリ
ーム(STS)を備える。しかしながら、最初に、hd
vr_management_dataが、さらに詳し
く調べられる。
【0397】hdvr_management_dat
aは、前述されたように(一般的には専用二次元テーブ
ルの形を取る)CMMを備え、一般的には以下のテーブ
ルも備える。
【0398】・索引表 ・章テーブル ・私用PMTテーブル ・親制御データテーブル ・最大値テーブル ・一般情報テーブル 最大値テーブルは、最大値テーブル自体及び一般情報テ
ーブルを除いて、HDVRテーブルのすべての記憶構造
の指定を可能にする。
【0399】好ましい実施形態においては、HDVR管
理データは、つねに以下を備える。
【0400】・第1に、一般情報テーブル ・第2に、最大値テーブル ・第3に、私用PMTテーブル、章テーブルなどの他の
HDVRテーブル hdvr_file.management_data
の基本部分ごとに、それぞれがファイル内のジャンプ及
び実行される動作を要約する書き込み関数及びプレイ関
数がある。
【0401】前記テーブルのそれぞれがさらに詳細に後
述されるが、最初に索引表の構造及びコンテンツ、及び
記憶されたコンテンツで動作を実行する際のその使用が
さらに詳しく調べられる。
【0402】HDVR索引表及び記録されたビットスト
リームでHDVRにより実行される動作 ここでは、HDVR索引とUSER索引を備えるHDV
R索引表、及びHDVR索引表を使用して記録されたビ
ットストリームでHDVRによって実行される動作に関
して追加の詳細が提供される。
【0403】HDVR索引表は、ビットストリーム中の
(暗号期間に分けられる、秒単位の)少なくとも1つの
タイムオフセットとビットストリームの表現を含むST
S内の少なくとも1つのファイルオフセットの間のマッ
ピングを可能にする。一般的には、ビットストリーム
は、前述されたように可変ビット・レートビットストリ
ームである。
【0404】HDVR索引表中の索引はCMM索引とは
別個であり、それらと関連付けられるCMMつまり暗号
期間番号、秒単位の時間、及びファイルオフセット番号
を有する。ファイルオフセット番号を知っていると、H
DVR索引表は、ビットレートの変化に伴い失敗する二
分アルゴリズムを使用しておそらく時間がかかるバイナ
リ探索を必要としなくても、秒単位の時間または暗号期
間に関してファイルオフセット位置を調べるために使用
できる。時間の変化は、サンプル間の時間である。
【0405】例えば、ファイル内の点、つまり対応する
ビットストリームの探索などの記録されたコンテンツの
処理、及びはや送り、巻き戻し、読み飛ばしなどの「ト
リックモード」動作は、HDVR索引表に記憶されるH
DVR索引とUSER索引を利用する。一般的には、H
DVR索引はHDVRにより自動的に挿入され、USE
R索引はユーザの命令時に挿入される。
【0406】前述されたように、好ましい実施形態にお
いては、HDVR索引表は、HDVRファイルのhdv
r_file_management_data部分に
記憶される。このような好ましい実施形態の変形におい
ては、HDVR索引表は別個のファイルの中に、または
HDVRファイルの中の他の場所に記憶される。
【0407】前述されたように、多様な他のデータは、
好ましい実施形態のHDVRファイルのhdvr_fi
le_management_data部分に記憶され
る。特に、条件付アクセス情報は、hdvr_file
_management_data内にCMMテーブル
として記憶され、索引表の中のエントリはCMMテーブ
ルの中のエントリにマッピングされ、その結果、HDV
R索引とUSER索引で索引が付けられるHDVRファ
イル内の点におけるデータは、CMMテーブル中の対応
するエントリを使用して復号されてよい。
【0408】好ましい実施形態においては、HDVR索
引表は、番組の記録中に自動的にHDVRによって作成
される。代わりに、HDVR索引表、または追加のこの
ようなテーブルが、番組のレコーディングの後の命令時
に作成される。
【0409】HDVR索引 HDVR索引は、HDVRによって定期的な間隔で配置
され、(内部暗号化のケースでは)記録されるファイル
内のプレイエントリ点として使用される。それらはプレ
イ位置決めの粒度に一致する。したがって、記録される
ファイルまたは番組に対応するCMMファミリごとに、
各HDVR索引は少なくとも1つの当てはまるCMMを
指し、ファイル内のその位置はブロック番号(ファイル
粒度)により特定される。
【0410】複数の記録されたコンテンツに関係する複
数の商業的なオファーのケースでは、1つのエントリ点
ごとに複数のCMMセットがあってよい。例えば、ユー
ザは、STSに記憶されるが、別のCMMセットで暗号
にされる関係音声データを含む特殊言語バージョンにつ
いて支払うことができる。したがって、この例では、索
引エントリ点ごとに、少なくとも2つのCMMが必要と
されるだろう。
【0411】好ましい実施形態においては、HDVR索
引が作成され、番組のレコーディング中にリアルタイム
で記憶される。記録はわずかMaxHdvrIndex
Number索引を備える。
【0412】HDVR索引は、通常、ビットストリーム
中の周期的なタイムオフセットに配置される。好ましい
実施形態においては、ビットストリームはMPEG−2
プロトコルに従って圧縮されるデータを備え、このプロ
トコルに従って、フレーム内として知られるキーフレー
ムは、ビットストリーム中で0.5秒おきに位置する。
前述されたように、このようなキーフレームは、例えば
フィルムの中の1コマなどの視聴覚データの一部を、ビ
ットストリーム中の他の部分とは関係なく再生するため
に使用される。このような実施形態でのHDVR索引
は、0.5秒という期間で分散されるタイムオフセット
を有し、索引は各キーフレームの始まりに一致する。
【0413】好ましい実施形態の変形においては、HD
VR索引は、異なる期間のタイムオフセットで配置さ
れ、いくつかの変形においては、このような期間は、ユ
ーザの命令時と、HDVRにより自動的にの両方で変え
られる。
【0414】USER索引 USER索引は、クライアントによって配置され、やは
りプレイエントリ点である。前述されたように、プレイ
粒度はHDVR索引であり、好ましい実施形態において
は、ユーザ索引はこれらのHDVR索引に基づいてい
る。HDVR索引を使用して、CMMファミリごとにU
SER索引に当てはまるCMMを取り戻すのが簡単であ
る。
【0415】USER索引は、番組の記録または記録さ
れた番組のプレイバックのときに設定される。特定の実
施形態においては、このようなUSER索引の数は限ら
れ、記録は、わずかMaxUserIndexNumb
er索引を備える。
【0416】他の実施形態においては、ビットストリー
ムは多岐に渡る他の圧縮フォーマットのデータを備えて
よいが、好ましい実施形態においては、ビットストリー
ムは、MPEG−2、MPEG−4、またはMP3デー
タを備える。
【0417】HDVR索引及びUSER索引を使用する
ビットストリーム動作 HDVR索引及びUSER索引は、STSで多岐に渡る
動作を実行するために使用される。
【0418】探索 例えば、図18に描かれているように、HDVR索引と
USER索引は、例えば、対応するビットストリーム中
の好ましいタイムオフセットに対応するHDVRファイ
ル6300内の好ましい点を見つけるために使用され
る。好ましい点6314までのファイル内の最も近い点
6310、またはさらに一般的には、最も近い先行する
点6312が、HDVRによって、HDVR索引とUS
ER索引の索引表6316内に位置し、ファイルは、好
ましい点を見つけるために、HDVRによってこの点か
ら探索される。一般的には、探索は、好ましい点が見つ
けられるまで、(例えば、CMMテーブル内の対応する
エントリを使用して)索引が付けられた点から前方へデ
ータを復号し、読み取ることによって実行される。いく
つかの変形では、索引が付けられた点は好ましい点に対
応し、このような変形においては、探索は、単に適切な
索引が付けられた点までジャンプすることによって実行
される。
【0419】代替実施形態においては、探索の主題であ
る好ましい点が2つのHDVR索引またはUSER索引
により参照されるファイル内の点の間に収まる場合、フ
ァイルは2つの索引が付けられた点の間の中間の点から
探索される。この中間点は、2つの索引が付けられた点
の間の線形補間によって配置される。このような実施形
態の変形においては、中間点は、他のデータ保管技法を
使用することによって、あるいは索引が付けられた点
を、多項式関数または指数関数、あるいは三次スプライ
ン関数などの代替関数に固定することによって配置され
る。このような変形では、好ましい点に隣接する2つの
索引が付けられた点に加えて、追加の索引が付けられた
点が、中間点の位置を突き止めるために使用される。
【0420】トリックモード動作 好ましい実施形態においては、HDVR索引は、ビット
ストリーム中の時間で周期的に間隔をあけて置かれる点
に一致する。早送りと巻き戻しなどの「トリックモー
ド」動作は、このようなビットストリーム中の時間で周
期的に間隔をあけて置かれる点に対応するファイル内の
データを、HDVR索引を使用して位置を突き止め、復
号し、表示することによって、HDVRにより実行され
る。
【0421】例えば、巻き戻しまたは早送りの速度は、
好ましい実施形態において、記憶されているビットスト
リームがプレイバックされる速度を変えることによって
変えられる。一般的には、ビットストリームのすべての
データが、巻き戻し動作または早送り動作中にプレイバ
ックされるのではなく、むしろ通常はビットストリーム
中の時間で等しく間隔をあけて配置される選択された部
分がプレイバックされる。データがファイルから読み取
られる速度は、プレイバックされるビットストリーム中
のデータの割合を変えることによって特定の巻き戻しま
たは早送りの速度について変えることができる。好まし
い実施形態においては、巻き戻しまたは早送りの速度
は、ユーザの命令時に変えられる。
【0422】例証として、早送り動作が図19に描かれ
ている。HDVRは、ビットストリーム中の時間640
0、6404、6408、及び6412の等しく間隔が
あけられた点に対応するファイル内の点にあるデータ
を、HDVR索引を使用して位置を突き止め、復号し、
表示する。やはりHDVR索引に対応する点6402、
6406、及び6410は、省略される。実施形態の変
形においては、HDVRは、選択された点6400、6
404、6408及び6412が復号、表示される速度
を変えることによって、及び選択される点を変えること
によって、巻き戻しまたは早送りの速度を変える。
【0423】好ましい実施形態においては、ビットスト
リームがMPEGビットストリームである場合、HDV
R索引は、データの他の部分には関係なく、特に音声/
画像データの部分の再生するために使用できるキーフレ
ーム(MPEG−2のケースではIフレーム)の始まり
にマッピングする。図18をこれらの変形に適用する
と、キーフレームの場所は、HFVR索引の場所631
2の少なくともいくつかに一致する。早送り及び巻き戻
しは、等しく間隔をあけて置かれる時間間隔で位置する
ファイルの中にキーフレームを、あるいはHDVR索引
を調べることによって対応するビットストリームにオフ
セットを配置することによって迅速に実行される。
【0424】好ましい実施形態の変形において、HDV
R索引、またはUSER索引は、必ずしもキーフレーム
に直接にマッピングしない。図20に描かれているよう
に、索引は、ビットストリーム中のタイムオフセット6
500、6504、6506、6510、6512、6
516、6518、及び6522、及びビットストリー
ムの表現を含むファイル内の対応するデータオフセット
を参照する。キーフレームは、ビットストリーム中のタ
イムオフセット6502、6508、6514、及び6
520に位置(し、これらのキーフレームの表現はファ
イル内の対応するデータオフセットに位置)するが、索
引はこれらのタイムオフセットを参照しない。
【0425】図20は、このような実施形態の早送り動
作も描く。HDVRは、ビットストリーム中の点650
0、6506、6512及び6518に対応するファイ
ル内の点の位置を、索引を使用して突き止める。HDV
R索引によっても参照される点6504、6510、6
516、及び6522は省略される。6500に対応す
るファイル内の点の位置を突き止めると、HDVRは、
CMMテーブルから適切なCMMを使用して、この点で
ファイル内のデータを復号してから、それがビットスト
リーム中の6502にあるキーフレームを表すデータの
位置を突き止めるまで、ファイル内の以下のデータを復
号するために進む。それから、キーフレームは、HDV
Rにリンクされるディスプレイ装置によって表示され
る。HDVRは、6506、6512、及び6518に
対応するファイル内の点の位置を突き止めるために、及
び6508、6514、及び6520にあるキーを表す
データの位置を突き止めるために進む。これらのキーフ
レームは、順にディスプレイ装置上に表示される。
【0426】追加の変形において、索引は、暗号期間の
始まりに一致する、ビットストリーム中の点、及びファ
イル内の対応する点を参照する。
【0427】追加実施形態においては、ビットストリー
ムの表現は、DVD上に記憶される表現のデータオフセ
ットに、ビットストリーム中のデータオフセットをマッ
ピングする索引の表とともにDVDに記憶される。HD
VR実施形態でのように、索引は、ビットストリーム中
の時間で周期的に間隔をあけて置かれる点に対応する。
この実施形態の変形においては、USER索引は索引の
表に記憶される。索引の表は、DVDプレーヤによっ
て、あるいはDVDを読み取るように適応される任意の
デバイスによって読み取られる。
【0428】ハードウェア特性に依存するトリックモー
ド動作の実行 早送りまたは巻き戻しなどの特定のトリックモード動作
の最大動作速度は、システムハードウェアによってサポ
ートされる最大フレームレートに依存し、特に、読み取
り/書き込みハードディスクアクセス時間、解析デマル
チプレクサ帯域幅、及びオペレーティングシステムスケ
ジューリング精度に依存する。
【0429】好ましい実施形態においては、HDVR
は、ハードウェア品質での変動にも関わらず、特定のハ
ードウェアによって許される最大フレームレートを推定
し、索引表で点を選択し、その後、このような最大フレ
ームレートに従って、及び要求された早送り速度または
巻き戻し速度に従って、STSからこれらの点に対応す
るフレームを抽出することによって、例えばx1/12
8とx128の間などの許容範囲内の早送りまたは巻き
戻しの速度をサポートする。一般的には、最大フレーム
レートは、読み取り/書き込みハードディスクアクセス
時間、解析デマルチプレクサ帯域幅、またはオペレーテ
ィングシステムスケジューリング精度によって求められ
る。
【0430】したがって、図19を参照し直すと、ある
特定のフレームレートをサポートできる指定特性のハー
ドウェアについて、及び指定される巻き戻しまたは早送
り速度について、HDVRは、ビットストリーム中の時
間6400、6404、6408、及び6412で等し
く間隔をあけて置かれる点に対応するファイル内の点に
あるデータを、HDVR索引を使用して位置を突き止
め、復号し、表示する。やはりHDVR索引に対応する
点6402、6406、及び6410は省略される。し
かしながら、ハードウェアがより小さいフレームレート
だけをサポートできる変形(図示されていない)におい
ては、点6400と642にあるデータだけが、位置を
突き止められ、復号され、表示され、データポイント6
404、6402、6406、6408及び6410は
省略される。巻き戻しまたは早送りの円滑さは第2のケ
ースで低下してよいが、ビットストリーム中の点640
0と6412の間でデータを表示するためにかかる時間
は同じであるため、巻き戻しまたは早送りの速度は両方
のケースで同じである。
【0431】好ましい実施形態においては、プロセッサ
は、システムハードウェアの特性にアクセスし、最大フ
レームレートを動的に計算する。このような実施形態の
変形においては、プロセッサは、許される最大フレーム
レートを計算する際に記憶されるビットストリームの特
性にもアクセスする。
【0432】代わりに、システムハードウェアの特性、
及び許される最大フレームレートは、HDVRで事前に
記憶される。追加の変形においては、データが早送り動
作または巻き戻し動作中にファイルから読み取られる速
度は変わらず、いくつかのこのような変形ではすべての
このようなデータが読み取られる。
【0433】ビットストリーム特性に依存する索引表の
自動作成 好ましい実施形態において、USER索引とHDVR索
引などの索引は、プロセッサによるビットストリームデ
ータの特性の分析に依存して自動的に作成または削除さ
れる。例えば、1つの変形において、HDVRに含まれ
るこのようなプロセッサは、ビットレートが値の特定の
範囲内である、ビットストリームの部分に対応する索引
を作成する。このような値は、ユーザによって定義され
るアルゴリズムの動作によって設定できる。
【0434】例証として、図21に描かれているよう
に、1つの変形においては、索引は、ユーザによって設
定された、ある特定の値6600を超えてビットレート
が上昇する点で作成される。これらの点で開始するビッ
トストリームの部分は、例えば、フィルムの中のアクシ
ョンシーケンスに対応してよい。追加の変形において
は、プロセッサはプログラムで制御でき、ビットストリ
ームデータの特性の分析に対する依存性は変えることが
できる。
【0435】追加の変形においては、プロセッサはユー
ザアクションを分析し、この分析に依存して、USER
索引とHDVR索引を含む索引を作成または削除する。
プロセッサはプログラムで制御でき、この依存性は変え
ることができる。このような依存性の一例においては、
さらに多くの索引が、ユーザが多数のアクションを実行
しているビットストリーム中の点に対応して作成され
る。
【0436】追加の変形においては、データは、ユーザ
の命令時にテーブルに、または関連付けられるテーブル
またはファイルに挿入され、このデータは、特定のデー
タオフセットまたはUSER索引、またはHDVR索引
によって参照される、関連付けられるタイムオフセット
と関連付けられる。このようなデータは、画面上に表示
されるコメント、及びテレビ制御コマンドなどのコマン
ドを含み、特に、親の制御機構を起動、または停止する
データを含む。このような親制御機構は、一般的には特
定の章に向けられるが、一定の変形においては、それは
暗号期間及び複数の暗号期間、及びファイルのユーザに
よって定義される部分にも向けられる。いくつかのこの
ような変形においては、ユーザは、アクセスを制御する
ことを希望する記録されたフィルム内の特定の場面を選
択できる。
【0437】出力データ 一般的には、例えば、前述されたように、CMMテーブ
ルを使用してなど、HDVR索引及びUSER索引を使
用して、HDVRファイル内に配置されるデータが、そ
れがMPEGなどの圧縮プロトコルの対象となり、ディ
スプレイ装置、通常テレビ画面に出力される場合には、
復号され、復元される。しかしながら、一定の実施形態
においては、このようなデータは、復号または復元され
て、あるいは復号または復元されずに、大容量記憶装置
に、またはプロセッサに出力することもできる。
【0438】追加の詳細は、ここで索引表の構造と作
成、及び暗号化されたコンテンツをプレイバックする際
の索引表の使用に関して提供される。
【0439】HDVR索引とUSER索引は、前述され
たように、索引表、Index_Table()と呼ば
れる同じテーブルの中にいっしょに記憶される。
【0440】索引表のHDVR部分は、時間的に周期的
に連続するHDVR索引記述子の一次元アレイである。
【0441】各HDVR索引記述子は、以下の情報を含
む。
【0442】・HDVR索引位置を定めるHDVRファ
イルのコンテンツ部分Hdvr_file_conte
nt_data内の(ブロックの数単位の)ファイルオ
フセット(HdvrIndexAddress
[1...MaxHdvrIndexNumbe
r])。STSはブロックに分割され、ファイルオフセ
ットによって指されるSTS部分は、HDVR索引記述
子アレイの中へのHDVR索引位置に比例する(STS
の始まりから測定される)時間日付に対応する。n番目
の索引は、STSの開始以来経過したnxHdvr_t
ime_stamp秒に対応する点までマッピングす
る。
【0443】・どのCMM記述子(CMM_Id)が、
特定のHDVR索引によって指されるSTSの部分を解
読するために必要とされるのかを定めるCMMファミリ
索引(HdvrIndexCMM[1...MaxHd
vrIndexNumber][1...Compon
entNumber])のアレイ。Component
Number構成要素(ビデオ、音声、テレテキスト)
のそれぞれについて、対応するCMM_tableのC
MM_idに対する参照が、索引ごとに指定され、それ
以後の読み取り中のトリックモードを容易にする。
【0444】・HDVR索引が属する章識別子、及び ・HDVR索引によって指されるSTS部分を正しく多
重分離するために私用される私用PMT識別子(Hdv
rIndexPMTVersion[1...MaxH
vdrIndexNumber] 最大サイズMaxUserIndexNumberの索
引表のUSER索引部分は、USER索引記述子の一次
元アレイである。USER索引が時間で並べ替えられて
いないことに注意する。それぞれのUSER索引(Us
erIndex[1...MaxUserIndexN
umber]は、事実上、特定のSTSプレイエントリ
点に対応する、特定のHDVR索引に対する参照であ
る。各USER索引は、以下の情報を含む。
【0445】・USER索引がイネーブルされるのか、
またはディスエーブルされるのかを定義するステータ
ス、及び ・ユーザがブックマークを付ける(STSの始まりとし
て基点を解釈する)ことを希望した時間−日付に対応す
るHDVR索引参照(HdvrIndex_Id)。該
当するステータスがイネーブルされるときに、この情報
が関連することに注意する。
【0446】索引表の作成 索引表は、2つの段階で構築される。
【0447】・HDVR索引表は、ファイルの記録時に
hdvr_recorderによって計算される。
【0448】・ユーザ索引表は、最初の記録後、空であ
る。ユーザ索引を挿入するためにコマンドがhdvr_
playerに送信されるのは、読み取り中だけである
?。
【0449】hdvr_recorderによるHdv
r索引表の作成 Hdvr索引表は、ディスクを読み取るたびに計算さ
れ、更新される。
【0450】・索引点、HdvrIndexAddre
ss[n]の計算の原則は、図22に描かれるように、
索引点の2つの読み取り値の間の線形補間に基づく。
【0451】・対応するCMM、ComponentN
umber CMM_Idは、それら自体、各読み取り
時に計算される。各CMM_tableを綿密に調べる
際に、人は現在の索引の位置HdvrIndexAdd
ressを各テーブルのCMM_idによって特定され
る最後のCMMのBlockNumbersの位置と比
較する。2つのケースが考えられる。
【0452】・索引が実際に最後のCMMの索引である
ことを意味するHdvrIndexAddress>B
lockNumber[CMM_number]であ
り、そのケースでは、HdvrInexCMM=CMM
_numberである。
【0453】・あるいは、BlockNumber[C
MM_id]<HdvrIndexAddress<B
lockNumber[CMM_Id+1]となるよう
にCMM_tableの中にCMM_idが存在し、そ
のケースではHdvrIndexCMM=CMM_id
である。
【0454】ファイルのサイズが単調に増加する関数で
あると、索引の補間が、つねに、いつでも書き込みポイ
ンタの後ろの位置を示すことに注意する。
【0455】・HdvrIndexPMTVersio
nは、PMTテーブルが修正されるたびにその値を増分
するカウンタである。この数はPIDs/Compon
entsをリンクする全情報をともにリンクする構造を
指す。値は索引ごとに更新される。
【0456】hdvr_playerによるユーザ索引
表の作成 ユーザ索引表は、ファイルの読み取り時に記入される。
ユーザは、アプリケーションを介して索引コマンドの挿
入を送信し、関連付けられる索引点、UserInde
xを適切に配置することはHDVRの責任になる。ユー
ザからアプリケーションへ、HDVRへの反応時間を考
慮すると、人は、Hdvr Indexサブテーブル内
のエントリからそれを計算することを決定することによ
って索引の位置決めを簡略化できる。これは、索引点
(HdvrIndexTimeStamp)の時間スペ
ーシングが十分に小さい(1秒または1.5秒)である
ときに正当化される。Hdvrは、HdvrIndex
TimeStampの最も近い倍数への索引の挿入の送
信の時刻/日付を四捨五入してから、対応するHdvr
索引点、HdvrIndex_Idのアイデンティティ
を示すUserIndexフィールドを満たす。
【0457】索引表の使用 索引表の役割は、局所的な暗号解読に関する情報だけで
はなく、ファイルを読み取るためのエントリ点、Hdv
rIndexAddressも提供することである。
【0458】2つの方法が存在する。
【0459】・索引表だけの使用 ・記録中に挿入される索引表とセクションの共同使用、
つまりさらに詳細に後述されるようなEvt_Cas_
Ecm(1...ComponentNumber) 索引表だけの使用 ファイルの読み取り時に索引表だけを使用することは、
実現するのが非常に簡単である。この運転モードはトリ
ックモード、つまりファイル内でのジャンプを必要とす
る早送り、または巻き戻しでは必須である。加えて、速
度x1の通常の読み取りモードでのその性能を試すこと
が有利である場合がある。
【0460】使用の一例を示すために、毎秒1つずつ、
900の索引を含む長さが15分のファイルを使用する
以下のシナリオを取る。5分目から速度x1で前方に読
み取るために、コマンドが送信される。次に、以下の関
数がHDVRによって実行される。
【0461】・300番目の索引、hfmdでのHdv
rIndexに対する探索 ・その索引HdvrIndexAddress[30
0]に記憶されるアドレスを読み取り、現在位置、cu
r_posを更新する。
【0462】・その索引点、HdvrIndexCMM
[300][1...ComponentNumbe
r]に対応するCMMを読み取り、現在のCMM、cu
r_CMM[1...CoponentNumber]
を更新する。
【0463】・要すれば、適切なHdvrIndexC
mm[300−n...300+n][1...Com
ponentNumber]をロードすることを見越し
て表を構築または更新する。
【0464】次に、HDVR_USERは、現在のCM
M、cur_CMM[]の識別子をCMPSに送信し、
制御ワードを回収し、構成要素を逆スクランブルする。
【0465】ファイル、1秒の読み取りに相当するHd
vrIndexAddress[301]−HdvrI
ndexAddress[300]ブロック内で前方に
読み取る要求が続く。
【0466】Evt_Write_Fifo_Comp
letedの時点で、先行するコマンドが301番目の
HdvrIndexに対して繰り返される。
【0467】この解決策の優位点は、逆スクランブルプ
ロセスの、及び索引表内でのナビゲーション同期にあ
る。CWの非同期修正はない。
【0468】重要な落とし穴は、CMM位置のこの演算
による二重予想である。
【0469】・記録時の恒久的な体制での最大持続時間
cryptoperiod/security_coe
fficient秒の、及び重大な遷移体制での暗号期
間秒の第1の過大評価 ・記録時のHdvrIndexTimeStampの最
大持続時間の第2の過大評価 CMMが2暗号期間に適用することを知っていると、約
1秒というこの最後の概算は、速度x1の読み取りモー
ドでのデータの逆スクランブルを混乱させてはならな
い。トリックモードにあるのでなおさら、この解決策は
実行不可能になる。
【0470】記録時に挿入される索引表とセクションの
共同使用 ファイルの記録時に、暗号期間ごとに、及び構成要素ご
とに、読み取り時にMloadデバイスによってフィル
タリングされ、人がhfmdに含まれるものだけではな
く、STSのCWの変化に関する情報も得ることができ
るようにするセクションが挿入される。
【0471】残念なことに、記録時のCMM_tabl
e内のCMM位置の概算のため、STSストリームEv
t_CAS_Ecm(1...ComponentNu
mber)のCMM情報と、hfmd、HdvrIne
xCMM[1...HdvrIndexNumber]
[1...ComponentNumber]に含まれ
る情報の間に可変不一致がある。この不一致を理解する
ために、図23に描かれるように、CW(n−)からC
W(n)までのn番目の遷移を考える。
【0472】cur_CMMを変更するために、挿入さ
れたセクションを使用して読み取りを実行する。
【0473】索引1から、 ・cur_CMM、つまりHdvrIndexCMM
[i]=CMM_1d(n)を更新する。
【0474】・索引i+1まで読み取る。
【0475】・iとi+1の間にはセクションはない cur_CMMとHdvrIndexCMM[+1]の
比較 ・同じ値 ・索引i+2までを読み取る。
【0476】1/STSのレベルでのCWの変更 2/事前に挿入されたセクション上のMloadがEv
t_Top_Ecmを生成する。
【0477】3/CMM_Id(n+1)になるcur
_CMMの増加 ・cur_CMM=CMM_ld(n+1)とHdvr
IndexCmm[i+2]C MM_Id(n)の比較 ・注意、hfmdの値は1つの索引によって遅らされ
る。
【0478】・索引i+3まで読み取る ・i+2とi+3の間にセクションはない。
【0479】・cur_CMM=CMM_Id(n+
1)とHdvrIndexCMM[i+3]=CMM_
Id(n+1)の比較 ・同じ値 ・索引のretardalが有効にされる。
【0480】読み取りは、ときおり索引のretard
alを生じさせるが、この問題は補償できる。
【0481】逆に、アプリケーションが索引i+2から
の読み取りを要求すると、セクションと索引を組み合わ
せて使用した結果、悲惨であることが判明することがあ
る。
【0482】・cur_CMM、つまりHdvrInd
exCMM[i+2]=CMM_Id(n)を更新す
る。
【0483】・索引i+3まで読み取る。
【0484】・i+2とi+3の間にセクションはな
い。
【0485】・cur_CMM_Id(n)とHdvr
IndexCMM[i+3]=CMM_Id(n+1)
の比較 不思議なことに、hfmdの値は先んじて索引までであ
る。したがって、人は挿入されたセクションを見逃し
た。
【0486】2つのケースが現れる。
【0487】・人は、cur_CMMを信頼し、遅れた
Ecm(危険)を保つ。
【0488】・人はHdvrIndexCMM[i+
3]、このケースでは挿入されたセクションの使用を信
頼する。
【0489】結論として、ファイル内の位置は、ブロッ
ク内の位置が過大評価されるhfmdを介して作成され
るため、記録されたファイルのプレイバック中に挿入さ
れたセクションを使用するのは問題が多い。したがっ
て、2種類の相容れない同期情報をまとめることは危険
であり、誤りの元である。
【0490】・(HdvrIndexまたはCMM_T
able内の)hfmdでの位置の情報 ・STSで挿入されるセクション 以下の場合に、同期の適性が十分である索引表の固有の
同期の根拠を決定的に選ぶことはさらに筋が通っている
だろう。
【0491】・Ecm位置の推定のプロセスが有効であ
る(さらに詳しく後述されるように、ハイブリッドフィ
ルタ)場合、 ・CW遷移の位置についてHdvrIndexTime
Stampが十分に小さい場合(つまり、<Crypt
operiod=Ecm回復時間) CMMの同期に関するさらに詳しい説明、及びビットス
トリーム位置の推定が、以下に示される。
【0492】HDVRファイルの構造 HDVRファイルの構造の説明に戻ると、前述されたよ
うに、それらは管理データ(例えば、hdvr_fil
e.management_data)及びコンテンツ
データ(例えば、hdvr_file.content
_data)を備える。
【0493】好ましい実施形態においては、hdvr_
file_management_data()は、H
DVRファイルに割り当てられるn個の第1クラスタに
含まれ、hdvr_File_content_dat
a()は続くクラスタで開始する。
【0494】ファイルへのアクセスを簡略化するため
に、管理データには第1ファイル記述子、及び記憶済み
トランスポートストリーム(STS)には第2ファイル
記述子がある。
【0495】HDVRファイルの管理部分に含まれる他
のテーブル hdvr_file_management_data
()を構成し、前記に一覧表示された多様なテーブル
が、ここにさらに詳しく説明される。
【0496】CMMテーブル CMPSによって提供されるCMM情報は、専用の二次
元テーブル内のHDVRサーバによって記憶される。C
MMテーブルの各要素は、2つの座標に従って記憶され
る。
【0497】第1に、CMM記述子が属する特定のCM
Mファミリを指すCMMテーブル識別子 第2に、特定のCMMファミリ内のCMM記述子の特定
のCMM索引を指すCMM識別子 CMMテーブルの各要素は、CMM記述子として分類さ
れ、以下の情報を含む。
【0498】・HDVRがこのCMMファイルオフセッ
トから次のCMMファイルオフセットまでSTTを解読
できるようにするHDVRファイルコンテンツデータに
関係するCMM位置のブロック内のファイルオフセット ・この特定のCMMを参照するための第1HDVR索引
(これは、HDVR索引表とCMMの間の相互参照であ
る) ・CMPSによって定義されるようなCMM構造 章テーブル 章の概念は、DVDの概念に類似している。特定の実施
形態においては、記録は、つねに少なくとも1つの章を
含む。章はプレイエントリポイントでもあり、章はHD
VR索引にリンクされている。それらの特性(以下を参
照すること)だけではなく章開始マーカも、記録段階時
に、CMPSによって提供されるCMMによって運ばれ
る。記録は、最大数のMaxChapterNumbe
r章を備える。
【0499】章は、章の最大数、MaxChapter
Numberを含む、Chapter_Table()
と呼ばれる単一のテーブルの中にともに記憶される。
【0500】章情報は、2つの別個のソースから生じ
る。
【0501】・第1に、HDVR章テーブルから ・第2に、章情報は、放送局からの記録の間に提供さ
れ、HDVRがCMM章制御と定義するものを保持する
特殊CMMの中に要約される。追加の変形においては、
このCMM章制御は、既存のMPPVに類似した様式で
視聴権を保持する。
【0502】同じ構造の中に章記述子に関係するすべて
の情報を集めるために、特殊CMMに対する参照が、C
MM章制御の座標として各章記述子の中に挿入される。
【0503】章テーブルは、HDVR章記述子の一次元
アレイである。各章記述子は、以下の情報を含む。
【0504】・(STSの始まりとして基点を解釈し)
章によってブックマークが付けられる時間−日付に相当
するHDVR索引基準(HdvrIndex_Id) ・章持続時間 ・休止、早送り、早巻き戻し等などのトリックモードご
とに、特定のトリックモードがイネーブルされているの
か、あるいはディスエーブルされているのかを指定する
トリックモードビットマップ。このトリックモードは、
章全体に適切である。
【0505】・特定のHDVRアルゴリズムに従って親
制御データ構造と比較され、章が、例えば、ユーザのP
INコード及び現在の章の道徳的なコンテンツに従っ
て、視聴可能かどうかを定める制御視聴ワード。
【0506】・特殊CMM座標(前述されたように、い
わゆるCMM章制御) 私用PMTテーブル 私用PMT(番組マップテーブル)は、記録された、あ
るいはまもなく記録されるサービスの構成要素の活用に
必要な情報の在庫調べをするHDVRに属するPMTで
ある。それは、一方が(構成要素の内容について知って
いる)クライアントによって提供され、他方が(構成要
素ごとにアクティブな条件付きアクセス(CA)PID
を知っている)CMPSによって提供される2つの擬似
テーブルを備える。
【0507】記録中、記録されるサービス計画を修正す
ることができる。したがって、記録に適用可能な1つま
たは複数の私用PMTがある。STSに挿入される1つ
のMPEGセクションは、記録されるサービス計画の各
進展を記す。さらに、HDVRは、記録されるビットス
トリーム中の最高3つの他のMPEGセクションを挿入
する。
【0508】適用可能な私用PMTの数は、MaxPr
ivatePMTNumberに制限される。
【0509】それらは、最大私用PMT、MaxPri
vatePmtNumberの在庫を調べるPriva
te_Pmt_Table()と呼ばれるテーブルの中
にいっしょに集められ、それぞれが構成要素MaxCo
mponentNumberの在庫を調べる。
【0510】私用PMTテーブルは、私用PMT記述子
の一次元アレイである。HDVR私用PMT記述子は、
共通MPEG−2によって定義されるPMTのHDVR
によって定められる実施形態である(追加の情報につい
ては、ISO/IEC 13818を参照すること)。
【0511】以下の情報は、HDVR私用PMTを作成
するためのPMTのようなISOに追加/削除される。
【0512】・HDVR使用のPID情報。事実上、H
DVRは、STSを得るために、独自のPIDのいくつ
かをオリジナルTSの中に挿入する。
【0513】・記録されていない構成要素に関係するP
ID情報は、STSを得るためにオリジナルTSから削
除される。CA態様はCMPSによって管理され、HD
VRは直接的にCAコンテンツに対処しないため、構成
要素ごとにCA_PID情報(CAは、この文脈では条
件付きアクセスの略語である)が削除される。
【0514】・構成要素ごとに、HDVRが暗号化され
たSTSをプレイバックできるようにするために、なん
らかのCMM情報が追加される。したがって、構成要素
が依存するCMMファミリが指定される。
【0515】・HDVR内部使用、CMM章制御が属す
るCMMファミリが指定される。
【0516】・現在の使用PMT記述子が適切であるH
DVRファイルコンテンツデータに関係する私用PMT
記述子位置のブロック内のファイルオフセット。
【0517】・その基点が、現在の私用PMT記述子が
適切であるSTSの始まりである時間−日付に対応する
HDVR索引基準 権利及び親制御データテーブル 権利は、番組の再生に関連付けられる許可に関する情報
を一まとめにし、いったん番組が記録されると、すべて
供給される。
【0518】この情報は、Parental_Cont
rol_Data()と呼ばれる単一テーブルにいっし
ょに記憶される。
【0519】親制御データ構造は、視聴権利制御に章の
粒度を与える。それは、2つの異なるプロセスに従っ
て、章セクションまたはファイル全体へのアクセスを許
すまたは禁じるためにHDVRサーバによって使用され
る。
【0520】・親制御データPINコードと、PVR制
御(PVRは、ビデオ録画機能性の高水準エンドユーザ
APIであるパーソナルビデオレコーダの略語である)
などの外部制御を含むユーザ独自のPINコードレベル
の比較。アクセス制御は、HDVRトラックファイル全
体に適している。
【0521】・HDVR章テーブルの章ごとの親の称制
御ワードを関連付ける)特定の親制御テーブル間の比
較。特定の実施形態においては、それは視聴制御機構を
イネーブルまたはディスエーブルする。視聴制御がある
特定の章についてイネーブルされる場合には、HDVR
サーバはグローバルな親視聴制御ワードを関係する章視
聴制御ワードに比較し、関係する章が開始する前に休止
モードにオートマトンを強制する等の内部HDVRアル
ゴリズムに従ってHDVRオートマトンプレーヤ状態を
固定する。
【0522】一定の実施形態においては、HDVRは、
親制御データに対する自由な書き込み/読み取りアクセ
スを提供し、このような実施形態においては、HDVR
は、親制御機構の効率に対して責任を負うことはできな
い。
【0523】最大値テーブル 管理データ構造を動的にするために、テーブルのそれぞ
れの最大サイズがHDVRファイルのヘッダに提供され
る。このテーブルは、Max_Value()と呼ばれ
る。
【0524】最大値の役割とは、HDVRファイル管理
データの動的構造を担うことである。したがって、一般
情報基本構造を除き、前記に宣言されたHDVR構造ご
とに、最大値構造はそのオフセット及び長さをHDVR
ファイル管理データの中に指定する。これは、互換性の
問題なく内部フォーマットを拡張するための容易な機構
を提供する。したがって、例えば、旧いHDVRサーバ
は、ファイヤワイヤバスを介して2つの異なるSTBの
間でエクスポートされるHDVRファイルのケースで、
より新しいHDVRファイルトラックを読み取ることが
できる。
【0525】一般性及び一般情報テーブル 一般性は、記録された番組に関する一般情報を一まとめ
にする。それらは、General_Informat
ion()と呼ばれるテーブルに記憶される。
【0526】一般情報は、以下の一覧(at a si
ght)情報を含む。
【0527】・CMP私用情報、いわゆるCMPSファ
イル識別子。個の情報がCMPS読取専用モードであ
り、HDVRサーバAPIを通過しないことに注意す
る。
【0528】・カレントHDVRファイルトラックを作
成するHDVRサーババージョン番号 ・あるHDVR索引から次のHDVR索引まで経過した
デルタ時間。それは、HDVR索引サンプリング期間と
して見ることもできる。
【0529】・HDVRファイルトラックの総持続時間 ・ブロック単位の総STSサイズ ・現在の許容タイムシフト深度。ナル値が、例えばファ
イル記録の共通ケースにおける無限タイムシフト深度と
見なされることに注意する。
【0530】・そのHdvrファイル管理データオフセ
ット及びその長さごとに指定されるクライアント私用ゾ
ーンの定義。HDVRサーバAPIがこの専用ゾーンに
読み取り/書き込みアクセスを提供しないことに注意す
る。クライアントゾーン入力/出力動作はクライアント
の責任である。
【0531】・さまざまな以下の許容状態からの記録モ
ード ・ユーザ瞬間記録用の即時モード ・例えば、商業的なオファーをアップロードするための
放送局の特別使用用のプッシュモード ・1回限りの区別された記録のためのプログラミングさ
れたモード ・定期的な区切られた記録のための定期的なプログラミ
ングされたモード ・タイムシフトモード ・並行ファイルアクセスを回避するために、現在HDV
Rファイルトラックを再生中のHDVRサーバがある場
合には、HDVRプレーヤサーバ識別子 ・並行ファイルアクセスを回避するために、現在HDV
Rファイルトラックを記録中のHDVRサーバがある場
合には、HDVRレコーダサーバ識別子 HDVR管理データの記憶 hdvr_file.management_data
の場合、CMMテーブル(CmmTab)は大きなテー
ブル(数メガバイト)であり、それを充填することは、
一斉送信特性及び記録される番組の持続時間に依存す
る。CmmTabがディスク上で不必要に空間を占有す
るのを回避するために、テーブルは、最大値(CmmM
axNumber)でディスク上に作成されるのではな
く、徐々に記録中に作成される。他方、(内部暗号化の
ケースでの)さまざまなCmmTabを達成するための
オフセットは、CmmMaxNumber値を考慮に入
れる。
【0532】したがって、図24に関して、人は、穴か
ら構成されるhdvr_file.managemen
t_dataをディスク上に得る。
【0533】図24は、ファイルがその有効ディスク割
り当てサイズより優れた仮想サイズを有することを可能
にするGFSライブラリの特殊機能性を描く。例えば、
HDVRファイル管理データは、20時間という総HD
VRトラック持続時間の完全な管理を提供できる仮想サ
イズを有する。しかしながら、一般的には、HDVRト
ラックの長さは2時間または3時間にすぎない。GFS
ライブラリ穴あきファイル特徴に機能に従って、HDV
Rファイル管理データの仮想サイズは、完全に割り当て
られていない。つまり、いくつかの割り当てられていな
いクラスタがhdvr_file.managemen
t_dataオフセット範囲内に提示される。
【0534】HDVRコンテンツデータ――記憶済みト
ランスポートストリーム HDVRによって記憶される管理データの説明を離れ、
記憶済みコンテンツの構造に関する説明に戻ると、ST
S(記憶済みトランスポートストリーム)がここにさら
に詳細に説明される。
【0535】STSは、HDVRによって記録されるビ
ットネームに与えられる名前であり、以下のデータから
構成される。
【0536】・記録されるサービスの再生可能なデータ
(クライアントの選択) ・ビデオデータの1つまたは複数のセット ・音声データの1つまたは複数のセット ・字幕の1つまたは複数のセット ・テレテキスト情報 ・HDVRによって挿入されるデータ HDVRによって挿入されるデータは、MPEGセクシ
ョンの形を取り、他のところでHDVR_<secti
on_name>_SECTIONと呼ばれる。
【0537】HDVR_NEW_PMT_SECTIO
Nは、各記録済みサービス計画の変更を記すために挿入
される。
【0538】STSの中にはMaxPrivatePm
tNumber−1 HDVR_NEW_PMT_SE
CTIONセクションの最大がある。
【0539】HDVR_TIME_TAG_SECTI
ONセクションは、STSの再生中に経過した時間の表
示を提供するために定期的に挿入される。このセクショ
ンは、オプションである。
【0540】HDVR_CAS_ECM_SECTIO
Nセクションは、再生可能データ(DVB−CS)の内
部暗号化のケースだけで使用され、暗号期間の始まりを
記すために挿入される。
【0541】HDVR_CAS_ECM_SECTIO
Nは、STSの再生中に、関連付けられた再生可能構成
要素のためのCWの変更のシグナリング、したがってデ
スクランブラ内で新しい組を適用することを可能にす
る。
【0542】記録サービスのために区別可能なECM
PIDを??数多くの異なるHDVR_CAS_ECM
_SECTIONセクションがある。したがって、HD
VR_CAS_ECM_SECTIONセクションタイ
プは、各CMMファミリと関連付けられている。
【0543】データのレコーディング 最後に、HDVRによるコンテンツのレコーディングの
プロセスに関していくつかの追加の詳細が提供され、内
部暗号化と外部の暗号化のケースが調べられる。
【0544】図25は、HDVR制御装置と大容量記憶
装置間のデータの流れを描く。大容量記憶装置に移動す
る、及び大容量記憶装置から生じるデータは、さまざま
なサイズであってよい、FIFO(先入れ先出し)メモ
リを介して伝送される。
【0545】レコーディングは、MaxCmmNumb
er CMMの最大を備える。返されるCMMは、暗号
化された部分及び別の明瞭な部分を含み、後者だけがH
DVRによって直接的に利用可能である。つまり、それ
はCMMに関連付けられるSTS部分に対するナビゲー
ションと制限の制約を与える。
【0546】ファイルの粒度はブロックであるため、C
MMはそれ自体を連続ブロックの集合体に適用する。S
TS内でのCMMの適用の開始点は、ブロック番号によ
って特定される。
【0547】内部暗号化 内部暗号化の場合、再生可能なデータは、デマルチプレ
クサ230を離れると暗号化されたままとなり、修正な
しで記録され、その結果、再生可能なデータの暗号解読
は再生時に行われる。暗号解読キーは1つまたは複数の
ECM PIDで運ばれるECMを使用して一斉送信さ
れ、1暗号期間有効である。暗号期間の変更は一斉送信
内に信号で知らされる。暗号解読キーは、CMPSサー
バのサービスを使用することによって、新暗号期間ごと
にHDVRサーバによって回収される。
【0548】内部暗号化の場合、MaxCmmNumb
er制限内での記録の持続期間のための暗号期間と同じ
数のCMMがある。つまり、暗号化は時間的であると言
われる。
【0549】とりわけ、各CMMは、1つまたは複数の
再生可能な構成要素の1暗号期間の再生中に平文に直す
ことを可能にする(CW:制御ワードと呼ばれる)1組
のキーを運ぶ。CWは、CMMの暗号化されたゾーン内
で見つけられ、HDVRによって直接的に利用可能では
ない。CMPSに利用可能なCWを要求することは必要
ではない。
【0550】この種の暗号化の場合、再生可能な構成要
素の1つまたはいくつか、あるいはすべてにも適用可能
なサービスとしてECMがある場合がある。結果的に、
CMMはCMMファミリごとに一まとめにされ、この数
はECM PIDファミリの数――すなわち、番組マッ
プテーブル(PMT)の中で参照される別個のECMP
IDによって決定される。これらのファミリのそれぞれ
に対し、例えば、関連付けられる、従属する暗号化され
た構成要素がある。
【0551】ECM PID Xは、再生可能なビデオ
構成要素のためのキー組を一斉送信する。
【0552】ECM PID Xは、再生可能な音声構
成要素のためのキー組を一斉送信する。
【0553】ECM PID Yは、再生可能なテレテ
キスト構成要素のためのキー組を一斉送信する。
【0554】ECM PID Zは、再生可能な字幕構
成要素のためのキー組を一斉送信する。
【0555】この例の場合、3つのCMMファミリがあ
る。対応表が、再生可能なデータとCMMファミリの間
の関連付けを定義する。サービス計画の変更のケースで
は、新しい対応表が定義されるだろう。つまり、新しい
ECM PIDのために、新しいCMMファミリが作成
されるだろう。この暗号化の場合、考えられるCMMフ
ァミリの数は、HDVRサーバで記録できる再生可能な
構成要素の数に等しくなるだろう。
【0556】外部暗号化 外部暗号化の場合、再生可能なデータは、デマルチプレ
クサ230を離れると、自由であり、このデータの暗号
化はディスクでの書き込み時に行われ、暗号解読は再生
時に行われる。適用される平文に直すキーは、CMPS
によって決定され、CMPSサーバのサービスを使用す
ることによってHDVRサーバによって回収される。
【0557】外部暗号化の場合、MaxCmmNumb
er制限内の記録に適用可能なキーがあるのと同じ数の
CMMがある場合がある。これらのCMMの記録上での
割り当ては、HDVRの責任である。暗号化は、空間的
であると言われる。
【0558】各CMMは、記録サービスのすべての再生
可能な構成要素の暗号化と暗号解読を可能にする(これ
以降CKと呼ばれる)キーを運ぶ。CKはCMMの暗号
化されたゾーンで見つけられ、HDVRによって直接的
に利用できない。CMPSに利用可能なキーを要求する
ことが必要となるだろう。
【0559】この種の暗号化の場合、つねにただ1つの
CMMファミリがある。
【0560】CMMファミリは、MaxCmmNumb
er CMMの最大を含むCmm_Table()と呼
ばれるテーブルの中に一まとめにされる。
【0561】ここで、ビットストリームの記録及びプレ
イバック手順が、さらに詳しく説明されるだろう。記録
手順は、後のプレイバックプロセスのために制御ワード
が同期されるだろう美とストリーム中の位置の概算を含
む。概算は、この記録技法が、機密保護及び最小処理と
記憶の優位点を与えることができるようにするために必
要とされる。
【0562】好ましい実施形態の第2の一般的な態様を
参照すると、ビットストリーム中の位置の概算及び条件
付きアクセス情報のビットストリームとの同期が、ここ
にさらに詳細に説明される。
【0563】CMM同期 ビットストリーム同期 スクランブルされたビットストリームを記録することに
関連付けられるいくつかの問題点とその解決策を説明す
る前に、このようなビットストリームの構造が、ここで
図26に関して説明されるだろう。
【0564】図26では、(放送センタから受信機/デ
コーダで受信されるものなどの)スクランブルされたM
PEGビットストリーム1300が描かれている。図示
されるようなビットストリームは、それぞれが対応する
制御ワードでスクランブルされる、連続する暗号期間8
000、8002、8004に分割される。ビットスト
リーム1300は、暗号化済みエンタイトルメント制御
メッセージ(ECM)8010、8012、8114も
含む。
【0565】システムにある程度の冗長性(したがって
耐障害性)を与えるために、各ECMは、事実上、1つ
が現在の暗号期間用、そして1つが続く暗号期間用であ
る2つの制御ワードを含む。したがって、CM8010
は、暗号期間CP7 8000とCP8 8002の両
方を逆スクランブルするための制御ワードを含む。同様
に、ECM8012は、暗号期間CP8 8002とC
P9 8004の両方を逆スクランブルするために必要
な制御ワードを含む。事実上、ECMは、ユーザがチャ
ネルを変更したり(「ザッピング」)、一時的な障害が
ECMの第1セットの受信を妨げる場合にシステムの続
行される円滑な動作を確実にするために、周期的に再送
される。簡単にするために、それぞれのこのようなシリ
ーズの第1ECMだけが図示される。
【0566】条件付きアクセススマートカード5500
は、典型的には、各ECMを平文に直すのに数秒を要す
るが、各暗号期間は相対的に長い(好ましい実施形態で
は10秒)ため、通常、(放送センタから衛星を介して
受信されるコンテンツなどの)ライブコンテンツを受信
し、復号するケースでのタイミングにまつわる問題はな
い。
【0567】(受信されたデジタルテレビ放送などの)
音声/画像ビットストリームをハードディスクに記録
し、その後プレイバックするケースでは、一般的には、
記録に関係する条件アクセスデータが、記録の時間制限
を克服するために(言い換えると、入信ECMを暗号化
するために使用される時間変化するグローバル暗号化キ
ーKGに対する依存性を取り除くために)、記憶前、記
憶中、あるいは記憶後に操作されなければならないだろ
うため、タイミングはより問題となる。
【0568】(音声/画像ビットストリームの形を取
る)スクランブルされたコンテンツ800を関連付けら
れたECMと同期させることが有利であることが判明
し、その結果、制御ワード5600は、コンテンツ80
0を逆スクランブルできるようにするために、正しい時
間にデスクランブラに送り込むことができる。さらに精
密には、音声/画像ビットストリーム及び(前記に注記
されたように、好ましくは、オリジナルECMの形を取
る)条件付きアクセスデータを、音声/画像ビットスト
リーム及び条件付きアクセスデータを記憶するときに同
期させることが役に立つことが分かった。同期プロセス
は、好ましい実施形態においては、HDVR3850に
よって実行される。代わりに、同期プロセスはCMPS
システム2300によって実行される。
【0569】同期プロセス中、条件付きアクセスデータ
とビットストリーム中の対応する位置の間で参照がなさ
れる。一般的には、この参照は、データの2つの部分の
形を取る。つまり、条件付きアクセスデータ(ECM)
に対応するCMMの識別子とビットストリーム中の対応
するファイル書き込みポインタ(FWP)である。好ま
しい実施形態では、このような参照は、記憶されたビッ
トストリームも含むファイルの前述された管理データ部
分2112内のテーブルに記憶され、その結果それはプ
レイバック中に容易にアクセスできる。
【0570】同期は、それが到達するときの各ECMの
位置を評価し、このような位置を記憶し、制御ワードが
デスクランブラに送達されなければならないタイミング
のための基礎として、プレイバック中に記憶された位置
を再ロードすることにより引き起こすことができる。ビ
ットストリーム中の正確に最も近いビットまたはバイト
までのこのような位置の評価は、ときおり非効率的であ
ることがある。
【0571】記憶されたビットストリーム中でのECM
の位置の正確な判定に関するいくつかの問題点は、ここ
で、ビットストリームがデマルチプレクサからリマルチ
プレクサの中に、それからFIFOを介してハードディ
スク内の記憶装置の中に送り込まれる現在のシステムの
文脈で考えられるだろう。
【0572】ECMなどのデータは、同期プロセスの制
御がさらに容易に管理される上位ソフトウェア層の半自
動的に動作しているMLOADデバイスによってデマル
チプレクサの出力から抽出される。中断待ち時間及び他
の類似した考慮事項のため、ECMのMLOADデバイ
スからの受信は、正確に計時できない。さらに、ECM
の受信は、通常、(ECMが「新規」なのか、あるいは
再送にすぎないのかに関するチェックを含む)一定のチ
ェックが行われた後に条件付きアクセススマートカード
によって生成されるEVT_CAS_ECMイベント8
400(図示されていない)によって肯定応答されるに
すぎない。このイベントは、ここでは△tと呼ばれるタ
イムオフセットによりECM自体の実際の受信に立ち遅
れ、△tに対応するデータ量は、ビットストリームの優
勢なビットレートに応じて変化するだろう。△tの主題
には後に戻るだろう。
【0573】考慮しなければならない1つの問題点は、
FIFOバッファが動的に調整可能なサイズを有し、予
測不可能な要因に応じて空といっぱいの間で変化する可
能性があるという点である。追加の問題点――後に戻る
――は、受信機/デコーダの要約されたアーキテクチャ
に従って、データは、ファイル書き込みポインタ(FW
P)が(おそらく、一度に2メガバイトのデータの)各
セグメントの書き込みの前後にだけ決定可能であるよう
に、分割できないセグメントでハードディスクに記憶さ
れるという点である。つまり、「カレント」FWPは、
任意のときに(例えばEVT_CAS_ECMが達する
ときに)読み取ることはできない。
【0574】最終結果は、ECM位置の正確な決定が、
ビットストリームの、それが到達するとき、及び/また
は(相対的に非効率的であることがある)システム内で
の多様なバッファ及びファイルポインタの状態に関する
詳細な知識としての追加の分析を必要とすることがある
という点である。
【0575】ビットストリーム中の位置の概算 前記に簡略に説明されたように、各ECMは、ある特定
の10秒の暗号期間に関係し、次の暗号期間の制御ワー
ドも含み、ECMの位置を評価するための別の解決策に
対するなんらかの見通し、すなわち位置の(決定よりむ
しろ)概算を提供する。
【0576】位置を概算する多様な手段が見つけられ、
これらの内のいくつかが後述されるだろう。より効率的
な手段の1つは、ビットストリームを、最悪のケースの
推定値――相対的に迅速に計算される――が、つねに
「安全」な答えを生み出すように操作することを含み、
つねにより複雑な概算方法に優先して使用することがで
きる。「安全」なによって、タイミングを制御するため
の前記の推定された位置を使用する記憶されたビットス
トリームの再構築の間に、制御ワードが、それぞれ、適
切な2つの暗号期間時間ウィンドウの間にデスクランブ
ラに送達され、このようにして逆スクランブル動作が正
しく動作することが示唆される。対照的に、制御ワード
が誤った暗号期間中に送達されると、デスクランブラは
記憶されたビットストリームを逆スクランブルすること
ができず、ユーザにとってのピクチャ及び/または音の
損失が生じるだろう。
【0577】ビットストリーム中の条件付きアクセスデ
ータ(またはさらに言えば、特定の字幕、音声、ビデ
オ、アプリケーションまたは他のデータなどの他の適切
なデータ)の位置を推定するためのこの前述された手段
が、ここで図27に関して説明されるだろう。
【0578】図27では、セグメントS21、S22、
S23等が、ビットストリーム(データオフセットスケ
ールを有すると図示される――タイムスケールが使用さ
れると、変化するビットストリームのために、後述され
るように、セグメントサイズは歪められ、一様でなくな
るだろう)に関して示される。やはり図示されているの
は、同等なファイル書き込みポインタ(FWP)値、及
び優勢な暗号期間CP12、CP13、CP14であ
る。ビットストリーム中のECM5602の実際の位置
は、時間△t後に発生するEVT_CAS_ECMイベ
ント8400でのように、図示される。セグメントの境
界は、ECM5602及びEVT_CAS_ECMイベ
ント8400のどちらかの側に破線として図示される。
最後に、対応する推定される位置(FWPest)は、
ECM5602を含むセグメントの最後の右側に図示さ
れる。
【0579】特定のセグメントの最後(したがって、次
のセグメントの始まり)は、カレントセグメント書き込
み動作が完了した旨を示すために大容量記憶装置によっ
て生成されるEVT_FIFO_WRITE_COMP
LETEDイベントの受信によってほぼ瞬時に(nea
r−instantaneously)(一定の実施形
態ではおもに概算を担当する)CMPSシステムに信号
で知らされる。この点で、カレントFWPは、ちょうど
使用されたセグメントサイズが加えられた過去のFWP
に等しいと想定できる。
【0580】好ましい実施形態においては、CMPSよ
りむしろHVDRが、EVT_CAS_ECMイベント
がCMPSによって受信された直後に送信される、EV
T_CAS_ECMイベントから引き出されるEVT_
CAS_CMMイベントを使用して位置を推定する。し
たがって、推定値は直接的にEVT_CAS_ECMイ
ベントに基づいていない。事実上、多くの実際の状況で
は、EVT_CAS_ECMイベントと対応するEVT
_CAS_CMMイベントの間の時間遅延は相対的に小
さく、無視することができる。
【0581】概算は、(ECM5602の受信はそれ自
体大局的に通知されないため、特に大部分の受信された
ECMは、それからその後条件付きアクセスシステムに
より廃棄される再送にすぎないため)ECT_CAS_
ECMイベント8400が落下するセグメントを決定し
てから、以下の公式に従って位置の推定値を採取するこ
とを備える。
【0582】
【数1】 ここではE( )は予想演算子であり、size_se
gment(n)は各セグメントのサイズであり(この
図では、例えば、size_segment(22)=
2メガバイトであり、すべての過去のセグメントサイズ
の合計は30メガバイトである)、size_fifo
は、(注記されたように変化することがある)FIFO
内のデータの量であり、推定値が過大評価である(以下
を参照)ことを確実にするために、システム内での追加
の待ち時間及びタイミング問題について調整する(典型
的には0と1メガバイトの間である)kは「機密保護パ
ラメータ」である。
【0583】前記式の中の予想項E( )は、少なくと
も、size_fifoパラメータを正確に求めること
ができないという事実に取り組んでいる。一般的には、
指定された最大割り当てFIFOサイズfs(例えば)
について、E(size_fifo)は、(前記例で
は、0.2Mbという最大FIFOサイズを暗示する)
1/2fsと解釈される。さらに詳しく後述されるよう
に、size_segmentの選択は、結果として生
じる推定値を「安全」であるが効率的に保つために微調
整できる。
【0584】図27に示される例では、E(size_
fifo)は0.5Mbとして解釈され、kは0に等し
く、Σsize_segment項は32Mbに等し
く、前記公式が適用されると、32.bMbというFW
Pestをもたらす。
【0585】前記公式の基礎となるのは、ECMの二重
制御ワード冗長性のために、ECMの推定位置が、それ
が関連付けられる暗号期間の直後の暗号期間に含まれる
かどうかは関係ないという理解である。しかしながら、
推定位置がそれを超える暗号期間、あるいは正しい暗号
期間の直前の暗号期間に含まれる場合には、概算は失敗
するだろう。
【0586】図27では、例えば、セグメントS22の
書き込みの間、暗号期間CP12に関して送信されるE
CMによって引き起こされるEVT_CAS_ECMイ
ベント8400と暗号期間CP13に関して送信される
ECMによって引き起こされるEVT_CAS_ECM
イベント8400を区別することは不可能である。CP
12 ECMをCP13 ECMとして不正確に名付け
ることは重大ではなく、CP13 ECMをCP12
ECMと不正確に名付けることは致命的であるため、過
大評価の必要性を認識することができる。
【0587】セグメントサイズが大きくなると、同じセ
グメント書き込み動作中に2つのEVT_CAS_EC
Mイベント8400、及び2セットの制御ワードを受信
する可能性が存在するため、最大セグメントサイズが、
(FIFOサイズパラメータのサイズより小さい)暗号
期間としてのサイズを超えることができないことも理解
されなければならない。前述された多様なシステム制約
(及び、デバイス間通信の非同期性質を含むその他)の
ために、対応するECMが受信された順序について曖昧
さがあり、誤った制御ワードが誤った暗号期間に適用さ
れることにつながるため、これも致命的である。
【0588】前記を念頭に、極端なケースでの概算ルー
チンの堅牢性が、図28と図29に関してここにさらに
説明されるだろう。
【0589】図28では、入信するECM5602、結
果として生じるEVT_CAS_ECM8400及びE
CMの推定位置(FWPest)が図示される。これ
は、EVT_CAS_ECMイベント8400が、セグ
メントS22の最後で、EVT_FIFO_WRITE
_COMPLETEDイベントの直前に受信される1つ
の極端なケースを表す。結果として生じる推定値(事実
上、32.5Mb)は、ここでは、(△tに同等なデー
タサイズが加えられる0.5Mbという距離にある)E
CM5602に最接近し、このケースでは正しい暗号期
間(CP13)に含まれる。
【0590】図29では、ECM5602及び結果とし
て生じるEVT_CAS_ECM8400は、ビットス
トリーム中でさらに前方に少し図示され、EVT_CA
S_ECM8400は、次のセグメントS23内で発生
する。結果として生じる推定値(事実上、34.5M
b)は、ここでは、(△tに同等なデータサイズが加え
られる2.5Mbという距離にある)ECM5602か
ら最も遠く、正しい暗号期間(CP13)の後の暗号期
間(CP14)に含まれる。
【0591】他の例は、暗号期間とセグメントの異なる
相対的な位置で構築することができるが、前記公式を用
いて(及び結合されたセグメントと、暗号期間のサイズ
を超えないFIFOサイズを用いて)推定位置が、つね
に正しい暗号期間、あるいは続く暗号期間に含まれる
(両方のケースで、結果は許容できる)ことが認められ
る。
【0592】前述されたように、好ましい実施形態にお
いては、概算プロセスは、EVT_CAS_ECMイベ
ントから引き出されるEVT_CAS_CMMイベント
に基づいている。事実上、多くの実際的な状況では、E
VT_CAS_ECMイベントと対応するEVT_CA
S_CMMイベントの間の時間遅延は相対的に小さく、
無視することができる。
【0593】同期及び概算の下にある構造 (特に図12と図13に関して)前述された同期及び概
算の方法の基礎となる多様な構造は、図30と図31に
関してさらに詳細に説明されるだろう。
【0594】図30では、スクランブルされたビットス
トリーム800が、デマルチプレクサ/リマルチプレク
サ/デスクランブラ2010を通過すると図示され(こ
こでは、そのリマルチプレクサされている容量にあると
図示され)、(FIFOデバイス3744―図示されて
いない―によって動作される)FIFO8020が(大
容量記憶装置3728によって動作される)ハードディ
スク2100内のファイル部分2110内に記憶される
途中である。MLOADデバイス3438は、ECM5
602、及びURM5612とCMPS_EMM561
4を抽出し、これらをそれぞれ条件付きアクセスシステ
ム5000とCMPS2300に転送する。条件付きア
クセスシステム5000内の条件付きアクセス暗号解読
エンジン8500によって平文に直される制御ワード5
600は、EVT_CAS_ECMイベント8400の
一斉送信に伴なわれ、CMPS2300に送信される。
前述されたように、制御ワード(冗長性のためにCMM
あたり2つ)、URM5612とCMPS_EMM56
14は、CMPS暗号解読エンジン8550によって結
合され、暗号化されてから、関連するファイルの管理デ
ータ部分2112での記憶のために、HDVR3850
及び大容量記憶装置3728を介してハードディスク2
100に送信される。EVT_FIFO_WRTE_C
OMPLETEDイベント8410は、セグメント書き
込み動作が完了すると定期的に一斉送信され(好ましい
実施形態においてはHDVR3850によって、あるい
は代わりに直接的にCMPS2300によって受信さ
れ)る。EVT_CAS_CMMイベント8552は、
CMPS2300からHDVR3850に送信される。
前述されたように、EVT_CAS_CMMイベント8
552は、好ましい実施形態における概算の基礎として
使用される。
【0595】図31では、デマルチプレクサ/remu
ltiplexer/デスクランブラ2010が、CM
PS2300内のCMPS暗号解読エンジン8560に
よって生成される制御ワード5600で、部分2110
からスクランブルされたビットストリーム800を逆ス
クランブルすることによって所望される解読されたビッ
トストリーム810を生成する。前述された暗号解読エ
ンジン8560は、大容量記憶装置3728を介してハ
ードディスク2100内の関連するファイルの管理デー
タ部分2112から検索されるCMMによって送られ、
CMPS2300による追加の処理のために、URM5
612とCMPS_EMM5614も生成する。
【0596】セグメントサイズ 他の検討材料に戻ると、暗号期間がタイムドメイン内だ
けで所定のサイズを有し、その対応するデータサイズは
ビットストリームのビットレートに伴ない変化すること
が注記される。追加の検討材料は、毎秒生成されるEV
T_FIFO_WRITE_COMPLETEDイベン
トが多いほど、多くの処理能力が不必要に使い果たされ
るため、特に、暗号期間の予想サイズを基準にして「安
全」な(言い換えると、小さな)セグメントサイズが非
効率的であるという点である。
【0597】最適セグメントサイズが、ここでさらに詳
細に考えられる。
【0598】セグメント内の少量のデータは、暗号期間
あたり多くのセグメントを作成できるようにする。これ
は、さらに正確な測定値を可能とする可能性があるが、
暗号期間あたり多すぎるイベントを有するリスクを生じ
させ、計算効率の悪化につながることがある。
【0599】セグメント内の中くらいの量のデータは、
大きなセグメントと小さなセグメントの妥協案を提供す
る。これは、考えられるセグメントサイズの範囲を含
み、最適なサイズはこの範囲から選ばれなければならな
い。
【0600】セグメント内の大量のデータは、暗号期間
あたり少なすぎる、多すぎるセグメントを作成する。こ
れは、より少ないセグメントエンドイベントのためより
必要とされる処理がより少なくなるという優位点を有す
るが、大きすぎるセグメントは、セグメントの書き込み
中に、(潜在的に致命的に)複数のEVT_CAS_E
CMイベントを受信させることになる。
【0601】要約すると、最小セグメントは最も正確な
推定値を生じさせるが、小さなセグメントを使用するに
はさらに多くの処理が必要となるため、低速である。ビ
ットストリームは、推定値を可能な限り正確に保ちなが
ら、処理を最小に保つために可能な限り大きいセグメン
トに分割される。この目的のため、一般的には、多様な
中型のセグメントが、速度と精度の有効な妥協案として
好まれる。
【0602】セグメントサイズの前記検討材料を考える
と、システムの追加の重要な態様は、ECM位置の「安
全」な推定値を保持しつつ、効率を最大限にする(また
は、言い換えるとセグメントサイズを最大限にする)た
めの適切なセグメントサイズの決定に関係する。
【0603】適切なセグメントサイズの決定は、ビット
レートなどのビットストリームの認められる特定にフィ
ルタを適用することによって行われる。このフィルタリ
ングは、概算の場合のように、CMPS2300によっ
て実行される。大部分のケースでのフィルタリングは、
ビットレートの大きな変動に対する概算手順の感受性を
削減するのに役立つ。
【0604】ビットストリームの位置をハードディスク
に記憶するために使用されるセグメントサイズを最適化
するためのフィルタ及びその他の手段の使用は、ここで
さらに詳しく説明されるだろう。
【0605】セグメントサイズの最適化 一般的にはセグメントサイズの決定を補助するためにビ
ットストリームの少なくとも1つの特性を活用してセグ
メントサイズを最適化するためには、多数の方法が使用
できる。
【0606】好ましい実施形態においては、入力がビッ
トストリームの平均ビットレートの測定値であり、出力
がセグメントサイズである動的フィルタが使用される。
しかしながら、一般的には、ここでは2つのおもな種類
のフィルタが考えられる。つまり静的フィルタと動的フ
ィルタである。それらの相対的な長所の説明だけではな
く、これらのフィルタの実現もここで説明されるだろ
う。
【0607】まず最初に、静的フィルタが説明されるだ
ろう。
【0608】静的フィルタの重要な特性は、セグメント
のサイズが可能な限り一定に近いという点である。動的
フィルタのケースでのように、最適セグメントサイズを
決定するために、ビットストリームの処理が必要とされ
ないため、静的フィルタは動的フィルタより容易に利用
されるが、それらはビットレートの大きな変動によりう
まく対処しない。しかしながら、静的フィルタは、暗号
期間あたり多すぎるイベントを生成する傾向があり、ビ
ットストリームの操作を悪化させ、理論上の制度を即座
に減少させる。
【0609】この一定のセグメントサイズの選択に影響
を及ぼす制約は、以下を含む。
【0610】セグメントのサイズは、(バッファに入れ
られるデータも考慮に入れ)長さで暗号期間を超えては
ならない。
【0611】Size_Segment(Mb)<ビッ
トレート(Mb/秒) x 暗号期間(秒) − FI
FOSize(Mb) 転送(セグメントサイズ)の最大サイズは、制限され
る。
【0612】Size_Segment(Mb)<32
(Mb) 前記パラメータに関する以下の仮定は、不当ではない。
【0613】1暗号期間は少なくとも6秒である。
【0614】ビットレートは、少なくとも毎秒1Mbで
ある。
【0615】FIFOSizeは、32Mb未満または
32Mbに等しい(典型的には2Mb)。
【0616】これらの前記仮定は、以下の結果を出す。
【0617】Size_Segment(Mb)<6
(Mb)− FIFOSize(Mb) (結果的にFIFOSize<<6である。) したがって、2Mbという典型的なFIFOSizeの
場合、セグメントサイズは4Mbである。
【0618】動的フィルタがここで説明されるだろう。
【0619】動的フィルタは、ビットレートに対処する
ためにセグメントのサイズを調整する。高いビットレー
トは短い持続時間のセグメントを有し、逆の場合も同じ
である。しかしながら、動的フィルタは、少ない大きな
セグメントと多くの小さなセグメントの間で妥協しなけ
ればならない。ビットレートが低い、あるいは一定であ
る場合、セグメントが大きくなり、ビットストリームの
記録と同期に必要な解像度を依然として与えるが、暗号
期間あたりに生成するイベントは少なくなる可能性があ
る。ビットレートが高いまたは大幅に変化する場合、最
も正確な測定値を与えるためには最小のセグメントが必
要とされるが暗号期間あたり多くのイベントを生成し、
このようにしてビットストリーム操作を劣化させる。動
的フィルタの目的とは、ビットストリームに考えられる
最大セグメントを作成することである。
【0620】動的フィルタは、セグメントサイズを、
(以下で「セグメント書き込み時間」と呼ばれる)暗号
期間の分数として表される時間の同等物に制限しようと
する。セグメント書き込み時間を定める係数は、「機密
保護係数」と呼ばれる整数であり、その結果、
【0621】
【数2】 である。
【0622】高速フィルタ、慣性フィルタ、及びハイブ
リッドフィルタという3種類の異なった動的フィルタが
ある。好ましい実施形態においては、ハイブリッド動的
フィルタが使用されるが、好ましい実施形態の変形にお
いては、他の種類の静的フィルタ及び動的フィルタが使
用される。
【0623】高速道的フィルタは、次のセグメントのサ
イズを決定するために、前のセグメントの書き込み時間
を考慮に入れる。最初に、高速フィルタは、前のセグメ
ントを書き込むのに要した時間を計算してから(tim
e_segment(n−1)−time_segme
nt(n−2))、(要した時間で除算されたセグメン
トのサイズに等しい)対応する平均ビットレートを計算
する。セグメントのサイズ(n)、つまりsize_s
egment(n)は、公式により出される。
【0624】
【数3】 Time_segment(n)は、(セグメントの持
続時間よりむしろ)そのセグメント(n)のイベントの
受信絶対時刻である。
【0625】釣り合って(すなわち、一定のビットレー
トを用いると)、フィルタは実際のビットレートに関係
なく、暗号期間あたりの書き込みの回数をsecuri
ty_coefficientに与える。低ビットレー
トのケースでは、セグメントのサイズの制限値は、静的
なフィルタのケースの制限値と同じである。つまり、s
ize_segment=4Mbである。
【0626】前記公式を使用し、一定のビットレートで
高速動的フィルタを使用する例証として、暗号期間の値
が10秒で固定され、4という機密保護係数が選ばれる
と、セグメントイベントは2.5秒おきに発生する。一
定のビットレートのケースでは、システムは、前記に定
められた制限に向かって収束する。
【0627】動的フィルタに対する重要な制約は、以下
のとおりである。
【0628】time_segment(n)−tim
e_segment(n−1)<1暗号期間 セグメント境界で、平均的なビットストリーム(1暗号
期間/security_coefficientで平
均される)が、前述された機密保護係数関係性を超えな
いことが推論できる。フィルタの安定性は、以下である
ならばこのケースで保証される。
【0629】
【数4】 この例から、ビットレート動的が、以下の関係性により
機密保護係数にリンクされることが分かる。
【0630】
【数5】 ビットストリーム変動中にフィルタの「堅牢性」パラメ
ータを定める機密保護係数値は、試験条件下での本物の
MPEG−2フロー検査により求められる。これは、機
密保護パラメータ及び制限が確立されるように、フィル
タの制御値を得るためである。
【0631】第2の種類の動的フィルタは、慣性マルチ
レベルフィルタである。
【0632】このフィルタの原理は、それが可変ビット
・レートビットストリームのビットレートを、過去のセ
グメントのビットレートを使用して推定するという点
で、高速道的フィルタの原理と同じである。しかしなが
ら、概算プロセスはさらに大きなメモリを与えられる
(すなわち、実質的には、それはさらに多くのフィルタ
係数を有する)。ここでは、平均ビットレートは、セグ
メント書き込み動作の過去のsecurity_coe
fficient数の平均ビットレートの全体的な平均
と解釈される。このフィルタの概算は、第1レベルフィ
ルタの慣性より高い慣性を有し、それはビットストリー
ムのピークに対してはより敏感でない可能性があるが、
それがさらに安定することを可能にする。慣性フィルタ
は、それがセグメント(n)のサイズを得るために、セ
グメント(n−security_coefficie
nt)からセグメント(n−1)までの書き込み時間値
を使用するという点で、高速フィルタに類似している。
【0633】フィルタの公式は、以下のとおりである
(幾何学的形)。
【0634】
【数6】 (算術的形)
【0635】
【数7】 動的フィルタの一定のビットレートの制限値は、静的フ
ィルタの制限値と同一であり、動的制限を含む値は、高
速フィルタの値に対する性能という点で同等であり、唯
一の相違点は、高速フィルタの場合の暗号期間/sec
urity_coefficientというメモリより
むしろ1暗号期間のメモリを有する(security
_coefficientレベルの)慣性フィルタの応
答時間である。
【0636】慣性フィルタのこの慣性は、特に、非常に
高いピークの削減(およびしたがってそれらのピークに
対する感受性の現象の可能性)、すなわち、secur
ity_coefficientが可能にするより高い
動的のピークを可能にする。静的フィルタは、メモリフ
ィルタの慣性はこの人為的な影響とともに他の値を排除
してよいが、ピークが抹消される場合に最適値を達成す
る。
【0637】第3の種類の動的フィルタは、ハイブリッ
ドヒステリシスフィルタである。
【0638】前述された2つの動的フィルタ(高速動的
フィルタと慣性マルチレベル動的フィルタ)は、さらに
優れた性能を示すフィルタを示すために結合される。結
果として生じるハイブリッドフィルタは、2つのフィル
タの最善の特性を結合する。高速フィルタは突然のビッ
トレート低下のケースで必要な優れた応答時間を有する
が、それがセグメント内で局所化されたピークを特定す
ると、それは平均化プロセスで含まれる大きな値のため
に、次のセグメントのサイズを過大評価することがあ
る。他方、慣性フィルタは、ビットレートピークを減衰
できるが、その反応時間は、連続する低下があるときに
有効性を制限する。
【0639】ハイブリッドフィルタは、高速フィルタと
慣性フィルタを結合し、あらゆる局所化されたピークを
減衰するために、上昇するビットストリーム前方で慣性
フィルタの柔軟性を、及び低ビットレートビットストリ
ームに向かう高ビットレートビットストリームの遷移を
補償するために、減少するビットストリーム前方での高
速フィルタの反応性を保つことによって、ヒステリシス
影響(つまり、ビットレートの上昇する前方と減少する
前方の差異)に対処する。
【0640】フィルタの動作は、ここに説明されるだろ
う典型的なビットストリームのシミュレーションを使用
して調査された。
【0641】ビットレートシミュレーション さまざまなビットレートパターンが、前述された4つの
フィルタ、つまり静的フィルタ、高速動的フィルタ、慣
性動的フィルタ、及びハイブリッド動的フィルタを使用
して、図32から図39で調査される。
【0642】シミュレーションの目的は、それらの安定
した動作ゾーンの中から(つまり、一定したビットレー
トではない)フィルタの動作を観察することである。こ
れを達成するために、正弦波的に変化するビットレート
(図32は、静的フィルタの結果を示し、図33は高速
フィルタ用であり、図34は慣性フィルタ用であり、図
35はハイブリッドフィルタ用である)、階段関数ビッ
トレート(図36はハイブリッドフィルタ専用であ
る)、三角関数ビットレート(図37はハイブリッドフ
ィルタ専用である)、頂冠関数ビットレート(図38は
ハイブリッドフィルタ専用である)及び単一ピークビッ
トレート(図39はハイブリッドフィルタ専用である)
を含むさまざまな入力ビット速度関数が調査される。
【0643】図のそれぞれのセットでは、「a」と示さ
れる図が経時的なビットストリームを示し、「b」と示
される図がいくつかのセグメントでの結果として生じる
書き込み時間を示す。
【0644】図32から図39の各セットで「a」と示
される図は、セグメント間の遷移を示す垂直線を有す
る。例えば、図32a(静的フィルタケース)から分か
るように、一定のセグメントサイズは高ビットレートで
―約3秒、約16秒、約28秒、及び約41秒でのセグ
メント遷移の同時縦揺れに反映される―短い時間、及び
低ビットレートで―約9秒、約22秒、約35秒及び約
47秒での大きな(時間)セグメント幅によって反映さ
れる―相対的に長い時間を要する。前述されたように、
目的は、(計算効率を犠牲にして不必要な精度の度合い
を生じさせる)セグメントのこのような縦揺れを回避す
る―言い換えると、高ビットレートでより大きなセグメ
ントを目指すことである。
【0645】図の各セットで「b」と示される図は、そ
れぞれ、暗号記号持続時間(このケースでは6秒)に同
等である「クラッシュ線」8600を示す。前記に注記
されたように、この持続時間を超える書き込み時間は、
(複数のECMがセグメントの書き込み中に到達するこ
とがあるため)概算を失敗させることがある。動的フィ
ルタ(図33から図39の場合)、動的フィルタが収束
する書き込み時間を示す秒水平線がある。
【0646】前述されたように、図32から図35は、
50秒続く正弦波的に変化するビットレートシミュレー
ションに関係する。このケースでは、各暗号期間は6秒
続き、4という機密保護係数が選ばれる。
【0647】静的フィルタ、高速フィルタ及び動的フィ
ルタは、それぞれ100セグメント、33セグメント及
び28セグメントを作成する(一般的には、セグメント
が少ないほど、フィルタはよくなる)。セグメント書き
込み時間は、すべて、クラッシュ線の下にあると観察さ
れ(すなわち、長さで暗号期間未満である)、フィルタ
の動作に観察された不安定性はない。
【0648】このテストでは、ハイブリッドフィルタは
3つの動的フィルタの最良の補正を提供するため、他の
ビットレートシミュレーションの結果はこのフィルタだ
けに集中する。不安定性に対する傾向は、図35bに図
示されるように上昇する前方で減衰する8700、及び
減少する前方で増加した反応性8750によって描かれ
ている、増加と減少の間のヒステリシス現象によって補
正される。
【0649】前述されたように、図36は、50秒続く
階段関数ビットレートシミュレーションに関する。この
ケースでは、各暗号期間は6秒続き、4という機密係数
が選ばれる。ビットストリームのビットレートは25秒
間、毎秒1Mbであり、それから次の25秒間毎秒8M
bとなり、2つの異なる一定のビットレートの間で階段
を作成する。このシミュレーションの目的は、典型的な
最小ビットレートの周辺でのフィルタの動作を調査する
ことである。
【0650】動的フィルタ(高速、慣性及びハイブリッ
ド)は、最小フローで静的フィルタと同じ特性を有す
る。しかしながら、それらは暗号期間/securit
y_coefficientの限界に向かって収束す
る。毎秒8Mbという最大ビットレート限度が決定され
る。
【0651】前述されたように、図37は、50秒続く
三角ビットレートシミュレーションに関係する。このケ
ースでは、各暗号期間は6秒続き、4という機密保護係
数が選ばれる。このシミュレーションの目的は、上昇し
てから減少するビットレートに直面するときのフィルタ
のそれぞれの動作を観察することである。
【0652】ハイブリッドフィルタは、三角ビットレー
ト関数の上昇部分8850での慣性フィルタの上昇した
反応時間を、三角ビットレートの減少部分8900の間
の高速フィルタの強い反応性と結合する。
【0653】前述されたように、図38は、50秒続く
頂冠関数ビットレートシミュレーションに関係する。こ
のケースでは、各暗号期間は6秒続き、4という機密保
護係数が選ばれる。ビットレートは、毎秒2Mbという
基底上の毎秒8Mbという「頂冠」から成り立ってい
る。最大限度が、ハイブリッドフィルタを、毎秒8Mb
での伝送速度平坦部で確定されたビットレートとなるこ
とができるようにする。
【0654】前述されたように、図39は、雑音の要素
も組み込む50秒続く単一ピークビットレートシミュレ
ーションに関する。このケースでは、前述されたよう
に、各暗号速度は6秒続き、4という機密保護係数が選
ばれる。ビットレートは、弱い平均雑音値、毎秒約2M
bを有し、それは、毎秒18Mbで2秒間、非常に局所
化されたビットレートのピークを示す。目的は、ビット
レートを推定するときに変則的なビットレートを補償す
るために、その補正容量を上回る強いビットレートピー
クを減衰するためのハイブリッドフィルタの容量を示す
ことである。
【0655】ハイブリッドフィルタは、その量のデータ
に必要とされるセグメントの数を過小評価することによ
って大きなデータを補償し、このようにしてビットレー
ト概算手順におけるデータピークの影響を減衰する。
【0656】概算の追加の方法 前述されたように、記憶されたビットストリーム中のE
CMの位置を推定する追加の方法が認識される。例え
ば、平均ビットレート、またはビットストリーム中の点
の間に経過した時間などの(例えば、前述されたような
ある特定のセグメントの最後からのオフセットとして推
定値を形成するのとは対照的に)ビットストリームの特
性に依存する推定値を形成する、方法の1つのセットが
実現できる。
【0657】1つのこのような方法が、ここで説明され
るだろう。
【0658】以下の方法は、さらに、前記とは対照的
に、EVT_CAS_ECMが受信されるときに(ただ
し、ECM自体が受信されるときではなく)ファイル書
き込みポインタ(FWP)を確立できると仮定する。
【0659】したがってビットストリーム中のECMの
位置は、4つのステップで推定できる。
【0660】1.ビットストリーム中でのECMの受信
と、対応する制御ワード(「△t」)の到着を信号で知
らせるイベントの間のタイムオフセットに関して、概算
が行われる。
【0661】2.この時間期間中の平均ビットレートが
推定される。
【0662】3.この時間期間に対応するデータの量
「△d」は、△tとビットレートの積として計算され
る。
【0663】4.次に、ビットレートの中でのECMの
位置(「d」)が、前記で発見されたデータオフセット
(「△d」)を差し引いた現在位置(FWP)として計
算される。
【0664】これらのステップは、(△tを推定する)
第1ステップで開始し、さらに詳しく後述されるだろ
う。
【0665】一般的には、制御ワードを平文に直すため
にかかる時間はほぼ一定(およそ数秒)であるため、△
tの値は、本来推定されるよりむしろ仮定される。しか
しながら、可能な場合、少なくとも1つの過去の推定値
の誤差が測定され、将来の推定値を補正するために使用
できる。言うまでもなく△tを推定するために、他の手
段が提供されてよい。
【0666】(平均ビットレートを推定する)第2ステ
ップが、ここでさらに詳しく説明されるだろう。
【0667】簡単にするために、平均ビットレートは、
連続するEVT_CAS_ECMイベント(持続時間の
ほぼ1暗号期間)の間の期間全体に関して、または好ま
しくは、セグメントの長さなどのさらに短い期間に関し
て計算されてよい。それぞれのケースでは、ビットレー
トは、総時間で除算される総データオフセットとして計
算される。
【0668】(データオフセットを計算する)第3ステ
ップが、ここでさらに詳しく説明されるだろう。
【0669】ビットレートと△t推定値の積が△d、E
CMの受信以来経過したデータの推定量を示す。
【0670】△d(Mb)=ビットレート(毎秒Mb)
x △t(秒) (ECMの位置を推定する)第4ステップが、ここでさ
らに詳しく説明されるだろう。
【0671】ECMの受信から推定データオフセットを
知っている場合、ECMの位置dは、カレントファイル
書き込み位置(FWP)から△dを差し引くことによっ
て推定できる。
【0672】d=FWP−△d 言うまでもなく、前述されたように、ビットストリーム
中でのECMの位置を推定する他の方法を実現すること
ができ、言うまでもなく前述された推定する方法は、特
に任意の特定のときに入手できる、異なる情報を考慮に
入れるために、マイナーな変動を受けてよい。
【0673】前述された多様な関数の実現及びハードウ
ェアとソフトウェア間でのそれらの分散に関する正確な
詳細は実施者の選択の問題であり、詳しく説明されない
だろう。しかしながら、受信機/デコーダで必要とされ
る動作を実行できる専用集積回路が市販されている、あ
るいは容易に設計でき、これらがハードウェア加速装置
のための基礎として使用できる、あるいはより好ましく
は、必要とされる多様な動作を実現し、それによりソフ
トウェアを実行するために必要とされる処理能力を削減
するために専用のハードウェア加速装置を作成するため
に改良できることが注記される。ただし、必要とされる
動作は、十分な処理能力が使用できる場合にソフトウェ
アで実現されてよい。
【0674】モジュール及び他の構成要素は、オプショ
ンの好ましい特徴とともに、各構成要素により提供され
る特徴及び機能という点で説明されてきた。与えられる
情報及び提供される仕様により、これらの特徴の実際の
実現及び正確な詳細は実施者に委ねられる。一例に、一
定のモジュールが、好ましくはCプログラミング言語で
作成され、好ましくはアプリケーションを実行するため
に使用されるプロセッサ上で実行するためにコンパイル
されるソフトウェアで実現できるだろう。ただし、いく
つかの構成要素は別のプロセッサ上で実行されてよく、
いくつかのまたはすべての構成要素は専用ハードウェア
により実現されてよい。
【0675】前記のモジュール及び構成要素は単に例証
的であり、発明は多岐に渡る方法で実現されてよく、特
に、いくつかの構成要素は、類似する機能を実行する他
と結合されてよいか、あるいはいくつかは簡略化された
実現では省略されてよい。機能のそれぞれのハードウェ
アとソフトウェアの実現は、構成要素間と単一構成要素
内の両方で自由に混合されてよい。
【0676】ハードウェア、コンピュータソフトウェア
等により実行される機能は、電気信号と類似する信号に
対して、または電気信号と類似する信号を使用して実行
されることは容易に理解されるだろう。ソフトウェア実
現はROMに記憶されてよいか、あるいはFLASH内
でパッチされてよい。
【0677】好ましい実施形態の第3の一般的な態様を
見ると、ビットストリームの転送を制御するためのコマ
ンドセットがここでさらに詳細に説明される。
【0678】コマンドセット 前述されたパーソナルビデオレコーダアプリケーション
(これからは「PVR」と呼ばれる)3154は、ユー
ザが、ハードディスク2100などの大容量記憶装置
に、音声及び/または画像データ(おもに受信機/デコ
ーダに一斉送信された番組)を記録できるようにし、こ
のような音声/画像データをプレイバックすることもで
きるようにするパーソナルビデオレコーダシステム
(「PVR」システム)の一部である。データは、(好
ましい実施形態ではMPEG−2フォーマットの)連続
して並べられたデータとして記憶され、本来、PVR
は、ユーザにこのデータまたは類似するデータにアクセ
スするためのさまざまな方法を与える(実際には、根本
的にはここに後述されるのと同じ原則を使用して、純粋
に音声コンテンツを記録し、プレイバックするための対
応するアプリケーションも提供される)。
【0679】図40に関して、PVRシステムが、ここ
にさらに詳しく説明されるだろう。ハードディスク21
00(または他の大容量記憶装置)は、FIFO及びメ
モリバス(図示されていない)を介してデマルチプレク
サ/デスクランブラ/リマルチプレクサ2100とMP
EGデコーダ2028の両方に接続され、その結果、音
声/画像データは(チューナと復調器―図示されていな
い−によって出力される)ライブ放送信号入力、受信機
/デコーダメモリ(図示されていない)、(接続されて
いるテレビ上での表示のため、図示されていない)MP
EGデコーダ、及びハードディスク2100の間で自由
に送ることができる。
【0680】言及されたハードウェア構成要素は、ソフ
トウェアデバイス(図示されていない)によって、特に
大容量記憶装置3728及び(間接的に)サービスデバ
イス3736によって制御される。同様に、大容量記憶
装置及びサービスデバイスは、2つの記録スレッド38
54、3856、プレイバックスレッド3858、及び
共用ファイリングシステムライブラリ(「FSライブラ
リ」)3852を備える、ハードディスクビデオレコー
ダ(HDVR)モジュール3850によって制御され
る。最後に、PVRアプリケーション3154が、プロ
グラムインタフェース7000を介してHDVRモジュ
ールにコマンドを発光する。
【0681】図40で分かるように、PVRシステム
は、複数の層に分割され、本来コマンドのチェーンの上
部に常駐するPVRアプリケーションが、ファイルポイ
ンタを記録し、管理するためにハードディスク上で空間
を割り当てるなどの低レベルの検討材料をまったく無視
することができる効果がある。さらに詳しく後述される
ように、PVRシステム内のインタフェースの注意深い
設計によって、PVRアプリケーション3154が下に
あるHDVRモジュール3850に送信する指示は、記
憶されている番組での指定位置でプレイバックを開始す
る、及び番組をコマごとに通過するなどの、PVRによ
って実行される一種の自明の動作に密接に対応する。
【0682】PVR3154とHDVRモジュール38
50間のインタフェース7000は、それが、それぞれ
が典型的なユーザ動作に相当する複数の異なるコマンド
を実行する場合には、より単純なアプリケーションを開
発できるようにするが、記録スレッドとプレイバックス
レッド3854、3856、3858の間のインタフェ
ース7002は、対照的に、最小のコマンドセットを実
現し、特に、下にあるFSライブラリの効率を高めるこ
とができるようにするデータ(再生速度を設定するため
のコマンドと、再生位置を設定するためのコマンド)の
再生に2つのコマンドだけを提供する。FSライブラリ
とデバイス間、及びデバイスとハードウェアの間の追加
のインタフェースは、追加レベルの抽象を可能にする。
【0683】(PVルーチンを備える)コマンドの第1
の一番上の層7010、(記録スレッド及びプレイバッ
クスレッド3854、3856、3858内のルーチン
を備える)コマンドの第2のミッドレンジ層、(FSラ
イブラリルーチンを備える)コマンドの第3層701
4、及びオートマタ7016を備えるコマンドの第4の
一番下の層を含む、後述されるだろう4つのレベルのコ
マンド。前述されたように、いう前も無く、コマンドの
追加の層は、これらの4つの層の下、及びおそらく上に
存在するが、これらは前述されたとおりである。
【0684】PVRシステムのプレイバック態様の基礎
となるのは、「現在再生位置」及び「現在再生速度」
(他のところでは、それぞれ単に「現在位置」及び「現
在速度」と呼ばれる)の概念である。これらの2つの値
は、ハードディスク2100上に記憶される番組及び/
または他のデータのプレイバックを制御するために、ハ
ードウェア(ハードディスク、デマルチプレクサ、リマ
ルチプレクサ、MPEG−2デコーダ、及び/またはF
IFOシステム)によって解釈され、さらに詳しく後述
されるように、制御ソフトウェアの多様な部分によって
改変できる。PVRシステムの記録態様という点では、
「現在記録位置」の概念は既知であるが、対照的に、
「現在記録速度」は無意味である。
【0685】HDVRプレイバックスレッド3858に
関係するインタフェースの態様だけがここで検討される
ことが注記されなければならないが、読者は、ここに説
明される一般原則が、記録スレッド3854、385
6、及びそれらのそれぞれのインタフェースにも適用で
きることを理解するだろう。
【0686】図41に関して、概して、PVRアプリケ
ーション3154(「HDVRプレイバックルーチ
ン」)が使用できるHDVRプレイバックスレッド38
58(第2コマンド層7012)内の6つのコマンド
が、図示される。つまり、seek_single_p
lay()7040ルーチン、seek_slow_p
lay()7042ルーチン、seek_normal
_play()7044ルーチン、seek_fast
_play()7046ルーチン、single_pl
ay()7048ルーチン及びpause()7050
ルーチンである。同様に、FSライブラリ3152(第
3コマンド層7014)は、2つのコマンド(「FSラ
イブラリルーチン」)、つまりset_pos()70
30ルーチンとset_speed()7032ルーチ
ンを提供する。PVRアプリケーション3154も図示
されており(第1コマンド層7010)、その構成機能
は後述され、FSライブラリ3852の下には、set
_speed()ルーチンとset_pos()ルーチ
ンが通信する(サービスデバイス及び大容量記憶装置な
どの)多様なデバイスが図示されている。図中の矢印
は、各オブジェクトまたはルーチンによって典型的に行
われる関数呼び出しを示す。
【0687】set_pos()7030ルーチンとs
et_speed()7032ルーチンを備える第3コ
マンド層7014が、最初に説明されるだろう。
【0688】set_pos()ルーチンとset_s
peed()ルーチンは、HDVRプレイバックスレッ
ド3858によって提供される6つのルーチン704
0、7042、7044、7046、7048及び70
50を含む典型的なプレイバック動作の任意の組み合わ
せが、現在の再生速度または現在の再生位置のどちらか
を設定する自明のコマンドのシーケンスまで引き出せる
だろうという発見に続いて提供された。
【0689】set_pos()ルーチンは、ストリー
ム内の再生の現在位置をパラメータとして指定される位
置に設定する。好ましい実施形態においては、パラメー
タは記憶されるストリームの始まりからのセンチセカン
ド単位のタイムオフセットであるが、好ましい実施形態
の変形では、異なる単位が使用される。追加の変形で
は、パラメータは、記憶されるストリームの始まりから
のバイトオフセット(または他の空間オフセット)を指
定する。下記に注記されるように、この後者の変形はよ
り効率的であるが、一定の難事を呈する。
【0690】同様に、set_pos()コマンドは、
関連するバイトオフセットを含むコマンドを、大容量記
憶装置3728などの下位のデバイス(複数の場合があ
る)に送る。多くの種類の符号化されたビデオまたは音
声ストリームにおいて(及び、特にMPEG−2におい
て)の起点からのバイトオフセットが、その起点からの
タイムオフセットに対して一定の線形関係を有さないこ
とを認識することは、この段階では重要である。したが
って、好ましい実施形態においては、タイムオフセット
と空間オフセットの間では変換が内部的に必要とされ
る。これは、タイムオフセットをバイトオフセットにマ
ッピングするテーブルを使用して指定された時間的な解
像度まで達成し、次に所望されるフレームを見つけるた
めにMPEG2データの短い長さを走査、復号すること
によって精緻化することができる。追加変形において
は、set_pos()コマンドのパラメータは、バイ
トオフセットの前述されたテーブルの中への索引であ
る。
【0691】性能の理由から、set_pos()コマ
ンドが呼び出されるたびに、それは指定された位置まで
ジャンプし、次にその位置の後で第1I−フレーム(ま
たは同等な独立した――依存とは対照的な――MPEG
以外のフォーマットのフレーム)を見つけ、表示するた
めに前方に走査する。I−フレームは一般的には0.5
秒ごとに発生するため、この動作は、(後述される)い
くつかのアプリケーションではわずかな「ぎくしゃく」
を生じさせる。しかしながら、好ましい実施形態の変形
においては、set_pos()コマンドは、MPEG
デコーダに、それが過去のI−フレームを見つけるまで
後方に走査させてから、再び(補間されたフレームなど
のI−ではないフレームである場合がある)所望される
位置まで前方に走査させる。より低速であるが、この後
者の動作は、(デコーダが十分に進められている場合に
は)一般的により円滑なプレイバックを生じさせる。
【0692】set_speed()ルーチンは、スト
リームが処理される速度を、パラメータとして指定され
る速度に設定する。再び、バイトオフセットと時間の間
の非線形関係を念頭に入れると、速度は通常のプレイバ
ック速度の倍数として指定される(つまり、1を超える
パラメータは、早送りに同等であり、1未満のパラメー
タはスロープレイに同等である)。0というパラメータ
を渡すと、再生を休止する効果があり、負のパラメータ
はストリームを巻き戻すことに同等である。好ましい実
施形態の変形においては、パラメータは、1秒あたりの
コマ数(例えば、通常のプレイバックの場合30)、ま
たはコマ間の秒(例えば、通常のプレイバックの場合、
1秒あたりのコマ数の逆数、1/30)などの異なる単
位で指定される。一定のビットレートのビデオソースの
場合、あるいはビットレートの変動が無視することがで
きる指定された目的のためである状況(例えば、早送り
または巻き戻しの高速で)では、速度もビットレートと
いう点で指定されてよい。
【0693】(例えば、MPEG2などの)視聴覚及び
/または他の種類のデータに使用されるいくつかの符号
化方法の性質は、それが、指定された点から開始し、一
方向で信号を通って前進することによる以外読み取るこ
とができず、そのためビデオ信号中の時間の点は復号が
進行するにつれて進むほどである。言い換えると、それ
は逆方向に復号できない。これは、特に、トランスポー
トパケットの集合体の形でMPEG2フォーマットで符
号化されるビデオ番組に当てはまる。これは、転送速度
とは無関係である。データを時間逆転方法で再生するた
めには、複数の短い読み取り動作が、ストリーム中の連
続して先行する点で実行され、毎回信号フレームを入手
してから信号フレームを出力し、時間が逆転したビデオ
信号の印象を与える。
【0694】オートマタ コマンドの第4層は、ナビゲーション関数及びナビゲー
ション状態間の遷移を確証するオートマトンを実現す
る。
【0695】好ましい実施形態において第4層7016
によって実現されるオートマトンは、テーブルに図示さ
れるようなナビゲーション関数のリンクを確証する。
【0696】オートマトンのための動作
【0697】
【表1】 オートマトンの状態 テーブル中で使用される文字aとbは、再生、遅送りま
たは巻き戻し、あるいは早送りまあは巻き戻しのいずれ
かの速度を表す。
【0698】左側の欄の記号はコマンド受信時のオート
マトンの状態を表し、上の行の記号はオートマトンに送
信されたコマンドを表し、テーブル内の項目は、コマン
ド実行後のオートマトンの対応する状態を表す。
【0699】したがって、例えば、初期のオートマトン
状態が速度aでの早送りであり、章を前方へジャンプの
コマンドが受信される場合、システムは、新しい章を通
って早送りし続けるよりむしろ、1章前方へジャンプし
てから、通常の速度で再生するだろう。
【0700】第4コマンド層は、第3コマンド層からs
et_positionコマンドとset_speed
コマンドを受信し、システムの現在の状態を考慮し、コ
マンドが許容された状態への遷移を生じさせることを確
証する。コマンドが許容された状態への遷移を生じさせ
ると、コマンドは実行のために渡される。
【0701】第4コマンド層によって受信されるコマン
ドが、オートマトンによって許容されない状態への遷移
を生じさせる場合には、最も簡略なケースでは、第4コ
マンド層がコマンドを無視させるだろう。
【0702】しかしながら、好ましい実施形態において
は、及び一定のコマンド及びシステムの状態の場合、第
4コマンド層により受信されるコマンドが、コマンドを
無視させるよりむしろ、オートマトンにより許容されな
い状態への遷移を生じさせる場合には、第4コマンド層
がset_positionコマンドまたはset_s
peedコマンドのどちらかを改変してから、この新し
いコマンドが有効な状態への遷移を生じさせるかどうか
をチェックする。生じさせる場合、新しいコマンドが実
行のために渡され、生じさせない場合には、コマンドは
再び改変される。コマンドの修正が後に続く、コマンド
を確証しようとするこの再帰的な試みは、有効な状態へ
の遷移を生じさせるだろうコマンドが生成されるまで進
行する。
【0703】したがって、例えば、特定の実施形態にお
いては、早送り動作中にファイル内の新しい位置にジャ
ンプすることは許されていない。
【0704】当初、早送り動作中、システムの状態は、
現在のset_position、X、及びset_s
peed、Vコマンドの状態を記録し、これらの状態が
変更したのか(フラグ値=1)あるいは同じままなのか
(フラグ値=0)の通知を出す、以下のテーブルにより
表されてよい。
【0705】
【表2】 新しい位置にジャンプするコマンドを受信すると、テー
ブルは変更する。
【0706】
【表3】 第4コマンド層は、この遷移が許されるかどうかをチェ
ックし、次にこのケースでは遷移は許されていないた
め、有効な遷移が発見されるまで、set_speed
状態を改変させる。
【0707】
【表4】 フラグは、前記テーブルに示されるようにゼロにリセッ
トされ、コマンドは実行され、システムは新しい位置か
ら通常の速度でコンテンツを最後まで再生する。
【0708】好ましい実施形態においては、第4コマン
ド層は親制御及び条件付きアクセス機構にリンクされ
る。状態は、部分的に、親制御または条件付きアクセス
パラメータに応じてオートマトンによって許可または禁
止される。
【0709】したがって、例えば、それは、広告を含む
ファイル内の特定の章を通って早送りする、または巻き
戻す、あるいはユーザがこのようなコンテンツを視聴す
る許可を有さない場合には、アダルトコンテンツを含む
特定の章にジャンプすることは許されていない。
【0710】第4コマンド層が親制御機構にリンクされ
る実施形態の動作の一例が後述される。
【0711】システムの状態は、再び、現在のset_
position、X、及びset_speed、Vコ
マンドの状態を記録し、これらの状態が変化した(フラ
グ値=1)のか、あるいは同じままであるのか(フラグ
値=0)を通知するテーブルによって表される。
【0712】
【表5】 それから、set_posコマンドが受信される。
【0713】
【表6】 このコマンドは、ユーザが視聴する許可を有していない
章への位置のジャンプに相当する。したがって、第4コ
マンド層は、set_positionを修正させ、こ
れらのコマンドにより表される遷移が許されるかどうか
をチェックする。
【0714】
【表7】 コマンドは、再びユーザが視聴する許可を有していない
後の章までの位置のジャンプに相当する。したがって、
第1コマンド層は、set_positionを再び修
正させ、これらのコマンドにより表される遷移が許され
るかどうかを再チェックする。このケースでは、遷移は
許され、フラグがゼロにリセットされ、コマンドは実行
のために渡され、システムは最初に要求された章より後
の章からコンテンツを再生する。
【0715】
【表8】 コマンドの第2層7012の説明を始める前に、(最上
コマンド層7100内の)PVRアプリケーションの機
能性を具体化する高レベルPVRルーチンが、ここで簡
略に説明されるだろう。明快さのため、低レベルルーチ
ンとの混同を回避するために、PVR内の各ルーチン
(「PVR」ルーチン)には、典型的には従来のビデオ
レコーダに関して遭遇するものに密接に関係する記号が
指定され、記号はテーブルの中に下記に一覧表示され
る。
【0716】
【表9】 一般的には、前記PVRアプリケーション機能のそれぞ
れは、ユーザがリモートコントローラの単一のボタンを
押す、あるいは画面上のメニューで単一オプションを選
択することによって呼び出される。このようにして、そ
れらは、((前述されたset_speed()コマン
ドとset_pos()コマンドなどのソフトウェアの
観点から自明のコマンドとは別個の)ユーザの観点から
自明のコマンドに対応する。言うまでもなく、前記に一
覧表示された機能の追加機能または代替機能を認識する
ことができる。特に、前記は例えばミュージックトラッ
クなどに対応する索引付きの音声プレーヤとして使用す
るために適応できるだろう。
【0717】依然として図41を参照すると、第2コマ
ンド層7012内のHDVRプレイバックスレッド38
58によって提供される6つのコマンドが、ここで説明
されるだろう。
【0718】前述されたように、HDVRスレッド38
58内の6つのコマンドは、4つの「seek_pla
y」動作、つまりseek_single_pla
y()7010、seek_slow_play()7
012、seek_normal_play()701
4、及びseek_fast_play()7016を
備える。これらの基本的な動作に加えて、2つの他の初
歩的な動作、つまりsingle_play()701
8とpause()7020がある。これらの動作はと
もに前述されたset_pos()7030ルーチンと
set_speed()7032ルーチンの機能性を、
PVRアプリケーション3154及び類似するアプリケ
ーションにとってさらに有効であるさらに高いレベルの
ルーチンに要約する。これらのルーチンは、ここで、さ
らに詳細に説明されるだろう。
【0719】シーク−プレイ動作のそれぞれは、データ
ストリーム中の現在の読み取りポインタの位置を設定し
てから、所望される効果を達成するために、set_p
os7030ルーチンとset_speed7032ル
ーチンの両方を利用するプロセスで、複数のモードの1
つでそのポインタから前方にストリームを再生し続け
る。好ましい実施形態においては、6つのルーチンのパ
ラメータは、下にあるset_pos()ルーチンとs
et_speedルーチンのパラメータに同等である
(すなわち、それぞれセンチセカンドタイムオフセット
と通常の再生速度の倍数)。しかしながら、好ましい実
施形態の変形においては、(例えば、それぞれバイトオ
フセット及びフレーム間遅延などの)さまざまなパラメ
ータが、6つのルーチン7010、7012、701
4、7016、7018、7020について指定されて
よく、パラメータの必要な変換は、set_pos()
ルーチン及び/またはset_speed()ルーチン
が呼び出される前に、ルーチン内で行われる。
【0720】これらのルーチンのそれぞれの動作が、こ
こで説明されるだろう。
【0721】・seek_single_play()
は、現在の再生オフセットを、ルーチンのパラメータと
して指定されるオフセットに設定してから、プレイバッ
クが休止されたままである間に、そのオフセットから
(またはそのオフセットに可能な限り近くの)単一フレ
ームを再生する。それは、プレイバックが休止された
(休止)ときに、ストリーム内の1(前の索引、次の索
引、前の章、次の章)を改変するPVRルーチンによっ
て使用される。
【0722】・seek_normal_play()
は、現在の再生オフセットを、ルーチンのパラメータと
して指定されるオフセットに設定してから、その点から
前方にデータスsトリームのコンテンツを再生し、通常
の速度でストリームを通って進む。それは、ストリーム
内の位置(前の索引、次の索引、前の章、次の章)を改
変するPVRルーチンによる(PVR再生ルーチン[再
生]によって活性化されるような)通常のプレイバック
の間に使用される。
【0723】・seek_fast_play()は、
現在の再生オフセットを、ルーチンのパラメータとして
指定されるオフセットに設定してから、その点から前方
にデータストリームのコンテンツを再生し、通常の速度
より速くストリームを通って進む。それは、ストリーム
内の位置(前の索引、次の索引、前の章、次の章)を改
変するPVRルーチンによる早送り再生(早送り)の間
に使用される。
【0724】・seek_slow_play()は、
現在の再生オフセットをルーチンのパラメータとして指
定されるオフセットに設定してから、その点から前方に
データストリームのコンテンツを再生し、通常の速度よ
り遅くストリームを通って進む。それは、ストリーム内
の位置(前の索引、次の索引、前の章、次の章)を改変
するPVRルーチンによる遅送り再生の間に使用され
る。
【0725】・single_play()は、ルーチ
ン休止(休止)がすでに呼び出されているときに、スト
リーム内でコマごとに前進するルーチンによって使用さ
れる。それは、後述されるようにいくつかの引き出され
たルーチンでも使用される。
【0726】・pause()は、PVR休止ルーチン
(休止)によって使用される。それは、ストリームを現
在のフレームで中断させる。HDVRモジュールは、そ
れ自体、直接的にディスプレイ装置を制御しないのでこ
のようなstop()ルーチンはない。サービスデバイ
ス3736、ビデオデバイス3734、及びFIFOデ
バイス3744などのHDVRモジュールの外部の機構
は、前記に詳しく説明されたように、ビデオ出力を実際
に制御するために使用される。
【0727】好ましい実施形態の変形においては、se
ek_fast_play()ルーチン、seek_s
low_play()ルーチン、及びseek_nor
mal_play()ルーチンの少なくとも2つが、オ
フセットと速度の両方をパラメータとして取る単一のs
eek_play()ルーチンによって置換される。こ
れらのパラメータの考えられる置換は、set_pos
()ルーチンとset_speed()ルーチンに関し
て前述されるとおりである。
【0728】好ましい実施形態においては、前記に注記
されたように、異なるHDVRプレイバックルーチン
が、現在のプレイバック状態(休止、通常、遅送りまた
は早送り)に応じTPVRルーチンによって呼び出され
る。これは、有利なことに、HDVRプレイバックルー
チンを簡略化できるようにし、その結果、それらは(休
止または再生、早送り、巻き戻し、遅送り等の)プレイ
バックの1つのモードと対処しさえすればよい。しかし
ながら、好ましい実施形態の変形においては、HDVR
プレイバックルーチンは、任意の再生モードで動作でき
る。
【0729】同時に、下にあるset_pos()ルー
チンとst_speed()ルーチンは、PVRルーチ
ンと同様に、再生モードとは無関係である。HDVRプ
レイバックルーチンとは対照的に、FSライブラリは構
造でより簡略であるが、プレイバックモードのすべての
偶然性と対処するために、潜在的にさらに複雑なコード
化を必要とする。
【0730】導関数 幅広い範囲の導関数を、前述されたコマンドの3つの層
7010、7012、7014の任意の組み合わせを使
用して実現できる。以下は、このような関数の例を表
す。これらの例では、前述された現在の再生位置は、
「cur_pos」と呼ばれる。
【0731】前述されたように、真に時間が逆転された
方向でデータストリームを通って再生することは、通
常、MPEG−2データに対しては可能ではなく、そう
でなければせいぜい困難である。したがって、前述され
たように、時間が逆転された再生は、データストリーム
を通って逆方向にジャンプし、ジャンプするたびに、単
一のフレームを得るためにデータストリームの短いセグ
メントを復号し、それぞれのこのようなフレームを表示
することによってエミュレートされる。
【0732】ストリーム中の(「巻き戻し」方向での)
逆方向への移動を含むすべてのこのような動作は、標準
再生動作から引き出される。これらの動作の説明は、デ
ータストリームが水平線で表され、それぞれの垂直矢印
がストリーム中の特定の点の再生を表す図42から図4
7に描かれている。通常の再生中、ストリームは図の左
から右の方向で再生される。
【0733】さらに、以下から分かるように、「see
k_play」ルーチンを使用する多くのルーチンを、
代わりにsingle_play()ルーチンだけから
引き出すことができる。
【0734】前方方向での高速再現早送り この動作は、以下のシーケンスで具体化されてよい。
【0735】pause() seek_fast_play(cur_pos) 図42は、(図示されるように、定期的なI−フレーム
を備える)MPEGデータに対するseek_fast
_play()ルーチンの動作を描く。分かるように、
音声/画像データは、(例えば、通常のプレイバック速
度の8倍から12倍の間の最大に復号ハードウェアによ
って制限される)高い速度で前方に走査され、画像はリ
フレッシュ速度で定期的に表示される。表示されるフォ
ーマットは、MPEGデコーダが画像リフレッシュのた
めにその時点でどこに到達したのかに応じて、I−フレ
ームと非I−フレームの混合体である。
【0736】前記に注記されたように、seek_si
ngle_play()関数と関係する関数のさらにコ
ンパクトな実施形態の1つは、タイムオフセットの代わ
りに、音声/画像ファイル内の実際のデータオフセット
のパラメータを取る。
【0737】非常に速い前進が必要とされるケースで
は、及びMPEG−2デコーダがこうすることができる
すべての追加のケースでは、seek_single_
play()ルーチンの前述されたデータオフセットバ
ージョンを使用して早送り関数を達成するために、短い
ルーチンが構築できる。この短いルーチンは、図43に
関して以下に示される。
【0738】pause() play_time中のループ cur_pos+constant_data_off
set seek_single_play(cur_pos)
//音声/画像ファイル内のcur_posデータオフ
セットでのフレームを表示 pause_time中に休止 // 次のリフレッ
シュを待機 EndLoop この方法は、ストリーム内で間隔をあけて置かれる前方
ジャンプの技法を使用する。play_timeの値
は、コマンド早送りがアクティブなままとなる持続時間
に相当する。値pause_timeを調整し、ビデオ
表示を修正することも可能である。
【0739】ジャンプごとのオフセット(前記コード内
の「オフセット」)は、音声/画像データの平均ビット
レートの倍数として計算することができ、その結果、例
えば、平均ビットレートの3倍のオフセットは、通常の
再生速度の約3倍の再現速度を生じさせるだろう。しか
しながら、図43から分かるように、音声/画像データ
のビットレートは、典型的には、時間に関して(確かに
MPEデータに対して)一定ではないため、一定のデー
タ増分は、フレームの一様ではないプレイバックを生じ
させる。
【0740】それにも関わらず、この後者の方法を使用
して、早送りするのにかかる時間は、再現速度に関係な
くほぼ一定であり、その結果再現速度は、(通常の再生
速度の128倍など)任意に高くすることができ、それ
以外に場合、早送り動作中に容易に変えることができ
る。また、すべてのデータを走査する必要があるわけで
はないため、この例のデータを通して走査するにはより
少ない時間が費やされることも観察できる。
【0741】最後に類似するが、seek_singl
e_play()ルーチンの「タイムオフセット」バー
ジョンを使用して、さらに高度な早送り動作を達成でき
(それにより、現在の再現位置は音声/画像データの中
にタイムオフセットとして指定され)る。
【0742】pause() play_time中のループ cur_pos+constant_data_off
set seek_single_play(cur−pos) pause_time中のループ EndLoop このコードの動作は、図44に描かれている。この例で
は、constant_time_offset(及
び、タイムオフセットをデータオフセットにマッピング
する、及び逆もまた同様の前述されたテーブルの粒度)
は、I−フレーム間の期間の倍数となるように選ばれ
る。復号するのに要する時間がより一様であり、表示さ
れるフレームが時間という点で等しく間隔をあけて置か
れ、より円滑な早送り動作を生じさせることが分かる。
set_pos()ルーチンに対する、それが、I−以
外のフレームを復号できるように前述されていたI−フ
レーム以外のフレームにジャンプできるようにするため
の(前述された)修正を用いて、事実上、I−フレーム
期間の倍数以外の早送り速度を使用できる。
【0743】タイムオフセットフィールドとデータオフ
セットフィールドの両方を含む索引表(「index_
table」)を使用して、タイムオフセット(「ti
me_offset」)と適切なデータオフセット
(「data_offset」)の変換を実行するため
に必要とされる擬似コードの例は、以下のとおりであ
る。
【0744】索引=0 (index_table[index]time_o
ffset<time_offset) { 索引++ } data_offset=index_table[i
ndex]data_offset 言うまでもなく、前記コードは、ここに詳説される適切
なルーチンのどれかで実現できる。索引表を使用するよ
うに適応される前記の早送りルーチンのわずかな変形
は、以下のとおりである。
【0745】pause()cur_indexGet
CurIndex(cur_pos)//前記に詳説さ
れた方法を使用して現在の索引を見つける play_time中のループ cur_pos=index_table[cur_i
ndex]data_offset seek_single_play(cur_pos) cur_index+=n//nというさらに高い値
が、さらに高速な有効再現速度を示す。
【0746】pause_time中の休止 EndLoop 逆方向での高速再現早巻き戻し (タイムではなく)データオフセットを使用する基本
(且つ高速)巻き戻し関数は、(早送りについて前記の
類似する例に基づき、図45に描かれている)以下のと
おりである。
【0747】pause() play_time中のループ cur_pos−=constant_data_of
fset seek_single_play(cur_pos)
//データオフセットをパラメータとして使用するse
ek_single_playルーチンのバージョン pause_time中の休止 EndLoop 前記のように、再現されたビデオの速度は、(パラメー
タpause_timeを変えることで)遅延の持続時
間を調整し、パラメータconstant_data_
offsetを調整することでストリーム内の変位を変
えることによって制御することができる。
【0748】再び、フレーム間の距離は一定ではなく、
逆方向に一様にではなく進行することが分かる。この例
及び以下の例では、逆方向へのジャンプが、少なくとも
1つのI−フレームに及ぶほど十分に大きくなるように
注意を払わなければならない(それ以外の場合、同じI
−フレームを無限に表示するループに入るだろう)。
【0749】データオフセットよりむしろタイムオフセ
ットを使用する、さらに高度なバージョンは、図46に
図示されている。これは、以下のように行われてよく、
図45に描かれている。
【0750】pause() play_time中のループ cur_pos−=constant_time_of
fset seek_single_play(cur_pos)
//タイムオフセットを使用するseek_singl
e_play()ルーチンのバージョン pause_time中の休止 EndLoop 前記のように、例えば、通常の再生速度の1倍から12
8倍の範囲内の再現速度の変動を可能にすることが適切
であってよい。
【0751】前方方向での低速再現> 図47に描かれるように、この機能は、以下のコードに
いよって具体化できる。
【0752】pause() seek_slow_play(cur_pos) 図47に図示されるように、seek_slow_pl
ay()コマンドの効果は、(プレイバック速度に応じ
て、複数の画面リフレッシュ速度については、それらの
一定またはすべてを表示することを除き)通常より低速
で音声/画像データを通って走査し、通常通りにフレー
ムのすべてを表示することである。
【0753】single_play()コマンドを使
用する遅送りコマンドの代替実施形態は、図48に関し
て以下のとおりである。
【0754】休止 play_time中のループ single_play() pause during pause_time EndLoop 前記に注記されたように、(seek_single_
play()ルーチンと対照的に)single_pl
ay()ルーチンは、(非Iフレームを含む)1フレー
ムごとに音声/画像ストリームを前進させる。ルーチン
は、再現の速度(または、さらに一般的には、他のとこ
ろに記述されるように、転送速度)がpause_ti
me変数を改変することにより、容易にカスタマイズで
きるという点で、前記に示されたseek_slow_
play()変形とは異なる。
【0755】seek_single_play()コ
マンドを使用するが、遅送り能力を達成するための追加
ルーチンは以下のとおりである。
【0756】休止 play_time中のループ cur_pos−constant_time_off
set seek_single_play(cur_pos) pause_time中の休止 EndLoop このコードは、pause_timeとconstan
t_time_offsetが、通常のプレイバック速
度より遅い速度での早送りを達成するために選ばれる点
を除き、早送りするために使用されるルーチンの1つと
同じである。このルーチンは、sek_single_
play()ルーチンが、I−フレームだけではなく、
非I−フレームにもジャンプするように適応され(例え
ば、0.5秒から1/30秒などの通常のリフレッシュ
速度に時間粒度を削減す)るときにさらに有効である。
【0757】逆方向での低速再現< 低速再現を達成するためには、巻き戻し関数(早巻き戻
し)のようであるが、(負の)再現速度が通常のプレイ
バック速度のおおきさより小さくなるように選ばれるp
ause_timeとcurrent_time_of
fsetの値を用いる。典型的なコード断片は以下のと
おりである。
【0758】pause() play_time中のループ cur_pos−=current_time_off
set seek_single_play(cur_pos) pause_time中の休止 EndLoop 再び、current_time_offsetパラメ
ータとpause_timeパラメータは変えられてよ
く、I−フレームだけではなく、非I−フレームにもジ
ャンプできるseek_single_play()ル
ーチンのアージョンでさらに優れた結果が達成されるだ
ろう。
【0759】複合関数 コマンドの3つの層7010、7012、7014(及
びさらに特定すると低い方の層7012、7104)
は、任意の複雑性の関数を実行する追加コマンドを構築
するために使用できる。以下の例は、前述されたコマン
ド層(「基本コマンド」)の力を描く。
【0760】例1:アクションのシーケンス:再生、次
の章、休止、休止、遅送り、再生 基本関数を考慮して表され、この関数は以下のシーケン
スによって実現できる。
【0761】 seek_normal_play(cur_pos) cur_pos=chapter_table[nex
t_chapter]time_offset seek_normal_play(cur_pos) pause() single_play(cur_pos) seek_slow_play(cur_pos) seek_normal_play(cur_pos) 例2:アクションのシーケンス:再生、早送り、休止、
再生、前の章 基本関数を考慮して表され、この関数は以下のシーケン
スによって実現できる。
【0762】 seek_normal_play(cur_pos) cur_pos=user_table[next_u
ser_index]time_offset seek_normal_play(cur_pos) pause() seek_normal_play(cur_pos) cur_pos=chapter_table[pre
vious_chapter]time_offset seek_normal_play(cur_pos) 例3:アクションのシーケンス:再生、次の章、再生、
早巻き戻し、遅送り、休止 基本関数を考慮して表され、この関数は以下のシーケン
スによって実現できる。
【0763】 seek_normal_play(cur_pos) cur_pos=chapter_table[nex
t_chapter]time_offset seek_normal_play(cur_pos) pause() Loop during play_time cur_pos−=current_time_off
set seek_single_play_(cur_po
s) pause during pause_time EndLoop seek_slow_play(cur_pos) pause() 前記から認められるように、コマンドセットの3つの層
7010、7012、7014のそれぞれは高い方及び
低い方のソフトウェア層に柔軟であるが簡略なインタフ
ェースを提供し、さらに高いレベルの機能性を提供する
ために他のルーチンの中に容易に組み込むことができ
る。
【0764】前述されたシステムは、再現よりむしろ記
録プロセスなどの一般的な変換を制御するように適応す
ることもできる。したがって、記録の例については、s
et_pos()ッコマンドは、記録が起こる位置を設
定し、set_speed()コマンドは(いくつかの
実施形態では、例えば、さらに低いフレーム速度または
通常はさらに低い品質での記録を可能とするために、通
常以外の記録速度に設定できる)記録速度を設定する。
さらに、記録及び再現プロセスは、タイムシフト機能性
を提供するために結合できる。
【0765】特定の実施形態の一定の態様の簡略な要約
がここに示される。
【0766】データストリームまたはビットストリーム
は、記録されなければならない伝送の一部を表してよ
い。該データストリームまたはビットストリームは、複
数のECMを含む。ECMは、それが汎用活用キーKG
に同等物を使用して平文に直され、制御ワード(CW)
が抽出される暗号解読段階に渡される。制御ワードは、
制御ワードがローカル活用キー(KL)を使用して暗号
化される暗号化段階に渡される。結果として生じる制御
管理メッセージ(CMM)は、次にヘッダ内、つまりフ
ァイルの管理データ部分での記憶のために大容量記憶装
置に渡される。ビットストリームも大容量記憶装置に渡
され、ファイルのコンテンツ部分に記憶される。ヘッダ
は、データストリームまたはビットストリーム中のタイ
ムオフセットを、ファイル内のデータオフセットにマッ
ピングする索引を備える索引表も含む。好ましい実施形
態の追加変形においては、データストリームまたはビッ
トストリーム、及び複数の生成されたCMMは、別々の
ファイルに記憶される。
【0767】さらに、事前に記録された大容量記憶装置
フォーマットが認識され、それによりコンテンツは、デ
バイスの相対的に安価な読取専用部分に記憶され、制御
情報は相対的に高価な読み取り/書き込み部分に記憶さ
れるだろう―制御情報の更新性は、動的CMMを使用す
る他のところに記述される好ましい実施形態の変形のた
めに必要とされる。
【0768】代替実施形態がここで説明される。
【0769】再び、データストリームまたはビットスト
リームは、記録されなければならない伝送の一部を表し
てよい。該データストリームまたはビットストリーム
は、複数のECMを含む。ECMは、それが、汎用活用
キーKGの同等物を使用して平文に直され、制御ワード
(CW)が抽出される暗号解読段階に渡される。制御ワ
ードは、制御ワード、使用規則データ(URM)、及び
アクセス権(CMP_EMM)――後者はオプションで
ある――が、ローカル活用キー(KL)を使用して暗号
化される暗号化段階に渡される。結果として生じる制御
管理メッセージ(CMM)は、次にファイルのヘッダ、
つまり管理データ部分に記憶するために大容量記憶装置
に渡される。データストリームまたはビットストリーム
も、大容量記憶装置に渡され、ファイルのコンテンツ部
分に記憶される。ヘッダは、データストリームまたはビ
ットストリーム中のタイムオフセットを、ファイル内の
データオフセットにマッピングする索引を備える索引表
も含む。好ましい実施形態の追加変形においては、CM
M及びデータストリームまたはビットストリームは、別
々のファイルに記憶される。
【0770】番組を記録するときに続けられる手順及び
CMPS/HDVRインタフェースに関して生じる問題
点が、ここで説明されるだろう。
【0771】番組を記録するとき、HDVRは、構造が
おもに2つの部分、つまり管理データ(例えば、hdv
r_file.management_data)及び
コンテンツ自体(例えば、hdvr_file.con
tent_data)であるファイルを作成する。
【0772】ファイルの第1部分は、関連付けられる解
読キー(言い換えれば制御キー)だけではなく、コンテ
ンツの使用規則も含むCMPSによって生成、処理され
る(とりわけ)ローカルメッセージ(コンテンツ管理メ
ッセージ――CMM)に相当する。第1部分は、ビット
ストリーム中のタイムオフセットをファイル内のデータ
オフセットにマッピングする索引を備える索引表も備え
る。
【0773】第2部分は、指定された番組(ビデオ、音
声、字幕等)の多様な構成要素に対応する部分トランス
ポートストリーム(pTS)から構成され、共通のスク
ランブルフォーマットDVB_CSで、放送として、ス
クランブルされたままである。好ましい実施形態の変形
においては、管理データ及びコンhdvr_file.
management_data部分も、ビットストリ
ーム中のタイムオフセットを、ファイル内のデータオフ
セットにマッピングする索引を備える索引表を備える。
HDVRによって自動的に挿入されるHDVR索引、及
びユーザの命令時に挿入されるユーザ索引の2種類の索
引が、索引表に含まれる。
【0774】HDVR索引は、ビットストリーム中の定
期的なタイムオフセットに対応する間隔でHDVRによ
って配置され、記録されたファイル内のプレイエントリ
点として使用される。好ましい実施形態においては、H
DVR索引は、番組の記録中自動的にHDVRによって
作成される。
【0775】ユーザサックインもプレイエントリ点であ
り、番組の記録の時点で、あるいは記録された番組のプ
レイバック中にユーザによって設定される。
【0776】索引表は、適切なCMMに書くHDVR索
引及びユーザ索引をマッピングするポインタも備え、記
憶されたビットストリームの、HDVR索引及びユーザ
索引によって索引付けられる点での暗号解読を可能にす
る。
【0777】例えば、ファイル内の点、または対応する
ビットストリームを探索する記録されるコンテンツの処
理、及び早送り、巻き戻し、及び読み飛ばしなどの「ト
リックモード」動作は、索引表に記憶されるHDVR索
引及びユーザ索引を利用する。
【0778】前述された多様な関数の実現、及びハード
ウェアとソフトウェア間でのそれらの分散の詳細な説明
は、実施者の選択の問題であり、詳しく説明されないだ
ろう。しかしながら、受信機/デコーダで必要とされる
動作を実行できる専用集積回路が市販されている、ある
いは容易に設計でき、これらがハードウェア加速装置の
ための基礎として使用できる、あるいはより好ましく
は、必要とされる多様な動作を実現し、それによりソフ
トウェアを実行するために必要とされる処理能力を削減
するために専用のハードウェア加速装置を作成するため
に改良できることが注記される。ただし、必要とされる
動作は、十分な処理能力が使用できる場合にソフトウェ
アで実現されてよい。
【0779】モジュール及び他の構成要素は、オプショ
ンの好ましい特徴とともに、各構成要素により提供され
る特徴及び機能という点で説明されてきた。与えられる
情報及び提供される仕様により、これらの特徴の実際の
実現及び正確な詳細は実施者に委ねられる。一例に、一
定のモジュールが、好ましくはCプログラミング言語で
作成され、好ましくはアプリケーションを実行するため
に使用されるプロセッサ上で実行するためにコンパイル
されるソフトウェアで実現できるだろう。ただし、いく
つかの構成要素は別のプロセッサ上で実行されてよく、
いくつかのまたはすべての構成要素は専用ハードウェア
により実現されてよい。
【0780】前記のモジュール及び構成要素は単に例証
的であり、発明は多岐に渡る方法で実現されてよく、特
に、いくつかの構成要素は、類似する機能を実行する他
と結合されてよいか、あるいはいくつかは簡略化された
実現では省略されてよい。機能のそれぞれのハードウェ
アとソフトウェアの実現は、構成要素間と単一構成要素
内の両方で自由に混合されてよい。
【0781】ハードウェア、コンピュータソフトウェア
等により実行される機能は、電気信号と類似する信号に
対して、または電気信号と類似する信号を使用して実行
されることは容易に理解されるだろう。ソフトウェア実
現はROMに記憶されてよいか、あるいはFLASH内
でパッチされてよい。
【0782】本発明が、純粋に例証として説明されてき
たこと、及び詳細の修正を本発明の範囲内で行うことが
できることが理解されるだろう。
【0783】説明、及び(該当する場合には)請求項及
び図面中に開示されるそれぞれの特徴は、独立して、あ
るいは任意の適切な組み合わせで提供されてよい。
【0784】請求項に出現する参照番号は、例証として
のみであり、請求項の範囲に対する制限的な影響を有さ
ないものとする。
【0785】
【発明の効果】したがって、ビットストリームの表現を
含むファイル内のそれぞれのデータオフセットを、ビッ
トストリーム中の対応するタイムオフセットにマッピン
グする少なくとも1つのレコードを備えるテーブルが提
供される。
【図面の簡単な説明】
【図1】図1は衛星デジタルテレビシステムの概観であ
る。
【図2】図2はケーブルデジタルテレビシステムの概観
である。
【図3】図3はハイエンドがさらに詳細に図示されてい
る、全体的なシステム図である。
【図4】図4は受信機/デコーダの構成要素アーキテク
チャの概略図である。
【図5】図5は受信機/デコーダのソフトウェアアーキ
テクチャの図である。
【図6】図6は図5の上半分をさらに詳細に図示する図
である。
【図7】図7は図5の下半分をさらに詳細に図示する図
である。
【図8】図8は図5の下半分の代替実施形態を示す図で
ある。
【図9】図9はコンテンツ管理保護システムの概観であ
る。
【図10】図10はコンテンツ管理保護システムの代替
装置である。
【図11】図11はコンテンツ管理保護システムのソフ
トウェアアーキテクチャの説明図である。
【図12】図12は大容量記憶装置に対する暗号化され
たコンテンツの記録の説明図である。
【図13】図13は大容量記憶装置からの暗号化された
コンテンツのプレイバックの説明図である。
【図14】図14は可変ビット・レートビットストリー
ムのビットレート対時間のグラフである。
【図15】図15は時間の関数としてのMPEG−2ビ
ットストリームの概略説明図である。
【図16】図16は可変ビット・レートビットストリー
ムの表現を含むファイルの、対応するビットストリーム
タイムオフセットとともに、データオフセットの表現で
ある。
【図17】図17はビットストリーム内の点と、該ビッ
トストリームの表現を備えるファイル内の点の間の対応
を示す概略図である。
【図18】図18はHDVRサックインを使用するファ
イル内の点の探索を描く概略図である。
【図19】図19はビットストリーム内の周期的に間隔
をあけて配置される点の間での読みとばしを備える早送
り動作を描く概略図である。
【図20】図20はビットストリーム中の周期的に間隔
をあけて配置される点の間の読み飛ばし、及びこれらの
周期的に間隔をあけて配置される点に最も近い続くキー
フレームの位置を突き止めることを備える、早送り動作
を描く概略図である。
【図21】図21は選択された値を超えるビットストリ
ームの部分を示す、可変ビット・レートビットストリー
ムのビットレート対時間のグラフである。
【図22】図22は録画時のHDVR索引点の補間の説
明図である。
【図23】図23はHDVR索引情報と挿入されたEC
Mセクションの間の不一致の説明図である。
【図24】図24はHfmdセクションを含む、ファイ
ルの部分の概略図である。
【図25】図25は好ましい実施形態でのCMPSとH
DVR間のデータの流れの概要である。
【図26】図26は典型的なビットストリームの構造の
説明図である。
【図27】図27はここに説明されるような推定プロセ
スを示す図である。
【図28】図28は推定プロセスを示す追加の図であ
る。
【図29】図29は推定プロセスを示すまだ追加の図で
ある。
【図30】図30はビットストリームレコーディングプ
ロセスの概略図である。
【図31】図31はビットストリームプレイバックプロ
セスの概略図である。
【図32】図32は高速フィルタを使用する正弦波ビッ
トストリームのフィルタリングの説明図である。
【図33】図33は慣性フィルタを使用する正弦波ビッ
トストリームのフィルタリングの説明図である。
【図34】図34はハイブリッドフィルタを使用する正
弦波ビットストリームのフィルタリングの説明図であ
る。
【図35】図35は静的フィルタを使用する正弦波ビッ
トストリームのフィルタリングの説明図である。
【図36】図36はハイブリッドフィルタを使用する一
定ビットレートビットストリームのフィルタリングの説
明図である。
【図37】図37はハイブリッドフィルタを使用する三
角ビットストリームのフィルタリングの説明図である。
【図38】図38はハイブリッドフィルタを使用する頂
冠ビットストリームのフィルタリングの説明図である。
【図39】図39はハイブリッドフィルタを使用するビ
ットストリーム中のピークのフィルタリングの説明図で
ある。
【図40】図40はパーソナルビデオレコーダシステム
の概略図である。
【図41】図41はパーソナルビデオレコーダシステム
向けのコマンドの3層の概略図である。
【図42】図42は従来の早送り動作の説明図である。
【図43】図43は第1代替早送り動作の説明図であ
る。
【図44】図44は追加の早送り動作の説明図である。
【図45】図45は第1巻き戻し動作の説明図である。
【図46】図46は追加の巻き戻し動作の説明図であ
る。
【図47】図47はスロープレイ動作の説明図である。
【図48】図48は代替スロープレイ動作の説明図であ
る。
【符号の説明】
2016/2018 チューナ 2012/2014 復調器 2010 デスクランブラ/デマルチプレクサ/リマル
チプレクサ 2024 データデコーダ 2026 音声デコーダ 2030 PCMミキシング 2034 音声DAC 2038 MPEGビデオデコーダ 2032 グラフィックエンジン 2040 PAL/SECOMエンコーダ 2054 フロントパネル 2038 音声出力 2040 ビデオ出力 2002 ホストCPU+メモリ 2072 シリアル 2074 モデム 2100 ハードディスク 2050 バンキングカード読取装置 2052 スマートカード読取装置 2060 バンキングカード 2062 スマートカード 2004 デジタルTVコプロセッサ+メモリ 2080 リモートコントローラ 2082 無線周辺装置 3120 アプリケーション 3110 アプリケーションマネージャ 3500 仮想機械 3700 デバイス層 3900 システムソフトウェア/ハードウェア 3130 ウェブブラウザ 3132 番組表 3134 有料視聴 3136 バナー(パイロット) 3138 ホームバンキング 3140 ソフトウェアダウンロード 3120 その他 3142 ブート 3144 セットアップ 3146 ザッピング 3148 コールバック 3110 アプリケーションマネージャ 3310 基本システムパッケージ 3320 DAVICパッケージ 3330 メーカ独自のパッケージ 3510 仮想機械 3540 SIエンジン 3542 スケジューラ 3544 メモリマネージャ 3546 イベントマネージャ 3548 動的リンカ 3550 グラフィックシステム 3552 クラスマネージャ 3554 ファイルシステム 3556 機密保護マネージャ 3558 ダウンローダ 3852 ファイルシステムライブラリ 3650 カーネル 3850 再生#1 3710 デバイスマネージャ 3720 条件付きアクセスデバイス 3722 カード読取装置デバイス 3724 チューナデバイス 3726 I/Oポートデバイス 3728 大容量記憶装置 3730 モデムデバイス 3732 ネットワークデバイス 3734 ビデオデバイス 3836 サービスデバイス 3900 デバイスドライバ 3910 デバイスドライバ 3920 リアルタイムオペレーティングシステム 3650 カーネル 3600 拡張デバイス層インタフェース 3710 デバイスマネージャ 3720 条件付きアクセスデバイス 3722 カード読取装置デバイス 3724 チューナデバイス 3726 I/Oポートデバイス 3728 大容量記憶装置 3730 モデムデバイス 3732 ネットワークデバイス 3734 ビデオデバイス 3736 サービスデバイス 3650 カーネル 3800 抽象デバイスインタフェース 3910 デバイスドライバ 3920 リアルタイムオペレーティングシステム
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H04N 5/93 H04N 7/13 Z 7/24 5/93 Z (72)発明者 アンドレ シュルクフ フランス国 エフ−75906 パリ セデッ クス 15 プレイス ラオール ダウトリ ー 34,カナル プラス テクノロジーズ ソシエテ アノニム内 (72)発明者 ニコラス ゴーデ フランス国 エフ−75906 パリ セデッ クス 15 プレイス ラオール ダウトリ ー 34,カナル プラス テクノロジーズ ソシエテ アノニム内 Fターム(参考) 5C053 FA20 FA23 FA27 GB21 HA24 HA29 JA22 KA01 KA24 LA07 5C059 MA00 RC02 RC04 SS11 SS20 UA05 5D044 AB05 AB07 BC04 CC04 DE22 DE27 DE39 EF05 FG18 5D110 AA19 BB06 DA04 DA11 DA12 DA17 DB02 DE01 EA07

Claims (162)

    【特許請求の範囲】
  1. 【請求項1】 ビットストリームの表現を含むファイル
    内のそれぞれのデータオフセットを、該ビットストリー
    ム中の対応するタイムオフセットにマッピングする少な
    くとも1つのレコードを備えるテーブル。
  2. 【請求項2】 該少なくとも1つのそれぞれのデータオ
    フセット及び/または該少なくともつのそれぞれのタイ
    ムオフセットの値が、該ビットストリームの特性及び/
    または該ビットストリームの表現に従って選ばれる、請
    求項1に記載のテーブル。
  3. 【請求項3】 該ビットストリームが可変ビット・レー
    トビットストリームである、請求項1または2に記載の
    テーブル。
  4. 【請求項4】 テーブルが少なくとも3つのレコードを
    備え、タイムオフセットが周期的である、請求項1から
    3のいずれかに記載のテーブル。
  5. 【請求項5】 タイムオフセットの期間が変えられる、
    請求項4に記載のテーブル。
  6. 【請求項6】 タイムオフセットの期間がビットストリ
    ームの特性に適合するように選ばれ、好ましくは0.5
    秒、1秒、2秒または10秒である、請求項4または5
    に記載のテーブル。
  7. 【請求項7】 タイムオフセットの期間が、ビットスト
    リームの記憶される表現の特性に従って、好ましくは暗
    号期間のサイズに従って選ばれる、請求項4から6のい
    ずれかに記載のテーブル。
  8. 【請求項8】 ビットストリームが、視聴覚データのそ
    れぞれの少なくとも1つの部分を再生するために独立し
    て使用できるビットストリームデータの少なくとも1つ
    の部分を備え、 該少なくとも1つのレコードのタイムオフセットが、ビ
    ットストリームデータの該それぞれの少なくとも1つの
    部分に対応する、請求項1から7のいずれかに記載のテ
    ーブル。
  9. 【請求項9】 ビットストリームの該少なくとも1つの
    部分がキーフレームを備える、請求項8に記載のテーブ
    ル。
  10. 【請求項10】 ビットストリームがMPEGデータを
    備え、ビットストリームデータの該少なくとも1つの部
    分がフレーム内を備える、請求項9に記載のテーブル。
  11. 【請求項11】 ビットストリームが、ビットストリー
    ムの該少なくとも1つの部分とともに、視聴覚データの
    一部を再生するために使用できるビットストリームデー
    タの少なくとも1つの追加部分を備え、好ましくは、ビ
    ットストリームデータの該少なくとも1つの追加部分が
    デルタフレームを備える、請求項8から10のいずれか
    に記載のテーブル。
  12. 【請求項12】 ビットストリームの表現が符号化さ
    れ、好ましくはテーブル内の該少なくとも1つのレコー
    ドが復号データにマッピングされる、請求項1から11
    のいずれかに記載のテーブル。
  13. 【請求項13】 該復号データが、それぞれが、ビット
    ストリームの符号化された表現のそれぞれの部分を復号
    するように適応される、復号データの複数の部分を備え
    る、請求項12に記載のテーブル。
  14. 【請求項14】 テーブルが、それぞれがビットストリ
    ームの表現を含むファイル内のそれぞれのデータオフセ
    ットを、該ビットストリーム中の対応するタイムオフセ
    ットにマッピングする複数のレコードを備え、各レコー
    ドが、該ビットストリームの符号化された表現のそれぞ
    れの部分を復号するためのそれぞれの復号データにマッ
    ピングされる、請求項12または13に記載のテーブ
    ル。
  15. 【請求項15】 ビットストリームの表現が、復号デー
    タにマッピングするデータの少なくとも1つの部分を備
    える、請求項1から14のいずれかに記載のテーブル。
  16. 【請求項16】 復号データが、少なくとも1つのレコ
    ードを備える、または少なくとも1つのレコードの中に
    含まれ、好ましくは、前記少なくとも1つの追加レコー
    ドが条件付きアクセス情報またはコンテンツ管理情報を
    備える、請求項12から15のいずれかに記載のテーブ
    ル。
  17. 【請求項17】 テーブルが、ファイル内のビットスト
    リームの表現のレコーディング中に自動的に作成され
    る、請求項1から16のいずれかに記載のテーブル。
  18. 【請求項18】 少なくとも1つのレコードが、少なく
    とも1つの追加のレコードにマッピングされ、好ましく
    は前記少なくとも1つの追加レコードが追加テーブルに
    記憶される、請求項1から17のいずれかに記載のテー
    ブル。
  19. 【請求項19】 前記少なくとも1つの追加レコード
    が、ユーザの命令時に挿入される、請求項18に記載の
    テーブル。
  20. 【請求項20】 テーブル内の前記少なくとも1つのレ
    コードが、ユーザの命令時に、該それぞれの少なくとも
    1つの追加レコードにマッピングされる、請求項18ま
    たは19に記載のテーブル。
  21. 【請求項21】 ビットストリームの特性に従って挿入
    される少なくとも1つのレコードを備える、請求項1か
    ら20のいずれかに記載のテーブル。
  22. 【請求項22】 ユーザの命令時に少なくとも1つのレ
    コードを備える、請求項1から21のいずれかに記載の
    テーブル。
  23. 【請求項23】 少なくとも1つのレコードが、それぞ
    れのデータオフセットを表す第1データポイント、及び
    対応するタイムオフセットを表す第2データポイントを
    備える、請求項1から22に記載のテーブル。
  24. 【請求項24】 少なくとも1つのレコードが自動的に
    挿入される、請求項1から23のいずれかに記載のテー
    ブル。
  25. 【請求項25】 ビットストリームの表現を含むファイ
    ル内での記憶のために適応される、請求項1から24の
    いずれかに記載のテーブル。
  26. 【請求項26】 請求項1から25のいずれかに記載の
    テーブルを作成することを備える、ビットストリームの
    表現を含むファイルの探索を容易にする方法。
  27. 【請求項27】 ファイル内のビットストリームの表現
    のレコーディング中に自動的にテーブルを作成すること
    を備える、請求項26に記載の方法。
  28. 【請求項28】 ファイル内に、好ましくはビットスト
    リームの表現を含むファイル内に表を記憶することをさ
    らに備える、請求項26または27に記載の方法。
  29. 【請求項29】 データの所望される部分について、ビ
    ットストリームの表現を含むファイルを探索する、該フ
    ァイル内の位置にジャンプするステップと、その位置か
    らデータを読み取るステップとを備える方法。
  30. 【請求項30】 データを読み取るステップが、データ
    の所望される部分が見つけられるまでデータを読み取る
    ことを備える、請求項29に記載の方法。
  31. 【請求項31】 データを読み取るステップが、固定量
    のデータを読み取ることを備える、請求項29または3
    0に記載の方法。
  32. 【請求項32】 データを読み取るステップが、固定時
    間を表すデータの量を読み取ることを備える、請求項2
    9から31のいずれかに記載の方法。
  33. 【請求項33】 データを読み取るステップが、データ
    のある特定の部分が読み取られるまでデータを読み取る
    ことを備える、請求項29から32のいずれかに記載の
    方法。
  34. 【請求項34】 ビットストリームが可変ビット・レー
    トビットストリームである、請求項29から33のいず
    れかに記載の方法。
  35. 【請求項35】 データの所望される部分が、視聴覚デ
    ータの一部を再生するために独立して使用できるビット
    ストリームデータを表す、請求項29から34のいずれ
    かに記載の方法。
  36. 【請求項36】 ファイル内の位置にジャンプするステ
    ップが、請求項1から25のどれかに従ってテーブルか
    らレコードを読み取ることと、レコード内で指定される
    データオフセットにジャンプすることを備える、請求項
    29から35のいずれかに記載の方法。
  37. 【請求項37】 レコード内のデータオフセットが、フ
    ァイル内の所望される位置に相当する、請求項36に記
    載の方法。
  38. 【請求項38】 データを読み取るステップが、該デー
    タを復号することを備える、請求項29から37のいず
    れかに記載の方法。
  39. 【請求項39】 データを読み取るステップが、請求項
    12から16のいずれかのテーブルからレコードを読み
    取ることと、復号データを使用してデータを復号するこ
    ととを備える、請求項38に記載の方法。
  40. 【請求項40】 ファイル内の位置にジャンプするステ
    ップが、請求項18から20のいずれかのテーブルから
    レコードを読み取ることと、レコード内で指定されるデ
    ータオフセットにジャンプすることとを備え、 該少なくとも1つの追加レコードが、データを読み取る
    ステップで使用される、請求項29から39のいずれか
    に記載の方法。
  41. 【請求項41】 データの複数の所望される部分につい
    て、ビットストリームの表現を含むファイルを探索す
    る、請求項29から40のいずれかに記載の方法を使用
    してデータのそれぞれの所望される部分を探索すること
    を備える方法。
  42. 【請求項42】 データの所望される部分が、時間で周
    期的に間隔をあけて置かれるビットストリームデータの
    部分を表す、請求項41に記載の方法。
  43. 【請求項43】 データの所望される部分が、早送り動
    作または巻き戻し動作を達成するために使用される、請
    求項41または42に記載の方法。
  44. 【請求項44】 データの所望される部分により表され
    るビットストリームデータの部分間の時間が、指定され
    る早送り速度または巻き戻し速度を達成するために選ば
    れる、請求項43に記載の方法。
  45. 【請求項45】 データの所望される部分により表され
    るビットストリームデータの部分間の時間が、方法を実
    施するために使用される手段の特性に従って選ばれる、
    請求項42から44のいずれかに記載の方法。
  46. 【請求項46】 特性が、ファイルからのデータの検索
    または処理の最大持続可能速度である、請求項45に記
    載の方法。
  47. 【請求項47】 特性が、読み取り/書き込みハードデ
    ィスクアクセス時間、または解析デマルチプレクサ帯域
    幅、またはオペレーティングシステムスケジューリング
    精度である、請求項45または46に記載の方法。
  48. 【請求項48】 指定される早送り速度または巻き戻し
    速度が、ユーザの命令時に変えられる、請求項44から
    47のいずれかに記載の方法。
  49. 【請求項49】 ビットストリームの表現を含むファイ
    ルからデータの少なくとも1つの所望される部分を検索
    する、請求項29から48のいずれかに記載の方法を使
    用してデータの該所望される部分を探索することと、デ
    ータの該所望される部分を検索することとを備える方
    法。
  50. 【請求項50】 請求項29から48のいずれかに記載
    の方法を使用して、データのそれぞれの所望される部分
    を探索することと、同様にデータのそれぞれの所望され
    る部分を検索することを備える、ファイルからデータの
    複数の所望される部分を検索するための請求項49に記
    載の方法。
  51. 【請求項51】 請求項49に記載の方法を使用してビ
    ットストリームの表現を含むファイルからデータの少な
    くとも1つの所望される部分を検索することと、データ
    の該少なくとも1つの所望される部分を出力することと
    を備える、データを出力する方法。
  52. 【請求項52】 請求項49または50に記載の方法を
    使用して、データの複数の所望される部分を検索するこ
    とと、同様にデータのそれぞれの所望される部分を出力
    することを備える、データを出力する方法。
  53. 【請求項53】 データの複数の所望される部分のそれ
    ぞれが、ビットストリームデータのそれぞれの部分を表
    し、ビットストリームデータの該それぞれの部分が、時
    間で周期的に間隔をあけて置かれる、及び/または同じ
    持続時間を有する、請求項52に記載のデータを出力す
    る方法。
  54. 【請求項54】 請求項53に記載のデータを出力する
    ことを備える、早送り動作または巻き戻し動作を達成す
    る方法。
  55. 【請求項55】 ビットストリームの表現、及び請求項
    1から25のいずれかに記載のテーブルを備えるファイ
    ル。
  56. 【請求項56】 請求項1から25のいずれかに記載の
    テーブルの作成のためのプロセッサ。
  57. 【請求項57】 ビットストリームの特性の分析及びこ
    の分析に従った、請求項1から25のいずれかに記載の
    テーブル内のレコードの挿入のためのプロセッサ。
  58. 【請求項58】 請求項1から25のいずれかに記載の
    テーブルの記憶のための記憶手段。
  59. 【請求項59】 ビットストリームの表現を含むファイ
    ルの記憶のための、請求項58に記載の記憶手段。
  60. 【請求項60】 請求項58または59に記載の記憶手
    段を備え、好ましくはさらに請求項56または57に記
    載のプロセッサを備えるハードディスクビデオレコー
    ダ。
  61. 【請求項61】 請求項60に記載のハードディスクビ
    デオレコーダを備える受信機/デコーダ。
  62. 【請求項62】 請求項60に記載のハードディスクビ
    デオレコーダと通信するように適応される受信機/デコ
    ーダ。
  63. 【請求項63】 請求項61または62に記載の受信機
    /デコーダを組み込む放送システム。
  64. 【請求項64】 請求項26から54に記載のいずれか
    の方法を実施するように適応されるコンピュータプログ
    ラム製品。
  65. 【請求項65】 請求項64に記載のコンピュータプロ
    グラム製品をその上に記憶する、及び/または請求項1
    から25に記載のいずれかのテーブルをその上に記憶す
    るコンピュータ読み取り可能媒体。
  66. 【請求項66】 請求項64に記載のコンピュータプロ
    グラム製品を具体的に具現する信号。
  67. 【請求項67】 請求項66に記載の信号を伝送する方
    法。
  68. 【請求項68】 ビットストリーム中の位置を評価する
    ための、該位置を推定するための手段を備える装置。
  69. 【請求項69】 位置を推定するための手段が、ビット
    ストリーム中の既知の位置に従って位置を推定するよう
    に適応される、請求項68に記載の装置。
  70. 【請求項70】 複数の代替策から既知の位置を選択す
    るための手段をさらに備える、請求項69に記載の装
    置。
  71. 【請求項71】 既知の位置を選択するための手段が、
    評価される位置に対するその近接さに従って既知の位置
    を選択するように適応される、請求項70に記載の装
    置。
  72. 【請求項72】 既知の位置を選択するための手段が、
    評価される位置に最も近い2つの既知の位置の1つを整
    然と選択するように適応される、請求項70または71
    に記載の装置。
  73. 【請求項73】 既知の位置を選択するための手段が、
    ビットストリームの第1部分と第2部分の間のビットス
    トリームでの遷移として既知の位置を選択するように適
    応される、請求項70から72のいずれかの装置。
  74. 【請求項74】 位置を推定するための手段が、既知の
    位置からのオフセットとして位置を推定するように適応
    される、請求項69から73のいずれかに記載の装置。
  75. 【請求項75】 位置を推定するための手段が、バッフ
    ァサイズに従って位置を推定するように適応される、請
    求項69から74のいずれかに記載の装置。
  76. 【請求項76】 位置を推定するための手段が、機密保
    護係数に従って位置を推定するように適応される、請求
    項69から75のいずれかに記載の装置。
  77. 【請求項77】 ビットストリームを記憶するための手
    段をさらに備える、請求項68から76のいずれかに記
    載の装置。
  78. 【請求項78】 ビットストリームとは別個に、ビット
    ストリームと関連付けられるデータを記憶するための手
    段をさらに備える、請求項77に記載の装置。
  79. 【請求項79】 ビットストリームとは別個にビットス
    トリームと関連付けられるデータを記憶するための手段
    が、条件付きアクセスデータを記憶するように適応され
    る、請求項78に記載の装置。
  80. 【請求項80】 ビットストリームを操作するための、
    条件付きアクセスデータを受信するための手段と、該条
    件付きアクセスデータを該ビットストリームと同期させ
    るための手段と、該ビットストリームを記憶するための
    手段とを備える装置。
  81. 【請求項81】 ビットストリームに別個に条件付きア
    クセスデータを記憶するための手段をさらに備える、請
    求項80に記載の装置。
  82. 【請求項82】 同期させるための手段が、条件付きア
    クセスデータとビットストリーム中の対応する位置の間
    の基準を作成するように適応される、請求項79から8
    1のいずれかに記載の装置。
  83. 【請求項83】 テーブルに基準を記憶するための手段
    をさらに備える、請求項82に記載の装置。
  84. 【請求項84】 同期させるための手段が参照される位
    置を、それが、条件付きアクセスデータが対応するビッ
    トストリームの部分に含まれるように選択するように適
    応される、請求項82または83に記載の装置。
  85. 【請求項85】 同期させるための手段が参照される位
    置を、それが、条件付アクセスデータが対応する暗号期
    間に含まれるように選択するように適応される、請求項
    84に記載の装置。
  86. 【請求項86】 同期させるための手段が、受信手段に
    よる条件付きアクセスデータの受信を示すイベントに従
    って参照される位置を選択するように適応される、請求
    項82から85のいずれかに記載の装置。
  87. 【請求項87】 ビットストリーム内の位置を推知する
    手段をさらに備え、参照される位置が該推定位置に従っ
    て選択される、請求項82から86のいずれかに記載の
    装置。
  88. 【請求項88】 複数の別個のセグメント内でビットス
    トリームを転送するための手段をさらに備え、位置を推
    定するための手段がセグメントの1つの最後に従って位
    置を推定するように適応される、請求項68から79及
    び87のいずれかに記載の装置。
  89. 【請求項89】 少なくとも1つのセグメントのサイズ
    を事前に決定するための手段をさらに備える、請求項8
    8に記載の装置。
  90. 【請求項90】 ビットストリームを操作するための、
    複数の別個のセグメント内で該ビットストリームを転送
    するための手段と、セグメントの1つのプロパティに従
    って該ビットストリーム内の位置を推定するための手段
    とを備える装置。
  91. 【請求項91】 セグメントのサイズを事前に決定する
    ための手段をさらに備える、請求項90に記載の装置。
  92. 【請求項92】 サイズを事前に決定するための手段
    が、位置に関連付けられるビットストリームの部分未満
    に同等なサイズを事前に決定するように適応される、請
    求項89または91に記載の装置。
  93. 【請求項93】 サイズを事前に決定するための手段
    が、ビットストリームの特性に従ってサイズを事前に決
    定するように適応される、請求項89、91及び92の
    いずれかに記載の装置。
  94. 【請求項94】 サイズを事前に決定するための手段
    が、ビットストリームのビットレートに従ってサイズを
    事前に決定するように適応される、請求項89及び91
    から93のいずれかに記載の装置。
  95. 【請求項95】 サイズを事前に決定するための手段
    が、一定のサイズを事前に決定するように適応される、
    請求項89及び91から94のいずれかに記載の装置。
  96. 【請求項96】 サイズを事前に決定するための手段
    が、静的フィルタを備える、請求項89及び91から9
    5のいずれかに記載の装置。
  97. 【請求項97】 サイズを事前に決定するための手段
    が、可変サイズを事前に決定するように適応される、請
    求項89及び91から94のいずれかに記載の装置。
  98. 【請求項98】 サイズを事前に決定するための手段
    が、動的フィルタを備える、請求項89及び91から9
    7のいずれかに記載の装置。
  99. 【請求項99】 サイズを事前に決定するための手段
    が、高速動的フィルタ、慣性動的フィルタ、及びハイブ
    リッド動的フィルタの少なくとも1つを備える、請求項
    89及び91から98のいずれかに記載の装置。
  100. 【請求項100】 位置を推定するための手段が、少な
    くとも1つの過去の推定値の誤差を考慮に入れるように
    適応される、請求項68から79及び89から99のい
    ずれかに記載の装置。
  101. 【請求項101】 ビットストリームの少なくとも1つ
    の特性に従って位置を推定するための手段をさらに備え
    る、請求項68から79及び89から100のいずれか
    に記載の装置。
  102. 【請求項102】 ビットストリーム内の位置を評価す
    るための、該ビットストリームの少なくとも1つの特性
    に従って、該位置を推定するための手段を備える装置。
  103. 【請求項103】 該特性またはそれぞれの特性が、ビ
    ットストリームのビットレート、ビットストリーム内の
    相対位置、及びビットストリームの部分の間で経過した
    時間の少なくとも1つである、請求項101または10
    2に記載の装置。
  104. 【請求項104】 位置の発生と位置に関係するイベン
    トの発生の間の分離の約数を推定するための手段をさら
    に備える、請求項101から103のいずれかの装置。
  105. 【請求項105】 ビットストリーム中の位置を推定す
    るための手段が、分離の約数を、好ましくはビットスト
    リーム中の位置に近いビットストリームのビットレート
    の推定値とともに組み込むように適応される、請求項1
    04に記載の装置。
  106. 【請求項106】 分離の約数を推定するための手段
    が、位置の発生と処理動作の最後の間の分離を測定する
    ように適応される、請求項104または105に記載の
    装置。
  107. 【請求項107】 請求項68から106に記載の装置
    を組み込む受信機/デコーダ。
  108. 【請求項108】 ビットストリーム内の位置を評価す
    る、該位置を推定することを備える方法。
  109. 【請求項109】 ビットストリームを操作する、条件
    付きアクセスデータを受信することと、該条件付きアク
    セスデータを該ビットストリームと同期させることと、
    該ビットストリームを記憶することとを備える方法。
  110. 【請求項110】 ビットストリームを操作する、複数
    の別個のセグメント内で該ビットストリームを転送する
    ことと、該セグメントの1つのプロパティに従って該ビ
    ットストリーム内の位置を推定することとを備える方
    法。
  111. 【請求項111】 ビットストリーム中の位置を評価す
    る、該ビットストリームの少なくとも1つの特性に従っ
    て該位置を推定することを備える方法。
  112. 【請求項112】 放送センタ及び請求項107の受信
    機/デコーダを備える放送システム。
  113. 【請求項113】 請求項108から111のいずれか
    に記載の方法を実施するように適応されるコンピュータ
    プログラム製品。
  114. 【請求項114】 請求項113に記載のコンピュータ
    プログラム製品をその上に記憶するコンピュータ読み取
    り可能媒体。
  115. 【請求項115】 請求項113に記載のコンピュータ
    プログラム製品を具体的に具現する信号。
  116. 【請求項116】 転送速度がパラメータとして表され
    る、音声/画像ビットストリームの転送を制御するため
    のコマンド。
  117. 【請求項117】 速度が正、ゼロ、及び/または負で
    ある、請求項116に記載のコマンド。
  118. 【請求項118】 速度が通常の転送速度の倍数により
    パラメータに関係する、請求項116または117に記
    載のコマンド。
  119. 【請求項119】 転送が起こらなければならない位置
    がパラメータとして表される、請求項116から118
    のいずれかに記載のコマンド。
  120. 【請求項120】 転送が起こらなければならない位置
    がパラメータとして表される、音声/画像ビットストリ
    ームの制御するためのコマンド。
  121. 【請求項121】 転送が起こらなければならない位置
    を指定するパラメータが、時間の約数に関係する、請求
    項119または120に記載のコマンド。
  122. 【請求項122】 転送が起こらなければならない位置
    を指定するパラメータが、ビットストリーム中のオフセ
    ットに関係する、請求項120に記載のコマンド。
  123. 【請求項123】 前記請求項のいずれかの少なくとも
    1つのコマンドを備えるコマンドセット。
  124. 【請求項124】 音声/画像ビットストリームの転送
    を制御するための、転送が起こらなければならない位置
    をパラメータとして表すコマンド、及び転送速度をパラ
    メータとして表すコマンドを備えるコマンドセット。
  125. 【請求項125】 音声/画像ビットストリームの転送
    を制御するためのコマンドであって、請求項116から
    112のいずれかに記載の少なくとも1つのコマンドを
    呼び出すように適応される該コマンド。
  126. 【請求項126】 音声/画像ビットストリームの転送
    に関係する状態に従って異なる追加のコマンドを選択的
    に呼び出すように適応される、請求項125に記載のコ
    マンド。
  127. 【請求項127】パラメータが通常のプレイバック速度
    に同等である場合に、請求項116から118のいずれ
    かのコマンドを呼び出す、及びパラメータが音声/画像
    ビットストリーム中の位置に同等である場合に、請求項
    119から122のいずれかに記載のコマンドを呼び出
    すように適応される、請求項125または126のコマ
    ンド。
  128. 【請求項128】 パラメータがゼロ速度に同等である
    場合に、請求項116から118のいずれかに記載のコ
    マンドを呼び出すように適応される、請求項125から
    127のいずれかに記載のコマンド。
  129. 【請求項129】 パラメータが通常のプレイバック速
    度以上に同等である場合に、請求項116から118の
    いずれかに記載のコマンドを呼び出すように適応され
    る、請求項125から128のいずれかに記載のコマン
    ド。
  130. 【請求項130】 パラメータが通常のプレイバック速
    度未満に同等である場合に、請求項116から118の
    いずれかに記載のコマンドを呼び出すように適応され
    る、請求項125から129のいずれに記載かのコマン
    ド。
  131. 【請求項131】 パラメータが負のプレイバック速度
    に同等である場合に、請求項116から118のいずれ
    かのコマンドを呼び出すように適応される、請求項12
    5から130のいずれかに記載のコマンド。
  132. 【請求項132】 パラメータが通常のプレイバック速
    度に同等である場合に、請求項116から118のいず
    れかに記載のコマンドを呼び出すように適応される、請
    求項125から131のいずれかに記載のコマンド。
  133. 【請求項133】 パラメータが場所に同等である場合
    に、請求項119から122のいずれかに記載のコマン
    ドを呼び出すように適応される、請求項125から13
    2のいずれかに記載のコマンド。
  134. 【請求項134】 該または追加の音声/画像ビットス
    トリームを記憶させるように適応される、請求項125
    から133のいずれかのコマンド。
  135. 【請求項135】 音声/画像ビットストリームの転送
    を制御するためのコマンドであって、請求項1252か
    ら134のいずれかの少なくとも1つのコマンドを呼び
    出すように適応される該コマンド。
  136. 【請求項136】 コマンドが、ユーザが選択可能な音
    声/画像制御動作に対応する、請求項116から122
    及び125から135のいずれかのコマンド。
  137. 【請求項137】 請求項116から122または12
    5から136のいずれかのコマンドを制御基準に比較す
    ることと、該コマンドが該制御基準に一致するかどうか
    に従って追加コマンドを生成することを備える、音声/
    画像ビットストリームの転送を制御する方法。
  138. 【請求項138】 コマンドが請求項137に従って生
    成される追加コマンドである、請求項137の方法。
  139. 【請求項139】 制御基準が、音声/画像ビットスト
    リームの転送、好ましくはコマンドの受信時に発生する
    転送の特性に基づく、請求項137または138の方
    法。
  140. 【請求項140】 音声/画像ビットストリームの転送
    の特性が転送速度及びまたはビットストリーム中の位置
    である、請求項139の方法。
  141. 【請求項141】 制御基準が条件付きアクセス及びま
    たは親制御データに基づく、請求項137から140の
    いずれかに記載の方法。
  142. 【請求項142】 請求項116から122及び125
    から136のいずれかの少なくとも1つのコマンドを備
    え、好ましくは請求項137から141、152または
    153のいずれかに記載の方法を実施するように適応さ
    れるオペレーティングシステム。
  143. 【請求項143】 請求項116から122及び125
    から136のいずれかの少なくとも1つのコマンドを備
    え、好ましくは請求項137から141、152または
    153のいずれかに記載の方法を実施するように適応さ
    れる受信機/デコーダ。
  144. 【請求項144】 請求項116から122及び125
    から136のいずれかに記載の少なくとも1つのコマン
    ドを呼び出すように適応される受信機/デコーダ。
  145. 【請求項145】 請求項116から122及び125
    かあ136のいずれかに記載の少なくとも1つのコマン
    ドを備えるコンピュータプログラム製品。
  146. 【請求項146】 請求項145に記載のコンピュータ
    プログラム製品を備えるコンピュータ読み取り可能媒
    体。
  147. 【請求項147】 請求項145に記載のコンピュータ
    プログラム製品を具体的に具現する信号。
  148. 【請求項148】 音声/画像データを処理するため
    の、音声/画像データを受信するための手段と、音声/
    画像データを出力するための手段と、請求項116から
    122、及び125から133のいずれかに記載の少な
    くとも1つのコマンドを実行する、及びまたは請求項1
    37から141、152または153のいずれかに記載
    の方法を実施するための手段とを備える装置。
  149. 【請求項149】 音声/画像データを処理するため
    の、入力、出力、及びプロセッサと関連付けられるメモ
    リを備え、該プロセッサが請求項116から122及び
    125から133のいずれかに記載の少なくとも1つの
    コマンドを実行する、及びまたは請求項137から14
    1、152または153のいずれかに記載の方法を実施
    するように適応される装置。
  150. 【請求項150】 請求項148または149に記載の
    装置を備える音声/画像処理装置。
  151. 【請求項151】 請求項143または144に記載の
    受信機/デコーダを備える放送システム。
  152. 【請求項152】 音声/画像ビットストリームの転送
    を制御する、転送速度を設定するためのコマンドを呼び
    出すことと、転送速度をパラメータとしてコマンドに渡
    すこととを備える方法。
  153. 【請求項153】 音声/画像ビットストリームの転送
    を制御する、転送が起こらなければならない位置を設定
    するためノンコマンドを呼び出すことと、位置をパラメ
    ータとして渡すこととを備える方法。
  154. 【請求項154】 ビットストリーム中のタイムオフセ
    ットを、ファイル内のデータオフセットにマッピングす
    る索引を備える索引表。
  155. 【請求項155】 索引表が、請求項1から25のいず
    れかに記載のテーブルである、請求項154に記載の索
    引表。
  156. 【請求項156】 ユーザ入力に応えてクライアントか
    らコマンドを受信するように適応されるハードディスク
    ビデオレコーダ(HDVR)。
  157. 【請求項157】 特定の番組の記録を開始するための
    コマンドを受信するようにさらに適応される、請求項1
    56に記載のハードディスクビデオレコーダ(HDV
    R)。
  158. 【請求項158】 さらにデバイス、好ましくはサービ
    スデバイスと対話するように適応される、請求項156
    または157に記載のハードディスクビデオレコーダ
    (HDVR)。
  159. 【請求項159】 さらに、ファイルシステムライブラ
    リと対話するように適応される、請求項156から15
    8のいずれかに記載のハードディスクビデオレコーダ
    (HDVR)。
  160. 【請求項160】 サービスデバイス及び/またはファ
    イルシステムライブラリと対話するために、追加コマン
    ドを送信または受信するように適応される、請求項15
    8または159に記載のハードディスクビデオレコーダ
    (HDVR)。
  161. 【請求項161】 該コマンドまたは該追加コマンド
    が、追加コマンドの生成を引き起こす、請求項156か
    ら160のいずれかに記載のハードディスクビデオレコ
    ーダ(HDVR)。
  162. 【請求項162】 該コマンドまたは該追加コマンド
    が、請求項116から122、または125から136
    のいずれかに記載のコマンドである、請求項156から
    161に記載のハードディスクビデオレコーダ(HDV
    R)。
JP2002240717A 2001-08-21 2002-08-21 ファイル及びコンテンツ管理 Expired - Fee Related JP4257084B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
EP01402202.4 2001-08-21
EP01402202A EP1286262A1 (en) 2001-08-21 2001-08-21 Optimising the performance of an operating system of a receiver/decoder
PCT/IB2001/001845 WO2002017635A2 (en) 2000-08-24 2001-08-24 Transmitting and processing protected content in a conditional access system
EP01310888A EP1286349A1 (en) 2001-08-21 2001-12-24 File and content management
EP01310888.1 2001-12-24
FR01/01845 2003-12-01

Publications (3)

Publication Number Publication Date
JP2003235012A true JP2003235012A (ja) 2003-08-22
JP2003235012A5 JP2003235012A5 (ja) 2005-10-27
JP4257084B2 JP4257084B2 (ja) 2009-04-22

Family

ID=27791872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002240717A Expired - Fee Related JP4257084B2 (ja) 2001-08-21 2002-08-21 ファイル及びコンテンツ管理

Country Status (1)

Country Link
JP (1) JP4257084B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101410621B1 (ko) * 2009-02-04 2014-06-23 구글 인코포레이티드 비디오 스트리밍의 끊김없는 되감기 및 재생을 위한 서버측 지원
KR20170008514A (ko) * 2015-07-14 2017-01-24 라인 가부시키가이샤 암호화된 컨텐츠의 복호화 키를 안전하게 획득하여 컨텐츠를 재생하기 위한 방법 및 시스템

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10200546B2 (en) * 2015-09-25 2019-02-05 The Nielsen Company (Us), Llc Methods and apparatus to identify media using hybrid hash keys

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101410621B1 (ko) * 2009-02-04 2014-06-23 구글 인코포레이티드 비디오 스트리밍의 끊김없는 되감기 및 재생을 위한 서버측 지원
US9538142B2 (en) 2009-02-04 2017-01-03 Google Inc. Server-side support for seamless rewind and playback of video streaming
KR20170008514A (ko) * 2015-07-14 2017-01-24 라인 가부시키가이샤 암호화된 컨텐츠의 복호화 키를 안전하게 획득하여 컨텐츠를 재생하기 위한 방법 및 시스템
KR101701625B1 (ko) 2015-07-14 2017-02-01 라인 가부시키가이샤 암호화된 컨텐츠의 복호화 키를 안전하게 획득하여 컨텐츠를 재생하기 위한 방법 및 시스템

Also Published As

Publication number Publication date
JP4257084B2 (ja) 2009-04-22

Similar Documents

Publication Publication Date Title
US7593620B2 (en) File and content management
US7840112B2 (en) Gradually degrading multimedia recordings
US8290343B2 (en) Electronic apparatus, reproducing method and program
US7302697B1 (en) Broadcast pause and resume for enhanced television
US20080005676A1 (en) Control and playback of media over network link
KR100844705B1 (ko) 재생 장치, 비디오 데이터의 재생 방법, 콘텐츠 기록 매체,및 컴퓨터 판독 가능한 기록 매체
KR20030007706A (ko) 디지털 영상 콘텐츠의 영상재생 장치, 영상재생 방법,영상재생 프로그램, 패키지 미디어
JP2005501485A (ja) マルチメディア信号処理システム
US20100166387A1 (en) Method and apparatus for playing video data of high bit rate format by a player capable of playing video data of low bit rate format
EP1286351B1 (en) File and content management
KR100614371B1 (ko) 디지털 방송 스트림의 변속재생 제어정보 기록방법과,그에 따른 디지털 방송수신기에서의 변속재생 제어방법
US20060136981A1 (en) Transport stream demultiplexor with content indexing capability
EP2284836A1 (en) Output control method, receiver, and receiving method using license acquisition time limit information
CN106233389B (zh) 再现方法、再现装置以及记录介质
JP4257084B2 (ja) ファイル及びコンテンツ管理
JP4955111B2 (ja) 再生装置、制御プログラム、記録媒体、及び再生装置の制御方法
JP2008294638A (ja) 伝送システム、記録装置、伝送方法、記録方法、およびプログラム
US20090316891A1 (en) Content reproduction apparatus, recording apparatus, recording and reproduction apparatus, and reproduction method
KR20050055621A (ko) 정보 기록 처리 장치, 정보 재생 처리 장치, 및 방법, 및컴퓨터 프로그램
CN101207777B (zh) 图像记录再现装置及其特殊再现方法
JP2009038510A (ja) ダウンロード端末、サーバ、コンテンツ配信システム、コンテンツ利用方法、およびコンテンツ配信方法
JP5132871B2 (ja) コンテンツ再生装置、コンテンツ再生装置の制御方法、コンテンツ記録媒体、制御プログラム、制御プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2006513666A (ja) Dsmccカルーセルに対して繰り返し情報を記憶する方法及び装置
KR20070116063A (ko) 광학 디스크 어플리케이션들에 대한 스트림처리된 파일시스템
JP5236113B2 (ja) デジタルコンテンツ送受信システム、および、デジタルコンテンツ送受信方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050719

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050719

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070313

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080527

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080822

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080827

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081127

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090106

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090202

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120206

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4257084

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120206

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130206

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130206

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140206

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees