(57)【要約】  インスタント・リプレイを提供する方法を開示する。この方法によれば、ビデオ・ストリームとオーディオ・ストリームをソースから受け取る。プログラムが、それらのビデオ・ストリームとオーディオ・ストリームからレンダリングされ、リアル・タイムに再生される。それらのビデオ・ストリームとオーディオ・ストリームは、ビデオ圧縮エンジンとオーディオ圧縮エンジンをそれぞれ使用して圧縮される。圧縮されたビデオ・ストリームとオーディオ・ストリーム及びビデオ圧縮エンジンとオーディオ圧縮エンジンに関連する情報がシーケンス・ヘッダ内に保存される。圧縮されたビデオ・ストリームとオーディオ・ストリームが多重化されて、単一のデータ・ストリームが形成される。同期化情報を含むビデオ・フレームとオーディオ・フレームに関連する情報がマルチプレクサ・ヘッダ内に保存される。多重化されたデータ・ストリームからメディア・ユニットが形成される。それぞれのメディア・ユニットは、少なくとも１つのビデオ・フレームと少なくとも１つ又は複数の対応するオーディオ・フレームとを含む。それぞれのメディア・ユニットは、独立してデコードできる最初のビデオ・フレームをさらに含む。それぞれのメディア・ユニットは独立してデコードできるエンティティである。メディア・ユニットは、一定の持続時間を有する。メディア・ユニットはメモリ内に保存される。複数の開始アドレスがテーブル内に保存される。それらの開始アドレスのそれぞれはメディア・ユニットのうちの１つに対応する。インスタント・リプレイ・コマンドを受け取ったことに応答して、シーケンス・ヘッダが検索される。検索されたシーケンス・ヘッダに基づいて、適切なビデオ解凍エンジンとオーディオ解凍エンジンが選択され構成される。インスタント・リプレイ・コマンドを受け取ったことに応答して、テーブルからインスタント・リプレイの開始アドレスが識別される。インスタント・リプレイの開始アドレスに関連付けられているメディア・ユニットから開始して、１つ又は複数のメディア・ユニットがメモリから検索される。その１つ又は複数の検索されたメディア・ユニットは、ビデオ解凍エンジンとオーディオ解凍エンジンへそれぞれ渡されるために、圧縮されたビデオ・データとオーディオ・データへと逆多重化される。そして、解凍されたデータがレンダリングされる。
2008547360.tif 000002
【特許請求の範囲】
【請求項１】
インスタント・リプレイを実現する方法であって、
ビデオ・ストリームとオーディオ・ストリームを受け取るステップと、
プログラムをリアル・タイムに再生するステップであって、前記プログラムが、前記ビデオ・ストリームとオーディオ・ストリームからレンダリングされるステップと、
ビデオ圧縮エンジンとオーディオ圧縮エンジンをそれぞれ使用して、前記ビデオ・ストリームと前記オーディオ・ストリームを圧縮するステップと、
前記圧縮されたビデオ・ストリームとオーディオ・ストリーム及び前記ビデオ圧縮エンジンとオーディオ圧縮エンジンに関連する情報をシーケンス・ヘッダ内に保存するステップと、
前記圧縮されたビデオ・ストリームとオーディオ・ストリームを同期化情報と共に多重化して、複数のコード化されたオーディオ・フレームとビデオ・フレームを形成するステップと、
複数のメディア・ユニットを形成するステップであって、それぞれのメディア・ユニットが、少なくとも１つのビデオ・フレームと、少なくとも１つ又は複数の対応するオーディオ・フレームとを含み、それぞれのメディア・ユニットが、独立してデコードできる最初のビデオ・フレームを含み、それぞれのメディア・ユニットが、独立してデコードできるエンティティであり、前記複数のメディア・ユニットが、一定の持続時間を有する、前記形成するステップと、
前記複数のメディア・ユニットをメモリ内に保存するステップと、
複数の開始アドレスをテーブル内に保存するステップであって、前記複数の開始アドレスのそれぞれが、前記複数のメディア・ユニットのうちの１つに対応する、前記保存するステップと、
インスタント・リプレイ・コマンドを受け取ったことに応答して前記シーケンス・ヘッダを検索するステップと、
前記検索されたシーケンス・ヘッダに基づいて適切なビデオ解凍エンジンとオーディオ解凍エンジンを選択して構成するステップと、
前記インスタント・リプレイコマンドを受け取ったことに応答して前記テーブルからインスタント・リプレイの開始アドレスを識別するステップと、
前記インスタント・リプレイの開始アドレスに関連付けられている前記メディア・ユニットから開始して、前記複数のメディア・ユニットのうちの１つ又は複数を前記メモリから検索するステップと、
前記ビデオ解凍エンジンとオーディオ解凍エンジンへそれぞれ渡すために、前記１つ又は複数の検索されたメディア・ユニットを、圧縮されたビデオ・データとオーディオ・データへと逆多重化するステップと
を含む方法。
【請求項２】
前記メモリは、循環式に編成されており、
前記メモリが満杯になると、前記メモリ内に保存されている最も古いメディア・ユニットが、次に保存されるメディア・ユニットによって上書きされる請求項１に記載の方法。
【請求項３】
前記テーブルが、前記メモリと同様に循環式に編成されており、
前記メモリ内に保存されている最も古いメディア・ユニットが上書きされると、前記テーブル内の最も古い開始アドレスが、前記メモリ内に次に保存されるメディア・ユニットに対応する開始アドレスによって上書きされる請求項２に記載の方法。
【請求項４】
前記インスタント・リプレイ・コマンドに従って検索されるメディア・ユニットの数が設定可能である請求項１に記載の方法。
【請求項５】
前記インスタント・リプレイ・コマンドに従って検索されるメディア・ユニットの数がインスタント・リプレイ機能キーが押される回数によって決まる請求項１に記載の方法。
【請求項６】
前記メモリは、ダイナミック・ランダム・アクセス・メモリを含む請求項１に記載の方法。
【請求項７】
前記メモリは、コンパクト・フラッシュ、メモリ・スティック、ＵＳＢフラッシュ・ドライブ、マイクロ・ドライブのうちの１つを含む取り外し可能なメディアを含む請求項１に記載の方法。
【請求項８】
前記メモリは、ハード・ディスク、又は半導体や磁気メディアに基づくランダムにアクセスできるストレージ・デバイスのうちの１つを含む請求項１に記載の方法。
【請求項９】
前記逆多重化されて圧縮されたビデオ・データとオーディオ・データが、前記ビデオ解凍エンジンとオーディオ解凍エンジンによって解凍され、前記プログラムの１つの部分へとレンダリングされ、
前記部分が、第１のディスプレイ内で再生され、前記プログラムが、第２のディスプレイ内で同時にリアル・タイムで再生される請求項１に記載の方法。
【請求項１０】
前記第１のディスプレイが、フル・スクリーンであり、前記第２のディスプレイが、ピクチャー・イン・ピクチャー・ウィンドウである請求項９に記載の方法。
【請求項１１】
前記部分と、前記プログラムとが、前記第１のディスプレイと、前記第２のディスプレイとの間で切り替えられる請求項９に記載の方法。
【請求項１２】
前記複数のメディア・ユニットのうちの前記１つ又は複数が、前記メモリから直線的なやり方で検索される請求項１に記載の方法。
【請求項１３】
前記ビデオ圧縮エンジンと前記オーディオ圧縮エンジンが、固定ビット・レート又は可変ビット・レートのいずれかをサポートする請求項１に記載の方法。
【請求項１４】
前記複数のメディア・ユニットに関する前記一定の持続時間が、１秒である請求項１に記載の方法。
【請求項１５】
インスタント・リプレイを実現する方法であって、
メモリ内に保存されているファイルから、圧縮されて多重化されたオーディオ／ビデオ・ストリームを受け取るステップと、
前記オーディオ／ビデオ・ストリームを、圧縮されたオーディオ・ストリームと、圧縮されたビデオ・ストリームとへ逆多重化するステップと、
前記圧縮されたオーディオ・ストリームとビデオ・ストリームに基づいて複数の論理的なメディア・ユニットを形成するステップであって、それぞれの論理的なメディア・ユニットが、少なくとも１つのビデオ・フレームと、少なくとも１つの対応するオーディオ・フレームとを含み、それぞれの論理的なメディア・ユニットが、独立してデコードできる最初のビデオ・フレームを含み、それぞれの論理的なメディア・ユニットが、独立してデコードできるエンティティであり、前記複数の論理的なメディア・ユニットが同じ持続時間を有する、前記形成するステップと、
タイムスタンプ情報と、複数の開始アドレスとをテーブル内に保存するステップであって、前記複数の開始アドレスのそれぞれが、前記複数の論理的なメディア・ユニットのうちの１つに対応し、前記複数の論理的なメディア・ユニットのそれぞれの前記最初のビデオ・フレームが、対応するタイムスタンプ情報に関連付けられている、前記保存するステップと、
前記圧縮されたオーディオ・ストリームとビデオ・ストリームをそれぞれオーディオ解凍エンジンとビデオ解凍エンジンへ転送するステップと、
プログラムをリアル・タイムで再生するステップであって、前記プログラムが、前記オーディオ解凍エンジンとビデオ解凍エンジンによってそれぞれ作成された出力からレンダリングされるステップと、
インスタント・リプレイコマンドを受け取ったことに応答して前記テーブルからインスタント・リプレイの開始アドレスを識別するステップと、
前記インスタント・リプレイの開始アドレスに関連付けられている前記論理的なメディア・ユニットから開始して、前記複数の論理的なメディア・ユニットのうちの１つ又は複数を前記メモリから検索するステップと、
前記ビデオ解凍エンジンとオーディオ解凍エンジンへそれぞれ渡すために、前記１つ又は複数の検索された論理的なメディア・ユニットを、圧縮されたビデオ・データとオーディオ・データへと逆多重化するステップとを含む方法。
【請求項１６】
前記インスタント・リプレイコマンドに従って検索される論理的なメディア・ユニットの数が設定可能である請求項１５に記載の方法。
【請求項１７】
前記インスタント・リプレイ・コマンドに従って検索される論理的なメディア・ユニットの数が、インスタント・リプレイ機能キーが押される回数によって決まる請求項１５に記載の方法。
【請求項１８】
前記メモリは、ローカル・ストレージ・デバイス又はネットワーク・ストレージ・デバイスである請求項１５に記載の方法。
【請求項１９】
前記メモリは、ダイナミック・ランダム・アクセス・メモリを含む請求項１５に記載の方法。
【請求項２０】
前記メモリは、コンパクト・フラッシュ、メモリ・スティック、ＵＳＢフラッシュ・ドライブ、マイクロ・ドライブのうちの１つを含む取り外し可能なメディアを含む請求項１５に記載の方法。
【請求項２１】
前記メモリは、ハード・ディスク、又は半導体や磁気メディアに基づくランダムにアクセスできるストレージ・デバイスのうちの１つを含む請求項１５に記載の方法。
【請求項２２】
前記逆多重化されて圧縮されたビデオ・データとオーディオ・データが、前記ビデオ解凍エンジンとオーディオ解凍エンジンによって解凍され、レンダリングされる請求項１５に記載の方法。
【請求項２３】
固定ビット・レート又は可変ビット・レートのいずれかをサポートする請求項１５に記載の方法。
【請求項２４】
前記複数の論理的なメディア・ユニットに関する前記一定の持続時間が１秒である請求項１５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には、マルチメディア・プログラムの視聴に関し、より具体的には、マルチメディア・プログラムの視聴中にインスタント・リプレイ機能を提供することに関する。
【背景技術】
【０００２】
ＤＶＲ（ｄｉｇｉｔａｌ  ｖｉｄｅｏ  ｒｅｃｏｒｄｅｒ）、ＰＶＲ（ｐｅｒｓｏｎａｌ  ｖｉｄｅｏ  ｒｅｃｏｒｄｅｒ）、ＤＶＤプレーヤ、ＳＴＢ（ｓｅｔ−ｔｏｐ  ｂｏｘ）、その他の類似の家庭用電子デバイス（ＣＥデバイスと総称される）は、録画されたオーディオ／ビデオ・コンテンツを再生中に視聴者がナビゲートできるようにするためのいわゆるトリック・モードを提供する。従来のトリック・モードは、様々なスピードでの早送り、巻き戻し、スロー・モーションなどを含む。これらのトリック・モードは、ＶＣＲ（ｖｉｄｅｏ  ｃａｓｓｅｔｔｅ  ｒｅｃｏｒｄｅｒ）のようなアナログ・デバイスにおいて利用できるトリック・モードに類似している。現在のＣＥデバイス内に保存されて処理されるビデオ・データやオーディオ・データのデジタル的な性質のために、インスタント・リプレイ機能やスキップ機能、その他の機能など、さらなるトリック・モードも、従来のトリック・モードと共に利用できるようになっている。
【０００３】
インスタント・リプレイによって、視聴者は、入ってくるビデオ・セグメントをもう１回又は繰り返し見ることができる。このような機能は、とりわけスポーツ・イベントや娯楽イベントにとって有用であり、望ましい。
【０００４】
インスタント・リプレイを実施するために、複数のメカニズムが提案されている。あるシステムにおいては、インスタント・リプレイは、ＰＩＰ（ｐｉｃｔｕｒｅ−ｉｎ−ｐｉｃｔｕｒｅ）で表示され、それによって解像度が大幅に低下する。これは、ユーザがもう一度よく見たいと思う可能性のあるビデオ・クリップの画質や見やすさを制限するおそれがある。その他のシステムにおいては、メカニズムに複雑な回路が含まれる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
したがって、より効率的な方法でインスタント・リプレイを提供することができる方法及びシステムを提供できれば、望ましいであろう。
【課題を解決するための手段】
【０００６】
一実施態様においては、放送中のＡ／Ｖ（ａｕｄｉｏ／ｖｉｄｅｏ）信号が受信されて表示されている間、このような信号は、バックグラウンドでデジタル化され、圧縮され、記録されている。直近に記録された情報は、次いで特定の（１つ又は複数の）Ａ／Ｖセグメントのインスタント・リプレイすなわちプレイバックを行うために使用される。それらのＡ／Ｖセグメントは、例えば、サッカーの試合でたった今決められたゴール、ゴルフの大会でのスイング、あるいは視聴者がもう１回又は繰り返し見たいと思う任意の特定のシーンを含むであろう。記録は、固定式（例えばＤＲＡＭ）か、取り外し可能なメディア（例えばコンパクト・フラッシュ、メモリ・スティック、ＵＳＢフラッシュ・ドライブ、マイクロ・ドライブなど）、又はハード・ディスク、あるいはその他の任意の類似のランダムにアクセスできるストレージ・メディアなどのメモリ内に行われる。割り当てられたメモリは、循環式に使用され、それによって、最も新しく記録された素材が、インスタント・リプレイ用として常に利用可能となる。本発明は、テレビジョン・ユニット、衛星や地上のＳＴＢ、ＰＶＲ、ＤＶＲ、その他の類似のデバイスにおいて使用することができる。
【０００７】
デジタル形式のＡ／Ｖ信号は、ビデオ圧縮エンジンやオーディオ圧縮エンジンによって圧縮され、多重化され、いわゆる「メディア・ユニット」へとグループ分けされ、それによって、Ａ／Ｖシーケンスへのランダムなアクセスが提供される。メディア・ユニットとは、ビデオ・シーケンス内のＧＯＰ（ｇｒｏｕｐ  ｏｆ  ｐｉｃｔｕｒｅｓ）に類似した独立してデコードできるエンティティであり、多重化されたＡ／Ｖストリームを含む。多重化されたメディア・ユニットの最初のフレームは常に、独立してデコードできるビデオ・フレームである。それぞれのビデオ・フレームの後には、その対応する（１つ又は複数の）オーディオ・フレームが続く。それぞれのメディア・ユニットは、一定の持続時間、通常は約１秒間のものである。メディア・ユニット内のビデオ・シーケンスは、それらのメディア・ユニットが、独立してデコードできる分量である限り、Ｉ（Ｉｎｔｒａ−ｐｒｅｄｉｃｔｅｄ）フレームのみから、Ｉ−フレームとＰ（ｉｎｔｅｒ−ｐｒｅｄｉｃｔｅｄ）ビデオ・フレームから、あるいはＩ、Ｐ、Ｂ（ｂｉ−ｄｉｒｅｃｔｉｏｎａｌｌｙ  ｐｒｅｄｉｃｔｅｄ）ビデオ・フレームから構成することができる。
【０００８】
ユーザのコマンドに応答したインスタント・リプレイの持続時間（すなわち、再生の分量）は、設定可能であり、メディア・ユニットの倍数に設定することができる。この設定は、最小で１つのメディア・ユニットから、最大で、インスタント・リプレイ機能用として割り当てられている全メモリを占めるメディア・ユニットの倍数に最も近い整数まで、様々に設定することができる。通常は、５個から１０個までのメディア・ユニットの設定が使用される。
【０００９】
ビデオ及びオーディオのシーケンスの多重化段階が実行された後は、コントローラを使用して、メディア・ユニットが形成され、それぞれのメディア・ユニットのアドレスをストレージ・メディア内に保持するためのテーブルが作成される。テーブル内の開始アドレスは、保存されている多重化されたビデオ及びオーディオのシーケンスの再生をインスタント・リプレイ用として開始する目的で、選択されたメディア・ユニットへジャンプするために、後で使用される。
【００１０】
インスタント・リプレイをフル・スクリーンにした状態で、放送中のＡ／Ｖ信号をＰＩＰで視聴することができ、それによってユーザは、放送されているプログラムの現在のセグメントを同時に視聴することができる。あるいは、放送中のＡ／Ｖ信号をフル・スクリーンにした状態で、インスタント・リプレイをＰＩＰで表示することもできる。インスタント・リプレイと、放送中のＡ／Ｖ信号とを、ＰＩＰとフル・スクリーンとの間で切り替えることができる。
【００１１】
別の実施態様においては、コントローラは、論理的なメディア・ユニットを形成し、既に記録されているメディア・ストリーム用のインスタント・リプレイ機能を提供するために論理的なメディア・ユニットの開始アドレスのテーブルを作成する。これは、メディア・ストリームが逆多重化されている間に行うことができる。この場合には、デコード回路のみが使用される。
【００１２】
本発明のその他の実施態様は、以降の詳細な説明から当業者にとって容易に明らかになるであろうということを理解されたい。以降の詳細な説明においては、本発明の様々な実施態様が、例として示され、説明されている。理解できるであろうが、本発明は、その他の様々な実施態様が可能であり、そのいくつかの詳細は、その他の様々な点において修正が可能であり、それらの修正はすべて、本発明の趣旨と範囲から逸脱せずに行うことができる。したがって、図面と詳細な説明は、例示的な性質のものであり、限定的なものではないとみなすべきである。
【００１３】
本発明の態様は、限定としてではなく、一例として、添付の図面に示されている。
【発明を実施するための最良の形態】
【００１４】
添付の図面に関連して以降に示される詳細な説明は、本発明の様々な実施形態の説明として意図されており、本発明を実施することができる唯一の実施形態を示すことを意図するものではない。この詳細な説明には、本発明の徹底的な理解を提供する目的から、具体的な詳細が含まれている。しかし、これらの具体的な詳細を伴わずに本発明を実施することができるということは、当業者にとって明らかであろう。いくつかの例においては、本発明のコンセプトが分かりにくくなることを避けるために、よく知られている構造やコンポーネントがブロック図の形態で示されている。
【００１５】
次いで、本発明の１つ又は複数の実施形態について説明する。本発明は、インスタント・リプレイを提供するためのシンプルでメモリ効率のよい方法について説明する。一実施形態においては、インスタント・リプレイ機能を呼び出すために、オーディオ／ビデオ信号の圧縮と多重化の間に保存された情報を使用する。別の実施形態においては、再生用として既存のオーディオ／ビデオ・ストリームが選択された場合、インスタント・リプレイ機能を呼び出すために使用される情報は、再生用のファイルが逆多重化されている間に作成される。
【００１６】
図１は、本発明の一実施形態を示している。一実施形態においては、システム１０は、ビデオ圧縮エンジン１２、オーディオ圧縮エンジン１４、マルチプレクサ１６、コントローラ１８、ストレージ・ユニット２０、デマルチプレクサ２２、ビデオ解凍エンジン２４、オーディオ解凍エンジン２６を含む。Ａ／Ｄコンバータなど、本発明を実施するために使用することができる一般に理解されているいくつかのコンポーネントは図示されていないという点に留意されたい。ビデオ圧縮エンジン１２とオーディオ圧縮エンジン１４に対する入力デジタルＡ／Ｖ（ａｕｄｉｏ／ｖｉｄｅｏ）データは、テレビ・チューナ内のチューナ、衛星や地上のＳＴＢ、あるいはその他の任意の類似のデバイスなど、複数のＡ／Ｖソースのうちの任意の１つからのＡ／Ｖ信号をデジタル化することによって得ることができる。
【００１７】
入力デジタルＡ／Ｖデータは、ビデオ圧縮エンジン１２とオーディオ圧縮エンジン１４にそれぞれ提供される。そしてビデオ圧縮エンジン１２とオーディオ圧縮エンジン１４からの出力が、マルチプレクサ１６によって多重化される。次いでマルチプレクサ１６からの出力が、ストレージ・ユニット２０内に保存される。
【００１８】
ビデオ圧縮エンジン１２とビデオ解凍エンジン２４は、ＩＴＵ／ＩＳＯ  Ｈ．２６１、Ｈ．２６３、ＭＰＥＧ１、ＭＰＥＧ２、ＭＰＥＧ４、Ｈ．２６４、ＭＪＰＥＧなどのビデオ規格のいずれにも準拠することができる。
【００１９】
オーディオ圧縮エンジン１４とオーディオ解凍エンジン２６は、Ｇ．７ｘｘシリーズ、ＭＰＥＧ  Ｌａｙｅｒ  Ｉ、ＩＩ、ＩＩＩ、ＡＡＣ、ＡＣ３などのオーディオ規格のいずれにも準拠することができる。
【００２０】
入ってくるデータ・ストリームのためのシーケンス・ヘッダは、再生段階中に使用するために別途保存される。これについては、以降でさらに説明する。シーケンス・ヘッダは、圧縮されたビデオ・データ・ストリームとオーディオ・データ・ストリーム及びビデオ圧縮エンジン１２とオーディオ圧縮エンジン１４の特徴に関する情報を含む。このシーケンス・ヘッダが保存されるのは、このようなヘッダがデータ・ストリームのはじめでのみ利用可能であり、ストレージ・ユニット２０が循環式に使用されるにつれてこのようなヘッダを上書きすることができるためであり、これについては、以降でさらに説明する。
【００２１】
マルチプレクサ１６は、次の多重化スキームを実行する。圧縮された（１つ又は複数の）ビデオ・フレームと、対応する圧縮された（１つ又は複数の）オーディオ・フレームとが、それらのそれぞれのタイムスタンプ情報と共に保存される。タイムスタンプ情報は、後でＡ／Ｖの同期化のために使用される。ビデオ・フレームの後には、その対応する（１つ又は複数の）オーディオ・フレームが続く。コントローラ１８は、多重化されたビデオ・データとオーディオ・データを、本明細書で「メディア・ユニット」と呼ばれるものの中に、テーブル内におけるそれらのメディア・ユニットの開始アドレスと共に保存する。それぞれのＭＵ（メディア・ユニット）は、独立してデコードできるエンティティとなるように形成されている。
【００２２】
メディア・ユニットの最初の圧縮されたビデオ・フレームは、独立して解凍できるフレームである。すなわち、そのフレームの解凍は、それまでに圧縮された（１つ又は複数の）フレームやその後に圧縮される（１つ又は複数の）フレームのいずれにも依存しない。これによって、システム１０は、いかなる圧縮エンジンと共に使用する際にも有効となり、圧縮されたビデオ・フレームのシーケンスのタイプから独立したものとなる。システム１０によって実行される方法を説明するために、ＭＰＥＧタイプの圧縮エンジンを使用することにする。
【００２３】
メディア・ユニットは、関連付けられている（１つ又は複数の）オーディオ・フレームを伴うＩ−フレームのみのシーケンス、又は関連付けられている（１つ又は複数の）オーディオ・フレームをそれぞれが伴うＩ−フレームとＰ−フレームのシーケンス、あるいは関連付けられている（１つ又は複数の）オーディオ・フレームをそれぞれが伴うＩ−フレーム、Ｐ−フレーム、Ｂ−フレームのシーケンスを含むことができる。Ｉ−、Ｐ−、Ｂ−ビデオ・シーケンスの一例が、以降に示されている。
【００２４】
図２は、単一のメディア・ユニット内に保存されているシーケンスを示している。このシーケンスは、３０個のＩ−フレームとＰ−フレームを含み、Ｉ−フレームで始まり、Ｐ−フレームで終わる。「||」は、１つのメディア・ユニットの終わりを示している。ＶI1は、ビデオＩ−フレームに相当し、Ａ1Ａ1Ａ1．．．は、ビデオＩ−フレームＶI1の持続時間中の対応するオーディオ・フレームである。
【００２５】
ＮＴＳＣビデオ・フォーマット用の図２に示されているメディア・ユニット・シーケンスは、結果として１秒間のメディア・ユニットとなる。ＰＡＬシステムの場合には、２５個のフレームが、１秒間のメディア・ユニットを形成する。単一のメディア・ユニット内に含むことができるフレームの数に関する制約はないという点に留意されたい。一実装形態においては、１つのメディア・ユニットの適切な持続時間は、１秒又は０．５秒とすることができる。１つのメディア・ユニット内の始まりのビデオ・フレームは、Ｉ−フレームなど、独立してデコードできるフレームであるという点にさらに留意されたい。ＭＰＥＧタイプの圧縮エンジンに関しては、これは、それぞれのメディア・ユニットが１秒間のものである場合、ＮＴＳＣビデオ・フォーマットでは３０個のフレーム、ＰＡＬビデオ・フォーマットでは２５個のフレームの後にＩフレームを挿入するようにエンコーダを構成することによって達成される。
【００２６】
再び図１を参照すると、ビデオ圧縮エンジン１２（おそらくはＭＰＥＧタイプの）は、メディア・ユニットの持続時間の設定に応じて適切なインスタンスでＩ−フレームとしてビデオ・データを圧縮する。オーディオ圧縮エンジン１４は、デジタル・オーディオ・データを圧縮する。そして、これらの圧縮されたビデオ・フレームとオーディオ・フレームが、マルチプレクサ１６によって多重化される。ビデオ・フレームとオーディオ・フレームに関連するタイミング情報が、ヘッダ内に保存される。このタイミング情報は、後でＡ／Ｖ同期化機能のために使用される。多重化されたビデオ・フレームとオーディオ・フレームの先頭にヘッダが置かれる。多重化されたデータは、コントローラ１８によってメディア・ユニットとしてグループ分けされ、それによって、それぞれのメディア・ユニットは、一定の持続時間（例えば１秒）のものとなり、独立してデコードできるようになる。次いでこれらのメディア・ユニットは、ストレージ・ユニット２０内に保存される。メディア・ユニットの開始アドレスも、ストレージ・ユニット２０内のテーブルに保存される。ストレージ・ユニット２０は、ＤＲＡＭ（ダイナミック・ランダム・アクセス・メモリ）、あるいはその他の任意のランダムにアクセスできる半導体ベース又は磁気メディアベースのメモリを含むことができる。
【００２７】
メディア・ユニットのための開始アドレスを保存するために使用されるテーブルは、アレイやその他の任意の適切なデータ構造として実装することができる。テーブルのサイズは、割り当てられているメモリ内に保存することができるメディア・ユニットの数よりもわずかに大きくなるように選択される。これについては、以降でさらに説明する。図３に示されているように、メディア・ユニットが保存されるメモリ３０は、循環式のバッファとして使用される。メディア・ユニットは、メモリ３０に順次書き込まれる。メモリ３０の終わりに達すると、最も古いメディア・ユニットは、最も新しいメディア・ユニットによって上書きされる。同様にテーブル３２も循環式に使用され、それによって、テーブル３２の終わりに達すると、最も古いメディア・ユニットの開始アドレスは、最新のメディア・ユニットの開始アドレスによって上書きされる。図３において見て取れるように、テーブル３２内の項目（メディア・ユニットの開始アドレス）と、メモリ３０内に保存されるメディア・ユニットとの間に１対１の関連付けすなわちマッピングがある。
【００２８】
システム１０は、ＣＢＲ（固定ビット・レート）とＶＢＲ（可変ビット・レート）の双方のＡ／Ｖストリーム用として使用することができる。図３を参照すると、テーブル３２と、メディア・ユニットが保存されるメモリ３０との間に１対１のマッピングが維持されている。テーブル３２のサイズは、インスタント・リプレイ時間枠の要件及びメディア・ユニット／秒の設定に基づく。テーブル３２は通常、必要とされるよりもわずかに大きく維持される。というのは、実際にはＣＢＲの場合でさえ、結果として生じる多重化されたデータが常にぴったりとは限らないためである。しかし、メディア・ユニットが保存されるメモリ３０が一巡するとすぐに（すなわち、最も古いメディア・ユニットが上書きされるとすぐに）、たとえテーブル３２をまだ使い切っていなくても、最も古いメディア・ユニットの開始アドレスも上書きされる。メディア・ユニットの保存用に割り当てられるメモリ３０のサイズは、ピーク・ビット・レートの仮定とインスタント・リプレイ時間枠の要件に基づく。
【００２９】
デバイスは通常、ユーザが、リモコン、キーボード、又はその他の任意の入力デバイスのいずれかのキーを押すことによってインスタント・リプレイ・コマンドを発することができるようにされている。インスタント・リプレイ機能キーを１回押すと、デバイスは、今しがた視聴したセグメントを、「Ｘ」個のメディア・ユニットによって表される所定の分量だけ巻き戻して再生するように指示され、この場合のＸは変動することができ、通常は５と１０の間で設定される。単一のメディア・ユニットは通常、１秒の持続時間を有する。インスタント・リプレイ機能キーをもう１回押すと、デバイスは、現在の位置からさらにＸ個のメディア・ユニット分巻き戻すように指示される。インスタント・リプレイ機能キーを連続して押すと、デバイスは、（Ａ／Ｖシーケンスを逆行していって）メモリ３０のはじめに達するまでＸ個の倍数のメディア・ユニットを巻き戻すように指示される。Ｘの値は、設定可能である。このように設定可能であることを利用して、視聴されている番組のタイプに対応することができる。例えば、いくつかのスポーツ・イベントの場合、１回の押下で１０個という値であれば、ユーザは、再生を始めるべき場所の非常に近くまで行けるであろう。
【００３０】
再生中に、メモリ４０と対応するテーブル４２は、図４に示されているように直線的なやり方で進む。再生は通常、保存されている最も古いメディア・ユニットから始まる。
【００３１】
録画段階中に保存されたシーケンス・ヘッダ情報は、デマルチプレクサ２２によって読み取られる。このシーケンス・ヘッダ情報を使用して、適切なビデオ解凍エンジン２４（ＭＰＥＧ４、Ｈ２６４など）及びオーディオ解凍エンジン２６を選択する。シーケンス・ヘッダ情報は、インスタント・リプレイが要求されるたびに読み取られる。というのは、記録されているビデオのビット・レートや解像度を落とすことによって再生時間を長くするために圧縮エンジンの設定が変更されている可能性があるためである。シーケンス・ヘッダ情報はまた、選択された解凍エンジン２４及び２６がそれら自身を構成できるようにするために、選択された解凍エンジン２４、２６に渡される。
【００３２】
図１、図３を参照すると、コントローラ１８は、インスタント・リプレイのために再生が開始されることになるメディア・ユニットの開始アドレスを計算して、テーブル３２から取ってくる。メディア・ユニットの読み取りを開始して、そのようなメディア・ユニットをデマルチプレクサ２２へ提示するために、ストレージ・ユニット２０内のメモリ３０内におけるその場所へジャンプが行われる。デマルチプレクサ２２は、メディア・ユニットをビデオ・データとオーディオ・データへと分離し、それらのデータを、Ａ／Ｖの同期化のためのそれぞれのタイム・スタンプと共に、それぞれの解凍エンジン２４、２６へ提示する。それらのビデオ・データとオーディオ・データは、それぞれの解凍エンジン２４、２６によってデコードされる。メディア・ユニットは、最も新しく記録されたメディア・ユニットに達するまで、メモリ３０から読み出される。
【００３３】
インスタント・リプレイをフル・スクリーンにした状態で、放送中のＡ／Ｖ信号をＰＩＰで視聴することができ、それによってユーザは、放送されている現在のセグメントを同時に視聴することができる。あるいは、インスタント・リプレイをＰＩＰで表示する一方で、放送中のＡ／Ｖ信号をフル・スクリーンで視聴することもできる。
【００３４】
別の実施形態においては、その時点で放送中のものではなく、ハード・ディスク、ＣＤ、ＤＶＤ、フラッシュ・カード、その他の類似のストレージ・デバイスなど、ローカル・ストレージ・デバイスやネットワーク・ストレージ・デバイス上のファイルから再生されているＡ／Ｖメディア用にインスタント・リプレイ機能を提供することができる。これらのファイルは、多重化されて圧縮された形態とすることができる。
【００３５】
図５を参照すると、別の実施形態においては、システム５０は、ストレージ・デバイス５２、デマルチプレクサ５４、コントローラ５６、ビデオ解凍エンジン５８、オーディオ解凍エンジン６０を含む。ファイルは、ストレージ・デバイス５２から読み取られる。メディア・ユニットは、解凍されて表示される間に、ファイルのコンテンツに基づいて論理的に形成され、デマルチプレクサ２４と連携してコントローラ５６によって処理されて、論理的なメディア・ユニットの開始アドレスを有するテーブルが構築される。それぞれの論理的なメディア・ユニットの持続時間は、コード化のために使用される圧縮エンジンの設定に応じて、様々なものとすることができる。したがって、それぞれの論理的なメディア・ユニットのタイミング情報も、コントローラ５６によって、対応する開始アドレスと共にテーブル内に保存される。タイミング情報は、メディア・ユニット内の最初のビデオ・フレームのレンダリング・タイムスタンプである。開始アドレスは、インスタント・リプレイを開始する場所を決定するために後で使用される。
【００３６】
コントローラ５６は、それぞれの論理的なメディア・ユニットの開始アドレスをテーブル内に保存し、それによって、出力ストリームの最初のビデオ・フレームは、Ｉ−フレームなど、独立して解凍できるフレームとなる。
【００３７】
インスタント・リプレイ・コマンドは、ユーザによって、リモコン、キーボード、又はその他の任意の入力デバイスのいずれかによって発せられる。図５を参照すると、コントローラ５６は、開始アドレスを計算して、テーブルから取ってくる。この開始アドレスは、インスタント・リプレイ用として再生が開始されることになる場所を示す。メディア・ユニットの読み取りを開始して、それらをデマルチプレクサ５４へ提示するために、ストレージ・ユニット５２内におけるその場所へジャンプが行われる。デマルチプレクサ５４は、ビデオ・データとオーディオ・データとを分離し、そうしたデータを、Ａ／Ｖの同期化のためのそれぞれのタイム・スタンプと共に、ビデオ解凍エンジン５８とオーディオ解凍エンジン６０へ提示する。それらのビデオ・データとオーディオ・データは、解凍エンジン５８、６０によってデコードされる。メディア・ユニットは、ファイルの最も新しく読み取られたメディア・ユニットに達するまで、ストレージ・ユニット５２から読み出され、レンダリングされる。
【００３８】
以降は、１つの説明例である。図２に示されているように、Ｉ−フレームとＰ−フレームのみを有するビデオ・シーケンスを伴うメディア・ユニットの場合には、それぞれのメディア・ユニットが独立してデコード可能であるということは明らかである。始まりのＩ−フレームの後は、後続のそれぞれのＩ−フレームが、前のメディア・ユニットの終わりと、次のメディア・ユニットの始まりとを示す。
【００３９】
以降は、別の説明例である。Ｉ−フレーム、Ｐ−フレーム、Ｂ−フレームを有するビデオ・シーケンスを伴うメディア・ユニットは、次のように再生される。圧縮エンジンの入力と出力においてＩ−フレーム、Ｐ−フレーム、Ｂ−フレームを有する典型的なビデオ・シーケンスが、図６に示されている。一例として、１つのメディア・ユニットは、１５個のフレームを含み、すなわち、ＮＴＳＣビデオ・フォーマットに関する０．５秒の持続時間が示されている。ここでは、簡単にする目的から、メディア・ユニットのオーディオ・フレームは図示されていない。
【００４０】
この場合には、インスタント・リプレイ機能に従ってデータ・ストリームのはじめへジャンプが行われると、一番はじめのメディア・ユニットのＩ−フレーム（Ｉ1）に続くＢ−フレームはない。しかし一般には、（前のメディア・ユニットの終わりと、新たなメディア・ユニットの始まりとを示す）それぞれのＩ−フレームの後に、前のメディア・ユニットに属する２つのＢ−フレームが続く。図示されているシーケンスにおいては、Ｂ及びＢが、第１のメディア・ユニットに属し、Ｂ及びＢが、第２のメディア・ユニットに属する。
【００４１】
したがって、インスタント・リプレイを開始するためにメディア・ユニットの開始アドレスを突き止めたときに、次の２つのフレームがＢ−フレームである場合、それらのＢ−フレームは無視される。同様に、再生が、次のメディア・ユニットの始まり（及び前のメディア・ユニットの終わり）を示すＩ−フレームに達すると、次の２つのフレームがＢ−フレームである場合、前のメディア・ユニットの全体の処理を完了するために、それらのＢ−フレームに対するデコードを継続する。
【００４２】
本明細書で開示されている実施形態に関連して説明した様々な例示的な論理ブロック、モジュール、回路、要素、及び／又はコンポーネントは、汎用プロセッサ、ＤＳＰ（ｄｉｇｉｔａｌ  ｓｉｇｎａｌ  ｐｒｏｃｅｓｓｏｒ）、ＡＳＩＣ（ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）、ＦＰＧＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）、若しくはその他のプログラマブル・ロジック・コンポーネント、個別のゲート又はトランジスタ・ロジック、個別のハードウェア・コンポーネント、あるいは本明細書に記載の機能を実行するように設計されているそれらの任意の組合せと共に実装したり実行したりすることができる。汎用プロセッサは、マイクロプロセッサとすることができるが、別の方法では、このプロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、あるいは状態マシンとすることもできる。プロセッサは、コンピューティング・コンポーネントの組合せ、例えばＤＳＰとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、中核のＤＳＰを伴う１つ又は複数のマイクロプロセッサ、あるいはその他の任意のそのような構成として実装することもできる。
【００４３】
本明細書で開示されている実施形態に関連して説明した方法やアルゴリズムは、ハードウェア内に直接、プロセッサによって実行できるソフトウェア・モジュール内に、あるいはその双方の組合せの中に、制御論理、プログラミング命令、又はその他の指示の形態で具体化することができ、単一のデバイス内に含めることもでき、あるいは複数のデバイスにわたって分散させることもできる。ソフトウェア・モジュールは、ＲＡＭメモリ、フラッシュ・メモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハード・ディスク、取り外し可能なディスク、ＣＤ−ＲＯＭ、あるいは当技術分野で知られているその他の任意の形態のストレージ・メディアの中に存在することができる。ストレージ・メディアは、プロセッサに結合することができ、それによってプロセッサは、そのストレージ・メディアから情報を読み取り、そのストレージ・メディアに情報を書き込むことができる。別の方法では、ストレージ・メディアは、プロセッサと一体化することができる。
【００４４】
開示されている実施形態に関する前述の説明は、いかなる当業者も本発明を作成したり使用したりできるようにするために提供されている。これらの実施形態に対する様々な修正は、当業者にとって容易に明らかになるであろうし、本明細書において定義されている一般的な原理は、本発明の範囲の趣旨から逸脱することなく、その他の実施形態に適用することができる。したがって本発明は、本明細書に示されている実施形態に限定されることを意図するものではなく、請求項と整合するすべての範囲を与えられることを意図するものであり、単数形の要素に対する言及は、明確にそう記載されていない限り、「唯一のもの」を意味することを意図するものではなく、むしろ「１つ又は複数のもの」を意味することを意図するものである。当業者に知られている、あるいは後に当業者に知られるようになる、本開示の全体を通じて記載されている様々な実施形態の要素に対する構造的な均等物及び機能的な均等物はすべて、参照によって本明細書に明示的に組み込まれ、請求項によって包含されることを意図している。さらに、本明細書に開示されているものはすべて、そのような開示が請求項に明示的に記載されているかどうかにかかわらず、公共に供されることを意図するものではない。いかなる請求項の要素も、その要素が、「〜のための手段」という語句を使用して明示的に記載されていない限り、あるいは方法クレームの場合には、その要素が、「〜のためのステップ」という語句を使用して記載されていない限り、３５Ｕ．Ｓ．Ｃ．セクション１１２、第６パラグラフの条項のもとで解釈されることはない。
【図面の簡単な説明】
【００４５】
【図１】本発明の一実施形態を示す簡略化された概略図である。
【図２】単一のメディア・ユニットのオーディオ／ビデオ・シーケンスを示す簡略化された概略図である。
【図３】本発明による録画段階中のテーブルとメディア・ストレージ・ユニットとの間における関連付けを示す簡略化された概略図である。
【図４】本発明による再生段階中のテーブルとメディア・ストレージ・ユニットとの間における関連付けを示す簡略化された概略図である。
【図５】本発明の別の実施形態を示す簡略化された概略図である。
【図６】ＮＴＳＣビデオ・フォーマット用のそれぞれが０．５秒の２つのメディア・ユニットのＩ、Ｐ、Ｂのビデオ・シーケンスの一般的な場合を示す簡略化された概略図である。
【図１】
2008547360.tif 000003
【図２】
2008547360.tif 000004
【図３】
2008547360.tif 000005
【図４】
2008547360.tif 000006
【図５】
2008547360.tif 000007
【図６】
2008547360.tif 000008
【国際調査報告】
2008547360.tif 000009
2008547360.tif 000010