JP2021534606A - デジタルコンテンツ消費の同期 - Google Patents

デジタルコンテンツ消費の同期 Download PDF

Info

Publication number
JP2021534606A
JP2021534606A JP2020573284A JP2020573284A JP2021534606A JP 2021534606 A JP2021534606 A JP 2021534606A JP 2020573284 A JP2020573284 A JP 2020573284A JP 2020573284 A JP2020573284 A JP 2020573284A JP 2021534606 A JP2021534606 A JP 2021534606A
Authority
JP
Japan
Prior art keywords
user computing
computing device
digital content
user
synchronization message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020573284A
Other languages
English (en)
Inventor
タイ ギア トラン,
アディタ アギー,
オリヴィエ アラン ピエール ノッテゲム,
グレゴリー スティーヴン ウィリアムズ,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Meta Platforms Technologies LLC
Original Assignee
Facebook Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Facebook Technologies LLC filed Critical Facebook Technologies LLC
Publication of JP2021534606A publication Critical patent/JP2021534606A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43076Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of the same content streams on multiple devices, e.g. when family members are watching the same movie on different devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

一実施形態では、方法が、同期提示セッションを提供するために2つまたはそれ以上のユーザコンピューティングデバイスを接続することを含む。各ユーザコンピューティングデバイスは、サードパーティコンテンツ製作者に関連するサードパーティアプリケーションのインスタンスを通してデジタルコンテンツを提示し得る。ユーザコンピューティングデバイスのうちの1つまたは複数が、1つまたは複数の他のデバイスと同期外れになる場合、同期メッセージが、(1つまたは複数の)同期外れデバイスに送られ得、それにより、同期メッセージは、デバイスのすべてにわたるデジタルコンテンツの提示が同期されることを引き起こし得る。【選択図】図1

Description

