JP2014212456A - 送信装置、メタファイル送信方法、受信装置および受信処理方法 - Google Patents
送信装置、メタファイル送信方法、受信装置および受信処理方法 Download PDFInfo
- Publication number
- JP2014212456A JP2014212456A JP2013087898A JP2013087898A JP2014212456A JP 2014212456 A JP2014212456 A JP 2014212456A JP 2013087898 A JP2013087898 A JP 2013087898A JP 2013087898 A JP2013087898 A JP 2013087898A JP 2014212456 A JP2014212456 A JP 2014212456A
- Authority
- JP
- Japan
- Prior art keywords
- presentation
- mpd
- region
- presentation control
- smil
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims description 36
- 238000000034 method Methods 0.000 title description 15
- 238000003672 processing method Methods 0.000 title description 2
- 238000012545 processing Methods 0.000 claims abstract description 24
- 230000004044 response Effects 0.000 claims description 26
- 230000006978 adaptation Effects 0.000 claims description 16
- 230000008859 change Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 12
- 230000007704 transition Effects 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008929 regeneration Effects 0.000 description 2
- 238000011069 regeneration method Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000013643 reference control Substances 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6125—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/633—Control signals issued by server directed to the network components or client
- H04N21/6332—Control signals issued by server directed to the network components or client directed to client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
- H04N21/64322—IP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/654—Transmission by server directed to the client
- H04N21/6543—Transmission by server directed to the client for forcing some client operations, e.g. recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】コンテンツの提示レイアウト制御を簡易に行い得るようにする。【解決手段】受信部により、メタファイルを受信する。このメタファイルは、配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報を持つ。さらに、このメタファイルは、コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいはコンテンツの提示制御を行うための制御情報を持つ。処理部により、受信されたメタファイルに基づく処理を行う。【選択図】図7
Description
本技術は、送信装置、メタファイル送信方法、受信装置および受信処理方法に関し、特に、配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームの情報を持つメタファイルを、そのネットワークを通じてクライアント端末に送信する送信装置等に関する。
従来、インターネット等のネットワークを利用したIPTV(Internet Protocol Television)配信システムが提案されている(例えば、特許文献1参照)。IPTV等のインターネットストリーミングにおける標準化の流れとして、HTTP(Hyper Text Transfer Protocol)ストリーミングによるVoD(Video On Demand System)ストリーミングや、ライブストリーミングに適用される方式の標準化が行われている。
特に、ISO/IEC/MPEGで標準化が行われているDASH(Dynamic Adaptive Streaming over HTTP)が注目されている。DASHは、MPD(Media Presentation Description)と呼ばれるメタファイルと、そこに記述されるチャンク化されたメディアデータ(Audio/Video/Subtitle等のメディアデータ)のアドレス(url)を元にストリーミングデータを取得して再生する。
MPDのフォーマットでは、オーディオ(Audio)やビデオ(Video)等のそれぞれのストリーム毎にリプレゼンテーション(Representation)という要素を利用して、それぞれの属性を記述できるようになっている。例えば、レートの異なる複数のビデオストリーム毎に、リプレゼンテーションを分けてそれぞれのレートを記述する。クライアント側では、そのレートの値を参考にして、クライアントの置かれているネットワーク環境の状態に応じて、最適なストリームを選択できるようになっている。
現行のDASHにおいては、ストリームの表示画面上の空間レイアウトを記述する属性や、さらには、対象ディスプレイデバイスの種類を指定する属性はない。しかし、MPD(Media Presentation Description)のみで空間レイアウト、ならびに、対象ディスプレイデバイスの種類を記述することができると、別途提示レイアウト制御を記述するHTML5等のブラウザレイヤーや、HTML5にもない対象ディスプレイを指定する属性を記述するファイル等が必要なくなり、簡易なオーサリングが期待できる。
本技術の目的は、コンテンツの提示レイアウト制御を簡易に行い得るようにすることにある。
本技術の概念は、
配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを保持する保持部と、
上記クライアント端末から上記ネットワークを通じて送られてくる送信要求に応じて、上記保持されているメタファイルを、上記ネットワークを通じて、上記クライアント端末に送信する送信部とを備える
送信装置にある。
配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを保持する保持部と、
上記クライアント端末から上記ネットワークを通じて送られてくる送信要求に応じて、上記保持されているメタファイルを、上記ネットワークを通じて、上記クライアント端末に送信する送信部とを備える
送信装置にある。
本技術において、保持部には、メタファイルが保持される。このメタファイルは、配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいはコンテンツの提示制御を行うための提示制御情報を持つようにされる。例えば、メタファイルは拡張MPDファイルであり、提示制御情報は拡張SMIL要素である、ようにされてもよい。
送信部により、クライアント端末からネットワークを通じて送られてくる送信要求に応じて、保持されているメタファイルが、ネットワークを通じて、クライアント端末に送信される。例えば、クライアント端末としては、テレビ受信機、タブレット端末、モバイル端末などが該当する。
例えば、提示制御情報は、取得情報に含まれる所定の制御対象要素を参照するための参照情報を持つ、ようにされてもよい。この場合、例えば、メタファイルは拡張MPDファイルであり、制御対象要素はアダプテーションセット要素あるいはリプレゼンテーション要素である、ようにされてもよい。また、例えば、提示制御情報は、所定数の子提示要素を含む親提示要素の提示時間情報を持つ、ようにされてもよい。
また、例えば、提示制御情報は、複数の提示デバイス種類に対応した提示制御情報を持つ、ようにされてもよい。この場合、例えば、提示制御情報は、第1の提示デバイス種類の提示制御情報と同時に存在し得る第2の提示デバイス種類の提示制御情報を指定する情報を持つ、ようにされてもよい。
このように本技術においては、クライアント端末に送信されるメタファイルが、配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報を持つと共に、コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいはコンテンツの提示制御を行うための提示制御情報を持つものである。そのため、例えば、クライアント端末において、コンテンツの提示レイアウト制御を簡易に行うことが可能となる。
また、本技術の他の概念は、
配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを受信する受信部と、
上記受信されたメタファイルに基づく処理を行う処理部とを備える
受信装置にある。
配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを受信する受信部と、
上記受信されたメタファイルに基づく処理を行う処理部とを備える
受信装置にある。
本技術において、受信部により、メタファイルが受信される。このメタファイルは、配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいはコンテンツの提示制御を行うための提示制御情報を持つようにされる。例えば、メタファイルは拡張MPDファイルであり、提示制御情報は拡張SMIL要素である、ようにされてもよい。処理部により、受信されたメタファイルに基づく処理が行われる。
例えば、提示制御情報は、取得情報に含まれる所定の制御対象要素を参照するための参照情報を持つ、ようにされてもよい。この場合、例えば、メタファイルは拡張MPDファイルであり、制御対象要素はアダプテーションセット要素あるいはリプレゼンテーション要素である、ようにされてもよい。また、例えば、提示制御情報は、所定数の子提示要素を含む親提示要素の提示時間情報を持つ、ようにされてもよい。
また、例えば、提示制御情報は、複数の提示デバイス種類に対応した提示制御情報を持つ、ようにされてもよい。この場合、例えば、提示制御情報は、第1の提示デバイス種類の提示制御情報と同時に存在し得る第2の提示デバイス種類の提示制御情報を指定する情報を持つ、ようにされてもよい。
このように本技術においては、受信されるメタファイルが、配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報を持つと共に、コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいはコンテンツの提示制御を行うための提示制御情報を持つものである。そのため、例えば、コンテンツの提示レイアウト制御を簡易に行うことが可能となる。
本技術によれば、コンテンツの提示レイアウト制御を簡易に行うことができる。なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
以下、発明を実施するための形態(以下、「実施の形態」とする)について説明する。なお、説明は以下の順序で行う。
1.実施の形態
2.変形例
1.実施の形態
2.変形例
<1.実施の形態>
[ストリーム配信システム]
図1は、実施の形態としてのストリーム配信システム10の構成例を示している。このストリーム配信システム10は、MPEG−DASHベースのストリーム配信システムである。このストリーム配信システム10は、DASHセグメントストリーマ11およびDASH MPDサーバ12に、N個のIPTVクライアント13-1,13-2,・・・,13-Nが、CDN(Content Delivery Network)14を介して、接続された構成となっている。なお、図1に破線で図示するように、さらに、提示制御情報生成サーバ15が、CDN14を介して、N個のIPTVクライアント13-1,13-2,・・・,13-Nに接続されることもある。
[ストリーム配信システム]
図1は、実施の形態としてのストリーム配信システム10の構成例を示している。このストリーム配信システム10は、MPEG−DASHベースのストリーム配信システムである。このストリーム配信システム10は、DASHセグメントストリーマ11およびDASH MPDサーバ12に、N個のIPTVクライアント13-1,13-2,・・・,13-Nが、CDN(Content Delivery Network)14を介して、接続された構成となっている。なお、図1に破線で図示するように、さらに、提示制御情報生成サーバ15が、CDN14を介して、N個のIPTVクライアント13-1,13-2,・・・,13-Nに接続されることもある。
DASHセグメントストリーマ11は、ウェブ(Web)サーバである。このDASHセグメントストリーマ11は、所定のコンテンツのメディアデータ(ビデオデータ、オーディオデータ、字幕データなど)に基づいて、DASH仕様のストリームセグメント(以下、「DASHセグメント」という)を生成し、HDDなどで構成される保持部に保持する。そして、後述するように、IPTVクライアントからの要求に応じて、送信部により、DASHセグメントを当該要求元のIPTVクライアントに送る。
また、DASHセグメントストリーマ11は、IPTVクライアント13(13-1,13-2,・・・,13-N)からCDN14を介して送られてくる所定ストリームのセグメントの要求に対応して、そのストリームのセグメントを、CDN14を介して、要求元のIPTVクライアント13に送信する。この場合、IPTVクライアント13は、MPDファイルに記載されているレートの値を参照して、クライアントの置かれているネットワーク環境の状態に応じて、最適なレートのストリームを選択して要求を行う。
DASH MPDサーバ12は、DASHセグメントストリーマ11において生成されるDASHセグメントを取得するためのMPDファイルを生成し、HDDなどで構成される保持部に保持する。そして、後述するように、IPTVクライアントからの要求に応じて、送信部により、MPDファイルを当該要求元のIPTVクライアントに送る。DASH MPDサーバ12は、コンテンツマネジメントサーバ(図1には図示せず)からのコンテンツメタデータと、DASHセグメントストリーマ11において生成されたセグメントのアドレス(url)をもとに、MPDファイルを生成する。
MPDのフォーマットでは、ビデオやオーディオなどのそれぞれのストリーム毎にリプレゼンテーション(Representation)という要素を利用して、それぞれの属性が記述される。例えば、MPDファイルには、レートの異なる複数のビデオデータストリーム毎に、リプレゼンテーションを分けてそれぞれのレートが記述される。IPTVクライアント13では、そのレートの値を参考にして、上述したように、IPTVクライアント13の置かれているネットワーク環境の状態に応じて、最適なストリームを選択できる。
MPDファイルは、図2に示すように、階層構造をとる。このMPDファイルには、DASHセグメントストリーマ11に格納した動画の圧縮方式や符号化速度、画像サイズ、言語などの情報がXML形式で階層的に記述される。このMPDファイルは、ピリオド(Period)、アダプテーションセット(AdaptationSet)、リプレゼンテーション(Representation)、セグメントインフォ(SegmentInfo)、イニシャライゼーション・セグメント(Initialization Segment)、メディア・セグメント(Media Segment)などの構造体(要素)が、階層的に含まれている。
ピリオドの構造体は、プログラム(同期を取った1組の動画や音声等のデータ)の情報を持つ。また、ピリオドの構造体に含まれるアダプテーションセットの構造体は、ストリームの選択範囲(リプレゼンテーション群)をグルーピングする。また、アダプテーションセットの構造体に含まれるリプレゼンテーションの構造体は、動画や音声の符号化速度、動画の音声サイズなどの情報を持つ。
また、リプレゼンテーションの構造体に含まれるセグメントインフォの構造体は、動画や音声のセグメント関連の情報を持つ。また、セグメントインフォの構造体に含まれるイニシャライゼーション・セグメントの構造体は、データ圧縮方式などの初期化情報を持つ。また、セグメントインフォの構造体に含まれるメディア・セグメントの構造体は、動画や音声のセグメントを取得するアドレスなどの情報を持つ。
図3は、上述のMPDファイルに含まれる各構造体の一例を時間軸上に並べて示したものである。この例においては、MPDファイルにピリオドが2個含まれ、各ピリオドにセグメントが2個含まれている。また、この例においては、各ピリオドにアダプテーションセットが2個含まれ、各アダプテーションセットにストリーム属性の異なる同一内容のストリームに係るリプレゼンテーションが2個含まれている。
図4は、上述のMPDファイルに階層的に配置されている各構造体の関係の一例を示している。図4(a)に示すように、MPDファイル全体としてのメディア・プレゼンテーション(Media Presentation)には、時間間隔で区切られた複数のピリオド(Period)が存在する。例えば、最初のピリオドはスタートが0秒から、次のピリオドはスタートが100秒から、などとなっている。
図4(b)に示すように、ピリオドには、複数のリプレゼンテーション(Representation)が存在する。この複数のリプレゼンテーションには、上述したアダプテーションセット(AdaptationSet)でグルーピングされる、ストリーム属性、例えばレートの異なる同一内容のビデオデータストリームに係るリプレゼンテーション群が存在する。
図4(c)に示すように、リプレゼンテーションには、セグメントインフォ(SegmentInfo)が含まれている。このセグメントインフォには、図4(d)に示すように、イニシャライゼーション・セグメント(Initialization Segment)と、ピリオドをさらに細かく区切ったセグメント(Segment)毎の情報が記述される複数のメディア・セグメント(Media Segment)が存在する。メディア・セグメントには、ビデオやオーディオなどのセグメントデータを実際に取得するためのアドレス(url)の情報等が存在する。
なお、アダプテーションセットでグルーピングされている複数のリプレゼンテーションの間では、ストリームのスイッチングを自由に行うことができる。これにより、IPTVクライアントの置かれているネットワーク環境の状態に応じて、最適なレートのストリームを選択でき、途切れのない動画配信が可能となる。
図5は、ピリオド(Period)と、リプレゼンテーション(Representation)と、セグメント(Segment)の関係の一例を示している。この例においては、MPDファイルにピリオドが2個含まれ、各ピリオドにセグメントが2個含まれている。また、この例においては、各ピリオドに、同一のメディアコンテンツに係る複数のリプレゼンテーションが含まれている。
図6は、MPDファイルの構造をツリー形式で示している。MPD要素の下にピリオド(period)要素がある。また、ピリオド要素の下にアダプテーションセット(AdaptationSet)要素があり、さらにその下にリプレゼンテーション(Representation
)要素がある。また、リプレゼンテーション要素の下にセグメントリスト(SegmentList)要素があり、さらにその下にセグメントURL(SegmentURL)要素がある。
)要素がある。また、リプレゼンテーション要素の下にセグメントリスト(SegmentList)要素があり、さらにその下にセグメントURL(SegmentURL)要素がある。
ストリームを構成するチャンク化されたコンテンツデータのシーケンスは、チャンク化されたコンテンツデータが格納されるファイルの「url」のシーケンスか、もしくは、チャンク化されたコンテンツのデータがファイルの中に納まっている場合には、それらが格納されるファイルの「URL+バイト範囲」のシーケンスにより表現されるように、DASHで規定されている。
例えば、「URL+バイト範囲」のシーケンスにより表現される場合、MPDファイルは、以下のように記述される。
<MPD …. >
<Period ….. >
<AdaptationSet>
<Representation …..>
……
<BaseURL>http://example.com/counter-10mn_avc_dash.mp4</BaseURL>
<SegmentList ….. >
……
<SegmentURL mediaRange="795-83596" />
<SegmentURL mediaRange="83597-166046" />
<SegmentURL mediaRange="166047-248857" />
<SegmentURL mediaRange="248858-331477" />
……..
</MPD>
<Period ….. >
<AdaptationSet>
<Representation …..>
……
<BaseURL>http://example.com/counter-10mn_avc_dash.mp4</BaseURL>
<SegmentList ….. >
……
<SegmentURL mediaRange="795-83596" />
<SegmentURL mediaRange="83597-166046" />
<SegmentURL mediaRange="166047-248857" />
<SegmentURL mediaRange="248858-331477" />
……..
</MPD>
対象のMP4のメディアが格納されるファイルのURLが、MPD/Period/AdaptationSet/Representation/BaseURLに格納される「http://example.com/counter-10mn_avc_dash.mp4」で表される。
そして、「MPD/Period/AdaptationSet/Representation/SegmentList/SegmentURL/@mediaRange=”795-83596”」は、そのファイルの中の795バイト目から83596バイト目までのバイト範囲が1つ目のセグメント(Segment)であることを示している。そして、「MPD/Period/AdaptationSet/Representation/SegmentList/SegmentURL/@mediaRange=” 83597-166046”」は、そのファイルの中の83587バイト目から166046バイト目までのバイト範囲が2つ目のセグメントであることを示している。
クライアントから、これらのセグメントを取得する際には、ファイルの「url」である「 http://example.com/counter-10mn_avc_dash.mp4」とともに、レンジ(Range)ヘッダに当該バイトレンジを指定してHTTPリクエストを発行する。
最初のセグメントを取得するためには、以下のように、ファイルurlとして「http://example.com/counter-10mn_avc_dash.mp4」を、レンジ指定として「 795-83596」を指定する。
GET /counter-10mn_avc_dash.mp4 HTTP/1.1
Host: example.com
Range:bytes=795-83596
GET /counter-10mn_avc_dash.mp4 HTTP/1.1
Host: example.com
Range:bytes=795-83596
また、2つ目のセグメントを取得するためには、以下のように、ファイルurlとして「http://example.com/server/counter-10mn_aacdash.mp4」を、レンジ指定として「83597-166046」を指定する。
GET /counter-10mn_avc_dash.mp4 HTTP/1.1
Host: example.com
Range:bytes=83597-166046
GET /counter-10mn_avc_dash.mp4 HTTP/1.1
Host: example.com
Range:bytes=83597-166046
この実施の形態において、MPDファイルは、現行のMPDファイルを拡張したものとされる。以下、この実施の形態におけるMPDファイルを、適宜、「拡張MPDファイル」を呼ぶ。
拡張MPDファイルは、コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報、あるいは、コンテンツの提示制御を行うための提示制御情報を持つようにされる。この実施の形態において、提示制御情報は、現行のSMIL(Synchronized Multimedia Integration Language)要素を拡張した拡張SMIL要素である。なお、SMILに限らず他の記述言語、例えば、MHEG(Multimedia and Hypermedia Experts Group),BML(Broadcast Markup Language),DHTML(Dynamic HyperText Markup Language)等についても同様な拡張を行って利用することも可能である。
図7は、拡張MPDファイルを概略的に示している。図7(a)は、拡張SMIL包含型の拡張MPDファイルを示している。この拡張SMILファイルは、提示制御情報としての拡張SMIL要素を持っている。この拡張SMIL要素は、MPD要素の下のその他の要素(any#other)として、ピリオド(Priod)要素と同列に、配置される(図6参照)。
図7(b)は、拡張SMIL参照型の拡張MPDファイルを示している。この拡張MPDファイルは、提示制御情報としての拡張SMIL要素を持つ拡張SMILファイルを参照するための拡張SMILファイル参照属性を持っている。この参照属性は、MPD要素の下のその他の属性(attributes)として配置される(図6参照)。
この実施の形態において、拡張SMIL要素に、拡張MPDファイルに含まれる制御対象要素、例えば、アダプテーションセット(AdaptationSet)要素、リプレゼンテーション(Representation)要素を参照するための参照情報が配置される。この場合、具体的には、SMIL BasicMediaモジュールの、一般的なメディア参照に利用するref要素に対して、制御記述対象であるMPD内のAdaptationSet要素、Representation要素への参照属性が指定できるように、xlink:type属性(値“locator”)とxlink:href属性により制御対象要素への参照を指定する。
また、この実施の形態において、拡張SMIL要素に、所定数の子提示要素を含む親提示要素の提示時間情報を配置できるようにする。この場合、具体的には、SMIL BasicLayoutモジュールの、メディアオブジェクト要素の位置/サイズを制御するregion要素に対して、SMIL Timing&Synchronizationモジュールの、親要素が参照するコンテンツがアクティベート(再生)される開始時刻/継続時間/終了時刻を指定するbegin属性、dur属性、end属性を配置できるようにする。
また、この実施の形態において、拡張SMIL要素に、複数の提示デバイス種類に対応した提示制御情報を配置できるようにする。この場合、具体的には、SMIL要素の中のhead要素に含めることができるlayout要素は、対象要素を文書の視覚的なまたは聴覚的な抽象デバイスレンダリング面上にどのように位置付けるかの情報を保持する。このlayout要素を提示デバイスの種類ごとに複数用意し、候補layoutの集合を指定することを可能にするswitch要素内に列挙する。これにより、提示デバイスの種類によりlayoutを定義できるようにする。このとき、新たに、デバイスのディスプレイ種別を表現するテスト用属性としてsystem-device-classを導入する。
また、この実施の形態として、第1の上記提示デバイス種類の提示制御情報と同時に存在し得る第2の上記提示デバイス種類の提示制御情報を指定する情報を配置できるようにする。この場合、具体的には、あるregion要素と常に同時に存在し得る、子(sub-)regionに対する親regionの関係以外のregion要素の組を指定するために、region要素にcoexistWith属性を導入し、対象のregion要素のIDを指定できるようにする。
図8は、コンテンツからDASHセグメント、DASH MPDファイルなどを生成するまでのフローの一例を示している。コンテンツマネジメントサーバ16からDASHセグメントストリーマ11にコンテンツが送付される。DASHセグメントストリーマ11は、そのコンテンツを構成するビデオデータ、オーディオデータ等に基づいて、各データストリームのDASHセグメントを生成する。
また、DASHセグメントストリーマ11は、生成した各データストリームのDASHセグメントのアドレス(url)の情報を、DASH MPDサーバ12に送付する。コンテンツマネジメントサーバ15は、コンテンツのメタデータを、DASH MPDサーバ12に送付する。
DASH MPDサーバ12および提示制御情報生成サーバ15は、NTP(Network Time Protocol)サーバ17から供給される時刻情報に基づいて、システムクロックの同期を図っている。提示制御情報生成サーバ15は、提示制御情報として上述した拡張SMIL要素を生成する。
提示制御情報生成サーバ15は、DASH MPDサーバ12が拡張SMIL包含型の拡張MPDファイル(図7(a)参照)を生成する場合には、生成した拡張SMIL要素をDASH MPDサーバ12に送付する。一方、提示制御情報生成サーバ15は、DASH MPDサーバ12が拡張SMIL参照型の拡張MPDファイル(図7(b)参照)を生成する場合には、生成した拡張SMIL要素を持つ拡張SMILファイルを生成して保持する。そして、提示制御情報生成サーバ15は、その拡張SMILファイルを取得するためのアドレス(url)の情報をDASH MPDサーバ12に送付する。
DASH MPDサーバ12は、各データストリームのDASHセグメントのアドレス情報と、コンテンツのメタデータと、さらには、拡張SMIL要素あるいは拡張SMILファイルのアドレス情報に基づいて、拡張MPDファイルを作成して保持する。なお、DASH MPDサーバ12が、提示制御情報生成サーバ15の機能を備えることも可能である。その場合には、提示制御情報生成サーバ15は不要となる。
図9は、IPTVクライアント13(13-1〜13-N)の構成例を示している。このIPTVクライアント13は、受信部および処理部を構成している。IPTVクライアント13は、ストリーミングデータ制御部131と、HTTPアクセス部132と、動画再生部133を有している。ストリーミングデータ制御部131は、DASH MPDサーバ12から拡張MPDファイルを取得し、その内容を解析する。拡張MPDファイルが拡張SMIL参照型である場合には、それに含まれるアドレス情報に基づいて、提示制御情報生成サーバ15(DASH MPDサーバ12が提示制御情報生成サーバ15の機能を持つ場合には、DASH MPDサーバ12)から拡張SMILファイルをさらに取得する。
HTTPアクセス部132は、拡張SMIL要素に基づき、動画再生に用いる動画や音声のセグメントをDASHセグメントストリーマ11に要求する。ここで、拡張SMIL要素に、拡張MPDファイルに含まれるアダプテーションセット(AdaptationSet)要素の参照情報が配置されている場合、IPTVクライアント13の画面サイズや伝送路の状態などを加味して、それに合わせた最適な画像サイズや符号化速度のストリームを選ぶことができる。例えば、最初の段階では符号化速度(レート)の遅いストリームのセグメントを要求し、通信状況が良好ならば符号化速度(レート)の速いストリームのセグメントを要求するように切り替える。
HTTPアクセス部132は、受け取った動画や音声のセグメントを動画再生部133に送る。動画再生部133は、HTTPアクセス部132から送られてくる各セグメントに復号処理を施して一本の動画コンテンツを得て、動画や音声を再生する。なお、図9には示していないが、IPTVクライアント13は、静止画(Image)の再生部も備え、拡張SMIL要素に含まれるアドレス情報を参照してサーバから静止画データを取得して、静止画を再生する。
図10は、一般的な、DASHベースのストリーム配信システムの系を示している。DASH MPDファイルも、DASHセグメントも、全てCDN(Content Delivery Network)14を介して配信される。CDN14は、複数のキャッシュサーバ(DASHキャッシュサーバ)がネットワーク配列された構成となっている。
キャッシュサーバは、IPTVクライアント13からのMPDファイルの取得のためのHTTPリクエストを受ける。キャッシュサーバは、ローカルMPDキャッシュにあれば、IPTVクライアント13にHTTPレスポンスとして返す。また、キャッシュサーバは、ローカルMPDキャッシュになければ、そのリクエストをDASH MPDサーバ12あるいは上位のキャッシュサーバに転送する。そして、キャッシュサーバは、MPDファイルの格納されたHTTPレスポンスを受け、IPTVクライアント13に転送すると共に、キャッシュ処理を行う。
また、キャッシュサーバは、IPTVクライアント13からのDASHセグメント取得のHTTPリクエストを受ける。キャッシュサーバは、ローカルセグメントキャッシュにあれば、IPTVクライアント13にHTTPレスポンスとして返す。また、キャッシュサーバは、ローカルセグメントキャッシュになければ、そのリクエストをDASHセグメントストリーマ11あるいは上位のキャッシュサーバに転送する。そして、キャッシュサーバは、DASHセグメントの格納されたHTTPレスポンスを受け、IPTVクライアント13に転送すると共に、キャッシュ処理を行う。
CDN14では、最初にHTTPリクエストを発したIPTVクライアント13-1へ配信されるDASHセグメントが、経路のキャッシュサーバで一時的にキャッシュされ、後続の他のIPTVクライアント13-2からのHTTPリクエストに対しては、そのキャッシュされたDASHセグメントが配信される。そのため、大多数のIPTVクライアントに対するHTTPストリーミングの配信効率を向上させることができる。
[IPTVクライアントの動作例]
次に、IPTVクライアント13における、DASH MPDサーバ12から取得された拡張MPDファイルに基づく動作例を説明する。
次に、IPTVクライアント13における、DASH MPDサーバ12から取得された拡張MPDファイルに基づく動作例を説明する。
「ユースケース1(Area change)」
このユースケース1では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-1.mpd)が取得される。
このユースケース1では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-1.mpd)が取得される。
<MPD … smilRef=http://a.com/smil-1.smil >
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
<SegmentList … >
……
<SegmentURL …/>
……
</SegmentList>
</Representation>
</AdaptationSet>
<AdaptationSet …> -- Audio1
<Representation id="repId-2" …>
<BaseURL>audio1.mp4</BaseURL>
<SegmentList … >
……
<SegmentURL …/>
……
</SegmentList>
</Representation>
</AdaptationSet>
</Period>
</MPD>
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
<SegmentList … >
……
<SegmentURL …/>
……
</SegmentList>
</Representation>
</AdaptationSet>
<AdaptationSet …> -- Audio1
<Representation id="repId-2" …>
<BaseURL>audio1.mp4</BaseURL>
<SegmentList … >
……
<SegmentURL …/>
……
</SegmentList>
</Representation>
</AdaptationSet>
</Period>
</MPD>
この拡張MPDファイルには、MPD要素に、拡張SMILファイル参照属性「smilRef=”http://a.com/smil-1.smil”」が配置されている。このユースケース1では、この拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から以下のような内容の拡張SMILファイル(smil-1.smil)が取得される。
<smil>
<head>
--コンテンツのレイアウトと重なりかたの記載--
<layout>
--レイアウトの背景サイズの指定--
<region id=”View1” width=”1920px” height=”1080px”>
--top,leftには左上からのレイアウトの情報が入ります。--
<region id=”Area1” top=”0px” left=”0px” width=”1440px” height=”810px”>
<region id=”Area2” top=”810px” left=”0px” width=”1920px” height=”270px”>
<region id=”Area3” top=”0px” left=”1440px” width=”480px” height=”810px”>
<region id=”Area4” top=”0px” left=”1440px” width=”480px” height=”410px”>
<region id=”Area5” top=”410px” left=”1440px” width=”480px” height=”400px”>
</region>
</layout>
</head>
<body>
--コンテンツの表示方法などの記載 --
--parは同時に再生させるためのタグになります--
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-1.mpd#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-1.mpd#repId-2" region="Area1" begin=”0”/> -- Audio1
<img id=”Image1” src="http://image1.jpg" region="Area2" begin=”0” end=”18:00”/> -- Image1
<img id=”Image2” src="http://image2.jpg" region="Area3" begin=”0”> -- Image2
<img id=”Image3” src="http://image3.jpg" region="Area3" begin=”Image1.endEvent” /> -- Image3
<ref id=”Widget1” src=” http://widget1.bt” region="Area4" begin=”Image2.click”/> -- Widget1
<img id=”Image4” src="http://image4.jpg" region="Area5" begin=”Image2.click” /> -- Image4
</par>
</body>
</smil>
<head>
--コンテンツのレイアウトと重なりかたの記載--
<layout>
--レイアウトの背景サイズの指定--
<region id=”View1” width=”1920px” height=”1080px”>
--top,leftには左上からのレイアウトの情報が入ります。--
<region id=”Area1” top=”0px” left=”0px” width=”1440px” height=”810px”>
<region id=”Area2” top=”810px” left=”0px” width=”1920px” height=”270px”>
<region id=”Area3” top=”0px” left=”1440px” width=”480px” height=”810px”>
<region id=”Area4” top=”0px” left=”1440px” width=”480px” height=”410px”>
<region id=”Area5” top=”410px” left=”1440px” width=”480px” height=”400px”>
</region>
</layout>
</head>
<body>
--コンテンツの表示方法などの記載 --
--parは同時に再生させるためのタグになります--
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-1.mpd#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-1.mpd#repId-2" region="Area1" begin=”0”/> -- Audio1
<img id=”Image1” src="http://image1.jpg" region="Area2" begin=”0” end=”18:00”/> -- Image1
<img id=”Image2” src="http://image2.jpg" region="Area3" begin=”0”> -- Image2
<img id=”Image3” src="http://image3.jpg" region="Area3" begin=”Image1.endEvent” /> -- Image3
<ref id=”Widget1” src=” http://widget1.bt” region="Area4" begin=”Image2.click”/> -- Widget1
<img id=”Image4” src="http://image4.jpg" region="Area5" begin=”Image2.click” /> -- Image4
</par>
</body>
</smil>
SMIL要素の下に、コンテンツのレイアウトと重なりかたの記載を行うヘッダ(head)要素と、コンテンツの表示方法などの記載を行うボディ(body)要素が存在する。ヘッダ(head)要素の下に、レイアウトの背景サイズの指定を行うレイアウト(layout)要素が配置されている。
レイアウト(layout)要素の中に、「region id=”View1”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定されている。また、このレイアウト(layout)要素の中に、ビュー1(View1)に含まれる子の提示要素(region)のサイズと位置が指定されている。
この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0px” left=”0px” width=”1440px” height=”810px”」として指定されている。ここで、「top=”0px” left=”0px”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。
また、「region id=”Area2”」で示される子の提示要素(region)のサイズと位置が、「top=”810px” left=”0px” width=”1920px” height=”270px”」として指定されている。また、region id=”Area3”」で示される子の提示要素(region)のサイズと位置が、「top=”0px” left=”1440px” width=”480px” height=”810px”」として指定されている。
また、「region id=”Area4”」で示される子の提示要素(region)のサイズと位置が、「top=”0px” left=”1440px” width=”480px” height=”410px”」として指定されている。また、region id=”Area5”」で示される子の提示要素(region)のサイズと位置が、「top=”410px” left=”1440px” width=”480px” height=”400px”」として指定されている。
また、ボディ(body)の要素の中に、各エリアの提示(表示)内容などが指定されている。「par」は、各提示内容を同時に再生することを示す。なお、ここでは使用されていないが、「seq」は、各提示内容を順次再生することを示す。
「<ref xlink:type="locator" xlink:href="http://a.com/mpd-1.mpd#repId-1" region="Area1" begin=”0”/> -- Video1」は、エリア1(Area1)にビデオ1(Video1)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-1.mpd)のリプレゼンテーション要素(repId-1)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
この場合、「xlink」という名前空間を定義し、SMIL要素を拡張している。この「xlink」は、“ある他の文章に対して、その文章の中のどこを参照している”ということを定義する機能を持っている。この「xlink」は、W3C(World Wide Web Consortium)の規定の一つである。
「ref」を提示内容の種別を示すが、ビデオ、オーディオなど、いずれの提示内容にも対処できる。「ref」のところで、「xlink」という名前空間で、この「xlink」で規定されている「type」という属性を使って、“locator”により、ここに置かれる提示内容の参照情報の位置が示される。
この場合、「xlink」で規定されている「href」という属性を使って、参照情報の位置が、拡張MPDファイル(mpd-1.mpd)のリプレゼンテーション要素(repId-1)であることが示されている。「a.com」は、拡張MPDファイル(mpd-1.mpd)を保持するDASH MPDサーバ12のサーバ名を示している。なお、拡張MPDファイル(mpd-1.mpd)のリプレゼンテーション要素(repId-1)には、ビデオファイル(video1.mp4)をチャンク化した各セグメント列を取得するためのアドレス(url)の情報等が存在する。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-1.mpd#repId-2" region="Area1" begin=”0”/> -- Audio1」は、エリア1(Area1)にオーディオ1(Audio1)を表示すること、そして、そのためのオーディオデータを拡張MPDファイル(mpd-1.mpd)のリプレゼンテーション要素(repId-2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<img id=”Image1” src="http://image1.jpg" region="Area2" begin=”0” end=”18:00”/> -- Image1」は、エリア2(Area2)にイメージ1(Image1)を表示すること、そして、そのためのイメージ(静止画)データを、「http://image1.jpg」のアドレスから取得すること、さらに、最初から再生をスタートさせ、18時に再生を終了することを示す。
また、「<img id=”Image2” src="http://image2.jpg" region="Area3" begin=”0”> -- Image2」は、エリア3(Area3)にイメージ2(Image2)を表示すること、そして、そのためのイメージ(静止画)データを、「http://image2.jpg」のアドレスから取得すること、さらに、最初から再生をスタートさせることを示す。
「<img id=”Image3” src="http://image3.jpg" region="Area3" begin=”Image1.endEvent” /> -- Image3」は、エリア3(Area3)にイメージ3(Image3)を表示すること、そして、そのためのイメージ(静止画)データを、「http://image3.jpg」のアドレスから取得すること、さらに、イメージ1(Image1)の再生が終了してから再生をスタートさせることを示す。
また、「<ref id=”Widget1” src=” http://widget1.bt” region="Area4" begin=”Image2.click”/> -- Widget1」は、エリア4(Area4)にウィジェット1(Widget1)を表示すること、そして、そのためのウィジェットデータを、「http:// widget1.bt」のアドレスから取得すること、さらに、イメージ2(Image2)上でクリック操作がされてから再生をスタートさせることを示す。
また、「<img id=”Image4” src="http://image4.jpg" region="Area5" begin=”Image2.click” /> -- Image4」は、エリア5Area5にイメージ4Image4を表示すること、そして、そのためのイメージ(静止画)データを、「http://image4.jpg」のアドレスがから取得すること、さらに、イメージ2(Image2)上でクリック操作がされてから再生をスタートさせることを示す。
図11は、拡張SMIL要素の制御による、時間経過と表示内容の遷移の関係を示している。最初は、エリア1にビデオ1、オーディオ1が表示され、エリア2にイメージ1が表示され、エリア3にイメージ2が表示された状態におかれる(図12(a)参照)。そして、18時になると、エリア2は、イメージ3が表示された状態に変化する。
また、イメージ2(Image2)上でユーザによるクリック操作がされると、エリア3はエリア4およびエリア5に分割され、エリア4にウィジェット1が表示され、エリア5にイメージ4が表示された状態に変化する(図12(b)参照)。なお、図12(b)は、18時以降の状態であり、エリア2はイメージ3が表示された状態に変化している。18時以前の状態では、エリア2はイメージ1が表示された状態にある。
なお、上述のユースケース1の説明では、DASH MPDサーバ12から拡張SMIL参照型の拡張MPDファイル(mpd-1.mpd)が取得される場合を例にとって説明した。詳細説明は省略するが、DASH MPDサーバ12から拡張SMIL包含型の拡張MPDファイル(mpd-1.mpd)が取得される場合にあっても同様の動作となる。このことは、以下のその他のユースケースの説明においても同様である。因みに、ユースケース1の場合における拡張SMIL包含型の拡張MPDファイルは以下のようになる。なお、この場合、MPDファイルのアドレス情報である「http://a.com/mpd-1.mpd」の記述は省略される。
<MPD …>
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
<SegmentList … >
……
<SegmentURL …/>
……
</SegmentList>
</Representation>
</AdaptationSet>
<AdaptationSet …> -- Audio1
<Representation id="repId-2" …>
<BaseURL>audio1.mp4</BaseURL>
<SegmentList … >
……
<SegmentURL …/>
……
</SegmentList>
</Representation>
</AdaptationSet>
</Period>
<smil>
<head>
<layout>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0px” left=”0px” width=”1440px” height=”810px”>
<region id=”Area2” top=”810px” left=”0px” width=”1920px” height=”270px”>
<region id=”Area3” top=”0px” left=”1440px” width=”480px” height=”810px”>
<region id=”Area4” top=”0px” left=”1440px” width=”480px” height=”410px”>
<region id=”Area5” top=”410px” left=”1440px” width=”480px” height=”400px”>
</region>
</layout>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="#repId-2" region="Area1" begin=”0”/> -- Audio1
<img id=”Image1” src="http://image1.jpg" region="Area2" begin=”0” end=”18:00”/> -- Image1
<img id=”Image2” src="http://image2.jpg" region="Area3" begin=”0”> -- Image2
<img id=”Image3” src="http://image3.jpg" region="Area3" begin=”Image1.endEvent” /> -- Image3
<ref id=”Widget1” src=” http://widget1.bt” region="Area4" begin=”Image2.click”/> -- Widget1
<img id=”Image4” src="http://image4.jpg" region="Area5" begin=”Image2.click” /> -- Image4
</par>
</body>
</smil>
</MPD>
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
<SegmentList … >
……
<SegmentURL …/>
……
</SegmentList>
</Representation>
</AdaptationSet>
<AdaptationSet …> -- Audio1
<Representation id="repId-2" …>
<BaseURL>audio1.mp4</BaseURL>
<SegmentList … >
……
<SegmentURL …/>
……
</SegmentList>
</Representation>
</AdaptationSet>
</Period>
<smil>
<head>
<layout>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0px” left=”0px” width=”1440px” height=”810px”>
<region id=”Area2” top=”810px” left=”0px” width=”1920px” height=”270px”>
<region id=”Area3” top=”0px” left=”1440px” width=”480px” height=”810px”>
<region id=”Area4” top=”0px” left=”1440px” width=”480px” height=”410px”>
<region id=”Area5” top=”410px” left=”1440px” width=”480px” height=”400px”>
</region>
</layout>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="#repId-2" region="Area1" begin=”0”/> -- Audio1
<img id=”Image1” src="http://image1.jpg" region="Area2" begin=”0” end=”18:00”/> -- Image1
<img id=”Image2” src="http://image2.jpg" region="Area3" begin=”0”> -- Image2
<img id=”Image3” src="http://image3.jpg" region="Area3" begin=”Image1.endEvent” /> -- Image3
<ref id=”Widget1” src=” http://widget1.bt” region="Area4" begin=”Image2.click”/> -- Widget1
<img id=”Image4” src="http://image4.jpg" region="Area5" begin=”Image2.click” /> -- Image4
</par>
</body>
</smil>
</MPD>
「ユースケース2(View change)」
このユースケース2では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-2.mpd)が取得される。
このユースケース2では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-2.mpd)が取得される。
<MPD … smilRef=”http://a.com/smil-2.smil" >
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-v1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Audio1
<Representation id="repId-a1" …>
<BaseURL>audio1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-v2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video3
<Representation id="repId-v3" …>
<BaseURL>video3.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video4
<Representation id="repId-v4" …>
<BaseURL>video4.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-v1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Audio1
<Representation id="repId-a1" …>
<BaseURL>audio1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-v2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video3
<Representation id="repId-v3" …>
<BaseURL>video3.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video4
<Representation id="repId-v4" …>
<BaseURL>video4.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
この拡張MPDファイルには、MPD要素に、拡張SMILファイル参照属性「smilRef=”http://a.com/smil-2.smil」が配置されている。このユースケース2では、この拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から以下のような内容の拡張SMILファイル(smil-2.smil)が取得される。
<smil>
<head>
<layout>
<region id=”View1” width=”1920px” height=”1080px” begin=”0” end=”Image1.click”>
<region id=”Area1” top=”0px” left=”0px” width=”1440px” height=”810px”>
<region id=”Area2” top=”810px” left=”0px” width=”1920px” height=”270px”>
<region id=”Area3” top=”0px” left=”1440px” width=”480px” height=”810px”>
</region>
<region id=”View2” width=”1920px” height=”1080px” begin=”Image1.click” >
<region id=”Area1” top=”0px” left=”0px” width=”960px” height=”540px”>
<region id=”Area4” top=”0px” left=”960px” width=”960px” height=”540px”>
<region id=”Area5” top=”540px” left=”0px” width=”960px” height=”540px”>
<region id=”Area6” top=”540px” left=”960px” width=”960px” height=”540px”>
</region>
</layout>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-a1" region="Area1" begin=”0”/> -- Audio1
<img id=”Image1” src="http://image1.jpg" region="Area2" begin=”0”/> -- Image1
<ref id=”Widget1” src=” http://widget1.bt” region="Area3" begin=”0”/> -- Widget1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v2" region="Area4" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v3" region="Area5" begin=”0”/> -- Video3
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v4" region="Area6" begin=”0”/> -- Video4
</par>
</body>
</smil>
<head>
<layout>
<region id=”View1” width=”1920px” height=”1080px” begin=”0” end=”Image1.click”>
<region id=”Area1” top=”0px” left=”0px” width=”1440px” height=”810px”>
<region id=”Area2” top=”810px” left=”0px” width=”1920px” height=”270px”>
<region id=”Area3” top=”0px” left=”1440px” width=”480px” height=”810px”>
</region>
<region id=”View2” width=”1920px” height=”1080px” begin=”Image1.click” >
<region id=”Area1” top=”0px” left=”0px” width=”960px” height=”540px”>
<region id=”Area4” top=”0px” left=”960px” width=”960px” height=”540px”>
<region id=”Area5” top=”540px” left=”0px” width=”960px” height=”540px”>
<region id=”Area6” top=”540px” left=”960px” width=”960px” height=”540px”>
</region>
</layout>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-a1" region="Area1" begin=”0”/> -- Audio1
<img id=”Image1” src="http://image1.jpg" region="Area2" begin=”0”/> -- Image1
<ref id=”Widget1” src=” http://widget1.bt” region="Area3" begin=”0”/> -- Widget1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v2" region="Area4" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v3" region="Area5" begin=”0”/> -- Video3
<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v4" region="Area6" begin=”0”/> -- Video4
</par>
</body>
</smil>
SMIL要素の下に、コンテンツのレイアウトと重なりかたの記載を行うヘッダ(head)要素と、コンテンツの表示方法などの記載を行うボディ(body)要素が存在する。ヘッダ(head)要素の下に、レイアウトの背景サイズの指定を行うレイアウト(layout)要素が配置されている。
レイアウト(layout)要素の中に、「region id=”View1”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定される。また、このビュー1(View1)の提示時間情報として「begin=”0” end=”Image1.click”」が配置され、このビュー1(View1)の表示が最初からイメージ1(Image1)がクリック操作されるまでであることが示されている。
このレイアウト(layout)要素の中に、ビュー1(View1)に含まれる子の提示要素(region)のサイズと位置が指定されている。この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0px” left=”0px” width=”1440px” height=”810px”」として指定されている。ここで、「top=”0px” left=”0px”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。
また、「region id=”Area2”」で示される子の提示要素(region)のサイズと位置が、「top=”810px” left=”0px” width=”1920px” height=”270px”」として指定されている。また、region id=”Area3”」で示される子の提示要素(region)のサイズと位置が、「top=”0px” left=”1440px” width=”480px” height=”810px”」として指定されている。
また、レイアウト(layout)要素の中に、「region id=”View2”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定されている。また、このビュー2(View2)の提示時間情報として「begin=”Image1.click”」が配置され、このビュー1(View1)の表示がイメージ1(Image1)のクリック操作で開始することが示されている。
このレイアウト(layout)要素の中に、ビュー2(View2)に含まれる子の提示要素(region)のサイズと位置が指定されている。この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0px” left=”0px” width=”960px” height=”540px”」として指定されている。ここで、「top=”0px” left=”0px”」は、左上の位置を、親の提示要素(region)の左上を基点からのオフセット値で示している。
また、「region id=”Area4”」で示される子の提示要素(region)のサイズと位置が、「top=”0px” left=”960px” width=”960px” height=”540px”」として指定されている。また、「region id=”Area5”」で示される子の提示要素(region)のサイズと位置が、「top=”540px” left=”0px” width=”960px” height=”540px”」として指定されている。さらに、「region id=”Area6”」で示される子の提示要素(region)のサイズと位置が、「top=”540px” left=”960px” width=”960px” height=”540px”>」として指定されている。
また、ボディ(body)の要素の中に、各エリアの提示(表示)内容などが指定されている。「<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v1" region="Area1" begin=”0”/> -- Video1」は、エリア1(Area1)にビデオ1(Video1)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-2.mpd)のリプレゼンテーション要素(repId-v1)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-a1" region="Area1" begin=”0”/> -- Audio1」は、エリア1(Area1)にオーディオ1(Audio1)を表示すること、そして、そのためのオーディオデータを拡張MPDファイル(mpd-2.mpd)のリプレゼンテーション要素(repId-a1)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<img id=”Image1” src="http://image1.jpg" region="Area2" begin=”0”/> -- Image1」は、エリア2(Area2)にイメージ1(Image1)を表示すること、そして、そのためのイメージ(静止画)データを、「http://image1.jpg」のアドレスから取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref id=”Widget1” src=” http://widget1.bt” region="Area3" begin=”0”/> -- Widget1」は、エリア3(Area3)にウィジェット1(Widget1)を表示すること、そして、そのためのウィジェットデータを、「http:// widget1.bt」のアドレスから取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v2" region="Area4" begin=”0”/> -- Video2」は、エリア4(Area4)にビデオ2(Video2)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-2.mpd)のリプレゼンテーション要素(repId-v2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v3" region="Area5" begin=”0”/> -- Video3」は、エリア5(Area5)にビデオ3(Video3)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-2.mpd)のリプレゼンテーション要素(repId-v3)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-2.mpd#repId-v4" region="Area6" begin=”0”/> -- Video4」は、エリア6(Area6)にビデオ4(Video4)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-2.mpd)のリプレゼンテーション要素(repId-v4)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
図13は、拡張SMIL要素による制御による、時間経過と表示内容の遷移の関係を示している。最初は、ビュー1(View1)が表示される。すなわち、エリア1にビデオ1、オーディオ1が表示され、エリア2にイメージ1が表示され、エリア3にウィジェット1が表示された状態におかれる(図14(a)参照)。
そして、イメージ1(Image1)上でユーザによるクリック操作がされると、ビュー2(View2)の表示状態に遷移する。すなわち、エリア1にビデオ1、オーディオ1が表示され、エリア4にビデオ2が表示され、エリア5にビデオ3が表示され、エリア6にビデオ4が表示された状態となる(図14(b)参照)。
この場合、エリア1のビデオ1、オーディオ1は継続して再生される。また、エリア4,5,6のビデオ2,3,4はビデオ1に同期して再生される。すなわち、ビデオ2,3,4は、ビデオ1と同時に再生スタートするが、ビュー2への遷移が起こるまで表示されない。
「ユースケース3(Multi-screen Presentation - Asset Sharing)」
このユースケース3では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-3.mpd)が取得される。
このユースケース3では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-3.mpd)が取得される。
<MPD … smilRef="http://a.com/smil-3.smil" >
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
この拡張MPDファイルには、MPD要素に、拡張SMILファイル参照属性「smilRef=”http://a.com/smil-3.smil」が配置されている。このユースケース3では、この拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から以下のような内容の拡張SMILファイル(smil-3.smil)が取得される。
<smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”70%” width=”30%” height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px”>
<region id=”Area2” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-3.mpd#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-3.mpd#repId-2" region="Area2" begin=”0”/> -- Video2
</par>
</body>
</smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”70%” width=”30%” height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px”>
<region id=”Area2” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-3.mpd#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-3.mpd#repId-2" region="Area2" begin=”0”/> -- Video2
</par>
</body>
</smil>
SMIL要素の下に、コンテンツのレイアウトと重なりかたの記載を行うヘッダ(head)要素と、コンテンツの表示方法などの記載を行うボディ(body)要素が存在する。ヘッダ(head)要素の下に、スイッチ(swich)要素が配置され、その下に、レイアウトの背景サイズの指定を行うレイアウト(layout)要素が配置されている。スイッチ(swich)要素は、複数のレイアウト(layout)要素から選択的に使用することを意味する。
ここで、複数の提示デバイス種類にそれぞれ対応したレイアウト(layout)要素が存在する。この例では、デバイスクラス1(DeviceClass01)と、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素が配置されている。
デバイスクラス1(DeviceClass01)のレイアウト(layout)要素の中に、「region id=”View1”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー1(View1)に含まれる子の提示要素(region)のサイズと位置が指定されている。
この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”70%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。また、「region id=”Area2”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”70%” width=”30%” height=”100%”」として指定されている。
また、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素の中に、「region id=”View2”」で示される親の提示要素(region)のサイズが、「width=”1024px” height=”768px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー2(View2)に含まれる子の提示要素(region)のサイズと位置が指定されている。この場合、「region id=”Area2”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”100%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。
また、ボディ(body)の要素の中に、各エリアの提示(表示)内容などが指定されている。「<ref xlink:type="locator" xlink:href="http://a.com/mpd-3.mpd#repId-1" region="Area1" begin=”0”/> -- Video1」は、エリア1(Area1)にビデオ1(Video1)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-3.mpd)のリプレゼンテーション要素(repId-1)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-3.mpd#repId-2" region="Area2" begin=”0”/> -- Video2」」は、エリア2(Area2)にビデオ2(Video2)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-3.mpd)のリプレゼンテーション要素(repId-2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
ここで、IPTVクライアント13として、図15に示すように、プライマリデバイス(The primary device)21と、セカンダリデバイス(The secondary device)22が存在する場合を考える。プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであり、例えばテレビ受信機であるとする。また、セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであり、例えばタブレットであるとする。
図15(a)は、プライマリデバイス21が電源オンとされ、セカンダリデバイス22が電源オフとされている状態を示している。この状態では、プライマリデバイス21のみがDASH MPDサーバ12から拡張MPDファイル(mpd-3.mpd)を取得し、さらにその中の拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から拡張SMILファイル(smil-3.smil)を取得する。
プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであることから、拡張SMILファイル(smil-3.smil)に含まれるデバイスクラス1のレイアウト(layout)要素に応じた表示を行う。すなわち、エリア1にビデオ1が表示され、エリア2にビデオ2が表示される。
図15(b)は、さらに、セカンダリデバイス22の電源もオンとされた状態を示している。この状態では、プライマリデバイス21に関しては、図15(a)と同様の表示状態が継続される。セカンダリデバイス22は、DASH MPDサーバ12から拡張MPDファイル(mpd-3.mpd)を取得し、さらにその中の拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から拡張SMILファイル(smil-3.smil)を取得する。
セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであることから、拡張SMILファイル(smil-3.smil)に含まれるデバイスクラス2のレイアウト(layout)要素に応じた表示を行う。すなわち、エリア2にビデオ2が表示される。
なお、上述では、図15(a)の状態から図15(b)の状態への変化は、セカンダリデバイス22の電源が入ることで行われるように説明したが、その他のイベント発生に応じて変化することも考えられる。例えば、電源オンとなっているセカンダリデバイス22において、ユーザにエリア2の表示をするか否かを問い合わせて、肯定の応答操作があった場合に変化するようにされてもよい。また、例えば、予め設定された所定時刻になったら変化するようにされてもよい。
このユースケース3の場合、マルチスクリーンプレゼンテーションに遷移すると同時に、プライマリスクリーンの一部の領域をセカンダリスクリーンと共有することができる。
「ユースケース4(Multi-screen Presentation - Dynamic Asset Sharing)」
このユースケース4では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-4.mpd)が取得される。
このユースケース4では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-4.mpd)が取得される。
<MPD …smilRef="http://a.com/smil-4.smil" >
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
この拡張MPDファイルには、MPD要素に、拡張SMILファイル参照属性「smilRef=”http://a.com/smil-4.smil」が配置されている。このユースケース4では、この拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から以下のような内容の拡張SMILファイル(smil-4.smil)が取得される。
<smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”70%” width=”30%” height=”100%”>
</region>
<region id=”View3” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”15%” width=”70%” height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px”>
<region id=”Area2” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" "xlink:href="http://a.com/mpd-4.mpd#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-4.mpd#repId-2" region="Area2" begin=”0”/> -- Video2
</par>
</body>
</smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”70%” width=”30%” height=”100%”>
</region>
<region id=”View3” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”15%” width=”70%” height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px”>
<region id=”Area2” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" "xlink:href="http://a.com/mpd-4.mpd#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-4.mpd#repId-2" region="Area2" begin=”0”/> -- Video2
</par>
</body>
</smil>
ヘッダ(head)要素の下に、スイッチ(swich)要素が配置され、その下に、レイアウトの背景サイズの指定を行うレイアウト(layout)要素が配置されている。スイッチ(swich)要素は、複数のレイアウト(layout)要素から選択的に使用することを意味する。
ここで、複数の提示デバイス種類にそれぞれ対応したレイアウト(layout)要素が存在する。この例では、デバイスクラス1(DeviceClass01)と、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素が配置されている。
デバイスクラス1(DeviceClass01)のレイアウト(layout)要素の中に、「region id=”View1”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー1(View1)に含まれる子の提示要素(region)のサイズと位置が指定されている。
この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”70%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。また、「region id=”Area2”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”70%” width=”30%” height=”100%”」として指定されている。
また、デバイスクラス1(DeviceClass01)のレイアウト(layout)要素の中に、「region id=”View3”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー3(View3)に含まれる子の提示要素(region)のサイズと位置が指定されている。この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”15%” width=”70%” height=”100%”」として指定されている。
また、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素の中に、「region id=”View2”」で示される親の提示要素(region)のサイズが、「width=”1024px” height=”768px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー2(View2)に含まれる子の提示要素(region)のサイズと位置が指定されている。この場合、「region id=”Area2”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”100%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。
また、ボディ(body)の要素の中に、各エリアの提示(表示)内容などが指定されている。「<ref xlink:type="locator" xlink:href="http://a.com/mpd-4.mpd#repId-1" region="Area1" begin=”0”/> -- Video1」は、エリア1(Area1)にビデオ1(Video1)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-4.mpd)のリプレゼンテーション要素(repId-1)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-4.mpd#repId-2" region="Area2" begin=”0”/> -- Video2」」は、エリア2(Area2)にビデオ2(Video2)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-4.mpd)のリプレゼンテーション要素(repId-2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
ここで、IPTVクライアント13として、図16に示すように、プライマリデバイス(The primary device)21と、セカンダリデバイス(The secondary device)22が存在する場合を考える。プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであり、例えばテレビ受信機であるとする。また、セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであり、例えばタブレットであるとする。
図16(a)は、プライマリデバイス21が電源オンとされ、セカンダリデバイス22が電源オフとされている状態を示している。この状態では、プライマリデバイス21のみがDASH MPDサーバ12から拡張MPDファイル(mpd-4.mpd)を取得し、さらにその中の拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から拡張SMILファイル(smil-4.smil)を取得する。
プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであることから、拡張SMILファイル(smil-4.smil)に含まれるデバイスクラス1のレイアウト(layout)要素に応じた表示を行う。すなわち、エリア1にビデオ1が表示され、エリア2にビデオ2が表示される。
図16(b)は、さらに、セカンダリデバイス22の電源もオンとされた状態を示している。この状態では、プライマリデバイス21に関しては、ビュー1(View1)の表示状態からビュー3(View3)の表示状態に変化する。この場合、中央に位置を変化させたエリア1にビデオ1が継続表示される。プライマリデバイス21の表示変化は、例えば、デバイス間の通信により自動的に、後述するセカンダリデバイス22のエリア2へのビデオ2の表示開始に同期して行われる。
セカンダリデバイス22は、DASH MPDサーバ12から拡張MPDファイル(mpd-4.mpd)を取得し、さらにその中の拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から拡張SMILファイル(smil-4.smil)を取得する。
セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであることから、拡張SMILファイル(smil-4.smil)に含まれるデバイスクラス2のレイアウト(layout)要素に応じた表示を行う。すなわち、エリア2にビデオ2が表示される。
なお、上述では、図16(a)の状態から図16(b)の状態への変化は、セカンダリデバイス22の電源が入ることで行われるように説明したが、その他のイベント発生に応じて変化することも考えられる。例えば、電源オンとなっているセカンダリデバイス22において、ユーザにエリア2の表示をするか否かを問い合わせて、肯定の応答操作があった場合に変化するようにされてもよい。また、例えば、予め設定された所定時刻になったら変化するようにされてもよい。
このユースケース4の場合、マルチスクリーンプレゼンテーションに遷移すると同時に、プライマリスクリーンの一部のコンテンツ描画領域を、セカンダリスクリーンに移すことができる。プライマリスクリーンに残ったコンテンツ描画領域は、プライマリスクリーン内でセンタリングされる。
「ユースケース5(Multi-screen Presentation - Complementary Asset)」
このユースケース5では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-5.mpd)が取得される。
このユースケース5では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-5.mpd)が取得される。
<MPD …smilRef="http://a.com/smil-5.smil" >
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video3
<Representation id="repId-3" …>
<BaseURL>video3.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video3
<Representation id="repId-3" …>
<BaseURL>video3.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
この拡張MPDファイルには、MPD要素に、拡張SMILファイル参照属性「smilRef=”http://a.com/smil-5.smil」が配置されている。このユースケース5では、この拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から以下のような内容の拡張SMILファイル(smil-5.smil)が取得される。
<smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”70%” width=”30%” height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px”>
<region id=”Area3” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-5.mpd#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-5.mpd#repId-2" region="Area2" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-5.mpd#repId-3" region="Area3" begin=”0”/> -- Video3
</par>
</body>
</smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”70%” width=”30%” height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px”>
<region id=”Area3” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-5.mpd#repId-1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-5.mpd#repId-2" region="Area2" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-5.mpd#repId-3" region="Area3" begin=”0”/> -- Video3
</par>
</body>
</smil>
SMIL要素の下に、コンテンツのレイアウトと重なりかたの記載を行うヘッダ(head)要素と、コンテンツの表示方法などの記載を行うボディ(body)要素が存在する。ヘッダ(head)要素の下に、スイッチ(swich)要素が配置され、その下に、レイアウトの背景サイズの指定を行うレイアウト(layout)要素が配置されている。スイッチ(swich)要素は、複数のレイアウト(layout)要素から選択的に使用することを意味する。
ここで、複数の提示デバイス種類にそれぞれ対応したレイアウト(layout)要素が存在する。この例では、デバイスクラス1(DeviceClass01)と、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素が配置されている。
デバイスクラス1(DeviceClass01)のレイアウト(layout)要素の中に、「region id=”View1”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー1(View1)に含まれる子の提示要素(region)のサイズと位置が指定されている。
この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”70%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。また、「region id=”Area2”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”70%” width=”30%” height=”100%”」として指定されている。
また、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素の中に、「region id=”View2”」で示される親の提示要素(region)のサイズが、「width=”1024px” height=”768px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー2(View2)に含まれる子の提示要素(region)のサイズと位置が指定されている。この場合、「region id=”Area3”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”100%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。
また、ボディ(body)の要素の中に、各エリアの提示(表示)内容などが指定されている。「<ref xlink:type="locator" xlink:href="http://a.com/mpd-5.mpd#repId-1" region="Area1" begin=”0”/> -- Video1」は、エリア1(Area1)にビデオ1(Video1)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-5.mpd)のリプレゼンテーション要素(repId-1)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-5.mpd#repId-2" region="Area2" begin=”0”/> -- Video2」」は、エリア2(Area2)にビデオ2(Video2)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-5.mpd)のリプレゼンテーション要素(repId-2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-5.mpd#repId-3" region="Area3" begin=”0”/> -- Video3」」は、エリア3(Area3)にビデオ3(Video3)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-5.mpd)のリプレゼンテーション要素(repId-3)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
ここで、IPTVクライアント13として、図17に示すように、プライマリデバイス(The primary device)21と、セカンダリデバイス(The secondary device)22が存在する場合を考える。プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであり、例えばテレビ受信機であるとする。また、セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであり、例えばタブレットであるとする。
図17(a)は、プライマリデバイス21が電源オンとされ、セカンダリデバイス22が電源オフとされている状態を示している。この状態では、プライマリデバイス21のみがDASH MPDサーバ12から拡張MPDファイル(mpd-5.mpd)を取得し、さらにその中の拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から拡張SMILファイル(smil-5.smil)を取得する。
プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであることから、拡張SMILファイル(smil-5.smil)に含まれるデバイスクラス1のレイアウト(layout)要素に応じた表示を行う。すなわち、エリア1にビデオ1が表示され、エリア2にビデオ2が表示される。
図17(b)は、さらに、セカンダリデバイス22の電源もオンとされた状態を示している。この状態では、プライマリデバイス21に関しては、図17(a)と同様の表示状態が継続される。セカンダリデバイス22は、DASH MPDサーバ12から拡張MPDファイル(mpd-5.mpd)を取得し、さらにその中の拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から拡張SMILファイル(smil-5.smil)を取得する。
セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであることから、拡張SMILファイル(smil-5.smil)に含まれるデバイスクラス2のレイアウト(layout)要素に応じた表示を行う。すなわち、エリア3にビデオ3が表示される。
なお、上述では、図17(a)の状態から図17(b)の状態への変化は、セカンダリデバイス22の電源が入ることで行われるように説明したが、その他のイベント発生に応じて変化することも考えられる。例えば、電源オンとなっているセカンダリデバイス22において、ユーザにエリア3の表示をするか否かを問い合わせて、肯定の応答操作があった場合に変化するようにされてもよい。また、例えば、予め設定された所定時刻になったら変化するようにされてもよい。
このユースケース5の場合、マルチスクリーンプレゼンテーションに遷移すると同時に、プライマリスクリーン上には表示されていなかった一部のコンテンツ描画領域をセカンダリスクリーンに移すことができる。
「ユースケース6(Multi-screen Presentation - Asset level Sharing)」
このユースケース6では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-6.mpd)が取得される。
このユースケース6では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-6.mpd)が取得される。
<MPD …smilRef="http://a.com/smil-6.smil" >
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-v1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-v2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Audio1
<Representation id="repId-a1" …>
<BaseURL>audio1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Audio2
<Representation id="repId-a2" …>
<BaseURL>audio2.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-v1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-v2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Audio1
<Representation id="repId-a1" …>
<BaseURL>audio1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Audio2
<Representation id="repId-a2" …>
<BaseURL>audio2.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
この拡張MPDファイルには、MPD要素に、拡張SMILファイル参照属性「smilRef=”http://a.com/smil-6.smil」が配置されている。このユースケース4では、この拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から以下のような内容の拡張SMILファイル(smil-6.smil)が取得される。
<smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”70%” width=”30%” height=”100%”>
</region>
<region id=”View3” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area3” top=”0%” left=” 70%” width=”30%”height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px” coexistWith=”View3”>
<region id=”Area4” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-v1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-a1" region="Area1" begin=”0”/> -- Audio1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-v2" region="Area2" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-a2" region="Area2" begin=”0”/> -- Audio2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-v2" region="Area4" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-a2" region="Area3" begin=”0”/> -- Audio2
</par>
</body>
</smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”70%” width=”30%” height=”100%”>
</region>
<region id=”View3” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area3” top=”0%” left=” 70%” width=”30%”height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px” coexistWith=”View3”>
<region id=”Area4” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-v1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-a1" region="Area1" begin=”0”/> -- Audio1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-v2" region="Area2" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-a2" region="Area2" begin=”0”/> -- Audio2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-v2" region="Area4" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-a2" region="Area3" begin=”0”/> -- Audio2
</par>
</body>
</smil>
ヘッダ(head)要素の下に、スイッチ(swich)要素が配置され、その下に、レイアウトの背景サイズの指定を行うレイアウト(layout)要素が配置されている。スイッチ(swich)要素は、複数のレイアウト(layout)要素から選択的に使用することを意味する。
ここで、複数の提示デバイス種類にそれぞれ対応したレイアウト(layout)要素が存在する。この例では、デバイスクラス1(DeviceClass01)と、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素が配置されている。
デバイスクラス1(DeviceClass01)のレイアウト(layout)要素の中に、「region id=”View1”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー1(View1)に含まれる子の提示要素(region)のサイズと位置が指定されている。
この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”70%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。また、「region id=”Area2”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”70%” width=”30%” height=”100%”」として指定されている。
また、デバイスクラス1(DeviceClass01)のレイアウト(layout)要素の中に、「region id=”View3”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー3(View3)に含まれる子の提示要素(region)のサイズと位置が指定されている。この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”70%” height=”100%”」として指定されている。また、「region id=”Area3”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”70%” width=”30%” height=”100%”」として指定されている。
また、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素の中に、「region id=”View2”」で示される親の提示要素(region)のサイズが、「width=”1024px” height=”768px”」として指定される。ここで、「coexistWith」は、ビュー間の同期関係(制約)を示す属性である。このようにビュー2(View2)に関連して、「coexistWith=”View3”」を記述することで、このビュー2(View2)と、上述したビュー3(View3)が同時に存在し得ることを示す。つまり、ビュー2(View2)を使うときは、必ず、ビュー3(View3)を使う必要がることを意味している。
また、このレイアウト(layout)要素の中に、ビュー2(View2)に含まれる子の提示要素(region)のサイズと位置が指定されている。この場合、「region id=”Area4”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”100%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。
また、ボディ(body)の要素の中に、各エリアの提示(表示)内容などが指定されている。「<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-v1" region="Area1" begin=”0”/> -- Video1」は、エリア1(Area1)にビデオ1(Video1)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-6.mpd)のリプレゼンテーション要素(repId-v1)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-a1" region="Area1" begin=”0”/> -- Audio1」は、エリア1(Area1)にオーディオ1(Audio1)を表示すること、そして、そのためのオーディオデータを拡張MPDファイル(mpd-6.mpd)のリプレゼンテーション要素(repId-a1)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-v2" region="Area2" begin=”0”/> -- Video2」」は、エリア2(Area2)にビデオ2(Video2)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-6.mpd)のリプレゼンテーション要素(repId-v2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-a2" region="Area2" begin=”0”/> -- Audio2」は、エリア2(Area2)にオーディオ2(Audio2)を表示すること、そして、そのためのオーディオデータを拡張MPDファイル(mpd-6.mpd)のリプレゼンテーション要素(repId-a2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-v2" region="Area4" begin=”0”/> -- Video2」」は、エリア4(Area4)にビデオ2(Video2)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-6.mpd)のリプレゼンテーション要素(repId-v2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-6.mpd#repId-a2" region="Area3" begin=”0”/> -- Audio2」は、エリア3(Area3)にオーディオ2(Audio2)を表示すること、そして、そのためのオーディオデータを拡張MPDファイル(mpd-6.mpd)のリプレゼンテーション要素(repId-a2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
ここで、IPTVクライアント13として、図18に示すように、プライマリデバイス(The primary device)21と、セカンダリデバイス(The secondary device)22が存在する場合を考える。プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであり、例えばテレビ受信機であるとする。また、セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであり、例えばタブレットであるとする。
図18(a)は、プライマリデバイス21が電源オンとされ、セカンダリデバイス22が電源オフとされている状態を示している。この状態では、プライマリデバイス21のみがDASH MPDサーバ12から拡張MPDファイル(mpd-6.mpd)を取得し、さらにその中の拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から拡張SMILファイル(smil-6.smil)を取得する。
プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであることから、拡張SMILファイル(smil-6.smil)に含まれるデバイスクラス1のレイアウト(layout)要素に応じた表示を行う。すなわち、エリア1にビデオ1、オーディオ1が表示され、エリア2にビデオ2、オーディオ2が表示される。
図18(b)は、さらに、セカンダリデバイス22の電源もオンとされた状態を示している。この状態では、プライマリデバイス21に関しては、ビュー1(View1)の表示状態からビュー3(View3)の表示状態に変化する。この場合、エリア1にはビデオ1が継続表示されるが、エリア2はエリア3に変化し、オーディオ2のみが表示される。つまり、ビデオ2の表示がなくなる。プライマリデバイス21の表示変化は、例えば、デバイス間の通信により自動的に、後述するセカンダリデバイス22のエリア4へのビデオ2の表示開始に同期して行われる。
セカンダリデバイス22は、DASH MPDサーバ12から拡張MPDファイル(mpd-6.mpd)を取得し、さらにその中の拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から拡張SMILファイル(smil-6.smil)を取得する。
セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであることから、拡張SMILファイル(smil-6.smil)に含まれるデバイスクラス2のレイアウト(layout)要素に応じた表示を行う。すなわち、エリア4にビデオ2が表示される。
なお、上述では、図18(a)の状態から図18(b)の状態への変化は、セカンダリデバイス22の電源が入ることで行われるように説明したが、その他のイベント発生に応じて変化することも考えられる。例えば、電源オンとなっているセカンダリデバイス22において、ユーザにエリア2の表示をするか否かを問い合わせて、肯定の応答操作があった場合に変化するようにされてもよい。また、例えば、予め設定された所定時刻になったら変化するようにされてもよい。
このユースケース6の場合、マルチスクリーンプレゼンテーションに遷移すると同時に、プライマリスクリーン上の一部の描画領域の中の一部のコンテンツをセカンダリスクリーンに移すことができる。
「ユースケース7(Asset Receiving in Multi-screen Presentation)」
このユースケース7では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-7.mpd)が取得される。
このユースケース7では、DASH MPDサーバ12から以下のような拡張SMIL参照型の拡張MPDファイル(mpd-7.mpd)が取得される。
<MPD …smilRef="http://a.com/smil-7.smil" >
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-v1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-v2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
<BaseURL>http://example.com/</BaseURL>
<Period …>
<AdaptationSet …> -- Video1
<Representation id="repId-v1" …>
<BaseURL>video1.mp4</BaseURL>
……
</AdaptationSet>
<AdaptationSet …> -- Video2
<Representation id="repId-v2" …>
<BaseURL>video2.mp4</BaseURL>
……
</AdaptationSet>
</Period>
</MPD>
この拡張MPDファイルには、MPD要素に、拡張SMILファイル参照属性「smilRef=”http://a.com/smil-7.smil」が配置されている。このユースケース5では、この拡張SMILファイル参照属性に基づいて、提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から以下のような内容の拡張SMILファイル(smil-7.smil)が取得される。
<smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
<region id=”View3” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”0%” width=”30%” height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px” coexistWith=”View1”>
<region id=”Area3” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-7.mpd#repId-v1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-7.mpd#repId-v2" region="Area2" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-7.mpd#repId-v2" region="Area3" begin=”0”/> -- Video2
</par>
</body>
</smil>
<head>
<switch>
<layout system-device-class=”DeviceClass01”>
<region id=”View1” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
<region id=”View3” width=”1920px” height=”1080px”>
<region id=”Area1” top=”0%” left=”0%” width=”70%” height=”100%”>
<region id=”Area2” top=”0%” left=”0%” width=”30%” height=”100%”>
</region>
</layout>
<layout system-device-class=”DeviceClass02”>
<region id=”View2” width=”1024px” height=”768px” coexistWith=”View1”>
<region id=”Area3” top=”0%” left=”0%” width=”100%” height=”100%”>
</region>
</layout>
</switch>
</head>
<body>
<par xmlns:xlink=”http://www.w3.org/1999/xlink”>
<ref xlink:type="locator" xlink:href="http://a.com/mpd-7.mpd#repId-v1" region="Area1" begin=”0”/> -- Video1
<ref xlink:type="locator" xlink:href="http://a.com/mpd-7.mpd#repId-v2" region="Area2" begin=”0”/> -- Video2
<ref xlink:type="locator" xlink:href="http://a.com/mpd-7.mpd#repId-v2" region="Area3" begin=”0”/> -- Video2
</par>
</body>
</smil>
SMIL要素の下に、コンテンツのレイアウトと重なりかたの記載を行うヘッダ(head)要素と、コンテンツの表示方法などの記載を行うボディ(body)要素が存在する。ヘッダ(head)要素の下に、スイッチ(swich)要素が配置され、その下に、レイアウトの背景サイズの指定を行うレイアウト(layout)要素が配置されている。スイッチ(swich)要素は、複数のレイアウト(layout)要素から選択的に使用することを意味する。
ここで、複数の提示デバイス種類にそれぞれ対応したレイアウト(layout)要素が存在する。この例では、デバイスクラス1(DeviceClass01)と、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素が配置されている。
デバイスクラス1(DeviceClass01)のレイアウト(layout)要素の中に、「region id=”View1”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー1(View1)に含まれる子の提示要素(region)のサイズと位置が指定されている。
この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”100%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。
また、デバイスクラス1(DeviceClass01)のレイアウト(layout)要素の中に、「region id=”View3”」で示される親の提示要素(region)のサイズが、「width=”1920px” height=”1080px”」として指定される。そして、このレイアウト(layout)要素の中に、ビュー3(View3)に含まれる子の提示要素(region)のサイズと位置が指定されている。
この場合、「region id=”Area1”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”70%” height=”100%”」として指定されている。また、「region id=”Area2”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”70%” width=”30%” height=”100%”」として指定されている。
また、デバイスクラス2(DeviceClass02)のレイアウト(layout)要素の中に、「region id=”View2”」で示される親の提示要素(region)のサイズが、「width=”1024px” height=”768px”」として指定される。ここで、「coexistWith」は、ビュー間の同期関係(制約)を示す属性である。このようにビュー2(View2)に関連して、「coexistWith=”View1”」を記述することで、このビュー2(View2)と、上述したビュー1(View1)が同時に存在し得ることを示す。つまり、ビュー2(View2)を使うときは、必ず、ビュー1(View1)を使う必要がることを意味している。
また、このレイアウト(layout)要素の中に、ビュー2(View2)に含まれる子の提示要素(region)のサイズと位置が指定されている。この場合、「region id=”Area3”」で示される子の提示要素(region)のサイズと位置が、「top=”0%” left=”0%” width=”100%” height=”100%”」として指定されている。ここで、「top=”0%” left=”0%”」は、左上の位置を、親の提示要素(region)の左上を基点とするオフセット値で示している。
また、ボディ(body)の要素の中に、各エリアの提示(表示)内容などが指定されている。「<ref xlink:type="locator" xlink:href="http://a.com/mpd-7.mpd#repId-v1" region="Area1" begin=”0”/> -- Video1」は、エリア1(Area1)にビデオ1(Video1)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-7.mpd)のリプレゼンテーション要素(repId-v1)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
また、「<ref xlink:type="locator" xlink:href="http://a.com/mpd-7.mpd#repId-v2" region="Area2" begin=”0”/> -- Video2」は、エリア2(Area2)にビデオ2(Video2)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-7.mpd)のリプレゼンテーション要素(repId-v2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
「<ref xlink:type="locator" xlink:href="http://a.com/mpd-7.mpd#repId-v2" region="Area3" begin=”0”/> -- Video2」は、エリア3(Area3)にビデオ2(Video2)を表示すること、そして、そのためのビデオデータを拡張MPDファイル(mpd-7.mpd)のリプレゼンテーション要素(repId-v2)を参照して取得すること、さらに、最初から再生をスタートさせることを示す。
ここで、IPTVクライアント13として、図19に示すように、プライマリデバイス(The primary device)21と、セカンダリデバイス(The secondary device)22が存在する場合を考える。プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであり、例えばテレビ受信機であるとする。また、セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであり、例えばタブレットであるとする。
図19(a)は、プライマリデバイス21およびセカンダリデバイス22の双方が電源オンとされている状態を示している。この状態では、例えば、プライマリデバイス21およびセカンダリデバイス22の双方が、拡張MPDファイル(mpd-7.mpd)を取得し、さらにその中の拡張SMILファイル参照属性に基づいて、拡張SMILファイル(smil-7.smil)を取得する。この場合、拡張MPDファイル(mpd-7.mpd)はDASH MPDサーバ12から取得され、拡張SMILファイル(smil-7.smil)は提示制御情報生成サーバ15(あるいはDASH MPDサーバ12)から取得される。
プライマリデバイス21は、デバイスクラス1(DeviceClass01)に該当する提示デバイスであることから、拡張SMILファイル(smil-7.smil)に含まれるデバイスクラス1のレイアウト(layout)要素に基づき、ビュー1(View1)の表示を行う。すなわち、エリア1にビデオ1が表示された状態となる。
一方、セカンダリデバイス22は、デバイスクラス2(DeviceClass02)に該当する提示デバイスであることから、拡張SMILファイル(smil-7.smil)に含まれるデバイスクラス2のレイアウト(layout)要素に基づき、ビュー2(View2)の表示を行う。すなわち、エリア3にビデオ2が表示された状態となる。
この場合、(smil-7.smil)に含まれるビュー2(View2)に関連して配置されている「coexistWith=”View1”」の属性値により、例えば、デバイス間の通信が行われて、セカンダリデバイス22にビュー2(View2)が表示されている間、プライマリデバイス21にビュー1(View1)の表示が継続される。
図19(b)は、その後に、セカンダリデバイス22の電源がオフとされた状態を示している。この状態では、プライマリデバイス21は、ビュー1(View1)の表示状態からビュー3(View3)の表示状態に変化する。すなわち、エリア1にビデオ1が表示され、エリア2にビデオ2が表示された状態となる。この場合、セカンダリデバイス22におけるビュー2(View2)の表示がなくなるので、プライマリデバイス21はそれによる表示の制約を受けなくなる。
なお、上述では、図19(a)の状態から図19(b)の状態への変化は、セカンダリデバイス22の電源がオフとされることで行われるように説明したが、その他のイベント発生に応じて変化することも考えられる。例えば、電源オンとなっているセカンダリデバイス22において、ユーザにエリア3の表示を消すか否かを問い合わせて、肯定の応答操作があった場合に変化するようにされてもよい。また、例えば、予め設定された所定時刻になったら変化するようにされてもよい。
このユースケース7の場合、マルチスクリーンプレゼンテーションを解消すると同時に、セカンダリスクリーン上の一部の描画領域をプライマリスクリーンに移すことができる。
[ストリーム配信システムの動作例]
図20は、IPTVクライアント13からのMPD要求からコンテンツ(DASHストリームセグメント)再生までのフローの一例を概略的に示している。
図20は、IPTVクライアント13からのMPD要求からコンテンツ(DASHストリームセグメント)再生までのフローの一例を概略的に示している。
(1)IPTVクライアント13は、NTPサーバ17から供給される時刻情報に基づいて、システムクロックの同期を図る。(2)IPTVクライアント13は、所定のコンテンツに関するMPDファイルの取得要求を、DASH MPDサーバ12に送付する。(3)DASH MPDサーバ12は、この取得要求に応じて、MPDファイルを、IPTVクライアント13に送付する。
(4)IPTVクライアント13は、受け取ったMPDファイルを解析し、別SMILファイルがある場合、提示制御情報生成サーバ15に、SMILファイルの取得要求を送付する。(5)提示制御情報生成サーバ15は、この取得要求に応じて、SMILファイルを、IPTVクライアント13に送付する。
(6)IPTVクライアント13は、MPDファイルの解析およびSMIL要素の解析と、対応する処理(レイアウト処理、イメージ、ウィジェットのデータ取得・再生処理など)を行う。(7)また、IPTVクライアント13は、必要とするビデオ、オーディオのデータを取得するために、ストリームセグメントの取得要求を、DASHセグメントストリーマ11に送付する。
(8)DASHセグメントストリーマ11は、この取得要求に応じて、ストリームセグメントを、IPTVクライアント13に送付する。(9)ストリームセグメントの送付を受けたIPTVクライアント13は、そのストリームセグメントに復号処理を施し、所定のコンテンツの動画や音声を再生する。
なお、図20に示すフローでは、提示制御情報生成サーバ15からSMILファイルを取得する例を示している。しかし、DASH MPDサーバ12がSMILファイルをも保持している場合には、このDASH MPDサーバ12からSMILファイルを取得することになる。
図21は、プライマリ、セカンダリの2つのIPTVクライアント13a,13bからのMPD要求からコンテンツ(DASHストリームセグメント)再生までのフローの一例を概略的に示している。
最初にIPTVクライアント(プライマリ)13a側を説明する。(11)IPTVクライアント13aは、NTPサーバ17から供給される時刻情報に基づいて、システムクロックの同期を図る。(12)IPTVクライアント13aは、所定のコンテンツに関するMPDファイルの取得要求を、DASH MPDサーバ12に送付する。(31)DASH MPDサーバ12は、この取得要求に応じて、MPDファイルを、IPTVクライアント13aに送付する。
(13)IPTVクライアント13aは、受け取ったMPDファイルを解析し、別SMILファイルがある場合、提示制御情報生成サーバ15に、SMILファイルの取得要求を送付する。(32)提示制御情報生成サーバ15は、この取得要求に応じて、SMILファイルを、IPTVクライアント13aに送付する。
(14)IPTVクライアント13aは、MPDファイルの解析およびSMIL要素の解析と、対応する処理(レイアウト処理、イメージ、ウィジェットのデータ取得・再生処理など)を行う。(15)そして、IPTVクライアント13aは、IPTVクライアント(セカンダリ)13bからの通知がある場合、このIPTVクライアント13bと協調するシナリオ(レイアウト、表示の態様)にスイッチする。
(16)IPTVクライアント13は、必要とするビデオ、オーディオのデータを取得するために、ストリームセグメントの取得要求を、DASHセグメントストリーマ11に送付する。(33)DASHセグメントストリーマ11は、この取得要求に応じて、ストリームセグメントを、IPTVクライアント13aに送付する。(17)ストリームセグメントの送付を受けたIPTVクライアント13aは、そのストリームセグメントに復号処理を施し、所定のコンテンツの動画や音声を再生する。
次に、IPTVクライアント(セカンダリ)13b側を説明する。(21)IPTVクライアント13bは、NTPサーバ17から供給される時刻情報に基づいて、システムクロックの同期を図る。(22)IPTVクライアント13bは、所定のコンテンツに関するMPDファイルの取得要求を、DASH MPDサーバ12に送付する。(31)DASH MPDサーバ12は、この取得要求に応じて、MPDファイルを、IPTVクライアント13bに送付する。
(23)IPTVクライアント13bは、受け取ったMPDファイルを解析し、別SMILファイルがある場合、提示制御情報生成サーバ15に、SMILファイルの取得要求を送付する。(32)提示制御情報生成サーバ15は、この取得要求に応じて、SMILファイルを、IPTVクライアント13bに送付する。
(24)IPTVクライアント13bは、対応する処理系を起動するか否かを確認する。例えば、PTVクライアント13a,13bを同時に使用しているユーザに対して、両スクリーンを同時に使用して視聴するか否かの回答を求める、などである。(25)IPTVクライアント13b、確認した後、IPTVクライアント(プライマリ)13a上の対応アプリケーションへの通知を行う。
(26)IPTVクライアント13bは、MPDファイルの解析およびSMIL要素の解析と、対応する処理(レイアウト処理、イメージ、ウィジェットのデータ取得・再生処理など)を行う。(27)そして、IPTVクライアント13bは、必要とするビデオ、オーディオのデータを取得するために、ストリームセグメントの取得要求を、DASHセグメントストリーマ11に送付する。
(33)DASHセグメントストリーマ11は、この取得要求に応じて、ストリームセグメントを、IPTVクライアント13bに送付する。(28)ストリームセグメントの送付を受けたIPTVクライアント13bは、そのストリームセグメントに復号処理を施し、所定のコンテンツの動画や音声を再生する。
なお、図21に示すフローでは、提示制御情報生成サーバ15からSMILファイルを取得する例を示している。しかし、DASH MPDサーバ12がSMILファイルをも保持している場合には、このDASH MPDサーバ12からSMILファイルを取得することになる。
以上説明したように、図1に示すストリーム配信システム10においては、IPTVクライアント13は、DASH MPDサーバ12から、拡張SMIL包含型の拡張MPDファイル(図7(a)参照)あるいは拡張SMIL参照型の拡張MPDファイル(図7(b)参照)を取得できる。そのため、例えば、IPTVクライアント13において、コンテンツの提示レイアウト制御を簡易に行うことが可能となる。
<2.変形例>
なお、上述実施の形態おいては、提示デバイスの種類が複数存在する例として2種類のものをしめしたが、3種類以上の場合にも同様の連携された提示制御が可能となる。また、上述実施の形態においては、本技術をMPEG−DASHベースのビデオデータストリームを配信するストリーム配信システムに適用したものである。本技術は、その他の同様のビデオデータストリームの配信システムにも同様に適用できることは勿論である。
なお、上述実施の形態おいては、提示デバイスの種類が複数存在する例として2種類のものをしめしたが、3種類以上の場合にも同様の連携された提示制御が可能となる。また、上述実施の形態においては、本技術をMPEG−DASHベースのビデオデータストリームを配信するストリーム配信システムに適用したものである。本技術は、その他の同様のビデオデータストリームの配信システムにも同様に適用できることは勿論である。
また、本技術は、以下のような構成を取ることもできる。
(1)配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを保持する保持部と、
上記クライアント端末から上記ネットワークを通じて送られてくる送信要求に応じて、上記保持されているメタファイルを、上記ネットワークを通じて、上記クライアント端末に送信する送信部とを備える
送信装置。
(2)上記提示制御情報は、上記取得情報に含まれる所定の制御対象要素を参照するための参照情報を持つ
前記(1)に記載の送信装置。
(3)上記メタファイルは拡張MPDファイルであり、
上記制御対象要素はアダプテーションセット要素あるいはリプレゼンテーション要素である
前記(2)に記載の送信装置。
(4)上記提示制御情報は、
所定数の子提示要素を含む親提示要素の提示時間情報を持つ
前記(1)から(3)のいずれかに記載の送信装置。
(5)上記提示制御情報は、
複数の提示デバイス種類に対応した提示制御情報を持つ
前記(1)から(4)のいずれかに記載の送信装置。
(6)上記提示制御情報は、
第1の上記提示デバイス種類の提示制御情報と同時に存在し得る第2の上記提示デバイス種類の提示制御情報を指定する情報を持つ
前記(5)に記載の送信装置。
(7)上記メタファイルは拡張MPDファイルであり、上記提示制御情報は拡張SMIL要素である
前記(1)から(6)のいずれかに記載の送信装置。
(8)クライアント端末からネットワークを通じて送られてくる送信要求を受信するステップと、
上記送信要求が受信されるとき、上記ネットワークを通じて、配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを、上記クライアント端末に送信するステップとを備える
メタファイル送信方法。
(9)配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを受信する受信部と、
上記受信されたメタファイルに基づく処理を行う処理部とを備える
受信装置。
(10)上記提示制御情報は、上記取得情報に含まれる所定の制御対象要素を参照するための参照情報を持つ
前記(9)に記載の受信装置。
(11)上記メタファイルは拡張MPDファイルであり、
上記制御対象要素はアダプテーションセット要素あるいはリプレゼンテーション要素である
前記(10)に記載の受信装置。
(12)上記提示制御情報は、
所定数の子提示要素を含む親提示要素の提示時間情報を持つ
前記(9)から(11)のいずれかに記載の受信装置。
(13)上記提示制御情報は、
複数の提示デバイス種類に対応した提示制御情報を持つ
前記(9)から(12)のいずれかに記載の受信装置。
(14)上記提示制御情報は、
第1の上記提示デバイス種類の提示制御情報と同時に存在し得る第2の上記提示デバイス種類の提示制御情報を指定する情報を持つ
前記(13)に記載の受信装置。
(15)上記メタファイルは拡張MPDファイルであり、上記提示制御情報は拡張SMIL要素である
前記(9)から(14)のいずれかに記載の受信装置。
(16)配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを受信するステップと、
上記受信されたメタファイルに基づく処理を行うステップとを備える
受信処理方法。
(1)配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを保持する保持部と、
上記クライアント端末から上記ネットワークを通じて送られてくる送信要求に応じて、上記保持されているメタファイルを、上記ネットワークを通じて、上記クライアント端末に送信する送信部とを備える
送信装置。
(2)上記提示制御情報は、上記取得情報に含まれる所定の制御対象要素を参照するための参照情報を持つ
前記(1)に記載の送信装置。
(3)上記メタファイルは拡張MPDファイルであり、
上記制御対象要素はアダプテーションセット要素あるいはリプレゼンテーション要素である
前記(2)に記載の送信装置。
(4)上記提示制御情報は、
所定数の子提示要素を含む親提示要素の提示時間情報を持つ
前記(1)から(3)のいずれかに記載の送信装置。
(5)上記提示制御情報は、
複数の提示デバイス種類に対応した提示制御情報を持つ
前記(1)から(4)のいずれかに記載の送信装置。
(6)上記提示制御情報は、
第1の上記提示デバイス種類の提示制御情報と同時に存在し得る第2の上記提示デバイス種類の提示制御情報を指定する情報を持つ
前記(5)に記載の送信装置。
(7)上記メタファイルは拡張MPDファイルであり、上記提示制御情報は拡張SMIL要素である
前記(1)から(6)のいずれかに記載の送信装置。
(8)クライアント端末からネットワークを通じて送られてくる送信要求を受信するステップと、
上記送信要求が受信されるとき、上記ネットワークを通じて、配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを、上記クライアント端末に送信するステップとを備える
メタファイル送信方法。
(9)配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを受信する受信部と、
上記受信されたメタファイルに基づく処理を行う処理部とを備える
受信装置。
(10)上記提示制御情報は、上記取得情報に含まれる所定の制御対象要素を参照するための参照情報を持つ
前記(9)に記載の受信装置。
(11)上記メタファイルは拡張MPDファイルであり、
上記制御対象要素はアダプテーションセット要素あるいはリプレゼンテーション要素である
前記(10)に記載の受信装置。
(12)上記提示制御情報は、
所定数の子提示要素を含む親提示要素の提示時間情報を持つ
前記(9)から(11)のいずれかに記載の受信装置。
(13)上記提示制御情報は、
複数の提示デバイス種類に対応した提示制御情報を持つ
前記(9)から(12)のいずれかに記載の受信装置。
(14)上記提示制御情報は、
第1の上記提示デバイス種類の提示制御情報と同時に存在し得る第2の上記提示デバイス種類の提示制御情報を指定する情報を持つ
前記(13)に記載の受信装置。
(15)上記メタファイルは拡張MPDファイルであり、上記提示制御情報は拡張SMIL要素である
前記(9)から(14)のいずれかに記載の受信装置。
(16)配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを受信するステップと、
上記受信されたメタファイルに基づく処理を行うステップとを備える
受信処理方法。
本技術の主な特徴は、例えばMPEG−DASHベースのビデオデータストリーム配信システムにおいて、拡張SMIL包含型の拡張MPDファイルあるいは拡張SMIL参照型の拡張MPDファイルを用いることで、IPTVクライアントにおけるコンテンツの提示レイアウト制御を簡易に行い得るようにしたことである(図7参照)。
10・・・ストリーム配信システム
11・・・DASHセグメントストリーマ
12・・・DASH MPDサーバ
13,13-1〜13-3,13a,13b・・・IPTVクライアント
14・・・CDN
15・・・提示制御情報生成サーバ
16・・・コンテンツマネジメントサーバ
17・・・NTPサーバ
21・・・プライマリデバイス
22・・・セカンダリデバイス
131・・・ストリーミングデータ制御部
132・・・HTTPアクセス部
133・・・動画再生部
11・・・DASHセグメントストリーマ
12・・・DASH MPDサーバ
13,13-1〜13-3,13a,13b・・・IPTVクライアント
14・・・CDN
15・・・提示制御情報生成サーバ
16・・・コンテンツマネジメントサーバ
17・・・NTPサーバ
21・・・プライマリデバイス
22・・・セカンダリデバイス
131・・・ストリーミングデータ制御部
132・・・HTTPアクセス部
133・・・動画再生部
Claims (16)
- 配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを保持する保持部と、
上記クライアント端末から上記ネットワークを通じて送られてくる送信要求に応じて、上記保持されているメタファイルを、上記ネットワークを通じて、上記クライアント端末に送信する送信部とを備える
送信装置。 - 上記提示制御情報は、上記取得情報に含まれる所定の制御対象要素を参照するための参照情報を持つ
請求項1に記載の送信装置。 - 上記メタファイルは拡張MPDファイルであり、
上記制御対象要素はアダプテーションセット要素あるいはリプレゼンテーション要素である
請求項2に記載の送信装置。 - 上記提示制御情報は、
所定数の子提示要素を含む親提示要素の提示時間情報を持つ
請求項1に記載の送信装置。 - 上記提示制御情報は、
複数の提示デバイス種類に対応した提示制御情報を持つ
請求項1に記載の送信装置。 - 上記提示制御情報は、
第1の上記提示デバイス種類の提示制御情報と同時に存在し得る第2の上記提示デバイス種類の提示制御情報を指定する情報を持つ
請求項5に記載の送信装置。 - 上記メタファイルは拡張MPDファイルであり、上記提示制御情報は拡張SMIL要素である
請求項1に記載の送信装置。 - クライアント端末からネットワークを通じて送られてくる送信要求を受信するステップと、
上記送信要求が受信されるとき、上記ネットワークを通じて、配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを、上記クライアント端末に送信するステップとを備える
メタファイル送信方法。 - 配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを受信する受信部と、
上記受信されたメタファイルに基づく処理を行う処理部とを備える
受信装置。 - 上記提示制御情報は、上記取得情報に含まれる所定の制御対象要素を参照するための参照情報を持つ
請求項9に記載の受信装置。 - 上記メタファイルは拡張MPDファイルであり、
上記制御対象要素はアダプテーションセット要素あるいはリプレゼンテーション要素である
請求項10に記載の受信装置。 - 上記提示制御情報は、
所定数の子提示要素を含む親提示要素の提示時間情報を持つ
請求項9に記載の受信装置。 - 上記提示制御情報は、
複数の提示デバイス種類に対応した提示制御情報を持つ
請求項9に記載の受信装置。 - 上記提示制御情報は、
第1の上記提示デバイス種類の提示制御情報と同時に存在し得る第2の上記提示デバイス種類の提示制御情報を指定する情報を持つ
請求項13に記載の受信装置。 - 上記メタファイルは拡張MPDファイルであり、上記提示制御情報は拡張SMIL要素である
請求項9に記載の受信装置。 - 配信サーバがネットワークを通じて配信可能なコンテンツの所定数のデータストリームをクライアント端末が取得するための取得情報と共に、上記コンテンツの提示制御を行うための提示制御情報を含むファイルを参照するための参照情報あるいは上記コンテンツの提示制御を行うための提示制御情報を持つメタファイルを受信するステップと、
上記受信されたメタファイルに基づく処理を行うステップとを備える
受信処理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013087898A JP2014212456A (ja) | 2013-04-18 | 2013-04-18 | 送信装置、メタファイル送信方法、受信装置および受信処理方法 |
PCT/JP2014/060873 WO2014171498A1 (ja) | 2013-04-18 | 2014-04-16 | 送信装置、メタファイル送信方法、受信装置および受信処理方法 |
US14/783,710 US10219024B2 (en) | 2013-04-18 | 2014-04-16 | Transmission apparatus, metafile transmission method, reception apparatus, and reception processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013087898A JP2014212456A (ja) | 2013-04-18 | 2013-04-18 | 送信装置、メタファイル送信方法、受信装置および受信処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014212456A true JP2014212456A (ja) | 2014-11-13 |
Family
ID=51731435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013087898A Pending JP2014212456A (ja) | 2013-04-18 | 2013-04-18 | 送信装置、メタファイル送信方法、受信装置および受信処理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10219024B2 (ja) |
JP (1) | JP2014212456A (ja) |
WO (1) | WO2014171498A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017143475A (ja) * | 2016-02-12 | 2017-08-17 | 日本放送協会 | 配信管理装置、受信装置、分散処理システム、及びプログラム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016133296A1 (ko) * | 2015-02-16 | 2016-08-25 | 엘지전자 주식회사 | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 |
CN112540735B (zh) * | 2019-09-20 | 2023-03-14 | 西安诺瓦星云科技股份有限公司 | 多屏同步显示方法、装置及系统以及计算机存储介质 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6097441A (en) * | 1997-12-31 | 2000-08-01 | Eremote, Inc. | System for dual-display interaction with integrated television and internet content |
US20110096828A1 (en) * | 2009-09-22 | 2011-04-28 | Qualcomm Incorporated | Enhanced block-request streaming using scalable encoding |
KR101786051B1 (ko) * | 2009-11-13 | 2017-10-16 | 삼성전자 주식회사 | 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치 |
JP5569053B2 (ja) | 2010-03-11 | 2014-08-13 | ソニー株式会社 | コンテンツ配信装置、コンテンツ配信方法および送信サーバ |
US9615119B2 (en) * | 2010-04-02 | 2017-04-04 | Samsung Electronics Co., Ltd. | Method and apparatus for providing timeshift service in digital broadcasting system and system thereof |
US8782268B2 (en) * | 2010-07-20 | 2014-07-15 | Microsoft Corporation | Dynamic composition of media |
KR20120060134A (ko) * | 2010-08-16 | 2012-06-11 | 삼성전자주식회사 | 광고 재생 방법 및 장치 |
US20120233345A1 (en) * | 2010-09-10 | 2012-09-13 | Nokia Corporation | Method and apparatus for adaptive streaming |
CN107087223A (zh) * | 2011-01-07 | 2017-08-22 | 夏普株式会社 | 再生装置及其控制方法、以及生成装置及其控制方法 |
US20130042013A1 (en) * | 2011-08-10 | 2013-02-14 | Nokia Corporation | Methods, apparatuses and computer program products for enabling live sharing of data |
JP6145460B2 (ja) * | 2012-01-19 | 2017-06-14 | ヴィド スケール インコーポレイテッド | 観視条件への適応をサポートするビデオ配信のための方法およびシステム |
JP2013211784A (ja) * | 2012-03-30 | 2013-10-10 | Sharp Corp | コンテンツデータ記録装置およびコンテンツデータ記録方法 |
US9438818B2 (en) * | 2012-06-20 | 2016-09-06 | Qualcomm Incorporated | Device and method for multimedia communications with picture orientation information |
US20140007158A1 (en) * | 2012-06-29 | 2014-01-02 | Cable Television Laboratories, Inc. | Emergency alert system (eas) alert generation |
US8495675B1 (en) * | 2012-07-30 | 2013-07-23 | Mdialog Corporation | Method and system for dynamically inserting content into streaming media |
KR101700626B1 (ko) * | 2013-12-18 | 2017-01-31 | 한국전자통신연구원 | 멀티 앵글 뷰 처리장치 |
KR20150072231A (ko) * | 2013-12-19 | 2015-06-29 | 한국전자통신연구원 | 멀티 앵글 뷰 서비스 제공 장치 및 방법 |
-
2013
- 2013-04-18 JP JP2013087898A patent/JP2014212456A/ja active Pending
-
2014
- 2014-04-16 US US14/783,710 patent/US10219024B2/en active Active
- 2014-04-16 WO PCT/JP2014/060873 patent/WO2014171498A1/ja active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017143475A (ja) * | 2016-02-12 | 2017-08-17 | 日本放送協会 | 配信管理装置、受信装置、分散処理システム、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
US20160037206A1 (en) | 2016-02-04 |
US10219024B2 (en) | 2019-02-26 |
WO2014171498A1 (ja) | 2014-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10999338B2 (en) | Method to re-synchronize live media streams, commands, and on-screen events transmitted through different internet pathways | |
JP6462566B2 (ja) | 送信装置、送信方法、受信装置および受信方法 | |
US8595342B2 (en) | Synchronized media playback using autonomous clients over standard Internet protocols | |
US20170195744A1 (en) | Live-stream video advertisement system | |
US11647252B2 (en) | Identification of elements in a group for dynamic element replacement | |
KR20170074866A (ko) | 수신 장치, 송신 장치, 및 데이터 처리 방법 | |
US20180227605A1 (en) | Transmission apparatus, transmission method, reception apparatus, and reception method | |
KR102499231B1 (ko) | 수신 장치, 송신 장치 및 데이터 처리 방법 | |
US11765421B2 (en) | Client based storage of remote element resolutions | |
CN113767639B (zh) | 接收媒体数据的方法、装置和非易失性计算机可读介质 | |
US20160373496A1 (en) | Content supply device, content supply method, program, terminal device, and content supply system | |
CN103686245A (zh) | 一种基于hls协议的点播与直播切换方法和装置 | |
KR102085192B1 (ko) | 렌더링 시간 제어 | |
JP2004140488A (ja) | マルチメディアコンテンツ編集装置およびマルチメディアコンテンツ再生装置 | |
KR20160077067A (ko) | 송신 장치, 송신 방법, 수신 장치, 및 수신 방법 | |
WO2014171498A1 (ja) | 送信装置、メタファイル送信方法、受信装置および受信処理方法 | |
US10567098B2 (en) | Reception apparatus, transmission apparatus, and data processing method | |
KR102533674B1 (ko) | 수신 장치, 송신 장치 및 데이터 처리 방법 | |
van Deventer et al. | Media synchronisation for television services through HbbTV | |
US11856242B1 (en) | Synchronization of content during live video stream | |
JPWO2019188485A1 (ja) | 情報処理装置、情報処理装置およびプログラム |