特許第6243876号(P6243876)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ロヴィ ガイズ, インコーポレイテッドの特許一覧

特許6243876向上された特殊再生機能のためのシステムおよび方法
<>
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000002
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000003
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000004
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000005
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000006
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000007
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000008
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000009
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000010
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000011
  • 特許6243876-向上された特殊再生機能のためのシステムおよび方法 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6243876
(24)【登録日】2017年11月17日
(45)【発行日】2017年12月6日
(54)【発明の名称】向上された特殊再生機能のためのシステムおよび方法
(51)【国際特許分類】
   H04N 21/472 20110101AFI20171127BHJP
   H04N 21/433 20110101ALI20171127BHJP
   H04N 21/2387 20110101ALI20171127BHJP
   H04N 5/783 20060101ALI20171127BHJP
   H04N 5/775 20060101ALI20171127BHJP
【FI】
   H04N21/472
   H04N21/433
   H04N21/2387
   H04N5/783
   H04N5/775
【請求項の数】20
【全頁数】24
(21)【出願番号】特願2015-151500(P2015-151500)
(22)【出願日】2015年7月31日
(62)【分割の表示】特願2014-40507(P2014-40507)の分割
【原出願日】2006年12月12日
(65)【公開番号】特開2015-216693(P2015-216693A)
(43)【公開日】2015年12月3日
【審査請求日】2015年7月31日
(31)【優先権主張番号】11/365,787
(32)【優先日】2006年2月28日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】514320050
【氏名又は名称】ロヴィ ガイズ, インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【弁理士】
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【弁理士】
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【弁護士】
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】マイケル エル. クレイナー
【審査官】 古川 哲也
(56)【参考文献】
【文献】 米国特許出願公開第2006/0020966(US,A1)
【文献】 特開2000−125260(JP,A)
【文献】 特開2004−023787(JP,A)
【文献】 米国特許出願公開第2004/0197072(US,A1)
【文献】 特開2005−277847(JP,A)
【文献】 米国特許出願公開第2003/0208763(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 − 21/858
H04N 5/76 − 5/956
G06F 3/048 − 3/0489
(57)【特許請求の範囲】
【請求項1】
非オンデマンド映像を巻き戻すための方法であって、前記方法は、
映像伝送の開始点よりも後の第1のアクセスポイントにおいて前記映像にアクセスすることと、
前記第1のアクセスポイントよりも前に伝送された前記映像の内容を含む逆方向ストリームを受信することであって、前記逆方向ストリームは、実質的に連続する逆の順番で第1のアクセスポイントから前記映像の始まりに向かって前記映像を含む、ことと、
前記逆方向ストリームの内容を逆方向バッファ内にキャッシュすることと、
逆方向バーを含む転送制御バーを表示することと
を含み、
前記逆方向バーは、前記第1のアクセスポイントにおいて始まり、逆方向インジケータにおいて終わり、
前記逆方向インジケータは、前記逆方向ストリームの内容が前記逆方向バッファ内にキャッシュされるにつれて、前記第1のアクセスポイントから前記映像の始まりに向かって逆方向に移動し、
前記逆方向インジケータの位置は、前記映像の内容がアクセス可能な最も早いポイントを示す、方法。
【請求項2】
前記逆方向インジケータよりも早い前記映像の内容は、アクセス不可能である、請求項1に記載の方法。
【請求項3】
前記逆方向インジケータの現在の位置に対応する逆方向プレビュー画像を表示することをさらに含む、請求項1に記載の方法。
【請求項4】
前記逆方向プレビュー画像のユーザ選択を受信することと、
前記ユーザ選択を受信したことに応答して、前記選択された逆方向プレビュー画像に対応する前記逆方向インジケータの前記現在の位置から前記映像を再生することと
をさらに含む、請求項3に記載の方法。
【請求項5】
前記転送制御バーは、ユーザに対して現在の再生位置を示す現在のインジケータをさらに含む、請求項1に記載の方法。
【請求項6】
まだ伝送されていない前記映像の内容を含む順方向ストリームを受信することであって、前記順方向ストリームは、前記映像が最初にアクセスされた時間の後から前記映像の終わりに向かって順方向に前記映像をストリームし、前記順方向ストリームは、リアルタイムよりも速く伝送される、ことと、
前記順方向ストリームの内容を順方向バッファ内にキャッシュすることと
をさらに含む、請求項1に記載の方法。
【請求項7】
前記転送制御バーは、順方向バーをさらに含み、
前記順方向バーは、前記第1のアクセスポイントにおいて始まり、順方向インジケータにおいて終わり、
前記順方向インジケータは、前記順方向ストリームの内容が前記順方向バッファ内にキャッシュされるにつれて、前記第1のアクセスポイントから前記映像の終わりに向かって順方向に移動し、
前記順方向インジケータの位置は、前記映像の内容がアクセス可能な最も遅いポイントを示す、請求項6に記載の方法。
【請求項8】
前記順方向インジケータの現在の位置に対応する順方向プレビュー画像を表示することをさらに含む、請求項7に記載の方法。
【請求項9】
前記順方向プレビュー画像のユーザ選択を受信することと、
前記ユーザ選択を受信したことに応答して、前記選択された順方向プレビュー画像に対応する前記順方向インジケータの前記現在の位置から前記映像を再生することと
をさらに含む、請求項8に記載の方法。
【請求項10】
複数の逆方向インジケータと、前記複数の逆方向インジケータのうちの個々のいくつかに関連付けられた複数の逆方向プレビュー画像とを表示することをさらに含む、請求項1に記載の方法。
【請求項11】
非オンデマンド映像を巻き戻すためのシステムであって、前記システムは、
映像伝送の開始点よりも後の第1のアクセスポイントにおいて前記映像にアクセスする手段と、
前記第1のアクセスポイントよりも前に伝送された前記映像の内容を含む逆方向ストリームを受信する手段であって、前記逆方向ストリームは、実質的に連続する逆の順番で第1のアクセスポイントから前記映像の始まりに向かって前記映像を含む、手段と、
前記逆方向ストリームの内容を逆方向バッファ内にキャッシュする手段と、
逆方向バーを含む転送制御バーを表示する手段と
を含み、
前記逆方向バーは、前記第1のアクセスポイントにおいて始まり、逆方向インジケータにおいて終わり、
前記逆方向インジケータは、前記逆方向ストリームの内容が前記逆方向バッファ内にキャッシュされるにつれて、前記第1のアクセスポイントから前記映像の始まりに向かって逆方向に移動し、
前記逆方向インジケータの位置は、前記映像の内容がアクセス可能な最も早いポイントを示す、システム。
【請求項12】
前記逆方向インジケータよりも早い前記映像の内容は、アクセス不可能である、請求項11に記載のシステム。
【請求項13】
前記逆方向インジケータの現在の位置に対応する逆方向プレビュー画像を表示する手段をさらに含む、請求項11に記載のシステム。
【請求項14】
前記逆方向プレビュー画像のユーザ選択を受信する手段と、
前記ユーザ選択を受信したことに応答して、前記選択された逆方向プレビュー画像に対応する前記逆方向インジケータの前記現在の位置から前記映像を再生する手段と
をさらに含む、請求項13に記載のシステム。
【請求項15】
前記転送制御バーは、ユーザに対して現在の再生位置を示す現在のインジケータをさらに含む、請求項11に記載のシステム。
【請求項16】
まだ伝送されていない前記映像の内容を含む順方向ストリームを受信する手段であって、前記順方向ストリームは、前記映像が最初にアクセスされた時間の後から前記映像の終わりに向かって順方向に前記映像をストリームし、前記順方向ストリームは、リアルタイムよりも速く伝送される、手段と、
前記順方向ストリームの内容を順方向バッファ内にキャッシュする手段と
をさらに含む、請求項11に記載のシステム。
【請求項17】
前記転送制御バーは、順方向バーをさらに含み、
前記順方向バーは、前記第1のアクセスポイントにおいて始まり、順方向インジケータにおいて終わり、
前記順方向インジケータは、前記順方向ストリームの内容が前記順方向バッファ内にキャッシュされるにつれて、前記第1のアクセスポイントから前記映像の終わりに向かって順方向に移動し、
前記順方向インジケータの位置は、前記映像の内容がアクセス可能な最も遅いポイントを示す、請求項16に記載のシステム。
【請求項18】
前記順方向インジケータの現在の位置に対応する順方向プレビュー画像を表示する手段をさらに含む、請求項17に記載のシステム。
【請求項19】
前記順方向プレビュー画像のユーザ選択を受信する手段と、
前記ユーザ選択を受信したことに応答して、前記選択された順方向プレビュー画像に対応する前記順方向インジケータの前記現在の位置から前記映像を再生する手段と
をさらに含む、請求項18に記載のシステム。
【請求項20】
複数の逆方向インジケータと、前記複数の逆方向インジケータのうちの個々のいくつかに関連付けられた複数の逆方向プレビュー画像とを表示する手段をさらに含む、請求項11に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像または音声エンターテインメントシステムにおける特殊再生(trick−play)機能のためのシステムおよび方法に関する。
【背景技術】
【0002】
双方向テレビ番組ガイド等の双方向メディアガイダンスアプリケーションは、当技術分野において周知である。いくつかの双方向メディアガイダンスアプリケーションは、映像エンターテインメント装置のユーザに、映像に対し「特殊再生」機能を行う能力を提供する。そのような特殊再生機能は、一時停止、巻き戻し、および早送りを含む。双方向メディアガイダンスアプリケーションが、ネットワークまたは伝送システム(例えば、衛星、ケーブル、または非放送)を介して伝送される映像番組をキャッシュすることによって、ユーザは、映像番組の特殊再生が可能となる。特殊再生機能を提供するために、これらのシステムは、ユーザが番組にチューニングすると(進行中であってもよい)、映像のキャッシュを開始してもよい。その結果、そのようなシステムのユーザは、番組に最初にチューニングした時点に巻き戻すことが可能であるが、それ以前の時間には巻き戻すことはできない。
【発明の概要】
【発明が解決しようとする課題】
【0003】
したがって、ユーザが、映像を最初に映像の視聴を開始した時点より以前の時間に巻き戻し、現在ストリーム配信されているリアルタイム伝送以降の時点に早送りすることが可能な、特殊再生機能のためのシステムおよび方法を提供することが望ましいであろう。
【課題を解決するための手段】
【0004】
本発明の原理にしたがって、映像エンターテインメントシステムにおける特殊再生機能をサポートするためのシステムおよび方法が提供される。限定するためではなく、明確にする目的として、本発明は、テレビ番組等の映像の巻き戻し、一時停止、および早送り機能の提供に照らして、本明細書で説明される場合があるが、任意の他の好適な非オンデマンドメディア(例えば、音声)に適用してもよい。
【0005】
本発明の種々の実施形態では、映像は、デジタルまたはアナログリアルタイムストリームの非オンデマンド形式で、ユーザ(または、ユーザグループ)の機器に配信される。例えば、テレビシステムでは、映像は、放送、ケーブル、または衛星を介して送達され、スケジュールにしたがって提供されてもよい。ユーザから遠隔のサーバは、配信の前または間に、映像のキャッシュまたは記録を行う。
【0006】
クライアントアプリケーション(本明細書では「特殊再生クライアント」と称される場合がある)は、ユーザ機器上に実装される。ユーザがストリームの視聴を開始すると、クライアントは、ユーザが、バッファを介して、ストリームの視聴を開始した時点に巻き戻しできるように、視聴されている映像のキャッシュを開始する。ユーザがアクセスする前に開始された(例えば、自動的に、またはユーザ要求に応じて)映像にユーザがアクセスすると同時に、またはアクセスした後に、クライアントは、サーバによってキャッシュまたは記録された映像のコピーから、サーバによって生成された逆方向ストリームをサーバから受信する。逆方向ストリームは、ユーザが最初に映像にアクセスした時点から逆方向に、完全映像(例えば、任意のフレームをスキップせずに)をストリーム配信する。逆方向ストリーム受信後いつでも、ユーザが映像にアクセスする前に伝送されたコンテンツに対応する映像内の時点に、ユーザが番組を巻き戻すことが可能なように、クライアントは
、逆方向ストリームをローカルにキャッシュする。
【0007】
また、いくつかの実施形態では、クライアントは、映像を受信しながらキャッシュする。これによって、ユーザは、最初にユーザが映像にアクセスする前の時点から、番組を巻き戻して、視聴し、かつユーザの所望に応じて、ユーザが最初に映像にアクセスした時点以降の映像の視聴を継続(または、早送り)することが可能となる。
【0008】
いくつかの実施形態では、クライアントは、キャッシュまたは記録された映像のコピーから、サーバによって生成された順方向ストリームをサーバから受信する。順方向ストリームは、リアルタイムよりも速い速度で、ユーザが最初に映像にアクセスした時点以降の完全映像(例えば、任意のフレームをスキップせずに)をストリーム配信する。順方向ストリームが受信されるとすぐに、映像のリアルタイムストリームより先の時点に、ユーザが番組を早送りすることが可能なように、クライアントは、順方向ストリームをローカルにキャッシュする。映像のリアルタイムストリームは、例えば、本来のリアルタイム映像フィード(例えば、放送フィード)によって提供されてもよい。
【0009】
いくつかの実施形態では、クライアントは、逆方向および/または順方向ストリームを自動的に受信する。他の実施形態では、逆方向および/または順方向ストリームのキャッシングが保証されるように、クライアントは、例えば、ユーザの映像へのアクセスに基づいて、あるいはユーザが映像に関心があることが判断された後、逆方向および/または順方向ストリームを要求する。
(項目1)
非オンデマンド映像を巻き戻すための方法であって、
上記映像の伝送開始後、上記映像にアクセスすることと、
上記映像が最初にアクセスされる前に伝送された映像を含む逆方向ストリームを受信することであって、上記逆方向ストリームは、上記映像が最初にアクセスされた時点から上記映像の先頭に向かって逆方向に、上記映像をストリーム配信することと、
逆方向バッファ内の上記逆方向ストリームをキャッシュすることと、
上記逆方向バッファを介して上記映像を巻き戻すことと、
上記逆方向バッファから上記映像を再生することと
を含む、方法。
(項目2)
上記逆方向ストリームを受信することは、ビット単位の反転、ブロック単位の反転、およびパケット単位の反転のうちの1つにおいて、上記逆方向ストリームを受信することをさらに含む、項目1に記載の方法。
(項目3)
上記逆方向ストリームを受信することは、遠隔サーバから上記逆方向ストリームを受信することをさらに含む、項目1に記載の方法。
(項目4)
上記遠隔サーバが、上記逆方向ストリームに必要な上記映像をキャッシュしたかどうか判断することと、
上記遠隔サーバが、上記逆方向ストリームに必要な上記映像をキャッシュしたという判断に応じて、上記逆方向ストリームを要求することと
をさらに含む、項目3に記載の方法。
(項目5)
ユーザが十分な関心を有し、上記映像の逆方向ストリームを要求する保証があるかどうか判断することと、
ユーザが十分な関心を有し、上記映像の逆方向ストリームを要求する保証があるという判断に応じて、逆方向ストリームを要求することと
をさらに含む、項目1に記載の方法。
(項目6)
ユーザが十分な関心を有していることを判断することは、所与の時間の間に上記ユーザが上記映像を視聴したかどうか判断することと、特殊再生要求を受信することとのうちの1つをさらに含む、項目5に記載の方法。
(項目7)
まだ伝送されていない映像の順方向ストリームを受信することであって、
上記順方向ストリームは、上記映像が最初にアクセスされた時点以降から上記映像の最後に向かって順方向に、ストリーム配信し、
上記順方向ストリームは、リアルタイムよりも速く伝送される、ことと、
順方向バッファ内の上記順方向ストリームをキャッシュすることと、
上記順方向バッファから上記映像を早送りすることと
をさらに含む、項目1に記載の方法。
(項目8)
上記順方向ストリームは、上記映像が最初にアクセスされた時間以降に伝送される上記映像のすべてを含む、項目7に記載の方法。
(項目9)
ユーザが十分な関心を有し、順方向ストリームを要求する保証があるかどうか判断することと、
ユーザが十分な関心を有し、順方向ストリームを要求する保証があるという判断に応じて、順方向ストリームを要求することと
をさらに含む、項目7に記載の方法。
(項目10)
転送制御バーを表示することをさらに含み、該転送制御バーは、上記逆方向バッファおよび上記順方向バッファのうちの少なくとも1つの表現を含む、項目7に記載の方法。
(項目11)
上記逆方向バッファを使用して、上記映像を巻き戻すことと、
上記映像が逆方向巻き戻し画像部分において巻き戻されると、上記映像を表示することと
をさらに含む、項目10に記載の方法。
(項目12)
上記順方向バッファを使用して、上記映像を早送りすることと、
上記映像が順方向プレビュー画像において早送りされると、上記映像を表示することと
をさらに含む、項目10に記載の方法。
(項目13)
少なくとも上記逆方向バッファおよび上記順方向バッファ内に上記映像を全体としてキャッシュすることと、
後でアクセスするための番組記録として、少なくとも上記逆方向バッファおよび上記順方向バッファを保存することと
をさらに含む、項目1に記載の方法。
(項目14)
非オンデマンド映像を早送りするための方法であって、
上記映像全体が伝送される前に、上記映像にアクセスすることと、
順方向ストリームを受信することであって、
上記順方向ストリームは、上記映像が最初にアクセスされた時点から上記映像の最後に向かって順方向に、上記映像をストリーム配信し、
上記順方向ストリームは、上記映像が最初にアクセスされた時点以降に伝送された上記映像のすべてを含み、
上記順方向ストリームは、リアルタイムよりも速く伝送される、ことと、
順方向バッファ内の上記順方向ストリームをキャッシュすることと、
上記順方向バッファから上記映像を早送りすることと、
上記順方向バッファから上記映像の一部を再生することと
を含む、方法。
(項目15)
巻き戻すための非オンデマンド映像をユーザに提供する方法であって、
映像をキャッシュすることと、
逆方向ストリームの要求を受信することであって、上記逆方向ストリームは、上記映像が最初にアクセスされた時点から上記映像の先頭に向かって逆方向に、上記映像をストリーム配信することと、
逆方向ストリームを生成することであって、上記逆方向ストリームは、第1の地点から開始し、第2の地点で終了し、上記第2の地点は、上記映像の先頭により近い、ことと、
上記逆方向ストリームを上記ユーザに伝送することと
を含む、方法。
(項目16)
非オンデマンド映像を巻き戻すためのシステムであって、上記システムは、ディスプレイ装置と、記録装置と、制御回路と、を含み、上記制御回路は、
上記映像の伝送開始後、上記映像にアクセスし、
上記映像が最初にアクセスされる前に伝送された映像を含む逆方向ストリームを受信し、上記逆方向ストリームは、上記映像が最初にアクセスされた時点から上記映像の先頭に向かって逆方向に、上記映像をストリーム配信し、
上記記録装置に、逆方向バッファ内の上記逆方向ストリームをキャッシュさせ、
上記逆方向バッファから上記映像を巻き戻し、
上記ディスプレイ装置に、上記映像が最初にアクセスされる前の時点から上記映像を表示させる
ように構成される、システム。
(項目17)
上記制御回路は、ビット単位の反転、ブロック単位の反転、およびパケット単位の反転のうちの1つにおいて、上記逆方向ストリームを受信するようにさらに構成される、項目16に記載のシステム。
(項目18)
上記制御回路は、遠隔サーバから上記逆方向ストリームを受信するようにさらに構成される、項目16に記載のシステム。
(項目19)
上記制御回路は、
上記遠隔サーバが、上記逆方向ストリームに必要な上記映像をキャッシュしたかどうか判断し、
上記遠隔サーバが、上記逆方向ストリームに必要な上記映像をキャッシュしたという判断に応じて、上記逆方向ストリームを要求する
ようにさらに構成される、項目18に記載のシステム。
(項目20)
上記制御回路は、
ユーザが十分な関心を有し、上記映像の逆方向ストリームを要求する保証があるかどうか判断し、
ユーザが十分な関心を有し、逆方向ストリームを要求する保証があるという判断に応じて、逆方向ストリームを要求する
ようにさらに構成される、項目16に記載のシステム。
(項目21)
上記制御回路は、
まだ伝送されていない映像の順方向ストリームを受信し、
上記順方向ストリームは、上記映像が最初にアクセスされた時点以降から上記映像の最後へ順方向に、上記映像をストリーム配信し、
上記順方向ストリームは、上記映像が最初にアクセスされた時点以降に伝送された上記映像のすべてを含み、
上記順方向ストリームは、リアルタイムよりも速く伝送され、
上記記録装置に、順方向バッファ内の上記順方向ストリームをキャッシュさせ、
上記順方向バッファから上記映像を早送りする
ようにさらに構成される、項目16に記載のシステム。
(項目22)
上記順方向ストリームは、上記映像が最初にアクセスされた時間以降に伝送される上記映像のすべてを含む、項目21に記載のシステム。
(項目23)
上記制御回路は、
ユーザが十分な関心を有し、順方向ストリームを要求する保証があるかどうか判断し、
ユーザが十分な関心を有し、順方向ストリームを要求する保証があるという判断に応じて、順方向ストリームを要求する
ようにさらに構成される、項目21に記載のシステム。
(項目24)
上記制御回路は、上記ディスプレイ装置に、上記逆方向バッファおよび上記順方向バッファのうちの少なくとも1つの表現を含む、転送制御バーを表示させるようにさらに構成される、項目21に記載のシステム。
(項目25)
上記制御回路は、
上記逆方向バッファを使用して、上記映像を巻き戻し、
上記ディスプレイ装置に、上記映像が逆方向巻き戻し画像部分において巻き戻されると、上記映像を表示させる
ようにさらに構成される、項目23に記載のシステム。
(項目26)
上記制御回路は、
上記順方向バッファを使用して、上記映像を早送りし、
上記ディスプレイ装置に、上記映像が順方向プレビュー画像において早送りされると、上記映像を表示させる
ようにさらに構成される、項目23に記載のシステム。
(項目27)
上記制御回路は、
上記記録装置に、少なくとも上記逆方向バッファおよび上記順方向バッファ内に上記映像を全体としてキャッシュさせ、
後で視聴するために、少なくとも上記逆方向バッファおよび上記順方向バッファを保存する
ようにさらに構成される、項目16に記載のシステム
(項目28)
ディスプレイ装置と、記録装置と、制御回路と、を含む、非オンデマンド映像を早送りするためのシステムであって、上記制御回路は、
上記映像全体が伝送される前に、上記映像にアクセスし、
順方向ストリームを受信し、
上記順方向ストリームは、上記映像が最初にアクセスされた時点から上記映像の最後に向かって順方向に、上記映像をストリーム配信し、
上記順方向ストリームは、上記映像が最初にアクセスされた時点以降に伝送された上記映像のすべてを含み、
上記順方向ストリームは、リアルタイムよりも速く伝送され、
上記記録装置に、順方向バッファ内の上記順方向ストリームをキャッシュさせ、
上記順方向バッファから上記映像を早送りし、
上記ディスプレイ装置に、上記順方向バッファから上記映像の一部を再生させる、
ように構成される、システム。
(項目29)
巻き戻しのために、メモリと、制御回路と、を含む、非オンデマンド映像をユーザに提供するためのシステムであって、上記制御回路は、
メモリ内に映像をキャッシュし、
逆方向ストリームの要求を受信し、上記逆方向ストリームは、上記映像が最初にアクセスされた時点から上記映像の先頭に向かって逆方向に、上記映像をストリーム配信し、
逆方向ストリームを生成し、上記逆方向ストリームは、所与の地点から開始し、上記映像の先頭で終了し、
上記逆方向ストリームを上記ユーザに伝送する
ように構成される、システム。
【図面の簡単な説明】
【0010】
図1図1は、本発明の一実施形態による、例示的双方向メディアシステムの略図である。
図2図2は、本発明の一実施形態による、バッファの例示的データ構造を示す。
図3図3は、本発明の一実施形態による、バッファの別の例示的データ構造を示す。
図4図4は、本発明の一実施形態による、転送制御バーを有する例示的ディスプレイを示す。
図5図5は、本発明の一実施形態による、転送制御バーを有する別の例示的ディスプレイを示す。
図6図6は、本発明の一実施形態による、転送制御バーを有するさらに別の例示的ディスプレイを示す。
図7図7は、本発明の一実施形態による、番組グリッドを有する例示的ディスプレイ画面を示す。
図8図8は、本発明の一実施形態による、映像を巻き戻すための例示的プロセスの工程図を示す。
図9図9は、本発明の一実施形態による、映像を早送りするための例示的プロセスの工程図を示す。
図10図10は、本発明の一実施形態による、映像ストリームをユーザ機器に提供するための例示的プロセスの工程図を示す。
図11図11は、本発明の一実施形態による、逆方向および/または順方向バッファから映像を再生するための例示的プロセスの工程図を示す。
【発明を実施するための形態】
【0011】
本発明の上述および他の特長、その本質、および種々の利点は、添付の図面に関連してなされる以下の詳細な説明を検討することによって、より明白となるであろう。
【0012】
図1は、本発明の一実施形態による、例示的双方向メディアシステム100を示す。ユーザ機器110は、通信経路122を介して、メディアソース120から、信号の形態でメディアを受信する。実際は、複数のメディアソース120およびユーザ機器110が存在し得るが、過剰に複雑な図面を回避するため、それぞれ1つずつ図1に示される。
【0013】
メディアソース120は、例えば、ケーブルシステムヘッドエンド、衛星メディア配信設備、メディア放送設備、インターネット・プロトコル・テレビ(インターネット Protocol Television;IPTV)ヘッドエンド、オンデマンドサーバ(例えば、VODサーバ)、ウェブサイト、ゲームサービスプロバイダ(例えば、オンラインゲーム用)、またはメディアを発信または配信するための任意の他の好適な設備または
システム等、任意の好適なメディアソースであってもよい。メディアソース120は、例えば、衛星経路、光ファイバ経路、ケーブル経路、インターネット経路、あるいは任意の他の好適な有線または無線経路を含む、任意の好適な通信経路122を介して、信号を伝送するように構成されてもよい。信号は、例えば、テレビ番組、ゲーム、音楽、ニュース、ウェブサービス、映像、または任意の他の好適なメディア等、任意の好適なメディアを送信してもよい。いくつかの実施形態では、メディアソース120は、特殊再生クライアント、または例えば、オンライン双方向メディアガイダンスアプリケーション等の双方向メディアガイダンスアプリケーションの命令を実行するための制御回路を含んでもよい。
【0014】
ユーザ機器110は、双方向マルチメディア体験を提供するために好適な任意の機器を含んでもよい。ユーザ機器110は、テレビ、セットトップボックス、記録装置、ビデオプレーヤ、ユーザ入力装置(例えば、遠隔制御装置、キーボード、マウス、タッチパッド、タッチスクリーンおよび/または音声認識インターフェース)等のテレビ機器、あるいは双方向マルチメディア体験を提供するために好適な他の任意の装置を含んでもよい。例えば、ユーザ機器110は、Motorola,Inc.社によって提供されるDCT2000、2500、5100、6208、または6412セットトップボックスを含んでもよい。いくつかの実施形態では、ユーザ機器110は、テレビカードを備えたパーソナルコンピュータ(PCTV)等、コンピュータ機器を含んでもよい。いくつかの実施形態では、ユーザ機器110は、ゲームシステム(例えば、X−Box、PlayStation、またはGameCube)、携帯用DVDプレーヤ等の携帯用電子機器、携帯用ゲーム機器、携帯電話、PDA、音楽プレーヤ(例えば、MP3プレーヤ)、または他の任意の好適な携帯用または固定装置を含んでもよい。
【0015】
図1の実施例では、ユーザ機器110は、少なくとも制御回路116、ディスプレイ装置112、ユーザ入力装置114、および記録装置118を含み、別個の装置または単一装置として実装されてもよい。特殊再生クライアントは、ユーザ機器110上に実装され、ディスプレイ装置112上に表示されるメディアの特殊再生機能をユーザに提供してもよい。いくつかの実施形態では、特殊再生クライアントは、双方向テレビ番組ガイド等の双方向メディアガイダンスアプリケーションの一部である。限定するためではなく、明確にする目的として、以下の実施形態は、特殊再生クライアントによって提供されるものとして説明される。
【0016】
ディスプレイ装置112は、例えば、テレビ用モニタ、コンピュータ用モニタ、またはユーザ機器110に組み込まれたディスプレイ(例えば、携帯電話または携帯用音楽プレーヤのディスプレイ)等、任意の好適な装置であってもよい。ディスプレイ装置112は、経路122を介してメディアソース120から伝送されるメディア、および特殊再生クライアントのディスプレイを表示する。また、ディスプレイ装置112は、音声出力を提供するように構成されてもよい。
【0017】
記録装置118は、パーソナル・ビデオ・レコーダ(Personal Video Recorder;PVR)、デジタル・ビデオ・レコーダ(Digital Video Recorder;DVR)、ビデオ・カセット・レコーダ(Video Cassette Recorder;VCR)、DVDレコーダ、または任意の他の好適なビデオレコーダであってもよい。記録装置118は、1つ以上のチューナを含んでもよい。特殊再生クライアントは、記録装置118にサーバ130から逆方向および順方向ストリームをキャッシュさせる。
【0018】
制御回路116は、入力装置114からユーザ入力を受信し、特殊再生クライアントの命令を実行すうように適合される。制御回路116は、1つ以上のチューナ(例えば、アナログまたはデジタルチューナ)、エンコーダおよびデコーダ(例えば、MPEGデコー
ダ)、プロセッサ(例えば、Motorola68000ファミリプロセッサ)、メモリ117(すなわち、RAMおよびハードディスク)、通信回路(例えば、ケーブルモデム回路)、入力/出力回路(例えば、グラフィック回路)、ユーザ機器110の種々の装置への接続部品、およびアナログまたはデジタルメディアプログラミング、番組記録、双方向メディアガイダンス機能を提供するための他の任意の好適な構成要素を含んでもよい。いくつかの実施形態では、制御回路116は、ユーザ機器110の装置のうちの1つの一部、例えば、ディスプレイ112または他の任意の装置(例えば、セットトップボックス、テレビ、およびビデオプレーヤ)の一部として、含まれてもよい。
【0019】
いくつかの実施形態では、特殊再生クライアントは、クライアント/サーバアプローチをユーザに提供してもよい。ユーザ機器110の各インスタンスに対し1つのサーバ、ユーザ機器110の複数のインスタンスに対し1つのサーバ、またはユーザ機器110の各インスタンスに対するプロキシとして機能し得る単一サーバが存在してもよい。
【0020】
任意の好適な数のユーザが、メディアソース120およびデータソース124に接続されたユーザ機器110等の機器を有してもよい。しかし、図を明確にするために、単一ユーザのみの機器が示される。複数ユーザの機器は、ケーブルテレビネットワーク、衛星テレビネットワーク、ローカルエリアネットワーク(Local Area Network;LAN)、無線ネットワーク、インターネット、または他の任意の好適な手段を使用して、メディアソース120およびデータソース124に接続されてもよい。いくつかの実施形態では、複数ユーザの機器は、任意の好適な手段を使用して、互いに接続されてもよい。
【0021】
ユーザ機器110は、1つ以上のデータソース124から双方向メディアガイダンスアプリケーションデータを受信してもよい。データソース124は、特定の種類のメディアまたは特定のアプリケーションのためのデータを提供してもよい。例えば、あるデータソース124は、非オンデマンドメディア(例えば、ノン・ペイおよびペイ・パー・ビュー番組)のためのデータを提供してもよく、別のデータソースは、オンデマンドメディア(例えば、VOD番組)のためのデータを提供してもよい。または、例えば、単一データソースは、これら両方の種類のデータを提供してもよい。また、例えば、単一データソースは、これら両方の種類のデータを提供してもよい。例えば、あるデータソース124は、双方向テレビ番組ガイドのためのデータを提供してもよい。例えば、別のデータソース124は、別の双方向アプリケーション(例えば、ホームショッピングアプリケーション)のためのデータを提供してもよい。いくつかの実施形態では、データソース124は、クライアント/サーバアプローチを使用して、特殊再生クライアントにデータを提供してもよい。データソースにつき1つのサーバ、またはすべてのソースに対し1つのサーバが存在してもよく、あるいはいくつかの実施形態では、単一サーバが、ユーザ機器110と種々のデータソース124との間のプロキシとして通信してもよい。いくつかの実施形態では、データソース124は、オンライン双方向メディアガイダンスアプリケーションとしてデータを提供してもよい。そのような実施形態では、データソース124は、オンラインメディアガイダンスアプリケーションの命令を実行するための制御回路を含んでもよい。
【0022】
図1は、メディアソース120および別個の要素としてのデータソース124を示す。実際は、それらの機能性は、単一設備における単一システム、または複数の設備における複数のシステムから組み合わされ得、提供され得る。例えば、あるメディアソース120およびデータソース124は、組み合わされ得、VODコンテンツおよび付随するVODデータを提供し得る。
【0023】
例示的双方向テレビシステム100は、サーバ130を含む。サーバ130は、例えば
、メディアソース120またはユーザ機器110によって要求される動作を実行するための制御回路132およびメモリ134を含む(例えば、キャッシュされた映像を特殊再生クライアントに提供する)。制御回路132は、1つ以上のチューナ、プロセッサ、エンコーダ/デコーダ、通信回路、および双方向テレビシステム100の種々の装置に接続されたI/O回路、または任意の他の好適な構成要素を含んでもよい。制御回路132は、任意の好適な方法で、例えば、チューナをメディアソース120から伝送されるチャンネルにチューニングさせることによって、メディアソース120によって提供される映像または他のメディアにアクセスしてもよい。別の実施例として、サーバ130は、例えば、メディアソース120へのインターネットプロトコル接続(例えば、ファイル・トランスファー・プロトコルまたはDOCSIS QAMストリーム)を介して、直接映像にアクセスしてもよい。
【0024】
サーバ130は、メディアソース120(例えば、ケーブル設備の末端における)、データソース124、VODサーバ(図示せず)、ユーザ機器110(例えば、第2の記録装置としての、またはホームコンピュータ上のハードドライブ)、インターネットサーバ、または任意の他の好適な装置内に組み込まれてもよい。別様に、サーバ130は、独立型装置(例えば、商用ネットワーク記録装置、または自宅(home)または地域間(neighborhood)ネットワーク内のDVR装置)であってもよい。いくつかの実施形態では、メディアソース120によって提供されるすべてのメディアは、最初にサーバ130に伝送され、続いて、ユーザ機器110にメディアを伝送してもよい。そのような実施形態では、サーバは、メディアを受信しながら、記録(ユーザ起動によるサーバ集約型記録が提供されるシステム内に)またはキャッシュし、続いてまたは同時に、メディアをユーザ機器に伝送してもよい。他の実施形態では、メディアソースは、同時に、サーバとユーザ機器の両方にメディアを提供してもよい。そのような実施形態では、サーバは、特殊再生クライアントによる要求に応じて、ユーザ機器に記録またはキャッシュされたメディアの逆方向および/または順方向ストリームのみ提供してもよい。いくつかの実施形態では、サーバは、メディアソース120からユーザに提供される前に、映像をキャッシュまたは記録してもよい。
【0025】
サーバ130は、ユーザ機器110またはメディアソース120(または双方向メディアシステム100の任意の他の装置)から命令を受信し、好適な動作を行ってもよい。そのような動作は、例えば、メディアソース120から伝送される映像の一部または全部の記録またはキャッシュを含んでもよい。いくつかの実施形態では、サーバ130は、メディアソース120から伝送される映像すべてをキャッシュしてもよい。いくつかの実施形態では、サーバ130は、特定の映像(例えば、特定の放送番組)または特定のチャンネル(例えば、ユーザのお気に入りチャンネル)のみをキャッシュしてもよい。ユーザ機器またはメディアソースは、任意の好適な方法(例えば、チャンネルマップおよびQAMストリームの番組マップ表から、または番組識別子)で特定の映像を識別し、制御回路132と要求を通信し、メモリ134に映像を記録またはキャッシュしてもよい。いくつかの実施形態では、ユーザは、サーバ130上に映像を記録してもよい。そのような実施形態では、サーバ130は、逆方向および/または順方向ストリームの「キャッシュされた」映像として、記録された映像(拡張巻き戻し(enhanced rewind)機能を使用したユーザ以外のユーザのために記録されている場合がある)を使用してもよい。
【0026】
特殊再生クライアント、メディアソース、またはサーバは、任意の好適な基準に基づいて、サーバが記録またはキャッシュし、本発明の拡張巻き戻しおよび早送り機能が利用可能な映像を選択してもよい。そのような基準は、例えば、ユーザの視聴履歴、ユーザが一般的に視聴、記録、リマインダの設定を行う番組またはチャンネル、ユーザプロファイル(例えば、ユーザに一連の質問をすることによって確立されたプロファイル)によって識別されるユーザの関心を含んでもよい。いくつかの実施形態では、基準は、別の番組が記
録されている間にユーザが視聴する番組、ユーザが切り替えた2つ以上の同時に伝送された番組、または番組の開始後、ユーザが視聴を開始した番組の識別を含んでもよい。サーバが限定されたメモリ容量を有する場合、またはユーザがサーバメモリに小容量を割り当てている場合、特殊再生クライアントは、ユーザ用にサーバが記録またはキャッシュする映像の選択をより選別してもよい。
【0027】
拡張巻き戻しおよび早送り機能が利用可能な映像を選択するための他の基準は、双方向メディアシステムのユーザの一部または全部の視聴履歴またはユーザプロファイル、ユーザの一部または全部の人気番組、または双方向メディアシステムの2人以上のユーザまたはユーザの家族に由来する任意の他の基準を含んでもよい。別の実施例として、好ましいメディアプロバイダ(例えば、料金を支払うプロバイダ)によって提供される映像のみ、サーバ上に記録またはキャッシュされてもよい。そのような映像は、「拡張特殊再生可能(provided with enhanced trick play)」としてユーザに識別され、例えば、映像開始後に映像を結合した場合でも、潜在的に映像の先頭に巻き戻し可能であることをユーザに通知してもよい。いくつかの実施形態では、チャンネルが、「拡張特殊再生可能」として識別されてもよい。逆方向バッファ長は、ユーザ(一定時間後)が、番組の開始に前の時点(例えば、2または3時間、あるいは昨日の映像)に巻き戻し可能な十分な長さであってもよい。
【0028】
記録およびキャッシュされた映像は、サーバ130によって、メモリ134内に格納される。メモリ134は、例えば、1つ以上のハードドライブアレイ、ハードディスク、サーバアレイ、RAM、SRAM、DRAM、ROM、フラッシュメモリ、または任意の他の好適なメモリ等、映像を記録またはキャッシュするための任意の好適なメモリであってもよい。いくつかの実施形態では、メモリ134は、記録またはキャッシュされた映像に関連する、制御回路132、ユーザ機器110、メディアソース120、または双方向メディアシステム100の任意の他の装置からの命令を格納してもよい。そのような命令は、例えば、ユーザがアクセス権を有しているメモリ内の映像の保存期間(例えば、階層ベースのシステムにおいて)、または任意の他の好適な命令を含んでもよい。図1の実施例では、メモリ134は、サーバ130の構成要素として示されるが、他の実施形態では、メモリ134は、独立型構成要素であってもよい。
【0029】
ユーザ機器110のユーザが非オンデマンド映像にアクセスすると(例えば、チャンネルへのチューニング等によって)、特殊再生クライアントは、自動的に、ユーザ機器110の記録装置118に、1つ以上のバッファ内に映像をキャッシュさせてもよい。さらに、特殊再生クライアントは、ユーザが最初に映像の視聴を開始する前に伝送された映像の一部を含む、逆方向ストリームの要求をサーバ130に送信してもよい。
【0030】
また、いくつかの実施形態では、特殊再生クライアントは、特殊再生クライアントがまだキャッシュしていない映像の一部を含む、順方向ストリームの要求をサーバ130に送信してもよい。特殊再生クライアントは、順方向ストリームを要求する前に、最初に、映像全体がサーバ130によってキャッシュまたは記録されたかどうか判断してもよい。別様に、特殊再生クライアントは、体系的に、順方向ストリーム要求し、映像の順方向ストリーム部分が利用可能であるかどうかに関して、サーバ130からの応答を待機してもよい。
【0031】
特殊再生クライアントは、例えば、ユーザが映像の視聴を開始(例えば、チャンネルにチューニング)するとすぐ、所与の時間(例えば、1分または5分)後、ユーザからの特殊再生要求に応じて(例えば、一時停止または巻き戻し)、あるいは任意の他の好適な時間を含む、任意の好適な時間で、逆方向および/または順方向ストリームを要求してもよい。
【0032】
逆方向および/または順方向ストリームの要求の受信に応じて、利用可能な場合、サーバ130は、逆方向および/または順方向ストリームを生成し、ユーザ機器110に伝送してもよい。例えば、特殊再生クライアントが、ライブ放送のスポーツ競技の逆方向および順方向ストリームの両方を要求する場合、スポーツ競技全体をキャッシュまたは記録していないため、サーバ130は、逆方向ストリームのみ生成および伝送してもよい。ユーザ機器110に提供される場合、順方向ストリームは、完全映像(例えば、任意のフレームをスキップしない)を含み、リアルタイム映像が伝送されるよりも速い速度で伝送されてもよい(例えば、2倍速)。したがって、順方向ストリームは、リアルタイム映像よりも帯域幅を必要とし得る。同様に、逆方向ストリームは、完全映像(例えば、任意のフレームをスキップせずに)を含み、リアルタイムよりも速い速度で伝送されてもよい。
【0033】
サーバ130は、任意の好適な伝送方式(例えば、MPEG−2 QAMストリームまたはDOCSIS QAMストリーム)を使用して、逆方向および順方向ストリームをユーザ機器110に提供してもよい。例えば、逆方向および順方向ストリームは、映像の伝送に使用されるライブQAMストリーム内の別個の番組として、それぞれ追加されてもよい(例えば、逆方向ストリームは、第1のPID(パケット識別子)内に置かれ、順方向ストリームは、第2のPID内に置かれ、PIDは、QAMストリーム内に存在する)。別の実施例として、逆方向および順方向ストリームは、ライブQAMストリーム内の単一番組として、両方追加されてもよい(例えば、単一PMT(番組マップ表)のPIDは、逆方向映像および音声と順方向映像および音声との両方、ならびに本来のリアルタイム映像および音声を識別してもよい)。さらに別の実施例として、サーバは、それぞれ逆方向および順方向ストリーム1つを含む、1つ以上の新しいQAMストリームを生成してもよい。
【0034】
逆方向ストリームの映像は、例えば、ビット単位の反転(例えば、あたかも、バッファが生成された瞬間からユーザが巻き戻しているように)、ブロック単位の反転、パケット単位の反転、または欠落しているデータのビットをランダムに補完することによって(例えば、ビットトレント(BitTorrent)方式))等、任意の好適な方法で提供されてもよい。反転ビット以外のアプローチには、巻き戻し機能は、特殊再生クライアントによってキャッシュされた映像が、再生をサポートするために十分連続的となる場合のみ利用可能である。
【0035】
特殊再生クライアントは、記録装置118に、サーバ130によって提供される逆方向および/または順方向ストリームを1つ以上のバッファ内にキャッシュさせてもよい。図2は、1つ以上のバッファの例示的データ構造を示す。データ構造200は、表210、バッファ222、および224を含む。表210は、記録装置118(例えば、メモリ220)、制御回路116のメモリ(例えば、RAM)、またはユーザ機器110の任意の他のメモリ内に格納されてもよい。バッファ222および224は、記録装置118のメモリ220内に格納されてもよい(例えば、ハードドライブ上)。表210は、映像ストリームの列(例えば、逆方向および順方向ストリーム)、およびストリームをそれぞれのバッファへリンクさせるポインタの列を含む。サーバ130からの逆方向/順方向ストリームの受信に応じて、特殊再生クライアントは、表210内にストリームの行212および214を生成する。
【0036】
逆方向ストリームによって提供される映像は、逆方向バッファ222内にキャッシュされる。逆方向バッファ内にキャッシュされた現在のフレームFi−rは、ポインタ232によって識別される。逆方向バッファ222は、ユーザが映像の視聴を開始した時に表示されるフレームFから開始し、映像の最初のフレームであるフレームFで終了する。逆方向バッファは、実質的に継続して、フレームFからフレームFに逆方向に(例え
ば、ビット単位の反転で)、逆方向ストリームの映像で補完される。同様に、順方向ストリームによって提供される映像は、順方向バッファ224内にキャッシュされる。順方向バッファ内の現在のフレームFi−fは、ポインタ234によって識別される。順方向バッファ224は、フレームFから開始し、映像の最終フレームであるフレームFで終了する。特殊再生クライアントは、好ましくは、リアルタイムよりも速い速度で、順方向バッファ224内の映像をキャッシュしてもよい。特殊再生クライアントが順方向ストリームを受信しない場合、代わりに、特殊再生クライアントは、順方向バッファ224内に映像のリアルタイムストリームをキャッシュする。
【0037】
いくつかの実施形態では、特殊再生クライアントは、ユーザが所与の時間映像を視聴するまで、逆方向および/または順方向ストリームを要求または受信しない。記録装置118が、所与の時間の間にリアルタイムストリームをキャッシュした場合(例えば、リアルタイムバッファ内に)、特殊再生クライアントは、ユーザが映像の視聴を開始した時に、逆方向ストリームを開始し、所与の時間後、順方向ストリームを開始するように要求してもよい。次いで、図3に示されるように、逆方向バッファ322は、フレームFn−r(例えば、ユーザが映像の視聴を開始したフレーム)から開始し、順方向バッファ324は、フレームFn−f(例えば、所与の時間後の映像のフレーム)から開始し、リアルタイムバッファ326は、フレームFn−rとFn−fとの間の映像を含む。記録装置118が順方向ストリームのキャッシュを開始すると、特殊再生クライアントは、記録装置118に、リアルタイムストリームのキャッシュを停止させ、同一映像が2回キャッシュされることを回避してもよい。別様に、特殊再生クライアントは、リアルタイムバッファ内にキャッシュされた映像を削除し、サーバ130に、同一フレーム、例えば、フレームFn−rとFn−fとの間の任意のフレームから開始する逆方向および順方向ストリームを提供させてもよい。
【0038】
ユーザが特殊再生機能を呼び出すと、特殊再生クライアントは、リアルタイム映像ストリームからの映像を、逆方向バッファならびにリアルタイムおよび/または順方向バッファ内にキャッシュされた映像にシームレスに移行させてもよい。次いで、ユーザの特殊再生機能は、遠隔ではなく、サーバから、記録装置内にローカルに格納されたバッファによって提供される。逆方向バッファ内にキャッシュされた映像を再生するために、特殊再生クライアントは、記録装置118に、フレームFからフレームFまで逆方向バッファ222内にキャッシュされた映像を提供させてもよい。順方向バッファ内にキャッシュされた映像を再生するために、特殊再生クライアントは、記録装置118に、フレームFからフレームFまで順方向バッファ224内にキャッシュされた映像を提供させてもよい。特殊再生クライアントは、表210を使用して(例えば、リンクリスト(linked list)のようなバッファに接続して)、どのバッファを再生するか識別してもよい。
【0039】
特殊再生クライアントは、拡張転送制御バー(enhanced transport
control bar)を使用して、逆方向および順方向バッファの視覚表現を表示してもよい。図4は、ユーザが視聴している映像402の例示的画面400および拡張転送制御バー410を示す。拡張転送制御バー410は、映像402のタイトル412、映像が伝送されるチャンネル414、ならびに映像の開始時間416および終了時間418を含む。拡張転送制御バー410は、ユーザのために映像402の現在の再生位置および時間421を示す、カーソル420を含む。
【0040】
拡張転送制御バー410は、ユーザが最初に映像の視聴を開始した時点を識別する、マーク430を含む。また、拡張転送制御バー410は、逆方向および順方向ストリームがそれぞれキャッシュされる、逆方向および順方向バッファの視覚表現を含む。特に、逆方向バッファ表現432は、マーク430から開始し、映像の先頭へ時間を逆行し、順方向
バッファ表現434は、マーク430から開始し、映像の最後へ時間を前進する。全体としてサーバ130が記録またはキャッシュし、順方向ストリームが利用可能な映像には、順方向バッファ表現434は、リアルタイムストリームからの映像でキャッシュされたリアルタイムバッファを示してもよい。
【0041】
図5は、特殊再生クライアントが、逆方向ストリームおよび順方向ストリームの追加部分を記録装置118内にキャッシュした後の、図4の拡張転送制御バーを示す(図4および5を比較することによって理解され得る)。拡張転送制御バー510では、カーソル520は前進し、現在の再生時間が、図4の拡張転送制御バー410に示される再生時間から16分後の7:36であることを示す。マーク530は、図4から動いていないが、逆方向バッファ532は、映像の先頭まで前進しており、順方向バッファ534は、映像の最後まで前進している。
【0042】
図6は、拡張転送制御バー内の逆方向および順方向バッファの視覚表現の別の例示的ディスプレイを示す。画面600は、ユーザが視聴している映像602および拡張転送制御バー610を含む。拡張転送制御バー610は、映像の開始時間612および終了時間614、ユーザのために現在の再生位置を示すカーソル620、ならびに逆方向バッファ632および順方向バッファ634の表現を含む。また、拡張転送制御バー610は、逆方向プレビュー画像624および順方向プレビュー画像628にそれぞれ付随する、逆方向カーソル622および順方向カーソル626を含む。特に、逆方向プレビュー画像624は、逆方向カーソル622の位置に対応し、順方向プレビュー画像628は、順方向カーソル626の位置に対応してもよい。いくつかの実施形態では、ユーザは、特殊再生クライアントに、複数の逆方向および順方向カーソルならびに付随するプレビュー画像を表示させてもよい。
【0043】
いくつかの実施形態では、逆方向および順方向カーソルは、特殊再生クライアントが現在キャッシュしている、逆方向および順方向ストリームのフレームに対応してもよい。別様に、逆方向および順方向カーソルは、ユーザの特殊再生要求(例えば、プレビュー画像624または628の巻き戻しまたは早送り)に対応してもよい。特殊再生クライアントは、プレビュー画像624および628の一方または両方を自動的に表示してもよく、あるいはユーザは、プレビュー画像の表示を要求してもよい。ユーザが再生を所望するプレビュー画像624または628内の映像の一部をユーザが識別している場合、ユーザは、フル画面でプレビュー画像表示し、選択されたプレビュー画像の再生部分の映像を再生してもよい。
【0044】
映像をキャッシュするためのバッファは、任意にサイズが制限されてもよく、または記録装置118上で利用可能な容量によってのみ制限されてもよい。バッファのサイズに制限がある場合、または記録装置118の利用可能な容量に制限がある場合、バッファは、映像全体をキャッシュするために十分ではない場合がある。拡張特殊再生機能をユーザに提供するためには、特殊再生クライアントは、逆方向および/または順方向ストリームをバッファ内にキャッシュし、必要に応じて、逆方向および/または順方向バッファを上書きし、ユーザ特殊再生要求に適合させてもよい(例えば、逆方向バッファにキャッシュされていない映像まで及ぶ巻き戻し要求に応じて、順方向バッファの代わりにキャッシュされた新しい逆方向ストリームを要求する)。特殊再生クライアントは、代わりにまたは追加で、逆方向および順方向ストリーム内の広告を識別し(例えば、パケット識別子から)、広告をキャッシュしなくてもよい。
【0045】
映像全体がバッファ内にキャッシュされると、クライアントは、自動的に、またはユーザ命令に応じて、将来の視聴のための記録として、キャッシュされた映像を保存してもよい。いくつかの実施形態では、クライアントは、自動的に、またはユーザ命令に応じて、
キャッシュされた不完全な映像をバッファ内に保存してもよい。
【0046】
いくつかの実施形態では、サーバ130は、ユーザ機器110に提供されるすべての映像をキャッシュまたは記録しなくてもよい。したがって、特殊再生クライアントは、逆方向および/または順方向ストリームを要求する前に、サーバ130が映像をキャッシュまたは記録したかどうか判断してもよい。例えば、特殊再生クライアントは、映像が利用可能であるかどうか、サーバ130から表示を受信してもよい。映像が実際に利用可能であるとの判断に応じて、特殊再生クライアントは、逆方向および/または順方向ストリームをサーバ130から要求してもよい。
【0047】
特殊再生クライアントは、任意の好適な時間で、サーバ130が、部分的または全体として映像をキャッシュまたは記録したかどうか判断してもよい。例えば、サーバ130は、特殊再生クライアントのために、定期的間隔で、サーバがキャッシュまたは記録した、あるいは所与の時間(例えば、次の日または週)の間にするであろう、映像を識別してもよい。さらに、サーバ130は、全体として映像がキャッシュまたは記録される時間を、特殊再生クライアントに指定してもよい。それを受けて、特殊再生クライアントは、ユーザのために映像を識別してもよい。例えば、特殊再生クライアントは、アイコンを表示、リスティングに陰影を付与、色を変更、あるいは転送制御バー上または番組グリッド内に任意の他の好適な表示を提供してもよい。
【0048】
図7は、番組リスティングのグリッド702を含む、例示的番組グリッド画面700を示す。サーバ130によってキャッシュまたは記録された、グリッド702内にリストされた番組は、アイコン710および712によって識別される。逆方向アイコン710は、サーバ130が、アイコンに付随する番組を少なくとも部分的にキャッシュまたは記録し、逆方向ストリームが利用可能であることを示す(例えば、「Friends」および「The Sopranos」)。順方向アイコン712は、サーバ130が、アイコンに付随する番組を全体としてキャッシュまたは記録し、順方向ストリームが利用可能であることを示す(例えば、「The Bourne Identity」)。特殊再生クライアントは、逆方向アイコン710および順方向アイコン712の両方を表示し、逆方向および順方向ストリームの両方が利用可能であることを示してもよい。別様に、特殊再生クライアントは、順方向アイコン712のみ表示し、逆方向および順方向ストリームが利用可能であることを示してもよい(例えば、映像全体がキャッシュまたは記録される場合、サーバは、逆方向ストリームを提供し得るからである)。図7は、アイコンを示すが、番組グリッドは、任意の他の好適な表示を含んでもよい。特殊再生クライアントは、1つ以上のインジケータを使用し、ユーザが、逆方向または早送りストリームを要求し得る映像を識別してもよい。
【0049】
以下の工程図は、本発明のいくつかの実施形態に伴うプロセスを例示する役割を果たす。図8は、ユーザが最初に映像の視聴を開始する前の時点に、映像を巻き戻すための例示的プロセスの工程図である。プロセス800は、ステップ802から開始する。ステップ810では、ユーザは、映像がすでに開始された非オンデマンド映像を選択する(例えば、放送開始後の放送番組の視聴を開始する)。例えば、ユーザは、制御回路116内のチューナに、チャンネル番号を入力または好適な特殊再生クライアントディスプレイ(例えば、番組ガイドグリッド)から番組を選択することによって、メディアソース120から提供されるリアルタイムストリームにチューニングさせてもよい。
【0050】
ステップ820では、特殊再生クライアントは、ユーザが映像に十分な関心を有しており、逆方向ストリームを要求することが保証されるかどうか判断する。例えば、特殊再生クライアントは、ユーザが、所与の時間の間、映像を視聴したか、またはユーザが、特殊再生機能(例えば、「巻き戻し」)を呼び出したかどうか判断してもよい。いくつかの実
施形態では、ステップ820に先立って、特殊再生クライアントは、サーバ130が、選択された映像をキャッシュまたは記録したかどうか判断してもよい。しかしながら、図8に示されるプロセスでは、本ステップは、省略されている。ユーザが映像に十分な関心を有し、逆方向ストリームを要求することが保証されないと、特殊再生クライアントが判断する場合、プロセス800は、ステップ852へ進み、終了する。
【0051】
代わりに、ステップ820において、ユーザが映像に十分な関心を有し、逆方向ストリームを要求することが保証されると、特殊再生クライアントが判断する場合、プロセス800は、ステップ830へ進む。ステップ830では、特殊再生クライアントは、サーバ130から逆方向ストリームを要求する。逆方向ストリームは、ユーザが最初に映像を選択した時点より前に、メディアソース120によって伝送された映像を含む。逆方向ストリームの映像は、ユーザが最初に映像を選択された時間から開始し、映像の先頭に時間を逆方向にストリーム配信してもよい。逆方向ストリームは、例えば、ビット単位の反転等、任意の好適な方法で、映像コンテンツを提供してもよい。
【0052】
ステップ840では、特殊再生クライアントは、サーバ130から通信経路122を介して、逆方向ストリームを受信し、記録装置118に、1つ以上の逆方向バッファ内に逆方向ストリームをキャッシュさせる。ステップ850では、特殊再生クライアントは、1つ以上の逆方向バッファを介して映像を巻き戻すことによって、ユーザが最初に映像を選択した時点に映像を巻き戻す。次いで、特殊再生クライアントは、1つ以上の逆方向バッファから、映像を再生してもよい。プロセス800は、ステップ852で終了する。
【0053】
図9は、映像のリアルタイムストリームがまだ達していない時点に、映像を早送りするための例示的プロセスの工程図である。プロセス900は、ステップ902から開始する。ステップ910では、ユーザは、リアルタイムストリーム(例えば、放送番組)によって伝送される非オンデマンド映像を選択する。例えば、ユーザは、制御回路116内のチューナに、チャンネル番号を入力したり、または好適な特殊再生クライアントディスプレイ(例えば、番組ガイドグリッド)から番組を選択したりすることによって、メディアソース120から提供されるリアルタイムストリームにチューニングさせてもよい。
【0054】
ステップ920では、特殊再生クライアントは、サーバ130が、映像全体を記録またはキャッシュしたかどうか判断する。例えば、特殊再生クライアントは、サーバ130から、全体として記録またはキャッシュされた映像の表示を要求してもよい。別の実施例として、特殊再生クライアントは、映像が再放送または反復放送番組の場合(例えば、人気シリーズのエピソードの反復放送エピソード)、サーバ130が、映像を記録またはキャッシュしたかどうか判断してもよい。サーバ130が、映像を記録またはキャッシュしていない場合、特殊再生クライアントが判断する場合、プロセス900は、ステップ962へ進み、終了する。
【0055】
代わりに、ステップ920において、サーバ130が映像を記録またはキャッシュしたと、特殊再生クライアントが判断する場合、プロセス900は、ステップ930へ進む。ステップ930では、特殊再生クライアントは、ユーザが映像に十分な関心を有しており、順方向ストリームを要求することが保証されるかどうか判断する。例えば、特殊再生クライアントは、ユーザが、所与の時間の間、映像を視聴したか、またはユーザが、特殊再生機能(例えば、「早送り」)を呼び出したかどうか判断してもよい。ユーザが映像に十分な関心を有し、順方向ストリームを要求することが保証されないと、特殊再生クライアントが判断する場合、プロセス900は、ステップ962へ進み、終了する。
【0056】
代わりに、ステップ930では、ユーザが映像に十分な関心を有し、順方向ストリームを要求することが保証されると、特殊再生クライアントが判断する場合、プロセス900
は、ステップ940へ進む。ステップ940では特殊再生クライアントは、サーバ130から順方向ストリームを要求する。順方向ストリームは、少なくともユーザが最初に映像を選択した後(例えば、ユーザが順方向ストリームを要求した時点より後)に、メディアソース120によって伝送された映像全体(例えば、任意の映像フレームをスキップせずに)を含む。いくつかの実施形態では、サーバ130は、リアルタイムストリームより速い速度(例えば、2倍速以上で)で、順方向ストリームをユーザ機器110に提供する。
【0057】
ステップ950では、特殊再生クライアントは、サーバ130から通信経路122を介して、順方向ストリームを受信し、記録装置118に、1つ以上の順方向バッファ内に順方向ストリームをキャッシュさせる。ステップ960では、特殊再生クライアントは、順方向バッファを介して、映像を早送りする。次いで、特殊再生クライアントは、1つ以上のキャッシュされた順方向バッファから、映像を再生してもよい。プロセス900は、ステップ962で終了する。
【0058】
図10は、逆方向および順方向ストリームをユーザ機器110に伝送するための例示的工程図である。プロセス1000は、ステップ1002から開始する。ステップ1010では、サーバ130は、例えば、双方向メディアシステム100のユーザ機器110のインスタンスにも提供されるリアルタイムストリームで、メディアソース120から映像を受信する。ステップ1020では、サーバ130は、ステップ1010で受信した映像の一部または全部を記録またはキャッシュするかどうか判断する。サーバ130は、任意の好適な基準(例えば、人気映像または好ましい映像プロバイダ)を使用して、特定の映像を記録またはキャッシュするかどうか判断してもよい。いくつかの実施形態では、メディアソース120、ユーザ機器110、または双方向メディアシステム100の別の装置は、サーバ130のために、どの映像をキャッシュまたは記録するか指定してもよい。
【0059】
ステップ1020において、記録またはキャッシュされるべき映像がないと、サーバが判断する場合、プロセス1000は、ステップ1062へ進み、終了する。代わりに、ステップ1020において、少なくとも1つの特定の映像が記録またはキャッシュされるべきと、サーバが判断する場合、プロセス1000は、少なくとも1つの特定の映像をキャッシュし、ステップ1030へ進む。いくつかの実施形態では、プロセス1000は、ステップ1020をスキップし、単にすべての映像を記録またはキャッシュしてもよい。
【0060】
ステップ1030では、サーバ130は、映像用のユーザ機器110上に実装された特殊再生クライアントから要求を受信する。特殊再生クライアントは、特殊再生クライアントのユーザが、映像の視聴を開始する前に伝送された映像の逆方向ストリームを要求してもよい。また、あるいは代わりに、特殊再生クライアントは、メディアソースから提供される、リアルタイムストリームによってまだ伝送されていない映像の順方向ストリームを要求してもよい。
【0061】
ステップ1040では、サーバ130は、サーバ130が、要求されたストリームに必要な映像を記録またはキャッシュしたかどうか判断する。例えば、ユーザが、順方向ストリームを要求する場合、サーバは、要求された映像が、すでに全体として記録またはキャッシュされたかどうか判断してもよい。サーバ130が、要求されたストリームの全体に必要な映像が記録またはキャッシュされていないと判断する場合、プロセス1000は、ステップ1062へ進み、終了する。
【0062】
代わりに、ステップ1040において、サーバ130が、要求されたストリームに必要な映像の少なくとも一部が記録またはキャッシュされたと判断する場合、プロセス1000は、ステップ1050へ進む。例えば、サーバ130は、順方向ストリームに必要な映像ではなく、逆方向ストリームに必要な映像がキャッシュされたかどうか判断してもよい
。ステップ1050では、サーバ130は、ストリームに必要な映像で、少なくとも1つの要求されたストリーム(例えば、順方向ストリームまたは逆方向ストリーム)を生成する。ステップ1060では、サーバ130は、ステップ1050で生成された少なくとも1つの要求されたストリームを、通信経路122を介して、ユーザ機器110上に実装された特殊再生クライアントに伝送する。プロセス1000は、ステップ1062で終了する。
【0063】
図11は、ユーザ機器110を用いて、逆方向バッファおよび順方向バッファ内にキャッシュされた映像を再生するための例示的工程図である。プロセス1100は、ステップ1102から開始する。ステップ1110では、特殊再生クライアントは、逆方向バッファおよび順方向バッファ内にキャッシュされた少なくとも一部の映像をバッファから再生する、ユーザ要求を受信する。例えば、特殊再生クライアントは、先頭から映像を再生する、ユーザ要求受信してもよい。
【0064】
ステップ1120では、特殊再生クライアントは、ユーザが、映像の再生を所望する映像フレームを識別する。例えば、ユーザが、逆方向バッファから映像を巻き戻している際に、「再生」キーを選択する場合、特殊再生クライアントは、ユーザが「再生」キーを選択した時間に表示された映像フレームを識別してもよい。
【0065】
ステップ1130では、特殊再生クライアントは、ステップ1120で識別された映像フレームが逆方向バッファ内にあるかどうか判断する。映像フレームが逆方向バッファ内にあると、特殊再生クライアントが判断する場合、プロセス1100は、ステップ1140へ進む。ステップ1140では、特殊再生クライアントは、識別されたフレームをディスプレイ装置112に表示し、続いて、逆方向バッファの先頭に進み、逆方向バッファ内にキャッシュされた次のフレームを表示する。例えば、逆方向バッファがフレームFから開始し、フレームFで終了し(すなわち、番組の先頭)、特殊再生クライアントがフレームFを識別した場合、特殊再生クライアントは、フレームF、次いでフレームFi+1、フレームFi+2と、フレームFまで表示する。言い換えると、特殊再生クライアントは、先入れ後出し方式で、バッファを介して進む。
【0066】
ステップ1150では、特殊再生クライアントは、逆方向バッファの最終フレームを表示し、順方向バッファに移行する。いくつかの実施形態では、特殊再生クライアントは、代わりに、リアルタイムバッファに移行してもよい(例えば、順方向バッファがない場合、または逆方向バッファと順方向バッファとの間にリアルタイムバッファがある場合)。
【0067】
ステップ1160では、特殊再生クライアントは、順方向バッファの最初のフレームをディスプレイ装置112上に表示し、続いて、順方向バッファの最後に進み、順方向バッファ内にキャッシュされた次のフレームを表示する。例えば、順方向バッファが、フレームFから開始し、フレームF(すなわち、番組の最後)で終了する場合、特殊再生クライアントは、フレームF、次いでフレームFn+1、フレームFn+2と、フレームFまでを表示する。言い換えると、特殊再生クライアントは、先入れ先出し方式で、バッファを介して進む。
【0068】
また、プロセス1100は、ステップ1130において、特殊再生クライアントが、逆方向バッファ内に映像フレームがない(例えば、識別されたフレームが、順方向バッファ内にある)と判断する場合、ステップ1160にアクセスしてもよい。この場合、特殊再生クライアントが、順方向バッファの最初のフレームを初めに表示する代わりに、特殊再生クライアントは、ステップ1120で識別されたフレームを初めに表示する。次いで、プロセス1100は、ステップ1162で終了する。
【0069】
上述の本発明の実施形態は、例示目的のために提示されており、何ら制限されるものではなく、本発明は、以下の請求項によってのみ制限される。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11