JP7149323B2 - リモートデータのアプリケーションによる消費を同期させるための方法と装置 - Google Patents
リモートデータのアプリケーションによる消費を同期させるための方法と装置 Download PDFInfo
- Publication number
- JP7149323B2 JP7149323B2 JP2020507983A JP2020507983A JP7149323B2 JP 7149323 B2 JP7149323 B2 JP 7149323B2 JP 2020507983 A JP2020507983 A JP 2020507983A JP 2020507983 A JP2020507983 A JP 2020507983A JP 7149323 B2 JP7149323 B2 JP 7149323B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- group
- time
- consumers
- local
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/611—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/70—Media network packetisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/242—Synchronization processes, e.g. processing of PCR [Program Clock References]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising 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/43076—Synchronising 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/04—Synchronising
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Television Systems (AREA)
- Electric Clocks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Description
以下の段落には、本文書全体で使用される定義のセットが含まれる。
データチャンク(DataChunk)は、関連付けられている消費タイムスタンプを持つデータフレームのコレクション、おそらく1つのコレクションを意味するように使用される。本発明の例示的な実施形態では、各データフレームは、フレーム識別子、データタイムスタンプ、およびデータ自体から構成される。消費タイムスタンプ(ConsumptionTS)が、各データフレーム(DataFrame)とともにヘッダーフィールドとして送信されるような他の実施形態では、フレーム識別子(FrameID)とデータタイムスタンプ(DataTS)は、オプションである。タイムスタンプは、優先度を示すために使用されるが、これは、例えば、フレームタイプまたはソースに基づいて、簡単に一般化させることが出来る。
DataChunk ::=ConsumptionTS {DataFrame} 1-n
DataFrame ::=(FrameID)(DataTS)Data
データチャンクはクライアントに到着し、そしてバッファ(図21A~H)に配置され、そこからデータチャンクが消費される。一例としてビデオを使用すると、データチャンクは、複数のビデオフレームで構成されていて、かつこれらのフレームは、レンダリングのために着信バッファから消費される。このモデルの別のインスタンス化では、消費されるデータチャンクとフレームは、サードパーティのアプリケーションに渡すことが出来る。再び、一例としてビデオを使用すると、これは、ほとんどのHTML5対応ブラウザに組み込まれているMedia Service Extensionになり得る。
消費タイムスタンプCT(consumption time)を有するデータチャンクを受信すると、ローカル時刻LCiを有するクライアントiは、チャンクのフレームをバッファリングする、それらを即座に再生する、またはLCiとCTの相違に応じて、それらのサブセット、すなわち、チャンクの一部を破棄する、の何れかを行う。
同期されているグループという用語は、全てのコンシューマが、同時にデータを消費することを望む、データソースとコンシューマから構成されるデバイスのグループを指すために使用される。
本発明の実施形態は、クライアントのグループ間でデジタルデータ(例、ビデオ)、を同期した状態で消費するためのアプローチを提供する。消費されるデータは、1つまたはソースのコレクションによって提供され、クライアントとデータソースは、インターネット経由で接続され、かつメモリともグループクロックとも共有されていないと仮定されている。本発明によってサポートされる同期された消費により、クライアントは、消費された共有コンテンツに関して、あたかもそれらが物理的に並置されているかのように、互いに同時に同期した状態で対話することが出来る。
●データソースとして機能する複数のサーバまたはサーバクラスタ、およびコンシューマとして機能する複数のクライアント。
●各ピアが、データのソースまたはコンシューマ、あるいはその両方になることが出来る純粋なピアツーピア。
●ピアを、データのソースまたはコンシューマ、およびその両方とすることができ、かつ1つ以上のサーバのセットが、ソースとして機能し、かつどのピアからどのデータが利用可能という様なピアに関するメタ情報をバックアップしかつ提供する、サーバ支援ピアツーピアモデル。
drift = (LCTS1 - LCTS0) / (GCTS1 - GCTS0) (式 AA)
LCTSk = drift x (GCTSk - GCTS1) + LCTS1 (式 BB)
LCTS:ローカルタイムスタンプ
GCTS:グループタイムスタンプ
GCTS1は、最後の同期時のグループタイムスタンプである。
LCTS1は、最後の同期時のローカルタイムスタンプである。
本発明の実施形態は、データが不完全であるまたは近似している場合でも、いくつかのタイプのデータは、依然として有用であるという事実を活用する。不完全データまたは近似データの意味を説明するために、いくつかの例を示す。
●ビデオまたはサウンドをより低いビットレートでエンコードして、元のビデオまたはサウンドの近似値を生成することが出来る。
●画像を低解像度でエンコードして、元の画像の近似値を作成することが出来る。
●データポイントのランダムサンプリングを削除する、または各データポイントを低い精度に丸めることにより、一連の測定値を近似することが出来る。
一部のコンシューマは、ネットワーク接続が遅いので、消費時刻の後に一貫してデータチャンクを受信する場合がある。本発明の実施形態は、上述したデータ近似および圧縮を使用して、ネットワーク条件が、他のグループメンバに対してよりも一部のグループメンバに対してはるかに悪い場合でも、全てのグループメンバに対して同期されたデータ消費を実行する能力を保持する。クライアントが、消費時刻後にデータチャンクを一貫して受信すると、クライアントは、サーバに通知し、かつより小さいチャンクを要求することが出来る。サーバは、他のクライアントに完全なデータを提供する一方、そのクライアントには小さなデータチャンクを提供することが出来る。この小さいデータチャンクは、他のクライアントに完全なデータを提供する一方、そのクライアントの元のデータの近似値を表す。
いくつかの用途では、近似データを消費することは望ましくないまたは実用的ではない場合がある。これらの場合、データソースが、常に一定の品質閾値を超えるデータ(例、2.5Mビット/秒より大のビデオビットレート)を提供するように、同期されているグループを構成することが出来る。
データチャンクに関連付けられている消費タイムスタンプは、データチャンクの第一フレームの消費時刻であると見ることが出来る。後続の全てのデータフレームの消費時刻は、第一フレームの消費時刻と各フレームのタイムスタンプとに基づいて計算することが出来る。例えば、フレーム0からフレーム2までの一連の3つのビデオフレームを考えてみる。フレーム0のみが、150,000の明示的なグループ消費タイムスタンプ(GCTS)を持つとする。明示的な消費タイムスタンプを持たないフレーム1のビデオタイムスタンプは、フレーム0のビデオタイムスタンプの後3,750ティックを持つ。
本発明の実施形態は、クロック同期フェーズに依存する。以下に、1クロック同期アルゴリズムが、Cristianの時刻同期アルゴリズム(https://en.wikipedia.org/wiki/Cristian%27s_algorithm)に基づいて説明される。このアルゴリズムは、本発明を満たすために使用することが出来るであろう。クライアントCは、サーバの時刻を要求するためにタイムサーバSにコンタクトする。要求を受信した後、サーバは、応答を準備し、そしてその時刻T(UTCのような外部ソースに基づいて設定される場合とそうでない場合がある)を追加する。応答を受信した後、クライアントはその時刻をT + RTT/2に設定する(RTTは通信の往復時間)。これに代えて、クライアントは、ローカルクロックをサーバ時刻に設定するのではなく、単にグループクロックとローカルクロックとの間のオフセットを記録することも出来る。より緊密な同期を実現するために、クライアントは。この要求を複数回実行し、そして最短のRTTで応答を使用することが出来る。ここに記載されている方法は、RTTが、要求と応答の間で均等に分割されていることを前提としている。本発明の異なる実施形態では、任意の数の異なるクロック同期アルゴリズムを利用することが出来るであろう。唯一の要件は、アルゴリズムが完了した後、グループメンバが、グループタイムスタンプとローカルタイムスタンプの間で変換することが出来ることが必要であることである。この要件を満たす他の同期アルゴリズムには、BerkeleyとNTPが含まれるが、これらに限定されることはない。本発明は、アプリケーションによっては、外部クロックとの同期を必要としないことがあるので、これらの代わりにいくつかの他のアルゴリズムを使用することも出来る。
図1は、本発明による例示的な同期グループを示すブロック図である。本発明の例示的な実施形態では、サーバは、1つ以上のフレームから構成することが出来るであろうデータチャンクを、追加の消費時刻(CT: consumption time)とともに、送信する。時刻CTのデータチャンクを受信すると、ローカル時刻LCiのクライアントiは、LCiとCTの差に応じて、チャンクのフレームをバッファリングするか、すぐに再生するか、またはそれらのサブセット(つまり、チャンクの一部)を破棄する、の何れかを行う。
●どのサーバがデータソースとして機能するかは示されていない。これは、実際には、1台のサーバがデータソースとして機能する、または複数のサーバが共同でデータソースとして機能する可能性があるためである。
●どのサーバもグループクロックを保持することが出来るため、どのサーバがグループクロックを保持しているかは表示されていない。
●バックアップクロックは必要でないため、バックアップクロックは表示されていない。
図21A~21Hは、本発明によるデータの優先度に基づく順序付けを示す。
ネットワークスループット=Σ(コンシューマに配信されるデータ)/Σ(到着時刻-対応するグループ時刻)
を計算することにより、到着時刻に対応するグループ時刻に基づいて、最低のネットワークスループットを決定することが出来る。
図25は、いくつかの実施形態の特定の特徴を実装するために使用することができるコンピュータシステムのブロック図である。このコンピュータシステムは、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ(PC)、ユーザーデバイス、タブレットPC、ラップトップコンピュータ、携帯情報端末(PDA)、携帯電話、iPhone、iPad、Blackberry、プロセッサ、電話、Webアプライアンス、ネットワークルーター、スイッチまたはブリッジ、コンソール、ハンドヘルドコンソール、(ハンドヘルド)ゲームデバイス、音楽プレーヤ、任意のポータブルでモバイルのハンド-ハンドヘルドデバイス、ウェアラブルデバイス、またはそのマシンが実行するアクションを指定するシーケンシャルまたはそれ以外の一連の命令を実行することが可能な任意のマシンとすることができる。
本明細書で使用される言語は、主に読み易さおよび説明目的のために選択されており、そして本発明の主題を描写または制限するために選択されていない場合がある。従って、本発明の範囲は、この詳細な説明によって限定されるのではなく、本明細書に基づく出願に基づいて発行される請求項によって限定されることが、意図されている。従って、様々な実施形態の開示は、添付の特許請求の範囲に記載されている実施形態の範囲を例示することを意図したものであり、限定することを意図したものではない。
本出願は、2017年4月24日に出願された米国仮特許出願第62 / 489,264号の優先権を主張し、その全体が参照により本明細書に組み込まれる。
Claims (20)
- 順序付けられたデータストリームの複数のコンシューマによって順序付けられたデータストリームを受信するステップであって、前記順序付けられたデータストリームが、データチャンクの順序付けられたシーケンスを含む、ステップと、
前記複数のコンシューマ間で前記順序付けられたデータストリーム内のデータチャンクの消費を、以下のサブステップ:
前記順序付けられたデータストリームの消費を開始する前に、ローカル時刻とグループ時刻の間のマッピングを取得するために、前記複数のコンシューマが前記データチャンクを消費すべき前記グループ時刻を示すグループクロックと、前記複数のコンシューマの前記ローカル時刻を示すローカルクロックとを同期させるサブステップ;
前記順序付けられたデータストリームの前記データチャンクと、前記順序付けられたデータストリームの前記データチャンクに関連付けられているグループ時刻の表示とを受信するサブステップ;
前記グループ時刻および前記ローカル時刻と前記グループ時刻の間の前記マッピングに基づいて、前記グループ時刻に対応する前記ローカル時刻、前記ローカルクロックに関連付けられている前記ローカル時刻を計算するサブステップ;
前記ローカル時刻を前記ローカルクロックに関連付けられている現在時刻と比較して、前記データチャンクに関連付けられている前記ローカル時刻が、前記現在時刻より前か、前記現在時刻と実質的に同一か、または前記現在時刻の後であるかを示す比較を生成するサブステップ;そして
前記比較に基づいて、前記データチャンクを削除する、前記データチャンクの持続時間を調整する、または前記データチャンクを消費することにより、前記複数のコンシューマが、前記データチャンクを同期の基に消費することを保証するサブステップ
により、同期させるステップとを
備える方法。 - 前記現在時刻が、前記ローカル時刻より前であると決定するステップ、および
受信されたデータチャンクのシーケンス内の前記データチャンクを、前記データチャンクに関連付けられている前記ローカル時刻を示す場所に、配置するステップ、
を備える、請求項1に記載の方法。 - 前記現在時刻が、前記ローカル時刻と前記データチャンクの前記持続時間で定義された時間範囲内にあると決定するステップ、
前記データチャンクの前記持続時間を短縮させるステップ、そして
前記データチャンクの短縮させた持続時間に対応する持続期間に対する、前記データチャンクを消費するステップ
を備える、請求項1に記載の方法。 - 前記現在時刻が、前記ローカル時刻より後であると決定ステップ、そして
前記データチャンクを削除するステップ
を備える、請求項1に記載の方法。 - 以前に消費されたデータチャンクに続く第2のデータチャンクが、利用可能ではないと決定するステップ、そして
前記以前に消費されたデータチャンクの前記持続時間を延長するステップ、
を備える、請求項1に記載の方法。 - 前記データチャンクが、ビデオフレームまたはオーディオのセクションを備える、
請求項1に記載の方法。 - 前記グループクロックと前記ローカルクロックを同期させる当該サブステップが、
前記グループクロックに関連付けられている複数のグループ時刻と、前記複数のグループ時刻に対応する複数のローカル時刻を取得することと、
前記複数のグループ時刻および前記対応する複数のローカル時刻に基づいて、グループクロックとローカルクロックとの間の線形対応を計算することと
を備える、請求項1に記載の方法。 - 前記順序付けられたデータストリームの消費中に、前記グループクロックと前記ローカルクロックを同期させる当該サブステップを実行し、これにより前記ローカル時刻と前記グループ時刻間の前記マッピングを改善する、
請求項1に記載の方法。 - 順序付けられたデータストリーム内のデータチャンクが、複数のコンシューマによって消費されるべき時を示すグループ時刻を測定するグループクロックを定義するステップ、
前記グループクロックを、前記順序付けられたデータストリームの消費を要求する前記複数のコンシューマに関連付けられている複数のローカルクロックに同期させるステップであって、当該同期させるステップが、複数のグループ時刻を前記複数のコンシューマに送信することを備えるステップ、
前記データチャンクに関連付けられている前記グループ時刻および前記データチャンクを前記複数のコンシューマに送信するステップ、
前記複数のコンシューマの内のコンシューマから前記データチャンクの到着時刻を受信するステップ、
前記データチャンクの到着時刻と前記データチャンクに関連付けられている前記グループ時刻に基づいて、前記コンシューマが、かなりの割合のデータチャンクを遅れて既に受信しているか否かを決定するステップ、
前記コンシューマが、かなりの割合のデータチャンクを遅れて既に受信していると決定されると、前記データチャンクの品質または順序付けられたデータストリームのレイテンシを調整することにより、前記複数のコンシューマが、前記順序付けられたデータストリームを同期の基に消費することを保証するステップ、そして
ローカル時刻を前記ローカルクロックに関連付けられている現在時刻と比較して、前記データチャンクに関連付けられている前記ローカル時刻が、前記現在時刻より前か、前記現在時刻と実質的に同一か、または前記現在時刻の後であるかを示す比較を生成するサブステップ、および
前記比較に基づいて、前記データチャンクを削除する、前記データチャンクの持続時間を調整する、または前記データチャンクを消費することにより、前記複数のコンシューマが、前記データチャンクを同期の基に消費することを保証するサブステップ
により、前記複数のコンシューマ間で前記順序付けられたデータストリーム内のデータチャンクの消費を、同期させるステップ、
を備える方法。 - 前記複数のコンシューマの内の前記コンシューマに送信される前記データチャンクに関連付けられている最小品質閾値を指定する設定を取得するステップ、
前記データチャンクの品質を最小品質閾値まで下げることにより、前記コンシューマが、データチャンクのかなりの割合を遅く受信することが阻止されるか否かを決定するステップ、そして
前記データチャンクの品質を最小品質閾値まで下げることにより、前記コンシューマが、データチャンクのかなりの割合を遅く受信することが阻止されると決定されると、前記データチャンクの品質を最大でも前記最小品質閾値まで下げ、そして前記データチャンクを、前記かなりの割合のデータチャンクを遅れて既に受信している前記コンシューマに送信するステップ
を備える、請求項9に記載の方法。 - 前記コンシューマが、前記かなりの割合のデータチャンクを遅れて既に受信していると決定されると、前記かなりの割合のデータチャンクが遅れて受信されなくなるまで、前記コンシューマに送信される前記データチャンクの品質を低下させる、
請求項9に記載の方法。 - 前記複数のコンシューマの内の前記コンシューマに送信される前記データチャンクに関連付けられている最小品質閾値を指定する設定を取得するステップ、
前記データチャンクの品質を最小品質閾値まで下げると、前記コンシューマが前記データチャンクのかなりの割合を遅く受信することが阻止されるか否かを決定するステップ、そして
前記データチャンクの品質を最小品質閾値まで下げると、前記コンシューマが前記データチャンクのかなりの割合を遅く受信することが阻止されないと決定されると、前記データチャンクに関連付けられていてかつ前記複数のコンシューマに送信されるグループ時刻を、前記かなりの割合のデータチャンクを遅れて受信する前記コンシューマでの前記データチャンクの前記到着時刻に対応する後の時刻にまで増大させ、これにより複数のコンシューマ間の消費の同期を保証するステップ
を備える、請求項9に記載の方法。 - 前記複数のコンシューマが、前記順序付けられたデータストリームを消費している間に、前記複数のコンシューマに加わる新しいコンシューマからの要求を受信するステップ、そして
第2のデータチャンクおよび前記第2のデータチャンクに関連する第2のグループ時刻を新しいコンシューマに送信するステップであって、前記第2のグループ時刻が、前記複数のコンシューマに現在送信されつつある前記グループ時刻より遅い、ステップ
を備える、請求項9に記載の方法。 - データチャンクの順序付けられたシーケンスを備える順序付けられたデータストリームの複数のコンシューマと、
前記複数のコンシューマに関連付けられている複数のローカルクロックであって、前記複数のローカルクロック内のローカルクロックが、前記複数のコンシューマ内のコンシューマのローカル時刻を示す、ローカルクロックと、
前記複数のコンシューマが、前記順序付けられたデータストリーム内のデータチャンクを消費すべきグループ時刻を示すグループクロックと、
前記複数のコンシューマの間で前記順序付けられたデータストリーム内の前記データチャンクの消費を同期させる以下の命令:
前記順序付けられたデータストリームの前記消費を開始する前に、前記ローカル時刻と前記グループ時刻の間のマッピングを取得するために前記グループクロックと前記ローカルクロックを同期させる命令;
前記データチャンクおよび前記順序付けられたデータストリーム内の前記データチャンクに関連付けられているグループ時刻の指示を受信するための命令;
前記グループ時刻と、前記ローカル時刻と前記グループ時刻の間の前記マッピングに基づいて、前記グループ時刻に対応する、前記ローカルクロックに関連付けられている前記ローカル時刻を計算するための命令;
前記ローカル時刻を前記ローカルクロックに関連付けられている現在時刻と比較して、前記データチャンクに関連付けられている前記ローカル時刻が、前記現在時刻より前か、前記現在時刻と実質的に同じか、または前記現在時刻の後かを示す比較を生成する命令;
そして
前記比較に基づいて、前記複数のコンシューマが、前記データチャンクを削除する、前記データチャンクの持続時間を調整する、または前記データチャンクを消費することにより、前記データチャンクを同期の基に消費することを保証する命令
を実行する、前記複数のコンシューマ内の前記コンシューマに関連付けられている1つまたは複数のプロセッサと、
を備える、システム。 - 前記複数のコンシューマが、前記順序付けられたデータストリーム内の前記データチャンクを消費すべき前記グループ時刻を示す、前記グループクロックと同期する第2のグループクロック、および
前記第2のグループクロックに関連付けられている1つ以上のプロセッサであって、
前記グループクロックが動作していないと決定するための命令、および、
前記グループクロックが動作していないとの決定に基づいて、前記第2のグループクロックによって示される前記グループ時刻を前記複数のコンシューマに送信するための命令
を実行する、プロセッサ
を備える、請求項14に記載のシステム。 - 前記命令が、
複数の順序付けられたデータストリームを受信するための命令であって、前記複数の順序付けられたデータストリーム内の各順序付けられたデータストリームが、残りの複数の順序付けられたデータストリームと同期する、命令、
前記複数の順序付けられたデータストリーム内の複数のデータチャンクに関連付けられている複数のグループ時刻を取得するための命令、そして
同じ複数のグループ時刻を有する前記複数のデータチャンクを同期の基に消費するための命令、
を備える、
請求項14に記載のシステム。 - 前記データチャンクが、前記複数のコンシューマへ前記データチャンクを消費する時刻、フレーム指示および消費されるデータを示す、前記グループクロックに関連付けられている消費を備える、請求項14に記載のシステム。
- 複数の受信されたデータチャンクを格納するように動作可能なメモリ、
前記現在時刻が前記ローカル時刻より前であると決定するための命令、そして
前記データチャンクに関連付けられている前記ローカル時刻を示す位置内の複数の受信されたデータチャンクを格納するメモリにデータチャンクを配置するための命令
を備える、請求項14に記載のシステム。 - 前記命令が、
現在時刻が、前記ローカル時刻と前記データチャンクの前記持続時間によって定義された時間範囲内にあると決定するための命令、
前記データチャンクの持続時間を短縮するための命令、そして
前記短縮された持続時間に対応する持続期間に対して、前記データチャンクを消費するための命令
を備える、請求項14に記載のシステム。 - 前記命令が、
前記現在時刻が、前記ローカル時刻より後であると決定するための命令、そして
前記データチャンクを削除する命令
を備える、請求項14に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762489264P | 2017-04-24 | 2017-04-24 | |
US62/489,264 | 2017-04-24 | ||
PCT/US2018/026756 WO2018200184A1 (en) | 2017-04-24 | 2018-04-09 | Method and apparatus for synchronizing applications' consumption of remote data |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020520205A JP2020520205A (ja) | 2020-07-02 |
JP7149323B2 true JP7149323B2 (ja) | 2022-10-06 |
Family
ID=63854279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020507983A Active JP7149323B2 (ja) | 2017-04-24 | 2018-04-09 | リモートデータのアプリケーションによる消費を同期させるための方法と装置 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10601914B2 (ja) |
EP (1) | EP3616398A4 (ja) |
JP (1) | JP7149323B2 (ja) |
AU (2) | AU2018257929B2 (ja) |
CA (1) | CA3059564C (ja) |
WO (1) | WO2018200184A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7454418B2 (ja) | 2020-03-23 | 2024-03-22 | 鹿島建設株式会社 | 光ファイバ組込シート、光ファイバの設置方法、および貼付装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018213481A1 (en) | 2017-05-16 | 2018-11-22 | Sportscastr.Live Llc | Systems, apparatus, and methods for scalable low-latency viewing of integrated broadcast commentary and event video streams of live events, and synchronization of event information with viewed streams via multiple internet channels |
US10536741B1 (en) | 2018-10-19 | 2020-01-14 | Philo, Inc. | Synchronizing internet (“over the top”) video streams for simultaneous feedback |
US11695722B2 (en) | 2019-07-30 | 2023-07-04 | Sling Media L.L.C. | Devices, systems and processes for providing geo-located and content-to-comment synchronized user circles |
US11838450B2 (en) * | 2020-02-26 | 2023-12-05 | Dish Network L.L.C. | Devices, systems and processes for facilitating watch parties |
JP2023113466A (ja) * | 2022-02-03 | 2023-08-16 | 株式会社デンソー | 通信装置、通信方法、及び通信プログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005198243A (ja) | 2003-12-30 | 2005-07-21 | Nhn Corp | コンテンツ共同観覧サービス提供方法およびシステム |
JP2015216679A (ja) | 2010-08-13 | 2015-12-03 | ネットフリックス・インコーポレイテッドNetflix, Inc. | ストリーミングデジタルコンテンツの同期再生システム及び方法 |
US20160156950A1 (en) | 2013-07-09 | 2016-06-02 | Koninklijke Kpn N.V. | Synchronized data processing between receivers |
JP2016526349A (ja) | 2013-05-31 | 2016-09-01 | ソニック アイピー, インコーポレイテッド | 複数のオーバーザトップストリーミングクライアントを同期させること |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060018358A (ko) * | 2004-08-24 | 2006-03-02 | 삼성전자주식회사 | 통신 단말기에서 수신지역의 현지시각을 표시하기 위한 장치 및 방법 |
US20090044216A1 (en) | 2007-08-08 | 2009-02-12 | Mcnicoll Marcel | Internet-Based System for Interactive Synchronized Shared Viewing of Video Content |
EP2141689A1 (en) * | 2008-07-04 | 2010-01-06 | Koninklijke KPN N.V. | Generating a stream comprising interactive content |
US8761084B2 (en) | 2009-01-14 | 2014-06-24 | Synapsense Corporation | Apparatus and method for establishing data communication in a time-synchronized mesh wireless network during time synchronization failures |
CA2782775A1 (en) * | 2009-12-22 | 2011-07-21 | Delta Vidyo, Inc. | System and method for interactive synchronized video watching |
US8307089B1 (en) * | 2011-08-29 | 2012-11-06 | Ariel Inventions, Llc | System and method for storing broadcast content in a cloud-based computing environment |
TR201810487T4 (tr) | 2012-03-29 | 2018-08-27 | Koninklijke Kpn Nv | İşaretleyici tabanlı varış noktaları arası ortam senkronizasyonu. |
CN104269182B (zh) * | 2014-09-18 | 2017-05-31 | 歌尔股份有限公司 | 一种音频同步播放的方法、装置和*** |
-
2018
- 2018-04-09 WO PCT/US2018/026756 patent/WO2018200184A1/en unknown
- 2018-04-09 AU AU2018257929A patent/AU2018257929B2/en active Active
- 2018-04-09 CA CA3059564A patent/CA3059564C/en active Active
- 2018-04-09 JP JP2020507983A patent/JP7149323B2/ja active Active
- 2018-04-09 US US15/948,937 patent/US10601914B2/en active Active
- 2018-04-09 EP EP18790478.4A patent/EP3616398A4/en active Pending
-
2020
- 2020-02-12 US US16/789,300 patent/US10855763B2/en active Active
-
2022
- 2022-10-12 AU AU2022252735A patent/AU2022252735B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005198243A (ja) | 2003-12-30 | 2005-07-21 | Nhn Corp | コンテンツ共同観覧サービス提供方法およびシステム |
JP2015216679A (ja) | 2010-08-13 | 2015-12-03 | ネットフリックス・インコーポレイテッドNetflix, Inc. | ストリーミングデジタルコンテンツの同期再生システム及び方法 |
JP2016526349A (ja) | 2013-05-31 | 2016-09-01 | ソニック アイピー, インコーポレイテッド | 複数のオーバーザトップストリーミングクライアントを同期させること |
US20160156950A1 (en) | 2013-07-09 | 2016-06-02 | Koninklijke Kpn N.V. | Synchronized data processing between receivers |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7454418B2 (ja) | 2020-03-23 | 2024-03-22 | 鹿島建設株式会社 | 光ファイバ組込シート、光ファイバの設置方法、および貼付装置 |
Also Published As
Publication number | Publication date |
---|---|
AU2018257929A1 (en) | 2019-10-31 |
AU2022252735B2 (en) | 2024-03-21 |
CA3059564A1 (en) | 2018-11-01 |
AU2018257929B2 (en) | 2022-07-14 |
WO2018200184A1 (en) | 2018-11-01 |
EP3616398A4 (en) | 2020-12-23 |
AU2022252735A1 (en) | 2022-11-03 |
US20180309827A1 (en) | 2018-10-25 |
US10601914B2 (en) | 2020-03-24 |
EP3616398A1 (en) | 2020-03-04 |
US10855763B2 (en) | 2020-12-01 |
JP2020520205A (ja) | 2020-07-02 |
US20200186601A1 (en) | 2020-06-11 |
CA3059564C (en) | 2020-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7149323B2 (ja) | リモートデータのアプリケーションによる消費を同期させるための方法と装置 | |
JP6640359B2 (ja) | ワイヤレスオーディオ同期 | |
US7724780B2 (en) | Synchronization of one or more source RTP streams at multiple receiver destinations | |
US8233648B2 (en) | Ad-hoc adaptive wireless mobile sound system | |
JP2023166519A (ja) | ライブイベントの共有可能な視点をライブストリーミングすることによる、ローカル体験のシミュレーション | |
US10856018B2 (en) | Clock synchronization techniques including modification of sample rate conversion | |
US10887646B2 (en) | Live streaming with multiple remote commentators | |
US9621682B2 (en) | Reduced latency media distribution system | |
US9813475B1 (en) | Delivering a video stream | |
US20180343520A1 (en) | Packet based delivery of multi-channel audio over wireless links | |
KR101853441B1 (ko) | 클라이언트 장치 및 그 로컬 클럭 스큐 보정 방법 | |
JP2017050609A (ja) | 映像処理システム、映像処理装置、映像処理プログラム、及び映像処理方法 | |
EP2695389B1 (en) | Processing media streams for synchronised output at multiple end points | |
JP2020174378A (ja) | 異種ネットワーキング環境におけるメディアレンダリングの同期化 | |
WO2013189435A2 (zh) | 基于播放状态信息同步的处理方法、***及相关装置 | |
JP4364619B2 (ja) | 複数映像時刻同期表示端末、複数映像時刻同期表示方法、プログラム、および記録媒体 | |
JP5434390B2 (ja) | 電子会議システム、多地点接続装置、データ通信方法、プログラム、記録媒体及び通信装置 | |
JP2010183237A (ja) | コンテンツ同期再生システム、コンテンツ同期再生方法、再生端末、再生端末の制御方法、及び制御プログラム | |
TWI620425B (zh) | 資訊傳輸配速系統及其實施方法 | |
Din et al. | Synchronous shared experience: Architecture for synchronization support |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210326 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220328 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220510 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20220804 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220906 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220920 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220926 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7149323 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |