図1は、限定対話機能を用いたリアルタイムのコンテンツ編集を提供することが可能な環境100の一実施例のブロック図を示す。環境100は、コンピュータ可読媒体102と、限定対話機能コンテンツ編集システム104と、コンテンツ記憶ストリーミング・システム106と、フィルタ作成・記憶システム108と、フィルタ推奨システム110と、再生装置群112‐1〜112‐n(個々に再生装置112、総称的に再生装置群112)とを含む。
図1の実施例において、限定対話機能コンテンツ編集システム104、コンテンツ記憶ストリーミング・システム106、フィルタ作成・記憶システム108、フィルタ推奨システム110、および再生装置群112は、コンピュータ可読媒体102に連結されている。本書で使用されるとき、「コンピュータ可読媒体」とは、法定である(例、合衆国においては、35 U.S.C.101に基づく)すべての媒体を含み、具体的には、コンピュータ可読媒体を含む主張を有効にするために除外が必要な範囲で、本質的に非法定であるすべての媒体を除外することが意図される。公知の法定コンピュータ可読媒体には、ハードウェア(例、いくつか挙げると、レジスタ、ランダム・アクセス・メモリ(RAM)、不揮発性(NV)記憶装置)を含むが、ハードウェアに限定されることも、またはされないこともある。コンピュータ可読媒体102は、潜在的に適用できる多様な技術を表すことが意図される。例えば、コンピュータ可読媒体102は、ネットワークまたはネットワークの一部を形成するために使用することができる。2つのコンポーネントが1つのデバイス上にともに配置されている場合、コンピュータ可読媒体102は、バスまたは他のデータコンジットもしくはデータプレーンを含むことができる。あるデバイス上に第1のコンポーネントがともに配置され、異なるデバイス上に第2のコンポーネントが配置されている場合、コンピュータ可読媒体102は、無線もしくは有線のバックエンドネットワークまたはLANを含むことができる。コンピュータ可読媒体102は、適用できる場合、WANまたは他のネットワークの関連部分も包含することができる。
図1の実施例において、コンピュータ可読媒体102は、インターネットなどの、まとめて連結されている複数のコンピュータ・システムを含む、ネットワーク接続されたシステム、またはバスなどの、1つのコンピュータのコンポーネントを連結するためのデバイスを含むことができる。本書で使用する「インターネット」という用語は、TCP/IPプロトコル、あるいはワールド・ワイド・ウェブ(ウェブ)を形成するハイパーテキスト・マークアップ言語(HTML)ドキュメント用のハイパーテキスト転送プロトコル(HTTP)などの他のプロトコルなど、何らかのプロトコルを使用するネットワークのネットワークをいう。コンテンツは、コンテンツ・サーバによって提供されることが多く、コンテンツ・サーバは、インターネット「上」にあるといわれる。一種のコンテンツ・サーバであるウェブ・サーバは、通例、少なくとも1つのコンピュータ・システムであり、これは、サーバ・コンピュータ・システムとして動作し、ウェブのプロトコルで動作するように構成され、インターネットに連結される。インターネットとプロコトルとの物理的な接続、およびインターネットとウェブとの通信手順は、当業者には周知である。例示のために、コンピュータ可読媒体102は、関連するコンテキストから分かるように、図1の実施例に図示するコンポーネントの最低限の連結から、インターネットおよびインターネットに連結されているネットワークのあらゆるコンポーネントまでのいずれのものも広く含むと想定される。いくつかの実施態様では、コンピュータ可読媒体102は、インターネット・サービス・プロバイダ(ISP)などのサービス・プロバイダによって管理される。
様々な実施態様において、コンピュータ可読媒体102は、イーサネット(登録商標)、802.11、ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMAX)、3G、4G、CDMA、GSM(登録商標)、LTE、デジタル加入者線(DSL)等といった技術を含むことができる。コンピュータ可読媒体102は、マルチプロトコル・ラベル・スイッチング(MPLS)、伝送制御プロトコル/インターネット・プロトコル(TCP/IP)、ユーザ・データグラム・プロトコル(UDP)、ハイパーテキスト転送プロトコル(HTTP)、簡易メール転送プロトコル(SMTP)、ファイル転送プロトコル(FTP)および同様のものなどのネットワーキング・プロトコルをさらに含むことができる。コンピュータ可読媒体102により交換されるデータは、ハイパーテキスト・マークアップ言語(HTML)および拡張可能マークアップ言語(XML)を含む技術および/またはフォーマットを使用して表現することができる。さらに、すべてまたは一部のリンクは、セキュア・ソケット・レイヤ(SSL)、転送レイヤ・セキュリティ(TSL)、およびインターネット・プロトコル・セキュリティ(IPsec)などの、従来の暗号化技術を使用して暗号化することができる。
特定の実施態様においては、コンピュータ可読媒体102は、少なくともいくつかの通信のために、ワイヤを使用した有線ネットワークを含むことができる。いくつかの実施態様において、コンピュータ可読媒体102は、無線ネットワークを備える。本書で使用される「無線ネットワーク」には、少なくとも部分的に電線を使用しなくても通信する、任意のコンピュータ・ネットワークを含むことができる。様々な実施態様において、コンピュータ可読媒体102は、イーサネット、802.11、ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMAX)、3G、4G、CDMA、GSM、LTE、デジタル加入者線(DSL)等といった技術を含む。コンピュータ可読媒体102は、マルチプロトコル・ラベル・スイッチング(MPLS)、伝送制御プロトコル/インターネット・プロトコル(TCP/IP)、ユーザ・データグラム・プロトコル(UDP)、ハイパーテキスト転送プロトコル(HTTP)、簡易メール転送プロトコル(SMTP)、ファイル転送プロトコル(FTP)および同様のものなどのネットワーキング・プロトコルをさらに含むことができる。コンピュータ可読媒体102により交換されるデータは、ハイパーテキスト・マークアップ言語(HTML)および拡張可能マークアップ言語(XML)を含む技術および/またはフォーマットを使用して表現することができる。さらに、すべてまたは一部のリンクは、セキュア・ソケット・レイヤ(SSL)、転送レイヤ・セキュリティ(TSL)、およびインターネット・プロトコル・セキュリティ(IPsec)などの、従来の暗号化技術を使用して暗号化することができる。
特定の実施態様においては、コンピュータ可読媒体102の無線ネットワークは、米国電気電子技術者協会(IEEE)によって規定される802.11プロトコルと互換性がある。特定の実施態様においては、ネットワーク130の無線ネットワークは、IEEEによって規定される802.3プロトコルと互換性がある。いくつかの実施態様において、コンピュータ可読媒体102のIEEE802.3互換プロトコルは、いくつかの広域ネットワーク・アプリケーションとともにローカル・エリア・ネットワーク技術を含むことができる。ノードおよび/またはインフラストラクチャ・デバイス(ハブ、スイッチ、ルータ)間の物理的な接続は、通例、様々なタイプの銅ケーブルまたはファイバケーブルによって行われる。IEEE802.3互換技術は、コンピュータ可読媒体102のIEEE802.1ネットワーク・アーキテクチャをサポートすることができる。
コンピュータ可読媒体102、限定対話機能コンテンツ編集システム104、コンテンツ記憶ストリーミング・システム106、フィルタ作成・記憶システム108、フィルタ推奨システム110、および再生装置群112、ならびに本書に説明するその他の適用できるシステムまたはデバイスは、コンピュータ・システム、複数のコンピュータ・システム、またはコンピュータ・システムもしくは複数のコンピュータ・システムの一部として実装することができる。一般に、コンピュータ・システムは、プロセッサ、メモリ、不揮発性記憶装置、およびインタフェースを含むであろう。典型的なコンピュータ・システムは、通常、少なくともプロセッサ、メモリ、およびメモリをプロセッサに連結するデバイス(例、バス)を含むであろう。プロセッサは、例えば、マイクロプロセッサなどの汎用中央処理ユニット(CPU)、またはマイクロコントローラなどの専用プロセッサとすることができる。
メモリは、限定ではなく例として、動的RAM(DRAM)および静的RAM(SRAM)などのランダム・アクセス・メモリ(RAM)を含むことができる。メモリは、ローカル、リモート、または分散型とすることができる。バスは、プロセッサを不揮発性記憶装置にも連結することができる。不揮発性記憶装置は、磁気フロッピー(登録商標)もしくはハード・ディスク、光磁気ディスク、光ディスク、CD‐ROM、EPROMもしくはEEPROMなどの読み出し専用メモリ(ROM)、磁気カード、光カード、または別の形態の大量データ用記憶装置であることが多い。このデータの一部は、コンピュータ・システム上でソフトウェアが実行している間に、ダイレクト・メモリ・アクセス・プロセスによってメモリに書き込まれることが多い。不揮発性記憶装置は、ローカル、リモートまたは分散型とすることができる。メモリ内で利用できるすべての適用できるデータを用いてシステムを作成することができるため、不揮発性記憶装置はオプションである。
ソフトウェアは、通例、不揮発性記憶装置に記憶される。実際、大きなプログラムの場合、メモリ内にプログラム全体を記憶するのが不可能なこともある。それでも、必要な場合、ソフトウェアを実行するためには、処理に適切なコンピュータ可読場所に移動されることは理解されるべきであり、例示のために、その場所を本書ではメモリという。ソフトウェアが実行のためにメモリに移動される場合であっても、プロセッサは、通例、ソフトウェアに関連付けられている値を記憶するために、ハードウェア・レジスタを利用し、理想としては実行を迅速化するのに役立つローカル・キャッシュを利用するであろう。本明細書で使用されるとき、ソフトウェア・プログラムが「コンピュータ可読記憶媒体に実装される」といわれるとき、ソフトウェア・プログラムは、適用できる公知のまたは便利な場所(不揮発性記憶装置からハードウェア・レジスタまで)に記憶されると想定される。プロセッサは、プログラムに関連付けられている少なくとも1つの値が、プロセッサによって読むことのできるレジスタに記憶されるとき、「プログラムを実行するように構成される」と考えられる。
動作の一実施例において、コンピュータ・システムは、ディスク・オペレーティング・システムなどのファイル管理システムを含むソフトウェア・プログラムであるオペレーティング・システム・ソフトウェアによって制御することができる。関連ファイル管理システム・ソフトウェアを備えるオペレーティング・システム・ソフトウェアの1つの例は、ワシントン州レドモンドのマイクロソフト社(Microsoft Corporation)の、Windows(登録商標)として知られるオペレーティング・システムのファミリーと、その関連ファイル管理システムである。関連ファイル管理システム・ソフトウェアを備えるオペレーティング・システムの別の例は、リナックス(登録商標)(Linux(登録商標))のオペレーティング・システムと、その関連ファイル管理システムである。ファイル管理システムは、通例、不揮発性記憶装置に記憶され、プロセッサに、データの入出力のためにオペレーティング・システムが要求する様々な行為を実行させ、不揮発性記憶装置へのファイルの記憶を含め、データをメモリに記憶させる。
バスは、プロセッサをインタフェースに連結することもできる。インタフェースは、1つまたは複数の入出力(I/O)デバイスを含むことができる。I/Oデバイスは、限定ではなく例として、キーボード、マウスもしくは他のポインティング・デバイス、ディスク・ドライブ、プリンタ、スキャナ、およびディスプレイ装置を含む他のI/Oデバイスを含むことができる。ディスプレイ装置は、限定ではなく例として、ブラウン管(CRT)、液晶ディスプレイ(LCD)、またはいくつかの他の適用できる公知のもしくは便利なディスプレイ装置を含むことができる。インタフェースは、1つもしくは複数のモデムまたはネットワーク・インタフェースを含むことができる。モデムまたはネットワーク・インタフェースは、コンピュータ・システムの一部と考えることができることは理解されるであろう。インタフェースは、アナログ・モデム、ISDNモデム、ケーブル・モデム、トークン・リング・インタフェース、イーサネット・インタフェース、衛星伝送インタフェース(例、「ダイレクトPC」)、またはコンピュータ・システムを他のコンピュータ・システムに連結するための他のインタフェースを含むことができる。インタフェースは、コンピュータ・システムおよび他のデバイスを一緒にネットワーク内で連結することを可能にする。
コンピュータ・システムは、クラウドベースのコンピューティング・システムと互換性があるか、またはその一部としてもしくはそれを通じて実装されることができる。本書で使用されるとき、クラウドベースのコンピューティング・システムとは、仮想化されたコンピューティング・リソース、ソフトウェアおよび/または情報をエンドユーザ・デバイスに提供するシステムである。コンピューティング・リソース、ソフトウェアおよび/または情報は、エッジ・デバイスがネットワークなどの通信インタフェースを介してアクセスすることのできる中央集中型サービスおよびリソースを維持することによって、仮想化することができる。「クラウド」は、マーケティング用語であるかもしれないが、本書の目的上、本明細書で説明するネットワークのいずれを含むこともできる。クラウドベースのコンピューティング・システムは、サービスのサブスクリプションを伴うことができるか、またはユーティリティ・プライシング・モデルを使用することができる。ユーザは、自分のエンドユーザ・デバイスに配置されているウェブ・ブラウザまたは他のコンテナ・アプリケーションを通じて、クラウドベースのコンピューティング・システムのプロトコルにアクセスすることができる。
コンピュータ・システムは、エンジンとして、エンジンの一部として、または複数のエンジンを通じて実装することができる。本書で使用されるとき、エンジンは、1つまたは複数のプロセッサ、またはその一部分を含む。1つまたは複数のプロセッサの一部分は、任意の所与の1つまたは複数のプロセッサを備えるハードウェアの、全部ではないハードウェアのある部分、例えば、レジスタのサブセット、マルチスレッド・プロセッサの1つまたは複数のスレッドに専用のプロセッサの部分、プロセッサがエンジンの機能の一部を遂行するのに全部もしくは一部が充てられるタイムスライス、または同様なものを含むことができる。このように、第1エンジンおよび第2エンジンは、1つまたは複数の専用プロセッサを有することができ、または、第1エンジンおよび第2エンジンは、1つまたは複数のプロセッサを互いに、もしくは他のエンジンと共有することができる。実施態様固有の、またはその他の考慮事項によっては、エンジンは、中央集中化することができるか、またはその機能を分散することができる。エンジンは、プロセッサで実行するために、コンピュータ可読媒体に具現されるハードウェア、ファームウェア、またはソフトウェアを含むことができる。本書で図を参照して説明するように、プロセッサは、実装されたデータ構造および方法を使用して、データを新たなデータに変換する。
本書で説明するエンジン、または本書で説明するシステムおよびデバイスを実装することのできるエンジンは、クラウドベースのエンジンとすることができる。本書で使用されるとき、クラウドベースのエンジンとは、クラウドベースのコンピューティング・システムを使用して、アプリケーションおよび/または機能を実行することのできるエンジンである。アプリケーションおよび/または機能の全部もしくは一部分は、複数のコンピューティング・デバイスに分散することができ、1つだけのコンピューティング・デバイスに制限する必要はない。いくつかの実施形態において、クラウドベースのエンジンは、エンドユーザのコンピューティング・デバイス上に機能および/またはモジュールをローカルにインストールしなくても、エンドユーザがウェブ・ブラウザまたはコンテナ・アプリケーションを通じてアクセスする機能および/またはモジュールを実行することができる。
本書で使用されるとき、データストアは、表、カンマ区切り値(CSV)ファイル、従来型のデータベース(例、SQL)、または他の適用できる公知のもしくは便利な体系的なフォーマットを含め、任意の適用できるデータの構成を有するレポジトリを含むことが意図される。データストアは、例えば、専用マシン上の物理的なコンピュータ可読媒体、ファームウェア、ハードウェア、その組み合わせ、または適用できる公知のもしくは便利なデバイスもしくはシステム、に具現されるソフトウェアとして実装することができる。データストア関連コンポーネントの物理的な場所および他の特性は、本書で説明する技術の理解にあたって重大なことではないが、データベース・インタフェースなどのデータストア関連コンポーネントは、データストアの「一部」、いくつかの他のシステム・コンポーネントの一部、またはその組み合わせと考えることができる。
データストアは、データ構造を含むことができる。本書で使用されるとき、データ構造は、それが所与のコンテキスト内で効率的に使用できるように、コンピュータ内でデータを記憶し体系化する特定の方法に関連付けられる。データ構造は、一般に、それ自体がメモリ内に記憶されて、プログラムによって操作することのできるビット列であるアドレスによって指定される、コンピュータのメモリ内の任意の場所にデータをフェッチして記憶できるコンピュータの能力に基づく。したがって、あるデータ構造は、算術演算を用いてデータ項目のアドレスを計算することに基づく一方、他のデータ構造は、構造自体の中にデータ項目のアドレスを記憶することに基づく。多くのデータ構造は、どちらの原理も使用し、ときには自明ではない方法で組み合わせて使用する。データ構造の実装には、通常、その構造のインスタンスを作成して操作する1組のプロシージャの書き込みを伴う。本書で説明するデータストアは、クラウドベースのデータストアとすることができる。クラウドベースのデータストアとは、クラウドベースのコンピューティング・システムおよびエンジンと互換性のあるデータストアである。
図1の実施例において、限定対話機能コンテンツ編集システム104は、リアルタイムでコンテンツ(例、ビデオ、オーディオ、画像、写真等)を編集するように、またはその他の形で調整するように機能する。例えば、限定対話機能コンテンツ編集システム104の機能は、1つまたは複数のモバイル・デバイス(例、スマートフォン、携帯電話、スマートウォッチ、スマートグラス、タブレット・コンピュータ等)によって実施することができる。特定の実施態様においては、限定対話機能コンテンツ編集システム104は、限定対話機能に基づいて、またはそれに応答して、同時に、または実質的に同時に、コンテンツをキャプチャして編集する。限定対話機能コンテンツ編集システム104の代表的な実施態様は、再生装置の機能も含むが、その機能は必須ではない。例えば、イベント(例、コンサート、スポーツ・イベント、パーティ等)の客に提供される低コストまたはスモールフォーム・ファクタのモバイル・デバイスなど、ある種のコンテキストにおいては機能を減じた限定対話機能コンテンツ編集システムを提供することが望ましいことがある。
本書で使用されるとき、限定対話機能は、限定入力および/または限定出力を含む。特定の実施態様においては、限定入力は、ボタンを押すこと、ボタンのホールド、GUIの選択、ジェスチャ(例、タップ、ホールド、スワイプ、ピンチ等)および同様のものなどの、限定入力シーケンスを含む。限定シーケンスが1つのシーケンス(例、1つのジェスチャ)を含むことは理解されるであろう。限定出力は、例えば、ディスプレイ特性(例、画面寸法、解像度、輝度、コントラスト等)、オーディオ特性(忠実度、音量、周波数等)および同様のものなど、1つまたは複数の再生装置特性に基づいて限定される出力(例、編集されたコンテンツ)を含む。
特定の実施態様においては、限定対話機能コンテンツ編集システム104は、限定対話機能に基づいて1つまたは複数のリアルタイム・コンテンツ・フィルタを要求し、受信し、適用する(総称的に、「適用する」)ように機能する。例えば、限定対話機能コンテンツ編集システム104は、限定入力の受信に応答して、その限定入力に関連付けられている特定のリアルタイム・コンテンツ・フィルタを適用することができる。一般に、リアルタイム・コンテンツ・フィルタは、コンテンツがキャプチャされるに際し、コンテンツの編集または別様の調整を促す。例えば、リアルタイム・コンテンツ・フィルタは、限定対話機能コンテンツ編集システム104に、キャプチャされているコンテンツの上に二次コンテンツ(例、グラフィックス、テキスト、オーディオ、ビデオ、画像等)をオーバーレイさせること、キャプチャされているコンテンツ内の1つまたは複数のサブジェクト(例、人、構造物、地理的な特徴、オーディオ・トラック、ビデオ・トラック、イベント等)の特性(例、視覚的特性、オーディオ特性等)を調整させること、キャプチャされているコンテンツのコンテンツ特性(例、ディスプレイ特性、オーディオ特性等)を調整させること、および同様なことをさせることができる。
特定の実施態様においては、限定対話機能コンテンツ編集システム104は、コンテンツの1つまたは複数の部分を、そのコンテンツの他の部分を必ずしも調整する必要なく、リアルタイムで調整する。例えば、特定のサブジェクトに関連付けられているオーディオ特性は、他のサブジェクトに関連付けられているオーディオ特性を調整しなくても、調整することができる。これは、例えば、従来のシステムよりも高いレベルの編集の粒度を提供することができる。
図1の実施例において、フィルタ付きコンテンツ記憶ストリーミング・システム106は、コンテンツのリポジトリを維持し、再生用のコンテンツ(例、ビデオ再生および/またはオーディオ再生)を提供するように機能する。例えば、システム106は、クラウドベースのストレージ・プラットフォーム(例、AWS)を使用して、1つまたは複数のモバイル・デバイス(例、限定対話機能コンテンツ編集システム104の機能を実施する1つまたは複数のモバイル・デバイス)に、またはその他の形で実装することができる。コンテンツは、以前にキャプチャした編集済みおよび未編集のコンテンツ(または、「記録済みコンテンツ」)、ならびにリアルタイムの編集済みおよび未編集のコンテンツ(または、「リアルタイム・コンテンツ」)を含むことは理解されるであろう。より具体的には、リアルタイム・コンテンツは、コンテンツがキャプチャされるに際しコンテンツ記憶ストリーミング・システム106によって受信されるコンテンツを含む。
特定の実施態様においては、フィルタ付きコンテンツ記憶ストリーミング・システム106は、1つまたは複数のコンテンツ・ストリームを介して再生用のコンテンツを提供する。コンテンツ・ストリームは、コンテンツが編集および/またはキャプチャされるに際し再生用のコンテンツを提供するリアルタイム・コンテンツ・ストリームと、記録済みの再生用コンテンツを提供する記録済みコンテンツ・ストリームとを含む。
図1の実施例において、フィルタ作成・記憶システム108は、リアルタイム・コンテンツ・フィルタに、作成、読み出し、更新および削除(または「CRUD」)機能を提供するとともに、リアルタイム・コンテンツ・フィルタのリポジトリを維持する。例えば、フィルタ作成・記憶システム108は、クラウドベースのストレージ・プラットフォーム(例、AWS)を使用して、1つまたは複数のモバイル・デバイス(例、限定対話機能コンテンツ編集システム104の機能を実施する1つまたは複数のモバイル・デバイス)に、またはその他の形で実装することができる。特定の実施態様においては、リアルタイム・コンテンツ・フィルタは、以下のフィルタ属性のうちの一部または全部を含む。
・フィルタ識別子:リアルタイム・コンテンツ・フィルタを一意に識別する識別子。
・フィルタ・アクション:キャプチャされているコンテンツにリアルタイム・コンテンツ・フィルタを適用することによってトリガされる1つまたは複数の編集アクション。例えば、編集アクションは、キャプチャされているコンテンツの上に二次コンテンツをオーバーレイすること、キャプチャされているコンテンツ内の1つまたは複数のサブジェクトの特性を調整すること、キャプチャされているコンテンツのコンテンツ特性を調整すること、および/または同様なことを含むことができる。
・限定入力:ボタンを押すこと、ボタンのホールド、ジェスチャおよび同様のものの限定シーケンスなど、リアルタイム・コンテンツ・フィルタに関連付けられている限定入力。
・限定出力:再生装置特性など、リアルタイム・コンテンツ・フィルタに関連付けられている限定出力。
・コンテンツ・タイプ:リアルタイム・コンテンツ・フィルタで編集するのに適した1つまたは複数のタイプのコンテンツ。例えば、コンテンツ・タイプは、オーディオ、ビデオ、画像、写真および/または同様なものを含むことができる。
・カテゴリ:リアルタイム・コンテンツ・フィルタに関連付けられている1つまたは複数のカテゴリ。例えば、カテゴリは、音楽、小説家、批評、ブロガー、寸評者、および/または同様なものを含むことができる。
図1の実施例において、フィルタ推奨システム110は、コンテキスト的に関係のある1つまたは複数のリアルタイム・コンテンツ・フィルタを識別するように機能する。例えば、システム110は、クラウドベースのストレージ・プラットフォーム(例、AWS)を使用して、1つまたは複数のモバイル・デバイス(例、限定対話機能コンテンツ編集システム104の機能を実施する1つまたは複数のモバイル・デバイス)に、または他の形で実装することができる。特定の実施態様において、コンテキストは、コンテンツ内で認識される画像および/またはオーディオ、関連の再生装置群の再生装置特性、コンテンツ特性、コンテンツ属性、および同様のものに基づく。例えば、以下詳細に述べるように、コンテンツ属性は、コンテンツ・カテゴリ(例、音楽)を含むことができる。コンテキスト的に関係のあるリアルタイム・コンテンツ・フィルタの特定は、例えば、記憶されているすべてのリアルタイム・コンテンツ・フィルタの中から選択するのではなく、例えば、選択対象となる限定されたリアルタイム・コンテンツ・フィルタのセットを提供することによって、使いやすさを高めることができる。
図1の実施例において、再生装置群112は、リアルタイム・コンテンツおよび記録済みコンテンツ(総称的に、「コンテンツ」)を提示するように機能する。例えば、再生装置群112は、1つまたは複数のモバイル・デバイス(例、限定対話機能コンテンツ編集システム104の機能を実施する1つまたは複数のモバイル・デバイス)、デスクトップ・コンピュータ、またはその他を含むことができる。特定の実施態様においては、再生装置群112は、1つまたは複数のリアルタイム・コンテンツ・ストリームを介してリアルタイム・コンテンツをストリーミングし、1つまたは複数の記録済みコンテンツ・ストリームを介して記録済みコンテンツをストリーミングするように構成される。
特定の実施態様においては、再生装置112がコンテンツを提示するとき、複数(例、2つ)の、再生フォーカスおよび再生コントロールのエリアがある。例えば、第1エリア(または、画像エリア)は、コンテンツを表す画像とすることができる。第2エリア(または、オーディオ・エリア)は、コンテンツのオーディオ部分を表す特有のデザインのグラフィカル長方形バーとすることができる。オーディオの10秒ごと、または他の所定の時間量ごとに、所定数の関連画像(例、1画像)が存在できる。再生装置112は、オーディオ再生全体を通じて、画像をスクロールするかまたはその他の形でナビゲートすることができる。しかし、いくつかの実施態様では、再生装置112は、オーディオ再生の出力先を制御しない。再生装置112は、画像エリアの下の長方形のオーディオ・ボックスなど、指定されるオーディオ部分(例、オーディオ・エリア)をスクロールするか、またはその他の形でナビゲートすることによって、オーディオ再生を制御することができる。オーディオ・ボックスは、例えば、吹き出しの表現の1レベルだけを含むことができる。
特定の実施態様においては、再生装置群112による特定のコンテンツの再生はアクセス制御される。例えば、特定のコンテンツは、1つまたは複数のアクセシビリティ特性に関連付けることができる。制御されたコンテンツを再生装置112が再生するためには、関連付けられている1つまたは複数のアクセシビリティ特性を満たす適切な認証情報(例、年齢、ログイン認証情報等)が提供されなければならない。
図2は、限定対話機能を用いたリアルタイムのコンテンツ編集を提供することのできる環境の例示的な動作方法のフローチャート200を示す。本書で説明するこのフローチャートおよび他のフローチャートでは、フローチャートは、例としてモジュールのシーケンスを示す。適用できる場合、並列実行のためにモジュールを再構成できること、またはモジュールの順序を変えられることは理解されるべきである。さらに、含めることができたいくつかのモジュールが、明確化のために、多すぎる情報を提供しないように省かれていることがあり、また、含められているいくつかのモジュールは、省けたかもしれないが、説明の明確化のために含めていることもある。
図2の実施例では、フローチャート200は、モジュール202から始まり、フィルタ作成・記憶システムが、複数のリアルタイム・コンテンツ・フィルタを生成する。特定の実施態様においては、リアルタイム・コンテンツ・フィルタは、1つまたは複数のフィルタ属性に基づいて生成される。例えば、1つまたは複数のフィルタ属性は、GUIとインタフェースをとるユーザまたは管理者を介して受信することができる。
図2の実施例において、フローチャート200はモジュール204に続き、フィルタ作成・記憶システムが、複数のリアルタイム・コンテンツ・フィルタを記憶する。特定の実施態様においては、フィルタ作成・記憶システムは、フィルタ属性のうちの1つまたは複数に基づいて、リアルタイム・コンテンツ・フィルタをフィルタ作成・記憶システム・データストアに記憶する。例えば、リアルタイム・コンテンツ・フィルタは、フィルタ・カテゴリ属性に基づいて様々なフィルタ・ライブラリに分けて整理することができる。
図2の実施例において、フローチャート200はモジュール206に続き、限定対話機能コンテンツ編集システムが、コンテンツをキャプチャする。例えば、限定対話機能コンテンツ編集システムは、1つまたは複数のアクション(例、話す、歌う、動く、等)を行う1つまたは複数のサブジェクトのオーディオおよび/またはビデオ、および同様のものをキャプチャすることができる。特定の実施態様においては、コンテンツのキャプチャは、限定対話機能コンテンツ編集システムが受信する限定入力に応答して開始する。例えば、限定対話機能コンテンツ編集システムに関連付けられているカメラ、マイクロフォン、または他のコンテンツ・キャプチャ・デバイスが、限定入力に基づいてトリガされてコンテンツをキャプチャすることができる。特定の実施態様においては、1つまたは複数の再生装置群が、コンテンツがキャプチャされるに際し、コンテンツを提示する。
特定の実施態様においては、限定対話機能コンテンツ編集システムは、コンテンツ記憶ストリーミング・システムにコンテンツを送信する。例えば、様々な間隔(例、10秒ごと等)および同様のもので、コンテンツをリアルタイムで(例、コンテンツがキャプチャされるに際し)送信することができる。
図2の実施例において、フローチャート200はモジュール208に続き、フィルタ推奨システムが、フィルタ作成・記憶システムによって記憶されている複数のリアルタイム・コンテンツ・フィルタから、コンテキスト的に関係のある1つまたは複数のリアルタイム・コンテンツ・フィルタを識別する。特定の実施態様においては、1つまたは複数の特定は、キャプチャされているコンテンツ内で認識される1つまたは複数のフィルタ属性、画像および/またはオーディオ、ならびに関連付けられている再生装置群の特性に基づく。例えば、歌っているかまたはその他の形で音楽を演奏しているサブジェクトをコンテンツが含む場合、フィルタ推奨システムは、音楽カテゴリに関連するリアルタイム・コンテンツ・フィルタを推奨することができる。特定の実施態様においては、1つまたは複数のリアルタイム・コンテンツ・フィルタの特定は、限定対話機能コンテンツ編集システムに送信される。
図2の実施例において、フローチャート200はモジュール210に続き、限定対話機能コンテンツ編集システムが、限定入力に基づいて1つまたは複数のリアルタイム・コンテンツ・フィルタを選択し、受信し、および適用する(総称的に、「適用する」)。特定の実施態様においては、限定入力の受信は、限定対話機能コンテンツ編集システムをトリガして、1つまたは複数のリアルタイム・コンテンツ・フィルタ(例、推奨されるリアルタイム・コンテンツ・フィルタまたは記憶されている他のリアルタイム・コンテンツ・フィルタ)を、キャプチャされているコンテンツに適用する。
図2の実施例において、フローチャート200はモジュール212に続き、限定対話機能コンテンツ編集システムが、選択された1つまたは複数のリアルタイム・コンテンツ・フィルタを使用して、コンテンツがキャプチャされるに際しコンテンツの少なくとも一部分を編集するか、またはその他の形で調整する。例えば、第1リアルタイム・コンテンツ・フィルタは、1つまたは複数のオーディオ・トラック(例、歌を歌っているサブジェクト)のオーディオ特性を調整することができ、第2リアルタイム・コンテンツ・フィルタは、ビデオ・トラック(例、歌っているそのサブジェクトのビデオ)の一部分にグラフィックスをオーバーレイすることができ、第3リアルタイム・コンテンツ・フィルタは、ビデオ・トラックの解像度を調整することができる、などである。
図2の実施例において、フローチャート200はモジュール214に続き、コンテンツ記憶ストリーミング・システムが、限定対話機能コンテンツ編集システムからコンテンツを受信する。特定の実施態様においては、受信されたコンテンツは、コンテンツを編集するために使用される1つまたは複数のフィルタに基づいて記憶される。例えば、特定のカテゴリ(例、音楽)に関連付けられているフィルタで編集されるコンテンツは、同じ特定のカテゴリに関連付けられているリアルタイム・コンテンツ・フィルタで編集される他のコンテンツと一緒に記憶することができる。
図2の実施例において、フローチャート200はモジュール216に続き、コンテンツ記憶ストリーミング・システムが、1つまたは複数の再生装置群で提示するためにコンテンツを提供する。特定の実施態様においては、コンテンツ記憶ストリーミング・システムは、1つまたは複数のコンテンツ・ストリーム(例、リアルタイム・コンテンツ・ストリームまたは記録済みコンテンツ・ストリーム)を介してコンテンツを再生装置群に提供する。
図2の実施例において、フローチャート200はモジュール218に続き、限定対話機能コンテンツ編集システムが、コンテンツの編集を修正する。例えば、1つもしくは複数のリアルタイム・コンテンツ・フィルタを除去することができ、および/または1つもしくは複数の異なるリアルタイム・コンテンツ・フィルタを適用することができる。ステップ208〜218を参照。
図3は、限定対話機能コンテンツ編集システム302の一実施例のブロック図300を示す。図3の実施例では、例示的な限定対話機能コンテンツ編集システム302は、コンテンツ・キャプチャ・エンジン304と、限定入力エンジン306と、リアルタイム編集エンジン308と、限定編集エンジン310と、通信エンジン312と、限定対話機能コンテンツ編集システム・データストア314とを含む。
図3の実施例において、コンテンツ・キャプチャ・エンジン304は、1つまたは複数のサブジェクトのコンテンツを記録するように機能する。例えば、コンテンツ・キャプチャ・エンジン304は、限定対話機能コンテンツ編集システム302に関連付けられている1つまたは複数のセンサ(例、カメラ、マイクロフォン等)を利用して、コンテンツを記録することができる。特定の実施態様においては、1つまたは複数のセンサは、限定対話機能コンテンツ編集システム302の機能を実施する1つまたは複数のデバイスに含まれるが、他の実施態様においては、別様とすることができる。例えば、1つまたは複数のセンサは限定対話機能コンテンツ編集システム302からリモートにして、ネットワークを介してセンサのデータ(例、ビデオ、オーディオ、画像、写真等)をシステム302に通信することができる。特定の実施態様においては、記録済みコンテンツは、少なくとも一時的に(例、1つまたは複数の他のシステムへの送信のために)、限定対話機能コンテンツ編集システム・データストア314に記憶される。
図3の実施例において、限定入力エンジン306は、限定入力を受信して処理するように機能する。特定の実施態様においては、限定入力エンジン306は、受信した限定入力シーケンスに基づいて、リアルタイム編集要求を生成するように構成される。例えば、リアルタイム編集要求は、以下の属性のうちの一部または全部を含むことができる。
・要求識別子:リアルタイム編集要求を一意に識別する識別子。
・限定入力:ボタンを押すこと、ボタンのホールド、ジェスチャおよび同様のものの限定シーケンスなど、要求に関連する限定入力。
・限定出力:再生装置特性など、要求に関連する限定出力。
・フィルタ識別子:特定のリアルタイム・コンテンツ・フィルタを一意に識別する識別子。
・フィルタ履歴:限定対話機能コンテンツ編集システム302に関連付けられている、過去に適用されたリアルタイム・コンテンツ・フィルタの履歴。特定の実施態様においては、フィルタ履歴は、データストア314に記憶することができる。
・フィルタ優先度:限定対話機能コンテンツ編集システム302に関連付けられている1つまたは複数のフィルタ優先度。例えば、フィルタ優先度は、1つまたは複数のフィルタ・カテゴリ(例、音楽)または他のフィルタ属性への関心レベル(例、高い、低い、決して適用しない、常に適用する等)を示すことができる。特定の実施態様においては、フィルタ優先度はデータストア314に記憶される。
・デフォルト・フィルタ:限定対話機能コンテンツ編集システム302に関連付けられている1つまたは複数のデフォルト・フィルタ。特定の実施態様においては、デフォルト・フィルタは、関連付けられているフィルタ識別子をリアルタイム編集要求のフィルタ識別子属性に含めることによって、自動的に適用することができる。
特定の実施態様においては、限定入力エンジン306は、フィルタ作成・記憶システム、フィルタ推奨システムおよび同様のものを含む多様な異なるシステムによって受信して処理するために、リアルタイム編集要求をフォーマット化することができる。
図3の実施例において、リアルタイム編集エンジン308は、コンテンツがキャプチャされるに際し、コンテンツにリアルタイム・コンテンツ・フィルタを適用するように機能する。より具体的には、エンジン308は、適用されるリアルタイム・コンテンツ・フィルタのフィルタ属性に基づいて、コンテンツまたはコンテンツの部分をリアルタイムで編集する。
特定の実施態様においては、リアルタイム編集エンジン308は、限定対話機能コンテンツ編集システム・データストア314に記憶されている1つまたは複数の限定出力ルール324に基づいて、再生装置特性を識別するように構成される。例えば、限定出力ルール324は、ディスプレイ特性、オーディオ特性、および同様のものの値など、再生装置特性の値を定義することができる。限定出力ルール324の値のそれぞれは、デフォルト値(例、予想される再生装置特性に基づいて割り当てられる)、実際の値(例、関連付けられている再生装置の特性)、および/またはカスタマイズされた値に基づくことができる。特定の実施態様においては、値をカスタマイズして(例、デフォルト値またはNULL値から)、コンテンツを記憶するための記憶容量を減少させ、コンテンツを送信(例、ストリーミング)するための帯域幅の使用量を減少させ、および同様なことをすることができる。
図3の実施例において、限定編集エンジン310は、限定入力に基づいて、コンテンツまたはコンテンツの部分を編集するように機能する。例えば、限定編集エンジン310は、限定入力に基づいて、コンテンツの部分を無音化、無音化取り消し、および/または削除することができる。限定入力を受信するためのインタフェースの例を図14および図15に示す。
特定の実施態様においては、限定編集エンジン310は、受信された限定入力に基づいて、1つまたは複数の限定編集ルール316〜322を識別して、実行するように構成される。図3の実施例では、限定編集ルール316〜322はデータストア314に記憶されるが、他の実施態様では、限定編集ルール316〜322は、他の形で、例えば、関連付けられている1つもしくは複数のシステムまたはデータストアに記憶することができる。
特定の実施態様においては、限定編集ルール316〜322は、限定入力に応答してトリガされる1つまたは複数の限定編集アクションを定義する。例えば、限定編集ルール316〜322は、以下のように定義することができる。
無音化限定編集ルール316
特定の実施態様においては、無音化限定編集ルール316は、実行されると、限定編集エンジン310をトリガして、コンテンツの空(またはブランク)部分を記録済みコンテンツに挿入する。第1限定入力に応答して、挿入の始点(例、3分00秒間の録音の1分30秒時点)が設定(またはトリガ)される。例えば、第1限定入力は、図14に図示するインタフェース1802など、限定入力を受信するように構成されるインタフェース上のボタンまたはアイコンのホールドとすることができる。第2限定入力に応答して、挿入の終点(例、3分00秒間の録音の2分10秒)が設定される。例えば、第2限定入力は、第1限定入力でホールドされているボタンまたはアイコンのリリースとすることができる。コンテンツの空部分を挿入の始点で記録済みコンテンツに挿入し、挿入の終点で終了させる。
特定の実施態様においては、リアルタイムで挿入の終点に達し、例えば、40秒間ボタンをホールドすることで、コンテンツの40秒間の空部分が、記録済みコンテンツに挿入される。代わりに、または追加で、第3限定入力に基づいて挿入の終点に達することができる。例えば、ボタンをホールドしている間に、スライダ(または他のGUI要素)を使用して、挿入の終点を設定する時間位置(例、2分10秒)を選択することができる。選択した時間位置でボタンをリリースすると、選択された時間位置に挿入の終点が設定される。このことは、例えば、編集プロセスを迅速化し、さらなる編集の粒度を提供することができる。特定の実施態様においては、追加コンテンツを、記録済みコンテンツの空部分または無音化部分の一部または全部に挿入することができる。
無音化取り消し限定編集ルール318
特定の実施態様においては、無音化取り消し限定編集ルール318は、実行されると、限定編集エンジン310をトリガして、無音化限定編集ルール320の実行によってトリガされたアクションの一部または全部の無音化を取り消す(すなわち元に戻す「アンドゥする」)。例えば、記録済みコンテンツに挿入された、コンテンツの空部分の一部または全部を、除去することができる。さらに、空部分に以前に挿入されたコンテンツも同様に除去することができる。より具体的には、第1限定入力に応答して、アンドゥの始点(例、3分00秒間の録音の1分30秒時点)が設定(またはトリガ)される。例えば、第1限定入力は、図14に図示するインタフェース1802など、限定入力を受信するように構成されるインタフェース上のボタンまたはアイコンのホールドとすることができる。第2限定入力に応答して、アンドゥの終点(例、3分00秒間の録音の2分10秒)が設定される。例えば、第2限定入力は、第1限定入力でホールドされたボタンまたはアイコンのリリースとすることができる。アンドゥの始点から始まってアンドゥの終点で終了するコンテンツの指定空部分は、第2限定入力に応答して、記録済みコンテンツから除去される。
特定の実施態様においては、リアルタイムでアンドゥの終点に達し、例えば40秒間ボタンをホールドすることで、録音済みコンテンツに以前に挿入されたコンテンツの40秒間の空部分が除去される。代わりに、または追加で、第3限定入力に基づいてアンドゥの終点に達することができる。例えば、ボタンをホールドしている間に、スライダ(または他のGUI要素)を使用して、アンドゥの終点を設定する時間位置(例、2分10秒)を選択することができる。選択した時間位置でボタンをリリースすると、選択された時間位置にアンドゥの終点が設定される。このことは、例えば、編集プロセスを迅速化し、さらなる編集の粒度を提供することができる。
削除限定編集ルール320
特定の実施態様においては、削除限定編集ルール320は、実行すると、限定編集エンジン310をトリガして、限定入力に基づいて記録済みコンテンツからコンテンツの一部分を削除する。第1限定入力に応答して、削除の始点(例、3分00秒間の録音の1分30秒時点)が設定(またはトリガ)される。例えば、第1限定入力は、図14に図示するインタフェース1802など、限定入力を受信するように構成されるインタフェース上のボタンまたはアイコンのホールドとすることができる。第2限定入力に応答して、削除の終点(例、3分00秒間の録音の2分10秒)が設定される。例えば、第2限定入力は、第1限定入力でホールドされたボタンまたはアイコンのリリースとすることができる。削除の始点から始まって削除の終点で終了するコンテンツの部分は、記録済みコンテンツから除去される。無音化とは異なり、コンテンツの空部分が挿入されるのではなく、むしろ単にコンテンツが除去され、コンテンツの周辺部分(つまり、削除の始点の前のコンテンツおよび削除の終点の後のコンテンツ)が継ぎ合わされる。
特定の実施態様においては、リアルタイムで削除の終点に達し、例えば、40秒間ボタンをホールドすることで、コンテンツの40秒間の部分が除去される。代わりに、または追加で、第3限定入力に基づいて削除の終点に達することができる。例えば、ボタンをホールドしている間に、スライダ(または他のGUI要素)を使用して、削除の終点を設定する時間位置(例、2分10秒)を選択することができる。選択された時間位置でボタンをリリースすると、選択された時間位置に削除の終点が設定される。このことは、例えば、編集プロセスを迅速化し、さらなる編集の粒度を提供することができる。
オーディオ画像限定編集ルール322
特定の実施態様においては、オーディオ画像限定編集ルール322は、実行されると、限定編集エンジン310をトリガして、1つまたは複数の画像をコンテンツの特定の部分に関連付ける(またはリンクさせる)。例えば、1つまたは複数の画像は、写真または所定の長さ(例、10秒)のビデオを含むことができる。より具体的には、第1限定入力に応答して、オーディオ画像の始点(例、3分00秒間の録音の1分30秒時点)が設定(またはトリガ)される。例えば、第1限定入力は、図15に図示するインタフェース1902など、限定入力を受信するように構成されるインタフェース上のボタンまたはアイコンのホールドとすることができる。第2限定入力に応答して、オーディオ画像の終点(例、3分00分間の録音の2分10秒時点)が設定される。例えば、第2限定入力は、第1限定入力でホールドされたボタンまたはアイコンのリリースとすることができる。コンテンツの特定の部分の再生中に1つまたは複数の画像が提示されるように、つまり、オーディオ画像の始点で始まり、オーディオ画像の終点で終わるように、1つまたは複数の画像がコンテンツの特定の部分に関連付けられる。
特定の実施態様においては、リアルタイムでオーディオ画像の終点に達し、例えば、40秒間ボタンをホールドすることで、1つまたは複数の画像が、そのコンテンツの40秒間の部分にリンクされる。代わりに、または追加で、第3限定入力に基づいてオーディオ画像の終点に達することができる。例えば、ボタンをホールドしている間に、スライダ(または他のGUI要素)を使用して、オーディオ画像の終点を設定する時間位置(例、2分10秒)を選択することができる。選択された時間位置でボタンをリリースすると、選択された時間位置にオーディオ画像の終点が設定される。このことは、例えば、編集プロセスを迅速化し、さらなる編集の粒度を提供することができる。
図3の実施例において、通信エンジン312は、1つまたは複数のシステムに要求を送り、1つまたは複数のシステムからデータを受信するように機能する。通信エンジン312は、ネットワークまたはネットワークの一部を通じて、システムに要求を送り、システムからデータを受信することができる。実施態様固有の、またはその他の考慮事項によっては、通信エンジン312は、接続を通じて、要求を送り、データを受信することができ、接続の全部または一部は無線接続とすることができる。通信エンジン312は、メッセージおよび/または他の通信を、関連付けられているシステムに要求し、関連付けられているシステムから受信することができる。受信されたデータは、限定対話機能コンテンツ・データストア314に記憶することができる。
図3の実施例において、限定対話機能コンテンツ・データストア314は、バッファまたはキャッシュとしてさらに機能する。例えば、データストア314は、他のシステムから受信された限定入力、コンテンツ、通信、他のシステムに送信する予定のコンテンツ、他のデータ等、および同様のものを記憶することができる。
図4は、限定対話機能コンテンツ編集システムの例示的な動作方法のフローチャート400を示す。
図4の実施例において、フローチャート400はモジュール402から始まり、限定対話機能コンテンツ編集システムが、サブジェクトのコンテンツをキャプチャする。特定の実施態様においては、コンテンツ・キャプチャ・エンジンがコンテンツをキャプチャする。
図4の実施例において、フローチャート400はモジュール404に続き、限定対話機能コンテンツ編集システムが、それが再生装置の機能を含むことを前提として、オプションで、キャプチャされているコンテンツを提示する。特定の実施態様においては、再生装置がコンテンツを提示する。
図4の実施例において、フローチャート400はモジュール406に続き、限定対話機能コンテンツ編集システムが、限定入力を受信する。特定の実施態様においては、限定入力は限定入力エンジンによって受信される。
図4の実施例において、フローチャート400はモジュール408に続き、限定対話機能コンテンツ編集システムが、限定入力に基づいてリアルタイム編集要求を生成する。特定の実施態様においては、リアルタイム編集要求は、限定入力エンジンによって生成される。
図4の実施例において、フローチャート400はモジュール410に続き、限定対話機能コンテンツ編集システムが、リアルタイム編集要求に応答して、1つまたは複数のリアルタイム・コンテンツ・フィルタを受信する。特定の実施態様においては、通信エンジンが、1つまたは複数のリアルタイム・コンテンツ・フィルタを受信する。
図4の実施例において、フローチャート400はモジュール412に続き、限定対話機能コンテンツ編集システムが、受信された1つまたは複数のリアルタイム・コンテンツ・フィルタを使用して、コンテンツをリアルタイムで編集するかまたはその他の形で調整する。特定の実施態様においては、リアルタイム・コンテンツ編集エンジンは、受信された1つまたは複数のコンテンツ・フィルタを、キャプチャされているコンテンツの1つまたは複数の部分に適用することによって、コンテンツを編集する。例えば、第1リアルタイム・コンテンツ・フィルタをコンテンツのオーディオ・トラック(例、歌っている人)に適用して、音声変調を実施するかまたはその他の形でボーカル特徴を調整することができ、第2リアルタイム・コンテンツ・フィルタを適用して、1つまたは複数のオーディオ・トラック(例、楽器および/または追加ボーカル)を追加することができ、第3リアルタイム・コンテンツ・フィルタを適用して、コンテンツの1つまたは複数のビデオ部分(または、ビデオ・トラック)にグラフィックスをオーバーレイすることができる、などである。
図4の実施例において、フローチャート400はモジュール414に続き、限定対話機能コンテンツ編集システムが、編集済みのコンテンツを送信する。特定の実施態様においては、通信エンジンが、編集済みコンテンツをコンテンツ記憶ストリーミング・システムに送信する。
図5は、限定対話機能コンテンツ編集システムの例示的な動作方法のフローチャート500を示す。
図5の実施例において、フローチャート500はモジュール502から始まり、限定対話機能コンテンツ編集システムが、サブジェクトのコンテンツをキャプチャする。特定の実施態様においては、コンテンツ・キャプチャ・エンジンがコンテンツをキャプチャする。
図5の実施例において、フローチャート500はモジュール504に続き、限定対話機能コンテンツ編集システムが、1つまたは複数のデフォルトのリアルタイム・フィルタをコンテンツに適用するべきかどうかを決定する。特定の実施態様においては、デフォルトのリアルタイム・コンテンツ・フィルタは、限定かどうかを問わず、入力を受信せずに適用される。例えば、限定対話機能コンテンツ編集システムに記憶されているデフォルトのフィルタ・ルールは、満たされると、限定対話機能コンテンツ編集システムに1つまたは複数のデフォルトのリアルタイム・コンテンツ・フィルタを適用させるトリガ条件を定義することができる。特定の実施態様においては、リアルタイム編集エンジンは、1つまたは複数のデフォルトのリアルタイム・コンテンツ・フィルタを適用するべきかどうかを決定する。
図5の実施例において、フローチャート500はモジュール506に続き、1つまたは複数のデフォルトのリアルタイム・コンテンツ・フィルタを適用するべきと決定された場合、限定対話機能コンテンツ編集システムが、1つまたは複数のデフォルトのリアルタイム・コンテンツ・フィルタを取り出す。特定の実施態様においては、通信エンジンが、1つまたは複数のデフォルトのリアルタイム・コンテンツ・フィルタを取り出す。
図5の実施例において、フローチャート500はモジュール508に続き、限定対話機能コンテンツ編集システムが、コンテンツがキャプチャされるに際し(つまり、リアルタイムで)取り出した1つまたは複数のデフォルトのリアルタイム・コンテンツ・フィルタをコンテンツの少なくとも一部分に適用することによって、コンテンツを調整する。特定の実施態様においては、リアルタイム編集エンジンが、取り出した1つまたは複数のデフォルトのリアルタイム・コンテンツ・フィルタを適用する。
図5の実施例において、フローチャート500はモジュール510に続き、限定対話機能コンテンツ編集システムが、リアルタイム・コンテンツ・フィルタの推奨を受信する。特定の実施態様においては、リアルタイム・コンテンツ・フィルタの推奨は、リアルタイム・コンテンツ・フィルタの推奨によって生成される推奨要求に応答して受信することができる。例えば、推奨要求は、1つまたは複数のフィルタ属性に一致するリアルタイム・コンテンツ・フィルタの要求、キャプチャされているコンテンツのコンテキストに関連付けられているリアルタイム・コンテンツ・フィルタの要求、および同様のものを含むことができる。
図5の実施例において、フローチャート500はモジュール512に続き、限定対話機能コンテンツ編集システムが、第1限定入力を受信して処理し、推奨されるリアルタイム・コンテンツ・フィルタのうちどれも選択しないか、またはそのうちの一部もしくは全部を選択する。特定の実施態様においては、限定入力エンジンが、第1限定入力を受信して処理する。
図5の実施例において、フローチャート500はモジュール514に続き、限定対話機能コンテンツ編集システムが、第1限定入力に基づいて、推奨された1つまたは複数のリアルタイム・コンテンツ・フィルタの少なくとも一部が選択されるかどうかを決定する。特定の実施態様においては、限定入力エンジンが、第1限定入力を受信して処理する。
図5の実施例において、フローチャート500はモジュール516に進み、推奨されたリアルタイム・コンテンツ・フィルタの少なくとも一部が選択される場合、限定対話機能コンテンツ編集システムは、選択されたリアルタイム・コンテンツ・フィルタを取り出す。特定の実施態様においては、通信エンジンが、選択されたリアルタイム・コンテンツ・フィルタを取り出す。
図5の実施例において、フローチャート500はモジュール518に続き、限定対話機能コンテンツ編集システムが、コンテンツがキャプチャされるに際し(つまり、リアルタイムで)、選択されたリアルタイム・コンテンツ・フィルタをコンテンツの少なくとも一部分に適用することによって、コンテンツを調整する。特定の実施態様においては、リアルタイム編集エンジンが、選択された1つまたは複数のリアルタイム・コンテンツ・フィルタを適用する。
図5の実施例において、フローチャート500はモジュール520に続き、推奨されたリアルタイム・コンテンツ・フィルタのいずれも選択されない場合、限定対話機能コンテンツ編集システムが、第2限定入力を受信して処理する。特定の実施態様においては、限定入力エンジンが第2限定入力を受信し、第2限定入力に基づいてリアルタイム編集要求を生成する。
図5の実施例において、フローチャート500はモジュール522に続き、限定対話機能コンテンツ編集システムが、第2限定入力に基づいて1つまたは複数のリアルタイム・コンテンツ・フィルタを取り出す。特定の実施態様においては、通信エンジンが、リアルタイム編集要求を送信し、リアルタイム編集要求に応答して1つまたは複数のリアルタイム・コンテンツ・フィルタを受信する。
図5の実施例において、フローチャート500はモジュール524に続き、限定対話機能コンテンツ編集システムが、コンテンツがキャプチャされるに際し(つまり、リアルタイムで)、受信された1つまたは複数のリアルタイム・コンテンツ・フィルタをコンテンツの少なくとも一部分に適用することによって、コンテンツを調整する。特定の実施態様においては、リアルタイム編集エンジンが、受信された1つまたは複数のリアルタイム・コンテンツ・フィルタを適用する。
図6は、無音化限定編集アクションを実施する限定対話機能コンテンツ編集システムの例示的な動作方法のフローチャート600を示す。
図6の実施例において、フローチャート600はモジュール602から始まり、限定対話機能コンテンツ編集システムは、それが再生装置の機能を含んでいることを前提として、オプションで、記録済みコンテンツを提示する。特定の実施態様においては、再生装置が、記録済みコンテンツを提示する。
図6の実施例において、フローチャート600はモジュール604に続き、限定対話機能コンテンツ編集システムが、第1限定入力(例、第1ボタンを押すこと)を受信する。例えば、ボタンは、関連付けられている限定編集アクション(例、「無音化」)を示す可能性がある。特定の実施態様においては、第1限定入力は限定入力エンジンによって受信される。
図6の実施例において、フローチャート600はモジュール606に続き、限定対話機能コンテンツ編集システムが、第1限定入力に基づいて無音化限定編集ルールを選択する。特定の実施態様においては、限定編集エンジンが無音化限定編集ルールを選択する。
図6の実施例において、フローチャート600はモジュール608に続き、限定対話機能コンテンツ編集システムが、第2限定入力(例、第2ボタンを押してホールドすること)を受信する。特定の実施態様においては、限定入力エンジンが第2限定入力を受信する。様々な実施態様において、第2限定入力が第1限定入力(例、第1ボタンをホールドすること)を含むことができることは理解されるであろう。
図6の実施例において、フローチャート600はモジュール610に続き、限定対話機能コンテンツ編集システムが、第2限定入力に基づいて挿入の始点を設定する。特定の実施態様においては、限定編集エンジンが挿入の始点を設定する。
図6の実施例において、フローチャート600はモジュール612に続き、限定対話機能コンテンツ編集システムが、第3限定入力(例、「早送り」のスライダを記録済みコンテンツの別の時間位置に動かすか、または他の形でそれを選択すること)を受信する。特定の実施態様においては、限定入力エンジンが第3限定入力を受信する。
図6の実施例において、フローチャート600はモジュール614に続き、限定対話機能コンテンツ編集システムが、第3限定入力に基づいて挿入の終点を設定する。特定の実施態様においては、限定編集エンジンが挿入の終点を設定する。
図6の実施例において、フローチャート600はモジュール616に続き、限定対話機能コンテンツ編集システムが、挿入の始点から始まって挿入の終点で終了する記録済みコンテンツに、コンテンツの空部分を挿入する。特定の実施態様においては、限定編集エンジンが、コンテンツの空部分を記録済みコンテンツに挿入する。
図7は、無音化取り消し限定編集アクションを実施する限定対話機能コンテンツ編集システムの例示的な動作方法のフローチャート700を示す。
図7の実施例において、フローチャート700はモジュール702から始まり、限定対話機能コンテンツ編集システムは、それが再生装置の機能を含んでいることを前提として、オプションで、記録済みコンテンツを提示する。特定の実施態様においては、再生装置が、記録済みコンテンツを提示する。
図7の実施例において、フローチャート700はモジュール704に続き、限定対話機能コンテンツ編集システムが、第1限定入力(例、第1ボタンを押すこと)を受信する。例えば、ボタンは、関連付けられている限定編集アクション(例、「無音化取り消し」)を示す可能性がある。特定の実施態様においては、第1限定入力は限定入力エンジンによって受信される。
図7の実施例において、フローチャート700はモジュール706に続き、限定対話機能コンテンツ編集システムが、第1限定入力に基づいて無音化取り消し限定編集ルールを選択する。特定の実施態様においては、限定編集エンジンが無音化取り消し限定編集ルールを選択する。
図7の実施例において、フローチャート700はモジュール708に続き、限定対話機能コンテンツ編集システムが、第2限定入力(例、第2ボタンを押してホールドすること)を受信する。特定の実施態様においては、限定入力エンジンが第2限定入力を受信する。様々な実施態様において、第2限定入力が第1限定入力(例、第1ボタンをホールドすること)を含むことができることは理解されるであろう。
図7の実施例において、フローチャート700はモジュール710に続き、限定対話機能コンテンツ編集システムが、第2限定入力に基づいてアンドゥの始点を設定する。特定の実施態様においては、限定編集エンジンがアンドゥの始点を設定する。
図7の実施例において、フローチャート700はモジュール712に続き、限定対話機能コンテンツ編集システムが、第3限定入力(例、「早送り」のスライダを記録済みコンテンツの別の時間位置に動かすか、または他の形でそれを選択すること)を受信する。特定の実施態様においては、限定入力エンジンが第2限定入力を受信する。
図7の実施例において、フローチャート700はモジュール714に続き、限定対話機能コンテンツ編集システムが、第3限定入力に基づいてアンドゥの終点を設定する。特定の実施態様においては、限定編集エンジンがアンドゥの終点を設定する。
図7の実施例において、フローチャート700はモジュール716に続き、限定対話機能コンテンツ編集システムが、アンドゥの始点から始まってアンドゥの終点で終了する記録済みコンテンツから、コンテンツの空部分を除去する。特定の実施態様においては、限定編集エンジンが、コンテンツの空部分を記録済みコンテンツから除去し、記録済みコンテンツの周囲部分(つまり、アンドゥの始点の前の記録済みコンテンツおよびアンドゥの終点の後の記録済みコンテンツ)を継ぎ合わせる。
図8は、削除限定編集アクションを実施する限定対話機能コンテンツ編集システムの例示的な動作方法のフローチャート800を示す。
図8の実施例において、フローチャート800はモジュール802から始まり、限定対話機能コンテンツ編集システムは、それが再生装置の機能を含んでいることを前提として、オプションで、記録済みコンテンツを提示する。特定の実施態様においては、再生装置が、記録済みコンテンツを提示する。
図8の実施例において、フローチャート800はモジュール804に続き、限定対話機能コンテンツ編集システムが、第1限定入力(例、第1ボタンを押すこと)を受信する。例えば、ボタンは、関連付けられている限定編集アクション(例、「削除」)を示す可能性がある。特定の実施態様においては、第1限定入力は限定入力エンジンによって受信される。
図8の実施例において、フローチャート800はモジュール806に続き、限定対話機能コンテンツ編集システムが、第1限定入力に基づいて削除限定編集ルールを選択する。特定の実施態様においては、限定編集エンジンが削除限定編集ルールを選択する。
図8の実施例において、フローチャート800はモジュール808に続き、限定対話機能コンテンツ編集システムが、第2限定入力(例、第2ボタンを押してホールドすること)を受信する。特定の実施態様においては、限定入力エンジンが第2限定入力を受信する。様々な実施態様において、第2限定入力が第1限定入力(例、第1ボタンをホールドすること)を含むことができることは理解されるであろう。
図8の実施例において、フローチャート800はモジュール810に続き、限定対話機能コンテンツ編集システムが、第2限定入力に基づいて削除の始点を設定する。特定の実施態様においては、限定編集エンジンが削除の始点を設定する。
図8の実施例において、フローチャート800はモジュール812に続き、限定対話機能コンテンツ編集システムが、第3限定入力(例、「早送り」のスライダを記録済みコンテンツの別の時間位置に動かすか、または他の形でそれを選択すること)を受信する。特定の実施態様においては、限定入力エンジンが第2限定入力を受信する。
図8の実施例において、フローチャート800はモジュール814に続き、限定対話機能コンテンツ編集システムが、第3限定入力に基づいて削除の終点を設定する。特定の実施態様においては、限定編集エンジンが削除の終点を設定する。
図8の実施例において、フローチャート800はモジュール816に続き、限定対話機能コンテンツ編集システムが、削除の始点から始まって削除の終点で終了する記録済みコンテンツから、コンテンツの特定の部分を削除する。特定の実施態様においては、限定編集エンジンが、コンテンツの特定の部分を記録済みコンテンツから除去する。
図8の実施例において、フローチャート800はモジュール818に続き、限定対話機能コンテンツ編集システムが、コンテンツの、削除された特定の部分の周囲の記録済みコンテンツの部分(つまり、削除の始点の前の記録済みコンテンツおよび削除の終点の後の記録済みコンテンツ)を継ぎ合わせる。
図9は、オーディオ画像限定編集アクションを実施する限定対話機能コンテンツ編集システムの例示的な動作方法のフローチャート900を示す。
図9の実施例において、フローチャート900はモジュール902から始まり、限定対話機能コンテンツ編集システムは、それが再生装置の機能を含んでいることを前提として、オプションで、記録済みコンテンツを提示する。特定の実施態様においては、再生装置が、記録済みコンテンツを提示する。
図9の実施例において、フローチャート900はモジュール904に続き、限定対話機能コンテンツ編集システムが、第1限定入力(例、第1ボタンを押すこと)を受信する。例えば、ボタンは、関連付けられている限定編集アクション(例、「オーディオ画像」)を示す可能性がある。特定の実施態様においては、第1限定入力は限定入力エンジンによって受信される。
図9の実施例において、フローチャート900はモジュール906に続き、限定対話機能コンテンツ編集システムが、第1限定入力に基づいてオーディオ画像限定編集ルールを選択する。特定の実施態様においては、限定編集エンジンがオーディオ画像限定編集ルールを選択する。
図9の実施例において、フローチャート900はモジュール908に続き、限定対話機能コンテンツ編集システムが、第2限定入力(例、第2ボタンを押してホールドすること)を受信する。特定の実施態様においては、限定入力エンジンが第2限定入力を受信する。様々な実施態様において、第2限定入力が第1限定入力(例、第1ボタンをホールドすること)を含むことができることは理解されるであろう。
図9の実施例において、フローチャート900はモジュール910に続き、限定対話機能コンテンツ編集システムが、第2限定入力に基づいてオーディオ画像の始点を設定する。特定の実施態様においては、限定編集エンジンがオーディオ画像の始点を設定する。
図9の実施例において、フローチャート900はモジュール912に続き、限定対話機能コンテンツ編集システムが、第3限定入力(例、「早送り」のスライダを記録済みコンテンツの別の時間位置に動かすか、または他の形でそれを選択すること)を受信する。特定の実施態様においては、限定入力エンジンが第2限定入力を受信する。
図9の実施例において、フローチャート900はモジュール914に続き、限定対話機能コンテンツ編集システムが、第3限定入力に基づいてオーディオ画像の終点を設定する。特定の実施態様においては、限定編集エンジンがオーディオ画像の終点を設定する。
図9の実施例において、フローチャート900はモジュール916に続き、限定対話機能コンテンツ編集システムが、オーディオ画像の始点から始まってオーディオ画像の終点で終了する記録の特定の部分に、1つまたは複数の画像(例、オーディオ画像ルールによって定義される)をリンクさせる。特定の実施態様においては、限定編集エンジンがリンク付けを実施する。
図9の実施例において、フローチャート900はモジュール918に続き、限定対話機能コンテンツ編集システムが、限定対話機能コンテンツ編集システムが再生装置の機能を含むことを前提として、オプションで、記録済みコンテンツの特定の部分の再生中に、リンク付けされた1つまたは複数の画像を提示する。
図10は、コンテンツ記憶ストリーミング・システム1002の一実施例のブロック図1000を示す。図10の実施例において、コンテンツ記憶ストリーミング・システム1002は、コンテンツ管理エンジン1004と、ストリーミング認証エンジン1006と、リアルタイム・コンテンツ・ストリーミング・エンジン1008と、記録済みコンテンツ・ストリーミング・エンジン1010と、通信エンジン1012と、コンテンツ記憶ストリーミング・システム・データストア1014とを含む。
図10の実施例において、コンテンツ管理エンジン1004は、コンテンツ記憶ストリーミング・システム・データストア1012に記憶されているリアルタイム・コンテンツおよび記録済みコンテンツ(総称的に、コンテンツ)を作成するか、読み出すか、更新するか、削除するか、またはその他の形でアクセスするように機能する。特定の実施態様においては、コンテンツ管理エンジン1004は、これらの動作の任意のものを、手動(例、GUIと対話する管理者によって)または自動(例、コンテンツ・ストリーム要求に応答して)のいずれかで実施する。特定の実施態様においては、コンテンツは、コンテンツ属性に関連付けられているコンテンツ記録に記憶される。これは、例えば、関連コンテンツを見つけること、特定のコンテンツまたはコンテンツのタイプを取り出すこと、コンテキスト的に関係のあるリアルタイム・コンテンツ・フィルタを識別すること、などに役立つことができる。コンテンツ属性は、以下の一部または全部を含むことができる。
・コンテンツ識別子:コンテンツを一意に識別する識別子。
・コンテンツ・タイプ:コンテンツに関連付けられている1つまたは複数のコンテンツ・タイプ。コンテンツ・タイプは、例えば、ビデオ、オーディオ、画像、写真等を含むことができる。
・コンテンツ・カテゴリ:コンテンツに関連付けられている1つまたは複数のコンテンツ・カテゴリ。コンテンツ・カテゴリは、例えば、音楽、動画、小説家、批評、ブロガー、寸評者、および同様のものを含むことができる。
・コンテンツ・ディスプレイ特性:コンテンツに関連付けられている1つまたは複数のディスプレイ特性。
・コンテンツ・オーディオ特性:コンテンツに関連付けられている1つまたは複数のオーディオ特性。
・コンテンツ・アクセシビリティ:コンテンツに関連付けられている1つまたは複数のアクセシビリティ属性。例えば、コンテンツの再生を視聴者の年齢に基づいて制限することができ、および/または関連のコンテンツの再生にはログイン認証情報を要求することができる。
・コンテンツ圧縮フォーマット:コンテンツに関連付けられている圧縮フォーマット(例、MPEG、MP3、JPEG、GIF等)。
・コンテンツ持続時間:コンテンツの再生時間の持続時間。
・コンテンツ・タイムスタンプ:コンテンツに関連付けられている1つまたは複数のタイムスタンプ。例、キャプチャ開始タイムスタンプ、編集開始タイムスタンプ、編集終了タイムスタンプ、キャプチャ終了タイムスタンプ等。
・関連コンテンツ識別子:関連コンテンツを一意に識別する1つまたは複数の識別子。
・限定対話機能コンテンツ編集システム識別子:コンテンツをキャプチャして編集した限定対話機能コンテンツ編集システムを一意に識別する識別子。
図10の実施例において、ストリーミング認証エンジン1006は、コンテンツへのアクセスを制御するように機能する。特定の実施態様においては、アクセスは、1つまたは複数のコンテンツ属性によって制御される。例えば、特定のコンテンツの再生は、関連付けられているコンテンツ・アクセシビリティ属性に基づいて制限することができる。
図10の実施例において、リアルタイム・コンテンツ・ストリーミング・エンジン1008は、1つまたは複数の再生装置群にリアルタイム・コンテンツを提供するように機能する。特定の実施態様においては、リアルタイム・コンテンツ・ストリーミング・エンジン1008は、1つまたは複数のリアルタイム・コンテンツ・ストリームを生成する。リアルタイム・コンテンツ・ストリーミング1008エンジンは、リアルタイム・コンテンツの1つまたは複数のコンテンツ属性(例、コンテンツ圧縮フォーマット属性、コンテンツ・ディスプレイ特性属性、コンテンツ・オーディオ特性属性等)およびストリーミング対象特性(例、再生装置特性)に基づいて、リアルタイム・コンテンツ・ストリームをフォーマット化することが可能である。
図10の実施例において、記録済みコンテンツ・ストリーミング・エンジン1010は、1つまたは複数の再生装置群に記録済みコンテンツを提供するように機能する。特定の実施態様においては、記録済みコンテンツ・ストリーミング・エンジン1008は、1つまたは複数の記録済みコンテンツ・ストリームを生成する。記録済みコンテンツ・ストリーミング1008エンジンは、リアルタイム・コンテンツの1つまたは複数のコンテンツ属性(例、コンテンツ圧縮フォーマット属性、コンテンツ・ディスプレイ特性属性、コンテンツ・オーディオ特性属性等)およびストリーミング対象特性(例、再生装置特性)に基づいて、記録済みコンテンツ・ストリームをフォーマット化することが可能である。
図10の実施例において、通信エンジン1012は、1つまたは複数のシステムに要求を送り、1つまたは複数のシステムからデータを受信するように機能する。通信エンジン1012は、ネットワークまたはネットワークの一部を通じて、システムに要求を送り、システムからデータを受信することができる。実施態様固有の、またはその他の考慮事項によっては、通信エンジン1012は、接続を通じて、要求を送り、データを受信することができ、接続の全部または一部は無線接続とすることができる。通信エンジン1012は、メッセージおよび/または他の通信を、関連付けられているシステムに要求し、関連付けられているシステムから受信することができる。受信されたデータは、データストア1014に記憶することができる。
図11は、コンテンツ記憶ストリーミング・システムの例示的な動作方法のフローチャート1100を示す。
図11の実施例において、フローチャート1100は、モジュール1102から始まり、コンテンツ記憶ストリーミング・システムは、コンテンツがキャプチャされるに際し、編集済みのコンテンツを受信する。特定の実施態様においては、通信エンジンが編集済みコンテンツを受信する。
図11の実施例において、フローチャート1100はモジュール1104に続き、コンテンツ記憶ストリーミング・システムが、受信されたコンテンツを記憶する。特定の実施態様においては、受信されたコンテンツに関連付けられている1つまたは複数のコンテンツ属性およびフィルタ属性に基づいて、コンテンツ管理エンジンが、受信されたコンテンツを、コンテンツ記憶ストリーミング・システム・データストアに記憶する。例えば、コンテンツ管理エンジンは、受信されたコンテンツからコンテンツ記録を生成し、受信されたコンテンツに関連付けられているコンテンツ属性と、受信されたコンテンツを編集するために使用される1つまたは複数のフィルタのフィルタ属性と、に基づいてコンテンツ記録フィールドを埋める。
図11の実施例において、フローチャート1100は、モジュール1106に続き、コンテンツ記憶ストリーミング・システムが、リアルタイム・コンテンツ・ストリーム要求を受信する。特定の実施態様においては、リアルタイム・ストリーミング・エンジンが、リアルタイム・コンテンツ・ストリーム要求を受信する。
図11の実施例において、フローチャート1100はモジュール1108に続き、コンテンツ記憶ストリーミング・システムが、リアルタイム・コンテンツ・ストリーム要求を認証する。特定の実施態様においては、ストリーミング認証エンジンが、リアルタイム・コンテンツ・ストリーム要求を認証する。
図11の実施例において、フローチャート1100はモジュール1110に続き、リアルタイム・コンテンツ・ストリーム要求が認証されない場合、要求は拒否される。特定の実施態様においては、リアルタイム・コンテンツ・ストリーミング・エンジンは、ストリーム拒否メッセージを生成することができ、通信エンジンが拒否メッセージを送信することができる。
図11の実施例において、フローチャート1100はモジュール1112に続き、リアルタイム・コンテンツ・ストリーム要求が認証されたら、コンテンツ記憶ストリーミング・システムが、リアルタイム・コンテンツ・ストリーム要求に基づいて、コンテンツ記憶ストリーミング・システム・データストア内のコンテンツ記録を識別する。特定の実施態様においては、コンテンツ管理エンジンが、コンテンツ記録を識別する。
図11の実施例において、フローチャート1100はモジュール1114に続き、コンテンツ記憶ストリーミング・システムが、識別されたコンテンツ記録のコンテンツを含むリアルタイム・コンテンツを含むリアルタイム・コンテンツ・ストリームを生成する。特定の実施態様においては、リアルタイム・コンテンツ・ストリーミング・エンジンが、リアルタイム・コンテンツ・ストリームを生成する。
図11の実施例において、フローチャート1100はモジュール1116に続き、コンテンツ記憶ストリーミング・システムが、リアルタイム・コンテンツ・ストリームを送信する。特定の実施態様においては、リアルタイム・コンテンツ・ストリーミング・エンジンが、リアルタイム・コンテンツ・ストリームを送信する。
図12は、フィルタ作成・記憶システム1202の実施例のブロック図1200を示す。図12の実施例において、フィルタ作成・記憶システム1202は、フィルタ管理エンジン1204と、通信エンジン1206と、フィルタ作成・記憶システム・データストア1208とを含む。
図12の実施例において、フィルタ管理エンジン1204は、フィルタ作成記憶データストア1208に記憶されているリアルタイム・コンテンツ・フィルタを作成するか、読み出すか、更新するか、削除するか、またはその他の形でアクセスするように機能する。特定の実施態様においては、フィルタ管理エンジン1204は、これらの動作の任意のものを、手動(例、GUIと対話する管理者によって)または自動(例、リアルタイム編集要求に応答して)のいずれかで実施する。特定の実施態様においては、リアルタイム・コンテンツ・フィルタは、関連付けられている1つまたは複数のフィルタ属性に基づいて、フィルタ記録に記憶される。このことは、例えば、リアルタイム・コンテンツ・フィルタを見つけること、特定のリアルタイム・コンテンツ・フィルタまたはリアルタイム・コンテンツ・フィルタのタイプを取り出すこと、コンテキスト的に関係のあるリアルタイム・コンテンツ・フィルタを識別すること、などに役立つことができる。フィルタ属性は、以下の一部または全部を含むことができる。
・フィルタ識別子:リアルタイム・コンテンツ・フィルタを一意に識別する識別子。
・フィルタ・アクション:キャプチャされているコンテンツにリアルタイム・コンテンツ・フィルタを適用することによって生じる1つまたは複数の編集アクション。例えば、キャプチャされているコンテンツの上に二次コンテンツをオーバーレイすること、キャプチャされているコンテンツ内の1つまたは複数のサブジェクトの特性を調整すること、キャプチャされているコンテンツのコンテンツ特性を調整すること、および/または同様なこと。
・限定入力:ボタンを押すこと、ボタンのホールド、ジェスチャ、および同様のものの限定シーケンスなど、リアルタイム・コンテンツ・フィルタに関連付けられている所定の限定入力。
・限定出力:再生装置特性など、リアルタイム・コンテンツ・フィルタに関連付けられている所定の限定出力。
・コンテンツ・タイプ:リアルタイム・コンテンツ・フィルタで編集するのに適した1つまたは複数のコンテンツのタイプ。例えば、コンテンツ・タイプは、オーディオ、ビデオ、画像、写真、および/または同様のものを含むことができる。
・カテゴリ:リアルタイム・コンテンツ・フィルタに関連付けられている1つまたは複数のカテゴリ。例えば、カテゴリは、音楽、小説家、批評、ブロガー、寸評者、および/または同様のものを含むことができる。
・デフォルト・フィルタ:リアルタイム・コンテンツ・フィルタが、関連付けられている1つまたは複数の限定対話機能コンテンツ編集システムのデフォルト・フィルタであることを示す1つまたは複数の識別子。特定の実施態様においては、デフォルト・フィルタは、要求に含まれる情報に関係なく、限定対話機能コンテンツ編集システム302から受信される、受信されたリアルタイム編集要求に応答して、自動的にそのシステム302に送ることができる。
図12の実施例において、通信エンジン1206は、1つまたは複数のシステムに要求を送り、1つまたは複数のシステムからデータを受信するように機能する。通信エンジン1206は、ネットワークまたはネットワークの一部を通じて、システムに要求を送り、システムからデータを受信することができる。実施態様固有の、またはその他の考慮事項によっては、通信エンジン1206は、接続を通じて、要求を送り、データを受信することができ、接続の全部または一部は無線接続とすることができる。通信エンジン1206は、メッセージおよび/または他の通信を、関連付けられているシステムに要求し、関連付けられているシステムから受信することができる。受信されたデータは、データストア1208に記憶することができる。
図13は、フィルタ作成・記憶システムの例示的な動作方法のフローチャート1300を示す。
図13の実施例において、フローチャート1300はモジュール1302から始まり、フィルタ作成・記憶システムは、1つまたは複数のフィルタ属性(または、値)を受信する。特定の実施態様においては、フィルタ管理エンジンは、GUIを介して1つまたは複数のフィルタ属性を受信することができる。例えば、受信されるフィルタ属性は、フィルタ・タイプ属性については「音楽」、コンテンツ・タイプ属性については「オーディオ」、限定入力属性については「ボタン押し+左にスワイプ・ジェスチャ」、フィルタ・アクション属性については音声変調器、限定出力属性については「1024×768解像度」、フィルタ識別子属性についてはランダム化したハッシュ値、および同様のものを含むことができる。
図13の実施例において、フローチャート1300はモジュール1304に続き、フィルタ作成・記憶システムが、受信された1つまたは複数のフィルタ属性に基づいて、新たなリアルタイム・コンテンツ・フィルタを生成するか、または既存のリアルタイム・コンテンツ・フィルタを更新する(総称的に、生成する)。特定の実施態様においては、フィルタ管理エンジンが、リアルタイム・コンテンツ・フィルタを生成する。
図13の実施例において、フローチャート1300はモジュール1306に続き、フィルタ作成・記憶システムが、生成されたリアルタイム・コンテンツ・フィルタを記憶する。特定の実施態様においては、生成されたリアルタイム・コンテンツ・フィルタは、フィルタ属性の少なくとも1つに基づいて、フィルタ管理エンジンによってフィルタ作成・記憶システム・データストアに記憶される。例えば、生成されたリアルタイム・コンテンツ・フィルタは、カテゴリ・フィルタ属性に基づいて複数のフィルタ・ライブラリのうちの1つに記憶することができる。
図13の実施例において、フローチャート1300はモジュール1308に続き、フィルタ作成・記憶システムが、リアルタイム編集要求を受信する。特定の実施態様においては、通信エンジンがリアルタイム編集要求を受信することができ、フィルタ管理エンジンがリアルタイム編集要求の構文解析をすることができる。例えば、フィルタ管理エンジンは、リアルタイム編集要求を、要求識別子属性、限定入力属性、限定出力属性、および/またはフィルタ識別子属性などの要求属性に分けて構文解析することができる。
図13の実施例において、フローチャート1300はモジュール1310に続き、フィルタ作成・記憶システムが、リアルタイム編集要求が任意のリアルタイム・コンテンツ・フィルタに一致するかどうかを決定する。特定の実施態様においては、フィルタ管理エンジンは、構文解析された要求属性のうちの1つまたは複数を、記憶されているリアルタイム・コンテンツ・フィルタに関連付けられている対応フィルタ属性と比較することによって、決定を行う。例えば、特定の要求属性(例、限定入力属性)が特定の対応フィルタ属性(例、限定入力属性)と一致する場合、および/または要求属性の所定の閾値数(例、3)が対応フィルタ属性に一致する場合に、一致が生じ得る。
図13の実施例において、フローチャート1300はモジュール1312に続き、フィルタ作成・記憶システムが「一致がない」と決定する場合、そこでフィルタ作成・記憶システムは、リアルタイム編集要求の処理を終了する。特定の実施態様においては、通信エンジンが、終了メッセージを生成して送信することができる。
図13の実施例において、フローチャート1300はモジュール1314に続き、フィルタ作成・記憶システムが「一致が存在する」と決定する場合、フィルタ作成・記憶システムは、一致する1つまたは複数のリアルタイム・コンテンツ・フィルタを取り出す。特定の実施態様においては、フィルタ管理エンジンが、フィルタ作成・記憶システム・データストアから、一致するリアルタイム・コンテンツ・フィルタを取り出す。
図13の実施例において、フローチャート1300はモジュール1316に続き、フィルタ作成・記憶システムは、1つまたは複数の一致するリアルタイム・コンテンツ・フィルタを送信する。特定の実施態様においては、通信エンジンが、1つまたは複数の一致するリアルタイム・コンテンツ・フィルタを送信する。
図14は、フィルタ推奨システム1402の一実施例のブロック図1400を示す。図14の実施例において、フィルタ推奨システム1402は、リアルタイム・コンテンツ認識エンジン1404と、コンテンツ・フィルタ推奨エンジン1406と、通信エンジン1408と、フィルタ推奨システム・データストア1410とを含む。
図14の実施例において、リアルタイム・コンテンツ認識エンジン1404は、リアルタイム・コンテンツ内の1つまたは複数のサブジェクトを識別するように機能する。特定の実施態様においては、リアルタイム・コンテンツ認識エンジン1404は、多様な画像分析、オーディオ分析、モーション・キャプチャ分析、および自然言語処理分析を実施して、1つまたは複数のサブジェクトを識別する。例えば、リアルタイム・コンテンツ認識エンジン1404は、キャプチャされているコンテンツ内の、人、音声、構造物、グラフィック特徴等を識別することができる。
図14の実施例において、コンテンツ・フィルタ推奨エンジン1406は、コンテキスト的に関係のある1つまたは複数のリアルタイム・コンテンツ・フィルタの選択を促すように機能する。特定の実施態様においては、コンテンツ・フィルタ推奨エンジン1406は、リアルタイム・コンテンツ内で識別された1つまたは複数のサブジェクトに基づいて、コンテキスト的に関係のあるリアルタイム・コンテンツ・フィルタの選択を促すことが可能である。例えば、オーディオ分析は、リアルタイム・コンテンツが音楽(例、歌、器楽曲等)を含むと決定し、音楽カテゴリに関連付けられているリアルタイム・コンテンツ・フィルタを識別することができる。
特定の実施態様においては、コンテンツ・フィルタ推奨エンジン1406は、特定の限定活動コンテンツ編集システムに関連付けられているデータストア1410に記憶されているリアルタイム・コンテンツ・フィルタ・ルールを維持する。コンテンツ・フィルタ推奨エンジン1406は、ルールで定義される1つまたは複数の推奨トリガ条件を満たすことに基づき、1つまたは複数のリアルタイム・コンテンツ・フィルタを識別することが可能である。このことは、例えば、限定対話機能コンテンツ編集システムが特定のリアルタイム・コンテンツ・フィルタを特に要求しなくても、コンテンツのキャプチャおよび編集セッション中に、特定のリアルタイム・コンテンツ・フィルタを適用することを確実にするのに役立つことができる。例えば、推奨トリガ条件は、以下の一部または全部を含むことができる。
・音声認識トリガ:リアルタイム・コンテンツ認識エンジンが、サブジェクトの音声をコンテンツと同定し、その音声が、トリガ条件に関連付けられている音声に一致する場合、トリガ条件が満たされる。
・顔特徴認識トリガ:リアルタイム・コンテンツ認識エンジンが、サブジェクトの顔特徴をコンテンツと同定し、その顔特徴が、トリガ条件に関連付けられている顔特徴と一致する場合、トリガ条件が満たされる。
・カスタマイズド・トリガ:限定対話機能コンテンツ編集システムによって予め定義されるトリガ条件。
図14の実施例において、通信エンジン1408は、1つまたは複数のシステムに要求を送り、1つまたは複数のシステムからデータを受信するように機能する。通信エンジン1408は、ネットワークまたはネットワークの一部を通じて、システムに要求を送り、システムからデータを受信することができる。実施態様固有の、またはその他の考慮事項によっては、通信エンジン1408は、接続を通じて、要求を送り、データを受信することができ、接続の全部または一部は無線接続とすることができる。通信エンジン1408は、メッセージおよび/または他の通信を、関連付けられているシステムに要求し、関連付けられているシステムから受信することができる。受信されたデータは、データストア1410に記憶することができる。
図15は、フィルタ推奨システムの例示的な動作方法のフローチャート1500を示す。
図15の実施例において、フローチャート1500はモジュール1502から始まり、フィルタ推奨システムはリアルタイム編集要求を受信する。特定の実施態様においては、通信モジュールがリアルタイム編集要求を受信する。
図15の実施例において、フローチャート1500はモジュール1504に続き、フィルタ推奨システムが、リアルタイム編集要求を、要求識別子属性、限定入力属性、限定出力属性、および/またはフィルタ識別子属性などの要求属性に分けて構文解析する。特定の実施態様においては、コンテンツ・フィルタ推奨エンジンがリアルタイム編集要求の構文解析をすることができる。
図15の実施例において、フローチャート1500はモジュール1506に続き、フィルタ推奨システムが、リアルタイム編集要求に関連付けられているリアルタイム・コンテンツ内の1つまたは複数のサブジェクトを識別する。特定の実施態様においては、リアルタイム・コンテンツ認識エンジンが、1つまたは複数のサブジェクトを識別する。
図15の実施例において、フローチャート1500はモジュール1508に続き、フィルタ推奨システムが、要求属性および/または識別された1つまたは複数のサブジェクトに基づいて、1つまたは複数のリアルタイム・コンテンツ・フィルタを識別する。例えば、サブジェクトがミュージック・トラックを含む場合、音楽カテゴリに関連付けられている1つまたは複数のリアルタイム・コンテンツ・フィルタを、フィルタ推奨システムが識別することができる。
図15の実施例において、フローチャート1500はモジュール1510に続き、フィルタ推奨システムが、1つまたは複数のリアルタイム・コンテンツ・フィルタの特定を送信する。
図16は、再生装置1602の一実施例のブロック図1600を示す。図16の実施例において、再生装置1602は、コンテンツ・ストリーム提示エンジン1604と、通信エンジン1606と、再生装置データストア1608とを含む。
図16の実施例において、コンテンツ・ストリーム提示エンジン1604は、リアルタイム・コンテンツの再生および記録済みコンテンツの再生の要求を生成し、要求に基づいてリアルタイム・コンテンツおよび記録済みコンテンツを提示するように機能する。特定の実施態様においては、コンテンツ・ストリーム提示エンジン1604は、リアルタイム・コンテンツ・ストリームおよび記録済みコンテンツ・ストリームを受信して表示するように構成される。例えば、ストリームは、関連付けられているディスプレイおよびスピーカを介して提示することができる。
図16の実施例において、通信エンジン1606は、1つまたは複数のシステムに要求を送り、1つまたは複数のシステムからデータを受信するように機能する。通信エンジン1606は、ネットワークまたはネットワークの一部を通じて、システムに要求を送り、システムからデータを受信することができる。実施態様固有の、またはその他の考慮事項によっては、通信エンジン1606は、接続を通じて、要求を送り、データを受信することができ、接続の全部または一部は無線接続とすることができる。通信エンジン1606は、メッセージおよび/または他の通信を、関連付けられているシステムに要求し、関連付けられているシステムから受信することができる。受信されたデータは、データストア1608に記憶することができる。
図16の実施例において、再生装置データストア1608は、再生装置特性を記憶するように機能する。特定の実施態様においては、再生装置特性は、ディスプレイ特性、オーディオ特性、および同様のものを含む。
図17は、再生装置の例示的な動作方法のフローチャート1700を示す。
図17の実施例において、フローチャート1700はモジュール1702から始まり、再生装置はリアルタイム・コンテンツ再生要求を生成する。特定の実施態様においては、コンテンツ・ストリーム提示エンジンが要求を生成する。
図17の実施例において、フローチャート1700はモジュール1704に続き、再生装置が、リアルタイム・コンテンツ要求を送信する。特定の実施態様においては、通信モジュールが要求を送信する。
図17の実施例において、フローチャート1700はモジュール1706に続き、再生装置が、要求に基づいてリアルタイム・コンテンツ・ストリームを受信する。特定の実施態様においては、通信モジュールが要求を送信する。
図17の実施例において、フローチャート1700はモジュール1708に続き、再生装置が、リアルタイム・コンテンツ・ストリームを提示する。特定の実施態様においては、コンテンツ・ストリーム提示エンジンが、リアルタイム・コンテンツ・ストリームを提示する。
図18は、限定編集インタフェース1802の一実施例を示す。例えば、限定編集インタフェース1802は、1つまたは複数のモバイル・デバイス(例、限定対話機能コンテンツ編集システムステムの機能を実施する1つまたは複数のモバイル・デバイス)に関連付けられている、1つまたは複数のグラフィカル・ユーザ・インタフェース(GUI)、物理ボタン、スクロール・ホイール、および同様のものを含むことができる。より具体的には、限定編集インタフェース1802は、限定編集一次インタフェース・ウィンドウ1804と、限定編集二次インタフェース・ウィンドウ1806と、コンテンツ・フィルタ・アイコン1808a〜1808bと、限定編集アイコン1810a〜1810bと、限定編集制御(または「記録」)アイコン1812とを含む。
特定の実施態様においては、限定編集一次インタフェース・ウィンドウ1804は、コンテンツの1つまたは複数の部分を表示し、その編集または再生を制御するように構成されるGUIウィンドウを備える。例えば、ウィンドウ1804は、開始時間位置値(例、00分00秒)、現時間位置値(例、02分10秒)、および終了時間位置値(例、03分00秒)など、コンテンツに関連付けられている時間位置値を表示することができる。ウィンドウ1804は、コンテンツの再生を制御するための1つまたは複数の特徴(例、早送り、巻き戻し、一時停止、再生等)を追加で含むことができる。例えば、1つまたは複数の特徴は、限定入力を用いて操作することのできるグラフィカル・スクロール・バーを含むことができ、例えば、スライダを前に動かして早送りにし、スライダを後に動かして巻き戻す、などである。
特定の実施態様においては、限定編集二次インタフェース・ウィンドウ1806は、コンテンツの1つまたは複数の部分に関連付けられているグラフィックスを、再生中に表示するように構成されるGUIウィンドウを備える。例えば、ウィンドウ1806は、再生中に、オーディオ・コンテンツのテキストを表示することができる。
特定の実施態様においては、コンテンツ・フィルタ・アイコン1808a〜1808bは、限定入力に応答して、コンテンツ・フィルタを選択するように構成される。例えば、アイコン1808a〜1808bのそれぞれを特定のコンテンツ・フィルタ、例えばオーディオ特性を変調するためのコンテンツ・フィルタおよび同様のものに関連付けることができる。
特定の実施態様においては、限定編集アイコン1810a〜1810bは、限定入力に応答して、限定編集ルール(例、無音化限定編集ルール)を選択するように構成される。例えば、アイコン1810a〜1810bのそれぞれは、特定の限定編集ルールに関連付けることができる。
特定の実施態様においては、限定編集制御アイコン1812は、限定入力に応答して、コンテンツを編集するように構成される。例えば、アイコン1812をホールドすること、または押すことで、選択された1つまたは複数のコンテンツ・フィルタおよび/または限定ルールに基づいて、コンテンツを編集することができる。限定編集アイコン1812は、さらに、限定編集インタフェース1802の1つまたは複数の他の特徴と合わせて使用することができる。例えば、限定編集制御アイコン1812を特定のコンテンツ時間位置(例、02分10秒)でホールドして、コンテンツの再生を別のコンテンツ時間位置(例、02分45秒)まで早送りすると、例えば選択された1つまたは複数のコンテンツ・フィルタおよび/または限定ルールに基づいて、そのコンテンツ時間位置間のコンテンツの部分を編集することができる。
図19は、限定編集インタフェース1902の一実施例を示す。例えば、限定編集インタフェース1902は、1つまたは複数のモバイル・デバイス(例、限定対話機能コンテンツ編集システムの機能を実施する1つまたは複数のモバイル・デバイス)に関連付けられている1つまたは複数のグラフィカル・ユーザ・インタフェース(GUI)、物理ボタン、スクロール・ホイール、および同様のものを含むことができる。より具体的には、限定編集インタフェース1902は、限定編集インタフェース・ウィンドウ1904と、限定編集制御ウィンドウ1906と、コンテンツ画像アイコン1906a〜1906fとを含む。
特定の実施態様においては、限定編集一次インタフェース・ウィンドウ1904は、コンテンツの1つまたは複数の部分の編集または再生を制御するように構成されるGUIウィンドウを備える。例えば、ウィンドウ1904は、開始時間位置値(例、00分00秒)、現時間位置値(例、02分10秒)、および終了時間位置値(例、03分00秒)など、コンテンツに関連付けられている時間位置値を表示することができる。ウィンドウ1904は、コンテンツの編集または再生を制御するための1つまたは複数の特徴(例、早送り、巻き戻し、一時停止、再生等)を追加で含むことができる。例えば、1つまたは複数の特徴は、限定入力を用いて操作することのできるグラフィカル・スクロール・バーを含むことができ、例えば、スライダを前に動かして早送りにし、スライダを後に動かして巻き戻す、などである。
特定の実施態様においては、限定編集制御ウィンドウ1906は、限定入力に応答して、1つまたは複数の画像をオーディオ・コンテンツに関連付けるように構成される(例、オーディオ画像限定編集ルールに基づいて)。例えば、コンテンツ画像アイコン1908a〜1908fのうちの1つをホールドすること、または押すことで、オーディオ・コンテンツの再生中に、そのコンテンツ画像アイコンに関連付けられている1つまたは複数の画像を再生させることができる。限定編集制御ウィンドウ1906は、さらに、限定編集インタフェース1902の1つまたは複数の他の特徴と合わせて使用することができる。例えば、コンテンツ画像アイコン1906a〜1906fのうちの1つを特定のコンテンツ時間位置(例、02分10秒)でホールドし、コンテンツの再生を別のコンテンツ時間位置(例、02分45秒)まで早送りすると、そのコンテンツ時間位置間のオーディオ・コンテンツの再生中に、そのコンテンツ画像アイコンに関連付けられている1つまたは複数の画像を表示することができる。
図20は、本書で説明する様々な実施態様に組み込むことのできるコンピュータ・システム2002の一実施例のブロック図2000を示す。例えば、限定対話機能コンテンツ編集システム104、コンテンツ記憶ストリーミング・システム106、フィルタ作成・記憶システム108、フィルタ推奨システム110、および再生装置群112はそれぞれ、コンピュータ・システム2000の特定の実施態様を備えることができる。図20の実施例は、無線クライアントもしくはワークステーション、またはサーバ・コンピュータ・システムなど、クライアント・コンピュータ・システムとして使用することのできるコンピュータ・システムを例示することが意図される。図20の実施例において、コンピュータ・システム2000は、コンピュータ2002と、I/Oデバイス2004と、ディスプレイ装置2006とを含む。コンピュータ2002は、プロセッサ2008と、通信インタフェース2010と、メモリ2012と、ディスプレイ・コントローラ2014と、不揮発性記憶装置2016と、I/Oコントローラ2018とを含む。コンピュータ2002は、I/Oデバイス2004およびディスプレイ装置2006に連結するか、またはこれらを含むことができる。
コンピュータ2002は、通信インタフェース2010を通じて外部システムとインタフェースをとり、通信インタフェース2010はモデムまたはネットワーク・インタフェースを含むことができる。通信インタフェース2010は、コンピュータ・システム2000の一部またはコンピュータ2002の一部と見なせることは理解されるであろう。通信インタフェース2010は、アナログ・モデム、ISDNモデム、ケーブル・モデム、トークン・リング・インタフェース、衛星伝送インタフェース(例、「ダイレクトPC」)、またはコンピュータ・システムを他のコンピュータ・システムに連結するための他のインタフェースとすることができる。
プロセッサ2008は、例えば、インテル・ペンティアム(登録商標)(Intel Pentium(登録商標))のマイクロプロセッサまたはモトローラ(Motorola)のパワーPCマイクロプロセッサなど、従来のマイクロプロセッサとすることができる。メモリ2012は、バス2020によってプロセッサ2008に連結される。メモリ2012は、動的ランダム・アクセス・メモリ(DRAM)とすることができ、静的RAM(SRAM)も含むことができる。バス2020は、プロセッサ2008をメモリ2012に、また不揮発性記憶装置2016を、ディスプレイ・コントローラ2014およびI/Oコントローラ2018に連結する。
I/Oデバイス2004は、キーボード、ディスク・ドライブ、プリンタ、スキャナ、およびマウスまたは他のポインティング・デバイスなどの他の入出力デバイスを含むことができる。ディスプレイ・コントローラ2014は、ディスプレイ装置2006上のディスプレイを従来の方法で制御することができ、ディスプレイは、例えば、ブラウン管(CRT)または液晶ディスプレイ(LCD)とすることができる。ディスプレイ・コントローラ2014およびI/Oコントローラ2018は、従来の周知の技術を用いて実装することができる。
不揮発性記憶装置2016は、磁気ハード・ディスク、光ディスク、または大量のデータ用の別の形態の記憶装置であることが多い。このデータの一部は、ダイレクト・メモリ・アクセス・プロセスによって、コンピュータ2002内のソフトウェアの実行中にメモリ2012に書き込まれることが多い。当業者は、「機械可読媒体」または「コンピュータ可読媒体」という用語が、プロセッサ2008によってアクセス可能なあらゆるタイプの記憶装置を含み、データ信号を符号化する搬送波も包含することはすぐに認識するであろう。
図20に図示するコンピュータ・システムは、様々なアーキテクチャをもつ多くの可能なコンピュータ・システムを例示するために使用することができる。例えば、インテル(Intel)のマイクロプロセッサをベースとするパーソナル・コンピュータは、複数のバスをもつことが多く、そのうちの1つは周辺機器用のI/Oバスとすることができ、1つはプロセッサ2008とメモリ2012とを直接接続する(しばしば、メモリバスと呼ばれる)。バスは、異なるバスプロトコルのために必要な翻訳を実施するブリッジ・コンポーネントを通じてまとめて接続される。
ネットワーク・コンピュータは、本明細書に提供する教唆と合わせて使用することのできる別のタイプのコンピュータ・システムである。ネットワーク・コンピュータは、通常、ハード・ディスクまたは他の大容量記憶装置は含まず、プロセッサ2008によって実行するために、ネットワーク接続から、実行可能なプログラムがメモリ2012にロードされる。当業界で公知のウェブTVシステムもコンピュータ・システムと見なされるが、何らかの入力または出力デバイスなど、図20に図示する特徴の一部がなくてもよい。代表的なコンピュータ・システムは、通常、少なくとも、プロセッサと、メモリと、メモリをプロセッサに連結するバスとを含む。
詳細な説明のいくつかの部分は、コンピュータ・メモリ内にデータ・ビットとしてアルゴリズムおよび演算の記号表現によって提示される。これらのアルゴリズムの記述および表現は、データ処理業界の当業者が自分の仕事の内容を他の当業者に最も効果的に伝えるために使用する手段である。アルゴリズムとは、ここでは、一般に、所望の結果を導く、自己矛盾のない、演算のシーケンスと考えられる。演算とは、物理的な量の物理的な操作を要するものである。必然的ではないが、通常、これらの量は記憶、転送、結合、比較およびその他の形で操作されることが可能な電気信号または磁気信号の形態を取る。主に一般的な使用のために、これらの信号をビット、値、要素、記号、文字、項、数、または同様なものと呼ぶことがときに都合がよいことが分かっている。
しかし、これらの用語および類似の用語のすべては適切な物理的な量に関連付けられるはずであり、これらの量に適用される都合のよい呼び名にすぎないことは留意するべきである。以下の説明から明らかなように特に別の記載がされていない限り、明細書を通して、「処理する」または「コンピューティング」または「計算する」または「決定する」または「表示する」または同様なものなどの用語を利用する説明は、コンピュータ・システムのレジスタおよびメモリ内の物理的(電子的)な量として表現されるデータを操作し、コンピュータ・システムのメモリもしくはレジスタまたはそのような他の情報記憶装置、送信もしくはディスプレイ装置内の物理的な量として同様に表現される他のデータに変換するコンピュータ・システムまたは同様な電子コンピューティング・デバイスのアクションおよびプロセスをいう。
本書で説明する技術は、動作を実施するための装置に関する。装置は、特に要求される目的のために構成することができ、またはコンピュータに記憶されているコンピュータ・プログラムによって選択的に起動もしくは再構成される汎用コンピュータを備えることができる。このようなコンピュータ・プログラムは、限定ではないが、読み出し専用メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、EPROM、EEPROM、磁気もしくは光学カード、フロッピー・ディスク、光ディスク、CD‐ROMおよび光磁気ディスクなどの任意のタイプのディスク、または電子的な命令を記憶するのに適した任意のタイプの媒体などのコンピュータ可読記憶媒体に記憶することができ、それぞれコンピュータ・システムのバスに連結される。
説明の目的で、明細書の完全な理解を与えるために、多数の特定の詳細を記載している。しかし、これらの特定の詳細がなくても本開示の実施態様を実施できることは当業者には明らかであろう。ある場合には、説明が曖昧にならないように、モジュール、構造、プロセス、特徴およびデバイスをブロック図の形態で示している。他の場合には、データおよび論理的な流れを表すために、機能的なブロック図およびフロー図を示している。ブロック図およびフロー図の構成要素(例、ステップ、モジュール、ブロック、構造、デバイス、特徴等)は、本明細書で明示的に説明し図示する以外の方法で様々に組み合わせ、分離し、取り除き、順番を変え、置き換えてもよい。
本明細書で使用する言語は、主に、読みやすさと教示の目的で選択しており、発明の主題の線引きまたは画定のために選択されているのではない場合がある。そのため、範囲は、この詳細な説明によってではなく、本明細書に基づく出願上で生じるあらゆる請求項によって制限されるということが意図されている。したがって、実施態様の開示は、本明細書に列記される請求項に記載される範囲を説明するものであり、制限するものではないということが意図されている。