(57)【要約】  本開示は、セグメントストリームのファイル送信単位を滞りなく送信することができるようにするコンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システムに関する。  本開示のコンテンツ供給装置は、コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置において、前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部とを備える。本開示は、コンテンツをFLUTEマルチキャスト配信するシステムに適用できる。
2015008653.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置において、
前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、
生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部と
を備えるコンテンツ供給装置。
【請求項２】
前記配信部は、前記フラグメントストリームの前記第１のデータ単位の前記第２のデータ単位に対して、version属性が追加されたmoof、および前記第２のデータ単位のデータを格納したmdatからなる前記ファイル送信単位を生成する
請求項１に記載のコンテンツ供給装置。
【請求項３】
前記配信部は、
前記フラグメントストリームの前記第１のデータ単位の先頭の前記第２のデータ単位に対して、styp、version属性およびntptが追加されたmoof、および前記第２のデータ単位のデータを格納したmdatからなる前記ファイル送信単位を生成し、
前記第１のデータ単位の前記先頭の前記第２のデータ単位とは異なる他の第２のデータ単位に対して、moof、およびmdatからなる前記ファイル送信単位を生成する
請求項２に記載のコンテンツ供給装置。
【請求項４】
前記配信部は、前記version属性にmoofのバーションを示す数値を格納し、前記ntptに前記第１のデータ単位の先頭の前記第２のデータ単位のBaseMediaDecodeTime-1に対応するNTP Time-1を格納する
請求項３に記載のコンテンツ供給装置。
【請求項５】
前記配信部は、前記先頭の前記第２のデータ単位とは異なる他の第２のデータ単位に対応する前記ファイル送信単位のmoofを、前回生成した前記ファイル送信単位の、前記version属性および前記ntptを含む前記moofをコピーして更新することにより生成する
請求項４に記載のコンテンツ供給装置。
【請求項６】
コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置のコンテンツ供給方法において、
前記コンテンツ供給装置による、
前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成ステップと、
生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信ステップと
を含むコンテンツ供給方法。
【請求項７】
コンテンツのフラグメントストリームをマルチキャスト配信するコンピュータに、
前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、
生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部と
して機能させるプログラム。
【請求項８】
コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置から配信された前記コンテンツを受信、再生する端末装置において、
前記コンテンツ供給装置は、
前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、
生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部と
を備え、
FLUTEマルチキャスト配信された前記ファイル送信単位を受信し、前記第１のデータ単位に対応する複数の前記ファイル送信単位が受信できるまでバッファリングし、前記第１のデータ単位に対応する複数の前記ファイル送信単位毎で再生する
端末装置。
【請求項９】
コンテンツ供給装置と、前記コンテンツ供給装置から配信された前記コンテンツを受信、再生する端末装置とから成るコンテンツ供給システムにおいて、
前記コンテンツ供給装置は、
前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、
生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部と
を備え、
前記端末装置は、
FLUTEマルチキャスト配信された前記ファイル送信単位を受信し、前記第１のデータ単位に対応する複数の前記ファイル送信単位が受信できるまでバッファリングし、前記第１のデータ単位に対応する複数の前記ファイル送信単位毎で再生する
コンテンツ供給システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システムに関し、特に、コンテンツのストリーミングデータをFLUTE(File Delivery over Unidirectional Transport)配信する場合に用いて好適なコンテンツ供給装置、コンテンツ供給方法、プログラム、端末装置、およびコンテンツ供給システムに関する。
【背景技術】
【０００２】
インターネットを介する動画配信に利用可能な国際標準化された動画配信プロトコルとして、Webサイトなどの閲覧と同様のHTTPを用いるMPEG-DASH（Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP。以下、DASHと称する）が知られている（例えば、非特許文献１を参照）。【０００３】
DASHでは適応型ストリーミング技術が実現されている。すなわち、コンテンツの供給側は、同一内容のコンテンツであって、画質や画角サイズなどの違いによってビットレートが異なる複数のストリームを用意するようになされている。一方、受信側は、供給側が用意している複数のストリームのうち、インターネットの通信環境や自己のデコード能力などに応じて最適なストリームを選択して取得、再生することができる。【０００４】
なお、受信側がストリームを適応的に選択して受信、再生できるように、MPD(Media Presentation Description)と称されるメタファイルが供給側から受信側に供給されるようになされている。【０００５】
MPDには、チャンク化されたコンテンツのストリーミングデータ(Audio/Video/Subtitle等のメディアデータ)を受信側に供給するサーバ（供給元）のアドレス(url情報)が記述されている。受信側は該url情報に基づいて、コンテンツの供給元となるサーバにアクセスしてストリーミングデータを要求し、該要求に応じてサーバからHTTPユニキャスト配信されるストリーミングデータを受信、再生することになる。【０００６】
図１は、DASHに基づいてコンテンツをストリーミング配信するコンテンツ供給システムの構成の一例を示している。【０００７】
該コンテンツ供給システム１０は、コンテンツを供給する複数のコンテンツ供給装置２０と、コンテンツを受信、再生する多数のDASHクライアント３０から構成される。DASHクライアント３０は、インターネット１１を利用したCDN(Contents Delivery Network)１２を介してコンテンツ供給装置２０に接続できる。【０００８】
コンテンツ供給装置２０は、同一内容のコンテンツであってビットレートが異なる複数のストリームを配信する。コンテンツ供給装置２０は、チャネルストリーマ２１、DASHセグメントストリーマ２２、およびDASH MPDサーバ２３を有する。【０００９】
チャネルストリーマ２１は、DASHクライアント３０に配信するためのコンテンツのソースデータを管理しており、該ソースデータからビットレートが異なる複数のストリーミングデータを生成してDASHセグメントストリーマ２２に出力する。【００１０】
DASHセグメントストリーマ２２は、各ストリーミングデータを時間的にセグメントに分割することにより、例えばFragmented MP4などのセグメントストリームを生成し、生成したセグメントストリームをファイル化して保持する。さらに、DASHセグメントストリーマ２２は、WEBサーバとして、DASHクライアント３０からの要求（HTTPリクエスト）に応じ、保持するセグメントストリームのファイルを要求元にHTTPユニキャスト配信する。さらに、DASHセグメントストリーマ２２は、セグメントストリームのファイルの供給元を表すアドレスを含むメタデータをDASH MPDサーバ２３に通知する。【００１１】
DASH MPDサーバ２３は、セグメントストリームのファイルの供給元（すなわち、DASHセグメントストリーマ２２）を表すアドレスなどを記述したMPDを生成する。また、DASH MPDサーバ２３は、WEBサーバとして、DASHクライアント３０からの要求（HTTPリクエスト）に応じ、生成したMPDを要求元にHTTPユニキャスト配信する。【００１２】
DASHクライアント３０は、DASH MPDサーバ２３に対してMPDを要求し、これに応じてHTTPユニキャスト配信されたMPDを受信する。さらに、DASHクライアント３０は、受信したMPDに基づいて、DASHセグメントストリーマ２２にセグメントストリームのファイルを要求し、これに応じてHTTPユニキャスト配信されるセグメントストリームのファイルを受信、再生する。【００１３】
なお、CDN１２は、キャッシュサーバ（不図示）を包含しており、該キャッシュサーバは、CDN１２を介してHTTPユニキャスト配信されるMPDやセグメントストリームのファイルをキャッシングする。そして、キャッシュサーバは、WEBサーバとしてのDASH MPDサーバ２３またはDASHセグメントストリーマ２２に代わり、キャッシングしているMPDやセグメントストリームのファイルを、要求元のDASHクライアント３０にHTTPユニキャスト配信することができる。
【先行技術文献】
【非特許文献】
【００１４】
【非特許文献１】「既存のWebサーバーで途切れない動画配信を実現」、平林光浩、NIKKEI ELECTRONICS 2012.3.19
【発明の概要】
【発明が解決しようとする課題】
【００１５】
上述したように、DASHではHTTPユニキャスト配信を用いた適応的ストリーミング技術が実現されている。【００１６】
ところで、受信側がHTTPユニキャスト配信だけでなく、例えば、FLUTEマルチキャスト配信やRTPマルチキャスト配信されるストリームも受信できるのであれば、それらの配信パスも用いてストリームを配信するようにし、受信側で適応的にストリームを選択できるようにすることが望ましい。【００１７】
すなわち、FLUTEマルチキャスト配信やRTPマルチキャスト配信はQoS(保証帯域/遅延等)が保証されているので、ライブ映像などのリアルタイム性が要求されるコンテンツを配信する場合、HTTPユニキャスト配信に比較して受信側での安定したストリームの受信、再生が期待できる。【００１８】
ここで、リアルタイムに撮影されているコンテンツのソースデータからFragmented MP4などのセグメントストリームが生成され、これが順次、FLUTEマルチキャスト配信される場合について考察する。【００１９】
図２は、Fragmented MP4をFLUTE配信する場合のファイル送信単位の従来の生成方法の概要を示している。【００２０】
すなわち、Fragmented MP4がFLUTE配信される場合、fragmentedMP4のランダムアクセス可能な最少単位であるGOP単位毎にファイル送信単位が生成されて、これがFLUTEマルチキャスト配信される。ただし実際には、GOPの整数倍の単位毎にファイル送信単位が生成される場合もあるが、本明細書においてはGOP単位毎にファイル送信単位が生成されるものとする。【００２１】
なお、図２の例では、Fragmented MP4のGOP範囲のデータが、時系列順にSample(s)(1)，Sample(s)(2)，Sample(s)(3)からなるものとする。ファイル送信単位は、Sample(s)(1)からSample(s)(3)までが生成されるのを待って生成され、FLUTEマルチキャスト配信される。【００２２】
図３は、Fragmented MP4がFLUTE配信される場合の従来のファイル送信単位のデータ構造を示している。【００２３】
このファイル送信単位（Media Segment）はstyp，moof，mdatから構成される。moofはmfhdとtrafからなり、trafはtfhd，tfdt，trun，sdtpを有する。mfhdには順次送信されるファイル送信単位のsequence_numberが格納され、trafのtfdtには、該GOP単位の先頭のSample(s)(1)のBaseMediaDecodeTime-1が格納される。trafのtrunには、該GOP単位に属するSample(s)(1)からSample(s)(3)のプレゼンテーションタイムを計算するために必要な情報が格納される。mdatには、mdatのヘッダとSample(s)(1)からSample(s)(3)が格納される。【００２４】
図４は、ファイル送信単位を送信するタイミングを示している。同図Ａは、ファイル送信単位の送信される放送網などの帯域がファイル送信単位のデータ量に比較して充分に広い場合を示しており、この場合であれば、GOP毎にファイル送信単位を滞りなく受信側にバルク転送することができる。【００２５】
しかしながら、実際には、必ずしもファイル送信単位を瞬時にバルク転送できるほど放送網などの帯域が広いとは限らず、また、今後、コンテンツが高画質化してFragmented MP4のビットレートが増加することも考えられる。そのような場合、同図Ｂに示されるように、ファイル送信単位の供給に滞りを生じさせてしまうことが起こり得、この滞りが受信側でのバッファリングの開始時刻に遅延をもたらし、結果的にリアルタイム性があるコンテンツの再生に悪影響を与えてしまうことになる。【００２６】
図５は、上述した問題を解決するための方法の概要を示している。すなわち、上記の問題を解決するためには、GOP毎のSample(s)(1)からSample(s)(3)の生成を待ってファイル送信単位を生成、送信するのではなく、図５に示されるように、ファイル送信単位をより小型化して逐次送信すればよい。しかしながら、そのような方法は従来確立されていない。【００２７】
本開示はこのような状況に鑑みてなされたものであり、セグメントストリームのファイル送信単位を滞りなく送信できるようにするものである。
【課題を解決するための手段】
【００２８】
本開示の第１の側面であるコンテンツ供給装置は、コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置において、前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部とを備える。【００２９】
前記配信部は、前記フラグメントストリームの前記第１のデータ単位の前記第２のデータ単位に対して、version属性が追加されたmoof、および前記第２のデータ単位のデータを格納したmdatからなる前記ファイル送信単位を生成することができる。【００３０】
前記配信部は、前記フラグメントストリームの前記第１のデータ単位の先頭の前記第２のデータ単位に対して、styp、version属性およびntptが追加されたmoof、および前記第２のデータ単位のデータを格納したmdatからなる前記ファイル送信単位を生成し、前記第１のデータ単位の前記先頭の前記第２のデータ単位とは異なる他の第２のデータ単位に対して、moof、およびmdatからなる前記ファイル送信単位を生成することができる。【００３１】
前記配信部は、前記version属性にmoofのバーションを示す数値を格納し、前記ntptに前記第１のデータ単位の先頭の前記第２のデータ単位のBaseMediaDecodeTime-1に対応するNTP Time-1を格納することができる。【００３２】
前記配信部は、前記先頭の前記第２のデータ単位とは異なる他の第２のデータ単位に対応する前記ファイル送信単位のmoofを、前回生成した前記ファイル送信単位の、前記version属性および前記ntptを含む前記moofをコピーして更新することにより生成することができる。【００３３】
本開示の第１の側面であるコンテンツ供給方法は、コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置のコンテンツ供給方法において、前記コンテンツ供給装置による、前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成ステップと、生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信ステップとを含む。【００３４】
本開示の第１の側面であるプログラムは、コンテンツのフラグメントストリームをマルチキャスト配信するコンピュータに、前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部として機能させる。【００３５】
本開示の第１の側面においては、コンテンツのソースデータを元にしてフラグメントストリームが生成され、生成された前記フラグメントストリームがランダムアクセス可能な第１のデータ単位に区切られ、さらに前記第１のデータ単位が第２のデータ単位毎に細分化され、前記第２のデータ単位毎にファイル送信単位が生成されてFLUTEマルチキャスト配信される。【００３６】
本開示の第２の側面である端末装置は、コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置から配信された前記コンテンツを受信、再生する端末装置において、前記コンテンツ供給装置が、前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部とを備え、FLUTEマルチキャスト配信された前記ファイル送信単位を受信し、前記第１のデータ単位に対応する複数の前記ファイル送信単位が受信できるまでバッファリングし、前記第１のデータ単位に対応する複数の前記ファイル送信単位毎で再生する。【００３７】
本開示の第２の側面においては、FLUTEマルチキャスト配信されたファイル送信単位が受信され、第１のデータ単位に対応する複数の前記ファイル送信単位が受信できるまでバッファリングされ、前記第１のデータ単位に対応する複数の前記ファイル送信単位毎で再生される。【００３８】
本開示の第３の側面であるコンテンツ供給システムは、コンテンツ供給装置と、前記コンテンツ供給装置から配信された前記コンテンツを受信、再生する端末装置とから成るコンテンツ供給システムにおいて、前記コンテンツ供給装置が、前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部とを備え、前記端末装置が、FLUTEマルチキャスト配信された前記ファイル送信単位を受信し、前記第１のデータ単位に対応する複数の前記ファイル送信単位が受信できるまでバッファリングし、前記第１のデータ単位に対応する複数の前記ファイル送信単位毎で再生する。【００３９】
本開示の第３の側面においては、コンテンツ供給装置により、コンテンツのソースデータを元にしてフラグメントストリームが生成され、生成された前記フラグメントストリームがランダムアクセス可能な第１のデータ単位に区切られ、さらに前記第１のデータ単位が第２のデータ単位毎に細分化され、前記第２のデータ単位毎にファイル送信単位が生成されてFLUTEマルチキャスト配信される。また、端末装置により、FLUTEマルチキャスト配信されたファイル送信単位が受信され、第１のデータ単位に対応する複数の前記ファイル送信単位が受信できるまでバッファリングされ、前記第１のデータ単位に対応する複数の前記ファイル送信単位毎で再生される。
【発明の効果】
【００４０】
本開示の第１の側面によれば、セグメントストリームのファイル送信単位を滞りなく送信することができる。【００４１】
本開示の第２の側面によれば、FLUTEマルチキャスト配信されたセグメントストリームを受信、再生することができる。【００４２】
本開示の第３の側面によれば、セグメントストリームのファイル送信単位を滞りなく送信し、端末装置にて受信、再生することができる。
【図面の簡単な説明】
【００４３】
【図１】従来のコンテンツ供給システムの構成の一例を示すブロック図である。
【図２】Fragmented MP4をFLUTE配信する場合のファイル送信単位の従来の生成方法の概要を示す図である。
【図３】Fragmented MP4をFLUTE配信する場合の従来のファイル送信単位のデータ構造を示す図である。
【図４】ファイル送信単位の送信タイミングを示す図である。
【図５】ファイル送信単位の送信タイミングを示す図である。
【図６】本開示を適用したコンテンツ供給システムの構成例を示すブロック図である。
【図７】コンテンツ供給装置にてFragmented MP4をFLUTE配信する場合のファイル送信単位の生成方法の概要を示す図である。
【図８】コンテンツ供給装置にてFragmented MP4をFLUTE配信する場合のデータ構造を示す図である。
【図９】Fragmented MP4ファイルフォーマット仕様の拡張を示す図である。
【図１０】Fragmented MP4ファイルフォーマット仕様の拡張を示す図である。
【図１１】FLUTEストリーム配信処理を説明するフローチャートである。
【図１２】図１１ステップＳ４の処理を説明するフローチャートである。
【図１３】コンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００４４】
以下、本開示を実施するための最良の形態（以下、実施の形態と称する）について説明する。
【００４５】
［コンテンツ供給システムの構成例］
図６は、本開示の実施の形態であるコンテンツ供給システムの構成例を示している。
【００４６】
該コンテンツ供給システム５０は、複数のコンテンツ供給装置６０と、多数の端末装置７０から構成される。コンテンツ供給装置６０と端末装置７０とは、ネットワーク５１を介して接続できる。
【００４７】
ネットワーク５１は、インターネットとそれを利用したCDNに代表される双方向通信網の他、地上放送波、衛星放送波、携帯放送(e)MBMSなどを利用した各種の放送網を含む。
【００４８】
ネットワーク５１には、UTCタイムフォーマットに従ったシステム時刻情報を提供するNTPサーバ５２が接続されている。NTPサーバ５２は、各コンテンツ供給装置６０、各端末装置７０などに対してシステム時刻情報を供給することができ、各コンテンツ供給装置６０、および各端末装置７０は、NTPサーバ５２からのシステム時刻情報に従い、自己のシステム時刻をNTP時間軸に同期させて動作する。
【００４９】
コンテンツ供給装置６０は、コンテンツをHTTPユニキャスト配信するとともにFLUTEマルチキャスト配信するものである。コンテンツ供給装置６０は、チャネルストリーマ６１、DASHセグメンタ６２、FLUTEストリーマ６３、MPDジェネレータ６４、WEBサーバ６５、およびマルチキャストサーバ６６を有する。
【００５０】
なお、コンテンツ供給装置６０が有するチャネルストリーマ６１乃至マルチキャストサーバ６６は、一箇所に集積して配置してもよいし、インターネットなどを介して分散して配置してもよい。
【００５１】
チャネルストリーマ６１は、端末装置７０に配信するための、リアルタイムに撮影されたコンテンツのソースデータからビットレートが異なる複数のストリーミングデータを生成してDASHセグメンタ６２に出力する。
【００５２】
DASHセグメンタ６２は、各ストリーミングデータを時間的にセグメントに分割することにより、例えばFragmented MP4などのセグメントストリームを生成し、生成したセグメントストリームをFLUTEストリーマ６３およびWEBサーバ６５に出力する。また、DASHセグメンタ６２は、セグメントストリームの供給元を表すアドレスを含むメタデータをMPDジェネレータ６４に通知する。
【００５３】
FLUTEストリーマ６３は、DASHセグメンタ６２から順次入力されるセグメントストリームをFLUTEストリームに変換してマルチキャストサーバ６６に出力する（詳細後述）。また、FLUTEストリーマ６３は、MPDジェネレータ６４で生成されるMPDをFLUTEパケットに格納してマルチキャストサーバ６６に出力する。
【００５４】
MPDジェネレータ６４は、DASHセグメンタ６２から通知されるメタデータに基づき、セグメントストリームのファイルの供給元（WEBサーバ６５）を表すアドレスなどを記述したMPDを生成してFLUTEストリーマ６３およびWEBサーバ６５に出力する。
【００５５】
WEBサーバ６５は、端末装置７０からのMPDの要求（HTTPリクエスト）に応じ、MPDジェネレータ６４から入力されているMPDを要求元にHTTPユニキャスト配信する。また、WEBサーバ６５は、端末装置７０からのセグメントストリームの要求（HTTPリクエスト）に応じ、セグメントストリームのファイルを要求元にHTTPユニキャスト配信する。
【００５６】
マルチキャストサーバ６６は、MPDをFLUTEマルチキャスト配信する。また、マルチキャストサーバ６６は、FLUTEストリームをFLUTEマルチキャスト配信する。
【００５７】
端末装置７０は、ネットワーク５１を介してコンテンツ供給装置６０からMPDを取得する。具体的には、HTTPリクエストを送信、それに応じてHTTPユニキャスト配信されるMPDを受信するか、FLUTEマルチキャスト配信されるMPDを受信する。また、端末装置７０は、取得したMPDに基づいてWEBサーバ６５にセグメントストリームを要求し、これに応じてHTTPマルチキャスト配信されるセグメントストリームのファイルを受信、再生する。さらに、端末装置７０は、FLUTEマルチキャスト配信されるFLUTEストリームを受信、再生する。なお、端末装置７０が、FLUTEマルチキャスト配信されるMPDやFLUTEストリームを受信する場合には、FLUTEマルチキャスト配信を行なうマルチキャストサーバ６６のポータルチャネルが記述されたアナウンス情報が参照される。
【００５８】
該アナウンス情報は、FLUTEマルチキャスト配信がネットワーク５１に含まれる携帯放送(e)MBMSを介して行われる場合、MBMSにおけるUSD(User Service Description)などにより、インタラクションチャネルまたはブロードキャスト・マルチキャストチャネルを介して周知される。また、FLUTEマルチキャスト配信がネットワーク５１に含まれる地上放送波または衛星放送を介して行われる場合、該アナウンス情報は、DVB-H(IPDC)のESG(Electronic Service Guide)などにより、インタラクションチャネルまたはブロードキャスト・マルチキャストチャネルを介して周知される。
【００５９】
［Fragmented MP4に基づくFLUTEストリームの生成について］
上述したように、従来、Fragmented MP4をFLUTE配信する場合には、GOP毎にファイル送信端を生成して送信していた。本実施の形態では、GOPの途中であっても逐次、ファイル転送単位を生成して配信するようにする。
【００６０】
図７は、FLUTEストリーマ６３による、順次入力されるFragmented MP4のセグメントストリームから、FLUTEストリームのファイル転送単位を生成する概要を示している。図７の例では、Fragmented MP4のGOP範囲のデータが、時系列順にSample(s)(1)，Sample(s)(2)，Sample(s)(3)からなるものとする。
【００６１】
まず、Sample(s)(1)が入力された段階で、Sample(s)(1)に対応するファイル送信単位が生成、FLUTE配信され、次に、Sample(s)(2)が入力された段階で、Sample(s)(2)に対応するファイル送信単位、FLUTE配信が生成される。
【００６２】
なお、Sample(s)(3)が入力された段階で、Sample(s)(3)に対応するファイル送信単位が生成、FLUTE配信される。ただし、端末装置７０では、GOPを構成するSample(s)(1)乃至Sample(s)(3)に対応する３つのファイル送信単位を受信した段階でデコードを行なうものとする。
【００６３】
図８は、本実施の形態で生成されるファイル送信単位のデータ構造を示している。このファイル送信単位（Media Segment）はstyp，moof，mdatから構成される。moofはmfhdとtrafからなり、trafはtfhd，tfdt，ntpt，trun，sdtpを有する。
【００６４】
図８と図３を比較して明らかなように、本実施の形態で生成されるファイル送信単位には、図３のファイル送信単位に対して、mfhdには、moofのバージョンを表すversion属性が追加される。また、moofのtrafにはNTP Time Box(ntpt)が追加される。ntptには、tfdtに格納される該GOP単位の先頭のSample(s)(1)のBaseMediaDecodeTime-1に対応するNTP Time-1が格納される。
【００６５】
Sample(s)(1)に対応するファイル送信単位は、styp，moof，mdatを有し、moof/mfhdにはsequence_numberとversion＝１が格納され、moof/traf/tfdtにはSample(s)(1)のBaseMediaDecodeTime-1が格納され、moof/traf/ntptにはBaseMediaDecodeTime-1に対応するNTP Time-1が格納される。また、moof/traf/trunにはSample(s)(1)のプレゼンテーションタイムを計算するために必要な情報が格納される。mdatには、mdatのヘッダとSample(s)(1)が格納される。
【００６６】
Sample(s)(2)に対応するファイル送信単位では、stypが省略され、moofはSample(s)(1)に対応するファイル送信単位のmoofがコピーされ、moof/mfhdのversionが２に更新されて、moof/traf/trunにはSample(s)(2)のプレゼンテーションタイムを計算するために必要な情報が追加される。mdatには、Sample(s)(2)が格納される。
【００６７】
Sample(s)(3)に対応するファイル送信単位では、stypが省略され、moofはSample(s)(2)に対応するファイル送信単位のmoofがコピーされ、moof/mfhdのversionが３に更新されて、moof/traf/trunにはSample(s)(3)のプレゼンテーションタイムを計算するために必要な情報が追加される。mdatには、Sample(s)(3)が格納される。
【００６８】
Sample(s)(1)，Sample(s)(2)，Sample(s)(3)のそれぞれに対応するファイル送信単位のデータを比較した場合、moofについては徐々にそのデータ量が大きくなるものの、mdatには、ほぼ同等となる。また、これらと従来のGOP単位のファイル送信単位のデータ量を比較した場合、ほぼ１／３にすることができるので、図５に示されたように、ファイル送信単位をより小型化して逐次送信することが可能となる。
【００６９】
［Fragmented MP4ファイルフォーマット仕様の拡張］
図９は、moof/mfhdにversion属性を追加するためのFragmented MP4ファイルフォーマット仕様の拡張を示している。
【００７０】
すなわち、本実施の形態では、同図Ａに示される従来のmoof/mfhdのsequence_number属性に関するSyntaxに、同図Ｂに示されるようにversion属性を追加した状態に拡張する。version属性を設けることにより、端末装置７０で受信したファイル送信単位に含まれるmoofのsequence_numberが同一である場合に、そのmoofが先頭のSample(s)(1)のみに対応するものであるのか、Sample(s)(1)からSample(s)(3)、すなわちGOP全体に対応するものであるのかを判断することができる。なお、同図Ａおよび同図Ｂをまとめて、同図Ｃに示されるようにFragmented MP4ファイルフォーマット仕様を拡張してもよい。
【００７１】
図１０は、moof/trafにNTP Time Box(ntpt)を追加するためのFragmented MP4のファイルフォーマット仕様の拡張を示している。ntptを設けることにより、コンテンツのリアルタイム性を確保してそのFragmented MP4をFLUTEマルチキャスト配信することができる。
【００７２】
［コンテンツ供給システム５０の動作］
次に、コンテンツ供給システム５０の動作について説明する。
【００７３】
図１１は、コンテンツ供給装置６０にてFLUTEストリームを配信する処理（以下、FLUTEストリーム配信処理と称する）を説明するフローチャートである。
【００７４】
ステップＳ１において、チャネルストリーマ６１は、端末装置７０に配信するための、リアルタイムに撮影されたコンテンツのソースデータからビットレートが異なる複数のストリーミングデータを生成してDASHセグメンタ６２に出力する。DASHセグメンタ６２は、各ストリーミングデータを元に、Fragmented MP4（セグメントストリーム）を生成してFLUTEストリーマ６３に出力する。
【００７５】
ステップＳ２において、FLUTEストリーマ６３は、DASHセグメンタ６２から順次入力されるFragmented MP4のGOPの先頭のSample(s)(1)に対応するファイル送信単位を生成する。
【００７６】
具体的には、Sample(s)(1)に対応するファイル送信単位として、styp，moof，mdatを設け、moof/mfhdにはsequence_numberとversion＝１を格納し、moof/traf/tfdtにはSample(s)(1)のBaseMediaDecodeTime-1を格納し、moof/traf/ntptにはBaseMediaDecodeTime-1に対応するNTP Time-1を格納する。また、moof/traf/trunにはSample(s)(1)のプレゼンテーションタイムを計算するために必要な情報を格納する。mdatには、mdatのヘッダとSample(s)(1)を格納する。
【００７７】
ステップＳ３において、マルチキャストサーバ１６は、ステップＳ２の処理で生成されたSample(s)(1)に対応するファイル送信単位を、ネットワーク５１を介してFLUTEマルチキャスト配信する。
【００７８】
次に、ステップＳ４において、FLUTEストリーマ６３は、DASHセグメンタ６２から順次入力されるFragmented MP4のGOPの次のSample(s)（Sample(s)(2)またはSample(s)(3)）に対応するファイル送信単位を生成する。
【００７９】
このステップＳ4の処理について詳述する。図１２は、ステップＳ４の処理を詳細に説明するフローチャートである。
【００８０】
次のSample(s)がSample(s)(2)である場合、ステップＳ１１において、FLUTEストリーマ６３は、stypを省略し、前のファイル送信単位（いまの場合、Sample(s)(1)に対応するファイル送信単位）からmoofをコピーする。さらに、ステップＳ１２において、FLUTEストリーマ６３は、moof/mfhdのversionを２に更新する。また、moof/traf/trunにはSample(s)(2)のプレゼンテーションタイムを計算するために必要な情報を追加する。ステップＳ１３において、FLUTEストリーマ６３は、mdatにSample(s)(2)を格納する。
【００８１】
また、次のSample(s)がSample(s)(3)である場合、ステップＳ１１において、FLUTEストリーマ６３は、stypを省略し、前のファイル送信単位（いまの場合、Sample(s)(2)に対応するファイル送信単位）からmoofをコピーする。さらに、ステップＳ１２において、FLUTEストリーマ６３は、moof/mfhdのversionを３に更新する。また、moof/traf/trunにはSample(s)(3)のプレゼンテーションタイムを計算するために必要な情報を追加する。ステップＳ１３において、FLUTEストリーマ６３は、mdatにSample(s)(3)を格納する。
【００８２】
図１１に戻る。ステップＳ５において、マルチキャストサーバ１６は、ステップＳ４で生成されたファイル送信単位を、ネットワーク５１を介してFLUTEマルチキャスト配信する。ステップＳ６において、FLUTEストリーマ６３は、ステップＳ４で生成したファイル送信単位がGOPの終わりに対応するものであるか否かを判断する。この判断が否定である場合、処理はステップＳ４に戻されて、それ以降が繰り返される。ステップＳ６での判断が肯定である場合、処理はステップＳ７に進められる。
【００８３】
ステップＳ７において、FLUTEストリーマ６３は、DASHセグメンタ６２からFragmented MP4（セグメントストリーム）の入力が終了したかを判断する。この判断が否定である場合、処理はステップＳ２に戻されて、それ以降が繰り返される。ステップＳ７での判断が肯定である場合、このFLUTEストリーム配信処理は終了される。
【００８４】
以上説明したFLUTEストリーム配信処理によれば、Fragmented MP4（セグメントストリーム）をFLUTEマルチキャスト配信する場合、より小さいファイル送信単位として逐次送信することができる。よって、今後、コンテンツが高画質化してFragmented MP4のビットレートが増加したりしても、ファイル送信単位の供給に滞りを生じさせてしまうことを抑止できる。また、この滞りによる端末装置７０でのバッファリングの開始時刻に遅延をもたらしたり、その結果としてリアルタイム性があるコンテンツの再生に悪影響を与えてしまったりすることを抑止できる。
【００８５】
ところで、上述した一連の処理を実行するコンテンツ供給装置６０、および端末装置７０は、それぞれをハードウェアにより構成する他、コンピュータがソフトウェアを実行することにより実現することもできる。このコンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【００８６】
図１３は、上述したコンピュータのハードウェアの構成例を示すブロック図である。
【００８７】
このコンピュータ１００において、CPU（Central Processing Unit）１０１，ROM（Read Only Memory）１０２，RAM（Random Access Memory）１０３は、バス１０４により相互に接続されている。
【００８８】
バス１０４には、さらに、入出力インタフェース１０５が接続されている。入出力インタフェース１０５には、入力部１０６、出力部１０７、記憶部１０８、通信部１０９、およびドライブ１１０が接続されている。
【００８９】
入力部１０６は、キーボード、マウス、マイクロフォンなどよりなる。出力部１０７は、ディスプレイ、スピーカなどよりなる。記憶部１０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部１０９は、ネットワークインタフェースなどよりなる。ドライブ１１０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア１１１を駆動する。
【００９０】
以上のように構成されるコンピュータ１００では、CPU１０１が、例えば、記憶部１０８に記憶されているプログラムを、入出力インタフェース１０５およびバス１０４を介して、RAM１０３にロードして実行することにより、上述した一連の処理が行われる。
【００９１】
コンピュータ１００（CPU１０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア１１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【００９２】
コンピュータ１００では、プログラムは、リムーバブルメディア１１１をドライブ１１０に装着することにより、入出力インタフェース１０５を介して、記憶部１０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部１０９で受信し、記憶部１０８にインストールすることができる。その他、プログラムは、ROM１０２や記憶部１０８に、あらかじめインストールしておくことができる。
【００９３】
なお、コンピュータ１００が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであってもよいし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであってもよい。
【００９４】
本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【００９５】
本開示は以下のような構成もとることができる。
（１）
コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置において、
前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、
生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位に区切り、さらに前記第１のデータ単位を第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を生成してFLUTEマルチキャスト配信する配信部と
を備えるコンテンツ供給装置。
（２）
前記配信部は、前記フラグメントストリームの前記第１のデータ単位の前記第２のデータ単位に対して、version属性が追加されたmoof、および前記第２のデータ単位のデータを格納したmdatからなる前記ファイル送信単位を生成する
前記（１）に記載のコンテンツ供給装置。
（３）
前記配信部は、
前記フラグメントストリームの前記第１のデータ単位の先頭の前記第２のデータ単位に対して、styp、version属性およびntptが追加されたmoof、および前記第２のデータ単位のデータを格納したmdatからなる前記ファイル送信単位を生成し、
前記第１のデータ単位の前記先頭の前記第２のデータ単位とは異なる他の第２のデータ単位に対して、moof、およびmdatからなる前記ファイル送信単位を生成する
前記（１）または（２）に記載のコンテンツ供給装置。
（４）
前記配信部は、前記version属性にmoofのバーションを示す数値を格納し、前記ntptに前記第１のデータ単位の先頭の前記第２のデータ単位のBaseMediaDecodeTime-1に対応するNTP Time-1を格納する
前記（３）に記載のコンテンツ供給装置。
（５）
前記配信部は、前記先頭の前記第２のデータ単位とは異なる他の第２のデータ単位に対応する前記ファイル送信単位のmoofを、前回生成した前記ファイル送信単位の、前記version属性および前記ntptを含む前記moofをコピーして更新することにより生成する
前記（４）に記載のコンテンツ供給装置。
【符号の説明】
【００９６】
５０  コンテンツ供給システム，  ５１  ネットワーク，  ５２  NTPサーバ，  ６０  コンテンツ供給装置,  ６１  チャネルストリーマ，  ６２  DASHセグメンタ，  ６３  FLUTEストリーマ，  ６４    MPDジェネレータ，  ６５  WEBサーバ，  ６６  マルチキャストサーバ，  ７０  端末装置，  １００  コンピュータ，  １０１  CPU
【図１】
2015008653.tif 000003
【図２】
2015008653.tif 000004
【図３】
2015008653.tif 000005
【図４】
2015008653.tif 000006
【図５】
2015008653.tif 000007
【図６】
2015008653.tif 000008
【図７】
2015008653.tif 000009
【図８】
2015008653.tif 000010
【図９】
2015008653.tif 000011
【図１０】
2015008653.tif 000012
【図１１】
2015008653.tif 000013
【図１２】
2015008653.tif 000014
【図１３】
2015008653.tif 000015
【手続補正書】
【提出日】平成26年12月4日(2014.12.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置において、
リアルタイムに撮影された前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、
順次生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位よりも時間長が短い第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を順次生成し、順次生成した前記ファイル送信単位を順次ＦＬＵＴＥマルチキャスト配信する配信部と
を備えるコンテンツ供給装置。
【請求項２】
前記配信部は、前記フラグメントストリームの前記第１のデータ単位の前記第２のデータ単位に対して、ｖｅｒｓｉｏｎ属性が追加されたｍｏｏｆ、および前記第２のデータ単位のデータを格納したｍｄａｔからなる前記ファイル送信単位を生成する
請求項１に記載のコンテンツ供給装置。
【請求項３】
前記配信部は、
前記フラグメントストリームの前記第１のデータ単位の先頭の前記第２のデータ単位に対して、ｓｔｙｐ、ｖｅｒｓｉｏｎ属性およびｎｔｐｔが追加されたｍｏｏｆ、および前記第２のデータ単位のデータを格納したｍｄａｔからなる前記ファイル送信単位を生成し、
前記第１のデータ単位の前記先頭の前記第２のデータ単位とは異なる他の第２のデータ単位に対して、ｍｏｏｆ、およびｍｄａｔからなる前記ファイル送信単位を生成する
請求項２に記載のコンテンツ供給装置。
【請求項４】
前記配信部は、前記ｖｅｒｓｉｏｎ属性にｍｏｏｆのバーションを示す数値を格納し、前記ｎｔｐｔに前記第１のデータ単位の先頭の前記第２のデータ単位のＢａｓｅＭｅｄｉａＤｅｃｏｄｅＴｉｍｅ−１に対応するＮＴＰ  Ｔｉｍｅ−１を格納する
請求項３に記載のコンテンツ供給装置。
【請求項５】
前記配信部は、前記先頭の前記第２のデータ単位とは異なる他の第２のデータ単位に対応する前記ファイル送信単位のｍｏｏｆを、前回生成した前記ファイル送信単位の、前記ｖｅｒｓｉｏｎ属性および前記ｎｔｐｔを含む前記ｍｏｏｆをコピーして更新することにより生成する
請求項４に記載のコンテンツ供給装置。
【請求項６】
コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置のコンテンツ供給方法において、
前記コンテンツ供給装置による、
リアルタイムに撮影された前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成ステップと、
順次生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位よりも時間長が短い第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を順次生成し、順次生成した前記ファイル送信単位を順次ＦＬＵＴＥマルチキャスト配信する配信ステップと
を含むコンテンツ供給方法。
【請求項７】
コンテンツのフラグメントストリームをマルチキャスト配信するコンピュータに、
リアルタイムに撮影された前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、
順次生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位よりも時間長が短い第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を順次生成し、順次生成した前記ファイル送信単位を順次ＦＬＵＴＥマルチキャスト配信する配信部と
して機能させるプログラム。
【請求項８】
コンテンツのフラグメントストリームをマルチキャスト配信するコンテンツ供給装置から配信された前記コンテンツを受信、再生する端末装置において、
前記コンテンツ供給装置は、
リアルタイムに撮影された前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、
順次生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位よりも時間長が短い第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を順次生成し、順次生成した前記ファイル送信単位を順次ＦＬＵＴＥマルチキャスト配信する配信部と
を備え、
ＦＬＵＴＥマルチキャスト配信された前記ファイル送信単位を受信し、前記第１のデータ単位に対応する複数の前記ファイル送信単位が受信できるまでバッファリングし、前記第１のデータ単位に対応する複数の前記ファイル送信単位毎で再生する
端末装置。
【請求項９】
コンテンツ供給装置と、前記コンテンツ供給装置から配信された前記コンテンツを受信、再生する端末装置とから成るコンテンツ供給システムにおいて、
前記コンテンツ供給装置は、
リアルタイムに撮影された前記コンテンツのソースデータを元にして前記フラグメントストリームを生成するフラグメントストリーム生成部と、
順次生成された前記フラグメントストリームをランダムアクセス可能な第１のデータ単位よりも時間長が短い第２のデータ単位毎に細分化し、前記第２のデータ単位毎にファイル送信単位を順次生成し、順次生成した前記ファイル送信単位を順次ＦＬＵＴＥマルチキャスト配信する配信部と
を備え、
前記端末装置は、
ＦＬＵＴＥマルチキャスト配信された前記ファイル送信単位を受信し、前記第１のデータ単位に対応する複数の前記ファイル送信単位が受信できるまでバッファリングし、前記第１のデータ単位に対応する複数の前記ファイル送信単位毎で再生する
コンテンツ供給システム。
【国際調査報告】
2015008653.tif 000016
2015008653.tif 000017