(57)【要約】      （修正有）【課題】１次メディア・ストリーム内に２次メディア・ストリームを表示させる方法を提供する。【解決手段】ユーザ視聴の対象として選択された１次メディア・ストリーム及び２次メディア・ストリームが受信され、前記２次メディア・ストリーム内のメタデータから１組のインセット定義が抽出される。該インセット定義に関するユーザ選択がなされる。選択された前記インセット定義のサイズを収容するように前記１次メディア・ストリームをトリミングするユーザ入力がなされる。前記１次メディア・ストリームは、前記ユーザ入力に基づいてトリミングされ、それによって前記１次メディア・ストリーム内に前記２次メディア・ストリームを表示させるインセット・エリアが作成される。前記２次メディア・ストリームは、前記１次メディア・ストリームの前記インセット・エリア内に表示される。【選択図】図３
2010226706.tif 000002
【特許請求の範囲】
【請求項１】
１次メディア・ストリーム内に２次メディア・ストリームを表示させるデータ処理システムにおけるコンピュータ実装方法であって、
表示装置上での同時ユーザ視聴の対象となる複数の多重チャンネルに由来する２つのメディア・ストリームに関する第１のユーザ選択が受信されたことに応答して、同時ユーザ視聴の対象として選択された前記２つのメディア・ストリームに由来する１次メディア・ストリーム及び２次メディア・ストリームに関する第２のユーザ選択を受信するステップと、
前記２次メディア・ストリーム内のメタデータから１組のインセット定義を抽出するステップと、
前記２次メディア・ストリームの前記メタデータに含まれる前記１組のインセット定義に由来するインセット定義に関する第３のユーザ選択を受信するステップと、
選択された前記インセット定義のサイズを収容するように前記１次メディア・ストリームをトリミングするユーザ入力を受信するステップと、
前記ユーザ入力に基づいて前記１次メディア・ストリームをトリミングして前記１次メディア・ストリーム内に前記２次メディア・ストリームを表示させるインセット・エリアを作成するステップと、
前記２次メディア・ストリームを前記表示装置上での同時ユーザ視聴のためにトリミングされた前記１次メディア・ストリームの前記インセット・エリア内に表示させるステップと、
を含むコンピュータ実装方法。
【請求項２】
前記第１のユーザ選択、前記第２のユーザ選択、前記第３のユーザ選択、及び前記ユーザ入力を将来の参照用にユーザ・プリファレンスとして前記ストレージ・デバイス内のユーザ・プリファレンス・ファイルに格納するステップ
を更に含む、請求項１に記載のコンピュータ実装方法。
【請求項３】
前記インセット定義は、前記１次メディア・ストリーム内の前記インセット・エリアに含められる前記２次メディア・ストリームの名前をリストし、前記１次メディア・ストリームの前記インセット・エリア内のインセットとして使用される２次メディア・ストリーム内のコンテンツの特定の位置を指定し、前記インセットを前記１次メディア・ストリーム内の特定のインセット・エリア内に配置するための前記インセットの優先度値を設定し、前記インセットの記述を提供する、請求項１に記載のコンピュータ実装方法。
【請求項４】
前記インセットは、前記１次メディア・ストリーム内に配置される複数のインセットのうちの１つであり、前記複数の各インセットは、それぞれ異なる２次メディア・ストリームから取得される、請求項３に記載のコンピュータ実装方法。
【請求項５】
前記インセット・エリアは、前記１次メディア・ストリーム内の複数のインセット・エリアのうちの１つであり、前記複数の各インセットは、前記複数の各インセット毎に設定された前記優先度値に基づいて前記複数の各インセット・エリア内に個別に配置される、請求項４に記載のコンピュータ実装方法。
【請求項６】
前記ユーザ・プリファレンスは、ユーザが前記表示装置上で１つ又は複数の２次メディア・ストリームを前記１次メディア・ストリーム内でどのような形で同時視聴したいと望むかを定義する、請求項２に記載のコンピュータ実装方法。
【請求項７】
トリミングされた前記１次メディア・ストリームの前記インセット・エリア内の前記２次メディア・ストリームは、ユーザによって設定される様々な透過度で表示される、請求項１に記載のコンピュータ実装方法。
【請求項８】
メディア・ストリーム供給業者は、特定のテレビジョン・チャンネルのメディア・ストリーム・コンテンツ内の１つ又は複数のインセット・エリアを定義する、請求項１に記載のコンピュータ実装方法。
【請求項９】
前記メディア・ストリーム供給業者は、ネットワーク帯域幅の使用を抑えるために、特定のテレビジョン・チャンネルの配信を、前記特定のテレビジョン・チャンネルのメディア・ストリームのうちユーザに実際に視聴されている部分だけに制限する、請求項８に記載のコンピュータ実装方法。
【請求項１０】
前記メディア・ストリーム供給業者は、インセット広告エリアの対象年齢層を定義し、対象年齢層の定義は、前記１次メディア・ストリームのコンテンツと関係付けられる、請求項８に記載のコンピュータ実装方法。
【請求項１１】
１次メディア・ストリーム内に２次メディア・ストリームを表示させるデータ処理システムであって、
バス・システムと、
前記バス・システムに接続され、１組の命令を含むストレージ・デバイスと、
前記バス・システムに接続された処理ユニットと、
を備え、
前記処理ユニットは、
表示装置上での同時ユーザ視聴の対象となる複数の多重チャンネルに由来する２つのメディア・ストリームに関する第１のユーザ選択が受信されたことに応答して、１次メディア・ストリーム及び２次メディア・ストリームに関する第２のユーザ選択を受信するステップと、
前記２次メディア・ストリーム内のメタデータから１組のインセット定義を抽出するステップと、
前記２次メディア・ストリームの前記メタデータに含まれる前記１組のインセット定義に由来するインセット定義に関する第３のユーザ選択を受信するステップと、
選択された前記インセット定義のサイズを収容するように前記１次メディア・ストリームをトリミングするユーザ入力を受信するステップと、
前記ユーザ入力に基づいて前記１次メディア・ストリームをトリミングして前記１次メディア・ストリーム内に前記２次メディア・ストリームを表示させるインセット・エリアを作成するステップと、
前記２次メディア・ストリームを前記表示装置上での同時ユーザ視聴のためにトリミングされた前記１次メディア・ストリームの前記インセット・エリア内に表示させるステップと、
を含む前記１組の命令を実行する、データ処理システム。
【請求項１２】
前記処理ユニットは、前記第１のユーザ選択、前記第２のユーザ選択、前記第３のユーザ選択、及び前記ユーザ入力を将来の参照用にユーザ・プリファレンスとして前記ストレージ・デバイス内のユーザ・プリファレンス・ファイルに格納するステップを含む１組の命令を更に実行する、請求項１１に記載のデータ処理システム。
【請求項１３】
前記ユーザ・プリファレンスは、ユーザが前記表示装置上で１つ又は複数の２次メディア・ストリームを前記１次メディア・ストリーム内でどのような形で同時視聴したいと望むかを定義する、請求項１２に記載のデータ処理システム。
【請求項１４】
トリミングされた前記１次メディア・ストリームの前記インセット・エリア内の前記２次メディア・ストリームは、ユーザによって設定される様々な透過度で表示される、請求項１１に記載のデータ処理システム。
【請求項１５】
１次メディア・ストリーム内に２次メディア・ストリームを表示させるコンピュータ・プログラムであって、
表示装置上での同時ユーザ視聴の対象となる複数の多重チャンネルに由来する２つのメディア・ストリームに関する第１のユーザ選択が受信されたことに応答して、１次メディア・ストリーム及び２次メディア・ストリームに関する第２のユーザ選択を受信するステップと、
前記２次メディア・ストリーム内のメタデータから１組のインセット定義を抽出するステップと、
前記２次メディア・ストリームの前記メタデータに含まれる前記１組のインセット定義に由来するインセット定義に関する第３のユーザ選択を受信するステップと、
選択された前記インセット定義のサイズを収容するように前記１次メディア・ストリームをトリミングするユーザ入力を受信するステップと、
前記ユーザ入力に基づいて前記１次メディア・ストリームをトリミングして前記１次メディア・ストリーム内に前記２次メディア・ストリームを表示させるインセット・エリアを作成するステップと、
前記２次メディア・ストリームを前記表示装置上での同時ユーザ視聴のためにトリミングされた前記１次メディア・ストリームの前記インセット・エリア内に表示させるステップと、
をコンピュータに実行させるコンピュータ・プログラム。
【請求項１６】
前記第１のユーザ選択、前記第２のユーザ選択、前記第３のユーザ選択、及び前記ユーザ入力を将来の参照用にユーザ・プリファレンスとして前記ストレージ・デバイス内のユーザ・プリファレンス・ファイルに格納するステップ
を更にコンピュータに実行させる、請求項１５に記載のコンピュータ・プログラム。
【請求項１７】
前記インセット定義は、前記１次メディア・ストリーム内の前記インセット・エリアに含められる前記２次メディア・ストリームの名前をリストし、前記１次メディア・ストリームの前記インセット・エリア内のインセットとして使用される２次メディア・ストリーム内のコンテンツの特定の位置を指定し、前記インセットを前記１次メディア・ストリーム内の特定のインセット・エリア内に配置するための前記インセットの優先度値を設定し、前記インセットの記述を提供する、請求項１５に記載のコンピュータ・プログラム。
【請求項１８】
前記インセットは、前記１次メディア・ストリーム内に配置される複数のインセットのうちの１つであり、前記複数の各インセットは、それぞれ異なる２次メディア・ストリームから取得される、請求項１７に記載のコンピュータ・プログラム。
【請求項１９】
前記インセット・エリアは、前記１次メディア・ストリーム内の複数のインセット・エリアのうちの１つであり、前記複数の各インセットは、前記複数の各インセット毎に設定された前記優先度値に基づいて前記複数の各インセット・エリア内に個別に配置される、請求項１８に記載のコンピュータ・プログラム。
【請求項２０】
前記ユーザ・プリファレンスは、ユーザが前記表示装置上で１つ又は複数の２次メディア・ストリームを前記１次メディア・ストリーム内でどのような形で同時視聴したいと望むかを定義する、請求項１６に記載のコンピュータ・プログラム。
【請求項２１】
トリミングされた前記１次メディア・ストリームの前記インセット・エリア内の前記２次メディア・ストリームは、ユーザによって設定される様々な透過度で表示される、請求項１５に記載のコンピュータ・プログラム。
【請求項２２】
メディア・ストリーム供給業者は、特定のテレビジョン・チャンネルのメディア・ストリーム・コンテンツ内の１つ又は複数のインセット・エリアを定義する、請求項１５に記載のコンピュータ・プログラム。
【請求項２３】
前記メディア・ストリーム供給業者は、ネットワーク帯域幅の使用を抑えるために、特定のテレビジョン・チャンネルの配信を、前記特定のテレビジョン・チャンネルのメディア・ストリームのうちユーザに実際に視聴されている部分だけに制限する、請求項２２に記載のコンピュータ・プログラム。
【請求項２４】
前記メディア・ストリーム供給業者は、インセット広告エリアの対象年齢層を定義し、対象年齢層の定義は、前記１次メディア・ストリームのコンテンツと関係付けられる、請求項２２に記載のコンピュータ・プログラム。
【請求項２５】
１次メディア・ストリーム内に２次メディア・ストリームを表示させるデータ処理システムにおけるコンピュータ実装方法であって、
ユーザが表示装置上で２次メディア・ストリームを前記１次メディア・ストリーム内で同時視聴するためのインセット・エリアとして使用される、ビデオ出力内の１次メディア・ストリームの一部分を選択する第１のユーザ入力を受信するステップと、
前記第１のユーザ入力に基づいて前記１次メディア・ストリーム内に前記インセット・エリアを作成するステップと、
前記２次メディア・ストリームを前記１次メディア・ストリーム内の前記インセット・エリアに適合するようにトリミングする第２のユーザ入力を受信するステップと、
前記第２のユーザ入力に基づいて前記２次メディア・ストリームを前記インセット・エリアに適合するようにトリミングするステップと、
トリミングされた前記２次メディア・ストリームを前記表示装置上での同時ユーザ視聴のために前記１次メディア・ストリームの前記インセット・エリア内に表示させるステップと、
前記第１のユーザ入力及び前記第２のユーザ入力を将来の参照用にユーザ・プリファレンスとしてストレージ・デバイス内のユーザ・プリファレンス・ファイルに格納するステップと、
を含むコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に改良型データ処理システムに関するものであり、より詳細には、放送テレビジョン・チャンネルの一部分を別の放送テレビジョン・チャンネル又は記録番組の一部分上にオーバーレイするコンピュータ実装方法、システム、及びコンピュータ使用可能なプログラム・コードに関するものである。
【背景技術】
【０００２】
デジタル・ビデオ・レコーダ（ＤＶＲ）又はパーソナル・ビデオ・レコーダ（ＰＶＲ）は、デジタル・フォーマットのビデオをハード・ディスク・ドライブ又は他のストレージ・メディア上に記録するデバイスである。「ＤＶＲ」という用語は、ハード・ディスク・ドライブとの間のビデオの取り込み（ｃａｐｔｕｒｅ）及び再生（ｐｌａｙｂａｃｋ）を可能にするスタンド・アロン・セット・トップ・ボックス及びパーソナル・コンピュータ用ソフトウェアを含む。２００９年には米国内の４７４０万世帯がＤＶＲを有すると推定される。
【０００３】
ＤＶＲは、便利な「タイム・シフト（ｔｉｍｅ  ｓｈｉｆｔｉｎｇ）」を含めたいくつかの拡張機能をビデオ・カセット・レコーダ（ＶＣＲ）のような同様のデバイスに提供する。タイム・シフトは、ストレージ・メディアに記録される番組がユーザにとってより都合の良い時間に視聴されるようにする機能である。また、ＤＶＲは、ライブ・テレビジョン（ＴＶ）の一時停止、興味を引くシーンのインスタント・リプレイ、追っかけ再生（ｃｈａｓｉｎｇ  ｐｌａｙｂａｃｋ）、広告スキップのような「トリック・モード（ｔｒｉｃｋ  ｍｏｄｅ）」も可能にする。ライブＴＶの一時停止は、ユーザがビデオを停止し静止フレームを表示させることを可能にするＤＶＲの機能である。多くの場合、ユーザはそのビデオを一時停止の時点から再開することができる。インスタント・リプレイは、ユーザが最近レンダリングされたビデオを迅速にレビューすることを可能にするＤＶＲの機能である。追っかけ再生は、ＤＶＲのタイム・シフト機能である。追っかけ再生は、ユーザが番組の最後まで記録を続けながらライブＴＶの視聴、停止、又は一時停止を同時に行うことを可能にする。大部分のＤＶＲは、アナログ・ビデオ信号のエンコードにＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ：動画像専門家グループ）フォーマットを使用する。
【０００４】
また、多くのＤＶＲ及びＴＶ受信機は、ピクチャー・イン・ピクチャー（ＰｉＰ）として知られる機能を提供する。ＰｉＰを用いると、視聴者（ｖｉｅｗｅｒ）は２つの個別のチューナを使用して２つのメディア部分を同時に視聴（ｖｉｅｗ）することが可能となる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
典型的には、１次メディア選択は音声付きのフル・スクリーンで視聴され、２次メディア選択はインセット・ウィンドウ（ｉｎｓｅｔ  ｗｉｎｄｏｗ）内に表示される。ＰｉＰ技術を用いると、ユーザは２つのメディア・ストリーム又はチャンネルを視聴することが可能となるが、ＰｉＰ技術では各メディア・ストリームのフレーム全体が表示されてしまう。各メディア・ストリームは、例えば可動インセット・ウィンドウを用いて左右、上下、又は画面全体に表示されるが、いずれの場合も両方のメディア・ソースのメディア・ストリーム又は「画面」全体が表示されてしまう。
【課題を解決するための手段】
【０００６】
本発明の一実施形態によれば、１次メディア・ストリーム内に２次メディア・ストリームが表示される。表示装置上での同時ユーザ視聴の対象となる複数の多重チャンネルに由来する２つのメディア・ストリームに関する第１のユーザ選択が受信されたことに応答して、同時ユーザ視聴の対象として選択された前記２つのメディア・ストリームに由来する１次メディア・ストリーム及び２次メディア・ストリームに関する第２のユーザ選択が受信される。次に、前記２次メディア・ストリーム内のメタデータから１組のインセット定義（ｉｎｓｅｔ  ｄｅｆｉｎｉｔｉｏｎ）が抽出される。前記２次メディア・ストリームの前記メタデータに含まれる前記１組のインセット定義に由来するインセット定義に関する第３のユーザ選択が受信される。選択された前記インセット定義のサイズを収容するように前記１次メディア・ストリームをトリミングするユーザ入力が受信される。次に、前記１次メディア・ストリームは、前記ユーザ入力に基づいてトリミングされ、それによって前記１次メディア・ストリーム内に前記２次メディア・ストリームを表示させるインセット・エリア（ｉｎｓｅｔ  ａｒｅａ）が作成される。次に、前記２次メディア・ストリームは、前記表示装置上での同時ユーザ視聴のためにトリミングされた前記１次メディア・ストリームの前記インセット・エリア内に表示される。
【図面の簡単な説明】
【０００７】
【図１】例示的な諸実施形態を実施することが可能なデータ処理システムのネットワークを示す図である。
【図２】例示的な諸実施形態を実施することが可能なデータ処理システムの図である。
【図３】例示的な一実施形態に係る放送信号受信機（ｂｒｏａｄｃａｓｔ  ｓｉｇｎａｌ  ｒｅｃｅｉｖｅｒ）を例示するブロック図である。
【図４】例示的な一実施形態に係るオーバーレイ・マトリクス（ｏｖｅｒｌａｙ  ｍａｔｒｉｘ）を有するビデオ出力を例示する図である。
【図５】例示的な一実施形態に係る可動水平マーカ（ｍｏｖａｂｌｅ  ｈｏｒｉｚｏｎｔａｌ  ｍａｒｋｅｒ）を有するビデオ出力を例示する図である。
【図６】例示的な一実施形態に係る複数のインセット領域（ｉｎｓｅｔ  ｒｅｇｉｏｎ）を有するビデオ出力を例示する図である。
【図７】例示的な一実施形態に係る拡張マークアップ言語（ＸＭＬ）インセット定義の具体例を示す図である。
【図８】メディア・ストリームによって定義された領域に基づいてトリミング（ｃｒｏｐ）される複数のビデオ出力を同時に表示させる例示的な一実施形態に係る例示的なプロセスを示すフローチャートである。
【図９】ユーザによって定義された領域に基づいてトリミングされる複数のビデオ出力を同時に表示させる例示的な一実施形態に係る例示的なプロセスを示すフローチャートである。
【発明を実施するための形態】
【０００８】
当業者には理解されるように、本発明は、システム、方法、あるいはコンピュータ・プログラムとして実施することができる。したがって、本発明は、全体としてハードウェアの実施形態の形をとることも、全体としてソフトウェア（ファームウェア、常駐ソフトウェア、マイクロコード等を含む）の実施形態の形をとることもでき、ソフトウェアとハードウェアの諸態様を組み合わせた実施形態とすることもできる。本明細書では一般に、これらをすべて「回路」、「モジュール」、又は「システム」と呼ぶ。更に、本発明は、コンピュータ使用可能なプログラム・コードが実装された任意の有形の媒体に実装されるコンピュータ・プログラムの形をとることもできる。
【０００９】
１つ又は複数のコンピュータ使用可能な媒体又はコンピュータ読取り可能な媒体の任意の組合せを利用することもできる。例えば、コンピュータ使用可能な媒体又はコンピュータ読取り可能な媒体は、必ずしもそれだけに限定されるわけではないが、電子系媒体、磁気系媒体、光学系媒体、電磁気系媒体、赤外線系媒体、又は半導体系媒体、装置、デバイス、あるいは伝搬媒体であってもよい。コンピュータ読取り可能な媒体のより具体的な例としては、１つ又は複数の配線を有する電気接続、携帯型コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、消去再書込可能読み取り専用メモリ（ＥＰＲＯＭ、又はフラッシュ・メモリ）、光ファイバ、携帯型コンパクト・ディスクＲＯＭ（ＣＤ‐ＲＯＭ）、光ストレージ・デバイス、インターネットやイントラネット等をサポートする伝送媒体、あるいは磁気ストレージ・デバイスを挙げることができる（但し、これは網羅的なリストではない）。プログラムは、例えば紙又は他の媒体を光学的に走査することによって電子的に取り込まれ、その後必要に応じて適切な形でコンパイル、解釈（インタプリット）、又は他の方法で処理された後、コンピュータ・メモリに記憶することが可能であるため、コンピュータ使用可能な媒体又はコンピュータ読取り可能な媒体は、プログラムが印刷される紙又は別の適切な媒体であってもよいことに留意していただきたい。本明細書の文脈において、コンピュータ使用可能な媒体又はコンピュータ読取り可能な媒体は、命令実行システム、装置、又はデバイスによってあるいはそれらに関連して使用されるプログラムを収容し記憶し通信し伝搬し又は移送することができる任意の媒体であってよい。コンピュータ使用可能な媒体は、コンピュータ使用可能なプログラム・コードが実装され、ベースバンド内又は搬送波の一部として伝搬されるデータ信号を含むことができる。コンピュータ使用可能なプログラム・コードは、必ずしもそれだけに限定されるわけではないが、無線、有線、光ファイバ・ケーブル、ＲＦ等を含めた任意の適切な媒体を使用して伝送することができる。
【００１０】
本発明の動作を実行するコンピュータ・プログラム・コードは、Ｊａｖａ（ＴＭ）、Ｓｍａｌｌｔａｌｋ（ＴＭ）、Ｃ＋＋等のオブジェクト指向プログラミング言語、及び「Ｃ」プログラミング言語や同様のプログラミング言語のような従来の手続き型プログラミング言語を含めた１つ又は複数のプログラミング言語の任意の組合せで書くことができる。上記プログラム・コードは、スタンド・アロン・ソフトウェア・パッケージとしてユーザのコンピュータ上で全体的に実行することも部分的に実行することもでき、ユーザのコンピュータ及び遠隔コンピュータにおいてそれぞれ部分的に実行することも、遠隔コンピュータ又はサーバ上で全体的に実行することもできる。後者のシナリオにおいて、遠隔コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）又は広域ネットワーク（ＷＡＮ）を含めた任意のタイプのネットワークを介してユーザのコンピュータに接続することができ、あるいは（例えばインターネット・サービス・プロバイダを使用してインターネットを介して）外部のコンピュータに接続することもできる。
【００１１】
以下では、本発明の諸実施形態に係る方法、装置（システム）、及びコンピュータ・プログラムが図示されるフローチャート又はブロック図あるいはその両方を参照しながら本発明について説明する。フローチャート又はブロック図あるいはその両方に示される各ブロック、及びフローチャート又はブロック図あるいはその両方に示される各ブロックの組合せは、コンピュータ・プログラム命令によって実行可能であることが理解されるだろう。
【００１２】
これらのコンピュータ・プログラム命令は、コンピュータ又は他のプログラマブル・データ処理装置のプロセッサを介して実行される命令により、フローチャート又はブロック図あるいはその両方に示される１つ又は複数のブロックで指定される機能／動作を実行する手段が提供されるように、汎用コンピュータ又は専用コンピュータのプロセッサ、あるいは機械を生成する他のプログラマブル・データ処理装置のプロセッサに提供することができる。これらのコンピュータ・プログラム命令は、コンピュータ又は他のプログラマブル・データ処理装置に特定の形で機能するよう指示することが可能なコンピュータ読取り可能な媒体に記憶することもでき、その結果、フローチャート又はブロック図あるいはその両方に示される１つ又は複数のブロックで指定される機能／動作を実行する命令手段を含むプログラムが生成されるようにすることもできる。
【００１３】
上記コンピュータ・プログラム命令は、コンピュータ又は他のプログラマブル・データ処理装置上にロードすることもでき、その結果、当該コンピュータ又は他のプログラマブル装置上で実行される命令によってフローチャート又はブロック図あるいはその両方に示される１つ又は複数のブロックで指定される機能／動作を実行するプロセスが実現されるようなコンピュータ実装プロセスを生成する一連の処理ステップが、当該コンピュータ又は他のプログラマブル装置上で実行されるようにすることもできる。
【００１４】
ここで添付図面、特に図１乃至図３を参照すると、例示的な諸実施形態を実施することが可能なデータ処理環境の例示的な図が示されている。図１乃至図３は単なる例示にすぎず、諸種の例示的な実施形態を実施することが可能なデータ処理環境を限定することを主張するものではなく、そのように暗示することも意図しているわけではないことを理解していただきたい。図示の環境には様々な変更を施すことができる。
【００１５】
図１は、例示的な諸実施形態を実施することが可能なデータ処理システムのネットワークを示す図表現である。ネットワーク・データ処理システム１００は、例えば例示的な諸実施形態が実施され得るコンピュータ、放送信号受信機、他のデバイス等のデータ処理システムから成るネットワークである。放送信号受信機は、例えばＴＶセット又はセット・トップ・ボックスであってよい。ＤＳＳボックスやケーブル・ボックスのようなセット・トップ・ボックスは、ＴＶ及び外部信号ソースに接続され、信号をコンテンツに変換した後ＴＶの画面上に表示させるデバイスである。
【００１６】
ネットワーク・データ処理システム１００は、ネットワーク１０２を含む。ネットワーク１０２は、ネットワーク・データ処理システム１００内で互いに接続される様々なデバイス間の通信リンクを提供するのに使用される媒体である。ネットワーク１０２は、有線通信リンク、無線通信リンク、光ファイバ・ケーブルのような接続を含むことができる。
【００１７】
図示の例において、サーバ１０４及びサーバ１０６は、ストレージ・ユニット１０８と共にネットワーク１０２に接続される。サーバ１０４及びサーバ１０６は、ケーブル・テレビジョン、衛星テレビジョン、光ファイバ・テレビジョン番組サービス・プロバイダのようなＴＶ番組サービス・プロバイダである。また、サーバ１０４及びサーバ１０６は、それらのサービス・プロバイダがＴＶ番組サービスを提供するのに必要となるコンピュータ及び他のデバイスのネットワークとすることもできる。
【００１８】
ストレージ１０８は、構造化又は非構造化フォーマットのデータを記憶することが可能な任意のタイプのストレージ・デバイスである。また、ストレージ１０８は、ネットワーク１０２と結合される複数のストレージ・ユニットを表すこともできる。ストレージ１０８は、例えば個人情報や個人番組視聴のプリファレンス設定のような顧客データ、又はテレビジョン番組サービス・プロバイダ用のテレビジョン番組データ、あるいはその両方が格納されるデータベースとすることができる。
【００１９】
更に、ネットワーク１０２にはクライアント・デバイス１１０、１１２、及び１１４も接続される。クライアント・デバイス１１０、１１２、及び１１４は、例えば放送信号受信機、パーソナル・コンピュータ、あるいはメディア放送信号を受信することが可能な他の任意のデバイスとすることができる。本例において、クライアント・デバイス１１０、１１２、及び１１４は、サーバ１０４又はサーバ１０６あるいはその両方に対するクライアントである。サーバ１０４及びサーバ１０６は、テレビジョン番組コンテンツを含む複数のメディア・データ・ストリームをクライアント・デバイス１１０、１１２、及び１１４に提供する。また、サーバ１０４及びサーバ１０６は、ブート・ファイル、オペレーティングシステム・イメージ、アプリケーションのような他のデータをクライアント・デバイス１１０、１１２、及び１１４に提供することもできる。更に、ネットワーク・データ処理システム１００は、図示されていない追加的なサーバ、クライアント、及び他のデバイスを含むこともできる。
【００２０】
言うまでもなく、ネットワーク・データ処理システム１００は、例えばイントラネット、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、インターネット等、いくつかの異なるタイプのネットワークとして実施される可能性もある。また、図１は単なる一例にすぎず、諸種の例示的な実施形態のアーキテクチャ上の限定として意図されたものではないことに留意していただきたい。
【００２１】
次に図２を参照すると、例示的な諸実施形態を実施することが可能なデータ処理システムのブロック図が示されている。データ処理システム２００は、例示的な諸実施形態のプロセスを実施するコンピュータ使用可能なプログラム・コード又は命令が内部に配置され得る図１のサーバ１０４のようなコンピュータ、あるいは図１のクライアント・デバイス１１０のようなクライアント・デバイスの一例である。図示の例において、データ処理システム２００は、プロセッサ・ユニット２０４と、メモリ２０６と、永続ストレージ２０８と、通信ユニット２１０と、入出力（Ｉ／Ｏ）ユニット２１２と、ディスプレイ・ユニット２１４との間の通信を提供する通信ファブリック２０２を含む。
【００２２】
プロセッサ・ユニット２０４は、メモリ２０６にロード可能なソフトウェア用の命令を実行する働きをする。プロセッサ・ユニット２０４は、特定の実装環境に応じて１つ又は複数のプロセッサ・セットとすることもマルチ・プロセッサ・コアとすることもできる。更に、プロセッサ・ユニット２０４は、メイン・プロセッサが２次プロセッサと共に単一のチップ上に存在する１つ又は複数の異種プロセッサ・システムを使用して実施することもできる。別の例として、プロセッサ・ユニット２０４は、同一のタイプの複数のプロセッサを含む対称マルチ・プロセッサ・システムとすることができる。
【００２３】
これらの例において、メモリ２０６は、例えばランダム・アクセス・メモリ（ＲＡＭ）あるいは他の任意の適切な揮発性又は不揮発性ストレージ・デバイスとすることができる。永続ストレージ２０８は、特定の実装環境に応じて様々な形をとることができる。例えば、永続ストレージ２０８は、１つ又は複数のコンポーネント又はデバイスを収容することができる。例えば、永続ストレージ２０８は、ハード・ディスク・ドライブ、フラッシュ・メモリ、再書き込み可能な光ディスク、再書き込み可能な磁気テープ、又はこれらの何らかの組合せとすることができる。また、永続ストレージ２０８によって使用される媒体は、取り外し可能とすることができる。例えば、取り外し可能なハード・ディスク・ドライブを永続ストレージ２０８として使用することができる。また、永続ストレージ２０８は、複数の永続ストレージ・ユニットとすることもできる。
【００２４】
これらの例において、通信ユニット２１０は、例えば図１のサーバ１０４やサーバ１０６のような他のデータ処理システム又はデバイスとの間の通信を提供する。これらの例において、通信ユニット２１０はネットワーク・インターフェース・カードである。通信ユニット２１０は、物理通信リンクと無線通信リンクの一方又は両方を使用して通信を提供することができる。
【００２５】
Ｉ／Ｏユニット２１２は、データ処理システム２００に接続され得るＴＶセットのような他のデバイスとの間のデータ入出力を可能にする。例えば、Ｉ／Ｏユニット２１２は、英数字キーボードを介したユーザ入力用の接続を提供することができる。ディスプレイ・ユニット２１４は、データ処理システム２００のユーザに情報を表示する機構を提供する。
【００２６】
オペレーティング・システム及びアプリケーション又はプログラム用の命令は、永続ストレージ２０８上に配置される。オペレーティング・システムは、例えばＬｉｎｕｘ（Ｒ）オペレーティング・システムであってよい。アプリケーションは、例えば番組選択及び制御ロジックを含む放送信号受信機ソフトウェアであってよい。
【００２７】
これらのオペレーティング・システム及びアプリケーション又はプログラム用の命令は、プロセッサ・ユニット２０４による実行のためにメモリ２０６にロードすることができる。様々な実施形態に係るプロセスは、メモリ２０６のようなメモリ内に配置され得るコンピュータ実装命令を使用してプロセッサ・ユニット２０４によって実行することができる。これらの命令は、プログラム・コード、コンピュータ使用可能なプログラム・コード、又はコンピュータ読取り可能なプログラム・コードと呼ばれ、プロセッサ・ユニット２０４内のプロセッサによって読み取られ実行され得る。諸種の例示的な実施形態におけるプログラム・コードは、メモリ２０６や永続ストレージ２０８のような諸種の物理的な又は有形のコンピュータ読取り可能な媒体上で実施することができる。
【００２８】
プログラム・コード２１６は、コンピュータ読取り可能な媒体２１８上に機能的な形で配置され、プロセッサ・ユニット２０４による実行のためにデータ処理システム２００にロード又は転送することができる。これらの例において、プログラム・コード２１６及びコンピュータ読取り可能な媒体２１８は、コンピュータ・プログラム２２０を形成する。一例において、コンピュータ読取り可能な媒体２１８は、永続ストレージ２０８の一部であるドライブ又は他のデバイスに挿入又は装填され、永続ストレージ２０８の一部であるハード・ドライブのようなストレージ・デバイス上に転送される光ディスクや磁気ディスクのような有形の形態をとることができる。また、有形の形態をとる場合、コンピュータ読取り可能な媒体２１８は、データ処理システム２００に接続されるハード・ドライブやフラッシュ・メモリのような永続ストレージの形をとることもできる。有形の形態をとるコンピュータ読取り可能な媒体２１８は、コンピュータ記録可能ストレージ・メディア（ｃｏｍｐｕｔｅｒ  ｒｅｃｏｒｄａｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉａ）とも呼ばれる。
【００２９】
別の方法では、プログラム・コード２１６は、通信ユニット２１０への通信リンク又はＩ／Ｏユニット２１２への接続あるいはその両方を介して、コンピュータ読取り可能な媒体２１８からデータ処理システム２００に転送することができる。図示の例において、上記の通信リンク又は接続あるいはその両方は物理的なものであっても無線であってもよい。また、上記のコンピュータ読取り可能な媒体は、プログラム・コードを含む通信リンクや無線伝送のような非有形媒体の形をとることもできる。
【００３０】
データ処理システム２００に関して図示される様々なコンポーネントは、諸種の例示的な実施形態が実施され得る様式のアーキテクチャ上の限定を意味するものではない。諸種の例示的な実施形態は、データ処理システム２００に関して図示されるものに加えてあるいはそれらに代わる他のコンポーネントを含むデータ処理システム内で実施することもできる。図２に示される他のコンポーネントは、図示の例と異なる可能性がある。
【００３１】
例えば、システム・バスや入出力バスのような１つ又は複数のバスから構成され得るバス・システムを使用して通信ファブリック２０２を実装することができる。言うまでもなく、このバス・システムは、それ自体に接続された様々なコンポーネント又はデバイス間のデータ転送を実現する任意の適切なタイプのアーキテクチャを使用して実装することができる。また、通信ユニットは、データの送受信に使用されるモデムやネットワーク・アダプタのような１つ又は複数のデバイスを含むことができる。更に、メモリは、例えば通信ファブリック２０２内に存在する可能性があるインターフェース及びメモリ・コントローラ・ハブ内で見受けられるようなメモリ２０６又はキャッシュとすることができる。
【００３２】
次に図３を参照すると、例示的な一実施形態に係る放送信号受信機を例示するブロック図が示されている。受信機３００は、例えば図１のクライアント・デバイス１１０であってよく、図２のデータ処理システム２００内で実施することが可能である。受信機３００は、表示装置３０２と結合される。受信機３００及び表示装置３０２は、ＴＶセットのような同一のデバイス内に配置することができることに留意していただきたい。別の方法では、受信機３００及び表示装置３０２は、個別のデバイス内に配置することができる。例えば、受信機３００をケーブル・ボックスのようなセット・トップ・ボックス内に配置し、表示装置３０２をＴＶセット内に配置することができる。
【００３３】
受信機３００は、例えばケーブル放送、衛星放送、又は光ファイバ放送メディア信号をＴＶ番組サービス・プロバイダから受信することができる。受信機３００は、プロセッサ・ユニット３０４、データ・バッファ及びハード・ドライブ（ＨＤ）・ストレージ３０６、チューナ３０８、及びチューナ３１０を含む。プロセッサ・ユニット３０４は、例えば図２のプロセッサ・ユニット２０４とすることができる。プロセッサ・ユニット３０４は、受信機３００の処理能力を提供する。
【００３４】
データ・バッファ及びＨＤストレージ３０６は、例えば図２のメモリ２０６及び永続ストレージ２０８とすることができる。データ・バッファ及びＨＤストレージ３０６は、受信機３００のデータ記憶能力を提供する。データ・バッファは、例えば選択されたチャンネル番号の着信放送メディアの一時データ記憶を実現することができる。例示的な諸実施形態は、例えば各チューナ毎に３０分のデータ・バッファ（ｔｈｉｒｔｙ  ｍｉｎｕｔｅ  ｄａｔａ  ｂｕｆｆｅｒ）を提供することができる。しかしながら、例示的な諸実施形態は、各チューナ毎により大きい又はより小さいデータ・バッファを提供することもできることに留意していただきたい。ＨＤストレージは、データの永続的な記憶を実現する。
【００３５】
データ・バッファ及びＨＤストレージ３０６は、制御ロジック３１２を記憶する。制御ロジック３１２は、例えば図２のコンピュータ・プログラム２２０とすることができる。制御ロジック３１２は、受信機３００内のメディア・ストリーム・トリミング・プロセスのようなすべてのプロセスを制御するロジックを提供する。
【００３６】
チューナ３０８及びチューナ３１０は、多重チャンネル入力（ｍｕｌｔｉｐｌｅｘｅｄ  ｃｈａｎｎｅｌｓ  ｉｎｐｕｔ）３１４を受信する。多重チャンネル入力３１４は、１つ又は複数のＴＶ番組サービス・プロバイダから提供される複数の着信ＴＶチャンネル・メディア・ストリームである。チューナ３０８及びチューナ３１０は、着信された多重チャンネル入力３１４をデコードして、視聴者によって現在視聴されるライブ・メディア・コンテンツ、又は視聴者の要求に応じて後で視聴されるタイム・シフト・メディア記録（ｔｉｍｅ  ｓｈｉｆｔ  ｍｅｄｉａ  ｒｅｃｏｒｄｉｎｇ）、あるいはその両方を取り込む。チューナ３０８とチューナ３１０は共にこれらの機能のいずれかを実行することができる。また、受信機３００は３つ以上のチューナを含むことも可能であることに留意していただきたい。したがって、受信機３００は、受信機３００内に含まれるチューナ数に応じて３つ以上のＴＶチャンネル・メディア・ストリームを同時に取り込むことができる。
【００３７】
受信機３００は、ライブ・メディア・コンテンツ・データ及びタイム・シフト・メディア記録データをデータ・バッファ及びＨＤストレージ３０６に記憶する。次に、受信機３００は、制御ロジック３１２を利用することにより、保存されているライブ・メディア・コンテンツ・データ又はタイム・シフト・メディア記録データあるいはその両方を使用してビデオ出力３１６を形成する。また、受信機３００は、やはり多重チャンネル入力３１４に含まれる可能性があるチャンネル・ガイド・データ、セットアップ・メニュー、及び制御データの記憶及び出力を行うことができる。更に、受信機３００は、ユーザ視聴プリファレンス（ｕｓｅｒ  ｖｉｅｗｉｎｇ  ｐｒｅｆｅｒｅｎｃｅ）の記録及び記憶を行うこともできる。ユーザ視聴プリファレンスは、例えばユーザが表示装置３０２上で複数のＴＶチャンネル・メディア・ストリームをどのような形で同時視聴したいと望むかを定義することができる。
【００３８】
制御ロジック３１２は、複数のＴＶチャンネル・メディア・ストリームのどの部分がビデオ出力３１６に含められるか、また、複数のＴＶチャンネル・メディア・ストリームがそれぞれビデオ出力３１６のどこに組み込まれるかを制御する。制御ロジック３１２は、ユーザ視聴プリファレンス入力に基づいて様々なＴＶチャンネル・メディア・ストリームに由来する所望のコンテンツを使用してビデオ出力３１６を生成した後、ビデオ出力３１６を表示装置３０２に送信する。表示装置３０２は、ビデオ出力３１６を視聴者に表示する。表示装置３０２は、例えばＴＶセット又はコンピュータの表示画面とすることができる。
【００３９】
例示的な諸実施形態は、ＤＶＲ及び従来のＴＶチューナにおいて、エンド・ユーザ、メディア供給業者、又はメディア・ストリーム自体が全体のメディア・ストリームのうちの一部分又は一領域だけが表示画面内でユーザに表示されている別のメディア・ストリーム内の特定の位置にインセット表示（ｉｎｓｅｔ  ａｎｄ  ｄｉｓｐｌａｙ）されるように定義する機能を含む拡張ＰｉＰ機能を提供するコンピュータ実装方法、システム、コンピュータ使用可能なプログラム・コードを提供する。例えば、例示的な一実施形態において、ユーザは、画面上に表示されている１次メディア・ストリームの上部２０％の範囲内に２次メディア・ストリームの下部２０％がインセットとして表示されるように指定することができる。別の例示的な実施形態では、ＴＶチャンネルのメディア・ストリーム自体が、そのメディア・ストリームの一領域、例えば「ニュース・ティッカー（ｎｅｗｓ  ｔｉｃｋｅｒ）」等を２次メディア・ストリーム・コンテンツとして容易に選択及び検索され得る高優先度アイテムとし、別のＴＶチャンネルの１次メディア・ストリーム内のインセットとして表示されるように定義することができる。それ故、例示的な諸実施形態は、エンド・ユーザ体験を改善することができ、場合によってはネットワーク帯域幅の使用効率も高めることができる。
【００４０】
例示的な諸実施形態は、同時に使用され得る少なくとも２つの個別のチューナを有する受信機を利用する。しかしながら、３つ以上のチューナを有する受信機を利用することもでき、その場合は、例示的な諸実施形態において複数の異なるＴＶチャンネルに由来する２つ以上の２次メディア・ストリーム・インセットを提供することが可能となる。また、例示的な諸実施形態は、ＴＶチャンネル・メディア・ストリーム・ネットワークに適用されるものとして説明されているが、例示的な諸実施形態の範囲及び趣旨から逸脱しない限り、例えばインターネット、ビデオ会議、協調作業環境、ビデオ・オン・デマンド、他のタイプのマルチメディア・ネットワーキング・アプリケーション等、任意のタイプのネットワーク・コンピューティング環境に適用され得ることも当業者には理解されるだろう。
【００４１】
例示的な一実施形態では、メディア・ストリーム自体が受信側の放送信号受信機に配信され理解される追加的な情報又はメタデータを利用して、メディア・ストリーム内の領域を定義する。メタデータは、例えばクローズド・キャプション（ｃｌｏｓｅｄ  ｃａｐｔｉｏｎｉｎｇ）と同様の情報配信方法を使用して配信することができる。また、メタデータは、例えばインセット表示に使用される事前定義されたメディア・ストリーム領域の記述と定義の両方を行うＸＭＬのような標準的な定義フォーマットであってよい。メディア・ストリーム・コンテンツと共に配信されるメタデータは、メディア・ストリーム・コンテンツを選択し、そのメディア・ストリーム・コンテンツが１次メディア・ストリームの１つ又は複数の特定の領域内に表示されるインセットとして識別されたことを理解させるための直観的なユーザ・インターフェースを構築するのに使用することができる。１次メディア・ストリーム内のこれらのインセット領域は、１つ又は複数の選択方法を利用して選択することが可能である。例えば、ユーザは、メニュー・リスト選択を使用して領域１と領域３だけを１つ又は複数の２次メディア・ストリーム用のインセット領域として使用することや、優先度設定を使用して優先度１（ｐｒｉｏｒｉｔｙ  ｏｎｅ）のすべての領域を２次メディア・ストリーム用のインセット・エリアとして使用することが可能である。
【００４２】
また、特定のチャンネルの１次メディア・ストリームは、１次メディア・ストリームのコンテンツを補足する異なるチャンネルに由来する１つ又は複数の２次メディア・ストリームが１次メディア・ストリーム内のインセットとして使用されることを示すことができる。例えば、ユーザが表示装置上で１次メディア・コンテンツとして視聴しているＣＮＮのようなチャンネルのメディア・ストリームは、１次メディア・ストリームのコンテンツを補足する別のチャンネルのメディア・ストリームの一部分又は一領域、例えばＣＮＮヘッドライン・ニュースのニュース・ティッカー等が１次メディア・コンテンツのインセット・エリア内のインセットとして使用されることを、直観的なユーザ・インターフェースを介してユーザに示すことができる。更に、この直観的なユーザ・インターフェースを使用するユーザは、例えばその基準が満足された場合に２次メディア・コンテンツを含むインセットを１次メディア・ストリームのコンテンツ内で自動的に「ポップ・アップ」させることが可能となるタイミングを指定する１組の基準又はルールを定義することができる。例えば、ユーザは、ＤＯＷが設定ポイント又は設定パーセンテージを下回った場合に、ＣＮＢＣのような指定された２次メディア・ストリーム・ソースのニュース・ティッカーが１次メディア・ストリームのコンテンツ内のインセットとして自動的に表示されるようにするルールを定義することができる。
【００４３】
別の例示的な実施形態では、ケーブル会社や衛星会社のようなメディア・ストリーム・コンテンツ供給業者が特定のチャンネルに関するメディア・ストリーム・コンテンツ用のインセット領域を定義することができる。この例示的な実施形態には複数の利点が存在する可能性がある。例えば、特定のチャンネルに関するメディア・ストリーム・コンテンツのどの領域又は部分がユーザに視聴されているのかを知ることにより、メディア・ストリーム供給業者は、その特定のチャンネルの配信を実際に視聴されているメディア・ストリームの領域だけに制限することができ、そのためネットワーク帯域幅の使用を抑えることができる。
【００４４】
また、メディア・ストリーム供給業者は、広告チャンネルに複数のインセット広告領域が含まれるように定義し、その結果ユーザがそれらのインセット広告領域のうちの１つ又は複数を視聴対象として自発的に選択することが可能となるように定義することができる。メディア・ストリーム供給業者は、それらのインセット広告領域のユーザによる視聴を促すために、例えばサービス料金の割引といったインセンティブを与えることができる。そのような割引料金プランのユーザによって特定のインセット広告領域が選択されない場合に、メディア・ストリーム供給業者は、例えば優先度の高いインセット領域ほど広告主に課す広告料を高くすること等によってメディア・ストリーム供給業者に追加的な収入機会が与えられ得るような優先度選択システム（ｐｒｉｏｒｉｔｙ  ｓｅｌｅｃｔｉｏｎ  ｓｙｓｔｅｍ）を利用することができる。
【００４５】
更に、メディア・ストリーム供給業者は、メディア・ストリーム・コンテンツ内に含まれるＸＭＬ情報によって提供されるメタデータに追加的な属性を追加することができる。例えば、メディア・ストリーム供給業者は、優先度選択システムを適用する代わりにインセット広告領域の対象年齢層を定義することができる。対象年齢層の定義は、１次メディア・ストリームのコンテンツと関係付けることができる。例えば、幼い子供に視聴されるアニメ番組に最適なインセット広告が表示されるような相関を作成することができる。その結果、１次メディア・コンテンツ（即ちアニメ番組）内のインセット広告領域には、定義された最低対象年齢層に関連するインセット広告が表示される。
【００４６】
また別の例示的な実施形態において、エンド・ユーザは、２次メディア・コンテンツを表示するインセット・エリアとして使用される１次メディア・ストリームの領域を定義することができる。ユーザは、例えば遠隔制御装置上又は受信機のユーザ入力パネル上のユーザ入力を介してパーセンテージ値と、下端、上端、左端、右端のような基準点（ｓｔａｒｔｉｎｇ  ｒｅｆｅｒｅｎｃｅ）とを入力することにより、表示中の１次メディア・ストリームの下部２０％や上部１０％のようなパーセンテージを指定することによってインセット領域を定義することができる。
【００４７】
これらのインセット領域の１つ又は複数の選択は、例えば図４の例で示されるように１次メディア・ストリーム上に表示される番号付きオーバーレイ・マトリクスを利用して達成することができる。ユーザは、例えばこのオーバーレイ・マトリクスに関連するインセット領域１０、インセット領域１１、インセット領域１４、インセット領域１５のような１つ又は複数の特定の値を入力することにより、１つ又は複数の２次メディア・ストリームを表示するインセット・エリアとして使用される領域を指定することができる。更に、１つ又は複数のインセット領域の選択は、図５の例で示されるような水平マーカ・オーバーレイ（ｍｏｖｉｎｇ  ｈｏｒｉｚｏｎｔａｌ  ｍａｒｋｅｒ  ｏｖｅｒｌａｙ）及び垂直マーカ・オーバーレイ（ｖｅｒｔｉｃａｌ  ｍａｒｋｅｒ  ｏｖｅｒｌａｙ）の移動によって達成することができ、ユーザはこれらを個別に又は組み合わせて利用して所望のインセット表示エリアを形成することができる。ユーザは、例えば遠隔制御部上の矢印キーを利用することにより、水平オーバーレイ・マーカ又は垂直オーバーレイ・マーカあるいはその両方を配置して１つ又は複数の２次チャンネルのメディア・ストリーム・コンテンツを表示させるインセット・エリアを作成することができる。
【００４８】
更に、１つ又は複数のインセット領域の選択は、インセット表示領域を作成する写真トリミング・モデルを利用して達成することもできる。ユーザは、例えばトラックボールを有する機能拡張遠隔制御装置を使用することにより、１次メディア・ストリームをトリミングして１次メディア・ストリーム内に２次メディア・コンテンツを表示させるインセット領域を作成することができる。また、この機能拡張遠隔制御装置を用いると、ユーザは、機能拡張遠隔制御装置上に位置する「スワップ・ボタン（ｓｗａｐ  ｂｕｔｔｏｎ）」を利用してスワップ機能を開始することが可能となる。スワップ機能を用いると、ユーザは、１次メディア・エリア内に位置するコンテンツと２次メディア・インセット・エリア内に位置するコンテンツとを迅速にスワップ又は交換することが可能となる。例えば、ユーザは、１次メディア・エリア内のコンテンツとしてＣＮＮを視聴し、２次メディア・インセット・エリア内のコンテンツとしてＥＳＰＮスポーツ・ティッカー（ｓｐｏｒｔｓ  ｔｉｃｋｅｒ）を視聴している可能性がある。機能拡張遠隔制御装置上のスワップ・ボタンを介してスワップ機能がアクティブ化されると、ユーザは、１次メディア・エリア内のコンテンツをＥＳＰＮメディア・ストリーム（例えばスポーツ・イベント）に切り替え、２次メディア・インセット・エリア内のコンテンツをＣＮＮメディア・ストリームのニュース・ティッカーに切り替えることができる。
【００４９】
選択されたインセット領域は、ユーザ、メディア、又はメディア供給業者によって定義された特定の位置に対話式にオーバーレイすることができることに留意していただきたい。別の方法では、選択されたインセット領域と１次メディア・コンテンツとを左右又は上下にセットすることができる。また、選択されたインセット領域は、使用可能な画面占有領域（ｓｃｒｅｅｎ  ｒｅａｌ  ｅｓｔａｔｅ）の四分区間のうちの１つに配置することができる。更に、上述の各方法はそれぞれ単独で使用することも場合によっては１つ又は複数の他の方法と組み合わせて使用することもでき、それによって例えば「Ｌ字型」インセット表示エリアのようなカスタマイズされたインセット表示エリアを提供することができる。そのため、例示的な諸実施形態は、矩形又は正方形のインセット領域の表示にのみ限定されるものではない。また、例示的な諸実施形態は、例えば円形、楕円形、三角形、八角形、六角形、五角形、他の任意の規則的な形状又は星形のような不規則な形状のインセット領域を表示させることができる。更に、例示的な諸実施形態では、インセット・エリアを別のインセット・エリア内に表示させることもでき、各インセット・エリアが異なる形状を有することもできる。
【００５０】
また、上述の例示的な実施形態はそれぞれ独立して使用することも互いに関連して使用することもできることに留意していただきたい。例えば、ユーザは、ユーザ定義の領域を利用してインセット・メディア・コンテンツの配置を選択することができるとともに、メディア定義の領域を利用してインセット内に表示させるメディア・コンテンツを選択することもできる。更に、１つ又は複数の異なるＴＶチャンネルに由来するインセット・メディア・ストリーム・コンテンツを収容するために、より大きい１次メディア・コンテンツ領域、即ち非インセット・エリアをＰｉＰの場合と同様にスケーリングあるいはトリミングすることができることに留意していただきたい。
【００５１】
更に、例示的な諸実施形態では、インセット・メディア・ストリーム・コンテンツ領域を様々な透過度で表示させることが可能となる。透過度は、例えば各インセット・メディア・ストリーム領域毎又はすべてのインセット・メディア・ストリーム領域を対象に、ユーザ遠隔制御入力又は記憶されているユーザ視聴プリファレンスを利用して０％〜１００％のようなパーセンテージ値で設定することができる。
【００５２】
次に図４を参照すると、例示的な一実施形態に係るオーバーレイ・マトリクスを有するビデオ出力が例示されている。ビデオ出力４００は、例えば図３のビデオ出力３１６とすることができる。ビデオ出力４００は、放送信号受信機のビデオ出力であり、このビデオ出力は、図３の受信機３００内の制御ロジック３１２のような制御ロジックによって制御される。この特定の例において、ビデオ出力４００は、ユーザに視聴される特定のＴＶチャンネルの１次メディア・ストリームのコンテンツを図３の表示装置３０２のような表示装置上に表示させたものである。
【００５３】
放送信号受信機の制御ロジックは、例えばオーバーレイ・マトリクス４０２をビデオ出力４００内の１次メディア・ストリームのコンテンツ上に表示させる遠隔制御装置上又は受信機のユーザ制御パネル上のユーザ入力に応答して、オーバーレイ・マトリクス４０２を表示させる。ユーザは、オーバーレイ・マトリクス４０２を使用して１次メディア・ストリーム内の１つ又は複数の領域を、１つ又は複数の異なるＴＶチャンネルに由来する１つ又は複数の２次メディア・ストリームのコンテンツを１次メディア・ストリーム・コンテンツ内で表示するインセット・エリアとして選択する。
【００５４】
図示の例において、オーバーレイ・マトリクス４０２は、左上隅から右下隅まで連番が振られた領域１〜１６を含む。しかしながら、オーバーレイ・マトリクス４０２は単なる一例として含まれるものであり、例示的な諸実施形態を限定するものではない。換言すると、オーバーレイ・マトリクス４０２は、より多くの又はより少ない領域を含むこともできる。また、例示的な各実施形態は、それぞれのプロセスで使用可能な任意のタイプのマトリクスを利用することができる。更に、例示的な諸実施形態は、任意のタイプの領域識別システムを使用してオーバーレイ・マトリクス４０２内の様々な領域を識別することができる。
【００５５】
また、図示の例において、オーバーレイ・マトリクス４０２は定義済みインセット・エリア４０４を含む。定義済みインセット・エリア４０４は、ユーザが１つ又は複数の異なるＴＶチャンネルに由来する１つ又は複数の２次メディア・ストリームのコンテンツをビデオ出力４００の１次メディア・ストリーム内のそのエリアにインセットとして表示させることを望む、ユーザ選択又はユーザ定義エリアである。定義済みインセット・エリア４０４は、オーバーレイ・マトリクス４０２に関連するインセット領域１０、１１、１４、及び１５から構成される。しかしながら、ユーザは、オーバーレイ・マトリクス４０２内の領域の任意の組合せを選択して、２次メディア・ストリームを表示させる１つ又は複数の定義済みインセット・エリアを作成することができることに留意していただきたい。
【００５６】
次に図５を参照すると、例示的な一実施形態に係る可動水平マーカを有するビデオ出力が例示されている。ビデオ出力５００は、例えば図３の表示装置３０２のような表示装置上に表示され、ユーザに視聴される図３のビデオ出力３１６とすることができる。この特定の例において、放送信号受信機の制御ロジックは、例えばビデオ出力５００内の１次メディア・ストリームのコンテンツ上に可動水平マーカ５０２を表示させる遠隔制御装置上のユーザ入力に応答して、可動水平マーカ５０２を表示させる。
【００５７】
ユーザは、遠隔制御装置上の矢印キー又はトラックボールを使用して可動水平マーカ５０２を配置することにより、１次メディア・ストリーム内の１つ又は複数の領域を、１つ又は複数の異なるＴＶチャンネルに由来する１つ又は複数の２次メディア・ストリームのコンテンツを１次メディア・ストリーム・コンテンツ内に表示させるインセット・エリアとして定義する。また、例示的な諸実施形態は、可動水平マーカ５０２の代わりに又はそれに加えて図示されていない可動垂直マーカ（ｍｏｖａｂｌｅ  ｖｅｒｔｉｃａｌ  ｍａｒｋｅｒ）を利用して１次メディア・ストリーム内の領域をインセット・エリアとして定義することができる。また、図示の例において、ビデオ出力５００は定義済みインセット・エリア５０４を含む。ユーザは、定義済みインセット・エリア５０４にビデオ出力５００内の１次メディア・ストリームのコンテンツの下部だけが含まれるように可動水平マーカ５０２を再配置する。定義済みインセット・エリア５０４は、ユーザが１つ又は複数の異なるＴＶチャンネルに由来する１つ又は複数の２次メディア・ストリームのコンテンツをビデオ出力５００の１次メディア・ストリーム内のそのエリアにインセットとして表示させることを望む、ユーザ選択又はユーザ定義エリアである。
【００５８】
次に図６を参照すると、例示的な一実施形態に係る複数のインセット領域を有するビデオ出力が例示されている。ビデオ出力６００は、例えば図３の表示装置３０２のような表示装置上に表示され、ユーザに視聴される図３のビデオ出力３１６とすることができるこの特定の例において、放送信号受信機の制御ロジックは、ビデオ出力６００内の１次メディア・ストリームのコンテンツ内にインセット・エリア領域１  ６０２及びインセット・エリア領域２  ６０４を表示させる。
【００５９】
インセット・エリア領域１  ６０２及びインセット・エリア領域２  ６０４は、第３のＴＶチャンネルの１次メディア・ストリーム・コンテンツ内に表示される、２つの異なるＴＶチャンネルに由来する２つの異なる２次メディア・ストリームを表す。各２次メディア・ストリームは、例えばインセット・エリア領域１  ６０２及びインセット・エリア領域２  ６０４を定義するメタデータを含むことができる。別の方法では、ユーザは、例えば図５の可動水平マーカ５０２のような可動水平マーカを利用してインセット・エリア領域１  ６０２及びインセット・エリア領域２  ６０４を定義することができる。インセット・エリア領域１  ６０２は、例えばニュースＴＶチャンネルから取得される「ニュース・ティッカー」インセットとすることができ、インセット・エリア領域２  ６０４は、例えば金融ＴＶチャンネルから取得される「株式ティッカー（ｓｔｏｃｋ  ｔｉｃｋｅｒ）」とすることができる。１次メディア・ストリーム・コンテンツは、例えばＡＢＣ、ＮＢＣ、ＣＢＳ、ＦＯＸのような主要ネットワークＴＶチャンネル、ＨＢＯ、ＳＨＯＷＴＩＭＥ、ＥＮＣＯＲＥ、ＳＴＡＲＺのような主要映画チャンネル、あるいは事前に記録された番組である可能性がある。しかしながら、例示的な諸実施形態は、任意のＴＶチャンネル又は記録された番組を１次メディア・ストリーム・ソース又は２次メディア・ストリーム・ソースあるいはその両方として使用することができることに留意していただきたい。
【００６０】
次に図７を参照すると、例示的な一実施形態に係るＸＭＬインセット定義の具体例が示されている。ＸＭＬインセット定義７００は、図６のインセット・エリア領域１  ６０２やインセット・エリア領域２  ６０４のような１次メディア・ストリームのコンテンツ内のインセット領域を定義する１つの可能なＸＭＬ定義の具体例にすぎない。換言すると、ＸＭＬインセット定義７００は単なる一例であって、例示的な諸実施形態を限定するものではない。例示的な各実施形態は、それぞれのプロセスで使用可能な任意のタイプのインセット定義フォーマットを使用することができる。ＸＭＬインセット定義７００は、例えばメディア・ストリーム・メタデータに含めることができる。
【００６１】
図３の制御ロジック３１２のような放送信号受信機の制御ロジックは、ＸＭＬインセット定義７００を使用して２次メディア・ストリーム・コンテンツを表示させるインセット領域に関するパラメータを定義する。図示の例において、ＸＭＬインセット定義７００は、図６の例で示されるような２つのインセット領域に関するパラメータを定義する。しかしながら、ＸＭＬインセット定義７００は、より多くの又はより少ないインセット領域に関するパラメータを定義することもできることに留意していただきたい。
【００６２】
ＸＭＬインセット定義７００は、メディア・ストリーム名リスト（ｌｉｓｔ  ｏｆ  ｍｅｄｉａ  ｓｔｒｅａｍ  ｎａｍｅｓ）７０２を含む。メディア・ストリーム名リスト７０２は、エントリ領域１（ｅｎｔｒｙ  ｒｅｇｉｏｎ  １）７０４及びエントリ領域２（ｅｎｔｒｙ  ｒｅｇｉｏｎ  ２）７０６を含む。エントリ領域１  ７０４及びエントリ領域２  ７０６は、インセットとして使用される２次メディア・ストリームのコンテンツ内の特定の位置と、インセットを１次メディア・ストリームのコンテンツ内の特定の領域内に配置するためのインセット優先度設定と、インセットの記述と、を含む。しかしながら、エントリ領域１  ７０４及びエントリ領域２  ７０６は、例示的な諸実施形態のプロセスに必要となる任意のデータを含むことができることに留意していただきたい。
【００６３】
次に図８を参照すると、メディア・ストリームによって定義された領域に基づいてトリミングされる複数のビデオ出力を同時に表示させる例示的な一実施形態に係る例示的なプロセスを示すフローチャートが示されている。図８に示されるプロセスは、図３の受信機３００のような受信機において実施することができる。
【００６４】
本プロセスは、受信機が図３の制御ロジック３１２のような制御ロジックを使用して、図３の多重チャンネル入力３１４のような多重チャンネル入力から、図３の表示装置３０２のような表示装置上での同時ユーザ視聴（ｓｉｍｕｌｔａｎｅｏｕｓ  ｕｓｅｒ  ｖｉｅｗｉｎｇ）の対象となる２つのメディア・ストリーム又はプログラムのユーザ選択を受信することから開始する（ステップ８０２）。次に、制御ロジックは、同時ユーザ視聴の対象として選択された２つのメディア・ストリームに由来する１次メディア・ストリーム及び２次メディア・ストリームに関するユーザ選択を受信する（ステップ８０４）。その後、制御ロジックは、２次メディア・ストリームのメタデータから１組のインセット定義を抽出する（ステップ８０６）。
【００６５】
続いて、制御ロジックは、２次メディア・ストリームのメタデータ内の１組のインセット定義に由来する、図７のＸＭＬインセット定義７００のようなインセット定義のユーザ選択を受信する（ステップ８０８）次に、制御ロジックは、選択されたインセット定義のサイズを収容するように１次メディア・ストリームをトリミングするユーザ入力を受信する（ステップ８１０）。その後、制御ロジックは、ユーザ入力に基づいて１次メディア・ストリームをトリミングして図５の定義済みインセット・エリア５０４のようなインセット・エリアを１次メディア・ストリーム・コンテンツ内に作成する（ステップ８１２）。続いて、制御ロジックは、２次メディア・ストリームのコンテンツを表示装置上での同時ユーザ視聴のために１次メディア・ストリーム・コンテンツのインセット・エリア内に表示させる（ステップ８１４）。また、制御ロジックは、各ユーザ選択及びユーザ入力を将来の参照用にユーザ・プリファレンスとして図３のデータ・バッファ及びＨＤストレージ３０６のようなストレージ・デバイス内のユーザ・プリファレンス・ファイルに格納する（ステップ８１６）。その後、本プロセスは終了する。
【００６６】
次に図９を参照すると、ユーザによって定義された領域に基づいてトリミングされる複数のビデオ出力を同時に表示させる例示的な一実施形態に係る例示的なプロセスを示すフローチャートが示されている。図９に示されるプロセスは、図３の受信機３００のような受信機において実施することができる。
【００６７】
本プロセスは、受信機が図３の制御ロジック３１２のような制御ロジックを使用して、図３の表示装置３０２のような表示装置上で２次メディア・ストリームのコンテンツを同時に視聴するためのインセット・エリアとしてユーザに使用される、図３のビデオ出力３１６のようなビデオ出力内の１次メディア・ストリームの一部分を選択するユーザ選択を受信することから開始する（ステップ９０２）。次に、制御ロジックは、ユーザ入力に基づいて１次メディア・ストリーム・コンテンツ内にインセット・エリアを作成する（ステップ９０４）。その後、制御ロジックは、２次メディア・ストリーム・コンテンツを１次メディア・ストリーム・コンテンツ内のインセット・エリアに適合するようにトリミングするユーザ入力を受信する（ステップ９０６）。
【００６８】
次に、制御ロジックは、ユーザ入力に基づいて２次メディア・ストリーム・コンテンツをインセット・エリアに適合するようにトリミングする（ステップ９０８）。続いて、制御ロジックは、トリミングした２次メディア・コンテンツを表示装置上での同時ユーザ視聴のために１次メディア・ストリーム・コンテンツのインセット・エリア内に表示させる（ステップ９１０）。また、制御ロジックは、各ユーザ入力を将来の参照用にユーザ・プリファレンスとして図３のデータ・バッファ及びＨＤストレージ３０６のようなストレージ・デバイス内のユーザ・プリファレンス・ファイルに格納する（ステップ９１２）。その後、本プロセスは終了する。
【００６９】
このように、本発明の例示的な諸実施形態は、エンド・ユーザ、メディア供給業者、又はメディア・ストリーム自体が、全体のメディア・ストリームのうちの一部分又は一領域だけが表示画面内でユーザに表示されている別のメディア・ストリーム内の特定の位置にインセット表示されるように定義することが可能となる能力を提供するコンピュータ実装方法、システム、及びコンピュータ・プログラムを提供する。添付図面のフローチャート及びブロック図は、本発明の様々な実施形態に係るシステム、方法、及びコンピュータ・プログラムの可能な実装環境のアーキテクチャ、機能、及び動作を示す。この点で、フローチャート又はブロック図中の各ブロックは、指定の論理機能（単数又は複数）を実行する１つ又は複数の実行可能な指令を含むモジュール、セグメント、あるいはコード部分を表す可能性がある。いくつかの代替実施では、ブロック内に示される機能が図示の順序と異なる順序で発生する可能性があることにも留意していただきたい。例えば、連続して示される２つのブロックが実際にはほぼ同時に実行されることもあり、また、関与する機能に応じて逆の順序で実行されることもある。また、ブロック図又はフローチャートあるいはその両方に示される各ブロック、及びブロック図又はフローチャートあるいはその両方に示される各ブロックの組合せは、指定された機能又は動作を実行する専用ハードウェア・ベース・システムによって実行することも、専用ハードウェアとコンピュータ命令の組合せによって実行することも可能であることに留意していただきたい。
【００７０】
本発明は、全体としてハードウェアの実施形態の形をとることも、全体としてソフトウェアの実施形態の形をとることもでき、ハードウェア要素とソフトウェア要素の両方を含む実施形態とすることもできる。好ましい一実施形態において、本発明は、必ずしもそれだけに限定されるわけではないが、ファームウェア、常駐ソフトウェア、マイクロコード等を含むソフトウェアで実施される。
【００７１】
更に、本発明は、コンピュータ又は任意の命令実行システムによって、あるいはそれらに関連して使用されるプログラム・コードを備えるコンピュータ使用可能な媒体又はコンピュータ読取り可能な媒体からアクセスできる、コンピュータ・プログラムの形をとることもできる。本明細書では、コンピュータ使用可能な又はコンピュータ読取り可能な媒体は、上記命令実行システム、装置、又はデバイスによって、あるいはそれらに関連して使用される上記プログラムを、収容し記憶し通信し伝搬し又は移送することができる任意の装置であってよい。
【００７２】
上記媒体は、電子系媒体、磁気系媒体、光学系媒体、電磁気系媒体、赤外線系媒体、又は半導体系媒体（あるいは装置又はデバイス）あるいは伝搬媒体であってもよい。コンピュータ読取り可能な媒体の例としては、半導体又は固体メモリ、磁気テープ、着脱自在のコンピュータ・ディスケット、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、固定磁気ディスク、及び光ディスクが挙げられる。光ディスクの現行例としては、コンパクト・ディスクＲＯＭ（ＣＤ‐ＲＯＭ）、コンパクト・ディスク読み出し／書き込み（ＣＤ‐Ｒ／Ｗ）、及びＤＶＤが挙げられる。
【００７３】
プログラム・コードの記憶又は実行あるいはその両方を行うのに適したデータ処理システムは、システム・バスを介してメモリ要素に直接又は間接的に連結される少なくとも１つのプロセッサを含む。上記メモリ要素は、上記プログラム・コードの実際の実行中に利用されるローカル・メモリ、バルク・ストレージ、及び実行中にバルク・ストレージからコードを検索しなければならない回数を少なくするために、少なくともいくつかのプログラム・コードを一時的に記憶するキャッシュ・メモリを含むことができる。
【００７４】
入力／出力、即ちＩ／Ｏデバイス（必ずしもそれだけに限定されるわけではないが、キーボード、ディスプレイ、ポインティング・デバイス等を含む）は、上記システムに直接連結することも、Ｉ／Ｏコントローラを介して連結することもできる。
【００７５】
介在する私設ネットワーク又は公衆ネットワークを通して他のデータ処理システムあるいは遠隔プリンタ又はストレージ・デバイスに、上記データ処理システムが連結できるようにするために、上記システムにネットワーク・アダプタを連結することもできる。モデム、ケーブル・モデム及びイーサネット（Ｒ）・カードは、現時点で使用可能なタイプのネットワーク・アダプタのほんのいくつかにすぎない。
【００７６】
本発明の記載は例示及び説明のために提示しているものであって、本発明の実施形態を余すところのないものとし、又は開示の形態に限定することは、本出願人の意図するところではない。当業者には多くの修正及び変更が可能なことは明白であろう。上記実施形態は、本発明の諸原理及び実際の応用例が最良の形で説明されるように、また、想定される特定の使用に適するように様々な修正が施された様々な実施形態について当業者が本発明を理解することが可能となるように選択され説明されている。
【符号の説明】
【００７７】
１００  ネットワーク・データ処理システム
１０２  ネットワーク
１０４、１０６  サーバ
１０８  ストレージ
１１０、１１２、１１４  クライアント・デバイス
２００  データ処理システム
２０２  通信ファブリック
２０４  プロセッサ・ユニット
２０６  メモリ
２０８  永続ストレージ
２１０  通信ユニット
２１２  Ｉ／Ｏユニット
２１４  ディスプレイ・ユニット
２１６  プログラム・コード
２１８  コンピュータ読取り可能な媒体
２２０  コンピュータ・プログラム
３００  受信機
３０２  表示装置
３０４  プロセッサ・ユニット
３０６  データ・バッファ及びＨＤストレージ
３０８、３１０  チューナ
３１２、３１４  多重チャンネル入力
３１６、４００、５００、６００  ビデオ出力
４０２  オーバーレイ・マトリクス
４０４、５０４  定義済みインセット・エリア
５０２  可動水平マーカ
６０２、６０４  インセット・エリア領域
７００  ＸＭＬインセット定義
７０２  メディア・ストリーム名リスト
７０４、７０６  エントリ領域
【図１】
2010226706.tif 000003
【図２】
2010226706.tif 000004
【図３】
2010226706.tif 000005
【図４】
2010226706.tif 000006
【図５】
2010226706.tif 000007
【図６】
2010226706.tif 000008
【図７】
2010226706.tif 000009
【図８】
2010226706.tif 000010
【図９】
2010226706.tif 000011