説明

データストリーム同士間でコンテンツを分配および切替するデータストリーム再生方法およびデータストリーム再生方法

新たに選択したデータストリームについて、単に最初に受信したデコーダ情報(例:タイミング情報)を含む選択した互いに異なるコンテンツを各々のユーザに伝送する代わりに、サーバは、新たに送信したデータストリームのデコーダ情報を、先に送信したストリーム(またはユーザに関連するマスタクロック)に従って修正する。よって第1コンテンツストリーム復号化に使用したそれぞれのデコーダ状態情報は、第2コンテンツストリーム復号化に使用される。即ちサーバは、新たに選択したコンテンツを、要求者が先に受信したコンテンツを復号化するために既に使用した現在のデコーダ状態情報に従って符号化して、要求者に送信する。よって、データストリームは、互いに異なるタイミング情報セットで生成されたにも拘らず、2個以上の非同期データストリームからのコンテンツを継ぎ合わせて、単一の連続データストリームにできる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データストリーム同士間でコンテンツを分配および切替する、データストリーム再生方法およびデータストリーム再生方法に関する。
【背景技術】
【0002】
従来の技術は、情報をより迅速かつ効率的に該当加入者に伝えることを可能にした。たとえばケーブルネットワーク空間において、現在デジタルケーブルは加入者に多数のチャンネルを提供して、それぞれのテレビで種々のタイプのストリーム化されたデータコンテンツを、受信して再生できるようにする。
【0003】
従来のケーブル技術によれば、それぞれの加入者は、しばしば家庭にいわゆるセットトップボックスを備えて、該当ケーブル会社から送られる符号化されたデジタル情報を受信する。多くの場合、それぞれのセットトップボックスは、多数の標準データストリームを、複数の互いに異なるチャンネルの各々で受信し、唯一の符号化されたデータストリームを、復号化してディスプレイ画面に表示させる。
【0004】
たとえば符号化されたデータを受取ると、セットトップボックスは、受信したデータストリームを復号化する。一旦復号化されると、視聴者の家庭のそれぞれのセットボックスは、選択したチャンネルから引出された復号化データの適当な「ラスタライズされた」信号で該当テレビ装置を駆動する。従ってテレビ視聴者は、ケーブル会社によって送信された該当テレビ番組を見ることができる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
IP(インターネットプロトコル)テレビ(即ちIPTV)に関連する従来の技術に従えば、コンテンツを家庭環境に伝送することは、ツイストペア線またはパッシブ光ネットワークの物理的現実によって制約されている。従って家庭の該当加入者セットトップボックスには、複数の信号の標準パッケージの送信に加えて、比較的少ないオンデマンド・チャンネルしか送信できない。「カスタム」チャンネルに関して制限があるので、サーバは、ユーザ/セットトップボックス制御に基づき、加入者が見るためのセットトップボックスに送るのにどの少数あるいは1つのチャンネルを選択するかに関して、インテリジェントな決断をしなければならない。
【0006】
IPTV(インターネットプロトコルテレビジョン)に従うコンテンツの従来の伝送に関する問題点は、それぞれのユーザが或るIPテレビチャンネルから別のテレビチャンネルに切替える際に経験する不便さである。たとえば上述したMPEG(ムービングピクチャーエクスパーツグループ)データサーバは、1つ以上のインターネットプロトコルに従い、複数の非同期MPEG符号化データストリームを受信できる。既にサーバによって受信した各符号化データストリームは、データストリームを発生するそれぞれのソースで、独立の非同期マスタクロックから生成された固有のタイミング情報を有する。その結果として、サーバは、それぞれの発生源から情報を受取り、ユーザの要求に従ってデータストリームをクライアントに転送するだけでよい。クライアントのセットトップボックス内のデコーダは、受信したコンテンツストリームを処理して、それぞれの視聴覚情報をディスプレイ画面に表示する。
【0007】
ユーザの不都合の例として、ユーザが最初に特定のコンテンツを見ることを要求したと仮定する。このような場合に、それぞれのセットトップボックス内のデコーダは、新たに受信したデータストリームで、その都度、自己同期化アルゴリズムを開始して状態情報を生み出し、受信したデータストリーム内のタイミング情報に基づき、自己同期化する。受信したデータストリーム内のタイミング情報によって、セットトップボックス内のデコーダは、適切に処理可能になり、種々の視聴覚信号をユーザに対していつ、どのように再生すべきか識別する。第1コンテンツストリーム(例:MPEGストリーム)に自己同期化後、それぞれのユーザ(例:セットトップボックス等のクライアントデバイスで)が、サーバに互いに異なるデータストリームをセットトップボックスに供給するよう要求すると、従来の技術では、新たに選択したデータストリームに関連するそれぞれの視聴覚情報を再生できるようになる前に、ユーザのセットトップボックス内のデコーダは、先行のデータストリームを復号化するために使用したデコーダ状態情報を放棄して、新たに選択したデータストリーム(復号化目的のための対応する固有のタイミング情報を有する)に、再び自己同期化することが必要となる。従って、切替後(例:再自己同期化プロセスの実行中)、それぞれのユーザのテレビは、先に見たデータストリームまたは新たに受信したデータストリームを適切に表示しない時間が生じるであろう。換言すると、従来の方法に従えば、新しいデータストリームまたはチャンネル切替に関連してセットトップボックスが再自己同期化(例:新しい復号化状態情報の形成)を試みると、ユーザの画面は、短時間、空白か不鮮明になる可能性がある。
【課題を解決するための手段】
【0008】
以下の開示は、新たにデータストリームを受信後、それぞれのデコーダが再び自己同期化(例:新しいデコーダ状態情報セットの生成)しなければならない結果として経験する不都合な切替(例:ブラックアウトまたは不鮮明画像)の影響を減らし、緩和し、または排除するための幾つかの有用な実施形態を含む。たとえば、一般的な実施形態に従えば、単に最初に受信したデコーダ情報(例:タイミング情報)を含む選択した互いに異なるコンテンツをそれぞれのユーザに伝送する代わりに、サーバは、新たに送信されたデータストリームのデコーダ情報を、先に送信されたストリーム(または場合によってはユーザに関連するマスタクロック)に従って修正する。よって、第2データストリームが、最初は第1受信したデータストリームとは無関係なタイミング情報によって符号化されたにも拘らず、第1コンテンツストリームを復号化するために使用したそれぞれのデコーダ状態情報は、第2コンテンツストリームを復号化する目的にも使用できるようにする。
【0009】
このような実施形態によれば、サーバは、新たに選択したコンテンツを、要求者が第1データストリーム(例:最初に見たコンテンツ)を復号化するために使用した現在のデコーダ状態情報に従って、要求者に送信する。即ち、サーバは、第2データストリーム内の最初のタイミング情報を、第1ストリームと制御データストリームを生成するために使用したそれぞれのマスタクロックに関する差に基づき、第1データストリームに従って修正する。実施形態は、2個以上の非同期データストリームのコンテンツを継ぎ合わせて、加入者において、同じデコーダ状態情報を用いて復号化できる単一の連続データストリームにすることを含む。この技術は、或る独立のデータストリームチャンネルから別の独立のデータストリームチャンネルに切替後に、短時間に起こり得る不都合な切替(例:ブラックアウトまたは不鮮明画像)を低減または除去する。
【0010】
より具体的には、実施形態においてそれぞれのサーバ、たとえばデータストリームを集めて分配するプロセスは、複数の互いに異なる非同期コンテンツストリームまたは放送チャンネルの各々で最も新しく受信したコンテンツ(例:独立のデータストリーム)のそれぞれのウインドウを、(一時的に)保存するバッファのリポジトリを維持する。種々の非同期コンテンツストリームの各々は、それ自身の独立のマスタクロックに従って、符号化される。リポジトリ内に保存されたコンテンツのそれぞれのウインドウは、複数のコンテンツストリームの各々からの情報の少なくとも2個の該当アクセスポイント(アクセスポイントは、コンテンツの割込やはみ出しが無い符号化されたストリーム内の画像境界で、MPEG符号化コンテンツ内のI画像である場合の例)を保存するのに、十分大きい。
【0011】
送信中、それぞれのサーバは、最初にサーバによって受信した複数の互いに異なるコンテンツストリームの、第1コンテンツストリームを含む出力データストリームを生成する。上述したように、第1コンテンツストリームに含まれるコンテンツは、関連する復号化情報(例:タイミング情報)を有していて、該当遠隔受信者(例:セットトップボックス)がネットワーク経由でデータストリームを復号化し、第1コンテンツストリームからのコンテンツを、ディスプレイ画面等のそれぞれのメディアプレイヤで再生できるようにする。
【0012】
サーバは、互いに異なるコンテンツを視聴するために、それぞれのユーザに応答してチャンネル変更を開始する該当遠隔受信者において、「チャンネル変更」命令を受信するように構成できる。ユーザからチャンネル変更命令を受取ると、サーバは、第1コンテンツストリームからコンテンツを出力データストリームに送信する代わりに、(サーバによって受信した複数の非同期コンテンツストリームの)第2コンテンツストリームからコンテンツを出力データストリームに送信する。
【0013】
第1コンテンツストリームを出力データストリームに送信する代わりに、第2コンテンツストリームからのコンテンツの送信(および/または受信)を容易にするために、サーバは、第2コンテンツストリームに関連する復号化情報を、第1コンテンツストリームに関連する情報に従って修正する。よって、該当遠隔受信者は、先に第1コンテンツストリームを復号化するために該当遠隔受信者によって使用したデコーダ状態情報を用いて、第2コンテンツストリームからのコンテンツを、シームレスに復号化できる。換言すれば、実施形態に従い、サーバは、サーバによって受信した1個以上のデータストリームに関連するタイミング情報を修正して、第1コンテンツと第2コンテンツを単一の出力データに継ぎ合わせる。1実施例において、サーバは、第2データストリームに関連するタイミング情報を、第1データストリームと第2データストリームを生成するそれぞれのマスタクロックの差に等しい量で修正する。出力データストリーム(例:ムービングピクチャーエクスパーツグループ即ちMPEG符号化データストリーム)に含まれる修正後のタイミング情報によって、出力データストリームは、互いに異なるマスタクロックに基づき生成された2個以上のコンテンツストリームからのコンテンツを含んでいるにも拘らず、該当受信者は、サーバによって生成される出力データストリーム内のコンテンツを、追尾および再生できる。
【0014】
この技術は、再生目的のために、複数の非同期データストリーム間の選択を可能にする用途で使用するのに適する。しかしながら、この構成は、そのような用途での使用に限られるものではなく、その変化例は、他のアプリケーションにも適する。
【0015】
潜在的に離散的なハードウェアコンポーネント、たとえばロジック、バッファ、レジスタ等を実装できることに加えて、他の実施形態は、それぞれのコンテンツストリーム内のタイミング情報を修正する上記の技術をサポートするように構成されたハードウェアプラットフォーム、たとえばコンピュータ化されたデバイス(例:コンピュータプロセッサシステム、ホストコンピュータ、パーソナルコンピュータ、ワークステーション等)を含むことができる。このような実施形態において、コンピュータ化されたデバイスは、メモリシステム、プロセッサ(例:処理装置)、およびそれぞれのインタコネクトを含む。インタコネクトは、プロセッサをメモリシステムと結合する。メモリシステムは、プロセッサ上で実行されると、上述したように複数のデータストリームに関連するコンテンツを継ぎ合わせるためのプロセスを生み出すアプリケーション(例:ソフトウェアコード)によって符号化される。
【0016】
しかし本開示の他の実施形態は、以上に概述し、以下に詳述する方法の実施形態および動作を実行するためのソフトウェアプログラムを含む。更に具体的には、実施形態は、コンピュータプログラム製品(例:コンピュータ可読媒体)を含み、これはまた説明されたようにコンピュータ化されたデバイス上で実行されると、コンテンツを出力データストリームに接合するコンピュータプログラム論理を含む。コンピュータプログラム論理は、コンピューティングシステムを有する少なくとも1個のプロセッサで実行されると、プロセッサに本開示の実施形態に記載された動作(例:方法)を実行させる。更に開示されている構成は、典型的にはコンピュータ可読媒体、たとえば光学媒体(例:CD−ROM)、フロッピー(登録商標)ディスクまたはハードディスク、または他の媒体上で配置または符号化されたソフトウェア、コードおよび/または他のデータ構造、たとえば1個以上のROMまたはRAMまたはプログラマブルROMチップ内のファームウェア、またはマイクロコードとして、または特定用途集積回路(ASIC)として、またはフィールドプログラマブルゲートアレイ(FPGA)として、または1個以上のモジュール、共用ライブラリにおけるダウンロード可能なソフトウェア画像等として提供される。ソフトウェアまたはファームウェアまたは他のそのような構成を、コンピュータ化されたデバイスに実装して、コンピュータ化されたデバイス内の1個以上のプロセッサに、ここで説明する技術を実行させることができる。
【0017】
本開示の特定の実施形態は、実施形態に従ってデータストリームを生成、管理および/または修正するのをサポートする命令が保存されたコンピュータ可読媒体を含むコンピュータプログラム製品を対象としている。命令がそれぞれのコンピュータデバイスのプロセッサによって実行されると、プロセッサ(例:サーバ)は、次のステップを経過する。i)コンテンツを、第1コンテンツストリームから出力データストリームに送信する。ii)命令の受信に応答して、コンテンツを第1コンテンツストリームから出力データストリームに送信する代わりに、コンテンツを第2コンテンツストリームから出力データストリームに送信する。iii)第2コンテンツストリームからのコンテンツに関連する復号化情報を、第1コンテンツストリームからのコンテンツに関連する復号化情報に従って、修正する。iv)修正後の復号化情報を出力データストリームに送信して、出力データストリームの受信者は、出力データストリーム内の第1コンテンツストリームからのコンテンツと、第2コンテンツストリームからのコンテンツとの両方を復号化するために使用されるのと同じデコーダ状態情報に基づき、出力データストリームをシームレスに再生できる。本出願の他の実施形態は、以上に概述し、以下に詳細に開示する実施形態のいずれかの方法ステップおよび動作を実行するためのソフトウェアプログラムを含む。
【0018】
上述したように、実施形態は、ストリーミングデータに関する切替機能を実行するためのデータ/コンテンツサーバを含む。しかしながらこの明細書で以下に述べるように、ここに記載する機能は、いわゆる高速チャンネル変更を容易にするために、いかなるタイプの通信装置(例:ルータ、スイッチ、デジタル加入者回線アクセス多重化装置、ケーブルモデムターミネーションシステム、受動光ネットワーク等)からも採用できる。
【0019】
以下に、上述した本出願の対象、特徴および利点を、好適な実施形態を図面に示してより具体に説明する。種々の図面を通して同一の部材には、同じ参照符号を用いた。図面は必ずしも縮尺通りではなく、実施形態、原理、および概念を説明するために強調されている。
【0020】
新たに選択したデータストリームに対して単に最初に受信したデコーダ情報(例:タイミング情報)を含む選択した互いに異なるコンテンツをそれぞれのユーザに伝送する代わりに、サーバは、新たに送信されたデータストリームのデコーダ情報を先に送信されたストリーム(または場合によってはユーザに関連するマスタクロック)に従って修正して、第2コンテンツストリームがそれ自身の独立のマスタクロックに基づき発生したにも拘らず、第1コンテンツストリームを復号化するために使用したそれぞれのデコーダ状態情報が、第2コンテンツストリームを復号化する目的にも使用できるようにする。たとえば、実施形態に従うサーバは、要求者(例:デコーダ)が先に受信したコンテンツを復号化するために先に使用した現在のデコーダ状態情報に従って、新たに選択したコンテンツを符号化して要求者に送信する。タイミング情報を修正することによって、データストリームは、互いに異なるタイミング情報セットを有するにも拘らず、サーバは、2個以上の非同期データストリームからのコンテンツを継ぎ合わせて単一の連続データストリームにすることができる。このような実施形態において、セットトップボックス内のそれぞれのデコーダは、元来第2データストリームに関連する互いに異なる、または互換性のないタイミング情報に基づき自己同期化する必要がない。その代わりに、セットトップボックス内のデコーダは、第1データストリームを処理するために使用した古い復号化状態情報を利用して、修正後のタイミング情報を含む第2データストリームを処理する。従ってセットトップボックス内のデコーダは、第2コンテンツストリームからデータを受取ってから古いデコーダ状態情報を放棄する必要はない。
【図面の簡単な説明】
【0021】
【図1】実施形態に従う、データ分配環境のブロック図。
【図2】実施形態に従う、新たに送信されたデータストリーム内のタイミング情報を修正する、データストリームマネージャを図解するブロック図。
【図3】実施形態に従う、切替情報の例を示す表。
【図4】実施形態に従う、2個の独立のデータストリームからのデータ接合を図解する図。
【図5】実施形態に従う、独立のフレームを含むデータストリーム同士の接合を図解する図。
【図6】実施形態に従う技術を実装するための、アーキテクチャを例示する図。
【図7】実施形態に従うコンテンツを継ぎ合わせる技術を、説明するためのフローチャート。
【図8】実施形態に従うコンテンツを継ぎ合わせる技術を、より具体的に説明するためのフローチャート。
【図9】実施形態に従うコンテンツを継ぎ合わせる技術を、より具体的に説明するためのフローチャート。
【発明を実施するための形態】
【0022】
図1は、実施例に従うデータ分配環境100の図である。図示されているように、データ分配環境100は、ストリームソース108(例:第1ストリームソース108−1、第2ストリームソース108−2、...、第Mストリームソース108−M)、ネットワーク119、サーバ110、加入者199(例:第1加入者199−1、第2加入者199−2、...、第J加入者199−J)を含む。各ストリームソース108は、それぞれのクロック117とエンコーダ115を含む。たとえば第1ストリームソース108−1は、第1マスタクロック117−1と第1エンコーダ115−1を含み、第1チャンネル1でデータストリームを生成する。第2ストリームソース108−2は、第2マスタクロック117−2とエンコーダ115−2を含み、第2チャンネル2でデータストリームを生成する、というように続く。サーバ110は、バッファ120(例:第1バッファ120−1、第2バッファ120−2、...バッファ120−M)、マルチプレクサ130、そしてデータストリームマネージャ140(例:データストリームマネージャ140−1、データストリームマネージャ140−2、...データストリームマネージャ140−J)を含む。
【0023】
動作中、各ストリームソース108は、それぞれのコンテンツ105(例:コンテンツ105−1、105−2、...、105−M)を受信および符号化して、ストリーミングコンテンツ(例:MPEG符号化コンテンツストリーム等の視聴覚データ)として、ネットワーク119(例:パケット交換ネットワーク、プライベート通信リンク等)を経由してサーバ110に送信する。ここで留意すべきは、サーバ110は、データをネットワーク接続経由でストリーム化する任意のタイプのデータ通信装置であってよいということである。たとえば高速チャンネル変更を容易にするために、切替能力等の機能は、いかなるタイプの通信装置(例:ルータ、スイッチ、デジタル加入者回線アクセス多重化装置、ケーブルモデムターミネーションシステム、受動光ネットワーク等)からも採用できる。
【0024】
実施形態において、ストリームソース108によって生成されたデータストリームは、IGMP(インターネットグループマネージメントプロトコル)に従って送信されるが、いかなるタイプのプロトコルまたはソースも、互いに異なるストリームをサーバ110に送ることができる。
【0025】
各ストリームソース108は、それぞれのエンコーダ115によって使用した独立のクロック117を有していて、ネットワーク119経由でサーバ110に送信するための符号化データストリームを生成する。たとえば第1ストリームソース108−1は、第2ストリームソース108−2、...、第Mストリームソース108−Mとは独立に(即ち非同期に)動作し、第2ストリームソース108−2は、第1ストリームソース108−1、...、第Mストリームソース108−Mとは独立に(即ち非同期に)動作する、というように続く。第1ストリームソース108−1の第1エンコーダ115−1は、第1マスタクロック117−1を使用して第1チャンネル1でそれぞれのコンテンツストリームを生成する。他のストリームソース108は、同様の仕方で動作する。
【0026】
サーバ110は、ストリームソース108によって生成された符号化コンテンツストリームを受信して、少なくとも一時的に保存する幾つかのバッファ120を含む。実施形態において各バッファは、ストリームソース108から数秒間(例:再生時間)のデータを保存する。バッファ量は、アプリケーションによって異なってよい。サーバは、バッファの代替として、ストリーミングデータの最後の部分だけを保存するのではなく、完全なプログラム(例:映画)を保存するリポジトリ(例:メモリ、記憶ディスク等)を維持できる。
【0027】
ここで留意すべきは、サーバ110は、それぞれ互いに異なる加入者をターゲットにした広告を保存する追加の記憶装置を含むことができることである。それぞれの加入者にデータをストリーミングする間、サーバ110は、適当な間隔で相応のターゲット広告を挿入する。実施形態において、サーバ110は、ターゲット広告を挿入して該当コンテンツストリーム内のタイミング情報を調整することによって、加入者のデコーダが広告に関連する新しいタイミング情報に自己同期化する必要なしに、加入者にとってコンテンツストリームが連続コンテンツストリームのように見える。
【0028】
マルチプレクサ130は、データストリームマネージャ140に一時的に保存されたデータへのアクセスを提供し、バッファ120に一時的に保存された(またはそれぞれのリポジトリに永久に保存された)何らかのデータストリーム情報をいずれかの加入者199に分配することを可能にする。即ち、幾つのデータストリームマネージャ140が同じデータストリームをそれぞれの加入者199に送ることができるかについて制限はない。
【0029】
実施形態において、サーバ110のデータストリームマネージャ140は、マルチプレクサ130と連動し、ユーザからのフィードバックに基づきバッファ120に保存されたコンテンツストリームのいずれをそれぞれの加入者199に送るか制御する。例を挙げると加入者、たとえば第1加入者199−1がデータストリームマネージャ140−1に、複数のコンテンツストリームのいずれを第1チャンネル1〜第MチャンネルMで199−1に再生のために送るべきか通知する。このような再生要求を受取ったデータストリームマネージャ140は、古いデータストリームの代わりに新たに要求されたデータストリームを送る。しかしながら、以下の図でより詳細に説明するように、単に選択した互いに異なるコンテンツを送る代わりに、即ちたとえば最初にコンテンツストリームを第1チャンネル1で送り、次に新しい(修正されていない)コンテンツストリーム、たとえば第2チャンネル2からのコンテンツストリームをそれぞれの加入者199−1に送るように切替える代わりに、データストリームマネージャ140−1が転換アクセス切替情報240−1(図3)を起動して、新しいバッファに対する適当な読出位置情報(例:データを読出すそれぞれのポイント)を選択する。このバッファからデータとタイミング修正ファクタ(例:データストリームを生成するマスタクロックの差)を取出して、新たに送信されるデータストリームに関連する復号化情報を修正する。即ち既述したように、第2チャンネル2からのコンテンツのような新しいデータを送信するときに、データストリームマネージャ140−1が新たに送信されるコンテンツストリーム内のタイミング情報を修正するので、加入者199−1は、新たに受信したデータストリーム内の新しいタイミング情報で再び自己同期化をする必要がない。たとえば、加入者199−1が新たに受信したコンテンツストリームを先行のコンテンツストリーム(第1チャンネル1)の復号化に使用した復号化状態情報に基づき復号化できるように、データストリームマネージャ140−1は、新たに送信されたコンテンツストリーム(この例では、第2チャンネル2)内の復号化情報(例:タイミング情報)を修正する。図2は、実施形態に従い或るコンテンツストリームの送信から別のコンテンツストリームの送信に切替える技術を図解するブロック図である。図示されているように、データストリームマネージャ140−1は、アクセスマネージャ208−1、コンテンツストリーム修正子(C.S.M)210−1、通信インタフェース220−1、ストリームコントローラ230−1、切替情報240−1を含む。加入者199−1は、リモートコントロール185−1、通信インタフェース183−1、デコーダ181−1、再生装置179−1(例:1個以上のメディアプレイヤ)を含む。
【0030】
本例との関連で、データストリームマネージャ140−1がアクセスマネージャ208−1を作動させることによって最初に第1読出位置RP1で第1バッファ120−1から読出し、第1チャンネル1からデータを引出すとする。第1バッファ120−1は、ネットワーク119経由で受信した第1チャンネル1に関連するストリーミングデータのセグメント(例:2秒ウインドウ)を保存するためのFIFO(先入れ先出し)デバイスまたはリポジトリであってよい。各バッファ120は、最も新しく受信したデータ(例:新しい情報フレーム)が最も古く受信したデータ(例:古いデータフレーム)に上書きされるメモリの一部であってよい。
【0031】
データストリームマネージャ140−1がアクセスマネージャ208−1を作動させることによって(切替要求が発生している間に)コンテンツC(の全部または一部)と、バッファ120−1内の第1チャンネル1に関連する先行のコンテンツ、たとえばコンテンツBとコンテンツA(図示せず)を、通信インタフェース220−1経由で第1加入者199−1に送る。
【0032】
データストリームマネージャ140−1によって提供されるこの最初のデータは、パス201を通って移動し、第1加入者199−1は、通信インタフェース183−1で情報を受取る。コンテンツストリームを受取った後、第1加入者199−1は、デコーダ181−1を作動させることによってコンテンツストリーム(例:MPEG符号化データストリーム)を復号化し、ディスプレイ画面やオーディオスピーカ等の装置179で再生する。第1バッファ120−1からデータ標識コンテンツCを第1加入者199−1に供給する本例との関連で、(第1加入者199−1における)ユーザは、コントローラ185(例:無線遠隔操作制御装置、キーボード、マウス、電話等)に入力を供給してパス202経由で要求を送り、データストリームマネージャ140−1に新しいコンテンツ、たとえば第2バッファ120−2に保存された第2チャンネル2上のコンテンツストリームの再生または受信の希望を伝える。要求を受取ると、ストリームコントローラ230−1は、上述したように切替情報240−1(図3参照)にアクセスする。
【0033】
ここで留意すべきは、多くの互いに異なる加入者が、共通に選択したデータストリームを見ることができることである。共通のチャンネルを見る各視聴者は、チャンネルを変更したときに新しいチャンネルのエントリーポイントがどこにあるかに応じて、互いに異なるタイミング情報とリアルタイムを有してよい。
【0034】
既述したように、サーバ110のデータストリームマネージャ140−1は、データストリーム内の該当タイミング情報の修正を起動するため、切替が発生したときでも、それぞれの加入者にネットワーク経由で受信するコンテンツストリームは、1個の連続ストリームのように現れる。他の実施形態は、修正ロジック(例:ストリームマネージャ140−1およびバッファ120に関連する機能)を、加入者におけるそれぞれのセットトップボックスに降ろすことを含む。このようなケースにおいて、加入者は、250とのリンクを経由して、複数の情報チャンネルを受信および格納できる。加入者は、選択した新しいチャンネルにおけるタイミング情報を、デコーダ181の現在の状態に従って修正する目的で、切替情報240−1を維持する。このようにして、新しいチャンネルを選択して見る時間と、チャンネルがそれぞれのメディアプレイヤで実際に再生される時間との間に差はほとんどないか、全くない。なぜならば、チャンネル変更があったにも拘らず、デコーダ181にとってデータストリームは、同一のチャンネルに見えるからである。
【0035】
図3は、実施形態に従う切替情報240−1の詳細を示す。データストリームマネージャ140−1が切替情報240−1を維持することによって、該当第1加入者199−1は、ストリーミングデータの他のチャンネルを受信するように選択的に切替えることができる。(図1に関連して)既述したように、サーバ110は、複数のデータストリームマネージャ140を含む。留意すべきは、データストリームマネージャ140の各々が該当切替情報を維持することによって、それぞれの加入者は、再生用に互いに異なる情報ストリームを受信できることである。
【0036】
図3の例に関連して、切替情報240−1は、表315を含む。表315は、第1欄355、第2欄356、および第3欄357を含む。第1欄355は、第1加入者199−1が、それぞれのメディアプレイヤで再生用に選択できる互いに異なる情報チャンネルを識別する。
【0037】
第2欄356は、新たに選択されるコンテンツストリームチャンネルに切替えるときに、アクセスマネージャ208−1によって使用されるバッファ120に関して、該当する読出位置を示す。実施形態において、表315の読出位置の値は、新しく選択される潜在的なストリーム内の、特定の情報フレームを提示する。たとえば実施形態において、切替情報240−1の第2欄356の読出位置は、それぞれ選択可能なチャンネルにおいて、対応するデータフレーム(例:データストリームにおいて後続のフレームが依存するIフレームまたはアンカーフレーム)の位置を識別する。新たに選択したチャンネルへの切替によって、(読出位置によって指定された)アンカーフレームを提示して切替える1つの目的は、それぞれの加入者199に関連するデコーダ181が、切替によって新たに選択したチャンネルに関連する視聴覚効果への鮮明な移行を、直ちに(またはわずかな遅延後に)経験できるようにすることである。換言すると、実施形態に従えば、第1加入者199−1におけるデコーダ181−1は、直ちにアンカーフレームを再生できる。なぜならば、表315における読出位置は、Iフレームを、データストリーム内のPフレーム、またはBフレームとは反対のものとして指定するからである。Iフレームは、アンカーフレームと見なされる。なぜならばコンテンツ列は、典型的にアンカーとしてのI画像(即ちイントラ符号化画像またはIフレーム)で始まるからである。I画像とストリーム内の次のI画像の前のセグメントにおける後続データは、画像グループ(GOP)と見なされる。GOP内部には、典型的に幾つかの前方予測符号化画像またはP画像がある。復号化中、第1P画像は、I画像をベースに用いて復号化される。P画像は、動画を生成するアンカー画像における変化を定義する差情報を提供する。各セグメントは、B画像も含むことができ、これらは、I画像またはP画像からのベクトルおよび差データを用いて復号化されてよい。従って、I画像の後で第1P画像が次に送られる、というように続く。デコーダ181−1がI画像およびP画像を受取ると、中間のB画像は、動画補償データを前方または後方に動かすことによって復号化され得る。
【0038】
留意すべきは、それぞれのバッファ120における新たに受信したIフレームの位置は、新たに受信したデータが古いデータを上書きするので変化する。このように実施形態に従えば、新しいデータがバッファ120に格納されると、表315のコンテンツも更新され、古いデータがそれぞれのデータストリームからの新しいデータによって上書きされるので、表315の第2欄356で指定された読出位置が更新されて、Iフレームの新しい位置を提示する。
【0039】
第3欄357は、チャンネル切替中にそれぞれのコンテンツストリームに対してなされるクロック調整値(例:タイミング修正情報)を示す。実施形態において、サーバ110は、1個以上のプロセスを作動させることによって、受信したデータストリームの各々に含まれるタイミング情報を調べ、それぞれのデータストリームを生成する独立のマスタクロック(例:図1のクロック117)同士の間の時間差を把握する。
【0040】
再び図2に関して、第1加入者199−1におけるユーザが、見るために第2チャンネル2を選択すると、ストリームコントローラ230−1が第2チャンネル2に切替えるために、アクセスマネージャ208−1が第2バッファ120−2の第2読出位置RP2から読出さなければならないことを識別する。更に、ストリームコントローラ230−1は、第2チャンネル2におけるタイミング情報がタイミング修正情報、たとえば第2調整値ADJVALUE2(例:データストリームを生成するマスタクロック間の差)に基づき修正されなければならないことを識別する。
【0041】
第1チャンネル1(例:現在見ているチャンネル)から第2チャンネル2に切替えると、コンテンツストリーム修正子210−1は、新しい第2チャンネル2におけるタイミング情報を調整値に等しい量で修正する。たとえば第2チャンネル2のデータストリームに含まれる最初のタイミング情報がXである場合、第2チャンネル2のデータストリームに組込むための修正後のタイミング情報は、X+ADJVALUE2である(ADJVALUE2は、正または負の値である)。
【0042】
実施形態において、切替情報240−1にアクセス後で、ストリームコントローラ230−1は、切替後に新しい第2バッファ120−2からデータを読出す読出位置を、アクセスマネージャ208−1に知らせる。ストリームコントローラ230−1は、コンテンツストリーム修正子210−1にも、新たに送信されたデータストリームに適用すべきタイミング修正ファクタ、たとえばADJVALUE2を知らせる。従って切替後、アクセスマネージャ208−1は、新しい第2読出位置RP2に基づき、第2バッファ120−2にアクセスする。また、コンテンツストリーム修正子210−1も、新たに送信されたコンテンツストリームに含まれるタイミング情報を修正するので、第2チャンネル2からのコンテンツは、別のマスタクロックに由来するにも拘らず、第1加入者199−1におけるデコーダ181−1は、第2チャンネル2からの新しいコンテンツストリームを復号できる。換言すると、コンテンツストリーム修正子210−1は、第2チャンネル2内のタイミング情報を修正することによって、新しいチャンネル上のデータを受信して復号化するために、デコーダ181−1が現在のデコーダ状態情報を放棄して完全な再同期化を実行することが避けられる。
【0043】
留意すべきは、(バッファの正しい位置でデータがオバーフローする)実施形態において図2のバッファ120は、データを一時的にFIFOとして格納するように構成されているので、それぞれの第1バッファ120−1と第2バッファ120−2におけるコンテンツFとコンテンツWは、最も新しく受信したデータ情報を表し、それぞれの第1バッファ120−1と第2バッファ120−2におけるコンテンツCとコンテンツTは、最も古く受信したデータ情報を表す。データストリームマネージャ140−1が第1チャンネル1のコンテンツCからデータを読出してストリーム化する間に、切替が行われるとすると、コンテンツストリーム修正子210−1は、図4に示すように、コンテンツストリームを第1加入者199−1に送信する。
【0044】
図4は、実施形態に従い切替中に、コンテンツをストリーム化する図である。コンテンツストリーム修正子210−1は、第2チャンネル2内のデコーダ情報を修正して、第1チャンネル1のデコーダ情報と一致させる。よって、或るチャンネルから別のチャンネル(例:第1チャンネル1から第2チャンネル2)への切替は、シームレスである。換言すると、コンテンツCの送信中にチャンネル変更があったにも拘らず、第1加入者199−1は、データ(例:コンテンツA、B、C、W、X、Y等)を連続的に再生できる。
【0045】
比較のために想起すると、上述した従来の方法では、第1加入者199−1のデコーダが、新しく受信したデータストリームを再生するためには、新たに受信したデータストリームと再び自己同期化しなければならず、その間ブラックアウトしてしまっていた。しかし、記述された本実施形態によると、ブラックアウトや不鮮明な移行時間は無い。なぜならば、第2チャンネル2からのデータは、あたかも同じクロック(例:クロック108−1)に基づき生成されたように、または第1チャンネル1上でデータストリームを生成するため使用したタイミング情報に基づき生成されたように、見えるからである。即ち、コンテンツストリーム修正子210−1は、最初のタイミング情報(例:MPEGに基づくタイミング情報、たとえばPCR、DTSおよびPCR等)を、第2調整値(即ちADJVALUE2)および/またはオフセット201による規定量で修正するので、第2チャンネル2は、第1チャンネル1と同じクロックに基づき生成されたように見える。既述したように、第3欄357におけるクロック調整値ADJVALUE2は、第1チャンネル1と第2チャンネル2にそれぞれ関連するクロック同士の間の時間差を表すことができる。
【0046】
図5は、記載された実施形態に従い切替中に特定の時間におけるデータのより詳細なスナップショットを説明する図である。図示されているように、データストリームマネージャ140−1からの出力データストリーム502(例:MPEGデータストリーム)は、データセグメント、たとえばセグメントA、セグメントB、セグメントC、セグメントW、セグメントXおよびセグメントYを含む。本例との関連において、出力データストリーム502は、Iフレーム510(例:アンカーフレーム、たとえばIフレーム510−1、Iフレーム510−2、...)を含む。これらは独立または自立した情報フレームであり、それぞれのセグメントの後続部分(例:B画像およびP画像)は、これらに依存する。I画像またはIフレーム510は、ディスプレイ画面上におけるすべての画素の配置を定義する完全なデータセットを含む。Iフレーム510は、既述したように表315で指定された調整値に従って修正後のデコーダタイミング情報を含むことができる。
【0047】
情報セグメントCを送信する最中に切替が起こったとする。既に述べたように、或るチャンネルから別のチャンネルへ切替える命令を受取ると、ストリームコントローラ230−1(図2)が切替情報240−1にアクセスして、データを引出して送信すべき新しいチャンネルにおける次のアンカーフレーム(例:Iフレーム)の位置(第2読出位置RP2経由)を識別する。実施形態において、切替後、データストリームマネージャ140−1は、第1チャンネル1内のセグメントCに関連するすべてのデータの送信を、セグメントDに関連する次のIフレームまでに完了する。これは約1秒以下のわずかな遅延を招くことがあり、その間ユーザは、新しいチャンネルを見るために選択したにも拘らず、引続き第1チャンネル1で古いデータストリームを見る。
【0048】
ここで留意すべきは、幾つかの実施形態において、新しいチャンネルに切替わる前にセグメントCに残っているすべての情報(例:セグメントDのIフレームに至るまでのセグメントC内の全情報)を完全に送る必要がないことである。たとえば、チャンネル切替は、セグメントCの最中の好都合な出口点(例:特定タイプのフレーム)で起こってよい。他の実施形態では、チャンネルを切替える選択を検出したら直ちに第2チャンネル2に切替わることによって、ユーザが或るチャンネルから別のチャンネルに遠隔で切替えるとき、要求された情報を見るのに不必要な遅延が発生するのを防ぐ。
【0049】
留意すべきは、アンカーフレーム(例:I画像510)内のタイミング情報を修正することに加えて、コンテンツストリーム修正子210−1は、B画像フレームおよびP画像フレーム内のタイミング情報も修正できる。
【0050】
上述したように、図1〜図5は、実施形態に従い、サーバ110およびより具体的にデータストリームマネージャ140に関連する機能を説明する。図6は、実施形態に従い1個以上の処理機能を実装するためのアーキテクチャ例を説明した図である。
【0051】
図示されているように、上述したデータストリームマネージャ140は、プロセッサ313および該当ソフトウェアコード(例:データストリームマネージャアプリケーション540−1)を含むそれぞれのコンピュータシステム310(例:サーバ110)に実装されて、この明細書に記載する実施形態を実施できる。図6に示された実施形態に対する代替として、データストリームマネージャ140は、論理ゲート、バッファ等のハードウェアコンポーネント、または適当なハードウェアおよびソフトウェア資源の組合せによって実現できる。
【0052】
図6に示すように、本例のコンピュータシステム310(例:サーバ110の構成例)は、メモリシステム312、プロセッサ313、入力/出力インタフェース314および通信インタフェース315を接続するインタコネクト311を含む。入力/出力インタフェース314によって、コンピュータシステム310は、リポジトリ180および端末装置316、たとえばハンドヘルドマウス、ディスプレイ画面、プリンタ等と通信できる。データストリームマネージャ140を実装するコンピュータシステム310(図1)は、これらの周辺装置のすべてまたは幾つかを含むか、全く含まないこともある。通信インタフェース315によってコンピュータシステム310は、データ分配環境100においてストリーミングデータを受信し、処理し、互いに異なるターゲット加入者199に分配できる。
【0053】
図示されているように、メモリシステム312は、エンドユーザ向けに種々のデータストリームを受信、修正、および分配する機能をサポートする1個以上のデータストリームマネージャアプリケーション(例:データストリームマネージャアプリケーション540−1)によって符号化される。データストリームマネージャアプリケーション540−1は、ここに記載された種々の実施形態に従って処理機能をサポートするソフトウェアコード、たとえばデータおよび/または論理命令(例:メモリまたは他のコンピュータ可読媒体、たとえばディスクに格納されたコード)として具体化できる。動作中、プロセッサ313は、インタコネクト311を介してメモリシステム312(および/またはリポジトリ180)にアクセスして、データストリームマネージャアプリケーション540−1の論理命令を開始、作動、実行、解釈、またはその他の仕方で遂行する。データストリームマネージャアプリケーション540−1の実行は、データストリームマネージャプロセス540−2における処理機能を生成する。換言すれば、データストリームマネージャプロセス540−2は、図1に関連して延べたように、データストリームマネージャ140に関連する機能を提供する。
【0054】
ここで留意すべきは、コンピュータシステム310で実行されるデータストリームマネージャアプリケーションは、図6では、データストリームマネージャアプリケーション540−1および/またはデータストリームマネージャプロセス540−2の一方または両方によって表され得ることである。ここでの説明の目的のために、種々のステップおよび機能動作を実行またはサポートしてここに論じる技術を実施するものとして、特定のデータストリームマネージャ140−1を一般的に参照する。
【0055】
また、記載された構成例は、データストリームマネージャアプリケーション540−1自体(即ち実行または遂行されない論理命令および/またはデータ)を含むことにも留意すべきである。データストリームマネージャアプリケーション540−1は、コンピュータ可読媒体(たとえばフロッピー(登録商標)ディスク)、ハードディスクまたは、光媒体に格納されてよい。データストリームマネージャアプリケーション540−1は、メモリシステム312、たとえばファームウェア、読出専用メモリ(ROM)、またはこの例のように実行可能なコード、たとえばランダムアクセスメモリ(RAM)に格納されてもよい。これらの実施形態に加えて留意すべきは、記載された他の実施形態は、データストリームマネージャアプリケーション540−1を、プロセッサ313でデータストリームマネージャプロセス540−2として実行することを含むということである。従って当業者は、ここに記載された機能を実施するために、コンテンツストリーム(310)が他のプロセスおよび/またはソフロウェアおよびハードウェアコンポーネントを含んでもよいことを理解するであろう。
【0056】
図7は、実施形態に従うデータ情報を分配する技術を説明するフローチャート700である。図7は、図1〜図6に関連して述べた実施形態について説明したものである。上述したように、ここでもデータストリームマネージャ140および関連する機能は、ハードウェアおよび/またはソウトウェアに実装され得る。
【0057】
ステップS710で、サーバ110内のデータストリームマネージャ140−1は、第1コンテンツストリームからのコンテンツ(例:第1チャンネル1で受信したデータ)を、出力データストリームで第1加入者199−1に送信する。
【0058】
ステップS720で、命令の受信に応答して、データストリームマネージャ140−1は、第1コンテンツストリームからのコンテンツを出力データストリームで第1加入者199−1に送信する代わりに、第2コンテンツストリームからのコンテンツ(例:第2チャンネル2で受信したデータ)を、出力データストリームに送信することを開始する。
【0059】
ステップS730で、データストリームマネージャ140−1は、第2コンテンツストリーム(例:第2チャンネル2)からのコンテンツに関連する復号化情報を、第1コンテンツストリーム(例:第1チャンネル1)からのコンテンツに関連する復号化情報に従って修正する。
【0060】
ステップS740で、データストリームマネージャ140−1が修正後の復号化情報を出力データストリームに送信することによって、出力データストリームの受信者(例:第1加入者199−1)は、第1加入者199−1が第1コンテンツストリームからのコンテンツを復号化するために使用したのと同じデコーダ状態情報に基づき、出力データストリームをシームレスに再生できる。従って第2データストリームに関連するタイミング情報(例:受信および再生の目的に用いられる情報)は、第1データストリームの情報で修正されるので、第1加入者199−1は、第2データストリームに含まれる新しいタイミング設定に再び自己同期化する必要がない。
【0061】
図8と図9を合わせて、実施形態に従うデータ情報の分配技術を説明するフローチャート800(例:第1フローチャート800−1と第2フローチャート800−2)を形成する。
【0062】
ステップS810では、サーバ110は、第1チャンネル1〜第MチャンネルMの複数の互いに異なる非同期コンテンツストリームの各々について、最も新しく受信したコンテンツのそれぞれのウインドウを格納するためのリポジトリ(例:バッファ120)を維持する。コンテンツのそれぞれのウインドウは、ネットワーク119経由で、コンテンツストリームの各々から、少なくとも2個の該当するコンテンツフレーム(例:Iフレームまたはアンカーフレーム)を格納するのに十分大きい。
【0063】
ステップS820では、サーバ110は、第1コンテンツストリーム(例:第1チャンネル1のデータ)を、第1マスタクロック117−1に基づくそれぞれの復号化情報を有するコンテンツストリームとして受信する。
【0064】
ステップS830では、サーバ110は、第2コンテンツストリーム(例:第2チャンネル2のデータ)を、第2マスタクロック117−2に基づくそれぞれの復号化情報を有するコンテンツストリームとして受信する。上述したように、第1マスタクロック117−1と第2マスタクロック117−2は、互いに非同期的または独立に作動する。
【0065】
ステップS840では、サーバ110は、第1コンテンツストリームからのコンテンツを、出力データストリームで第1加入者199−1に送信する。
ステップS850で、サーバ110は、第1加入者199−1からの命令の受信に応答して、第1コンテンツストリーム(例:第1チャンネル1)からのコンテンツを出力データストリームに送信する代わりに、第2コンテンツストリーム(例:第2チャンネル2)からのコンテンツの送信を開始する。
【0066】
図9のステップS910で、サーバ110は、第2コンテンツストリームからのコンテンツ(例:第2チャンネル2で受信するデータ情報)に関連するタイミング情報例:デコーダ情報を、第1コンテンツストリームからのコンテンツ(例:第1チャンネル1で受信するデータ情報)に関連する復号化情報に従って修正する。
【0067】
ステップS910のサブステップS920で、サーバ110は、第2コンテンツストリームからのコンテンツに関連するタイミング情報を、第1コンテンツストリームからのコンテンツ(例:第1チャンネル1で受信するデータ情報)に関連する復号化情報に従って修正する。
【0068】
ステップS930で、サーバ110は、新たに修正後のタイミング情報を、出力データストリームに埋込む。換言すれば、サーバ110は、第2コンテンツストリームからのコンテンツに関連する最初の復号化情報を、修正後の復号化情報と交換する。第1加入者199−1が出力データストリームで、新たに修正後の復号化情報を回復することによって、第1加入者199−1は現在の復号化情報を放棄して、サーバ110から出力データストリームで送られた第2チャンネルからのデータに再び自己同期化する必要なく、第2チャンネルからのデータストリームを再生できるようになる。
【0069】
ステップS940で、(第2チャンネルに関連するデータについて)修正後のタイミング情報を出力データストリームに送信することによって、出力データストリームの受信者は、先に第1コンテンツストリームからのコンテンツを復号化するために使用したのと同じデコーダ状態情報に基づき、出力データストリームをシームレスに再生できる。
【0070】
既述したように、ここに記載された技術は、データストリームの受信、修正、および分配等の動作を遂行する用途に使用するのに良く適する。しかしながら、記載された構成は、そのような用途における使用に制限されるものではなく、これらの構成およびその変化例は、他の用途にも良く適することに留意すべきである。
【0071】
本発明は、選好された実施形態に関して具体的に図示し説明されているが、当業者は添付の請求項によって定義された本発明の精神と範囲から逸脱することなく、形態および詳細において様々な変更をなし得ることを理解するであろう。そのようなものとして、本発明の上記の実施形態は制限することを意図したものではない。むしろ本発明の実施形態に対する何らかの制限は、以下の請求項に記載されている。

