JP5635626B2 - メディア・ストリームの同期のための方法、システム及び装置 - Google Patents

メディア・ストリームの同期のための方法、システム及び装置 Download PDF

Info

Publication number
JP5635626B2
JP5635626B2 JP2012550442A JP2012550442A JP5635626B2 JP 5635626 B2 JP5635626 B2 JP 5635626B2 JP 2012550442 A JP2012550442 A JP 2012550442A JP 2012550442 A JP2012550442 A JP 2012550442A JP 5635626 B2 JP5635626 B2 JP 5635626B2
Authority
JP
Japan
Prior art keywords
media
synchronization
buffer
delay
network
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
Application number
JP2012550442A
Other languages
English (en)
Other versions
JP2013518495A (ja
Inventor
ヴァン・デーベンター,マタイス・オスカル
シュトッキング,ハンス・マールテン
ウォルラベン,ファビアン・アーサー
ニアムット,オマール・アジス
Original Assignee
コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ
ネダーランゼ・オルガニサティ・フォーア・トゥーゲパスト−ナトゥールヴェテンシャッペリーク・オンデルゾエク・ティーエヌオー
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 コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ, ネダーランゼ・オルガニサティ・フォーア・トゥーゲパスト−ナトゥールヴェテンシャッペリーク・オンデルゾエク・ティーエヌオー filed Critical コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ
Publication of JP2013518495A publication Critical patent/JP2013518495A/ja
Application granted granted Critical
Publication of JP5635626B2 publication Critical patent/JP5635626B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1094Inter-user-equipment sessions transfer or sharing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

本発明はメディア・ストリームの同期に関し、特に、必ずしも必要ではないが、第1及び第2のメディア・ストリームを同期させるための方法及びシステム、このようなシステムにおいて使用するバッファ、同期サーバ及び端末、並びにこのような方法を使用するコンピュータ・プログラム製品に関するものである。
従来技術
ボイス・オーバーIP(VoIP)及びインターネット・プロトコル・テレビジョン(IPTV)のような新規なマルチメディア技術は、全ての範囲の新規なマルチメディア・サービスを開拓する。これらサービスの1つのタイプでは、ユーザ・グループが、同一のテレビ・チャンネルを別個に閲覧し、テキスト、オーディオ及び/又はビデオを用いて相互に通信することを可能にする。これらサービス別のタイプでは、ブロードキャストされたテレビ・クイズといった双方向テレビ経験を提供する。ここでは、自宅にいる視聴者がブロードキャストされた質問に対する答えを入力することができ、その番組に参加することができる。この種のサービスでは、端末の出力信号が同時にグループ内の全ユーザに伝送されることが必要である。換言すれば、グループ内のディスプレイ出力又は再生デバイス、例えば、異なる宛先に対応する、テレビ、PDA、モバイル・デバイス、PC又はこれらの組み合わせは、同期して然るべきである。
IPTVシステムにおいては、テレビ・チャンネル信号は、通例、運用業者の高帯域幅IPネットワークを通じた1又はそれ以上のパケット化されたストリームとして、ヘッド・エンド、エッジ・ルータ及びアクセス・ノードといったネットワーク・ノードを介して、このようなサービス加入者端末に伝送される。ストリーム伝送の間、パケットは、例えば伝送遅延、ネットワーク・ルートの相違、及びコーディング並びにデコーディングの相違といった、未知のネットワーク遅延にさらされる傾向にある。結果として、第1端末(第1の宛先)で受信されるオーディオ及びビデオ・ストリームのパケットと別の第2端末(第2の宛先)で受信されるそれらパケットとの時間的な関係が阻害される。
端末に対してIPTVコンテンツをストリームするために、通常は、リアル・タイム・トランスポート・プロトコル(RTP;Real-time Transport Protocol)が用いられる。RTPは、シーケンス・ナンバリング及びタイム・スタンピングを提供する。RTPを用いて、同一のエンド端末で終端する付随したストリーム間(内部ストリーム同期)、又は異なる端末で終端する付随したストリーム間(グループ同期又は宛先間同期)における1つのストリーム内の時間的関係(ストリーム間同期)はリストアすることができる。本発明は、また、例えばUDPにおけるMPEGトランスポート・ストリームを用いて、又は、トランスポート・プロトコルとしてHTTPを用い、他のメディア・トランスポート・プロトコルに適用することもできる。F.Boronatらによる比較研究の論文"Multimedia group and inter-stream synchronization techniques"(マルチメディア・グループ及びストリーム間の同期技術)(ElsevierInformationSystems34(2009年)pp.108―131)には、公知の宛先間同期技術についての包括的概要が提供される。
参照される宛先間同期技術は、3つの主要なカテゴリに再分割することができる。「同期マエスト方式」(SMS;Synchronization Maestro Scheme)では、中心同期マスタが、グループ内の全ての端末からタイミング情報を収集し、制御パケットを端末に配布することにより出力タイミングを調整する。「マスタ−スレーブ受信機方式」(MSRS;Master-Slave Receiver Scheme)では、受信機(端末)は、マスタ受信機及びスレーブ受信機に分類される。マスタ受信機は、その出力タイミングをスレーブ受信機にマルチキャストし、それに応じてパケットについてそれらの出力タイミングを調整する。「分散制御方式」(DCS;Distributed Control Scheme)では、各端末(受信機)は、グループ内の他の全ての端末に対して全タイミング情報をマルチキャストし、端末は、適切な出力タイミングを算出するように構成される。これらの方式は、同期がメディア・ストリームの供給元又は受信先のいずれかで行われることを共通して有する。
国際公開WO2009/053072は、更なるネットワーク制御宛先間同期方式について記載しており、ネットワーク・ノード、例えばメディア経路内の境界ネットワーク・ノードは、それに接続するユーザ機器の宛先間同期を提供する。この方法は、特に、大規模な配備及びサービスに適しており、ストリームの宛先を運用業者ネットワークに接続するアクセス・ラインの違いから生じるストリームの伝播時間における、例えば標準的なジッタ・オーダーのわずかな差を許容する。同期化は、指定されたネットワーク・ノード内の同期エンティティ(例えば同期クライアント)を実装することによって実現される。そこでは、その同期エンティティは、パケットの到達時間に関する情報を測定し、同期ステータス情報においてこれら測定された時間を同期サーバにレポートし、同期設定指示を同期サーバから受信してその可変遅延バッファに指示するように構成される。
ネットワーク内に存在する同期化方式に関連した1つの課題は、同期ネットワーク・ノードと受信機間のストリームがコンテンツ準備及び/又はコンテンツ再生成の目的(例えば、高解像度(HD)から標準解像度(SD)、MPEG―3からMPEG―2へ、及び/又は高いビット・レートから低いビット・レートへの変換のため)のトランスコーダによって修正されるという状況を取り扱うことへの困難性に対処することができないか、又は、少なくともその困難性を有するということである。これらの修正は、同期ネットワーク・ノードで補償され得ない実質的な遅延を導くこともある。更に、異なるコーディング遅延及びジッタ・バッファ設定の結果となるUEの違いによって、更なる遅延の原因となることもあり、この遅延は、遅延の増加や、特定のサービスを利用するときにもはや耐えることのできないUE間の遅延差の原因となることもある。
別の課題は、ネットワーク内に存在する同期化方式がネットワーク・ノードを必要とするという事実に関し、メディア・ユニット到達時間を測定するように構成される。このような機能性は、ディープ・パケット・インスペクション(deep packet inspection)を必要とする。ここでは、異なるメディア・パケットのヘッダ情報、例えばRTPヘッダ又はMPEG TSヘッダを、パケット到達時間についてレポート可能にするようにフィルタリングされなければならない。特定の状況下で同期ネットワーク・ノードが多くの異なるメディア・トランスポート・プロトコル(専用のトランスポート・プロトコルを含む)を処理することができるのが好ましいことを考えれば、主に機能を導出するのに構成される、ネットワーク・ノードのこのような機能性の実装は複雑であり、また高価なものになり得る。
要するに、すべての公知の宛先間同期方式のそれぞれは、限定されるものではないが、バッファリング・リソース(例えば、各エンド端末が大きい追加バッファを必要とするとき)の非効率的な使用、チャネル変更の間の遅延のザッピング(再同期化)、不正確な遅延測定といったそれら自身の不利な点を有する・
したがって、この技術分野においては、1又はそれ以上の端末のメディア再生について効果的なネットワーク制御可能同期を提供することができる、改良された方法、システム及びデバイスの必要がある。
発明の目的は、公知のサービス提供システムの欠点の少なくとも1つを減らすか又は除去することである。
第1の態様において、本発明は第1のメディア・ストリーム及び第2のメディア・ストリームを同期する方法に関し、第1メディア・ストリーム及び第2メディア・ストリームがネットワーク内の少なくとも1つのメディア供給元によって第1のメディア経路及び第2のメディア経路を通じて1又はそれ以上の端末に伝送される。本方法は、第1メディア経路及び第2メディア経路における第1の場所に位置する測定モジュールを用いて、第1メディア・ストリーム及び第2メディア・ストリーム内のメディア・パケットの到達時間に関連付けられるタイミング情報を測定するステップ、ネットワークにおいて、当該タイミング情報に基づいて少なくとも1つのバッファについてのバッファ指示を生成するステップであって、バッファが第1メディア経路及び第2メディア経路のうち少なくとも1つにおける第2の場所に位置するステップ、1又はそれ以上の端末におけるメディア・パケットの到達時間が実質的に同期されるように、メディア経路を通じて1又はそれ以上の端末に伝送される1又はそれ以上のメディア・パケットを遅延させるステップを含む。
一実施形態においては、第1メディア経路をメディア供給元と第1の端末との間に設け、第2メディア経路をメディア供給元と第2の端末との間に設けることができる。このような構成は、つまり、宛先間同期について方式(scheme)を提供する。
他の実施形態においては、測定モジュールが、1又はそれ以上の端末に位置するか、1若しくはそれ以上の端末をネットワークに接続する1若しくはそれ以上のアクセス・ラインに沿った位置に配置することができ、並びに/又はネットワーク内、好ましくは境界ネットワーク・ノード及び/若しくはアクセス・ネットワーク・ノードに位置することができる。
更なる実施形態において、バッファは、ホーム・ゲートウェイに、又はホーム・ロケーションにおける互換性がある機能において位置することができる。ホーム・ゲートウェイの後方に存在する端末が個々に追加のバッファリング能力を有する必要はないものの、それぞれが時間情報を測定するための測定モジュールをなおも備えることができる結果、個々の遅延をなおも決定することができるということが利点である。
このことは、例えば(トランスコーディング、ミクシング、スケーラブル・ビデオコーデック関連動作等といった)ホーム・ゲートウェイでのストリーム適合により、異なる遅延を経験している、ホーム・ゲートウェイの後方にある異なる端末が存在するかに特に関係する。
他の実施形態においては、測定モジュールは、ホーム・ゲートウェイに位置することができ、及びバッファはネットワーク内の更なるノードに位置することができる。このことは、バッファの後方の端末がもはや測定モジュールと共に構成する必要がないという利点がある。また、このホーム・ゲートウェイは追加のバッファリング容量を有する必要はない。何故なら、これは、ネットワークの更なるノードにより解決されるからである。最後に、ネットワーク・アドレスの変換問題のために、エンド端末は、元のマルチキャスト・ストリームを直接受信できなくてもよく、それ故、最も理想的な測定位置を提供することができない。
更なる別の実施形態では、測定モジュールは、ホーム・ゲートウェイに位置するが、バッファは端末に位置することができる。このことは、ホーム・ゲートウェイ及び御端末の適合性を必要とするだけであるが、ネットワークの更なるノードの適合性を必要としないために、有利である。
一実施形態において、ホーム・ゲートウェイは、本発明によるネットワーク・ノードとして振る舞うか、又は本発明による端末として振る舞う。
更なる実施形態において、バッファ指示は、同期サーバ、好ましくはメディア同期アプリケーション・サーバによって生成することができ、そして、測定モジュール及びバッファは、それぞれ同期測定クライアント及び同期バッファリング・クライアントとして構成することができる。本方法は、同期測定クライアントからタイミング情報を受信するステップ、及びバッファ指示を同期バッファリング・クライアントに伝送するステップを更に含むことができる。
更なる別の実施形態において、バッファ指示は、1若しくはそれ以上の同期設定指示レポート、好ましくはRTCP同期設定指示レポートにより同期バッファリング・クライアントに送信することができ、及び/又はタイミング情報が1若しくはそれ以上の同期ステータス情報レポートにより同期サーバに送信することができる。
一実施形態において、同期ステータス情報レポートは、同期バッファリング・クライアントを介して同期サーバに送信することができる。
変形形態において、同期バッファリング・クライアントは、1つの端末から同期サーバに送信される同期ステータス情報レポートを修正するように構成することができ、及び/又は同期バッファリング・クライアントは、同期設定指示レポートを端末に転送するように構成することができる。
他の変形形態において、第1メディア経路は第1メディア供給元と1つの端末との間に設けることができ、第2メディア経路は第1メディア供給元又は更なる第2のメディア供給元とその端末との間に設けることができる。
更なる別の変形形態において、第1測定モジュールがネットワーク・ノード、好ましくは境界ネットワーク・ノード及び/又はアクセス・ネットワーク・ノードに位置することができ、バッファが1又はそれ以上の端末に位置するか、1又はそれ以上の端末をネットワークに接続する1又はそれ以上のアクセス・ラインに沿った位置に配置することができる。
更なる変形形態において、1又はそれ以上の端末のうち少なくとも1つが、メディア・ストリームにおけるメディア・パケットの到達時間の変動を測定し、この到達時間に基づいて変動がバッファリング・ポイントから生じた遅延に関係するかについて判定するように構成することができる。
更なる別の変形形態において、バッファが可変遅延バッファを含み、当該可変遅延バッファがネットワークから受信した遅延指示に基づいてメディア・ストリームを遅延させるように構成することができる。
一実施形態において、この遅延は0.5秒と10秒との間、好ましくは1秒と5秒との間で選択されることができる。
別の実施形態において、このバッファ・ポイントが当該バッファに接続される2又はそれ以上の端末の間で共有することができる。
別の態様において、本発明は、第1のメディア・ストリーム及び第2のメディア・ストリームを同期するシステムに関することができ、当該システムは、第1メディア・ストリーム及び第2メディア・ストリームを第1のメディア経路及び第2のメディア経路を通じて1又はそれ以上の端末に伝送する少なくとも1つのメディア供給元、少なくとも1つの測定モジュールが受信する第1メディア・ストリーム及び第2メディア・ストリーム内のメディア・パケットに関連付けられるタイミング情報を測定する当該少なくとも1つの測定モジュールであって、第1メディア経路及び第2メディア経路における第1の場所に位置する測定モジュール、メディア経路を通じて1又はそれ以上の端末に伝送されるメディア・パケットを遅延指示に基づいて遅延させるように構成される少なくとも1つのバッファであって、当該バッファが第1メディア経路又は第2メディア経路のうち少なくとも1つにおける第2の場所に位置するバッファ、1又はそれ以上の端末におけるメディア・パケットの到達時間が実質的に同期されるように、タイミング情報に基づいて少なくとも1つのバッファについてのバッファ指示を生成する同期サーバを備える。
更なる態様において、本発明は、バッファ・モジュールに関することができ、好ましくは同期バッファリング・クライアントであり、メディア経路を通じて端末に伝送されるメディアを、バッファ指示に基づいて遅延させるように構成され、当該バッファ・モジュールが、可変遅延バッファ、バッファ指示を受信する受信機であって、当該バッファ指示が可変遅延にメディア・ストリームを遅延させる情報を所定の遅延期間にわたり提供する受信機、1又はそれ以上の遅延したメディア・ストリームを1又はそれ以上の端末に伝送する送信機、任意に、ポインタ情報を含むバッファ・リストであって、当該ポインタ情報がバッファ・モジュールに2又はそれ以上の端末間で可変遅延バッファにおけるメディア・パケットを共有させる、バッファ・リストを備える。
さらに他の態様において、本発明は同期サーバに関することができ、1又はそれ以上のメディア・ストリーム内のメディア・パケットの到達時間に関連付けられたタイミング情報を受信する受信機、バッファ指示を生成するように構成されるプロセッサであって、当該バッファ指示がタイミング情報に基づいて算出される遅延情報を含むプロセッサ、バッファ指示を少なくとも1つのバッファに伝送するための送信機を備える。
別の態様において、本発明はメディア再生のための端末に関することができ、端末が受信するメディア・パケットの到達時間に関連付けられたタイミング情報を測定するための測定モジュール、タイミング情報をネットワーク内の同期サーバに伝送するための送信機、任意に、メディア・ストリーム内のメディア・パケットの到達時間の変動を測定し、当該測定に基づいて、変動がバッファリング・ポイントから生じた遅延に関係するかについて判定するように構成される測定ユニットを備える。
本発明は、また、ソフトウェア・コード部を含むコンピュータ・プログラム製品に関することができ、コンピュータ上でランするときに、上述の方法のステップのいずれかにより本方法を実行するように構成される。
本発明は、更に、添付の図面を参照して説明される。図面は本発明による実施形態を模式的に示している。尚、本発明がこれら特定の実施形態にいかなる形でも限定されないことが理解されよう。
図1は、従来型のコンテンツ配信システムの一部を示す概略図を示す。 図2は、本発明の一実施形態によるコンテンツ配信システムの少なくとも一部の概略図を示す。 図3は、本発明の更なる別の実施形態によるコンテンツ配信システムの少なくとも一部の概略図を示す。 図4は、本発明の一実施形態によるシグナリング・フローを示す。 図5は、本発明の他の実施形態によるコンテンツ配信システムの少なくとも一部の概略図を示す。 図6は、本発明の他の実施形態によるシグナリング・フロー図を示す。 図7は、本発明の一実施形態による同期情報レポートを示す。 図8は、本発明の一実施形態によるバッファリング同期クライアントの概略図を示す。 図9は、本発明の一実施形態による同期方式を用いたチャネル変更の処理についての概略図を示す。 図10は、本発明の更なる他の実施形態によるコンテンツ配信システムの少なくとも一部の概略図を示す。 図11は、更なる変形形態によるコンテンツ配信システムの少なくとも一部の概略図を示す。 図12は、更なる他の変形形態によるコンテンツ配信システムの少なくとも一部概略図を示す。
図1は、従来型のメディア配信システム100について示しており、当該システムは、エッジ(アクセス)ノード112(例えば、xDSLシステムのDSLAM又はDOCSIS/ケーブルシステムのCMTS)を介してメディア配信ネットワーク114に接続されるUE102―110を備えている。メディア供給元111は、少なくとも一つのメディア・ストリーム113をこのエッジ・ノードに伝送する。エッジ・ノードと端末と間のルートが単純アクセス構成における単一のネットワークセグメント、即ちアクセス・リンクを備えるに過ぎないので、ホーム・ネットワーク内のユーザ位置においてエッジ・ノードと端末の間にそれほど多くの遅延は存在しない。したがって、エッジ・ノードと異なる端末との間に遅延が生じていたときは、その遅延は、程度の差はあるものの同一であり、その結果、エッジ・ノードに接続される異なるUEを仕様したメディア再生は、程度の差はあるものの同期されている。
しかしながら、異なるマルチメディア機器の使用は、その結果、エッジ・ノードとこれに接続される異なるUEとの間の異なる遅延が存在することがあるという状況になる場合がある。図1はエッジ・ノード及び3つの居住環境(住宅)116―120を示す。ここでは、そのエッジ・ノードは、メディア・ストリーム122、例えばMPEG4メディア・ストリームを異なるUEに配信する。UE3のユーザは、配信されたメディア・ストリームを直接閲覧するために、UE102を使用することができ、それ故、更なる遅延は居住環境116には存在しない。UE1のユーザは配信されたメディア・ストリームを閲覧するためにそのデバイスを使用せず、第2のUE2、例えばMPEG―2メディア・プレーヤをUE1に接続している。UE1はUE2にメディア・ストリームを配信する。トランスポート・ストリームを転送する前に、UE1は、最初にMPEG―4メディア・ストリームをMPEG―2メディア・ストリーム124にコード変換する。同様に、UE4のユーザは、メディア・ストリームを閲覧するために、モバイル・デバイス110の形態の更なるUE5を有する。モバイル・デバイスは、ワイヤレスでUE5に接続され、UE5は、MPEG―4メディア・ストリームをモバイル・デバイスでの使用に適したメディア・フォーマットにコード変換する。したがって、アクセス・リンクのトランスコーダの使用は、以下を含む重要な遅延を導くこともある。即ち、ジッタ・バッファリングに関する、追加のパケット化及びデパケット化の処理に対する遅延、並びに追加のトランスポート及びトランスコード(コード変換)の遅延である。これらの追加の遅延(特に後者)は重要なものであり、これにより、様々なUEの再生について許容できない差を導出する。
これらの差は、公知のネットワーク・ベースの同期スキームを用いて補償することができない。ここでは、アクセス・ノードにおいて実装された同期クライアント(SC)126が同期サーバ101と同期情報を交換する。このような方式では、SC126は、メディア・パケット到達時間を測定し、同期ステータス情報を生成し、及びメディア・ストリームの再生を遅延させるための機能を有する。
同期サーバは、SC126から、及び他のアクセス/エッジ・ノードに含まれる他のSCから(図1には図示せず)、同期ステータス情報を収集し、遅延情報を算出して、同期設定情報134を送信することができる。同期設定情報134は、宛先間同期方式に関わる2又はそれ以上のアクセス/エッジ・ノードに接続されるUEにおけるメディア再生が実質的に同期されるように、可変遅延バッファを設定するための情報を使用する。大規模な配備及びネットワーク制御に適しているにもかかわらず、このような同期方式は、アクセス・ラインで生成する遅延を補償することができない。何故ならば、異なるエッジ・ノードに到達するメディア・ストリームの到達時間の差だけがこの方式で考慮されるからである。これらノードを超えて蓄積する遅延のいかなる相違も、メディア・ストリームがそれぞれのUEへの異なる経路上で継続するときには、もはや考慮されない。アクセス・ラインという用語は、SC、例えばエッジ・ノードを含むネットワーク・ノード及びUEの間の全ての接続及び要素を広義に意味する用語として用いる。これは、ホーム・ネットワーク部分、又はUEに到達する前に他のネットワークにリダイレクトされているメディア・ストリームの場合には他のネットワーク部分もまた含むこともできる。
したがって、この技術において、宛先間方式の改良を含む同期方式の改良の必要がある。この宛先間同期は、改良された同期パフォーマンスを提供して、そして、大規模アプリケーションでも計測可能な同期方式を提供する。
図2は、本発明の一実施形態によるコンテンツ配信システム200について少なくとも一部分を示している。本システムは、コンテンツを、1以上のネットワーク・ノード204,206を介してユーザ機器(UE)208―212に配信するための少なくとも一つのメディア供給元202を含む。UEは、アクセス・ノード、即ちネットワークのエッジにあるネットワーク・ノードに、アクセス・ライン214―218を介して接続される。通例、ネットワークはパケット交換ネットワークに関することができる。ここでは、コンテンツは、1以上のメディア・ストリーム220,222、例えばビデオ・オン・デマンド・ストリーム、又は(ライブでの)マルチキャスト・テレビジョン放送において、UEに送信される。ネットワーク・ノードは、アクセス・ノード、(例えばデジタル加入者ライン・アクセス・マルチプレクサ(DSLAM)、ケーブル・モデム終端システム(CMTS))光アクセス・ノード又はエッジ・ルータ若しくはヘッド・エンドに関することができる。更に、UE(端末とも呼ばれる)は、メディア・ストリームを処理する能力を有するいかなるデバイス、例えば、メディア再生デバイス、又は1つに接続されたデバイス(例えばセット・トップ・ボックス)に関することができる。このようなデバイスは、携帯電話、テレビジョン受像機、IP電話、ゲーム・コンソール、スマート・メータ・デバイス等を含むことができる。再生という用語は、ストリーム内のコンテンツ(の部分)をユーザ又は更なるデバイスに表示又は呈示するものとして理解することができる。
UEとエッジ・ノードのアクセス・ラインは、中間要素(図示せず)、例えば1又はそれ以上のトランスコーダ及び/又はミキサを、図1にて図示したのと類似の方法で含むことができる。図1を参照して説明するように、これら中間要素は、UEに接続された各アクセス・ラインにおける異なる遅延を生じさせることになり、その結果、同期した又は少なくとも実質的に同期したUEの再生は可能でない。したがって、このような望ましくない遅延の補償を可能にするために、UEは測定ユニット、例えば同期測定クライアント(MSC)246―250を備えることができ、メディア・パケット到達時間情報を判断するように構成される。このメディア・パケット到達時間情報は、MSCによって使用され、同期ステータス情報224―228を生成する。同期ステータス情報224―228は、ネットワーク内の同期サーバ230(以下、メディア同期アプリケーション・サーバ(MSAS)と称する。)に送信される。
したがって、このMSCによって、メディア・パケットの到達時間情報を測定するための測定ポイントとしてUEにサービス提供させ、同期ステータス情報のこの情報をネットワークにレポートさせる。MSASは、ネットワーク内のバッファリング・ポイントについて遅延情報を算出するために、同期グループに所属している全てのUEの同期ステータス情報を使用する。このバッファリング・ポイントは、同期を必要とするメディア・ストリームのメディア経路に位置する。MSASは、UEのメディア再生を実質的に同期するために、遅延情報をバッファリング・ポイントに提供することができる。
一実施形態において、このようなバッファリング・ポイントは、ネットワーク・ノード、例えばアクセス・ノード等のバッファリング同期クライアント(BSC)として実装することができる。同期化を達成するために、このBSCは可変遅延バッファ232、234に関連付けられる。可変遅延バッファは、MSASによってネットワーク・ノードに送信される同期設定情報236、238によって制御することができる。BSCに関連付けられるこのバッファは、以降においてBSCバッファと称される。BSCバッファは、例えば概して0.5秒と5秒間の範囲の比較的大きい遅延を処理するように構成される。更には、BSCバッファは、それがMSASからの同期設定情報を通じて遅延指示を受信し、これら指示に従ってその遅延設定を適合するという意味では、制御されるネットワークである。
UEは、更に、通例は適応ジッタ・バッファの形態のジッタ・バッファ240、242、244を含むことができ、このジッタ・バッファは、通例20ミリ秒と50ミリ秒と間の範囲、最大100ミリ秒と200ミリ秒との間で、小さい遅延変動を補償することができる。通例は、補償される最大ジッタは、メディア・ストリームの再生を開始する前に導かれるバッファリング遅延(サイズ)に等しい。このような適応ジッタ・バッファは、メディア・ストリームの変動(fluctuation)(即ち、メディア・パケット到達時間の統計的な差)を測定するように構成され、バッファ長(サイズ)を動的に適応させることでこれら変動を補償する。このことは、BSCバッファに関連付けられたバッファと対照的であり、BSCバッファは、MSASからその遅延設定を受信する。
公知のネットワーク制御同期方式とは対照的に、本発明による同期方式は別個の測定ポイント(例えばMSC)、及び別個のバッファリング・ポイント(例えばBSC)を使用する。ここでは、測定ポイント及びバッファリング・ポイントはメディアの宛先(例えばUE)とメディア供給元との間の媒体経路上の異なる位置に配置される。MSCは、アクセス・ラインのどこか、又はUEにさえ位置することができるため、同期方式はアクセス・ラインの遅延の補償を考慮に入れる。一実施形態において、MSCはUEに位置することができ、BSCはアクセス・ノードに位置することができる。更なる実施形態において、MSCは、ローカル・ネットワーク又はホーム・ネットワークに関連付けられるノードに位置することができる。別の更なる実施形態において、MSCはネットワーク内、例えばアクセス・ノードに位置することができ、BSCはアクセス・ラインに、又はUEにさえ位置することができる。
したがって、本発明は、同期化を提供するための機能が別々の測定ポイント及びバッファリング・ポイントによって提供されるという洞察に依存するものである。したがって、公知の宛先間同期方式とは対照的であり、公知の宛先間同期方式では同期化のために必要となる機能(即ち、測定及びバッファリング)は、単一の論理エンティティにおいて共に実装されてきた。これらの機能性を分離することは、満たされるべき多くの技術的課題を露呈する。上記実施形態の利点及びこれらに関連する利点について、以下に図2―12を参照することよって、更に詳細に説明する。詳細を説明するに際し、これらを解決する解決策に対する明白な洞察と同様に、技術的な課題についても明記する。
同期化は、メディア・ストリーム、例えばRTP又はMPEGパケット等の基本メディア・ユニット内の、又はこれに関連付けられた時間情報に基づく。UEのMSCに到達する各パケットは、RTPタイムスタンプ及びNTPタイムスタンプに関連付けることができる。RTPタイムスタンプは、RTPデータ・パケットにおける第1オクテットについてサンプリングする瞬間を反映する。このタイムスタンプの初期値は、ランダム値である。このRTPタイムスタンプは、サンプリング期間を計数するので、第2のRTPパケットが第1のRTPパケットの後に160のサンプルを開始する場合には、第2のRTPタイムスタンプは第1のものより160高くなる。
これに対し、NTPタイムスタンプは、絶対(absolute)「ウォール・クロック」時間である。NTPは、IETF RFC 1305において規定されるように、1900年1月1日から開示される64ビット・カウンタである。このNTPにより用いられる64ビットのタイムスタンプは、32ビットの秒(seconds)部分及び32ビットの小数秒(fractional second)部品を備える。それは、RTPタイムスタンプによって特定される第1オクテットがUEで特定の時点を通過する絶対時間を表す。この特定時点は、例えば、UEの再生時点とすることができ、ここでは、NTPタイムスタンプは、指定されたオクテットがユーザに再生される時を示す。あるいは、それは、MSCが指定されたオクテットを最初に受信した、進入(入力)の時点としてもよい。
本発明により測定及びバッファリング・ポジションを分離するときに応じられる1つの技術的な課題は、同期動作を有するネットワーク・ジッタの存在及び潜在的干渉に関する。ジッタのためにランダムなオフセットがRTPパケット間に存在するにもかかわらず、UEは呈示(presentation)の正確な時間を決定し、RTPタイムスタンプは、特定のビデオ・フレーム又は音声サンプルが、メディア・ストリームの他の部分と比較して、どの時間に再生されなければならないかを決定する。したがって、ネットワーク、例えばアクセス・ノードのBSCがバッファリング・パケットによってメディア・ストリームを遅延させ、又はメディア・パケットを放棄することによってメディア・ストリームの速度を上げる(通例は一度これらのパッケをバッファリングすることだけが可能である)のであれば、UEが通常の方法でRTPタイムスタンプを使用する場合に課題が生じる。例えば、RTPタイムスタンプがパケットの再生をUEによって要求されている間に、ネットワーク内のBSCがパケットを遅延させる場合に、UEは課題に直面することになる。同様に、BSCがパケットを放棄して、その結果、RTPタイムスタンプの「ギャップ」になる。その一方で、UEは、あたかもギャップが存在しないかのように再生を続けなければならない。
そのうえ、例えばBSCを用いてネットワーク内のどこかにあるメディア・ストリームを遅延させることは、UEでのメディア・ストリームの再生は、その同一の遅延によって実行されないということを自動的に意味するものではない。例えば、BSCによって導かれる遅延が、伝送されたメディアの周波数に対して比較的小さい場合(例えば100ms)、UEは、あたかも遅延がメディア・ストリームに全く導かれていないかのように、呈示を継続することが可能であろう。導かれた遅延が比較的小さい場合、UEはこれをジッタとして認めることができて、遅延に補償するためにそのジッタ・バッファを使用することができる。より大きな遅延がBSCによって導かれる場合(例えば1秒以上)、UEはその実装に従って反応することができる。例えば、UEは、それをメディア・ストリーム内の「ギャップ」と判断することができる。新しいパケットが到達しないために、UEでの(ジッタ)バッファは、メディア・ストリームの呈示により空にされ、再生を継続することができない。次いで、遅延メディア・ストリームに関連づけられた新しいパケットがUEに到達する場合、UEは、再びジッタ・バッファリングを開始し、メディア・ストリームの再生を継続することができる。一旦ジッタ・バッファがその時点を充たすと、再生を継続することができる。他のUEは、再びバッファリングを開始することができない。例えば、メディア・ストリームのギャップに応答して、UEは、メディア・ストリームがもはや利用できないと判断し、再生を停止することができる。
この課題を解決するために、一実施形態において、UEは、ネットワーク遅延メディア・ストリームを受信するように適合することができる。このことは、小さい遅延について、UEがジッタと導かれた(小さい)遅延との間の差分を認識するようにプログラムすることができることを意味する。ジッタは伝送周波数の前後の(統計的な)変動を表すので、後にいくつかのパケットが予想されて到達する場合であっても、平均して、メディア・パケット到達時間は一定のままである。換言すれば、ジッタ・バッファのメディア・パケット量は、ある安定性のある平均時点の前後で変動することができる。これと対照的に、故意に導かれた遅延は、決定的な特徴を有し、全ての更なるメディア・パケットを後に到着させる。多くの(遅延した)メディア・パケットを測定することによって、統計上の遅延とネットワーク・バッファにより導かれる遅延との差分を決定することができる。UEがネットワーク・バッファ遅延の発生を判断する場合、そのUEはこれらパケットを異なって扱うことができ、メディア呈示において同一の遅延を導くことができる。
特定のUEは、いわゆる適応ジッタ・バッファを含むことができる。適応ジッタ・バッファは、メディア・パケットの到達時の変更に適応することができる。例えば、多くのパケットが遅れて到達する場合、適応ジッタ・バッファはこの挙動を補償するためにサイズを増加することができる。このことは、UEを、遅延しているメディア・ストリームについて呈示を遅延させることが可能なように調整するために、特定の種類の適応ジッタ・バッファを含むUEとみなすことができる。
より遅延を長くするために、UEは、適当な方法で反応するようにプログラムすることができる。このことは、このような長い遅延が検出される場合にUEが再生を停止すべきではないことを意味する。その代わりに、それは、単により長く待たなければならない。このような遅延は、より長い時間期間、例えば1秒以上の間、どのメディア・パケットも到達しないときに検出することができる。このような「ギャップ」の後に新しいメディア・パケットが到着する場合、それらは以前のパケットとともに継続的に再生されることになる。更に、長い遅延が検出される場合には、この適応ジッタ・バッファは、バッファ設定を再設定することを要求することができる。長い遅延の後、適応ジッタ・バッファ設定は、あまりに高く設定することができる。したがって、この長い遅延の後に、このジッタ・バッファは遅延を導くことができる。この遅延は要求されたのより長い。
一旦遅延が導かれると、例えばメディア・パケットをスキップすることによって、BSCはまた、再度遅延を減少させることもできる。このような処理は、また課題を導く場合もある。パケットがBSCによって欠落される場合、UEはこれがパケット遅延又はパケット・ロスであると知覚することができる。UEは、新しい遅延していないパケットで再生を継続する代わりに、パケットがまだ到着するかどうか見るために待つことができる。したがって、それらの実装に応じて、UEは、失ったパケットとは異なって応答することができる。
このことは、UEをプログラミングすることにより解決することができ、(平均して及び大きな遅延を検出するのと同一の方法で)予想よりも早く到達した新しいメディア・パケットに追従される失ったメディア・パケットを、UEによって、遅延が削減され、及びメディア再生が新たに到達した遅延されていないパケットと共に直接継続するように解釈することができる(失ったパケットをパケット・ロスとして解釈するのではない)。
BSCバッファによって導かれる遅延を取り扱うことの他の解決策は、BSCメディアを認識させ、又は少なくともRTPを認識されることである。BSCは、UEにメディア・パケットを転送する前に入来するメディア・ストリームのRTPタイムスタンプを変更するように構成することができる。しかしながら、全てのRTPパケットが、必ずしも1つのメディア・パケットを含むわけではない。オーディオについて、RTPパケットは、多数オーディオ・サンプルを含むことができる。これとは対照的に、ビデオについて、(同一のRTPタイムスタンプを有する)多数RTPパケットは、1つのビデオ・フレームを含むことができる。このことは、RTPパケットのサイズ及びメディア・パケット、即ちオーディオ又はビデオのサイズに依存する。したがって、RTPパケットにおいてRTPタイムスタンプを変更するために、BSCは、メディアについて、RTPパケットが搬送していると認識して、それに応じてタイムスタンプを変更するように構成される。
タイムスタンプの変更は、比較的容易に実現することができる。全てのパケットが一定量の時間遅れることになる場合、新しいタイムスタンプが、バッファされたパケットについてその時間量を減算することによって、算出することができる。RTPタイムスタンプを、ETSI RFC 3550において規定されるメディア・ストリームのクロック周波数に基づいて増やす。この点、時間量(ms)をRTPタイムスタンプから減算することを可能にするために、そのクロック周波数が必要となる。多くのペイロード・タイプのために、クロック周波数は、公知であり、例えばIETF RFC 3551において詳述される。時間どおりパケットを監視し、クロック周波数をペイロード・タイプに関連付けることによりクロック周波数を取得することによって、BSCは、メディア・ストリームで使用されるペイロード・タイプを取得することができる。あるいは、このペイロード・タイプは、同期設定メッセージにおいて、MSASからBSCまで送信することができる。
BSCバッファによって導かれる遅延を取扱うことの更なる解決作としては、UE及びBSCが同期設定指示を受信することができるということがある。これら同期設定指示は、メディア・ストリームの再生時間についての指示を含む。BSCが遅延を導いて、宛先間同期を達成する場合であっても、UEは、その再生を調整する手段として、同期設定指示を使用することができる。同期設定指示からの情報を通じて、UEは、メディア・ストリームからのパケットが遅く到達するという事実を認識している。何故ならばBSCがそれらを遅延させたからである。UEが同期設定指示を受信することを可能にする同期方式について、以下に図5及び図6を参照することによって更に詳細に説明する。
1又はそれ以上のアクセス・ラインが中間要素、例えばエンドユーザのUEにメディア・ストリームを転送する転送UEを備える場合、この転送UEは、エンドユーザのUEからネットワークまで生じている同期ステータス情報メッセージ(例えばRTCPメッセージのフォーマット)を転送することを可能とすべきである。このような処理は、IETF RFC 3550に説明される技術によって実現することができる。その技術については本願明細書に組み込まれるものとする。RFC 3550は、メディア経路の2種類の中間要素を規定する。即ち、ミキサ及び変換器(translator)である。変換器は、RTP及びRTCPのメッセージを変更することなく転送することができる。したがって、転送UEが変換器のように機能する場合には、RTCPメッセージを後方及び前方に転送することは課題を提起しない。しかしながら、UEが(例えば他のコーデックにメディア・ストリームを変換する)トランスコーダとして機能する場合、UEはRTCPメッセージを処理するように構成しなければならない。
トランスコーディングの間、UEは、RTPメディア・パケット及びRTPタイムスタンプを修正する。したがって、RTCPメッセージをトランスコーディングの中間要素を介してネットワークに送信可能とするために、それは、一緒に属する入来し発出するタイムスタンプを追跡し続ける。換言すれば、トランスコーディングするUEは入力におけるメディア・パケットのタイムスタンプを出力におけるメディア・パケットのタイムスタンプに、またその逆に、相関させることができる。エンドユーザのUEが同期ステータス情報メッセージを送信する場合、この情報はトランスコードされたRTPストリームのRTPタイムスタンプを含むか又はこれに基づく。したがって、トランスコーディングUEは、入来タイムスタンプと発出タイムスタンプの間の相関情報を使用して、RTPタイムスタンプを入来するRTPストリームの関連付けられた値に変更する必要がある。このように、MSASに送信されるRTCPメッセージは、正しいRTPタイムスタンプに基づく同期ステータス情報を収容する。この処理については、RFC 3550において更に詳細に説明する。
図3は、本発明の他の実施形態によるコンテンツ配信システムの少なくとも一部を示している。特に、この実施形態では、ETSI TISPAN TS 183063及びTS 182 027に規定されるIMSベースのIPTV300アーキテクチャに基づいて、コンテンツ配信システムの実施を示している。本システムは、コール/セッション制御機能(CSCF)のセットを含むIMSコア307を備える。即ち、例えばプロキシCSCF(P―CSCF)、問合せ(Interrogating)CSCF(I―CSCF)及び配給(Serving)CSCF(S―CSCF)である。このIMSコアは、更に、ユーザ機器(UE)305、及びネットワークにおいてIPTVサービスを制御するIPTVサービス制御機能(SCF)306に接続され、並びに、メディア制御機能(MCF)202及びメディア配信機能(MDF)303を含むメディア制御(MF)301に接続されて、トランスポート機能(TF)304を介したユーザ機器(UE)へのメディア・コンテンツ及び制御パケットの配信を制御する。
TS182027からのIPTVアーキテクチャは、メディア同期アプリケーション・サーバ(MSAS)308と共に拡張される。MSAS308は、宛先間同期機能を実行するように構成される。宛先間メディア同期は、特定のメディア、例えば、ビデオ・フラグメント及び/又はオーディオ・サンプルについて、異なった宛先で、同時に又は少なくともほとんど同一の時点で、呈示することを可能にする同期機構に関するものである。
同期が同期技術と関連づけるインター転送先のメディアは、(例えば同じことの異なる目的地の、又は、最も少なくほとんど同じ時のビデオ断片及び/又は音声サンプル)の提出を可能にする。IMSシステムは、メディア・バッファリングに適用してもよい。メディア・バッファリングは、例えば、1又はそれ以上の可変遅延バッファを用いたトランスポート機能で行うことができる。バッファは、同期ステータス情報レポートに付加されるMSASからバッファ設定情報を受信することができる。例えば、RTCP受信機は、同期拡張と共にレポートし、そして、UEがRTPトランスポート制御のためにネットワークに送信する。
同期化は、例えば少なくとも1つの可変遅延バッファを用いたバッファリング、及びトランスポート機能における関連付けられたバッファリング同期クライアント(BSC)310と連携して、UEの位置における測定同期クライアント(MSC)309によって決定される同期ステータス情報を用いることで実行することができる。MSASは、異なるMSCから同期ステータス情報を収集することができ、また、同期設定指示を送信することによって、関連付けられるBSCにおいてバッファリング処理を制御することができる。IMSコアは、同期設定指示をリソース・アドミッション及び制御サブシステム(RACS)311を用いてトランスポート機能のBSCに送信することができる。
図3のIPTVシステムは、セッション開始プロトコル(SIP)を用いて、ユーザ端末間の、又はユーザ端末とSCF及びMFを備えるアプリケーション・サーバ間のセッションをセットアップ及び制御することができる。セッション記述プロトコル(SDP)は、SIP信号メッセージによって搬送され、セッション内のメディア・コンポーネントを記載及び交渉するために用いることができる。更に、リアル・タイム・ストリーミング・プロトコル(RTP)は、例えば、ブロードキャスト・トリック・モード、コンテンツ・オン・デマンド(CoD)、及びネットワーク・パーソナル・ビデオ・レコーダ(NPVR)を提供するメディア制御のために用いられ、また、リアル・タイム・トランスポート・プロトコル及びRTP制御プロトコル(RTCP)は、メディア・トランスポート及びその制御のためにそれぞれ用いられる。
図4は、本発明の一実施形態による、シグナリング・フロー400をしめしており、ここでは、IPマルチキャスト・チャネルへ加入した(UEの)受信機が同期される。このシナリオは、例えば2人のユーザが、異なる位置の異なるUEに対して同期される方法により同一のライブ・コンテンツ(例えばマルチキャストされたサッカーの試合)を視聴することを望むときに、適用することができる。宛先間同期は、継続するチャット・セッション又はオープンしている電話ラインを介して、1ユーザが他のユーザの数秒前にゴールを見るというリスクをとることなく、試合を共に楽しみながら、ユーザ間の相互作用を可能にすることができる。
第1ステップ402において、UEはIMSコアにメディア・セッションのセットアップを要求する。このリクエスト・メッセージは、例えばETSI TS 182 027及びETSI TS 183 063で規定されたSIPインバイト・メッセージとすることができる。このリクエストは、IMSコアによってSCFに転送することができる(ステップ404)。SCFはベーシックIPTVメディア配信について高度なサービスを提供する。
このSCFは、セットアップされるセッションについての更なる情報を含む応答メッセージ、例えばSIP200OKメッセージと共にこの要求に返答することができる。この更なる情報は、MSASのアドレス、例えばURL又はIPアドレス、及び同期する端末のグループを特定するためのグループ同期識別子(SyncGroupId)を含むことができる。このグループ同期識別子は、例えば応答メッセージのSDPパラメータとして含むことができる。IMSコアは、引き続き、応答メッセージを要求元UEへ戻し(ステップ406、412)、そして、要求されたメディア・セッションが同期を要求とすることをRACSに通知する。
このRACSは、ETSI TS 183 017によりDiameterメッセージを使用して通知されることができる。Diameterは、拡張可能なプロトコルであり、同期化の目的で、必要となる同期情報を収容する新規な属性値ペアを規定することによって、延長することができる。特に、Diameter同期設定要求408は、同期セッションを特定する情報、例えばSyncGroupId、同期されるメディア・ストリームを特定するための情報(例えば、SIP応答メッセージ内の1又はそれ以上のセッション記述プロトコル(SDP)パラメータ)、関係するUEを特定するための情報(例えば、メディア・ストリームをセットアップするUEのIPアドレス)、及びこの特定のメディア同期に対する同期サーバとして割り当てられたMSASのアドレスを含むことができる。
例えばDHCPを使用して、ネットワークは、IPアドレスをUEに割り当てることができる。ネットワークは、IPアドレスの特定の範囲内で、IPアドレスをUEに割り当てることができ、IPアドレスはBSCを収容するあるネットワーク・ノードに関連付けられてもよい。RACSは、IPアドレス範囲のリスト及びIPアドレス範囲の各々に関連付けられるBSCのアドレスを用いて提供又は構成することができる。同期設定要求メッセージ408におけるUEのIPアドレスを用いて、このRACSは、リストに基づきBSCを特定することができる。BSCは、メディア・セッションに関連付けられたバッファリング・メディア・ストリームに適している。BSCは、メディア供給元とUEの間の媒体経路内にあり、又は、それに関連付けられている場合、UEと共に使用可能である。
RACSが同期化のためのバッファとして用いられるBSCのIPアドレスを決定した後、それはこのアドレスを同期設定要求に挿入することができる。同期設定要求は、引き続き、例えばDiameterメッセージ410を用いてMSASに転送される。メッセージ410は、IMSコアからRACSに送信される同期設定要求408と同一又は類似のフォーマットを有することができる。また、BSC識別子、例えばBSC IPアドレスを収容する属性値ペアを用いて拡張することができる。
BSCを割り当てる、又は位置を特定する機構は、上記の実施形態に限定されない。一実施形態において、SCFは、UE及びBSCについてのリストを保持することができる。このリストを使用して、BSCをUEが要求したメディア・セッションに割り当てることができ、選択したBSCを直接MSASに伝達することができる。他の実施形態において、RACSは、直接MSASに通知せず、それをSCFによって割り当てられたMSASへレポートするようにBSCに指示する。さらに別の実施形態において、BSCアドレスを、UEに伝達することができる。このUEは、その後に、ステータス情報レポートの一部としてMSASにこのアドレスを伝達することができる。この変形形態において、BSCアドレスは、例えばBSC IPアドレス及び、任意に、ポート番号を含むRTCPメッセージ内のフィールドと関連付けることができる。
したがって、SCF及び/又は、RACSが適切なBSCをUEに割り当てるように構成することができる。一実施形態において、このようなBSCは、エッジ・ノード、例えばDSLAM又はCMTS内に共に位置することができる。どのUE(1又は複数)が特定のエッジ・ノードの後方にあるか(即ち、1又はそれ以上のUEのエッジ・ノードへの関連付け)を特定することの課題は、様々な方法で解決することができる。通例は、UEに接続されたエッジ・ノードが、DHCPを用いてUEにIPアドレス供給する。UEに割り当てられるIPアドレスが一意なものである場合、それがどのエッジ・ノードに割り当てられているかについて、インジケータとして使用することができる。ネットワーク内のエッジ・ノードに対するIPアドレス範囲の割当ては、例えば、手動での構成によって予め決定することができ、ネットワークにアクセス可能であるデータベース内のどこかに格納されたリストに保持することができる。このリストは、コピーすることができるか又は、SCF及び/又はRACSによってアクセス可能とすることができる。
適切なBSCを選択するための更なる変形例として、ネットワーク内で既に利用可能なネットワーク・トポロジ情報に基づいてもよい。例えば、多くの固定ネットワークは、ネットワーク管理(administration)システムを備える。このシステムはどの顧客がどのアクセス・ラインの後方にいるかについて追跡する。同様に、例えば呼設定及びハンドオーバに対処するために、モバイル・ネットワークは、継続して、どの基地局がどの端末によって使用されるかについて追跡する。したがって、このような状況下において、ネットワーク・トポロジ情報は、ネットワーク内で全て既に利用可能である。また、このネットワーク・トポロジ情報は、適切なBSCを選択する目的で使用することができる。
他の変形形態において、BSCはネットワーク・ノードに位置することができる。このネットワーク・ノードは、ネットワーク階層の高いところにあり、即ち、ネットワーク・ノードは、全て又は大部分の少なくともメディア・ストリームが進行するネットワーク・ノードである。
更なるもう一つのオプションとして、メディア供給元とUEの間のルートを決定することができる。このことは、メディア供給元からUEへ又はその逆の経路探索メッセージを送信することによって、実現できる。経路探索メッセージは、大部分のオペレーティング・システムで利用可能であり、時折、「tracepath」又は「tracert」と呼ばれる。この経路探索メッセージは、ネットワーク内の2つのエンティティ間を伝わる全てのネットワーク・ノードのリストを戻すことができる。BSC機能性を収容する全てのノードのリストが利用可能である場合、BSC機能性を収容する1つネットワーク・ノードが、経路探索動作によって戻されるネットワーク・ノードのリストから選択することができる。
これから図4のフローに戻る。ステップ410において、MSASは、同期セッション・セットアップ情報を含む同期設定要求を受信する。同期セッション・セットアップ情報は、次のものを含む多くの情報項目を含むことができる。即ち、
−UEに関連付けられる識別子、例えばUEにより現在用いられているIPアドレスに関連付けられる識別子、
−BSCに関連付けられる識別子、例えばBSCのIPアドレス及びあるいはポート番号、
−同期グループに関連付けられる識別子、例えば同期グループID(SyncGroupId)、そして
−コンテンツに関連付けられる識別子、例えばメディア・ストリームに関連付けられた1又はそれ以上のSDPパラメータ、である。
1つのSDPパラメータは、メディア・パケットを送信するためのポート番号に関することができる。UEのIPアドレスと組み合わされるこのポート番号は、メディア・ストリームに対する識別子として使用することができる。メディア・コンテンツを特定するための他の変形例は、IETF RFC 3550に規定されたSSRCを使用してもよい。SSRCは、メディア供給元によってメディア・ストリームに割り当てられ、メディア・ストリームのセットアップの間にMSASに伝達することができる。MSASは、この情報をメモリ又はデータベースに格納することができる。更に、それは、この情報をMSASにおける現在の同期情報に相関させることができる。例えば、一実施形態において、SyncGroupIdに基づいて、MSASは、どの他のメディア宛先が同一の同期グループの一部であるかについて判断することができる。この情報は、遅延設定を算出するために、後の段階で、MSASによって使用することができる。
UEによって受信される応答メッセージ412は、MSAS及びSyncGroupIdの位置を含んでいる、メディア・セットアップ及び同期について必要とされる全ての情報をUEに提供することができる。任意には、バッファリングが他のエンティティにおいて実行されるという指標を含むことができる。セッション・セットアップの承認(ステップ414,416)の後に、UEは、例えば、選択したマルチキャスト・ストリームの配信を要求するためにIGMPを使用することができる。
同期化目的のために、UEのMSCは、次いで、同期ステータス情報をMSASに送信することができる(ステップ418)。これに応じて、MSASは、同期設定指示を生成して、BSCにこれらの指示を転送することができる(ステップ420)。同期ステータス情報及び同期設定インストラクションの伝送は、例えば拡張されたRTCP送信機及び受信機のレポートを用いて機構をレポートするRTCPを使用して実現することができる、そして、受信機がレポートする。当該レポートについて以下に更に詳細に説明する。
MSCから受信する同期ステータス情報は、メディア・ストリーム内の特定のサンプルを特定するためのRTPタイムスタンプ及びNTPタイムスタンプを含むことができる。例えば、RTCP受信機レポートが1234のRTPタイムスタンプ及び2月3日、10時14分15秒を示すNTPタイムスタンプを収容するとき、それは、メディア・ストリーム内のサンプル1234が正確に2月3日10時14分15秒に生じたことを意味する。
このように、NTPタイムスタンプは、UEがレポートするサンプリング・イベントの実際の(絶対)時間を表わす。同期化目的のために、宛先間メディア同期に関わる全てのUEは、例えばNTP(ネットワーク・タイム・プロトコル)に基づいて公知技術を用いて同期されるクロックを使用することが想定される。RTPタイムスタンプは、RTPデータ・パケットの第1オクテットのサンプリングの瞬間を反映する。このサンプリングの瞬間は、同期及びジッタ算出を可能にするために、時点において単調に及び線形にインクリメントするクロックから導出されなければならない。RTPタイムスタンプは、このように、メディア・ストリーム内のサンプルの瞬間の時点に関する情報を提供する。
同期化は、さまざまなタイミング・イベントに基づくもの、例えばUEによってメディアを受信する時間又はメディアがユーザに呈示される時間に基づくものとすることができる。本例示では、同期ステータス情報のRTPタイムスタンプが、示されたNTP時間で受信するメディア・パケットを反映することが想定される。
MSASは、1又はそれ以上の同期グループにおける異なるメディアの宛先(通例はUE)のMSCについての同期ステータス情報を受信及び管理する。収集した同期ステータス情報に基づいて、MSASは、引き続き、UEに関連付けられたBSCについての遅延設定指示を算出することができる。これらの遅延設定指示は、最も多くの遅延を有するメディアの宛先を特定して、次いでその特定した最も多く遅延したメディアの宛先の再生時間に一致させるために導くことが必要となる他のメディアの宛先の遅延量を計算することによって算出される。
遅延設定指示はBSCについての指示に関し、RTPタイムスタンプ及びNTPタイムスタンプの所与のタイムスタンプの組合せに(仮想的に)一致させるような方法で、BSCがメディア・パケットを処理することを可能にする。遅延設定指示の算出は、基準タイムスタンプ、例えばNTPタイムスタンプの選択、また、全てのメディアの宛先についての関連付けられたRTPタイムスタンプの算出を含むことができる。
第一の実施形態において、例えばMSASは、特定のRTPタイムスタンプを選択することができ、また、どのNTPタイムスタンプでそれらが選択されたRTPタイムスタンプと関連付けられたメディア・パケットを処理すべきかについて、メディアの宛先ごとに算出することができる。他の実施形態において、MSASは、NTPタイムスタンプを選択することができ、どのRTPタイムスタンプが選択されたNTPタイムスタンプと関連付けられるべきかについて、メディアの宛先ごとに算出することができる。MSASが現在のNTP又はRTPタイムスタンプを選択する必要はないことに留意されたい。問題となるのは、NTP及びRPTの間の関係であり、現在のタイムスタンプ、又は、過去又は現在における(仮想的な)同期時点を反映しているタイムスタンプを使用することができる。
RTPタイムスタンプが、(IETF RFC 3550による)絶対時間ではなく周波数を示すので、サンプリング・レートを決定することが必要となる。このことは、(例えば公知のIETF RFC 3551から)ペイロード・タイプ及びそれらの関連付けられた特定のサンプリング・レートを決定すること、又は2若しくはそれ以上のステータス情報レポートを用いることのいずれかによって、行うことができる。例えば、第1の状況レポートはNTPタイムスタンプNTP_xと共にRTPタイムスタンプRTP_x、及びNTPタイムスタンプNTP_yと共に第2の状況レポートRTPタイムスタンプRTP_yを収容することができる。ここでは、NTP_yはNTP_xより後の時点に関する。この情報に基づいて、周波数(又はクロック・レート)=(RTP_y ― RTP_x)/(NTP_y ― NTP_x)を判断することができる。
レポートされたメディア・パケットの到達時間は、例えばネットワーク・ジッタのため、いくつか不正確性を含むこともある。これらの不正確性は、除去することができる、又は、2若しくはそれ以上のステータス情報レポートを使用することにより少なくても削減することができる。算出された値が、頻繁に用いられるある固定のクロック・レート(例えば8000Hz、44100Hz及び90000Hzの)に近い場合、MSASはこれら公知の値の1つが使われると想定することができる。一旦MSASがクロック・レートを決定すると、BSCについての遅延設定指示は算出することができる。
UE1及びUE2のそれぞれに関連付けられたステータス情報レポート値についての次の例を検討する。90000Hzのクロック・レートが以下に用いられる。即ち、
− UE1は、NTP時間の01時23分45.678秒(NTP_UE1)におけるRTPタイムスタンプ2070000(RTP_UEl_Reported)をレポートする、及び
−UE2は、NTP時間01時23分46.678秒(NTP_UE2)におけるRTPタイムスタンプ2250000(RTP_UE2_Reported)をレポートする。
MSASは、まず、基準タイムスタンプの選択、及び当該基準タイムスタンプを基礎として使用する他のタイムスタンプの計算により、最も大きい遅延を決定する。例えば、MSASは、UE1のNTPタイムスタンプを選択し、このNTP時間におけるUE2のRTPタイムスタンプを算出することができる。即ち、
RTP_UE2_calculated=RTP_UE2_reported+90000*(NTP_UE1 ― NTP_UE2)
この算出の結果はRTP_UE2_calculated=2160000であり、UE1が最も遅延したUEであることを示す。換言すれば、NTP_UE1時間においてで、UE2のRTPタイムスタンプ値は、UE1と関連付けられたものよりも大きい。したがって、宛先間同期を達成するために、UE2は再生を遅延させる必要がある。
遅延設定指示を算出した後に、MSASは、指示を適当なBSCに送信することができる。これらの指示は、算出したRTP及びNTPのタイムスタンプ、並びに遅延されるメディア・ストリームを識別するための手段(一例では、UEのIPアドレス及びメディアを受信するポート番号、又はRTPプロトコルで用いられるメディア・ストリームのSSRC識別子)を例えば収容することができる。
MSC及びBSCがメディ経路における異なる位置に配置されるので、BSCは、UEでMSCによって送信された同期ステータス情報についてのナレッジ、及びどのメディア・ユニットをUEが現在呈示しているかについてのナレッジを有さない。したがって、それは、遅延を導くべきであるか又は取り除くべきかどうか決定することができない。この理由のために、一実施形態において、MSASは、UEにおいてMSCから遅延設定指示に対して発せられるステータス情報レポートを含むことができ、その結果、BSCは、MSASによって決定されるように、必要となる遅延をRTP及びNTPのタイムスタンプに基づいて算出することができる。したがって、UE1及びUE2についての遅延設定指示は、UE1のステータス情報レポートからの値及びRTP_UE2_calculated値を含むことができ、UE1が遅延無を必要とすることを決定し、UE2が第2の遅延(2160000―2070000=90000、これは正確に1秒の所与のクロック・レートに等しい)を決定することを可能にする。
一旦BSCが指示を受信すると、それはストリーム識別手段に基づいて適切なストリームの配置し、その指示に基づいて導く又は取り除くための遅延量を算出することができる。その後に、このBSCは、必要とされる遅延を導くことができる。遅延は、幾らかの時間にわたりメディア・パケットを送信するのを停止することにより、又は、RTPパケット及びRTCPパケットの両方のRTPタイムスタンプを変更することにより、実現することができる。
遅延設定指示は、過去からのNTP又はRTPのタイムスタンプを含むことができる。所与のNTP及びRTPのタイムスタンプが一致するように、遅延設定指示の受信機、例えばBSCは、メディア・ストリームの遅延を導くべきである。パケットが全て対処されることの準備ができているRTPタイムスタンプをその指示が収容する場合であっても、その指示の受信機は、その指示を、現在対処されるタイムスタンプに変換(translate)しなければならない。NTP及びRTPのタイムスタンプは、また、受信機において決して到達しないメディア・パケットと関連付けることもできる。ある意味で、このようなタイムスタンプは、仮想的であるとみなすことができる。同期を命ずるのは、NTP及びRTPタイムスタンプの組合せである。MSASは、UEに対し、UEがあたかもRTPタイムスタンプ、NTPタイムスタンプにあるべきである、又はあることができるように振る舞うことを通知する。MSCが決定及び送信した同期ステータス情報が異なるパケット処理時間(例えばパケット到達時間、パケット呈示時間又はパケット・デコード時間)に基づく又は関連付けることができるので、遅延設定指示は、原則として、同一のパケット処理時間に基づくべきである。例えば、同期ステータス情報が、パケット到達時間に基づく場合、遅延設定指示は、また、パケット到達時間に基づくとすべきでもある。異なる処理時点(到達、デコーディング、呈示)の間の時間差が一定で公知である場合には、このステータスレポートはパケット到達時間に基づいてもよく、その一方で、設定指示はパケット呈示時間に基づいてもよい。
NTP及びRTPのタイムスタンプの代わりに、他の実施形態において、BSCに送信される遅延設定指示は、をセットしているインストラクションは、他の実施形態では、BSCに対して第2のメディア・ストリームを1000ミリ秒バッファする指示を含むことができる。あるいは、遅延設定指示は、BSCに対し、1000ミリ秒の遅延が実現されるように、宛先間同期のバッファ・サイズ遅延を増加させるように指示することができる。これらの場合では、必要となる遅延を算出するのはMSASである。
図5は、本発明の更なる別の実施形態による、コンテンツ配信システム500の少なくとも一部を示している。特に、図5では、図2を参照して記載したものと類似のIMSベースのIPTVアーキテクチャの一部を示している。本システムは、基本処理機能(Elementary Processing Function)及び基本転送機能 (Elementary Forwarding Functions)ECF/EFF504を備えるトランスポート機能502及びBSC506を備える。BSC506はこのECF/EFF(又はその一部)と共に配置される。MDF508は、宛先としてメディア・ストリーム510をUE512に届ける。メディア・ストリームは、TF502を通じて、BSC506を介してUEのMSC514まで移送される。
メディア・ストリーム510の受信に応答して、UEのMSCは、同期ステータス情報メッセージ516、即ち同期ステータス情報レポートを、MSAS518に対して生成する。図3及び図4を参照して説明したシステムとは対照的に、同期ステータス情報メッセージは、BSC506を介してMSASに送信される。受信した同期ステータス情報に基づいて、このMSASは、引き続き、同期設定指示518を算出して、これらの指示をUEにBSCを介して送信する。しかしながら、UEにこれらのメッセージを転送する代わりに、BSCは、これら同期設定指示を遮断し、これらをUEに転送しない。この例では、UE、MDF及びMSASのいずれもが、BSCが呈示している任務を認識するというわけではない。このBSCは、メディア・ストリーム及び全ての同期メッセージの両方の経路にあるので、それは、これらのメッセージ及びメディア・ストリームを遮断し、監視し及び/又は調整することができる。
図6は、図5を参照して説明したシステムに関連付けられるメッセージ・フロー600を示している。特に、図6は、同期メッセージについてのメッセージ・フロー及びMDFからUEまで届けられるメディア・ストリームを示している。第1ステップ602において、UEは、同期ステータス情報レポートをMSASに送信する。このレポートは、ステータス情報を収容するRTCP拡張レポートブロックで拡張されるRTCP受信機レポートの形態を有することができる。このレポートがMSASに転送される前に、このメッセージはECF/EFFによって遮断される。
このメッセージは、2つの理由により、ECF/EFFによって遮断される。第1の理由は、ECF/EFFのBSCによっていかなるバッファリングも実行するために、BSCが同期ステータス情報レポートの情報、例えばMSCの特定のメディア・ストリーム・パケットのパケット到達時間についてのタイミング情報を使用できるということである。BSCが、それによってどのくらいメディア・ストリームを遅延させるかを認識することを望む場合、BSCは、いくつかの方法でこの情報を受信及び/又は決定することができる。
第1の変形形態において、MSASは、例えば「y秒の間メディア・ストリームxを遅延させる」という形態で、絶対指示を送信することができる。BSCは、UEから発している同期状況レポートから、いかなるナレッジなしにこれらの指示を実行することができる。他の変形形態において、MSASは、「これらのメディア・パケットが指定された時間に到達したときに、メディアを再生する」という形態で指示を送信することができる。その場合、(例えばUEから発している同期状況レポートに含まれているように)UEにおいてパケット到達時間を認識しているときに、BSCはこれらの指示を実行することができる。UEからMSASまで送信される同期ステータス情報メッセージを遮断することによって、BSCは、到達時間情報を含むこれらメッセージの情報を認識する。BSCは、MSASからUEまで送信される同期設定インストラクションに収容される情報と結合して使用するために、一時的にこの情報を格納することができる。そのように、ステータス情報及び設定指示を使用して、BSCは、メディア・ストリームを遅延させるべきか、及びどれくらい遅延させるべきかを決定することができる。
この同期ステータス情報メッセージを遮断する第2の理由は、それにより、BSCがメッセージ内の情報を調整することを可能にするからである。MSC及びBSCがメディア経路上の異なる位置に配置されるため、この情報の調整が必要となる。MSCがUEに位置する状況において、BSCにより導かれるメディア・ストリームの遅延は、到達時間情報の遅延に結果としてなるであろう。MSC及びBSCが共に1つの同期クライアントに位置する場合には、このような状況は発生しない。一旦パケットが到着したならば、即ち、メディア・パケット到達時間を決定した後に、いかなる遅延もが導かれる。したがって、メディア・ストリームはMSCに到達する前に遅延されるので、同期ステータス情報メッセージは、BSC及びMSCが1つの位置で結合される状況と比較した際に、異なるタイミング情報を収容するであろう。この効果を補正するために、BSCは、UEからMSASまで送信される同期ステータス情報メッセージを調整することができる。BSCは、どの時間量までメディア・ストリームを遅延させるかについて認識しているので、この値をステータス情報レポートにおいて報告される到達時間から減算することができる。BSCがこの動作を実行しない場合には、BSCがメディア・ストリームを遅延させない状況において、又は、BSCが時間内のある時点で行うことよりも少なくストリームを遅延させる状況において、UEは、とても後にメディア・パケットを受信するようである。したがって、BSCが遅延を導くときに、ステータス情報メッセージがそれを反映するように調整することができる。
レポートでの情報の遮断及び調整の後に、BSCは同期ステータス情報をMSASに送信することができ(ステップ604)、これに応答して同期設定指示をUEに戻すことができる(ステップ606)。再度、BSCはこれら同期設定指示を遮断し、ステータス情報及び設定指示から導かれる時間量によってメディア・ストリームを遅延させることができる。BSCは、UEに同期メッセージを転送することもでき、又はそうしないこともできる。このことは、ステップ608の破線矢印によって示されている。BSCが設定指示を実行するので、UEはそれらにメディア呈示を遅延させることを要求しない。それにもかかわらず、設定指示を実行するのに加えて、BSCは、また、UEに指示を転送することもできる。このUEは、これら指示の情報を用いて、メディア・パケットを処理する、例えば適切な時間にそれらを呈示することができる。
図7は、RTPメディア・ストリームに関連付けられた宛先間メディア同期情報をレポートするための考えられるRTCP XRのブロック・タイプの一例を示したものである。この規定は、IETF RFC 3611に基づく。このRTCP XRは、RTPパケットの受信時間及び呈示時間に関する情報を、例えば、IETF RFC 3550に規定される送信機、IETF draft―ietf―avt―rtcpssm―19において規定されるフィードバック・ターゲット、又はIETF RFC 3550において規定される第三者モニタに対してレポートするのに用いられる。このRTCP XRは、また、例えば図3及び図6のメッセージ・フローにおいて示されるような同期メディア再生に関わる、同期ステータス情報、並びに様々な要素、特にMSC、BSC及びMSASの間の同期設定指示を交換するのに用いられる。
IETF RFC 3611において規定されるとおり、最初の64ビットは、RTCP XRのヘッダを形成する。宛先間同期RTCP XRは、以下のフィールドの1又はそれ以上を含むことができる。即ち、
−パケット送信機のSSRCが特定のRTCPパケットの発信者を特定する。
−ブロック・タイプ(BT)は8ビットであり、ブロック・フォーマットを特定する。
−同期パケット送信機タイプ(SPST)は4ビットであり、このフィールドは、この特性の拡張レポートについてのパケット送信機の役割を特定する。これは、以下の値を有することができる。即ち、
1.SC:パケット送信機は、同期ステータス情報をレポートするために、このXRを使用する。タイムスタンプは、SC入力に関する。MSAS:パケット送信機は、同期設定指示をレポートするために、このXRを使用する。タイムスタンプは仮想SCの入力に関し、当該仮想SCは、このMSASに接続するSCが同期されるのを参照するものとして動作する。
−予約ビット(Resrv):3ビットである。
−パケット呈示NTPタイムスタンプ・フラグ(P):1ビットであり、ビットは、パケット呈示NTPタイムスタンプが値を収容するときは1に、それが空である場合には0に設定する。このフラグがゼロに設定される場合には、パケット呈示NTPタイムスタンプは検査されない。
−ブロック長:16ビットであり、このRTCP Block Typeが固定長を有するので、これは7に設定される。
−ペイロード・タイプ(PT):7ビットであり、このフィールドは、IETF RFC 3551にしたがってメディア・ペイロードのフォーマットを特定する。このメディア・ペイロードは、RTPタイムスタンプのクロック・レートに関連付けられる。このクロック・レートは、RTPタイムスタンプにタイム・ベースを提供する。
−予約のビット(Resrv):25ビットである。
−メディア・ストリーム相関識別子:32ビットであり、この識別子は、同期されたメディア・ストリームを相関させるのに用いる。値が0(全てのビットが「0」に設定される)は、このフィールドが空であることを示す。値が2^32―1(全てのビットが「1」に設定される)は、将来の使用のために予約されている。RTCPパケット送信機がSC又はMSAS(SPST=1又はSPST=2)であるときは、メディア・ストリーム相関識別子が同期グループID(SyncGroupId)にマップする。
−SSRC:32ビットであり、メディア供給元のSSRCは、XRが関係するRTPパケットにおけるRTPヘッダで搬送されるSSRC識別子の値にセットされる。
−パケット受信NTPタイムスタンプ:64ビットであり、このNTPタイムスタンプは、XRが関係するRTPパケットの第1オクテットの到達ウォール・クロック時間である。SPST=2に対し、それは、同期グループの他のSCが同期することができる仮想SCに関する。
−パケット受信RTPタイムスタンプ:32ビットであり、このタイムスタンプは、XRが関係するRTPパケットにおけるRTPヘッダで搬送されるRTPタイムスタンプの値を有する。
−パケット呈示NTPタイムスタンプ:32ビットであり、このタイムスタンプは、関連付けられたRTPパケットの第1オクテットに収容されるデータがユーザに呈示されるNTP時間を反映する。それは、最も重要でない16ビットのNTP秒部分、及び最も重要な16ビットのNTP少数部分を含む。このフィールドが空である場合には、それは0にセットされ、パケット呈示NTPタイムスタンプ・フラグ(P)は0にセットされる。
図8は、本発明の一実施形態によるBSC800を示している。特に、それはバッファ802を含むBSC800を示しており、第1UE1 804及び第2のUE2 806によって共有される。UE1は、第1の同期メディア・ストリーム808を受信し、UE2は、第2の同期メディア・ストリーム810を受信する。この例において、メディア・ストリーム808及び810は、入来するメディア・ストリーム812から発しており、第1メディア・ストリームの特定パケットがUE2よりUE1に早く送信されるという例外を有する同一の内容に関係する、同一のメディア・ストリームである。このBSCは、BSCの処理を制御するためのコントローラ814を備える。例えば、このコントローラは、MSASから同期設定情報816を受信し、同期グループ内の異なるUEに関連付けられた遅延を算出し、1又はそれ以上の遅延メディア・ストリームをUEに伝送することができる。
UE1及びUE2が互いに同期された閲覧セッションにあり(即ち、これらは同じ同期グループに属する)、BSCとUE1の間のメディア経路に関連するネットワーク遅延がBSCとUE2の間のメディア経路に関連するネットワーク遅延より大きいにために、BSCは遅延を導いて、UEとBSCを備えるアクセス・ノードとの間のアクセス・ラインの遅延を補償する。したがって、特定のメディア・パケット、例えばビデオ・フレーム又は音声サンプルは、UE1及びUE2が実質的に同期される方法でメディア・ストリームを受信することを可能にするために、UE1により早く送信しなければならない。図8に、2つのUE間で共有することを示す。同じBSCを用いて同一のコンテンツを閲覧し、及び/又は1つの同期グループに所属するUEは、バッファを共有することができる。他の実施形態において、BSCは、異なる同期グループについての同一のコンテンツのバッファリングを実行することができる。いずれの場合においても、バッファ容量及びBSCへ入来するネットワーク負荷の点で、単一のバッファを使用することがより効率的である。バッファは、First―InーFirstーOut(FIFO)方式により動作することができる。発しているメディア・ストリーム812から受信する新しいバッファは、バッファ802に追加され、バッファ内で最も長いパケットが最初に除去される。バッファは、UE識別子820及び関連付けられるポインタ822を含むバッファ・リスト818を保持することにより多数UEで共有することができる。ここでは、IDがBSCを共有するUEを特定する。そして、ポインタがその対応するUEに送信される次のパケットをポイントする。例えば、バッファ・リスト818は、UE1に関連付けられる第1のポインタを含むことができ、バッファ内のパケット5及びUE2と関連付けられた第2ポインタをポイントし、バッファのパケット8をポイントする。パケットが特定のUEに送信されるたびに、BSCはリスト、特にその中のポインタを維持及び更新する必要がある。BSCは、継続的に各メディア・ストリームをバッファする必要はない。例えば、このBSCは、当該BSCが異なるUEに関連付けられた遅延を変更して取り扱うことを可能とするために、15秒間メディア・ストリームをバッファするだけでよい。
図9A及び図9Bは、宛先間同期の目的のバッファリング方式の概略図を示している。これらの図は、本発明と関係した更なる利点を示しており、特に、改良した時間を変更するチャネルの効果に関連した利点について示している。図9Aは、UE902が測定機能904及びバッファリング機能906を備える同期クライアントを備えるシステムを示している。このような場合には、バッファ機能は、宛先間バッファ及びジッタ・バッファの両方として機能するように構成することができる。UEは、UE902のユーザに表示されるビデオ・フレームを収容する第1のメディア・ストリーム908を受信する。UE902は、宛先間同期セッションの一部とすることができる。したがって、同期化を可能にするために、UE902は、バッファリング機能、で受信したメディアのバッファリングを実行することを必要とすることもある。この場合は、10個のメディア・ユニット、例えばビデオ・フレームである。バッファ機能はまた、ジッタ・バッファとして機能するために、数を追加したフレーム、例えば5つのビデオ・フレームがバッファされ、これにより、バッファ機能において合計15個のビデオ・フレームをバッファリングする。
ある時点で、UEのユーザは、第1のメディア・ストリーム908から第2のメディア・ストリーム910へ切り替える必要があることもある。チャネル変更の間、このUEは、まず、第2ストリーム910からメディア・ユニットのバッファリングを開始する必要があり得る。宛先間同期なしで、短い期間だけが、ジッタを取り扱う目的でバッファリングされることを必要とする。しかしながら、UEのバッファ機能がまた、宛先間同期の目的でバッファリングをも行うため、ビデオ・フレームの追加のバッファリングが、バッファされたビデオ・フレームのユーザへの表示を開始する前に、必要となる。
例えば、メディア・ユニットが毎秒25個のフレームを有するビデオ・ストリームに関する場合には、フレームのみを、ジッタ・バッファリング目的のためにバッファすることが必要となる。これは、概ね200ミリ秒の遅延を導く。このような遅延は、チャネルを変更するのになお使用可能な時間としてもよい。しかしながら、図9AのBSCは、ジッタ及び宛先間同期の両方を取り扱うための15個のフレームをバッファリングすることを必要とする。このようなバッファリングは、600ミリ秒、即ちジッタのみを取扱う状況に対するものと比べて3倍の遅延を引き起こすことになる。チャネル変更時間のこのような増加は、ユーザ体験を劣化させ得るだろう。
図9Bは、MSC及びBSCがUEとメディア供給元との間のメディア経路上で異なる位置(すなわち複数の位置)に配置される方式に関する。この場合、UE912は、MSC914及びジッタ・バッファ916を収容する。第1のBSC1(918)は、ネットワーク内のメディア供給元とUEとの間のメディア経路のどこかに位置する。BSC1(918)は、現在の第1チャンネルについてバッファリングすることができる。即ち、第1チャンネルを含む第1ストリーム920が10個のメディア・ユニット(例えばビデオ・フレーム)について、これらフレームがUE912に転送される前にバッファされる。ネットワークは、更に、第2のチャネルを含む第2のメディア・ストリーム924をバッファする第2のBSC922を備える。
図9Aの方式と比較すると、図9Bの方式はいくつかの利点を提供している。第1に、ジッタ・バッファのサイズ(この例では3個のメディア・ユニット)は、BSCとUEの間のより短いメディア経路のために、減少することができる。ジッタはネットワーク内で導出され、したがって、ネットワーク経路がより長く(より短く)なると、メディア・ストリーム内のパケットの遅延差がより大きく(より小さく)なる。図9Bの例では、第1のBSC1は、(実質的に如何なるジッタもない)規則的な間隔を有するメディア・ストリーム926内のメディア・ユニットを送出する。より短いメディア経路は、ジッタをより小さくし、したがってより小さいジッタ・バッファを必要とする。1秒当たり25個のフレーム・レートを使用すると、図9Aで示される方式において必要される5つのフレームのバッファリングに関連付けられた200ミリ秒の遅延ではなく、120ミリ秒の遅延が導かれる。
第2に、チャネル変更時間は、UEが宛先間同期の目的のためにバッファする必要がないことから、より短い。その代わりに、BSC1を収容するネットワーク内のノードは、宛先間同期に必要とされる10個のフレームについてバッファリングの後処理をする。第2のメディア・ストリームが第2BSC2(912)によってすでにバッファされているので、メディア再生は直ちに開始することができる。毎秒25個のフレーム・レートでは、チャネル変更の間の追加の400ミリ秒の遅延を保存することができる。したがって、チャネル変更の遅延は120ミリ秒に減らすことができ、これにより、図9Aの例示における600ミリ秒の遅延と比較したときにチャネル変更時間の重大な削減をもたらす。
ザッピングに関する課題の1つは、宛先間同期の目的のために新しいチャンネルについてのバッファ・サイズを決定することである。最も単純な解決策は、例えば同一の時間量又は同一のビデオ・フレーム量の古いチャネルと同様に、新しいチャネルを遅延させることである。しかしながら、新しいチャンネルの遅延を決定するより正確な方法がまた可能である。
一実施形態において、BSCは、異なるメディア・ストリームに関連付けられる特定のステータス情報の履歴を格納することができ、また、この履歴を用いて正確な同期設定指示を決定することができる。例えば、メディア・ストリームAに関連付けられたステータス情報レポートに基づいて、MSASは、設定指示をBSCに送信することができ、UE及びこの同期グループに対してxミリ秒の間ストリームを遅延させる。UEがメディア・ストリームBへ切り替えるときに、最初に、BSCは、メディア・ストリームAに対して用いられたのと同一量のミリ秒についてメディア・ストリームBを遅延させる。しかしながら、UEからの新しいステータス情報レポートをMSASが受信する場合には、UEに対してストリームBをyミリ秒遅延させることを命じる新しい同期設定命令を算出し、BSCへ送信する。変更した唯一のものがメディア・ストリームであるので、yとxの間の差は、これらメディア・ストリーム間で切り替わるために他の端末で使用することができる。十分なチャネル変更がBSCを用いてUEについて発生する場合には、BSCは、様々なチャネルに対する想定遅延を含むチャネル切替リストを作成することができる。このリストは、1つのチャネルから別のチャネルへ切り替える任意のUEについて適切な遅延を選択するために用いることができる。
図10は、本発明の別の実施例によるコンテンツ配信システム1000の少なくとも一部分を示している。本実施形態において、このシステムは、多くのUEに1又はそれ以上のネットワーク・ノードを介してメディア・ストリームを届けるためにメディア供給元1002を備える。UEによってメディア・ストリームの同期化された再生を可能とするために、各UE1004―1008がBSC1010―1016を備え、MSC1018、1020はネットワーク1022内においてメディア供給元と各UEの間のメディア経路上のどこかに位置する同期方式が実装される。
MSCは、メディア供給元からのメディア・ストリーム1024を受信し、また、このストリームをメディア・ストリーム1026―1030としてUEに転送する。この例では、メディア・ストリーム1024はマルチキャスト・ストリームとして配信することができる。ここでは、このマルチキャストされたメディア・ストリームはマルチキャスト・ホップにおいて3つのメディア・ストリーム1026―1030に分割される。MSC1018、1020は、マルチキャスト・ストリームを異なるUEに届けるのに分割する必要がある位置に配置される。このような位置は、xDSLネットワークのDSLAM又はケーブル・ネットワークのCMTSといったネットワークのエッジ・ノードとすることができる。
ネットワーク内のMSC及びUEのBSCの使用は、MSCの位置からその特定にMSCを通じて伝送されるメディア・トラフィックを受信する異なるUEへのメディアのトランスポート間であまり大きな遅延差がない場合には、ほぼ正常に実行することになる。例えば図1に示したような、大きな差が存在する場合には、このようなシナリオは、宛先間同期の目的で最適には実行しないことになる。
MSC1018、1020は、メディア・ユニット到達時間の測定を実行することができ、これら測定された到達時間情報を同期ステータス情報1032、1034として同期サーバ(MSAS)1036にレポートすることができる。このMSASは、全てのMSCから全ての同期ステータス情報を収集することができる。この同期ステータス情報は、宛先間同期に必要となるメディア・ストリーム及びUEに関する。次いで、適切な同期設定指示を算出して、これら指示1038―1042を、それぞれBSCを備えた異なるUEに送信する。なお、これは、宛先間同期に関わる全てのUEがネットワーク内の単一のMSCの後方にある場合には、あまり役立たないことに注意されたい。
図10に示すような同期方式は、2つの明確な利点を有する。第1の利点は、この方式が宛先官同期の目的のためにネットワークを移動するのに必要なメッセージをより少なくするという事実に関する。UEがMSC及びBSCの両方を備える場合(例えば図9Aを参照のこと)には、全てのUEはそれら自身の同期ステータス情報メッセージを同期サーバに送信する。図10に示される実施形態において、ネットワーク内の1つのMSCは、多数UEに代わって1つのステータス情報メッセージを送信ことができ、これにより、メッセージの数を著しく減少させることができる。全てのUEは、なおもそれらの自身の同期設定指示を受信することになるが、通例は、ステータス情報メッセージの数がより大きくなるか、少なくとも設定指示メッセージの数に等しくなるであろう。
UEはMSASにステータス情報メッセージを定期的に送信することができる。その結果、初期の同期の後に発生し得る同期欠如の経過を追うことができる。しかしながら、一旦、宛先間同期がある時点において実現され、及び、ネットワーク遅延がむしろ変動しない結果、メディア配信が実質的に同期を維持されたときには、更なる設定指示は必要でなくなる。何故ならば遅延の変更をなくすのはBCSにより行われる必要があるからである。したがって、ネットワーク内にMSCを配置することによってステータス情報メッセージの数を減らすことは、宛先間同期に関わるメッセージについてのより大きな部分の減少を提供できる。
図10の同期方式と関連した第2の利点は、それが同期サーバ(MSAS)によって実行される処理量を削減するということである。MSASは、関連のある遅延設定指示を算出できるようにするために、特定の宛先間同期グループについての全ての同期ステータス情報メッセージを処理する必要があろう。より少数のステータス情報メッセージにより、算出はより複雑でなくなり、及び更に必要な処理はより少なくなるだろう。
図11は、本願を他の同期タイプについてコンテキストで示したものである。宛先間同期の目的のために同期クライアントをBSC及びMSCに分割する代わりに、図11では、ストリーム間同期(即ち、リップ・シンク)の適用を示している。図11は、メディア・ストリームの配信に関するケースを例示する。当該メディア・ストリームは、他の供給元からの追加のメディア・ストリームによって強化される。このような追加のメディア・ストリームの例示では、異なるオーディオ・ストリーム、例えばスポーツの試合の放送における異なる解説者、としてもよい。この異なるオーディオ・ストリームは異なる供給元で発生し、次いで、オリジナルのゲームをブロードキャストすることができるので、ストリーム間同期は別個に調整されなければならない。
この特定の状況において、ストリーム間同期は宛先間同期と同様の課題が懸念される。例えば、このオーディオは、オリジナルの放送に応答して作成することができる。このことは、オリジナルの放送を閲覧している人が、代替のオーディオ・ストリームを受信する前に相当な秒数にわたりビデオ・ストリームをバッファする必要があることを、意味する。更には、その機器は、再生機器が短い時間期間のみにわたり(例えば、100ミリ秒のオーダーで(ジッタ)バッファするように通常構成されるように、延長された時間期間にわたりバッファするように構成しなくてもよい。別の課題は、この場合にはまた、チャネルが変更する遅延を非常に長くできるということにも関する。チャネル変更の後に代替のオーディオ・ストリームがビデオのタイミングと一致して利用可能となる前に、ビデオが数秒間バッファされる必要があるという状況は、チャネル変更遅延を利用可能でないものにする。
そのような状況において、ネットワーク内のMSC/BSCの複合を備える同期クライアントの使用は、適切な同期機能を提供しないだろう。このことは、MPEGのような現在のビデオ・エンコード方式が異なるタイプのフレーム(例えばI―フレーム、B―フレーム及びPフレーム)を使用するので、通常は、ビデオがオーディオよりも長い時間期間にわたりバッファリングを必要とするという事実に起因する。このようなビデオ・エンコード方式が双方向のエンコード方法に適用される場合には、エンコードするのに特定のフレームが初期フレーム、いくらかは将来のフレーム及びいくらかはその両方に依存することもある。したがって、多くのフレームが特定フレームを出コードするために必要とされ、バッファする必要があるこれらのフレームは、それらのフレームをデコードしないうちに開始することができる。したがって、これらの問題を解決するために、同期化方式が必要となり、そこでは、BSC及びMSCは、1又はそれ以上のメディア供給元及びUEの間のメディア経路に沿った別々の場所に位置する。
図11は、1又はそれ以上のメディア・ストリームに関連付けられたメディア・ユニット到達時間情報についてレポートするために、MSC1106を有するUE1104を備えるホーム環境1102を示す。このUEは、ディスプレイ1108及びオーディオ出力デバイス1110に接続することができる。このUEは、ビデオ・ストリーム1112及び別個の関連するオーディオ・ストリーム1114を受信する。ビデオ及びオーディオ・ストリームの双方は、ビデオ及びオーディオ・ストリームのメディア経路内のネットワークに位置しオーディオ及びビデオ・ストリームをバッファするための別個のBSCバッファ1118、1120を備えるBSC1116を通過することができる。このBSCは、ネットワーク内のどこかに位置する2つの別個のメディア供給元1122、1124から、ビデオ・ストリーム及びオーディオ・ストリームを受信することができる。MSAS1126は、MSCからステータス情報レポート1128を受信し、このステータス設定レポートに基づいて同期設定指示1130を算出することができる。同期設定指示1130は、その後BSCに送信される。
UEは、それ故、共に属するオーディオ及びビデオ・ストリームの場合には(ネットワーク内の異なるメディア供給元から発生することができる又はできない)、2又はそれ以上の別個のメディア・ストリームを受信する。宛先間同期を実行するために、UEはIETF RFC 3550に規定されたRTCP送信機レポートを受信することができる。これらRTCP送信機レポートは、メディア供給元からUEまで送信され、メディア・パケットが送信された(より具体的には、サンプルされた)時間と対応するRTPメディア・ストリームについてのRTPタイムスタンプとの間の関係を含むことができる。宛先間同期は、それ故、異なるストリームの異なるメディア・パケットが送信された(より具体的には、サンプルされた)時間をマッチングすることによって、及び異なるメディア・ストリームの対応するRTPタイムスタンプを実質的に探すことによって、達成することができる。
MSASが遅延設定指示を算出することを可能にするために、それは、異なるストリーム間での相関時間を必要とする。ストリームが共に同一の供給元から送信されるか、又は関連したメディア・パケットについて同一のサンプリング時間を使用して送信される場合には、通常のRTCP手順をなお適用する。その場合には、このMSASは、MSCによって送信された同期ステータス情報においてレポートされるタイムスタンプを相関させるために、RTCP送信機レポートに収容される情報を必要とする。
タイムスタンプを相関されるためのこの情報は、さまざまな方法で、例えばMSASにRTCP送信機レポートをルーティングすることにより、取得することができる。例えば、このUEはMSASにこの送信機レポートを転送することができ、又は、このネットワークはこの送信機レポートのコピーをMSASに送信することができる。この情報を得るための他の方法は、RTCPメッセージのシグナリング経路内にネットワークのMSASを配置することによるものである。このことは、例えば、BSCを有するMSASを共に配置することによって達成できる。
異なるメディア・ストリームが同一の供給元から発生するか、又は関連したメディア・パケットについて同一のサンプリング時間を使用しない場合には、MSASはオーディオ・ストリーム及びビデオ・ストリームに関連付けられたステータス情報レポートのタイムスタンプ間の相関に関する情報をなおも必要とする。一実施形態において、相関情報は、例えば両方のストリームを呈示する何者か、及び遅延を手動で変えることができる何者かによって手動で供給し、同期を達成することができる。一旦同期が達成されると、手動で導かれた遅延をレポートし、MSASに送信することができる。別の実施例では、メディア・パケットの供給元は、同期ステータス情報のタイムスタンプ間の相関について供給することができる。例えば、第2のメディア・ストリームが別の第1のメディア・ストリームに応答して作成される場合には、その第2メディア・ストリームの供給元は、第2メディア・ストリームのサンプリング時間と(第2メディア・ストリームの供給元によって受信されるRTCP送信機レポートに収容される)第1メディア・ストリームのそれとの間の相関についてレポートすることができる。
このコンテキストでは、他の課題もまた発生する。オーディオ及びビデオ・ストリームが別個のUEによって受信する場合には、これらのUEは、メディア・パケット到達時間が各UEによってレポートされたことを認識していないので、ストリーム間同期を実行することができない。しかしながら、BSCがネットワーク内に位置する場合には、UEは双方ともMSCを備えることができ、到達時間についてBSCにレポートすることができる。次いで、BSCは、異なるUEを代表してストリーム間同期を達成するために、必要なバッファリングを実行することができる。
図12は、本発明の一実施例による分散同期システムを備えるメディア配信ネットワークを示している。このような分散アーキテクチャの導入により、いくらか利点を供することができる。例えば、遅延差は、メディア配信のネットワーク経路のさまざまな部分で生じることもある。したがって、遅延の差の発生源に依存して、異なる場所での遅延を補償することは有利なものとなる。更に、メディア経路の下り方向のあらゆるUE又はネットワーク・ノードが同期機能性を提供することができるかについては、前もって知られていない。ネットワーク内の異なるノードにおいて同期化機能を導入ことにより、最善の同期化は、異なるネットワーク・ノードの所与の同期能力を達成することができる。更には、UE上の宛先間同期が最終的に達成できる場合であっても、チャネル変更時間は、メディア・ストリームがネットワーク内である程度同期される場合には、より低いものとなる。
図12は、全てのUE1202―1208がメディア・ストリーム1210を受信している概要を示している。これらUEは、あるネットワーク・ノード1212、1214、例えばネットワーク1216、1218のエッジ・ノードに接続される。これらUEの各々は、同期ステータス情報1220、1222をMSAS1224、1226に送信する。これらMSASは、遅延設定指示1228、1230を算出することができ、これらをネットワーク・ノード1212、1214に送信することができる。このことは、UEが(ローカルに)同期されることを可能にする。
異なるネットワーク・ノード1212は、また、メディア・ストリーム1210を同期外(out of sync)で受信することもできる。MSC及びBSC機能性を含む完全な宛先間同期がUE上で実行される場合であっても、これらのネットワーク・ノードを少なくとも同期させることはまた有利となり得る。ネットワーク・ノード1212のうち1つが特定のメディア・ストリームについて他方のネットワーク・ノードに対して1秒の遅れていると仮定する。ネットワーク・ノードについての同期化がない場合、他の全てのネットワーク・ノードの後方にあるあらゆるUEもが、宛先間同期を達成するために、この1秒にわたりバッファしなければならないだろう。これらのネットワーク・ノード1212上の差をバッファリングすることで、これらのUEのチャネル変更時間はその1秒によって減らす。他の利点としては、UE1202、1204のいくつかが宛先間同期を実行することができない場合に、メディア・ストリーム1210をなおも受信するであろう。
ネットワーク・ノード1212は、同期ステータス情報1232を更なるMSAS1234に送信することができる。更なるMSAS1234は、更なる同期設定指示1236を算出し、BSCを収容するネットワーク・ノード1238に送信することができる。メディア経路でのネットワーク・ノードでのバッファリングの利点は、バッファ・メモリの総容量が削減されるということである。即ち、異なるネットワーク・ノード1212は、ネットワーク・ノード1238に収容されるバッファを共有することができる。加えて、メディア・ストリームのダウンストリーム経路上のあらゆるノード(ネットワーク・ノード又はUE)が、宛先間メディア同期についてバッファリングを実行することができない場合には、このメディア・ストリームはなおもある程度同期することができる。
これら異なる宛先間同期は、異なるレベルで発生することができる。 ネットワーク1212において、ネットワーク・ノード1212は、ノード1238のネットワーク内で内部的に同期され、そして、ネットワーク1218において、ネットワーク・ノード1214はネットワーク階層においてより高い、更に別のネットワーク・ノード1240を用いることで同期される。より高いネットワーク階層では、ノードは、メディア・ストリームの経路ではより早いことを意味する。この例では、同期ステータス情報1242をMSAS1244に送信することによって、コア・ネットワーク・ノード1238が同期される。このMSAS1244は、同期設定指示1246を算出し、BSCを備えるネットワーク・ノード1240に送信することができる。このネットワーク・ノード1240は、例えば、メディア・ストリームを異なるネットワーク及びネットワーク運用業者に届けるための配信ポイントでもよい。しかし、ネットワーク1218からは、エッジ・ノード1214はまた、同期ステータス情報1248をMSAS1244に送信し、これによって、ネットワーク・ノード1240内で同一のBSCを使用する。
如何なる一つの実施形態に関して記載した如何なる特徴も、単独で、又は記載した他の特徴と組み合わせて使用することができ、また、如何なる他の実施形態の1又はそれ以上の特徴と組み合わせて使用することができ、又は、如何なる他の実施形態の如何なる組み合せで使用することができることを理解すべきである。本発明の一実施形態は、コンピュータ・システム用のプログラム製品として実施することができる。このプログラム製品におけるプログラムは、実施形態(本願明細書において説明した方法を含む)の機能を定義して、また、様々なコンピュータ可読記憶媒体上に収容することができる。コンピュータ可読記憶媒体の例示は、以下を含むが、これに限定されるものではない。即ち、(i)情報が永続的に格納される非書込可能な記憶媒体(例えば、CD―ROMドライブ、フラッシュ・メモリ、ROMチップ又は如何なるタイプのソリッド・ステート不揮発性半導体メモリによって読み取り可能なCD―ROMディスクのようなコンピュータ内のリードオンリー・メモリ・デバイス)、及び(ii)変更可能な情報が格納される書込可能な記憶媒体(例えば、ディスケット・ドライブ若しくはハードディスク・ドライブ内のフロッピー(登録商標)ディスク、又は如何なるタイプのソリッド・ステート・ランダム・アクセス半導体メモリ、である。
更に、本発明は、IMSに限定されず、ソフト・スイッチ設計に基づいて実施することもできる。これにより、基本ユーザ加入機能、IPセッション管理及び特定のVoIPサービス機能が、完全に、又は部分的にネットワーク内の1又はそれ以上の信頼性のあるアプリケーション・サーバ内で統合される。更に、3GPPのLong Term Evolution(LTE)又は3GPPのService Architecture Evolution(SAE)のネットワークのような他のサービス提供ネットワークを用いて本発明の実施がまた予見される。更に、本発明は上記の実施形態に限定されなず、添付の特許請求の範囲の範囲内で変形することができる。

Claims (16)

  1. 第1のメディア・ストリーム及び第2のメディア・ストリームを同期する方法であって、前記第1メディア・ストリーム及び前記第2メディア・ストリームがネットワーク内の少なくとも1つのメディア供給元によって第1のメディア経路及び第2のメディア経路を通じて1又はそれ以上の端末に伝送され、前記方法が、
    前記第1メディア経路及び前記第2メディア経路における第1の場所に位置する測定モジュールを用いて、前記第1メディア・ストリーム及び前記第2メディア・ストリーム内のメディア・パケットの到達時間に関連付けられるタイミング情報を測定するステップと、
    前記ネットワークにおいて、前記タイミング情報に基づいて少なくとも1つのバッファについてのバッファ指示を生成するステップであって、前記バッファが前記第1メディア経路及び前記第2メディア経路のうち少なくとも1つにおける第2の場所に位置するステップと、
    前記1又はそれ以上の端末におけるメディア・パケットの到達時間が実質的に同期されるように、前記メディア経路を通じて前記1又はそれ以上の端末に伝送される1又はそれ以上のメディア・パケットを遅延させるステップと、
    を含む、方法。
  2. 請求項1に記載の方法において、前記第1メディア経路が前記メディア供給元及び第1の端末の間に設けられ、前記第2メディア経路が前記メディア供給元と第2の端末の間に設けられる、方法。
  3. 請求項1又は2に記載の方法において、前記測定モジュールが、前記1又はそれ以上の端末に位置するか、前記1若しくはそれ以上の端末を前記ネットワークに接続する1若しくはそれ以上のアクセス・ラインに沿った位置に配置され、並びに/又は前記バッファが前記ネットワーク内、好ましくは境界ネットワーク・ノード及び/若しくはアクセス・ネットワーク・ノードに位置する、方法。
  4. 請求項1から3のいずれかに記載の方法において、前記バッファ指示が、同期サーバ好ましくはメディア同期サーバによって生成され、前記測定モジュール及び前記バッファが、同期測定クライアント及び同期バッファリンング・クライアントとしてそれぞれ構成され、前記方法が、更に、
    タイミング情報を前記同期測定クライアントから受信するステップと、
    バッファ指示を前記同期バッファリング・クライアントに伝送するステップと、
    を含む、方法。
  5. 請求項4に記載の方法において、前記バッファ指示が、1若しくはそれ以上の同期設定指示レポート、好ましくはRTCP同期設定指示レポートにより前記同期バッファリング・クライアントに送信され、及び/又は前記タイミング情報が1若しくはそれ以上の同期ステータス情報レポートにより前記同期サーバに送信される、方法。
  6. 請求項5に記載の方法において、前記同期ステータス情報レポートが前記同期バッファリング・クライアントを介して前記同期サーバに送信される、方法。
  7. 請求項6に記載の方法において、前記同期バッファリング・クライアントは、1つの端末から前記同期サーバに送信される同期ステータス情報レポートを修正するように構成され、及び/又は前記同期バッファリング・クライアントは、同期設定指示レポートを端末に転送するように構成される、方法。
  8. 請求項1に記載の方法において、前記第1メディア経路が第1メディア供給元及び1つの端末の間に設けられ、前記第2メディア経路が前記第1メディア供給元又は更なる第2のメディア供給元と前記端末との間に設けられる、方法。
  9. 請求項1に記載の方法において、前記第1測定モジュールがネットワーク・ノード、好ましくは境界ネットワーク・ノード及び/又はアクセス・ネットワーク・ノードに位置し、前記バッファが前記1又はそれ以上の端末に位置するか、前記1又はそれ以上の端末を前記ネットワークに接続する前記1又はそれ以上のアクセス・ラインに沿った位置に配置される、方法。
  10. 請求項1から9のいずれか一項に記載の方法において、前記1又はそれ以上の端末のうち少なくとも1つが、メディア・ストリームにおける前記メディア・パケットの到達時間の変動を測定し、前記到達時間に基づいて変動がバッファリング・ポイントから生じた遅延に関係するかについて判定するように構成される、方法。
  11. 請求項1から9のいずれか一項に記載の方法において、前記バッファ・ポイントが可変遅延バッファを含み、当該可変遅延バッファが前記ネットワークから受信した遅延指示に基づいてメディア・ストリームを遅延させるように構成され、前記遅延が0.5秒と10秒との間、好ましくは1秒と5秒との間で選択され、及び/又は前記バッファが該バッファに接続される2又はそれ以上の端末の間で共有される、方法。
  12. 第1のメディア・ストリーム及び第2のメディア・ストリームを同期するシステムであって、
    第1のメディア・ストリーム及び第2のメディア・ストリームを第1のメディア経路及び第2のメディア経路を通じて1又はそれ以上の端末に伝送する少なくとも1つのメディア供給元と、
    少なくとも1つの測定モジュールが受信する前記第1メディア・ストリーム及び前記第2メディア・ストリーム内のメディア・パケットに関連付けられるタイミング情報を測定する当該少なくとも1つの測定モジュールであって、前記第1メディア経路及び前記第2メディア経路における第1の場所に位置する、測定モジュールと、
    メディア経路を通じて前記1又はそれ以上の端末に伝送されるメディア・パケットを、遅延指示に基づいて遅延させるように構成される少なくとも1つのバッファであって、前記バッファが前記第1メディア経路又は前記第2メディア経路のうち少なくとも1つにおける第2の場所に位置するバッファと、
    前記1又はそれ以上の端末におけるメディア・パケットの到達時間が実質的に同期されるように、前記タイミング情報に基づいて前記少なくとも1つのバッファについてのバッファ指示を生成する同期サーバと、
    を備える、システム。
  13. 請求項12に記載のシステムで使用するためのバッファ・モジュールであって、好ましくは同期バッファリング・クライアントであり、メディア経路を通じて端末に伝送されるメディアを、バッファ指示に基づいて遅延させるように構成され、前記バッファ・モジュールが、
    可変遅延バッファと、
    バッファ指示を受信する受信機であって、前記バッファ指示が前記可変遅延にメディア・ストリームを遅延させる情報を所定の遅延期間にわたり提供する受信機と、
    1又はそれ以上の遅延したメディア・ストリームを1又はそれ以上の端末に伝送する送信機と、
    任意に、ポインタ情報を含むバッファ・リストであって、該ポインタ情報が前記バッファ・モジュールに2又はそれ以上の端末間で前記可変遅延バッファにおける前記メディア・パケットを共有させる、バッファ・リストと、
    を備える、バッファ・モジュール。
  14. 請求項12に記載のシステムで使用するための同期サーバであって、
    1又はそれ以上のメディア・ストリーム内のメディア・パケットの到達時間に関連付けられたタイミング情報を受信する受信機と、
    バッファ指示を生成するように構成されるプロセッサであって、該バッファ指示が前記タイミング情報に基づいて算出される遅延情報を含む、プロセッサと、
    前記バッファ指示を少なくとも1つのバッファに伝送するための送信機と、
    を備える、同期サーバ。
  15. メディア再生のための端末であって、請求項12に記載のシステムにおいて使用されるように構成され、前記端末が、
    前記端末が受信するメディア・パケットの到達時間に関連付けられたタイミング情報を測定するための測定モジュールと、
    タイミング情報を前記ネットワーク内の同期サーバに伝送するための送信機と、
    任意に、メディア・ストリーム内のメディア・パケットの前記到達時間の変動を測定し、該測定に基づいて、変動がバッファリング・ポイントから生じた遅延に関係するかについて判定するように構成される測定ユニットと、
    を備える端末。
  16. コンピュータ上でランするときに、請求項1から11のいずれか一項に記載の方法を実行するように構成されるソフトウェア・コード部を含む、コンピュータ・プログラム。
JP2012550442A 2010-01-27 2011-01-27 メディア・ストリームの同期のための方法、システム及び装置 Active JP5635626B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP10000790 2010-01-27
EP10000790.5 2010-01-27
PCT/EP2011/051143 WO2011092244A1 (en) 2010-01-27 2011-01-27 Method, system and device for synchronization of media streams

Publications (2)

Publication Number Publication Date
JP2013518495A JP2013518495A (ja) 2013-05-20
JP5635626B2 true JP5635626B2 (ja) 2014-12-03

Family

ID=42154669

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012550442A Active JP5635626B2 (ja) 2010-01-27 2011-01-27 メディア・ストリームの同期のための方法、システム及び装置

Country Status (6)

Country Link
US (1) US8839340B2 (ja)
EP (2) EP2529531B1 (ja)
JP (1) JP5635626B2 (ja)
KR (1) KR20120103750A (ja)
CN (1) CN102742249B (ja)
WO (1) WO2011092244A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210153156A1 (en) * 2014-03-24 2021-05-20 Imagination Technologies Limited High definition timing synchronisation function

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120040838A (ko) * 2010-10-20 2012-04-30 주식회사 팬택 끊김 없는 영상을 제공하기 위한 멀티 스크린 플레이 서비스 시스템 및 방법
EP2592842A1 (en) * 2011-11-14 2013-05-15 Accenture Global Services Limited Computer-implemented method, computer system, and computer program product for synchronizing output of media data across a plurality of devices
TW201338528A (zh) * 2012-03-02 2013-09-16 Mstar Semiconductor Inc 數位電視資料處理方法以及使用此數位電視資料處理方法的數位電視系統
JP2015515208A (ja) * 2012-03-23 2015-05-21 トムソン ライセンシングThomson Licensing 相関したメディアプレゼンテーションの同期のためのバッファ管理方法
WO2013144347A1 (en) * 2012-03-29 2013-10-03 Koninklijke Kpn N.V. Marker-based inter-destination media synchronization
US9553756B2 (en) * 2012-06-01 2017-01-24 Koninklijke Kpn N.V. Fingerprint-based inter-destination media synchronization
EP2704449A1 (en) * 2012-08-30 2014-03-05 Thomson Licensing Rendering time control
EP2713609B1 (en) * 2012-09-28 2015-05-06 Stockholms Universitet Holding AB Dynamic delay handling in mobile live video production systems
US10356143B2 (en) * 2012-10-10 2019-07-16 Samsung Electronics Co., Ltd. Method and apparatus for media data delivery control
CN103139608B (zh) * 2013-01-21 2016-03-30 北京酷云互动科技有限公司 远程媒体播放信号时延的检测方法及检测系统
US9182949B2 (en) * 2013-03-15 2015-11-10 Imagine Communications Corp. Systems and methods for controlling branch latency within computing applications
US9800908B2 (en) * 2013-07-09 2017-10-24 Koninklijke Kpn N.V. Synchronized data processing of broadcast streams between receivers, including synchronized data processing between a receiver that is in the process of processing a stream and a receiver that wants to join the stream
US9541947B2 (en) * 2013-08-07 2017-01-10 General Electric Company Time protocol based timing system for time-of-flight instruments
US9300713B2 (en) 2013-08-16 2016-03-29 Qualcomm Incorporated Clock synchronization for multi-processor/multi-chipset solution
JP6349977B2 (ja) * 2013-10-21 2018-07-04 ソニー株式会社 情報処理装置および方法、並びにプログラム
GB201318653D0 (en) 2013-10-22 2013-12-04 Microsoft Corp Adapting a jitter buffer
WO2015102394A1 (en) * 2014-01-02 2015-07-09 Lg Electronics Inc. Broadcast transmission device and operating method thereof, and broadcast reception device and operating method thereof
US10135945B2 (en) * 2014-01-15 2018-11-20 Cisco Technology, Inc. Methods and systems for boundary placement in a data stream
WO2015158368A1 (en) * 2014-04-15 2015-10-22 Telefonaktiebolaget L M Ericsson (Publ) Synchronised social tv
CN104038775B (zh) * 2014-06-05 2018-02-16 Tcl集团股份有限公司 一种频道信息识别方法及装置
US10097874B2 (en) * 2014-06-27 2018-10-09 Qualcomm Incorporated System and method for monitoring media stream buffers of media output devices in order to synchronize media content output
US9538321B2 (en) * 2014-07-18 2017-01-03 Intel IP Corporation Location determination of wireless stations using one-to-many communication techniques
CN104202628B (zh) * 2014-09-22 2017-12-15 北京酷云互动科技有限公司 客户端播放节目的识别系统和方法
US10554719B2 (en) 2014-09-30 2020-02-04 British Telecommunications Public Limited Company Managing streamed communication
US9521057B2 (en) * 2014-10-14 2016-12-13 Amazon Technologies, Inc. Adaptive audio stream with latency compensation
US9295018B1 (en) * 2014-12-17 2016-03-22 Telefonaktiebolaget L M Ericsson (Publ) Communication network nodes and methods performed therein
US10484447B2 (en) * 2014-12-24 2019-11-19 Ribbon Communications Operating Company, Inc. Methods and apparatus for communicating delay information and minimizing delays
CN104580263B (zh) * 2015-02-11 2018-10-02 深圳市云之讯网络技术有限公司 基于ip网络选择最优路径转发媒体流方法
CN104980820B (zh) * 2015-06-17 2018-09-18 小米科技有限责任公司 多媒体文件播放方法及装置
CN105611314A (zh) * 2015-12-25 2016-05-25 北京奇虎科技有限公司 获取电视节目相关信息的方法、装置及系统
US10764473B2 (en) * 2016-01-14 2020-09-01 Disney Enterprises, Inc. Automatically synchronizing multiple real-time video sources
CN107017958B (zh) * 2016-01-28 2019-02-15 浙江宇视科技有限公司 一种基于ntp的时间同步方法及相应系统
US10454982B1 (en) 2016-03-18 2019-10-22 Audio Fusion Systems, Inc. Monitor mixing system that distributes real-time multichannel audio over a wireless digital network
CN105847926A (zh) * 2016-03-31 2016-08-10 乐视控股(北京)有限公司 一种多媒体数据的同步播放方法及装置
US10437829B2 (en) 2016-05-09 2019-10-08 Level 3 Communications, Llc Monitoring network traffic to determine similar content
SE541208C2 (en) * 2016-07-04 2019-04-30 Znipe Esports AB Methods and nodes for synchronized streaming of a first and a second data stream
CN110089120B (zh) * 2016-08-25 2022-07-15 迪泽Sa 用于在多个远程设备上同步播放媒体项的系统和方法
US10290303B2 (en) * 2016-08-25 2019-05-14 Google Llc Audio compensation techniques for network outages
US10200424B2 (en) * 2016-09-28 2019-02-05 Gogo Llc Seamless delivery of real-time media stream with intermittent signal loss
CN106411447B (zh) * 2016-10-08 2018-12-11 广东欧珀移动通信有限公司 播放控制方法、装置及终端
CN106411448B (zh) * 2016-10-08 2019-02-01 Oppo广东移动通信有限公司 播放控制方法、装置及终端
US10225161B2 (en) * 2016-10-31 2019-03-05 Accedian Networks Inc. Precise statistics computation for communication networks
US10317511B2 (en) * 2016-11-15 2019-06-11 Veoneer Us, Inc. Systems and methods for synchronizing processor operations over a communications network
US20180367839A1 (en) * 2017-06-16 2018-12-20 Oohms Ny Llc Method and system for synchronization of audio content for a remotely displayed video
KR102391799B1 (ko) * 2017-10-19 2022-04-29 삼성전자주식회사 유니캐스트 기반 멀티미디어 서비스 방법 및 장치
EP3750321A1 (en) * 2018-04-24 2020-12-16 Google LLC Methods, systems, and media for synchronized media content playback on multiple devices
CN111327657A (zh) * 2018-12-14 2020-06-23 诺基亚通信公司 数据缓冲的方法、设备和计算机可读介质
CN112671696B (zh) * 2019-10-16 2023-05-12 华为技术有限公司 报文传输方法、装置、计算机设备以及计算机存储介质
CN113364726A (zh) * 2020-03-05 2021-09-07 华为技术有限公司 一种分布式数据传输的方法、装置和系统
EP4131974A4 (en) * 2020-03-31 2023-09-20 Sony Group Corporation MEDICAL CONTROL SYSTEM, IMAGE PROCESSING SERVER, IMAGE CONVERSION APPARATUS AND CONTROL METHOD
CN112135177B (zh) * 2020-09-25 2022-10-21 北京猿力未来科技有限公司 数据流同步方法及装置
KR102445069B1 (ko) * 2020-12-01 2022-09-21 주식회사 마젠타컴퍼니 복수의 미디어 소스를 동기화하여 통합 전송하는 시스템 및 그 방법
WO2022138998A1 (ko) * 2020-12-21 2022-06-30 주식회사 팔콘 멀티캐스팅 및 멀티 센싱 기반 긴급 상황 감지가 가능한 스마트 위성 안테나를 포함하는 장치 및 동작 방법
CN113473162B (zh) * 2021-04-06 2023-11-03 北京沃东天骏信息技术有限公司 一种媒体流的播放方法、装置、设备和计算机存储介质
CN113450794B (zh) * 2021-06-25 2023-09-05 北京百度网讯科技有限公司 导航播报的检测方法、装置、电子设备和介质
US11889447B2 (en) * 2021-08-03 2024-01-30 Qualcomm Incorporated Supporting inter-media synchronization in wireless communications
WO2023129277A1 (en) * 2021-12-30 2023-07-06 Microsoft Technology Licensing, Llc Packet buffering with a common time-indexed data store across packet streams
US20230216794A1 (en) * 2021-12-30 2023-07-06 Microsoft Technology Licensing, Llc Packet buffering with a common time-indexed data store across packet streams
CN116567794A (zh) * 2022-01-30 2023-08-08 华为技术有限公司 一种多流同步的方法和装置
CN115474083B (zh) * 2022-11-02 2023-03-14 灵长智能科技(杭州)有限公司 一种多路音视频同步直播方法和系统
WO2024098347A1 (zh) * 2022-11-10 2024-05-16 北京小米移动软件有限公司 数据流同步方法、装置、通信设备和存储介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2682244B1 (fr) * 1991-10-04 1995-01-13 Cit Alcatel Dispositif de synchronisation pour equipement d'extremite d'un reseau de telecommunications numerique a transfert en mode asynchrone.
US5623483A (en) * 1995-05-11 1997-04-22 Lucent Technologies Inc. Synchronization system for networked multimedia streams
EP1057337B1 (en) * 1998-02-27 2003-04-23 Ridgeway Systems and Software Ltd. Audio-video packet synchronisation at nework gateway
GB0000873D0 (en) * 2000-01-14 2000-03-08 Koninkl Philips Electronics Nv Interconnection of audio/video devices
JP3417392B2 (ja) * 2000-09-08 2003-06-16 ヤマハ株式会社 同期制御装置
US7333513B2 (en) * 2001-10-09 2008-02-19 Broadcom Corporation Method, system, and computer program product for synchronizing voice traffic with minimum latency
US7133362B2 (en) * 2001-11-14 2006-11-07 Microsoft Corporation Intelligent buffering process for network conference video
DE60211157T2 (de) 2002-09-06 2007-02-08 Sony Deutschland Gmbh Synchrones Abspielen von Medien-Paketen
US7289451B2 (en) * 2002-10-25 2007-10-30 Telefonaktiebolaget Lm Ericsson (Publ) Delay trading between communication links
CN100442858C (zh) * 2005-10-11 2008-12-10 华为技术有限公司 分组网络中多媒体实时传输的唇同步方法及其装置
JP4653011B2 (ja) 2006-05-01 2011-03-16 パナソニック株式会社 中継装置及び中継方法
EP1860866A1 (en) * 2006-05-26 2007-11-28 British Telecommunications Public Limited Company Audio-visual reception
TW200835303A (en) * 2006-09-07 2008-08-16 Avocent Huntsville Corp Point-to-multipoint high definition multimedia transmitter and receiver
CN101179484A (zh) * 2006-11-09 2008-05-14 华为技术有限公司 一种不同媒体流间的同步方法及系统
US7693190B2 (en) * 2006-11-22 2010-04-06 Cisco Technology, Inc. Lip synchronization for audio/video transmissions over a network
US8769591B2 (en) * 2007-02-12 2014-07-01 Cisco Technology, Inc. Fast channel change on a bandwidth constrained network
PL2206316T3 (pl) 2007-10-23 2014-01-31 Koninklijke Kpn Nv Sposób i system synchronizacji grupy terminali końcowych
US9237179B2 (en) * 2007-12-05 2016-01-12 Koninklijke Kpn N.V. Method and system for synchronizing the output of terminals
US20090257455A1 (en) * 2008-04-15 2009-10-15 Tellabs Operations, Inc. Method and apparatus for synchronizing timing of signal packets

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210153156A1 (en) * 2014-03-24 2021-05-20 Imagination Technologies Limited High definition timing synchronisation function

Also Published As

Publication number Publication date
KR20120103750A (ko) 2012-09-19
JP2013518495A (ja) 2013-05-20
WO2011092244A1 (en) 2011-08-04
EP3627798A1 (en) 2020-03-25
EP2529531B1 (en) 2019-10-09
US20120324520A1 (en) 2012-12-20
CN102742249A (zh) 2012-10-17
US8839340B2 (en) 2014-09-16
CN102742249B (zh) 2017-04-12
EP2529531A1 (en) 2012-12-05

Similar Documents

Publication Publication Date Title
JP5635626B2 (ja) メディア・ストリームの同期のための方法、システム及び装置
JP5284534B2 (ja) 変更されたストリーム同期
US9237179B2 (en) Method and system for synchronizing the output of terminals
US9973345B2 (en) Calculating and signaling segment availability times for segments of media data
EP2832109B1 (en) Marker-based inter-destination media synchronization
US8514705B2 (en) Method and system for synchronizing a group of end-terminals
US11095929B2 (en) Video distribution synchronization
JP5675807B2 (ja) 動的なrtcpリレー
Stokking et al. IPTV inter-destination synchronization: A network-based approach
Boronat et al. The need for inter-destination synchronization for emerging social interactive multimedia applications
EP2068528A1 (en) Method and system for synchronizing the output of end-terminals
Montagud et al. Implementation and evaluation of an M/S scheme for inter-destination multimedia synchronization (IDMS)
EP2164224A1 (en) Method and system for synchronizing the output of end-terminals

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140821

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140827

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: 20140917

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141016

R150 Certificate of patent or registration of utility model

Ref document number: 5635626

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250