説明

変更されたストリーム同期

少なくとも第1のおよび第2のストリームの発信元間同期の方法およびシステムが記載される。第2のストリームは、入力ストリームとして第1のストリームを用いるメディアストリーム変更ユニットの出力ストリームである。方法は以下のステップを含む。第1の同期ポイントに到達する第1のストリームにおけるパケットの第1の到達時刻情報と、第2の同期ポイントに到達する第2のストリームにおけるパケットの第2の到達時刻情報と、を提供するステップ。前記入力ストリームおよび前記出力ストリームの間の同期関係に関する同期相関情報を提供するステップ。および、前記第1のおよび前記第2の到達時刻情報および前記同期相関情報に基づいて、遅延情報を計算するステップ。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、関連するストリームの送信先間同期の方法およびシステムに関する。本発明はさらに、そのようなシステムにおいて使用する同期ユニット、同期点、到達時刻情報調整モジュールおよびデータ構造、およびそのような方法を使用するコンピュータプログラム製品に関する。
【背景技術】
【0002】
ボイスオーバーIP(VoIP)およびインターネットプロトコルテレビジョン(IPTV)などの新しいマルチメディア技術が、あらゆる範囲で新しいマルチメディアサービスを生み出す。これらのサービスの1つのタイプは、ユーザのグループが、同じテレビチャンネルを別々に見て、テキスト、音声、および/またはビデオを用いて互いに通信することを可能にする。これらのサービスの他のタイプは、対話型テレビジョン経験を提供する。例えば、テレビジョンのクイズ放送で、放送された問題に視聴者が家庭で答えを入力し、番組に参加することなどである。そのようなサービスは、端末の出力信号がグループ内のすべてのユーザに同時に送信されることを必要とする。言い換えれば、グループにおけるディスプレイまたはプレイアウト装置、例えばテレビジョン、PDA、モバイル装置、PCまたはそれらの組み合わせの、異なる送信先に対応する出力は、同期すべきであるということである。
【0003】
IPTVシステムにおいては、TVチャンネル信号は典型的には、ヘッドエンド、エッジルータなどのネットワークノードおよびそのようなサービスの加入者の端末へのアクセスノードを介したオペレータの高帯域幅IPネットワーク上を1つ以上のパケット化されたストリームとして送信される。そのようなストリームの送信の間、パケットは、送信の遅延、ネットワークルートの相違、およびコード化ならびにコード解除の遅延の相違などの、ネットワークにおける未知の遅延を被る。結果として、第1の端末(第1の送信先)で受信された音声および映像ストリームのパケットと、別の第2の端末(第2の送信先)で受信されたそれらとの間の時間的な関係が乱されるであろう。
【0004】
IPTVコンテンツを端末にストリーミングするためには、通常はリアルタイムトランスポートプロトコル(RTP)が用いられる。RTPはシーケンスの番号付けおよびタイムスタンプ作成を提供する。RTPを用いることで、同じ最終端末で終端する関連ストリームの間(ストリーム間同期)の、または、異なる最終端末で終端する関連ストリームの間(グループ同期または送信先間同期)の、1つのストリーム内の時間的な関係(ストリーム内同期)が回復する。F.Boronatらによる論文「マルチメディアグループおよびストリーム間同期技術:比較研究(Multimedia group and inter−stream synchronization techniques:A comparative study)」(Elsevier Information Systems 34(2009)108〜131ページ)は、知られている送信先間同期技術の総合的な概観を提供し、それは3つの主要なカテゴリに分けることができる。
【0005】
「同期マエストロスキーム(Synchronization Maestro Scheme)」(SMS)においては、中央の同期マスターがグループ内のすべての端末からタイミング情報を集め、制御パケットを端末に配信することによって出力タイミングを調整する。「マスター−スレーブ受信器スキーム(Master−Slave Receiver Scheme)」(MSRS)においては、受信器(端末)はマスター受信器とスレーブ受信器に分類される。マスター受信器はその出力タイミングをスレーブ受信器にマルチキャストし、スレーブ受信器はそれに従ってスレーブ受信器のパケットの出力タイミングを調整する。「配信制御スキーム(Distributed Control Scheme」(DCS)においては、各端末(受信器)はグループ内のすべての他の端末にすべてのタイミング情報をマルチキャストし、端末は正確な出力タイミングを計算するように構成される。これらのスキームは、メディアストリームの発信元または受信器端末のいずれかで同期が発生するという点で共通する。
【0006】
同時に係属する欧州特許出願には、発信元と受信器の間のストリームの通路に沿ったどこかでネットワークノードが同期化される、さらなる送信先間同期スキームが記載される。この方法は特に、オペレータネットワークにストリーム送信先を接続するアクセス回線における相違に由来するストリーム伝播時間の小さな相違を許容する、大規模な配置およびサービスに適している。
【0007】
参考の送信先間同期技術の大部分は、端末におけるメディアストリーム受信におけるタイミング情報(例えば、RTPタイムスタンプ、特定のある時刻において受信されたRTPメディアストリームのRTPシーケンスナンバ、トランスポートストリームにおける1つ以上の等価パラメータ)を利用する。異なる受信器のタイミング情報を比較することによって、適切なストリーム調整が計算されることができる。調整の例は、受信器側においてバッファを用いることによる、受信されたストリームのプレイアウト時刻の遅延であってもよい。
【発明の概要】
【発明が解決しようとする課題】
【0008】
これらの知られている同期スキームに関連する1つの問題は、これらのスキームが、発信元と受信器の間のストリームがコンテンツ準備および/またはコンテンツ再生成の目的によって変更される状況を処理するようには設計されていないことである。
【0009】
ストリームの変更は、多くの状況において必要でありうる、および/または有利でありうる。例えば、効率的な配信のためにメディアストリームを準備するために、メディアストリームはストリーム受信器またはアクセス線の、解像度の変更(例えば、HDからSDへの変更またはより低いビットレートへの変更)などの特定の要請に適応してもよい。そのような状況において、トランスレータまたはトランスコーダと呼ばれるストリーム変更ユニットがストリームの通路に配置されてもよい。変更されたトランスコーダ出力ストリームは、オリジナルの(変更されていない)入力ストリームと比較して異なるタイムスタンプ、シーケンスナンバ、または他のタイミング情報を有してもよい。
【0010】
メディアストリームは特定の顧客の要求のためにカスタマイズされてもよい。画面外のボイス、サブタイトル、ピクチャインピクチャをメインコンテンツストリームに加える必要があってもよい。これは典型的には、ミクサと呼ばれるストリーム変更ユニットによって行われる。さらに、ネットワークドメインがクロスする場合は、ストリームは、再生器(re−generator)ユニットを用いて再生されてもよい。すべてのこれらのコンテンツ準備および再生スキームは、ストリームにおけるタイミング情報を変化させ、それによって知られている送信先間同期スキームを、信頼できないものに、または使用不可能なものにさえする。したがって、従来技術においては、変更されたストリームと変更されていないストリームの間の、または2つの異なって変更されたストリームの間の、送信先間同期を可能にする方法およびシステムが必要となる。
【課題を解決するための手段】
【0011】
従来技術において知られている同期スキームの欠点の少なくとも1つを低減するか取り除くこと、および、入力ストリームとして第1のストリームを使用するメディアストリーム変更ユニットの出力ストリームが第2のストリームであるかもしれない、少なくとも前記第1のおよび前記第2のストリームの送信先間同期の方法を提供することが本発明の目的である。方法は以下のステップを含んでもよい。第1の同期ポイントに到達する第1のストリームにおけるパケットの第1の到達時刻情報と、第2の同期ポイントに到達する第2のストリームにおけるパケットの第2の到達時刻情報と、を提供すること。前記入力ストリームおよび前記出力ストリームの間の同期関係に関する同期相関情報を提供すること。および、前記第1のおよび前記第2の到達時刻情報および前記同期相関情報に基づいて、遅延情報を計算すること。さらなる実施形態において、方法はさらに、少なくとも前記第1のまたは前記第2の同期ポイントに前記遅延情報を提供し、前記第1のおよび前記第2の同期ポイントによってそれぞれ出力される前記第1のおよび前記第2のストリームが実質的に同期するように、少なくとも前記第1のおよび前記第2の同期ポイントがストリームの出力を遅延させることを可能にする、ステップを含んでもよい。
【0012】
同期相関情報を提供することによって、異なる機種環境の視聴者の集合、異なる端末を用いる視聴者の集合、および/または異なるサービス要求を有する視聴者の集合に向けられた関連するストリームが、なおも同期することができる。本発明はしたがって、異なる機種環境のネットワークにおける視聴者のグループが、同期された方式でメディアストリームを見ることを可能にする。
【0013】
この文脈において、到達時刻とは通常、同期ポイントがメディアストリームのある部分を受信する時刻である。本発明の文脈において、当業者には、パケットが完全に到達する時間がここで用いられる必要がないことが理解される。到達時刻情報として用いられる現実の時刻はわずかに変化し、それは同期ポイントが到達時刻を決定するために用いる正確なポイントに依存する。この時刻は、例えばジッタバッファにパケットを配置する前の、到達時を直接用いてもよい。しかしながら、メディアパケットを取り扱う過程における遅れたポイント内にあってもよく、例えばコード解除過程の直前またはトランスレーション過程の直前などにあってもよい。メディアコンテンツのそのある特定の部分の現実の提示の前に、同期ポイントは、メディアパケットを処理するために必要な時間を知っていてもよく、到達時刻情報として現実の提示時間を使用してもよい。
【0014】
一実施形態では、前記第1のおよび第2のストリームは少なくとも第1のおよび第2の同期ポイントによって出力され、前記同期ポイントは前記同期ポイントを同期させるために少なくとも1つの同期ユニットに接続される。
【0015】
他の実施形態では、遅延情報を計算する前記ステップは、第1の到達時刻情報と第2の到達時刻情報の間の共通のタイムラインを達成するように、第1のおよび/または第2の到達時刻情報を調整する調整ステップを有してもよい。前記調整ステップは、同期相関情報の少なくとも一部に基づいてもよい。
【0016】
一実施形態では、前記調整ステップは到達時刻情報調整モジュールによって実行され、前記モジュールは同期ユニットの一部であり、前記同期ユニットは同期相関情報を提供される。
【0017】
他の実施形態では、前記調整ステップは同期ポイントにおいて実行されてもよく、前記同期ポイントは到達時刻情報調整モジュールを有してもよい。そのような到達時刻情報調整モジュールは同期相関情報の少なくとも一部を提供されてもよく、同期ユニットは調整された第2の到達時刻情報を提供される。
【0018】
さらに他の実施形態では、調整ステップはネットワーク要素において実施されてもよく、前記ネットワーク要素は到達時刻情報を受信するように構成されてもよい。ネットワーク要素は到達時刻情報調整モジュールをさらに有してもよく、到達時刻情報調整モジュールは、同期相関情報の少なくとも一部を提供され、同期ユニットは調整された第2の到達時刻情報を提供される。
【0019】
一実施形態では、前記同期ポイントは端末またはネットワークノードであってもよく、好ましくはアクセスノードであってもよい。さらなる変形例では、ストリーム変更ユニットはトランスレータまたはミクサであってもよく、同期ユニットは同期ポイントまたはサーバ内に含まれてもよい。
【0020】
さらなる形態では、本発明は同期ユニットに関連してもよく、好ましくは、少なくとも、第1のメディアストリームを受信する第1の同期ポイントおよび第2のメディアストリームを受信する第2の同期ポイントの出力を同期させる同期サーバに関連してもよい。前記第2のストリームは、入力ストリームとして第1のストリームを用いるメディアストリーム変更ユニットの出力ストリームであってもよい。同期ユニットは、第1の同期ポイントに到達するストリームにおけるパケットの第1の到達時刻情報および、第2の同期ポイントに到達する第2のストリームにおけるパケットの第2の到達時刻情報を受信する手段、前記入力ストリームと前記出力ストリームの間の同期関係に関する同期相関情報を提供する手段、および、前記第1のおよび前記第2の到達時刻情報および前記同期相関情報に基づいて遅延情報を計算する手段を有してもよい。
【0021】
他の実施形態では、同期ユニットは、受信されたストリームが実質的に同期するように、前記第1のおよび前記第2の同期ポイントにおける1つ以上の可変遅延ユニットが受信されたストリームの出力時間を遅延させることを可能にする遅延情報を、前記第1のおよび前記第2の同期ポイントに提供する手段を有してもよい。
【0022】
さらなる形態では、本発明は少なくとも第1のおよび第2の同期ポイントの出力の送信先間同期システムに関してもよい。システムは、メディアストリームを配信するコンテンツ配信サーバ、入力メディアストリームを変更して、変更された出力メディアストリームにするように構成され、前記入力ストリームと前記出力ストリームの間の同期関係に関する同期相関情報を提供するように構成されたストリーム変更ユニット、および、上記の少なくとも1つの同期ユニットを含んでもよい。
【0023】
さらなる形態では、本発明は上記システムにおいて使用する同期ポイントおよびメディアストリーム変更ユニットに関してもよい。さらに別の形態では、本発明は上記システムにおいて使用するデータ構造、好ましくはRTCP拡張報告データ構造に関してもよい。前記データ構造は、メディア同期ポイントに到達するストリームにおけるパケット、またはメディアストリーム変更ユニットに到達するストリームにおけるパケット、または前記変更ユニットによって送信されるストリームにおけるパケットに関連づけられた同期ステータス情報を信号化する前記システムによって使用される。また、前記データ構造は、前記データ構造の発信元を識別する識別子、少なくとも1つのタイムスタンプ、好ましくはRTPおよび/またはNTPタイムスタンプ、および/またはメディアストリーム相関識別子を少なくとも含み、前記データ構造は、前記同期ユニットが、前記システムにおけるメディア同期ポイントに関連するメディアストリームを同期させることを可能にする。
【0024】
本発明はまた、コンピュータのメモリにおいて実行されるとき、上記の方法ステップにおいて記載されたような方法ステップを実行するように構成されたソフトウェアコード部分を含む、コンピュータプログラム製品にも関してよい。
【0025】
本発明はさらに、本発明による実施形態を概略的に示す添付の図面を参照して記載される。本発明はこれらの特定の実施形態にいかなる意味でも制約されるものではないことが理解されるであろう。
【図面の簡単な説明】
【0026】
【図1】複数のストリーム変更ユニットを含み、関連するストリームを異なる位置に配信することが可能な、異なる機種環境のネットワークトポロジの例示的な実施形態を示す図である。
【図2】本発明の一実施形態によるシステムを示す図である。
【図3】本発明によるシステムに関連するフロー図である。
【図4】本発明の他の実施形態によるシステムを示す図である。
【図5】本発明の一実施形態による送信先間同期スキームの実施例を示す図である。
【図6】本発明の一実施形態による例示的なRTCP拡張報告(RTCP eXtended Report)を示す図である。
【図7】本発明の他の実施形態によるメディアストリームを同期させるRTCPメッセージの使用を示す図である。
【発明を実施するための形態】
【0027】
図1は、ネットワーク全体のユーザ装置にコンテンツを配信するためのマルチメディア配信システム100の例示的な実施形態を示す。ネットワークは異なる機種環境のトポロジを有し、複数のストリーム変更モジュールを含み、関連するストリームを異なる位置に配信することが可能である。この実施形態では、パケットを含むメディアストリームは複数のユーザ装置に配信され、メディアストリームは異なるユーザ装置に応じて異なる構成をとる。
【0028】
本出願の文脈におけるパケットは、タイミング情報、例えばタイムスタンプに関連づけられたメディアストリームの1つ(すなわち1単位)である。そのようなパケットの一例は1つ以上のタイムスタンプを有するRTPパケットである。他の例は、1つ以上の表示タイムスタンプを含むトランスポートストリーム(TS)パケットなどのMPEGタイプパケットである。
【0029】
タイミング情報を含む任意のメディアパケットフォーマットが同期目的のために用いられてもよいことを、当業者は理解する。タイミング情報はトランスポートコンテナ(トランスポートプロトコル)の部分であってもよく、それは標準的なものか専有のものかのいずれかの、コンテンツの搬送のために用いられる。代わりに、または加えて、それは実在のコンテンツの部分であってもよく、例えばコンテンツをコード化するためのコード化スキームにおいて用いられるタイミング情報であってもよい。
【0030】
図1におけるマルチメディア配信システムはメディアストリーム生成器101を含む。それは例えば、1つ以上のネットワーク、例えばIPネットワークを介して、メディアストリームを異なるユーザ機器(UE)106−109に配信することが可能なサーバを含む。UEまたは端末はプレイアウト装置またはそれに接続された装置(例えばセットトップボックス)に関連してもよい。そのような装置には、例えば携帯電話、テレビジョンセット、IP電話、ゲーム操作盤、スマート計量装置などが挙げられてもよいが、該計量は、同期化されたストリームに応じた他の自動化された動作、例えば同期化された信号に応じた複数の計量装置の自動化された計量などであってもよい。
【0031】
マルチメディア配信システムは様々なネットワーク要素を有してよく、該要素はメディアストリームにおけるタイミング情報が変更されるように、該メディアストリーム上である動作を実行する。そのようなネットワークエレメントは、以降では概してストリーム変更ユニットと呼ばれる。図1の実施形態では、システムは様々なストリーム変更ユニット、例えば第1のトランスコーダ102、第2のトランスコーダ103、およびミクサ104などを含む。サーバ105は代替のおよび/または追加の基本ストリーム105をミクサに配信してもよい。このサーバ105は、例えば代替の音声(異なる言語、監督のコメントまたはサラウンド音響)、代替のサブタイトル、または代替の映像(例えば、話し言葉を書き言葉に翻訳するサイナー(signer))を配信してもよい。
【0032】
メディアサーバ101によって配信されるオリジナルのメディアストリーム110は、IP上のUDP上のRTPを用いてネットワーク中に搬送されるMPEG4コード化を伴うビデオオンデマンド(VoD)ストリームであってもよい。このオリジナルのメディアストリーム110は、MPEG2コード化のみをサポートするUE2 107の利益のためにMPEG2コード化されたストリーム内に、オリジナルのMPEG4コード化されたストリームをトランスコードする第1のトランスコーダ102によって、変更(すなわち、トランスコード)される。トランスコードされたメディアストリーム112は、IP上のUDP上のRTPを用いてUE2にさらに搬送される。
【0033】
第2のトランスコーダ103はオリジナルのメディアストリーム110をトランスコードして、現実のコード化スキームが変化しないオリジナルのメディアストリームによって用いられるコンテナフォーマットとは異なるコンテナフォーマットを有する、変更されたメディアストリームにしてもよい。第2のトランスコーダ103は、UDP上で直接搬送されるMPEGトランスポートストリームを用いるUE3 108にネットワーク中でMPEG4にコード化されるメディアストリームを、例えば配信してもよい。さらに、ミクサ104は1つ以上の追加の基本ストリームをオリジナルのメディアストリームに追加してもよく、オリジナルのメディアストリーム内の1つ以上の基本メディアストリームを1つ以上の代替の基本ストリームに置き換えてもよい。これらの追加の、または代替の基本ストリームはIP上のUDP上のRTPを用いてサーバ105によって配信される。したがって、ミクサ104は、ミックスされたメディアストリーム114を、IP上のUDP上のRTP上のMPEGを用いて、UE4に配信する。
【0034】
図1に記載のマルチメディア配信システムにおいて、オリジナルのメディアストリーム110は、タイミング情報を含むトランスポートプロトコルを使用してもよい。一実施形態では、RTPプロトコルはトランスポート機構として用いられてもよい。RTPは、メディアストリームを同期化するタイミング情報として用いられてもよいRTPタイムスタンプを用いる。
【0035】
第1のトランスコーダ102はオリジナルのストリーム110をコード解除して、メディアを再コード化(例えばMPEG4からMPEG2に)してもよい。したがって、それは、UE2 107への送信の開始を示すランダムRTPタイムスタンプを用いて変更されたメディアストリームを送信するであろう。したがって、同じトランスポートプロトコル(IP上のUDP上のRTP)が用いられていても、出ていくメディアストリームのタイムスタンプは入ってくるメディアストリームのタイムスタンプとは異なる。
【0036】
第2のトランスコーダ103はオリジナルのストリーム110をコード解除せず、異なるトランスポートコンテナを用いるUE3 108にメディアストリーム113を送信する。例えば、UDP上のMPEGトランスポートストリーム(TS)はコンテンツをUE3に送信するように用いられる。これらのMPEG TSパケットは、パケットが表示のために示されるべき瞬間を表示するための、いわゆるプレゼンテーションタイムスタンプ(PTS)の形態でタイミング情報を含んでもよい。たとえ、入ってくるメディアストリームと出ていくメディアストリームの間の現実のコード化が変化しないままであったとしても、これらのPTSはオリジナルのメディアストリーム110のRTPタイムスタンプとは異なる。
【0037】
ミクサ104は、メディアストリーム111における1つ以上の基本ストリームをオリジナルのメディアストリーム110とミックスすることができる。その後、ミクサ104はミックスされたメディアストリーム114をネットワークを介してUE4 109に送信してもよい。ミクサが新しいメディアストリームを生成するとき、ミクサはこのストリームをUE4に送信する開始時刻として、無作為に生成された新しいRTPタイムスタンプを使用し、入力ストリーム110に用いられるコード化およびトランスポートスキームが、ミックスされた出力ストリーム114に用いられるコード化およびトランスポートスキームと同じである。
【0038】
さらにいかなる測定もない場合は、UEにおけるプレイアウトの同期は不可能である。というのは、ネットワークにおけるコンテンツ変更ユニットはストリームにおけるタイミング情報を変化させ、発信元とUEのタイムスタンプを互いに一致させなくするためである。この理由は、メディアサーバ101、トランスコーダ102および103、およびミクサ104がそれぞれ開始時刻として無作為なタイムスタンプを選ぶためである。この同じ問題がミクサに存在する。ミクサは、オリジナルのメディアサーバ101と、他の発信元、すなわち追加のおよび代替の基本ストリーム105を有するメディアサーバの両方から、メディアストリームを受信する。上記の説明のとおり、これらのメディアストリームにおけるタイムスタンプは相関づけされない。
【0039】
図2は、メディアストリームを同期させるための、第1の同期ポイント205および第2の同期ポイント208を有するマルチメディア配信システム200の概略図を示す。同期ポイントとは、同期情報(例えば到達時刻情報)が決定されるストリームの通路における(論理的または物理的な)ポイントである。同期ポイントはネットワークに接続されるかネットワーク内に組み込まれた任意の物理的装置に含まれてもよい。同期ポイントは、例えばネットワークノード、例えばアクセスノード(例えばデジタル加入者線アクセスマルチプレクサ(DSLAM)、ケーブルモデム終端システム(CMTS))、光アクセスノードまたはエッジルータまたはヘッドエンドなどに関連してもよい。代替として、同期ポイントがテレビジョン、パーソナルコンピュータ、ラップトップ、ネットブック、パーソナルデジタルアシスタント、またはメディアストリームを取り扱うことが可能な任意の他の装置に接続されたセットトップボックスとして形成されてもよい。
【0040】
マルチメディア配信システムは、メディアストリーム発信源201、例えばビデオオンデマンドストリームまたはライブマルチキャストテレビジョン放送を配信する、例えばメディアサーバを含んでもよい。このメディア発信源201はオリジナルの第1のメディアストリーム212をネットワーク211を介して同期ポイントに送信してもよい。第1の同期ポイント205は、いかなる変更もないオリジナルのメディアストリーム212を受信してもよい。しかしながら、第2の同期ポイント208は、同じコンテンツであるが例えば異なるフォーマットであるコンテンツを有するストリームを受信してもよい。したがって、第2の同期ポイント208は、メディアストリーム変更ユニット202によって生成された、変更された第2のメディアストリーム213を受信する。メディアストリーム変更ユニット202は、オリジナルのメディアストリーム212を受信し、変更されたメディアストリーム213を生成する。
【0041】
第1のおよび第2のストリーム同期ポイント205、208は、それぞれ第1のおよび第2のメディアストリーム212、213の間の送信先間同期(またはグループ同期)を提供するように構成されてもよい。この目的のために、メディアストリーム同期ポイントはメディア同期ユニット204、例えばメディア同期アプリケーションサーバ(MSAS)に接続される。第1のおよび第2のストリーム同期ポイント205、208は第1のおよび第2の同期クライアント207、210と、例えば変化可能な遅延バッファ206、209を含む第1のおよび第2の変化可能な遅延ユニットとを、それぞれ含んでよい。第1のおよび第2の同期クライアント207、210は、以下により詳細に説明されるように、MSAS204と同期情報を交換するように構成される。
【0042】
メディアストリーム変更ユニット202は、メディアストリーム変更ユニットと関連づけられた第3の同期クライアントSC’203をさらに含んでもよい。同期クライアント207、210、203は、例えば信号化経路214を用いてMSAS204とメッセージを交換する。これらの信号化メッセージは、メディア配信において用いられる同じネットワーク211上で搬送されてもよい。代替として、メッセージは同様に他のネットワーク上で搬送されてもよい。以下の説明において、信号化経路214は同期参照ポイントとみなされる。
【0043】
この例において、オリジナルのメディアストリーム212は、例えば、UDPプロトコルを用いてIPネットワーク上でRTPにおいて搬送されるビデオストリームに関連することができる。その場合には、オリジナルのメディアストリーム212におけるRTPパケットはメディアストリーム発信元201によって生成されるRTPタイムスタンプおよびRTPプロトコルにおいて定義された同期発信元(SSRC)識別子を含むことができる。
【0044】
変更されたストリーム213は、オリジナルのメディアストリーム212と同じコンテンツであるがメディアストリーム変更ユニット202によって変更されているコンテンツを有してもよい。変更は、図1を参照にした上記のような変更動作であってもよく、例えば、オリジナルのストリームが高帯域幅高解像度(HD)ストリームであってもよく、変更されたストリームが低帯域幅標準解像度(SD)であってもよい。他の変更は、例えば、ネットワーク内の1つ以上のストリーム同期ポイントによってサポートされるデジタル権利管理(DRM)システムに関連する暗号化スキームの適用であってもよい。この変更は再発信(re−origination)に関してもよい。再発信は、メディアストリームがネットワークの境界を超えた場合、例えば、IPTVプロバイダが1つ以上のプライベートIPTVネットワークと同様にインターネット上で有効なメディアストリームを提供することを欲した場合に提供される。他の変更は、ミックスに基づく変更を含んでもよい。それは例えば、ビデオストリームにおいて手話を実行する人を含めること、あるいは、異なるメディアコンテナにおいてストリームを再送信すること、例えば、RTPを用いるかわりにMPEGトランスポートストリーム(TS)を用いることである。
【0045】
変更されたメディアストリーム213におけるRTPパケットは、オリジナルのメディアストリーム212におけるそれらと比較して異なるSSRC識別子と異なるRTPタイムスタンプを有してもよい。IETF RTC 3550によれば、SSRC識別子とRTPタイムスタンプはRTPパケットにおいて32ビットヘッダフィールドである。各メディアストリームにおいて、RTPタイムスタンプの開始時間は無作為に選択されるべきである。さらに、SSRCは無作為に選ばれた値であり、それはグローバルに一意的であることを意味している。知られている送信先間同期スキームにおいて、同期は各ストリーム同期ポイントへの信号化タイムスタンプ情報によって達成されることができる。しかしながら、第1のおよび第2のストリーム212、213におけるRTPタイムスタンプは異なるため、第1のおよび第2の同期ポイントにおけるメディアストリームの直接の同期は可能ではない。
【0046】
マルチメディア配信システムにおいて、第1のおよび第2のストリーム同期ポイント205、208は、いわゆる同期ステータス情報をMSAS204に送信することができる。この同期ステータス情報は、メディアストリームに関連する識別情報(例えばSSRC識別子)、およびタイミング情報(例えば、パケットのプレイアウト時刻に関連づけられたRTPタイムスタンプおよびNTPタイムスタンプ)を有してもよい。
【0047】
RTPタイムスタンプはRTPデータパケットにおける第1のオクテットのサンプリング例を示す。タイムスタンプの初期値は無作為な値である。RTPタイムスタンプはサンプリング期間をカウントするので、第2のRTPパケットが第1のRTPパケットの後に160のサンプルをスタートさせた場合、第2のRTPタイムスタンプは第1のRTPタイムスタンプよりも160大きい。
【0048】
NTPタイムスタンプは絶対的な「壁掛け時計(wall clock)」時刻である。NTPは、IETF RFC 1305において定義されたような、1900年1月1日から始まる64ビットカウンタである。NTPによって用いられる64ビットタイムスタンプは、32ビットの整数秒部分と32ビットの小数点以下部分からなる。NTPタイムスタンプは、RTPタイムスタンプによって識別される第1のオクテットが、特定のポイント、すなわち同期ポイントを通過する絶対的な時間を表す。
【0049】
この特定のポイントは、SCを含むユーザ機器(UE)のプレイアウトポイントであってもよく、NTPタイムスタンプは、特定のオクテットがユーザに示された時刻を表す。代替として、それは、SCが特定のオクテットを最初に受信する入来ポイントであってもよい。同様の方法で、SC’を同期化するために、この特定のポイントは出力ポイントまたは入力ポイントであってもよい。
【0050】
第1のストリーム同期ポイントは、以下の第1の同期ステータス情報メッセージをMSASに送信することができる。
SSRC識別子=12345678
RTPタイムスタンプ=1556688423
NTPタイムスタンプ=13:42:21.000
同様に、第2のメディアストリーム同期ポイントが、以下の第2の同期ステータス情報メッセージをMSASに送信することができる。
SSRC識別子=90ABCDEF
RTPタイムスタンプ=1684654845
NTPタイムスタンプ=13:42:21.000
【0051】
この例では、第1のおよび第2のストリーム同期ポイントからの情報は、同じNTPプレイアウト時刻、13:42:21.000に関連する。この例では、両方のメディアストリーム同期ポイントがNTP同期している、すなわち、ネットワークタイムプロトコルまたは何らかの他の手段を使用してそれらの時計は同期していると、考えられる。
【0052】
上で説明したように、変更されたメディアストリームが同じコンテンツを搬送するが、メディアストリーム変更ユニット202が変更された出力ストリーム213においてタイミング情報を変更するので、同期は可能ではないことがある。同期を可能にするために、メディアストリーム変更ユニット202に関連する同期クライアントSC’は、メディアストリーム変更ユニットによって受信された、入ってくるメディアストリーム212と、メディアストリーム送信ユニットによって第2のメディアストリーム同期ポイントに送信される、出て行くメディアストリーム213と、の間の同期関係に基づく同期相関情報メッセージを送信してもよい。したがって、同期関係は第1のパケットにおける第1のタイミング情報と、第2のパケットにおける第2のタイミング情報に関しており、第1のおよび第2のパケットは同一のコンテンツまたはその一部を有し、前記第2のパケットはメディアストリーム変更ユニットによって変更されたストリームの一部であり、前記第1のパケットは前記変更を受ける前のメディアストリームの一部である。
【0053】
第1の実施形態では、メディアストリーム変更ユニットは以下の情報をMSASに送信してもよい。
入ってくる:
SSRC識別子=12345678
RTPタイムスタンプ=1556688423
出ていく:
SSRC識別子=90ABCDEF
RTPタイムスタンプ=1684657845
この情報は、入ってくるSSRC識別子/RTPタイムスタンプの組と、出ていくSSRC識別子/RTPタイムスタンプの組と、の両方を含む。したがって、同期相関情報メッセージは、MSASに信号化されたSSRCおよび/またはRTPタイムスタンプを使用して、ストリーム変更ユニットの入力において受信された1つ以上のストリームと、ストリーム変更ユニットの出力において送信された1つ以上のストリームと、の相関を可能にすることができる。
【0054】
一実施形態では、同期相関情報は1つのメッセージでMSASに送信されてもよい。他の実施形態では、同期相関情報は2つの別々のメッセージで送信されてもよい。別々のメッセージの使用は、入ってくるストリームまたは出ていくストリームのいずれかの同期パラメータが時間を通してあまり大きく変化しない場合には、これらのストリームに関連した同期情報の信号化が頻繁には必要ないため、有利である。同期情報の信号化に関するさらなる詳細は、図5〜図7を参照して以下に説明される。
【0055】
MSAS204は、メディアストリーム同期ポイントおよび、メディアストリーム変更ユニットからの同期関係を含む同期相関情報メッセージの両方から、第1のおよび第2の同期ステータス情報メッセージを受信する。その後、MSAS204はこの情報を用いて、第1のおよび第2のメディアストリーム同期ポイントにおけるタイミング情報を計算する。
【0056】
この計算は2つの計算ステップを含むことができる。第1のステップは、すべての同期ステータス情報を1つの時間軸(時間基準)に調整する計算に関する。第2のステップにおいては、現実の遅延情報が計算される。以下の例では、両方のRTPタイムスタンプがミリ秒スケールを示すと考える。そうでなければ、計算はこのことを反映するように調整されるべきである。第1のステップにおいては、すべての同期ステータス情報は1つの共通の時間軸、例えば、オリジナルのメディアストリーム212のRTPタイムスタンプに関連する時間軸に適合される。このステップはステータス情報変換ステップと呼ばれる。
【0057】
13:42:21.000において、第1のメディアストリーム同期ポイント205はタイムスタンプ1556688423にある。この例では、第2のメディアストリーム同期ポイント208によって提供されたタイムスタンプはオリジナルのメディアストリーム212に関連する時間軸に調整される。他の変形例では、変更されたストリームに関連する時間軸に基づいて同期ステータス情報を調整すること、または両方のストリームの時間軸を新しい(第3の)時間軸に調整することが可能であってもよい。第3の時間軸の例は、各メディアストリームがタイムスタンプ0で開始して、各ストリームから無作為に選ばれた第1のタイムスタンプが0への調整を必要とするような状況に関連してもよい。
【0058】
第2のメディア同期ポイント208から受信された同期ステータス情報を調整するために、以下の情報が用いられる。
−値1684654845を有する調整されたストリームの同期ステータス情報におけるRTPタイムスタンプ
−変更されたストリームに関連するRTPタイムスタンプ値1684657845が、オリジナルのストリームに関連するRTPタイムスタンプ値1556688423に相関する。
タイムスタンプを調整するための計算は簡単な線形変換に関するものでよい。調整されたタイムスタンプ=conv_timestamp_org_stream+conv_timestamp_mod_stream−timestamp_mod_stream_current。したがって、13:42:21.000に、第2のメディアストリーム同期ポイント208は、調整されたタイムスタンプ1556688423+1684654845−1684657845=1556685423に関連するかもしれない。そのように、第2のメディアストリーム同期ポイント208から受信された同期ステータス情報は、第1のメディアストリーム同期ポイント205から受信された同期ステータス情報に関連する時間軸に調整されてもよい。
【0059】
その後、遅延情報の計算が知られているスキームに従って実行されてもよい。例えば、遅延情報はメディアストリームを再生する際にいちばん遅れているクライアントに基づいて決定される。上記の例において両方のタイムスタンプが同じ時刻13:42:21.000に報告されているため、計算は双方のメディアストリーム同期ポイントの同期ステータス情報の単純な減算を含んでもよい。1556685423−1556688423=−3000。この結果は、第2のメディアストリーム同期ポイント208におけるメディアストリームが、第1のメディアストリーム同期ポイント205におけるメディアストリームから3秒遅れていることを示す。この時間差はメディアストリーム変更ユニット202において実行されたトランスコードプロセスに起因するかもしれない。報告された時刻(すなわちNTP時刻)がMSASによって受信された異なる同期ステータス情報メッセージにおいて異なる場合は、この時刻の相違は、遅延を決定するための計算において考慮されるべきである。
【0060】
上記から、変更されたストリームは3秒遅れている(タイムスタンプの右から4桁目に示されているように)ということになる。別の実施形態では、調整されたメディアストリームの時間軸が用いられてもよい。1684657845ms−1684654845ms=3000ms。したがって、両方のメディアストリーム同期ポイントのメディアストリームを同期させるためには、MSASは第1の同期ポイント205に同期設定指示を送信して、プレイアウトを3秒遅らせてもよい。
【0061】
図3は、図2を参照した上記の例におけるメッセージフロー図300における情報の交換を図示する。第1のステップ302において、第1の同期ポイントはメディアストリーム発信元からオリジナルのメディアストリームを受信し、第2の同期ポイントはメディアストリーム変更ユニットの出力から変更されたメディアストリームを受信し、メディアストリーム変更ユニットは入力信号としてメディアストリーム発信元からのオリジナルのメディアストリームを用いる。
【0062】
第2のおよび第3のステップ304、306において、第1のおよび第2の同期ポイントはそれぞれ第1のおよび第2の同期ステータス情報メッセージをメディア同期アプリケーションサーバ(MSAS)に送信する。その後、第4のステップ308において、メディアストリーム同期ユニットは、入ってくるメディアストリームと出ていくメディアストリームの間の同期関係に基づく相関情報メッセージをMSASに送信する。したがって、MSASは第5のステップ310において、同期設定指示を計算して、送信先、すなわち第1のおよび第2の同期ポイントにこれらの指示を送信してもよい。
【0063】
図2および図3を参照して記載された非限定的な例は、1つのメディアストリーム変更ユニットおよび2つの同期ポイントを用いる送信先間同期スキームを示す。さらなる変形例では、そのようなスキームは2つ以上のストリーム変更ユニットと共に、および/または2つ以上のメディア同期ポイントと共に用いられてもよい。ネットワーク上の信号化メッセージ(例えば同期ステータス情報メッセージ、異なるタイムスタンプを相関化する情報を含むメッセージ、同期設定指示)を搬送するために異なるプロトコルが用いられてもよい。これらのメッセージは例えばHTTP上でSOAPを用いるXMLフォーマット(W3C推奨)、SIPメッセージ(IETF RFC 3261)またはRTCPメッセージでMIMEメッセージボディにおけるXMLフォーマットまたはプレーンテキストにおいて搬送されてもよい。
【0064】
図2および図3を参照して記載された例において、変更可能な遅延ユニットおよび同期ユニットはクライアントサーバタイプモデルにおいて実施され、そこでは、遅延ポイントにおける変更可能な遅延ユニットの機能は同期クライアント(SC)の一部として実施されてもよく、同期ユニットは同期サーバ(SYNCHSまたはメディア同期アプリケーションサーバ(MSAS))として実施されてもよい。同期クライアントは、同期ステータス情報が適切なプロトコルを用いて同期サーバ(同期ユニット)に送信可能となり、同期設定指示が同期サーバから受信可能となるプロトコルソケットを有してもよい。
【0065】
同期ステータス情報はストリーム受信に基づいたタイミング情報(すなわち、第1の同期ポイントに到達するストリームにおけるパケットの到達時間)を含んでもよく、現在の遅延設定を含んでもよい。したがって、同期ステータス情報は、ストリームにおけるパケットが同期ポイントによって受信される時間においてポイントを考慮する情報を含んでもよい。同期設定指示は、例えば実際に計算された遅延を用いて変更可能な遅延バッファを設定することについての指示を含んでもよい。
【0066】
同期設定指示および遅延指示という用語は、本発明の目的のために同じ意味で用いられており、あるメディアストリームの実際の遅延時刻を含んでもよい。好ましくは、これらの遅延指示は所定の継続時間だけメディアストリームを遅延させることに関する正の時間値を含んでもよい。代替として、遅延指示はメディアストリームのプレイアウトまたは出力を速めることに関する負の時間値を含んでもよい。ある同期ポイントが大きなバッファを有し、知られている測定を用いてバッファリング時刻を減少させることによって遅延を短縮することを可能にする場合が、これにあてはまるかもしれない。
【0067】
図4は、ETSI TS 182 027 version 2.0.0で特定されるIMSに基づいたIPTVシステム400として実施される本発明による例示的なコンテンツ配信システムを示す。IPTVシステム400はIPTVメディア機能(MF)401からなり、メディア制御機能(MCF)402およびメディア配信機能(MDF)403を含む。さらに、IPTVシステム400は搬送機能(TF)404、ユーザ機器(UE)405、IPTVサービス制御機能(SCF)406、個別のアプリケーションサーバ(AS)407およびコアIMSネットワーク(Core)408を含む。同期クライアント(SC)409はUE405の部分であってもよく、搬送機能404の部分であってもよい。同期方法の部分として、ユーザ機器がストリームをバッファ可能であるならば、SCはユーザ機器において実施されてもよい。SCは、例えばユーザ機器がバッファ機能をサポートしていない場合に搬送ネットワークにおいて実装されてもよい。SCは少なくとも1つの変更可能な遅延バッファに関連しており、したがってSCがUE内で実装される場合、SCは1つ以上の関連する変更可能な遅延バッファ410を有してもよい。同様に、SCが搬送機能の一部として実施される場合は、搬送機能を含む要素は1つ以上の変更可能な遅延バッファ410を有してもよい。MSAS411の機能は、搬送機能またはメディア機能の部分として、標準IPTVサービス制御機能406に含まれてもよく、代替として、スタンドアローンなアプリケーションサーバ407上で実施されてもよい。メディアストリーム変更ユニット(MSMU)413はIPTVメディア機能401の一部であってもよい。MDF403は実際のトランスコードを実行することができ、MCF402は同期クライアント(SC’)412を含むことができる。
【0068】
図5は、本発明の一実施形態による送信先間同期スキーム500の実施形態を示し、RTCP RTP制御プロトコル(RTCP)が、メディア配信システムにおける要素間で同期情報を搬送するために用いられる。システムは2つの同期クライアントSCa、SCb 502、504を含む。同期クライアントは第1のおよび第2のメディアストリーム512、514に関連づけられた信号同期ステータス情報をMSAS508に信号化するように設定されている。2つの同期クライアントは2つの異なるRTPメディアストリームを受信する2つのユーザ機器(UE)(図示せず)内にあり、該2つのメディアストリームは異なるサンプリングレートであってもよい。SCaによって受信された第1のメディアストリーム512は、メディアストリーム発信元(すなわちメディアサーバ)に関連したオリジナルのメディアストリームであってもよく、SCbによって受信された第2のメディアストリーム514は、変更されたメディアストリームであってもよい。第1のメディアストリームを第2のメディアストリームに変更する、メディアストリーム変更ユニット(トランスコーダ)502は、該第1のおよび第2のメディアストリームの間の同期関係をMSASに報告する特別な同期クライアントSC’510を含む。
【0069】
システムはUE、メディアストリーム変更ユニットおよびメディアストリーム発信元の間のメディアセッションをセットアップするためにSIPを使用してもよい。SIP信号化によって搬送されたセッション記述プロトコル(SDP)が、各セッションにおけるメディア構成要素を記述およびネゴシエートするために用いられてもよい。セットアップの最中、UE(およびメディアストリーム変更ユニット)は、特定のUEが属する同期グループを識別するSyncGroupIdと関連づけられてもよい。
【0070】
同期グループは、1つ以上の指定されたメディアストリームに関して同期されることが必要なUEのグループである。そのようなグループの例は、同期方法において互いに同じコンテンツオンデマンド(映画)を観ることを要求する、2つの異なる位置にある2つの異なるユーザに属する2つのUEであってもよい。
【0071】
同期セッションを設定する詳細な説明のために、「Dynamic RTCP rely」という名称の、同時に係属する欧州特許出願が参照され、それは本出願への参照によって本明細書に組み込まれる。
【0072】
さらに、UEおよびメディアストリーム変更ユニット、特にその中に位置する同期クライアントは、RTP制御プロトコル(RTCP)を用いて、同期情報をMSASに関連づけられたIPアドレスおよびポート番号に送信し、UEに関連づけられたRTCP受信器ポート上でMSASからのRTCP報告を受信してもよい。一実施形態では、同期クライアントは、RTCP拡張報告(RTCP XR)を用いたRTCP受信器報告(RTCP RR)において同期ステータス情報を含み、1つ以上のRTCPメッセージ内のその情報をMSASに送信することができる。
【0073】
特に、同期クライアントは、同期ステータス情報を含む、特別にフォーマットされたRTCP拡張報告(RTCP XR)516、518を生成してもよい。この情報はNTPタイムスタンプと組み合わせられたRTPタイムスタンプの形式であってもよい。RTCP XRは発信元のSSRC、パケットで受信されたNTPタイムスタンプ、パケットで受信されたRTPタイムスタンプ(RTP受信タイムスタンプ)をさらに有してもよく、随意には、SyncGroupIdパラメータを有してもよい。さらに、RTCP XRは、XRにパケットで示されたNTPタイムスタンプ(NYP表示タイムスタンプ)を有してもよい。
【0074】
SyncGroupIdパラメータはセッション記述プロトコル(SDP)セッションレベル属性、例えば、a=RTCP−xr:sync−group=<value>として、または、例えばIETF RFC 3550によるSDES PRIVアイテムの形式で実施されてもよい。さらなる実施形態では、IETF RFC 3611から知られるRTCP−xr属性フィールドが用いられてもよい。
【0075】
メディアストリーム変更ユニットSC’に関連づけられた同期クライアントは、MSASに同期相関情報を報告する。UEに関連づけられた同期クライアントとは対照的に、SC’はトランスコーダの入力で1つ以上のメディアストリームに関連づけられたRTCP XRと、トランスコーダの出力で1つ以上のメディアストリームに関連づけられたRTCP XRを送信する。一般的に、同期相関情報520は2つのRTCP XRによって形成され、それは入力ストリームに関連づけられた第1のRTCP XR522および出力ストリーム(すなわち変更された入力ストリーム)に関連づけられた第2のRTCP XR524である。したがって、同期相関情報は、一方は入力ストリームに関連づけられもう一方は出力ストリームに関連づけられた2組のタイムスタンプ(RTP1,NTP1)および(RTP2,NTP2)を有してもよい。
【0076】
MSASはさらに、同期設定指示を含むRTCP XRを同期クライアントSCa、SCbに送信してもよい。これらのRTCP XRは発信元のSSRC、パケットで受信された参照NTPタイムスタンプ、パケットで受信された参照RTPタイムスタンプ受領タイムスタンプを含んでもよい。RTCP XRはまた、パケットで示された参照NTPタイムスタンプをさらに有してもよい。これらのRTCP XRは共にRTCP送信者報告(SR)に追加されてもよく、UEによって別々に受信されてもよい。
【0077】
同期設定はNTPタイムスタンプと組み合わせられたRTPタイムスタンプの形式であってもよく、ここでNTPタイムスタンプは、例えばSyncGroupIdによって識別されたとして同期グループによって分割されたクロックを示し、RTPタイムスタンプは期待される提示時刻を示す。
【0078】
一実施形態において、同期クライアントはMSASと同一場所に配置されてもよい。この場合には、同期ステータス情報と同期設定指示の交換は、それらが存在するMSASの1つ以上の機能エンティティの内部で行われる。
【0079】
別の実施形態において、同期は1つ以上のブロードキャストストリームの同期に関してもよい。この場合には、MSASは、RFC 3550においてより詳細に記載されたようにフィードバックターゲットとして機能することができる。RTCP受信器報告を転送する前に、MSASは同期ステータス情報を含むRTCP拡張報告を読み込んで削除してもよい。したがって、MSASはRTCP拡張報告を用いて同期設定指示を同期クライアントに送信してもよい。
【0080】
コンテンツオンデマンドまたは他の単一キャストのストリームの同期の場合、MSASは1つ以上のUEに関連づけられたRTCP受信器報告を適切なメディア機能MFに転送してもよい。RTCP受信者報告を転送する前に、MSASはRTCP XRを読み込んで解析し、同期ステータス情報を含むそれらのRTCP拡張報告を削除してもよい。したがって、MSASは、RTCP送信者報告を適切な同期クライアントに転送して、RTCP拡張報告を使用してSCに同期設定指示を追加してもよい。MSASは別のRTCP XRを用いて同期クライアントに同期設定指示を送信してもよい。
【0081】
図6は、本発明の一実施形態によるRTPメディアストリーム上の同期情報を報告する例示的なRTCP拡張報告を示す。同期RTCP XRにおける以下のフィールドが、本発明による同期スキームにおいて使用されてもよい。
−特定のRTCPパケットの送信者を識別するパケット送信者のSSRC。
−ブロックフォーマットを識別する8ビットのブロックタイプ(BT)フィールド。
−この特定の拡張報告のためのパケット送信者の役割を識別する、4ビットの同期パケット送信者タイプ(SPST)フィールド。
−パケット提示NTPタイムスタンプが値を有する場合には1に設定される、パケット提示NTPタイムスタンプフラグ(P)。このフラグが0に設定された場合は、パケット提示NTPタイムスタンプは検査されていないものとする。
−メディアペイロードのフォーマットを識別する、7ビットのペイロードタイプ(PT)フィールド。メディアペイロードは、RTPタイムスタンプカウンタにタイムベースを提供するRTPタイムスタンプクロック速度に関連づけられてもよい。
−同期されたメディアストリームを相関させる際に用いるメディアストリーム相関識別子(32ビット)。RTCPパケット送信者がSCまたはMSAS(SPST=1またはSPST=2)である場合、メディアストリーム相関識別子はSyncGroupId上にマッピングされる。RTCPパケット送信者がSC’(SPST=3またはSPST=4)である場合、入ってくるまたは出ていく関連のメディアストリームは同一のメディアストリーム相関識別子を有してもよい。
−メディア発信元のSSRC(32ビット)は、XRが関連するRTPパケットのRTPヘッダにおいて搬送されるSSRC識別子の値に設定されてもよい。
−パケット受信NTPタイムスタンプ(64ビット)は、XRが関連するRTPパケットの最初のオクテットの到達時刻を表してもよい。
−パケット受信RTPタイムスタンプ(32ビット)は、XRが関連するRTPパケットのRTPヘッダにおいて搬送されるRTPタイムスタンプの値に関連づけられる。
−パケット提示NTPタイムスタンプ(32ビット)は、関連づけられたRTPパケットの最初のオクテットを含むデータがユーザに提示された場合のNTPタイムを反映する。これはNTPの秒部分の最も重要でない16ビットと、NTPの秒の小数点以下部分の最も重要な16ビットを含む。このフィールドが空の場合は、このフィールドは0に設定されてもよく、パケット提示NTPタイムスタンプフラグ(P)は0に設定されてもよい。
表1は、同期パケット送信者タイプ(SPST)フィールドに関連づけられ
た値を示す。
【0082】
【表1】

【0083】
図6を参照して記載されたように、特別にフォーマットされたRTCP拡張報告を用いると、ネットワークまたは1つ以上のUEのクライアントとMSASの間の同期情報は効率的に信号化されることができる。例えば図5に記載されたシステムにおいて、UEに関連づけられた同期クライアントSCa、SCb 504、506およびメディアストリーム変更ユニットに関連づけられた同期クライアントSC’510は、RTCP XRを用いてMSASに同期情報(すなわち、同期ステータス情報または同期相関情報)を報告することができる。表2はこの情報の例を提供する。
【0084】
【表2】

メディアストリームはその同期発信元(SSRC識別子)によって識別されることができる。すなわち、SSRCa=SSRC1であり、SSRCb=SSRC2である。このようにして、MSASは、SCaが第1のメディアストリームを受信してSCbが第2のメディアストリームを受信することを導き出すことができる。さらに、各メディアストリームは、Hz(すなわち、秒あたりのクロック刻み数)で表すことができる特定のクロック速度に関連してもよい。すなわち、CRa=CR1であり、CRb=CR2である。典型的なクロック速度は、音声に関しては毎秒8000〜96000サンプルの範囲にあり、映像に関しては毎秒90.000サンプルである。
【0085】
一実施形態では、クロック速度はMSASに信号化されてもよい。別の実施形態では、速度は一定であってもよい。さらに別の実施形態では、クロック速度の代わりにペイロードタイプがMSASに信号化されてもよい。ペイロードタイプは、例えばIETF RFC 3551に記載されたスキームを用いて、クロック速度をマッピングしてもよい。MSASに報告された情報は、RTPタイムスタンプとNTPタイムスタンプの両方をさらに含んでもよい。
【0086】
SC’は、各メディアストリームにつき1つの、2組のタイムスタンプ(RTP1、NTP1)および(RTP2、NTP2)をMSASに報告する。NTP1はRTP1によって識別されたオクテットがSC’において特定のポイントを通過した時間を表し、NTP2はRTP2によって識別されたオクテットがSC’において特定のポイントを通過した時間を表す。トランスコードおよびクロック速度が変化するため、これらは一般的に異なるオクテットである。識別されたオクテットによって表されるコンテンツ内のポイントが特定のポイントをいつ通過したのかを決定するために、SC’は計算を行ってNTP1およびNTP2を決定しなければならない。
【0087】
MSASは、プレイアウトSCa−プレイアウトSCb=(NTPa−(RTPa/CRa)−(NTPb−(RTPb/CRb)−(NTP1−(RTP1/CR1)+(NRP2−(RTP2/CR2)というアルゴリズムを使用することで、ミリ秒単位でのSCaのプレイアウトとSCbのプレイアウトの差を決定してもよい。それらのプレイアウトを十分に同期させるために、その結果を用いて、SCaまたはSCbに特定の量だけそのプレイアウトを遅延させることを指示してもよい。
【0088】
表3の例にあるパラメータを用いると、−5.493秒の遅延(プレイアウトSCa−プレイアウトSCb)という結果になり、このことは、SCbがSCaよりも5.493秒遅くプレイアウトしたことを示す。したがって、実質的に同期させるために、この計算に基づいて、MSASはSCaにその出力を5.493秒遅らせるよう指示してもよい。
【0089】
【表3】

図7は、本発明の他の実施形態による、メディアストリームを同期させるためのRTCP XRメッセージの使用を示す。この例では、ある単一のコード化装置702が複数のメディアストリーム変更ユニットを含んでもよい。コード化装置は複数の入ってくるメディアストリーム708、710および出ていくメディアストリーム712−716に関連づけられてもよく、出ていくメディアストリーム712−716は、単一の同期クライアントSC’704によって同期化されてもよい。
【0090】
入ってくる各メディアストリームA1、B4に関して、および出ていく各メディアストリームA2、A3、B5、...に関して、同期クライアントSC’はRTCP XR718−724をMSAS706に送信してもよい。したがって、この実施形態では、同期相関情報は2つのRTCP XRにおいてMSASに送信される。それらは、入ってくるメディアストリーム708、710に関連づけられた第1のRTCP XR 724、726および、出ていくメディアストリーム712−716に関連づけられた第2のRTCP XR 718−722である。
【0091】
そのような信号化スキームは、RTCP XRが異なる時刻に、および異なる速度でMSASに独立して送信されるという利点を有する。あるメディアストリームがより安定した時間参照を有する場合は、その同期相関情報はより不定期に更新されてもよくなり、したがって処理時間および帯域が節約される。さらに、入ってくるあるメディアストリームが複数の異なる出ていくメディアストリームにトランスコードする場合、入ってくるメディアストリームに関した同期相関情報の部分が測定され、1度だけ送信されるべきであり、それによって時間および帯域が節約される。
【0092】
しかしながら、同期相関情報の異なる部分(RTCP XR)を独立して送信することは、同期相関情報のどの部分が関連する部分であるかをMSASが知っていないため、問題となることがある。この場合には、MSASが、同期相関情報のどの部分がひとまとまりになっているかを決定することが不可能である。
【0093】
この理由により、MSASがトランスコード装置の入力および出力における異なるメディアストリームを相関させることと、正しい同期相関情報をMSASによって受信された異なるRTCP XRから導き出すことと、を可能にするために、同期クライアントSC’はメディアストリーム相関識別子(MSCI)を生成する。例えば、図7において、MSASはMSCIAを用いて、メディアストリーム710に関連づけられたRTCP XR726を、(変更された)メディアストリーム712に関連づけられた第1のRTCP XR718および(変更された)メディアストリーム714に関連づけられた第2のRTCP XR720と相関させることができる。このようにして、複数の変更されたメディアストリームの効率的な同期が達成されてもよい。互いに関連する異なるストリームの間の同期は、同時に同じブロードキャストを視聴することを望みながら異なる性能の異なるプレイアウト装置を用いる異なるユーザにとって有利でありうるだけでなく、互いに関連する異なるストリームを搬送する2つ以上ネットワークを切り換える単独のユーザにとっても有益でありうることに留意すべきである。この切り換えは、例えば、ユーザがカバレッジの悪いモバイルネットワークを用いる場合に発生しうる。ユーザがネットワークへの接続から離れた場合、ユーザは別のネットワーク、例えば、カバレッジが改良された別のモバイルネットワークに切り換えることを望むかもしれない。そのようなネットワーク切り換えの例に、DVB−H(デジタルビデオブロードキャスト−ハンドヘルド)ネットワークとUTMSネットワークの間の切り換えがありうる。モバイルネットワークと固定ネットワークの間の切り換えもまた行われるかもしれない。例えば、モバイルネットワーク経由でビデオストリームを見ているユーザが、帰宅して固定ネットワークに接続された自分の大スクリーンテレビジョンで視聴を続けることを望む場合である。互いに関連する異なるストリームの間の遅延を打ち消すことは、シームレスなネットワーク移行および向上したユーザエクスペリエンスを提供する。
【0094】
任意のある実施形態に関連して記載されたいかなる特徴も、単独で用いられてもよく、または記載された他の特徴と組み合わされて用いられてもよく、任意の他の実施形態の1つ以上の特徴と組み合わされて用いられてもよく、任意の他の実施形態の組み合わせと組み合わされて用いられてもよい。さらに、上記されなかった同等の例および変形例もまた、本発明の範囲から逸脱せずに用いられることができ、それらは添付の特許請求の範囲において定義される。
【0095】
例えば、本発明による同期方法は、例えばネットワーク全体またはその一部上で作動する、または、ネットワークを介して流れるすべてのストリーム上で作動する、またはあるストリーム上のみで作動する連続プロセスとして実施されることができる。さらに、連続動作はすべての同期ポイントに作用してもよく、特定の同期ポイントのみに作用してもよい。方法は、この連続方式において動作するようにシステムを構成することによって実施されてもよい。
【0096】
代替として、方法は、例えばクライアントサーバ型のモデルを用いるセッション型の同期プロセスとして実施されてもよい。同期セッションは、例えばネットワーク内のあるトリガを介して開始または終了してもよい。同期セッションを開始または終了するトリガは、例えば同期ポイントによって提供されてもよく、ネットワークまたはシステム内の他の要素によって提供されてもよい。
【0097】
一実施形態では、同期サーバおよび同期クライアントは同期セッションを開始および終了するように構成されてもよい。同期セッションは、同期クライアントが招待メッセージを同期サーバに送信したときに開始されてもよく、逆も同様である。同期セッションの最中に、同期サーバおよび同期クライアントは同期ステータス情報および同期設定指示を交換してもよい。同期セッションは、同期クライアントが同期サーバに終了メッセージを送信したときに終了してもよく、逆も同様である。同期サーバおよび同期クライアントは、招待を受け入れるために、または同期セッションの終了を確認するために、返答メッセージを送信してもよい。

【特許請求の範囲】
【請求項1】
少なくとも1つの第1のストリーム、および少なくとも1つの第2のストリームの送信先間同期の方法であって、前記第2のストリームは、メディアストリーム変更ユニットの出力ストリームと関連づけられ、前記第1のストリームを入力ストリームとして使用し、
−第1の同期ポイントに到達した第1のストリーム内のパケットの第1の到達時刻情報および、第2の同期ポイントに到達した第2のストリーム内のパケットの第2の到達時刻情報を提供するステップと、
−前記入力ストリームと前記出力ストリームの間の同期関係に関する同期相関情報を提供するステップと、
−前記第1のおよび前記第2の到達時刻情報および前記同期相関情報に基づいて、遅延情報を計算するステップと、を含む方法。
【請求項2】
−少なくとも前記第1のまたは前記第2の同期ポイントに前記遅延情報を提供し、前記第1のおよび前記第2の同期ポイントによってそれぞれ出力される前記第1のおよび前記第2のストリームが実質的に同期するように、少なくとも前記第1のおよび前記第2の同期ポイントがストリームの出力を遅延させることを可能にするステップをさらに含む、
請求項1に記載の方法。
【請求項3】
前記第1のおよび前記第2のストリームが少なくとも前記第1のおよび前記第2の同期ポイントによって出力され、前記同期ポイントは前記同期ポイントを同期させるために少なくとも1つの同期ユニットに接続される、請求項1または2に記載の方法。
【請求項4】
遅延情報を計算する前記ステップは、第1の到達時刻情報と第2の到達時刻情報の間の共通のタイムラインを達成するように、第1のおよび/または第2の到達時刻情報を調整する調整ステップをさらに有し、前記調整ステップは、同期相関情報の少なくとも一部に基づく、請求項1から3のいずれか一項に記載の方法。
【請求項5】
前記調整ステップは到達時刻情報調整モジュールによって実行され、前記モジュールは同期ユニットの一部であり、前記同期ユニットは同期相関情報の少なくとも一部を提供される、請求項4に記載の方法。
【請求項6】
前記調整ステップは同期ポイントにおいて実行され、前記同期ポイントは到達時刻情報調整モジュールを有し、前記到達時刻情報調整モジュールは同期相関情報の少なくとも一部を提供され、同期ユニットは調整された第2の到達時刻情報を提供される、請求項4に記載の方法。
【請求項7】
前記調整ステップはネットワーク要素において実行され、前記ネットワーク要素は到達時刻情報を受信するように構成され、前記ネットワーク要素は到達時刻情報調整モジュールをさらに有し、前記到達時刻情報調整モジュールは、同期相関情報の少なくとも一部を提供され、同期ユニットは調整された第2の到達時刻情報を提供される、請求項4に記載の方法。
【請求項8】
前記同期ポイントは端末、ネットワークノード、またはアクセスノードである、請求項1から7のいずれか一項に記載の方法。
【請求項9】
前記ストリーム変更ユニットは、少なくとも第1のメディアストリームを受信および処理するためのメディアストリーム処理装置であり、前記処理は前記第1のメディアストリームにおけるタイミング情報を変更し、好ましくは前記メディアストリーム処理装置はトランスレータまたはミクサである、請求項1から8のいずれか一項に記載の方法。
【請求項10】
前記同期ユニットは同期ポイントまたはネットワークノードに含まれ、好ましくは同期サーバに含まれる、請求項1から9のいずれか一項に記載の方法。
【請求項11】
前記到達時刻情報、前記同期相関情報および/または前記遅延情報は1つ以上のRTCPメッセージにおいて信号化され、好ましくは1つ以上のRTCP拡張報告において信号化される、請求項1から10のいずれか一項に記載の方法。
【請求項12】
前記RTCPメッセージの少なくとも1つが、パケットの発信元を識別する識別子、RTPタイムスタンプ、NTPタイムスタンプ、クロック速度値および/またはメディアストリーム相関識別子を少なくとも備える、請求項11に記載の方法。
【請求項13】
少なくとも、第1のメディアストリームを受信する第1の同期ポイントおよび第2のメディアストリームを受信する第2の同期ポイントの出力を同期させる同期ユニット、好ましくは同期サーバであって、前記第2のストリームは、入力ストリームとして第1のストリームを用いるメディアストリーム変更ユニットの出力ストリームであり、前記同期ユニットは、
第1の同期ポイントに関連づけられたストリームにおけるパケットに関連づけられた第1の時刻情報と、第2の同期ポイントに到達する第2のストリームにおけるパケットの第2の到達時刻情報と、を受信する第1の入力と、
前記入力ストリームと前記出力ストリームの間の同期関係に関する同期相関情報を受信する第2の入力と、
前記第1のおよび前記第2の到達時刻情報および前記同期相関情報に基づいて遅延情報を計算するプロセッサと、を含む、同期ユニット。
【請求項14】
受信されたストリームが実質的に同期するように、前記第1のおよび前記第2の同期ポイントにおける1つ以上の可変遅延ユニットが受信されたストリームの出力時間を遅延させることを可能にする遅延情報を前記第1のおよび前記第2の同期ポイントに送信する出力をさらに有する、
請求項13に記載の同期ユニット。
【請求項15】
前記到達時刻情報、前記同期相関情報および/または前記遅延情報が1つ以上のRTCPメッセージにおいて信号化され、好ましくは1つ以上のRTCP拡張報告において信号化される、請求項13または14に記載の同期ユニット。
【請求項16】
少なくとも第1のおよび第2の同期ポイントの出力の送信先間同期システムであって、
メディアストリームを配信するコンテンツ配信サーバと、
入力メディアストリームを変更して、変更された出力メディアストリームにするように構成され、前記入力ストリームと前記出力ストリームの間の同期関係に関する同期相関情報を提供するように構成されたストリーム変更ユニットと、
請求項11または12に記載の少なくとも1つの同期ユニットと、を含む、システム。
【請求項17】
前記同期ユニットが、
ストリーム変更ユニットから同期相関情報を受信する第1の入力と、
ストリームにおけるパケットの到達時刻情報を同期ユニットに送信する出力と、
少なくとも1つの可変遅延ユニットと、
前記少なくとも1つの可変遅延ユニットが、ストリームの出力を同期ポイントが遅延させることを可能にするように、遅延情報を受信する第2の入力と、を含む、請求項16に記載のシステムにおいて使用する同期ポイント。
【請求項18】
メディアストリーム変更ユニットが、前記メディアストリーム変更ユニットによって入力ストリームとして用いられる第1のメディアストリームと、前記第1のメディアストリームを入力ストリームとして用いる前記メディアストリーム変更ユニットの出力ストリームである第2のメディアストリームと、の間の同期関係に関連づけられた同期相関情報を提供する手段を含むことを特徴とする、請求項16に記載のシステムにおいて使用するメディアストリーム変更ユニット。
【請求項19】
ネットワーク要素が到達時刻情報変更モジュールを含み、前記モジュールが、前記同期相関情報に基づいて、同期ポイントによって受信された変更されたモジュールにおけるパケットの到達時刻情報を調整するように構成されることを特徴とする、請求項16に記載のシステムにおいて使用するネットワーク要素。
【請求項20】
データ構造が、メディア同期ポイントに到達するストリームにおけるパケット、またはメディアストリーム変更ユニットに到達するストリームにおけるパケット、または前記メディアストリーム変更ユニットによって送信されたストリームにおけるパケットに関連づけられた同期ステータス情報を信号化する前記システムによって使用され、前記データ構造が、前記データ構造の発信元を識別する識別子、少なくとも1つのタイムスタンプ、好ましくはRTPおよび/またはNTPタイムスタンプ、および/またはメディアストリーム相関識別子を少なくとも含む、請求項16に記載のシステムにおいて使用する、好ましくはRTCP拡張報告データ構造である、データ構造。
【請求項21】
コンピュータのメモリにおいて実行されるとき、請求項1から12のいずれか一項に記載の方法ステップを実行するように構成されたソフトウェアコード部分を含む、コンピュータプログラム製品。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公表番号】特表2012−520648(P2012−520648A)
【公表日】平成24年9月6日(2012.9.6)
【国際特許分類】
【出願番号】特願2012−500223(P2012−500223)
【出願日】平成22年3月16日(2010.3.16)
【国際出願番号】PCT/EP2010/053407
【国際公開番号】WO2010/106075
【国際公開日】平成22年9月23日(2010.9.23)
【出願人】(500098057)コニンクリジケ ケーピーエヌ エヌブィー (9)
【出願人】(595115802)
【氏名又は名称原語表記】Nederlandse Organisatie voor toegepast−natuurwetenschappelijk onderzoek TNO
【Fターム(参考)】