【特許請求の範囲】
【請求項1】
出力データストリームをシームレスに再生できるデータストリーム再生方法であって、前記データストリーム再生方法は、
コンテンツを、第1コンテンツストリームから出力データストリームに送信することと;、
命令の受信に応答して、コンテンツを前記第1コンテンツストリームから前記出力データストリームに送信する代わりに、コンテンツを前記第2コンテンツストリームから前記出力データストリームに送信することと;
前記第2コンテンツストリームからのコンテンツに関連するタイミング情報を、前記第1コンテンツストリームからのコンテンツに関連するタイミング情報に従って修正することと;
修正後のタイミング情報を前記出力データストリームに送信することと
を備え、
前記出力データストリームの受信者は、前記出力データストリームに含まれる前記第1コンテンツストリームからのコンテンツと、前記第2コンテンツストリームからのコンテンツとの両方を復号化するために使用されるのと同じデコーダ状態情報に基づき、前記出力データストリームをシームレスに再生できることを特徴とする、データストリーム再生方法。
【請求項2】
前記データストリーム再生方法は更に、前記第1コンテンツストリームを、第1マスタクロックに基づくそれぞれのタイミング情報を有するコンテンツストリームとして受信することと;
前記第2コンテンツストリームを、第2マスタクロックに基づくそれぞれのタイミング情報を有するコンテンツストリームとして受信することと
を含み、第1マスタクロックは、第2マスタクロックに対して非同期である、請求項1記載のデータストリーム再生方法。
【請求項3】
タイミング情報を修正することによって、前記受信者は、前記第1コンテンツストリームからのコンテンツに対する同期化を中止し、前記第2コンテンツストリームからのコンテンツと再同期化する手間がなくなる、請求項1記載のデータストリーム再生方法。
【請求項4】
前記第1コンテンツストリームと前記第2コンテンツストリームは、1個以上のソースに由来して、互いに独立のタイミング情報を有するにも拘らず、
前記第2コンテンツストリームからのコンテンツに関連する修正後のタイミング情報は、該当遠隔前記受信者が前記第2コンテンツストリームからコンテンツを受信するために使用するように構成されている、請求項3記載のデータストリーム再生方法。
【請求項5】
第2コンテンツストリートからのコンテンツに関連するタイミング情報の修正の少なくとも一部は、前記第2コンテンツストリームに関連するフレームの位置に基づく、請求項3記載のデータストリーム再生方法。
【請求項6】
前記データストリーム再生方法は更に、前記第2コンテンツストリームからのコンテンツに関連する最初のタイミング情報を、修正後のタイミング情報と交換することによって、前記受信者が前記第1コンテンツストリームからのコンテンツを復号化と再生後に、前記第2コンテンツストリームからのコンテンツをシームレスに再生できるようにすることを含む、請求項1記載のデータストリーム再生方法。
【請求項7】
前記データストリーム再生方法は更に、前記出力データストリーム内の修正後のタイミング情報を、前記出力データストリームの複数の位置で更新し、前記出力データストリーム内の修正後のタイミング情報を回復させることによって、前記受信者が前記第2コンテンツストリームからのコンテンツを再生できるようにすることを含む、請求項1項記載のデータストリーム再生方法。
【請求項8】
前記データストリーム再生方法は更に、複数の互いに異なる非同期コンテンツストリームの各々について、最も新しく受信したストリーム化されたコンテンツのそれぞれのウインドウを保存するリポジトリを維持することを含み、
コンテンツのそれぞれの前記ウインドウは、コンテンツストリームの各々から少なくとも2個の該当アンカーフレームを保存するのに十分大きい、請求項1記載のデータストリーム再生方法。
【請求項9】
前記データストリーム再生方法は更に、前記受信者が、自分を前記第2コンテンツストリームからのコンテンツに関連する最初のタイミング情報と再同期化する必要なく、前記出力データストリームをシームレスに再生できるようにする目的のために、前記第1コンテンツストリーム内のコンテンツフレームと、前記第2コンテンツストリーム内のコンテンツフレームとの間の時間オフセットを利用して、前記出力データストリームに関連するタイミング情報を調整することを含む、請求項8記載のデータストリーム再生方法。
【請求項10】
前記第1コンテンツストリームからのコンテンツを見る代わりに、前記第2コンテンツストリームに関連するコンテンツを見るために、それぞれのメディアプレイヤにおいてチャンネル変更を開始する前記受信者は、それぞれのユーザに応答して命令の受信を行わせる、請求項1記載のデータストリーム再生方法。
【請求項11】
前記データストリーム再生方法は更に、
ネットワーク経由で、パケットベース送信プロトコルに従って少なくとも2個の入力チャンネルでデータ受信することと;
受信した前記データを、前記第1コンテンツストリームと前記第2コンテンツストリームを含む複数の非同期コンテンツストリームに変換するために、MPEGタイプのプロトコルを利用することを含む、請求項1記載のデータストリーム再生方法。
【請求項12】
前記受信者は、タイミング情報の修正によって、前記第1コンテンツストリームに関連するコンテンツと、前記第2コンテンツストリームに関連するコンテンツとを含む前記出力データストリームをシームレスに復号化でき、しかも前記第1コンテンツストリームと前記第2コンテンツストリームを互いに非同期のコンテンツストリームとして受信するにも拘らず、同期化を要しない、請求項10記載のデータストリーム再生方法。
【請求項13】
コンテンツをシームレスに復号化できるようにするデータストリーム復号方法であって、前記データストリーム復号方法は、
複数の非同期コンテンツストリームの第1コンテンツストリームからのコンテンツを含む出力データストリームを生成することであって、前記第1コンテンツストリームからのコンテンツは、関連するタイミング情報を有し、その結果、該当遠隔受信者は、ネットワーク経由でデータストリームを復号化でき、よって前記第1コンテンツストリームからの前記コンテンツを再生可能であることと;
命令の受信に応答して、前記第1コンテンツストリームからコンテンツを送信する代わりに、複数の非同期コンテンツストリームの第2コンテンツストリームから、コンテンツをデータストリームに送信することと;
データストリーム内の前記第1コンテンツストリームの代わりに、前記第2コンテンツストリームからコンテンツを送信することを容易にし、前記第2コンテンツストリームに関連するタイミング情報を前記第1コンテンツストリームに従って修正することによって、該当遠隔受信者は、前記第1コンテンツストリームを復号化するために該当遠隔受信者によって使用されるデコーダ状態情報を用いて、前記第2コンテンツストリームからのコンテンツをシームレスに復号化できるようにすることと
を含むことを特徴とする、データストリーム復号方法。
【請求項14】
前記タイミング情報の修正は、タイミング情報を修正することによって該当遠隔受信者が前記出力データストリームを追尾および再生できるようにすることを含み、
前記出力データストリームは、MPEGで符号化されたデータストリームである、請求項13記載のデータストリーム復号方法。
【請求項15】
前記タイミング情報の修正の少なくとも一部は、前記第1コンテンツストリーム内のIフレームと、前記第2コンテンツストリーム内のIフレームとの間の時間遅延を表す時間オフセットに基づくデータストリームに関連するタイミング情報を修正することを含む、請求項14記載のデータストリーム復号方法。
【請求項16】
前記第1コンテンツストリームからのコンテンツの代わりに前記第2コンテンツストリームに関連するコンテンツを見るために、それぞれのメディアプレイヤにおいてチャンネル変更を開始する該当遠隔受信者で、それぞれのユーザに応答して命令の受信が行われる、請求項15記載のデータストリーム復号方法。
【請求項17】
前記データストリーム復号方法は更に、
複数の互いに異なる非同期コンテンツストリームの各々について、最も新しく受信したストリーム化されたコンテンツのそれぞれのウインドウを保存するリポジトリを維持することを含み、
コンテンツのそれぞれのウインドウは、複数のコンテンツストリームの各々から少なくとも2個の該当Iフレームを保存するのに十分大きい、請求項16記載のデータストリーム復号方法。
【請求項18】
コンピュータに、以下の手順を実行させるためのプログラムを記録したコンピュータ読取可能な記録媒体であって、
コンテンツを、第1コンテンツストリームから出力データストリームに送信する手順と;
命令の受信に応答して、コンテンツを前記第1コンテンツストリームから前記出力データストリームに送信する代わりに、コンテンツを第2コンテンツストリームから前記出力データストリームに送信する手順と;
前記第2コンテンツストリームからのコンテンツに関連するタイミング情報を、前記第1コンテンツストリームからのコンテンツに関連するタイミング情報に従って修正する手順と;
修正後のタイミング情報を前記出力データストリームに送信することによって、前記出力データストリームの受信者が、前記出力データストリームに含まれる前記第1コンテンツストリームからのコンテンツと、前記第2コンテンツストリームからのコンテンツとの両方を復号化するために使用されるのと同じデコーダ状態情報に基づき、前記出力データストリームをシームレスに再生できるようにする手順と
を含むことを特徴とする、コンピュータ読取可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公表番号】特表2010−511357(P2010−511357A)
【公表日】平成22年4月8日(2010.4.8)
【国際特許分類】
【出願番号】特願2009−539457(P2009−539457)
【出願日】平成19年11月28日(2007.11.28)
【国際出願番号】PCT/US2007/085757
【国際公開番号】WO2008/067374
【国際公開日】平成20年6月5日(2008.6.5)
【出願人】(390009597)モトローラ・インコーポレイテッド (649)
【氏名又は名称原語表記】MOTOROLA INCORPORATED
【Fターム(参考)】