本開示は、一般に、仮想現実においてデジタルコンテンツを消費することに関する。
従来、映画またはTVショーのようなデジタルコンテンツを消費することを希望するユーザは、電話、パーソナルコンピュータ(たとえば、ラップトップまたはデスクトップ)、またはTVセットなど、従来のディスプレイデバイス上でそのコンテンツを視聴することに制限されることになる。これらの従来のディスプレイデバイスは、しばしば、これらのデバイスに関連するスクリーンの小さいサイズおよび制限されたディスプレイ能力のために、個々のまたは小さいグループのユーザに適しているにすぎない。いくつかの場合には、ユーザは、よりソーシャルな閲覧エクスペリエンスのために、映画館または友達の家に集まることができるが、すべての場合において、その閲覧エクスペリエンスは物理的セッティング(たとえば、映画館、リビングルームなど)に制限される。
これらの制限のうちのいくつかを解決するために、仮想現実(VR)環境においてデジタルコンテンツを消費するための方法が開発された。ユーザが任意の仮想環境においてデジタルコンテンツを消費することを可能にするVRデバイスが、より没入型および変化に富んだ閲覧エクスペリエンスをユーザに提供し得る。たとえば、ユーザのリビングルームにあるTVセット上で映画を視聴する代わりに、ユーザは、海洋上の仮想シアターにおいて映画を視聴し得る。しかし、従来のVRデバイスは、それらのVRデバイスが単独のデバイスであるという別個の欠点がある。VRデバイスは、通常、ただ1人のユーザに視覚および聴覚エクスペリエンスを提供することを目的とされたヘッドセットであるので、VRを通した一般的なコンテンツ閲覧エクスペリエンスは、VR環境におけるユーザ間のソーシャル対話がない(たとえば、各ユーザが単独で映画を視聴しているであろう)。
本発明の実施形態は、仮想現実デバイスの複数のユーザがデジタルコンテンツを共同視聴(co−watch)することを可能にすることに関する。「共同視聴」は、デジタルコンテンツの任意の同期された消費を意味し得、必ずしも、視覚コンテンツの同期された共同消費のみを意味するとは限らないことを理解されたい。むしろ、共同視聴は、視覚、音、嗅覚、触覚、または味覚に基づくコンテンツの同期された消費を含み得る。さらに、仮想現実デバイスに関係する本出願で説明される実施形態は、電話、TV、デスクトップまたはラップトップコンピュータ、ゲームデバイス、あるいはユーザにデジタルコンテンツを提示することが可能な任意の他のデバイスを含む、任意の他のタイプのパーソナルコンピューティングデバイスにも関係し得ることを理解されたい。
いくつかの実施形態では、複数のユーザが仮想環境において空間を共有し得る。それらのユーザは、映画、音楽、またはTVショーなど、デジタルコンテンツを一緒に消費することを望み得る。いくつかの実施形態では、単一のサーバが、デジタルコンテンツをホストし、直接、仮想空間の各ユーザのユーザデバイスにそのデジタルコンテンツをコンカレントにストリーミングし得る。これらの実施形態は、閲覧セッションにどのユーザデバイスが含まれるべきであるかを追跡し、各ユーザデバイス上でのコンテンツの再生(playback)を追跡し得る。いくつかの実施形態は、各ストリームの再生に対する直接制御を可能にし、いずれか1つのデバイス上で動作させられる再生制御が残りのデバイスのすべて上での再生に影響を及ぼすことを可能にし得る。しかしながら、これらの実施形態は、仮想空間の事業者が、ストリーミングされているデジタルコンテンツへの直接アクセスおよびそのデジタルコンテンツに対する権利を有することを必要とする。これは、達成するために時間および金銭の著しい消耗を必要とすることがあり、スケーラビリティがない。したがって、本発明の他の実施形態は、共有仮想空間における複数のユーザが、デジタルコンテンツをシームレスにおよびコンカレントに消費し、各ユーザが、サードパーティコンテンツアプリケーションから直接、コンテンツを別々にストリーミングすることを可能にし得る。このようにして、本発明の実施形態は、各々、サードパーティコンテンツアプリケーションの自身のインスタンスを実行している複数のユーザが、同じデジタルコンテンツを一緒に消費し、仮想現実内でのソーシャル共同視聴エクスペリエンスを享受することを可能にし得る。
いくつかの実施形態では、サードパーティコンテンツアプリケーションが複数のユーザによって、それらのユーザの仮想現実デバイスに直接コンテンツをストリーミングするために使用され得る。いくつかの実施形態は、複数のユーザの各々が、サードパーティコンテンツプロバイダに関連するサードパーティアプリケーションをそれぞれの複数の仮想現実デバイスの上にダウンロードするときに開始し得る。サードパーティアプリケーションは、ユーザにコンテンツをストリーミングするために、および仮想現実デバイスを通して再生を可能にし、制御するために、サードパーティコンテンツプロバイダと通信し得る。いくつかの実施形態では、コンテンツは、仮想現実デバイスのフルスクリーンにわたって再生(play)され得る。他の実施形態では、コンテンツは、仮想環境内の仮想スクリーン上に再投影され得る。再投影は、サードパーティコンテンツが、サードパーティコンテンツアプリケーションから仮想現実デバイスに直接共有され、仮想現実デバイス上の仮想現実環境に直接キャストされることを可能にし得る技法である。いくつかの実施形態では、これは、サードパーティコンテンツアプリケーションからのコンテンツをVR環境における仮想TVまたは映画館スクリーン上に再投影することを含み得る。いくつかの実施形態では、ユーザは、仮想環境内のアバターによって表され得る。アバターは、人間のキャラクターとして表され得、カウチ上に、映画館において、または任意の他の適切なベニューまたはロケーションにおいて一緒に着座していることがある。提示されたコンテンツに対するユーザの反応がリアルタイムでアバターによって反映され、それにより、ソーシャル共同視聴エクスペリエンスをユーザに提供し得る。
いくつかの実施形態は、デジタルコンテンツを同期させるための少なくとも3つのモデルのうちの1つを利用し得る。それらのモデルは、「ホストゲスト」モデル、「サーバ」モデル、および「オムニ」モデルと呼ばれる。各モデルは、仮想現実デバイスがどのように接続および通信されるか、および任意の1つのデバイスが残りのデバイスに対して有し得る制御のレベルにおいて異なり得る。3つのモデルの各々が、以下で追加の詳細において説明される。
本明細書で開示される実施形態は例にすぎず、本開示の範囲はそれらに限定されない。特定の実施形態は、上記で開示された実施形態の構成要素、要素、特徴、機能、動作、またはステップのすべてを含むか、いくつかを含むか、またはいずれをも含まないことがある。本発明による実施形態は、特に、方法、記憶媒体、システムおよびコンピュータプログラム製品を対象とする添付の特許請求の範囲で開示され、1つの請求項カテゴリー、たとえば、方法において述べられた任意の特徴は、別の請求項カテゴリー、たとえば、システムにおいても請求され得る。添付の特許請求の範囲における従属関係または参照は、形式的理由で選定されるにすぎない。ただし、前の請求項への意図的な参照(特に複数の従属関係)から生じる主題も請求され得、その結果、請求項とその特徴との任意の組合せが、開示され、添付の特許請求の範囲で選定された従属関係にかかわらず請求され得る。請求され得る主題は、添付の特許請求の範囲に記載の特徴の組合せだけでなく、特許請求の範囲における特徴の任意の他の組合せをも含み、特許請求の範囲において述べられた各特徴は、特許請求の範囲における任意の他の特徴または他の特徴の組合せと組み合わせられ得る。さらに、本明細書で説明または示される実施形態および特徴のいずれも、別個の請求項において、ならびに/あるいは、本明細書で説明もしくは示される任意の実施形態もしくは特徴との、または添付の特許請求の範囲の特徴のいずれかとの任意の組合せで、請求され得る。
複数のユーザコンピューティングデバイスが同じデジタルコンテンツを提示する、一実施形態を示す図である。 ユーザコンピューティングデバイスの複数のユーザが、サードパーティアプリケーションのインスタンスによって提供されるコンテンツを共同視聴する、例示的な一実施形態を示す図である。 「ホストゲスト」モデルを利用する例示的な一実施形態を示す図である。 「サーバ」モデルを利用する例示的な一実施形態を示す図である。 「全員」モデル(“everyone” model)を利用する例示的な一実施形態を示す図である。 複数のユーザコンピューティングデバイスにわたってデジタルコンテンツを提示し、同期させるための例示的な方法を示す図である。 ソーシャルネットワーキングシステムに関連する例示的なネットワーク環境700を示す図である。 例示的なコンピュータシステムを示す図である。
いくつかの実施形態では、ユーザコンピューティングデバイスの複数のユーザが、同じデジタルコンテンツを共同視聴しようとし得る。たとえば、2人またはそれ以上のユーザが、地理的距離によって離れていることがあるが、それにもかかわらず、同じコンテンツを共同視聴することを望み得る。別の例として、2人またはそれ以上のユーザが、同じ地理的ロケーションにいることがあるが、単一のユーザによる使用に最も適したユーザコンピューティングデバイス(たとえば、仮想現実ヘッドセット)へのアクセスを有するにすぎないか、または場合によってはそのデバイスを使用することを望み得る。そのような実施形態では、2人またはそれ以上のユーザは、デジタルコンテンツが2つまたはそれ以上のユーザコンピューティングデバイスにわたって同期されるように、それらのユーザがデジタルコンテンツを共同視聴することができる方法を望み得る。
いくつかの実施形態では、ユーザコンピューティングデバイスの複数のユーザが、コンテンツの同期なしに同じデジタルコンテンツを消費することが可能であり得る。図1は、複数のユーザコンピューティングデバイスが同じデジタルコンテンツを提示する、一実施形態を示す。この実施形態では、ユーザコンピューティングデバイス101および102が、各々、映画「ジョーズ」からのデジタルコンテンツを提示している。いくつかの実施形態では、デバイスは、デバイスのローカルストレージからコンテンツを取得し得る。他の実施形態では、コンテンツは、サードパーティコンテンツプロバイダのストリーミングサービスを含む、ストリーミングサービスを通して取得され得る。ユーザコンピューティングデバイス101および102は、仮想現実デバイスであり得る。いくつかの実施形態では、ユーザコンピューティングデバイスはまた、セルフォン、TV、デスクトップモニタ、ラップトップ、または1人または複数のユーザにデジタルコンテンツを提示することが可能な任意の他のデバイスを含む、他のタイプのユーザコンピューティングデバイスであり得る。いくつかの実施形態では、ユーザコンピューティングデバイス101は、映画のフレーム103を提示していることがあり、ユーザコンピューティングデバイス102は、フレーム104を提示していることがある。いくつかの実施形態では、ユーザコンピューティングデバイスのユーザは、同様のまたは同等の閲覧セッティング(スクリーンサイズ、ボリューム、再生速度など)を選択することによって、ならびに同時にプレイ(play)ボタン105および106を選択することによって、複数のユーザコンピューティングデバイスにわたってコンテンツの再生を同期させることを試み得る。これらの努力にもかかわらず、いくつかの実施形態では、2つのデバイス上に提示されたコンテンツは、同期外れになり得る(たとえば、フレーム104は、短い時間の量、フレーム103よりも先にまたは後にあり得る)。たとえば、コンピューティングデバイス102は、そばを泳いでいるサメの頭部をすでに示していることがあり、代わりに、コンピューティングデバイス101がサメの頭部(フレーム103)を示すのと同じ時点において、サメの尾部(フレーム104)を示し得る。この時間差は、例として、プレイボタン105および106がユーザコンピューティングデバイスの各々上で選択されたときのわずかな差を含む、あるいはデバイス間のネットワーク接続、バッファリングまたは再生速度の差による、任意の数の原因によって引き起こされ得る。ソフトウェアまたはハードウェアベースの原因(たとえば、ソフトウェアバージョンまたはハードウェアモデルの差)を含む任意の数の追加の原因も、デバイス間の再生の差を生じ得る。
図2は、ユーザコンピューティングデバイスの複数のユーザが、サードパーティアプリケーションのインスタンスによって提供されるコンテンツを共同視聴する、例示的な一実施形態を示す。いくつかの実施形態では、ユーザ208および209は、閲覧アプリケーション201および202を通して、それらのそれぞれのユーザコンピューティングデバイスと対話し得る。いくつかの実施形態では、これらのアプリケーションは、仮想現実アプリケーション、共同視聴アプリケーション、またはユーザが対話し得るユーザコンピューティングデバイス上の任意の他のアプリケーションであり得る。これらのユーザコンピューティングデバイスは、デジタルコンテンツを提示することが可能な任意のユーザコンピューティングデバイスを含み得る。いくつかの実施形態では、同じサードパーティアプリケーションのインスタンス203および204は、ユーザ208および209がそれらのそれぞれのユーザコンピューティングデバイス上で共同視聴することを望むデジタルコンテンツをホストし得る。サードパーティアプリケーションの各インスタンス203および204は、ユーザコンピューティングデバイス201および202と交互に情報を共有し得る。この情報は、ユーザコンピューティングデバイス上に提示されるべきデジタルコンテンツ、デジタルコンテンツに関係する再生および他の制御、およびユーザコンピューティングデバイス上でのデジタルコンテンツの再生に関係するステータス情報を含み得る。各インスタンス203および204は、サードパーティコンテンツプロバイダ210および211の各々からデジタルストリームとしてコンテンツを受信し得る。いくつかの実施形態では、サードパーティコンテンツプロバイダ210および211は、同じサードパーティコンテンツプロバイダであり得る。他の実施形態では、サードパーティコンテンツプロバイダ210および211は、異なるサードパーティコンテンツプロバイダであり得る。210および211が異なるサードパーティコンテンツプロバイダである、いくつかの実施形態では、サードパーティコンテンツプロバイダは、各々、ユーザ208および209への表示のために同じデジタルコンテンツを与え得る。いくつかの実施形態では、渡されている情報は、サードパーティアプリケーションのインスタンス203および204から、サードパーティアプリケーションの各インスタンスによって実装されるソフトウェア開発キット(SDK)205および206を使用して書かれたソフトウェアを通して渡され得る。いくつかの実施形態では、SDKベースのソフトウェア205および206は、ブロードキャスト意図を生成することと、ユーザコンピューティングデバイス上で実行している対応する閲覧アプリケーションにブロードキャスト意図を送ることとによって、ユーザコンピューティングデバイスと通信し得る(たとえば、SDKベースのソフトウェア205は、201と通信し得、206は、202と通信し得る)。いくつかの実施形態では、サードパーティアプリケーション203および204は、2つまたはそれ以上の状態を含んでいることがあり、少なくとも1つの状態が、ユーザコンピューティングデバイスに情報を送ることを対象とし、1つの状態が、ユーザコンピューティングデバイスから情報を受信することを対象とする。いくつかの実施形態では、渡されている情報は、デジタルコンテンツに関連するタイムスタンプを含むステータス情報(たとえば、映画またはTVショーの現在の再生時間)、デジタルコンテンツに関係する識別情報(たとえば、映画またはTVショーの名前)、プレイまたは休止状態情報、ボリューム、輝度、色、または再生速度情報、あるいはデジタルコンテンツまたは広告がユーザコンピューティングデバイス201および202上に提示されているかどうかに関係する情報を含み得る。
2人のユーザがコンテンツを共同視聴している一例として、第1のユーザ208が、コンテンツを早送りすることを望み得る。ユーザ208は、ユーザのユーザコンピューティングデバイス上で早送り制御を選択し得、早送りコマンドが、閲覧アプリケーション201を通して、SDKベースのソフトウェア205を介して、サードパーティアプリケーション203の第1のユーザのインスタンスに渡ることを引き起こす。サードパーティアプリケーションは、サードパーティコンテンツプロバイダ210にサードパーティコンテンツを要求し得る。同時に、第1のユーザの閲覧アプリケーションは、第2のユーザ209の閲覧アプリケーション202に、早送りコマンドを送り得、閲覧アプリケーション202は、そのコマンドを、サードパーティアプリケーション204を通してサードパーティコンテンツプロバイダ211に渡し得る。
いくつかの実施形態では、ユーザコンピューティングデバイスの各ユーザは、デジタルコンテンツの提示に関係するいくつかの態様またはセッティングに対する個々のまたは個人化された制御を保持し得る。他の実施形態では、すべてのセッティングがユーザによってまとめて制御され得る。いくつかの実施形態では、個々のユーザは、ボリュームおよびサブタイトルを含む態様またはセッティングに対する個々の制御を有し得る。一例として、ユーザ208は、ユーザ209のユーザコンピューティングデバイス202からのオーディオよりも大きいネイティブオーディオを有するユーザコンピューティングデバイス201を使用していることがある。これは、たとえば、ユーザコンピューティングデバイス201は、ユーザ208の耳に極めて近いスピーカーをもつ仮想現実ヘッドセットであり得、ユーザコンピューティングデバイス202は、ユーザ209から遠い壁上に取り付けられたTVであり得るからであり得る。
いくつかの実施形態では、各ユーザ208および209は、同じビデオコンテンツを提示されるが、異なるオーディオコンテンツを提示され得る。たとえば、ユーザ208および209は、両方とも、互いと通信するために英語を話し得るが、ユーザ208の場合はスペイン語およびユーザ209の場合はロシア語であり得る、それらのネイティブ言語でスポーツ解説を聴くことがより快適であり得る。この実施形態では、ユーザ208は、ユーザ209と同じビデオコンテンツを、ただしスペイン語のオーディオコンテンツとともに提示され得、ユーザ209は、そのビデオコンテンツをロシア語のオーディオコンテンツとともに提示され得る。いくつかの実施形態では、各ユーザは、ユーザごとに異なり得る、個別化されたまたは個人化されたビデオコンテンツを提示され得る。たとえば、いくつかの実施形態では、ユーザ208は、標準閲覧角をもつサッカーの試合と、サッカーの試合に関する他のユーザの解説からなるチャットウィンドウとを提示され得、ユーザ209は、チャットウィンドウなしの試合の鳥瞰図を提示され得る。別の例として、各ユーザの提示オプションおよびデジタル環境は、他のユーザとは別個であり得る。たとえば、各ユーザは、ユーザがデジタルコンテンツを視聴している、仮想現実環境内の照明に対する個々の制御を有し得る。同様に、各ユーザは、スクリーンのロケーション、セッティング、またはスクリーンが仮想現実環境中にある背景に対する、個々の制御を有し得る(たとえば、各ユーザは、映画館、自宅のリビングルーム、ベッドにあるタブレットなどのうちの1つに対応する仮想現実環境においてコンテンツを閲覧することを別々に選定し得る)。これらは、例にすぎず、ビデオ、オーディオ、または他のデジタルコンテンツの個人化、個別化、またはカスタマイゼーションが、任意の形式をとり得ることを理解されたい。
各ユーザコンピューティングデバイス201および202は、サードパーティアプリケーション203および204の各インスタンスと別々に通信するので、それらのデバイスは、通信方法207を介してそれらの各インスタンスと別々に通信し得る。いくつかの実施形態では、通信方法207は、ユーザコンピューティングデバイス間の直接通信であり、たとえばBluetooth低エネルギーまたは赤外線であり得る。他の実施形態では、207は、閲覧アプリケーション201および202に関連するサーバ、または閲覧アプリケーション201および202に関連する何らかの他のコンピューティングデバイスを通した、間接通信であり得る。通信方法に関する追加の詳細が以下の図において説明される。
図3は、「ホストゲスト」モデルを利用する例示的な一実施形態を示す。ホストゲストモデルは、第1のユーザコンピューティングデバイス301がホストとして認識されることを可能にし得、すべての他のユーザ、たとえば302および303が、ゲストとして認識され得る。いくつかの実施形態では、ホストは、デジタルコンテンツの直接制御(たとえば、コンテンツ、ボリュームの選択、コンテンツの再生など)を有し得、ゲストは、デジタルコンテンツの制御を有しないことがある。これらの実施形態では、ホストユーザコンピューティングデバイス301上で行われる再生選択が、ホストユーザコンピューティングデバイス301から1つまたは複数のゲストユーザコンピューティングデバイス302および303に通信され得る。たとえば、映画「ジョーズ」における特定のシーン中にすべての3つのユーザコンピューティングデバイスが休止されると、ホストユーザコンピューティングデバイス301上のプレイボタンが選択され得、映画のコンテンツが、すべての3つのユーザコンピューティングデバイス301、302、および303にわたって、同期された様式で再生し始め得る。いくつかの実施形態では、ホストユーザコンピューティングデバイスのみがデジタルコンテンツの再生に関連する可視制御特徴を有し得る。たとえば、図3では、ホストユーザコンピューティングデバイス301のみがプレイボタン304を有し、ゲストユーザコンピューティングデバイス302および303はプレイボタン304を有しない。他の実施形態では、すべてのユーザコンピューティングデバイスが同じ再生機能性を示し得るが、ホストの制御特徴のみが動作可能であり得る。
いくつかの実施形態では、ゲストユーザコンピューティングデバイス302および303は、それらの再生ステータスおよび他の情報をホストコンピューティングデバイス301に通信し得る。ゲストユーザコンピューティングデバイスから受信されたタイムスタンプ情報および他の再生情報に基づいて、ホストユーザコンピューティングデバイス301は、ゲストユーザコンピューティングデバイス302および303が、ホストユーザコンピューティングデバイスとの、および互いとの同期された提示状態のままであるようなアクションをとるようにとの命令を、ゲストユーザコンピューティングデバイス302および303に送り得る。このアクションは、再生が前方にまたは後方にジャンプするように、デジタルコンテンツを休止することまたはデジタルコンテンツのタイムスタンプを変更することを含み得る。いくつかの実施形態では、このアクションは、ユーザコンピューティングデバイスが、完全に休止するかまたは前方にジャンプし、それにより、前に視聴されなかったコンテンツをスキップすることなしに、すべてのデバイスにわたるコンテンツの再生が同期を回復するように、デジタルコンテンツの再生の速度を上げるかまたは下げることをも含み得る。いくつかの実施形態では、ホストユーザコンピューティングデバイス301は、ゲストユーザコンピューティングデバイス302および303がコンテンツの再生を同期させることができるように、ホストユーザコンピューティングデバイス301の再生ステータスをゲストユーザコンピューティングデバイス302および303の各々に中継し得る。他の実施形態では、ゲストユーザコンピューティングデバイス302および303は、それらのステータスを、どのアクションがとられるべきであるか(たとえば、デバイスのすべてにわたってコンテンツの再生を同期させるためのどんな同期か)の決定においてゲストユーザコンピューティングデバイスのステータスのすべてを考慮に入れ得るホストユーザコンピューティングデバイス301に中継し得る。コンテンツを同期させるために本出願で説明されるこれらのアクションおよびすべての他の可能なアクションが、本発明のすべての実施形態によって実施され得、必ずしも、ホストゲストモデルまたは中で説明される他のモデルのみに関連するとは限らないことを理解されたい。
図4は、「サーバ」モデルを利用する例示的な一実施形態を示す。サーバモデルは、閲覧アプリケーションに関連するサーバまたは閲覧アプリケーションに関連する何らかの他のコンピューティングデバイスが、すべてのユーザコンピューティングデバイスにわたってデジタルコンテンツの提示を追跡することを可能にし得、ユーザをそれらの消費において同期されるように保つように設定され得る。いくつかの実施形態では、サーバ401は、ユーザコンピューティングデバイス402、403、および404のすべてに関連する再生情報を送り、受信し得る。いくつかの実施形態では、ユーザコンピューティングデバイスのすべてが、再生制御、たとえば、プレイ/休止ボタン405を含み得、これは、ユーザコンピューティングデバイスのうちのいずれか1つのユーザがユーザコンピューティングデバイスのすべてに関する再生を制御することを可能にし得る。いくつかの実施形態では、サーバ401は、ユーザのユーザコンピューティングデバイスのうちの1つであり得る。他の実施形態では、サーバ401は、コンテンツが提示されているユーザコンピューティングデバイスとは別個の、別個のデバイスであり得る。いくつかの実施形態では、この別個のデバイスは、ユーザのうちの1人のデバイスであり得るか、または、そのデバイスは、インターネットなどのネットワークを介してユーザコンピューティングデバイスによってアクセスされるリモートサーバであり得る。
サーバモデルでは、サーバは、ユーザコンピューティングデバイスのすべてにわたってコンテンツの再生を追跡し、コンテンツの再生を同期されるように保つためのルールを採用し得る。いくつかの実施形態では、(0人からすべてまでの)任意のユーザが、デジタルコンテンツを完全に制御することが可能であり得る。いくつかの実施形態では、サーバは、独立して実行しているクロックを維持し得、これは、デジタルコンテンツがユーザデバイスに提示されるべきであるペースを決定し得る。いずれか1人のユーザまたはユーザのサブセットが、独立したクロックよりも先に進むかまたは遅れる場合、ユーザは、クロックのペースに戻るようにコンテンツをスキップまたは再視聴することを強制され得る。いくつかの実施形態では、ユーザコンピューティングデバイスのすべてにわたってコンテンツの同期を維持するためのルールが、ユーザコンピューティングデバイスによってプリセットされるか、サードパーティコンテンツアプリケーションによってプリセットされ得るか、またはユーザコンピューティングデバイスのユーザのうちの1人または複数によって決定され得る。いくつかの実施形態では、ルールは、ユーザコンピューティングデバイスのユーザの前の挙動に基づく挙動ルールであり得る。たとえば、ユーザコンピューティングデバイス402上のデジタルコンテンツの再生が、セッションにおいて2回またはそれ以上、ユーザコンピューティングデバイス403および404上でのデジタルコンテンツの再生よりも遅れ、毎回、ユーザコンピューティングデバイス402のユーザが、前方にジャンプすることを選定し、それにより、コンテンツをスキップするが、他のユーザコンピューティングデバイスとの同期を回復する場合、ユーザコンピューティングデバイス402のためのルールは、ユーザコンピューティングデバイス402がコンテンツの提示において遅れるときはいつでも、自動的に前方にジャンプするように適応し得る。これらのルールは、セッションごとに、ユーザごとに、コンテンツアイテムごとに、あるいは寿命ベースまたは任意の他のベースで行動的に学習され得る。
図5は、「オムニ」モデルを利用する例示的な一実施形態を示す。オムニモデルは、各ユーザのデバイスが、他のユーザの各々のデバイスを追跡し、それらのデバイスと同期することを可能にし得る。たとえば、オムニモデルの下で、各ユーザデバイスが、特定のユーザデバイス上でのコンテンツの再生に関係する再生ステータスまたは他の情報(たとえば、再生制御選択)を、互いに接続されたユーザデバイスと別々に通信し得る。いくつかの実施形態では、ユーザデバイス501、502、および503は、すべて、互いと通信し得、すべて、504によって表される等しい再生制御を与え得る。たとえば、ユーザコンピューティングデバイス501、502、503の各ユーザが、各々、同じ再生制御オプションを提示され得る。いずれか1人のユーザが、再生制御オプション(たとえば、早送り)を選択する場合、そのオプションは、互いのユーザコンピューティングデバイスに通信され得る。いくつかの実施形態では、いずれかのユーザが、次いで、任意の他のユーザによって選択された再生制御オプションにかかわらず、コンテンツの早送りを中止し、コンテンツを休止し、またはコンテンツを巻き戻すことが可能であり得る。いくつかの実施形態では、ユーザコンピューティングデバイス501のユーザがコンテンツを早送りするための選択を行うとき、その選択は、他のユーザコンピューティングデバイス502および503に通信され得る。各ユーザコンピューティングデバイスは、次いで、その選択を、閲覧アプリケーションに、サードパーティコンテンツアプリケーションのインスタンスに、それを越えてサードパーティコンテンツプロバイダに渡し得、サードパーティコンテンツプロバイダは、正しい、早送りされたコンテンツを提供し得る。504および再生制御の任意の他の表現が、コンテンツまたはユーザコンピューティングデバイスに関連する任意の可変の制御可能な情報またはセッティングを含み得ることを理解されたい。
サーバモデルのように、オムニモデルは、様々なルールの実装が、すべてのユーザコンピューティングデバイスがデジタルコンテンツのそれらの提示において同期されることを保証することを可能にし得る。これらのルールは、ユーザがコンテンツを消費している間、ユーザへの選択肢として提示され得る。たとえば、2人のユーザが同期外れであり、一方のユーザが他方のユーザよりも先にいる場合、ユーザは、例として、1)より遅いユーザを先にスキップさせる、2)より速いユーザに、ジャンプして戻り、再視聴すること、またはより遅いユーザが追いつくまで待つことを強制する、あるいは3)何も行わない、ことを行うためのオプションを提示され得る。別の例として、コンテンツを共同視聴している3人またはそれ以上のユーザがおり、各ユーザのデバイス上でのコンテンツの再生が、すべての他のユーザと同期外れである場合、ユーザは、1)最も速いユーザまで先にスキップする、2)最も遅いユーザまで戻ってジャンプする、3)すべてのデバイスにわたって再生時間を平均化し、平均再生時間にジャンプする、ことを行うためのオプションを提示され得る。ルールについての任意の数の追加のオプションが利用され得る。いくつかの実施形態では、ルールまたはポリシーが利用されるためにユーザコンピューティングデバイスが同期外れになければならないしきい値が、ユーザコンピューティングデバイスのユーザによって選択され得る。他の実施形態では、しきい値は、過去のユーザ選択に基づいて学習され得る。同様に、いくつかの実施形態では、オプションの選定がデフォルト値として選択され得、またはオプションの選定がユーザ選択履歴に基づいて学習され得る。
図6は、複数のユーザコンピューティングデバイスにわたってデジタルコンテンツを提示し、同期させるための例示的な方法600を示す。方法は、ステップ610において始まり得、第1のユーザコンピューティングデバイスが、第1のユーザコンピューティングデバイスとの同期提示セッション中である少なくとも1つの他のユーザコンピューティングデバイスと接続する。いくつかの実施形態では、ステップ610は、他のユーザコンピューティングデバイスが、範囲内にあるか、同じコンテンツを提示しているか、または場合によっては第1のユーザコンピューティングデバイスとの同期提示セッション中であるものとして識別可能であるかどうかを決定することを含み得る。一例として、いくつかの実施形態では、第1のユーザが第2のユーザとコンテンツを共同視聴することを望む場合、第1のユーザおよび第2のユーザは、ログインするか、または場合によってはそれらのそれぞれのユーザコンピューティングデバイス上のアプリケーションをアクティブにし得る。ログインすると、ユーザは、アプリケーションが、第1のユーザおよび第2のユーザのユーザコンピューティングデバイスを検索し、それらのユーザコンピューティングデバイスを接続することを始め得るように、同期提示セッションにオプトインし得る。ステップ620において、第1のユーザコンピューティングデバイスは、サードパーティアプリケーションのインスタンスを通してデジタルコンテンツを提示し得る。いくつかの実施形態では、第1のユーザコンピューティングデバイスが、サードパーティアプリケーションのインスタンスを通してデジタルコンテンツを提示しているのと同時に、1つまたは複数の他のユーザコンピューティングデバイスも、サードパーティアプリケーションの別のインスタンスを通して同じデジタルコンテンツを提示していることがある。ステップ630において、同期メッセージが、第1のユーザコンピューティングデバイスと同じ提示セッション中である1つまたは複数の追加のユーザコンピューティングデバイスに送られるべきであるかどうかに関する決定が行われ得る。ユーザコンピューティングデバイスがすべてデジタルコンテンツのそれらの提示において同期される場合、同期メッセージが送られないことがある。しかしながら、1つまたは複数のユーザコンピューティングデバイスが同期されない場合、または同期メッセージが何らかの他の決定に基づいて(たとえば、自動的に単位時間ごとに、ユーザが再生制御オプションを選択するときはいつでも、デジタルコンテンツから新しいエピソードまたはシーンが開始するときはいつでもなど)送られるべきである場合、方法は、ステップ640に進む。ステップ640において、第1のユーザコンピューティングデバイスによって提示されているデジタルコンテンツのステータスに基づいて同期メッセージが生成され得る。たとえば、第1のユーザコンピューティングデバイス上でのデジタルコンテンツの再生が、第2のユーザコンピューティングデバイス上での同じコンテンツの再生よりも2秒先にある場合、メッセージが、2秒間休止するか、または2秒だけ第1のユーザコンピューティングデバイス上でのデジタルコンテンツの提示を巻き戻すようにとの命令を含み得る。ステップ650において、同期メッセージは、少なくとも1つの他のユーザコンピューティングデバイスに、または少なくとも1つの他のユーザコンピューティングデバイスに関連するサーバに送られ得る。同期メッセージは、他のユーザコンピューティングデバイスによるデジタルコンテンツの提示が、第1のユーザコンピューティングデバイスによるデジタルコンテンツの提示と同期されることを引き起こすように設定され得る。特定の実施形態は、適切な場合、図6の方法の1つまたは複数のステップを繰り返し得る。本開示は、図6の方法の特定のステップを、特定の順序で行われるものとして説明し、示すが、本開示は、図6の方法の任意の好適なステップが任意の好適な順序で行われることを企図する。その上、本開示は、図6の方法の特定のステップを含む、複数のユーザコンピューティングデバイスにわたってデジタルコンテンツを提示し、同期させるための例示的な方法を説明し、示すが、本開示は、適切な場合、図6の方法のステップのすべてを含むか、いくつかを含むか、またはいずれも含まないことがある、任意の好適なステップを含む、複数のユーザコンピューティングデバイスにわたってデジタルコンテンツを提示し、同期させるための任意の好適な方法を企図する。さらに、本開示は、図6の方法の特定のステップを行う特定の構成要素、デバイス、またはシステムを説明し、示すが、本開示は、図6の方法の任意の好適なステップを行う任意の好適な構成要素、デバイス、またはシステムの任意の好適な組合せを企図する。
発明者−ボイラープレート(BOILERPLATE)がここから始まる
図7は、ソーシャルネットワーキングシステムに関連する例示的なネットワーク環境700を示す。ネットワーク環境700は、ネットワーク710によって互いに接続された、クライアントシステム730と、ソーシャルネットワーキングシステム760と、サードパーティシステム770とを含む。図7は、クライアントシステム730、ソーシャルネットワーキングシステム760、サードパーティシステム770、およびネットワーク710の特定の構成を示すが、本開示は、クライアントシステム730、ソーシャルネットワーキングシステム760、サードパーティシステム770、およびネットワーク710の任意の好適な構成を企図する。限定としてではなく一例として、クライアントシステム730、ソーシャルネットワーキングシステム760、およびサードパーティシステム770のうちの2つまたはそれ以上が、ネットワーク710をバイパスして、直接互いに接続され得る。別の例として、クライアントシステム730、ソーシャルネットワーキングシステム760、およびサードパーティシステム770のうちの2つまたはそれ以上が、全体的にまたは部分的に、物理的にまたは論理的に互いとコロケートされ得る。その上、図7は、特定の数のクライアントシステム730、ソーシャルネットワーキングシステム760、サードパーティシステム770、およびネットワーク710を示すが、本開示は、任意の好適な数のクライアントシステム730、ソーシャルネットワーキングシステム760、サードパーティシステム770、およびネットワーク710を企図する。限定としてではなく一例として、ネットワーク環境700は、複数のクライアントシステム730と、ソーシャルネットワーキングシステム760と、サードパーティシステム770と、ネットワーク710とを含み得る。
本開示は、任意の好適なネットワーク710を企図する。限定としてではなく一例として、ネットワーク710の1つまたは複数の部分は、アドホックネットワーク、イントラネット、エクストラネット、仮想プライベートネットワーク(VPN)、ローカルエリアネットワーク(LAN)、ワイヤレスLAN(WLAN)、ワイドエリアネットワーク(WAN)、ワイヤレスWAN(WWAN)、メトロポリタンエリアネットワーク(MAN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、セルラー電話ネットワーク、またはこれらのうちの2つまたはそれ以上の組合せを含み得る。ネットワーク710は、1つまたは複数のネットワーク710を含み得る。
リンク750は、クライアントシステム730と、ソーシャルネットワーキングシステム760と、サードパーティシステム770とを、通信ネットワーク710にまたは互いに接続し得る。本開示は、任意の好適なリンク750を企図する。特定の実施形態では、1つまたは複数のリンク750は、1つまたは複数の、(たとえば、デジタル加入者回線(DSL)またはデータオーバーケーブルサービスインターフェース仕様(DOCSIS)などの)ワイヤラインリンク、(たとえば、Wi−Fiまたはワールドワイドインターオペラビリティフォーマイクロウェーブアクセス(WiMAX)などの)ワイヤレスリンク、または(たとえば、同期光ネットワーク(SONET)または同期デジタルハイアラーキ(SDH)などの)光リンクを含む。特定の実施形態では、1つまたは複数のリンク750は、各々、アドホックネットワーク、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、WWAN、MAN、インターネットの一部分、PSTNの一部分、セルラー技術ベースネットワーク、衛星通信技術ベースネットワーク、別のリンク750、または2つまたはそれ以上のそのようなリンク750の組合せを含む。リンク750は、ネットワーク環境700の全体にわたって必ずしも同じである必要はない。1つまたは複数の第1のリンク750は、1つまたは複数の第2のリンク750とは1つまたは複数の点で異なり得る。
特定の実施形態では、クライアントシステム730は、ハードウェア、ソフトウェア、または埋込み論理構成要素、または2つまたはそれ以上のそのような構成要素の組合せを含み、クライアントシステム730によって実装またはサポートされる適切な機能性を行うことが可能な、電子デバイスであり得る。限定としてではなく一例として、クライアントシステム730は、デスクトップコンピュータ、ノートブックまたはラップトップコンピュータ、ネットブック、タブレットコンピュータ、電子ブックリーダー、GPSデバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、拡張/仮想現実デバイス、他の好適な電子デバイス、あるいはそれらの任意の好適な組合せなど、コンピュータシステムを含み得る。本開示は、任意の好適なクライアントシステム730を企図する。クライアントシステム730は、クライアントシステム730におけるネットワークユーザが、ネットワーク710にアクセスすることを可能にし得る。クライアントシステム730は、クライアントシステム730のユーザが、他のクライアントシステム730における他のユーザと通信することを可能にし得る。
特定の実施形態では、クライアントシステム730は、MICROSOFT INTERNET EXPLORER、GOOGLE CHROMEまたはMOZILLA FIREFOXなど、ウェブブラウザ732を含み得、1つまたは複数のアドオン、プラグイン、あるいは、TOOLBARまたはYAHOO TOOLBARなど、他の拡張を有し得る。クライアントシステム730におけるユーザは、ウェブブラウザ732を(サーバ762、またはサードパーティシステム770に関連するサーバなどの)特定のサーバに向けるユニフォームリソースロケータ(URL)または他のアドレスを入力し得、ウェブブラウザ732は、ハイパーテキスト転送プロトコル(HTTP)要求を生成し、HTTP要求をサーバに通信し得る。サーバは、HTTP要求を受け入れ、HTTP要求に応答する1つまたは複数のハイパーテキストマークアップ言語(HTML)ファイルをクライアントシステム730に通信し得る。クライアントシステム730は、ユーザへの提示のためにサーバからのHTMLファイルに基づいてウェブページをレンダリングし得る。本開示は、任意の好適なウェブページファイルを企図する。限定としてではなく一例として、ウェブページは、特定の必要に応じて、HTMLファイル、拡張可能ハイパーテキストマークアップ言語(XHTML)ファイル、または拡張可能マークアップ言語(XML)ファイルから、レンダリングし得る。そのようなページは、たとえば、限定はしないが、JAVASCRIPT、JAVA、MICROSOFT SILVERLIGHTで書かれたものなどのスクリプト、AJAX(非同期JAVASCRIPTおよびXML)などのマークアップ言語とスクリプトとの組合せなどをも実行し得る。本明細書では、ウェブページへの言及は、適切な場合、(ブラウザがウェブページをレンダリングするために使用し得る)1つまたは複数の対応するウェブページファイルを包含し、その逆も同様である。
特定の実施形態では、ソーシャルネットワーキングシステム760は、オンラインソーシャルネットワークをホストすることができるネットワークアドレス指定可能なコンピューティングシステムであり得る。ソーシャルネットワーキングシステム760は、たとえば、ユーザプロファイルデータ、概念プロファイルデータ、ソーシャルグラフ情報、またはオンラインソーシャルネットワークに関係する他の好適なデータなど、ソーシャルネットワーキングデータを生成し、記憶し、受信し、送り得る。ソーシャルネットワーキングシステム760は、ネットワーク環境700の他の構成要素によって、直接的に、またはネットワーク710を介してアクセスされることが可能である。限定としてではなく一例として、クライアントシステム730は、直接的にまたはネットワーク710を介してのいずれかで、ウェブブラウザ732、またはソーシャルネットワーキングシステム760に関連するネイティブアプリケーション(たとえば、モバイルソーシャルネットワーキングアプリケーション、メッセージングアプリケーション、別の好適なアプリケーション、またはそれらの任意の組合せ)を使用して、ソーシャルネットワーキングシステム760にアクセスし得る。特定の実施形態では、ソーシャルネットワーキングシステム760は、1つまたは複数のサーバ762を含み得る。各サーバ762は、単一サーバ、あるいは複数のコンピュータまたは複数のデータセンターにわたる分散型サーバであり得る。サーバ762は、たとえば、限定はしないが、ウェブサーバ、ニュースサーバ、メールサーバ、メッセージサーバ、広告サーバ、ファイルサーバ、アプリケーションサーバ、交換サーバ、データベースサーバ、プロキシサーバ、本明細書で説明される機能またはプロセスを実施するのに好適な別のサーバ、あるいはそれらの任意の組合せなど、様々なタイプのものであり得る。特定の実施形態では、各サーバ762は、サーバ762によって実装またはサポートされる適切な機能性を行うための、ハードウェア、ソフトウェア、または埋込み論理構成要素、または2つまたはそれ以上のそのような構成要素の組合せを含み得る。特定の実施形態では、ソーシャルネットワーキングシステム760は、1つまたは複数のデータストア764を含み得る。データストア764は、様々なタイプの情報を記憶するために使用され得る。特定の実施形態では、データストア764に記憶された情報は、固有のデータ構造に従って編成され得る。特定の実施形態では、各データストア764は、リレーショナルデータベース、列指向データベース、相関データベース、または他の好適なデータベースであり得る。本開示は、特定のタイプのデータベースを説明するかまたは示すが、本開示は任意の好適なタイプのデータベースを企図する。特定の実施形態は、クライアントシステム730、ソーシャルネットワーキングシステム760、またはサードパーティシステム770が、データストア764に記憶された情報を管理する、取り出す、修正する、追加する、または削除することを可能にするインターフェースを提供し得る。
特定の実施形態では、ソーシャルネットワーキングシステム760は、1つまたは複数のデータストア764に、1つまたは複数のソーシャルグラフを記憶し得る。特定の実施形態では、ソーシャルグラフは、(各々特定のユーザに対応する)複数のユーザノードまたは(各々特定の概念に対応する)複数の概念ノードを含み得る、複数のノードと、ノードを接続する複数のエッジとを含み得る。ソーシャルネットワーキングシステム760は、オンラインソーシャルネットワークのユーザに、他のユーザと通信および対話する能力を提供し得る。特定の実施形態では、ユーザは、ソーシャルネットワーキングシステム760を介してオンラインソーシャルネットワークに加わり、次いで、ユーザがつなげられることを希望するソーシャルネットワーキングシステム760の何人かの他のユーザへのつながり(たとえば、関係)を追加し得る。本明細書では、「友達」という用語は、ソーシャルネットワーキングシステム760を介してユーザがつながり、関連付け、または関係を形成したソーシャルネットワーキングシステム760の任意の他のユーザを指し得る。
特定の実施形態では、ソーシャルネットワーキングシステム760は、ソーシャルネットワーキングシステム760によってサポートされる様々なタイプのアイテムまたはオブジェクトに関するアクションをとる能力をユーザに提供し得る。限定としてではなく一例として、アイテムおよびオブジェクトは、ソーシャルネットワーキングシステム760のユーザが属し得るグループまたはソーシャルネットワーク、ユーザが関心があり得るイベントまたはカレンダーエントリ、ユーザが使用し得るコンピュータベースアプリケーション、ユーザがサービスを介してアイテムを購入または販売することを可能にするトランザクション、ユーザが実施し得る広告との対話、あるいは他の好適なアイテムまたはオブジェクトを含み得る。ユーザは、ソーシャルネットワーキングシステム760において、またはソーシャルネットワーキングシステム760とは別個であり、ネットワーク710を介してソーシャルネットワーキングシステム760に結合された、サードパーティシステム770の外部システムによって、表されることが可能であるものと対話し得る。
特定の実施形態では、ソーシャルネットワーキングシステム760は、様々なエンティティをリンクすることが可能であり得る。限定としてではなく一例として、ソーシャルネットワーキングシステム760は、ユーザが、互いと対話し、ならびにサードパーティシステム770または他のエンティティからコンテンツを受信することを可能にするか、あるいは、ユーザが、アプリケーションプログラミングインターフェース(API)または他の通信チャネルを通して、これらのエンティティと対話することを可能にし得る。
特定の実施形態では、サードパーティシステム770は、1つまたは複数のタイプのサーバ、1つまたは複数のデータストア、限定はしないがAPIを含む1つまたは複数のインターフェース、1つまたは複数のウェブサービス、1つまたは複数のコンテンツソース、1つまたは複数のネットワーク、またはたとえばサーバが通信し得る任意の他の好適な構成要素を含み得る。サードパーティシステム770は、ソーシャルネットワーキングシステム760を動作させるエンティティとは異なるエンティティによって動作させられ得る。しかしながら、特定の実施形態では、ソーシャルネットワーキングシステム760とサードパーティシステム770とは、互いと連携して動作して、ソーシャルネットワーキングシステム760またはサードパーティシステム770のユーザにソーシャルネットワーキングサービスを提供し得る。この意味で、ソーシャルネットワーキングシステム760は、サードパーティシステム770などの他のシステムが、インターネット上でユーザにソーシャルネットワーキングサービスおよび機能性を提供するために使用し得る、プラットフォームまたはバックボーンを提供し得る。
特定の実施形態では、サードパーティシステム770は、サードパーティコンテンツオブジェクトプロバイダを含み得る。サードパーティコンテンツオブジェクトプロバイダは、クライアントシステム730に通信され得る、コンテンツオブジェクトの1つまたは複数のソースを含み得る。限定としてではなく一例として、コンテンツオブジェクトは、たとえば、映画の上映時間、映画のレビュー、レストランのレビュー、レストランのメニュー、製品情報およびレビュー、または他の好適な情報など、ユーザにとって関心のある物またはアクティビティに関する情報を含み得る。限定としてではなく別の例として、コンテンツオブジェクトは、クーポン、ディスカウントチケット、ギフト券、または他の好適なインセンティブオブジェクトなど、インセンティブコンテンツオブジェクトを含み得る。
特定の実施形態では、ソーシャルネットワーキングシステム760は、ソーシャルネットワーキングシステム760とのユーザの対話を向上させ得る、ユーザ生成されたコンテンツオブジェクトをも含む。ユーザ生成されたコンテンツは、ユーザがソーシャルネットワーキングシステム760に追加するか、アップロードするか、送るか、または「投稿する(post)」ことができるものを含み得る。限定としてではなく一例として、ユーザは、クライアントシステム730からソーシャルネットワーキングシステム760に投稿を通信する。投稿は、ステータス更新または他のテキストデータ、ロケーション情報、写真、ビデオ、リンク、音楽あるいは他の同様のデータまたはメディアなど、データを含み得る。コンテンツはまた、ニュースフィードまたはストリームなどの「通信チャネル」を通して、サードパーティによってソーシャルネットワーキングシステム760に追加され得る。
特定の実施形態では、ソーシャルネットワーキングシステム760は、様々なサーバ、サブシステム、プログラム、モジュール、ログ、およびデータストアを含み得る。特定の実施形態では、ソーシャルネットワーキングシステム760は、ウェブサーバ、アクションロガー、API要求サーバ、関連性およびランキングエンジン、コンテンツオブジェクト分類子、通知コントローラ、アクションログ、サードパーティコンテンツオブジェクト露出ログ、推測モジュール、許可/プライバシーサーバ、検索モジュール、広告ターゲッティングモジュール、ユーザインターフェースモジュール、ユーザプロファイルストア、つながりストア、サードパーティコンテンツストア、またはロケーションストアのうちの1つまたは複数を含み得る。ソーシャルネットワーキングシステム760は、ネットワークインターフェース、セキュリティ機構、ロードバランサ、フェイルオーバサーバ、管理およびネットワーク運用コンソール、他の好適な構成要素、またはそれらの任意の好適な組合せなど、好適な構成要素をも含み得る。特定の実施形態では、ソーシャルネットワーキングシステム760は、ユーザプロファイルを記憶するための1つまたは複数のユーザプロファイルストアを含み得る。ユーザプロファイルは、たとえば、経歴情報、人口統計学的情報、行動情報、ソーシャル情報、あるいは、職歴、学歴、趣味もしくは選好、関心、親和性、またはロケーションなど、他のタイプの記述的情報を含み得る。関心情報は、1つまたは複数のカテゴリーに関係する関心を含み得る。カテゴリーは一般的であるかまたは固有のものであり得る。限定としてではなく一例として、ユーザが、靴のブランドに関する記事に対して「いいね!」を表明した場合、カテゴリーは、ブランド、あるいは「靴」または「衣類」の一般的なカテゴリーであり得る。つながりストアは、ユーザに関するつながり情報を記憶するために使用され得る。つながり情報は、同様のまたは共通の職歴、グループメンバーシップ、趣味、学歴を有するか、あるいはいかなる形でも関係するか、または共通属性を共有する、ユーザを指示し得る。つながり情報は、(内部と外部の両方の)異なるユーザとコンテンツとの間のユーザ定義されたつながりをも含み得る。ウェブサーバは、ネットワーク710を介して、ソーシャルネットワーキングシステム760を、1つまたは複数のクライアントシステム730または1つまたは複数のサードパーティシステム770にリンクするために使用され得る。ウェブサーバは、ソーシャルネットワーキングシステム760と1つまたは複数のクライアントシステム730との間でメッセージを受信およびルーティングするためのメールサーバまたは他のメッセージング機能性を含み得る。API要求サーバは、サードパーティシステム770が、1つまたは複数のAPIを呼び出すことによってソーシャルネットワーキングシステム760からの情報にアクセスすることを可能にし得る。アクションロガーは、ソーシャルネットワーキングシステム760上の、またはソーシャルネットワーキングシステム760から離れた、ユーザのアクションに関するウェブサーバからの通信を受信するために使用され得る。アクションログと併せて、サードパーティコンテンツオブジェクトへのユーザ露出についてのサードパーティコンテンツオブジェクトログが維持され得る。通知コントローラは、クライアントシステム730にコンテンツオブジェクトに関する情報を提供し得る。情報は、通知としてクライアントシステム730にプッシュされ得るか、または、情報は、クライアントシステム730から受信された要求に応答してクライアントシステム730からプルされ得る。許可サーバは、ソーシャルネットワーキングシステム760のユーザの1つまたは複数のプライバシーセッティングを施行するために使用され得る。ユーザのプライバシーセッティングは、ユーザに関連する特定の情報がどのように共有され得るかを決定する。許可サーバは、ユーザが、たとえば、適切なプライバシーセッティングをセットすることなどによって、そのユーザのアクションがソーシャルネットワーキングシステム760によってロギングされるか、または他のシステム(たとえば、サードパーティシステム770)と共有されることをオプトインまたはオプトアウトすることを可能にし得る。サードパーティコンテンツオブジェクトストアは、サードパーティシステム770など、サードパーティから受信されたコンテンツオブジェクトを記憶するために使用され得る。ロケーションストアは、ユーザに関連するクライアントシステム730から受信されたロケーション情報を記憶するために使用され得る。広告価格設定モジュールは、ソーシャル情報、現在時間、ロケーション情報、または他の好適な情報を組み合わせて、関連広告を通知の形態でユーザに提供し得る。
図8は、例示的なコンピュータシステム800を示す。特定の実施形態では、1つまたは複数のコンピュータシステム800は、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施する。特定の実施形態では、1つまたは複数のコンピュータシステム800は、本明細書で説明または示される機能性を提供する。特定の実施形態では、1つまたは複数のコンピュータシステム800上で稼働しているソフトウェアは、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施するか、あるいは本明細書で説明または示される機能性を提供する。特定の実施形態は、1つまたは複数のコンピュータシステム800の1つまたは複数の部分を含む。本明細書では、コンピュータシステムへの言及は、適切な場合、コンピューティングデバイスを包含し得、その逆も同様である。その上、コンピュータシステムへの言及は、適切な場合、1つまたは複数のコンピュータシステムを包含し得る。
本開示は、任意の好適な数のコンピュータシステム800を企図する。本開示は、任意の好適な物理的形態をとるコンピュータシステム800を企図する。限定としてではなく例として、コンピュータシステム800は、組込み型コンピュータシステム、システムオンチップ(SOC)、(たとえば、コンピュータオンモジュール(COM)またはシステムオンモジュール(SOM)などの)シングルボードコンピュータシステム(SBC)、デスクトップコンピュータシステム、ラップトップまたはノートブックコンピュータシステム、対話型キオスク、メインフレーム、コンピュータシステムのメッシュ、携帯電話、携帯情報端末(PDA)、サーバ、タブレットコンピュータシステム、拡張/仮想現実デバイス、あるいはこれらのうちの2つまたはそれ以上の組合せであり得る。適切な場合、コンピュータシステム800は、1つまたは複数のコンピュータシステム800を含むか、単一または分散型であるか、複数のロケーションにわたるか、複数のマシンにわたるか、複数のデータセンターにわたるか、あるいは1つまたは複数のネットワーク中の1つまたは複数のクラウド構成要素を含み得るクラウド中に常駐し得る。適切な場合、1つまたは複数のコンピュータシステム800は、実質的な空間的または時間的制限なしに、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施し得る。限定としてではなく一例として、1つまたは複数のコンピュータシステム800は、リアルタイムでまたはバッチモードで、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施し得る。1つまたは複数のコンピュータシステム800は、適切な場合、異なる時間においてまたは異なるロケーションにおいて、本明細書で説明または示される1つまたは複数の方法の1つまたは複数のステップを実施し得る。
特定の実施形態では、コンピュータシステム800は、プロセッサ802と、メモリ804と、ストレージ806と、入出力(I/O)インターフェース808と、通信インターフェース810と、バス812とを含む。本開示は、特定のコンピュータシステムが、特定の配置の中に特定の数の特定の構成要素を有することを説明し、示しているが、本開示は、任意の適切なコンピュータシステムが、任意の適切な配置の中に任意の適切な数の任意の適切な構成要素を有することを想定する。
特定の実施形態では、プロセッサ802は、コンピュータプログラムを作り上げる命令など、命令を実行するためのハードウェアを含む。限定としてではなく一例として、命令を実行するために、プロセッサ802は、内部レジスタ、内部キャッシュ、メモリ804、またはストレージ806から命令を取り出し(またはフェッチし)、それらの命令を復号および実行し、次いで、内部レジスタ、内部キャッシュ、メモリ804、またはストレージ806に1つまたは複数の結果を書き込み得る。特定の実施形態では、プロセッサ802は、データ、命令、またはアドレスのための1つまたは複数の内部キャッシュを含み得る。本開示は、適切な場合、任意の好適な数の任意の好適な内部キャッシュを含むプロセッサ802を企図する。限定としてではなく一例として、プロセッサ802は、1つまたは複数の命令キャッシュと、1つまたは複数のデータキャッシュと、1つまたは複数のトランスレーションルックアサイドバッファ(TLB)とを含み得る。命令キャッシュ中の命令は、メモリ804またはストレージ806中の命令のコピーであり得、命令キャッシュは、プロセッサ802によるそれらの命令の取出しを高速化し得る。データキャッシュ中のデータは、プロセッサ802において実行する命令が動作する対象のメモリ804またはストレージ806中のデータのコピー、プロセッサ802において実行する後続の命令によるアクセスのための、またはメモリ804もしくはストレージ806に書き込むための、プロセッサ802において実行された前の命令の結果、あるいは他の好適なデータであり得る。データキャッシュは、プロセッサ802による読取りまたは書込み動作を高速化し得る。TLBは、プロセッサ802のための仮想アドレストランスレーション(virtual−address translation)を高速化し得る。特定の実施形態では、プロセッサ802は、データ、命令、またはアドレスのための1つまたは複数の内部レジスタを含み得る。本開示は、適切な場合、任意の好適な数の任意の好適な内部レジスタを含むプロセッサ802を企図する。適切な場合、プロセッサ802は、1つまたは複数の算術論理ユニット(ALU)を含むか、マルチコアプロセッサであるか、または1つまたは複数のプロセッサ802を含み得る。本開示は、特定のプロセッサを説明し、示すが、本開示は任意の好適なプロセッサを企図する。
特定の実施形態では、メモリ804は、プロセッサ802が実行するための命令、またはプロセッサ802が動作する対象のデータを記憶するためのメインメモリを含む。限定としてではなく一例として、コンピュータシステム800は、ストレージ806または(たとえば、別のコンピュータシステム800などの)別のソースからメモリ804に命令をロードし得る。プロセッサ802は、次いで、メモリ804から内部レジスタまたは内部キャッシュに命令をロードし得る。命令を実行するために、プロセッサ802は、内部レジスタまたは内部キャッシュから命令を取り出し、それらの命令を復号し得る。命令の実行中またはその後に、プロセッサ802は、(中間結果または最終結果であり得る)1つまたは複数の結果を内部レジスタまたは内部キャッシュに書き込み得る。プロセッサ802は、次いで、メモリ804にそれらの結果のうちの1つまたは複数を書き込み得る。特定の実施形態では、プロセッサ802は、1つまたは複数の内部レジスタまたは内部キャッシュ中の、あるいは(ストレージ806または他の場所とは対照的な)メモリ804中の命令のみを実行し、1つまたは複数の内部レジスタまたは内部キャッシュ中の、あるいは(ストレージ806または他の場所とは対照的な)メモリ804中のデータのみに対して動作する。(アドレスバスおよびデータバスを各々含み得る)1つまたは複数のメモリバスが、プロセッサ802をメモリ804に結合し得る。バス812は、以下で説明されるように、1つまたは複数のメモリバスを含み得る。特定の実施形態では、1つまたは複数のメモリ管理ユニット(MMU)が、プロセッサ802とメモリ804との間に常駐し、プロセッサ802によって要求されるメモリ804へのアクセスを可能にする。特定の実施形態では、メモリ804は、ランダムアクセスメモリ(RAM)を含む。このRAMは、適切な場合、揮発性メモリであり得る。適切な場合、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であり得る。その上、適切な場合、このRAMは、シングルポートまたはマルチポートRAMであり得る。本開示は任意の好適なRAMを企図する。メモリ804は、適切な場合、1つまたは複数のメモリ804を含み得る。本開示は、特定のメモリを説明し、示すが、本開示は任意の好適なメモリを企図する。
特定の実施形態では、ストレージ806は、データまたは命令のための大容量ストレージを含む。限定としてではなく一例として、ストレージ806は、ハードディスクドライブ(HDD)、フロッピーディスクドライブ、フラッシュメモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサルシリアルバス(USB)ドライブ、あるいはこれらのうちの2つまたはそれ以上の組合せを含み得る。ストレージ806は、適切な場合、リムーバブルまたは非リムーバブル(または固定)媒体を含み得る。ストレージ806は、適切な場合、コンピュータシステム800の内部または外部にあり得る。特定の実施形態では、ストレージ806は、不揮発性ソリッドステートメモリである。特定の実施形態では、ストレージ806は、読取り専用メモリ(ROM)を含む。適切な場合、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書き換え可能ROM(EAROM)、またはフラッシュメモリ、あるいはこれらのうちの2つまたはそれ以上の組合せであり得る。本開示は、任意の好適な物理的形態をとる大容量ストレージ806を企図する。ストレージ806は、適切な場合、プロセッサ802とストレージ806との間の通信を可能にする1つまたは複数のストレージ制御ユニットを含み得る。適切な場合、ストレージ806は、1つまたは複数のストレージ806を含み得る。本開示は、特定のストレージを説明し、示すが、本開示は任意の好適なストレージを企図する。
特定の実施形態では、I/Oインターフェース808は、コンピュータシステム800と1つまたは複数のI/Oデバイスとの間の通信のための1つまたは複数のインターフェースを提供する、ハードウェア、ソフトウェア、またはその両方を含む。コンピュータシステム800は、適切な場合、これらのI/Oデバイスのうちの1つまたは複数を含み得る。これらのI/Oデバイスのうちの1つまたは複数は、人とコンピュータシステム800との間の通信を可能にし得る。限定としてではなく一例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカー、スチールカメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、別の好適なI/Oデバイス、またはこれらのうちの2つまたはそれ以上の組合せを含み得る。I/Oデバイスは1つまたは複数のセンサーを含み得る。本開示は、任意の好適なI/Oデバイスと、それらのI/Oデバイスのための任意の好適なI/Oインターフェース808とを企図する。適切な場合、I/Oインターフェース808は、プロセッサ802がこれらのI/Oデバイスのうちの1つまたは複数を駆動することを可能にする1つまたは複数のデバイスまたはソフトウェアドライバを含み得る。I/Oインターフェース808は、適切な場合、1つまたは複数のI/Oインターフェース808を含み得る。本開示は、特定のI/Oインターフェースを説明し、示すが、本開示は任意の好適なI/Oインターフェースを企図する。
特定の実施形態では、通信インターフェース810は、コンピュータシステム800と、1つまたは複数の他のコンピュータシステム800または1つまたは複数のネットワークとの間の(たとえば、パケットベース通信などの)通信のための1つまたは複数のインターフェースを提供する、ハードウェア、ソフトウェア、またはその両方を含む。限定としてではなく一例として、通信インターフェース810は、イーサネットまたは他のワイヤベースネットワークと通信するためのネットワークインターフェースコントローラ(NIC)またはネットワークアダプタ、あるいはWI−FIネットワークなどのワイヤレスネットワークと通信するためのワイヤレスNIC(WNIC)またはワイヤレスアダプタを含み得る。本開示は、任意の好適なネットワークと、そのネットワークのための任意の好適な通信インターフェース810とを企図する。限定としてではなく一例として、コンピュータシステム800は、アドホックネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、またはインターネットの1つまたは複数の部分、あるいはこれらのうちの2つまたはそれ以上の組合せと通信し得る。これらのネットワークのうちの1つまたは複数の1つまたは複数の部分は、ワイヤードまたはワイヤレスであり得る。一例として、コンピュータシステム800は、(たとえば、BLUETOOTH WPANなどの)ワイヤレスPAN(WPAN)、WI−FIネットワーク、WI−MAXネットワーク、(たとえば、モバイル通信用グローバルシステム(GSM)ネットワークなどの)セルラー電話ネットワーク、または他の好適なワイヤレスネットワーク、あるいはこれらのうちの2つまたはそれ以上の組合せと通信し得る。コンピュータシステム800は、適切な場合、これらのネットワークのいずれかのための任意の好適な通信インターフェース810を含み得る。通信インターフェース810は、適切な場合、1つまたは複数の通信インターフェース810を含み得る。本開示は、特定の通信インターフェースを説明し、示すが、本開示は任意の好適な通信インターフェースを企図する。
特定の実施形態では、バス812は、コンピュータシステム800の構成要素を互いに結合する、ハードウェア、ソフトウェア、またはその両方を含む。限定としてではなく一例として、バス812は、アクセラレーテッドグラフィックスポート(AGP)または他のグラフィックスバス、拡張業界標準アーキテクチャ(EISA)バス、フロントサイドバス(FSB)、HYPERTRANSPORT(HT)相互接続、業界標準アーキテクチャ(ISA)バス、INFINIBAND相互接続、ローピンカウント(LPC)バス、メモリバス、マイクロチャネルアーキテクチャ(MCA)バス、周辺構成要素相互接続(PCI)バス、PCI−Express(PCIe)バス、シリアルアドバンストテクノロジーアタッチメント(SATA)バス、ビデオエレクトロニクス規格協会ローカル(VLB)バス、または別の好適なバス、あるいはこれらのうちの2つまたはそれ以上の組合せを含み得る。バス812は、適切な場合、1つまたは複数のバス812を含み得る。本開示は、特定のバスを説明し、示すが、本開示は任意の好適なバスまたは相互接続を企図する。
本明細書では、1つまたは複数のコンピュータ可読非一時的記憶媒体は、適切な場合、(たとえば、フィールドプログラマブルゲートアレイ(FPGA)または特定用途向けIC(ASIC)などの)1つまたは複数の半導体ベースまたは他の集積回路(IC)、ハードディスクドライブ(HDD)、ハイブリッドハードドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピーディスケット、フロッピーディスクドライブ(FDD)、磁気テープ、ソリッドステートドライブ(SSD)、RAMドライブ、セキュアデジタルカードまたはドライブ、任意の他の好適なコンピュータ可読非一時的記憶媒体、あるいはこれらのうちの2つまたはそれ以上の任意の好適な組合せを含み得る。コンピュータ可読非一時的記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性との組合せであり得る。
本明細書では、「または」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、包括的であり、排他的ではない。したがって、本明細書では、「AまたはB」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、「A、B、またはその両方」を意味する。その上、「および」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、共同と個別の両方である。したがって、本明細書では、「AおよびB」は、明確に別段に指示されていない限り、またはコンテキストによって別段に指示されていない限り、「共同でまたは個別に、AおよびB」を意味する。
本開示の範囲は、当業者が理解するであろう、本明細書で説明または示される例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書で説明または示される例示的な実施形態に限定されない。その上、本開示は、本明細書のそれぞれの実施形態を、特定の構成要素、要素、特徴、機能、動作、またはステップを含むものとして説明し、示すが、これらの実施形態のいずれも、当業者が理解するであろう、本明細書のどこかに説明または示される構成要素、要素、特徴、機能、動作、またはステップのうちのいずれかの任意の組合せまたは置換を含み得る。さらに、特定の機能を実施するように適応されるか、構成されるか、実施することが可能であるか、実施するように設定されるか、実施することが可能にされるか、実施するように動作可能であるか、または実施するように動作する、装置またはシステムあるいは装置またはシステムの構成要素に対する添付の特許請求の範囲における参照は、その装置、システム、または構成要素が、そのように適応されるか、構成されるか、可能であるか、設定されるか、可能にされるか、動作可能であるか、または動作する限り、その装置、システム、構成要素またはその特定の機能が、アクティブにされるか、オンにされるか、またはロック解除されるか否かにかかわらず、その装置、システム、構成要素を包含する。さらに、本開示は、特定の実施形態を、特定の利点を提供するものとして説明するかまたは示すが、特定の実施形態は、これらの利点のいずれをも提供しないか、いくつかを提供するか、またはすべてを提供し得る。

Claims (20)

  1. ユーザコンピューティングデバイスによって、前記ユーザコンピューティングデバイスとの同期提示セッション中である少なくとも1つの他のユーザコンピューティングデバイスに接続することと、
    前記ユーザコンピューティングデバイスによって、前記ユーザコンピューティングデバイス上のサードパーティアプリケーションのインスタンスを通して取得されたデジタルコンテンツを提示することと、
    前記ユーザコンピューティングデバイスによって、同期メッセージが送られるべきであると決定することと、
    前記ユーザコンピューティングデバイスによって、前記ユーザコンピューティングデバイスによって提示されている前記デジタルコンテンツのステータスに基づいて、前記同期メッセージを生成することと、
    前記ユーザコンピューティングデバイスによって、前記他のユーザコンピューティングデバイスまたは前記他のユーザコンピューティングデバイスに関連するサーバに前記同期メッセージを送ることであって、前記同期メッセージは、前記他のユーザコンピューティングデバイスによる前記デジタルコンテンツの提示が、前記ユーザコンピューティングデバイスによる前記デジタルコンテンツの前記提示と同期されることを引き起こすように設定された、前記同期メッセージを送ることと
    を含む、方法。
  2. 前記ユーザコンピューティングデバイスとの前記同期提示セッション中である前記少なくとも1つの他のユーザコンピューティングデバイスに接続するステップが、前記少なくとも1つの他のユーザコンピューティングデバイスと直接接続することを含む、請求項1に記載の方法。
  3. 前記サードパーティアプリケーションの前記インスタンスを通して取得された前記デジタルコンテンツが、前記サードパーティアプリケーションに関連するサードパーティコンテンツソースからストリーミングされる、請求項1に記載の方法。
  4. 前記ユーザコンピューティングデバイスと前記少なくとも1つの他のユーザコンピューティングデバイスとが、仮想現実デバイスを備え、前記ユーザコンピューティングデバイス上に前記デジタルコンテンツを提示することが、仮想現実環境においてスクリーン上に、前記サードパーティコンテンツソースからストリーミングされた前記デジタルコンテンツを再投影することを含む、請求項3に記載の方法。
  5. 前記ユーザコンピューティングデバイスのユーザが、前記仮想現実環境においてデジタルアバターによって表される、請求項4に記載の方法。
  6. 前記ユーザコンピューティングデバイスとの前記同期提示セッション中である前記少なくとも1つの他のユーザコンピューティングデバイスに接続するステップが、前記少なくとも1つの他のユーザコンピューティングデバイスとサーバを通して接続することを含む、請求項1に記載の方法。
  7. 前記同期メッセージが送られるべきであるとの前記決定が、所定のスケジュール、ユーザ入力、または、前記ユーザコンピューティングデバイスによって提示されている前記デジタルコンテンツの前記ステータスと前記少なくとも1つの他のユーザコンピューティングデバイスからのステータス情報との間の比較、のうちの1つに少なくとも基づく、請求項1に記載の方法。
  8. 前記少なくとも1つの他のユーザコンピューティングデバイスによって提示される前記デジタルコンテンツが、前記少なくとも1つの他のユーザコンピューティングデバイス上の前記サードパーティアプリケーションの第2のインスタンスを通して取得される、請求項1に記載の方法。
  9. 前記同期メッセージが、前記サードパーティアプリケーションの前記第2のインスタンスを通して前記少なくとも1つの他のユーザコンピューティングデバイスによって提示される前記デジタルコンテンツの再生を制御するように設定された、請求項8に記載の方法。
  10. 1つまたは複数のプロセッサと、
    前記プロセッサのうちの1つまたは複数に結合され、命令を備える、1つまたは複数のコンピュータ可読非一時的記憶媒体と
    を備えるシステムであって、前記命令は、前記プロセッサのうちの1つまたは複数によって実行されたとき、前記システムに、
    ユーザコンピューティングデバイスとの同期提示セッション中である少なくとも1つの他のユーザコンピューティングデバイスに接続することと、
    前記ユーザコンピューティングデバイス上のサードパーティアプリケーションのインスタンスを通して取得されたデジタルコンテンツを提示することと、
    同期メッセージが送られるべきであると決定することと、
    前記ユーザコンピューティングデバイスによって提示されている前記デジタルコンテンツのステータスに基づいて、前記同期メッセージを生成することと、
    前記他のユーザコンピューティングデバイスまたは前記他のユーザコンピューティングデバイスに関連するサーバに前記同期メッセージを送ることであって、前記同期メッセージは、前記他のユーザコンピューティングデバイスによる前記デジタルコンテンツの提示が、前記ユーザコンピューティングデバイスによる前記デジタルコンテンツの前記提示と同期されることを引き起こすように設定された、前記同期メッセージを送ることと
    を行わせる、
    システム。
  11. 前記ユーザコンピューティングデバイスとの前記同期提示セッション中である前記少なくとも1つの他のユーザコンピューティングデバイスに接続するステップが、前記少なくとも1つの他のユーザコンピューティングデバイスと直接接続することを含む、請求項10に記載のシステム。
  12. 前記サードパーティアプリケーションの前記インスタンスを通して取得された前記デジタルコンテンツが、前記サードパーティアプリケーションに関連するサードパーティコンテンツソースからストリーミングされる、請求項10に記載のシステム。
  13. 前記ユーザコンピューティングデバイスと前記少なくとも1つの他のユーザコンピューティングデバイスとが、仮想現実デバイスを備え、前記ユーザコンピューティングデバイス上に前記デジタルコンテンツを提示することが、仮想現実環境においてスクリーン上に、前記サードパーティコンテンツソースからストリーミングされた前記デジタルコンテンツを再投影することを含む、請求項12に記載のシステム。
  14. 前記ユーザコンピューティングデバイスのユーザが、前記仮想現実環境においてデジタルアバターによって表される、請求項13に記載のシステム。
  15. 前記ユーザコンピューティングデバイスとの前記同期提示セッション中である前記少なくとも1つの他のユーザコンピューティングデバイスに接続するステップが、前記少なくとも1つの他のユーザコンピューティングデバイスとサーバを通して接続することを含む、請求項10に記載のシステム。
  16. 前記同期メッセージが送られるべきであるとの前記決定が、所定のスケジュール、ユーザ入力、または、前記ユーザコンピューティングデバイスによって提示されている前記デジタルコンテンツの前記ステータスと前記少なくとも1つの他のユーザコンピューティングデバイスからのステータス情報との間の比較、のうちの1つに少なくとも基づく、請求項10に記載のシステム。
  17. 前記プロセッサが、前記命令を実行するとき、前記少なくとも1つの他のユーザコンピューティングデバイスによって、前記少なくとも1つの他のユーザコンピューティングデバイス上の前記サードパーティアプリケーションの第2のインスタンスを通して前記デジタルコンテンツを提示するようさらに動作可能である、請求項10に記載のシステム。
  18. 前記同期メッセージが、前記サードパーティアプリケーションの前記第2のインスタンスを通して前記少なくとも1つの他のユーザコンピューティングデバイスによって提示される前記デジタルコンテンツの再生を制御するように設定された、請求項17に記載のシステム。
  19. ソフトウェアを具現する1つまたは複数のコンピュータ可読非一時的記憶媒体であって、前記ソフトウェアは、コンピュータシステムによって実行されたとき、
    ユーザコンピューティングデバイスとの同期提示セッション中である少なくとも1つの他のユーザコンピューティングデバイスに接続することと、
    前記ユーザコンピューティングデバイス上のサードパーティアプリケーションのインスタンスを通して取得されたデジタルコンテンツを提示することと、
    同期メッセージが送られるべきであると決定することと、
    前記ユーザコンピューティングデバイスによって提示されている前記デジタルコンテンツのステータスに基づいて、前記同期メッセージを生成することと、
    前記他のユーザコンピューティングデバイスまたは前記他のユーザコンピューティングデバイスに関連するサーバに前記同期メッセージを送ることであって、前記同期メッセージは、前記他のユーザコンピューティングデバイスによる前記デジタルコンテンツの提示が、前記ユーザコンピューティングデバイスによる前記デジタルコンテンツの前記提示と同期されることを引き起こすように設定された、前記同期メッセージを送ることと
    を行うように動作可能である、
    1つまたは複数のコンピュータ可読非一時的記憶媒体。
  20. 前記ユーザコンピューティングデバイスとの前記同期提示セッション中である前記少なくとも1つの他のユーザコンピューティングデバイスに接続するステップが、前記少なくとも1つの他のユーザコンピューティングデバイスと直接接続することを含む、請求項19に記載の媒体。
JP2020573284A 2018-08-21 2019-08-14 デジタルコンテンツ消費の同期 Pending JP2021534606A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/107,817 2018-08-21
US16/107,817 US10628115B2 (en) 2018-08-21 2018-08-21 Synchronization of digital content consumption
PCT/US2019/046548 WO2020041071A1 (en) 2018-08-21 2019-08-14 Synchronization of digital content consumption

Publications (1)

Publication Number Publication Date
JP2021534606A true JP2021534606A (ja) 2021-12-09

Family

ID=67811021

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020573284A Pending JP2021534606A (ja) 2018-08-21 2019-08-14 デジタルコンテンツ消費の同期

Country Status (5)

Country Link
US (3) US10628115B2 (ja)
EP (1) EP3841757A1 (ja)
JP (1) JP2021534606A (ja)
CN (1) CN112585986B (ja)
WO (1) WO2020041071A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11508128B2 (en) * 2018-09-21 2022-11-22 New York University Shared room scale virtual and mixed reality storytelling for a multi-person audience that may be physically co-located
US11570518B2 (en) 2020-06-30 2023-01-31 Spotify Ab Systems and methods for creating a shared playback session
CN113032491B (zh) * 2021-04-07 2023-01-06 工银科技有限公司 实现静态数据同步的方法、装置、电子设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070271338A1 (en) * 2006-05-18 2007-11-22 Thomas Anschutz Methods, systems, and products for synchronizing media experiences
JP2012528404A (ja) * 2009-05-29 2012-11-12 マイクロソフト コーポレーション アバターを統合した共有メディア体験方法及びシステム
JP2015515208A (ja) * 2012-03-23 2015-05-21 トムソン ライセンシングThomson Licensing 相関したメディアプレゼンテーションの同期のためのバッファ管理方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8190680B2 (en) * 2004-07-01 2012-05-29 Netgear, Inc. Method and system for synchronization of digital media playback
US7627890B2 (en) * 2006-02-21 2009-12-01 At&T Intellectual Property, I,L.P. Methods, systems, and computer program products for providing content synchronization or control among one or more devices
US20090262084A1 (en) * 2008-04-18 2009-10-22 Shuttle Inc. Display control system providing synchronous video information
US20100083324A1 (en) * 2008-09-30 2010-04-01 Microsoft Corporation Synchronized Video Playback Among Multiple Users Across A Network
US8836771B2 (en) * 2011-04-26 2014-09-16 Echostar Technologies L.L.C. Apparatus, systems and methods for shared viewing experience using head mounted displays
US20130147686A1 (en) * 2011-12-12 2013-06-13 John Clavin Connecting Head Mounted Displays To External Displays And Other Communication Networks
WO2013103581A1 (en) * 2012-01-06 2013-07-11 Thomson Licensing Method and system for synchronising social messages with a content timeline
KR102107404B1 (ko) * 2013-10-30 2020-05-07 삼성전자주식회사 어플리케이션을 공유하는 전자 장치 및 그 제어 방법
US20150189012A1 (en) * 2014-01-02 2015-07-02 Nvidia Corporation Wireless display synchronization for mobile devices using buffer locking
US10155167B2 (en) * 2014-12-29 2018-12-18 Ebay Inc. Audience adjusted gaming
US20170180769A1 (en) * 2015-12-18 2017-06-22 Cevat Yerli Simultaneous experience of media
US20170295229A1 (en) * 2016-04-08 2017-10-12 Osterhout Group, Inc. Synchronizing head-worn computers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070271338A1 (en) * 2006-05-18 2007-11-22 Thomas Anschutz Methods, systems, and products for synchronizing media experiences
JP2012528404A (ja) * 2009-05-29 2012-11-12 マイクロソフト コーポレーション アバターを統合した共有メディア体験方法及びシステム
JP2015515208A (ja) * 2012-03-23 2015-05-21 トムソン ライセンシングThomson Licensing 相関したメディアプレゼンテーションの同期のためのバッファ管理方法

Also Published As

Publication number Publication date
EP3841757A1 (en) 2021-06-30
US10990345B2 (en) 2021-04-27
CN112585986B (zh) 2023-11-03
US11334310B2 (en) 2022-05-17
US20210208836A1 (en) 2021-07-08
US10628115B2 (en) 2020-04-21
WO2020041071A1 (en) 2020-02-27
US20200218495A1 (en) 2020-07-09
CN112585986A (zh) 2021-03-30
US20200065051A1 (en) 2020-02-27

Similar Documents

Publication Publication Date Title
US20200359073A1 (en) Promotion content push method and apparatus, and storage medium
US9292164B2 (en) Virtual social supervenue for sharing multiple video streams
US10498781B2 (en) Interactive spectating interface for live videos
US10897637B1 (en) Synchronize and present multiple live content streams
US11334310B2 (en) Synchronization of digital content consumption
JP6404895B2 (ja) ライブ・フェイス
US20230134355A1 (en) Efficient Processing For Artificial Reality
JP6062953B2 (ja) メディアブロードキャストのための同期されたインタラクティブレイヤのシステムおよび方法
US20220179204A1 (en) Systems and methods for generating spectator images of an artificial reality environment
US11950165B2 (en) Provisioning content across multiple devices
CN116033232A (zh) 用于视频交互的方法、装置、设备和存储介质
CN115917530A (zh) 使用基于服务器的系统聚合媒体内容
EP3389049B1 (en) Enabling third parties to add effects to an application
US20230221797A1 (en) Ephemeral Artificial Reality Experiences
EP3509024A1 (en) Multivision display

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220520

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230627

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240130