以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
1.4K/8KコンテンツのUse case
2.コンテンツの外部転送の流れ
3.MMT放送を用いたネットワークシステム
4.プロパティ情報の例
5.プロパティ情報の参照の具体例
6.STBの構成と動作
7.変形例
<4K/8KコンテンツのUse case>
・Use case-1:STBとレコーダ間の接続
図1は、4K/8KコンテンツのUse caseの第1の例を示す図である。
図1の例においては、テレビジョン番組が4K/8Kコンテンツとして放送され、その受信後のUse caseが示されている。図2および図3においても同様である。
4K/8Kコンテンツは、4K解像度(例えば3840×2160画素)または8K解像度(例えば7680×4320画素)といったように、HD解像度と比べて解像度が高いコンテンツである。輝度のダイナミックレンジが広いHDR(High Dynamic Range)の4K/8Kコンテンツの放送が、次世代の放送規格においては可能となっている。
矢印A1の先に示すように、放送された4K/8Kコンテンツをレコーダ1内蔵のHDDに記録したり、レコーダ1に装填されたBDなどの光ディスクに記録したりするための規格については、既に策定されている。
レコーダ1は、放送された4K/8Kコンテンツを受信し、内蔵のHDDや光ディスクなどの記録媒体に記録することができる。4K/8KコンテンツをTV(Television)2の外付けのHDDに記録することも可能となっている。
一方、矢印A2の先に示すように、放送された4K/8KコンテンツをSTB(Set Top Box)3において受信し、ネットワークを介してレコーダ4に転送して、レコーダ4内蔵のHDDに記録するための規格は策定されていない。STB3は、いわゆるネットワーク越しのムーブを行うことができない。
図1のSTB3とレコーダ4は、例えば同じ家庭内に設置されたデバイスである。STB3とレコーダ4は、無線LAN等を用いたホームネットワークに接続されており、相互に通信を行うことが可能となっている。
なお、放送されたコンテンツがMPEG-2 TSを用いて放送されたHDコンテンツであれば、そのようなネットワーク越しのムーブは可能とされる。
・Use case-2:HDDに記録された4K/8Kコンテンツの退避
図2は、4K/8KコンテンツのUse caseの第2の例を示す図である。
図2の例においては、外付けのHDDがTV2に接続されている。TV2により受信され、外付けのHDDに一度記録された4K/8Kコンテンツを、ネットワークを介してレコーダ4に転送し、レコーダ4に装填された光ディスクに記録するための規格は策定されていない。
このように、いわゆるデバイスバインドが行われた4K/8Kコンテンツについては、レコーダ4に装填された光ディスクに退避させることができない。外付けのHDDに一度記録された4K/8Kコンテンツは、TV2に紐付けられ、TV2においてのみ、再生して視聴することが可能とされる。
ユーザは、外付けのHDDの空き容量がなくなった場合、不要な4K/8Kコンテンツを消して容量を確保しなければ、新たな4K/8Kコンテンツを記録することができない。
なお、外付けのHDDに記録されたコンテンツがMPEG-2 TSを用いて放送されたHDコンテンツであれば、ネットワーク越しのムーブを用いた退避は可能とされる。
・Use case-3:外部視聴
図3は、4K/8KコンテンツのUse caseの第3の例を示す図である。
図3の例においては、家庭内に設置されたレコーダ1と、家庭の外にある携帯端末5との間で、インターネットなどのネットワークを介して通信を行うことが可能とされている。携帯端末5は、例えば、外出中のユーザが携帯するスマートフォンなどのデバイスである。
レコーダ1内蔵のHDDに記録された4K/8Kコンテンツを、ネットワークを介して携帯端末5に送信し、携帯端末5上で視聴するための規格は策定されていない。携帯端末5のユーザは、自宅のレコーダ1に記録しておいたコンテンツをストリーミングによって携帯端末5上で視聴する、いわゆるストリーミング視聴を行うことができない。
なお、レコーダ1内蔵のHDDに記録されたコンテンツがMPEG-2 TSを用いて放送されたHDコンテンツであれば、そのようなストリーミング視聴は可能とされる。
このように、ネットワークを経由させる4K/8KコンテンツのUse caseに応じた規格は策定されていない。
後述するように、本技術の一側面に係るネットワークシステムにおいては、このようなネットワークを経由させた4K/8Kコンテンツの処理が可能とされる。
<コンテンツの外部転送の流れ>
ここで、以上のような各Use caseにおける、ネットワークを経由させた従来のコンテンツの転送の流れについて説明する。転送の対象となるコンテンツは、従来の規格で放送されたHDコンテンツである。
図4は、ネットワークシステムの構成例を示す図である。
図4のネットワークシステムは、例えば家庭内に構築されたシステムである。図4のネットワークシステムは、STB11、レコーダ12とともに、デバイスD1,D2がルータ13を介して接続されることによって構成される。例えば、STB11とレコーダ12は、HDMI(登録商標)(High-Definition Multimedia Interface)ケーブルなどを介して同じTVに接続される。それぞれ異なるTVがSTB11とレコーダ12に接続されるようにしてもよい。
STB11は、放送による伝送路、または、インターネットなどの通信による伝送路を介して伝送されたコンテンツを受信する。図4の例においては、番組#1乃至#3が受信されている。
レコーダ12のドライブには、BDなどの光ディスク21が装填されている。レコーダ12は、HDD22を内蔵するデバイスである。デバイスD1,D2は、それぞれ、レコーダ、PC、携帯端末などの、ルータ13が管理するDHCP(Dynamic Host Configuration Protocol)による通信に対応したデバイスである。
以下、STB11が受信したコンテンツを、ネットワーク上の所定のデバイスにアップロード(転送)する場合のSTB11の一連の動作について説明する。アップロード先のデバイスにおいては、STB11から送信されてきたコンテンツの記録、視聴などが行われる。
また、主に、放送による伝送路を介して伝送されたコンテンツをアップロードする場合の動作について説明するが、通信による伝送路を介して伝送されたコンテンツをアップロードする場合の処理も同様の処理となる。
図5のフローチャートを参照して、STB11の一連の動作について説明する。
ステップS1において、STB11は、アップロードの対象となるコンテンツの選択を受け付ける。例えば、STB11は、図示せぬTVに番組表を表示させ、放送中の番組の中から、アップロードの対象となる番組をユーザに選択させる。
コンテンツの選択の受け付けが、デバイス選択の後や記録媒体選択の後に行われるようにすることも可能である。
ステップS2において、STB11はデバイス選択を行う。デバイス選択により、コンテンツのアップロード先となるデバイスが選択される。デバイス選択の詳細については、図6のフローチャートを参照して後述する。
ステップS3において、STB11は記録媒体選択を行う。記録媒体選択により、コンテンツの記録先となる記録媒体が選択される。記録媒体の選択は、ステップS2において選択されたデバイスが有する記録媒体を対象として行われる。記録媒体選択の詳細については、図16のフローチャートを参照して後述する。
ステップS4において、STB11はコンテンツのアップロードを行う。コンテンツのアップロードの詳細については、図26のフローチャートを参照して後述する。対象となるコンテンツのアップロードが完了した場合、図5の処理は終了となる。
・デバイス選択
図6のフローチャートを参照して、図5のステップS2において行われるデバイス選択について説明する。
ステップS11において、STB11は、M-Searchを行い、対応デバイスの一覧を取得する。M-Searchは、UPnP(Universal Plug and Play)を用いたデバイス検出のメソッドである。
M-Searchは、クライアント機器が、自身と同一のネットワーク内に存在する各デバイスに対して、M-SearchのメッセージであるM-Searchリクエストをマルチキャストすることによって行われる。M-Searchリクエストを受信したデバイスからは、そのデバイスのURLを含むM-Searchレスポンスが送信されてくる。
ステップS12において、STB11は、M-Searchにより取得されたURLに基づいて、それぞれの対応デバイスからDevice descriptionを取得する。Device descriptionには、デバイス名であるfriendly nameなどの、各対応デバイスに関する情報が含まれる。
ステップS13において、STB11は、Device descriptionに含まれるfriendly nameをユーザに提示する。ユーザは、例えばTVに表示されたfriendly nameを見て、コンテンツのアップロード先とするデバイスを選択することになる。
アップロード先とするデバイスが選択された場合、図5のステップS2に戻り、それ以降の処理が行われる。
図7は、ステップS11において行われるM-Searchの例を示す図である。
矢印A11で示すように、STB11から各デバイスに対してM-Searchリクエストが送信される。M-Searchリクエストを受信した、UPnPに対応したデバイスである対応デバイスからは、矢印A12で示すようにM-Searchレスポンスが送信される。
STB11は、M-Searchレスポンスを受信し、対応デバイスの一覧を取得する。図7の例においては、枠F1,F2で囲んで示すように、レコーダ12が対応デバイス1とされ、デバイスD2が対応デバイス2とされている。
図8は、M-Searchリクエストの例を示す図である。
デバイスの探索要求であるM-Searchリクエストには、3行目に示すように、M-Searchリクエストの発行元であるSTB11のIPアドレスが含まれる。また、5行目に示すように、MediaServerの機能をSTB11が有していることを表す情報が含まれる。
図8の各行の左端に示す数字は、説明の便宜上付している数字であり、M-Searchリクエストを構成する記述ではない。図9以降の各情報の記述においても同様である。各デバイス間で送受信される情報を構成する記述のうち、主な記述について説明する。
図9は、M-Searchレスポンスに基づいて取得されるデバイス一覧の例を示す図である。
1行目乃至10行目の記述が、対応デバイス1であるレコーダ12から送信されてきたM-Searchレスポンスに基づいて得られる記述である。4行目の「LOCATION: http://169.254.226.30:64220/description.xml」が、対応デバイス1のURLを表す。
11行目乃至20行目の記述が、対応デバイス2であるデバイスD2から送信されてきたM-Searchレスポンスに基づいて得られる記述である。14行目の「LOCATION: http://169.254.226.31:64220/description.xml」が、対応デバイス2のURLを表す。
図10は、ステップS12において行われるDevice descriptionの取得の例を示す図である。
矢印A21で示すように、対応デバイス1であるレコーダ12に対して、Device descriptionの要求であるHTTP GETがSTB11から送信される。レコーダ12を送信先とするHTTP GETには、M-Searchレスポンスに含まれていたレコーダ12のURLが含まれる。HTTP GETを受信したレコーダ12からは、矢印A22で示すようにDevice descriptionが送信される。
対応デバイス2であるデバイスD2に対しても、同様にしてHTTP GETがSTB11から送信され、HTTP GETを受信したデバイスD2から送信されるDevice descriptionが取得される。
図11および図12は、Device descriptionの例を示す図である。
図11および図12のDevice descriptionは、例えばレコーダ12から取得されたDevice descriptionである。
図11の4行目乃至6行目の記述が、デバイスが対応しているUPnPのバージョンを表し、8行目の記述が、当該デバイスのUPnP Deviceとしての能力を表す。9行目乃至16行目の記述が、当該デバイスのHDRL/SPRL/JLABとしての能力を表し、17行目乃至30行目の記述が、ユーザに示す際に用いられる当該デバイスの説明を表す。
例えば、17行目の「<friendlyName>BDZ</friendlyName>」は、レコーダ12のfriendly nameが「BDZ」であることを表す。当該デバイスの説明として、例えば、製造メーカー(manufacturer)、製造メーカーのURL(manufacturerURL)、モデル名(modelDescription)などの各種の情報が記述される。
図12の1行目乃至16行目の記述が、当該デバイスの説明がサポートするUPnPの機能を表す。例えば、2行目乃至8行目の記述は、レコーダ12がContentDirectoryの機能に対応していることを表す。また、9行目乃至15行目の記述は、レコーダ12がCMS(Connection Manager Service)の機能に対応していることを表す。
図13は、対応デバイスがサポートするビデオの一覧の取得の例を示す図である。
対応デバイスがサポートするビデオの一覧の取得は、例えば、Device descriptionが取得された後であって、friendly nameのユーザへの提示の前に適宜行われる。
矢印A31で示すように、対応デバイス1であるレコーダ12に対して、サポートするビデオの一覧を要求するHTTPリクエストがSTB11から送信される。STB11からの要求を受信したレコーダ12からは、矢印A32で示すように、レコーダ12がサポートするビデオの一覧を表す情報を含むHTTPレスポンスが送信される。
図14は、サポートするビデオの一覧を要求するHTTPリクエストの例を示す図である。
1行目の「POST /CMS HTTP/1.1」は、レコーダ12がCMSに対応していることについての記述がDevice descriptionに含まれ(図12)、URLが指定されていたことに基づいて設定される。2行目の「HOST: 169.254.226.30:64220」は、対応デバイス1のURLを表す。
図15は、サポートするビデオの一覧を表す情報を含むHTTPレスポンスの例を示す図である。
6行目の「MPEG_TS_JP_T」は、MPEG-2 TSによる2K(HD)解像度までのコンテンツの処理をレコーダ12がサポートしていることを表す。
アップロード先とするデバイスの選択は以上のようにして行われる。
・記録媒体の選択
次に、図16のフローチャートを参照して、図5のステップS3において行われる記録媒体選択について説明する。
ステップS21において、STB11は、GetRecordDestinationsを行い、ステップS1のデバイス選択により選択された対応デバイスである例えばレコーダ12から、RecordDestinationを取得する。RecordDestinationには、デバイスが有する記録媒体に関する情報が含まれる。
ステップS22において、STB11は、GetRecordDestinationsにより取得されたRecord Destinationに基づいて、friendlyNamedestIDをユーザに提示する。ユーザは、例えばTVに表示されたfriendlyNamedestIDを見て、コンテンツの記録先とする記録媒体を選択することになる。
記録媒体が選択された場合、ステップS23において、STB11は、GetRecordContainerIDを行い、ContainerIDをレコーダ12から取得する。ContainerIDは、ユーザにより選択された記録媒体のIDである。ContainerIDが取得された後、図5のステップS3に戻り、それ以降の処理が行われる。
図17は、ステップS21において行われるGetRecordDestinationsの例を示す図である。
矢印A41で示すように、STB11からレコーダ12に対してGetRecordDestinationsアクションが送信される。GetRecordDestinationsアクションを受信したレコーダ12からは、矢印A42で示すようにGetRecordDestinationsレスポンスが送信される。レコーダ12が送信するGetRecordDestinationsレスポンスには、枠F11で囲んで示すように、光ディスク21に関する情報とHDD22に関する情報を含むRecordDestinationが含まれる。
図18は、GetRecordDestinationsアクションの例を示す図である。
1行目の「POST /upnp/control/ContentDirectory HTTP/1.1」は、対応デバイス1がContentDirectoryをサポートしていることに基づいて記述される(図12)。2行目の「Host: 169.254.226.30:64220」は、対応デバイス1のURLを表す。12行目乃至14行目の記述は、対応デバイス1がサポートする記録媒体の一覧を要求することを表す。
図19は、GetRecordDestinationsレスポンスの例を示す図である。
9行目の「RecordDestination destID="bd1.cache」と10行目の「RecordDestination destID="hdd1」は、対応デバイス1であるレコーダ12が、記録媒体として「bd1.cache」と「hdd1」をサポートしていることを表す。「bd1.cache」のfriendly nameは「ISIS BD」であり、「hdd1」のfriendly nameは「ISIS hdd」である。
GetRecordDestinationsレスポンスによりRecordDestinationが取得された後、それぞれ記録媒体の詳細がGetRecordDestinationInfoにより取得される。GetRecordDestinationInfoは、例えば、friendlyNamedestIDのユーザへの提示の前に適宜行われる。
図20は、GetRecordDestinationInfoの例を示す図である。
矢印A51で示すように、STB11からレコーダ12に対してGetRecordDestinationInfoアクションが送信される。GetRecordDestinationInfoアクションを受信したレコーダ12からは、矢印A52で示すようにGetRecordDestinationInfoレスポンスが送信される。レコーダ12が送信するGetRecordDestinationInfoレスポンスには、例えば、光ディスク21に関する詳細情報を含むRecordDestinationInfoが含まれる。
図21は、GetRecordDestinationInfoアクションの例を示す図である。
2行目の「Host: 169.254.226.30:64220」は対応デバイス1のURLを表す。12行目の「RecordDestinationID>bd1.cache</RecordDestinationID>」は、bd1.cacheの詳細をリクエストしていることを表す。
図22は、GetRecordDestinationInfoレスポンスの例を示す図である。
10行目の「BD」は、記録媒体としての「bd1.cache」にBDが装填されていることを表す。
同様の処理がHDD22を対象として行われ、HDD22に関する詳細情報を含むRecordDestinationInfoが取得される。コンテンツの記録先としてHDD22が選択されたものとして説明する。
図23は、ステップS23において行われるGetRecordContainerIDの例を示す図である。
矢印A61で示すように、STB11からレコーダ12に対してGetRecordContainerIDアクションが送信される。GetRecordContainerIDアクションを受信したレコーダ12からは、矢印A62で示すようにGetContainerIDレスポンスが送信される。レコーダ12が送信するGetContainerIDレスポンスには、枠F21で囲んで示すように、記録先としてユーザにより選択されたHDD22のContainerIDが含まれる。GetContainerIDは、記録先の指定の仕方を決定するための処理となる。
図24は、GetRecordContainerIDアクションの例を示す図である。
2行目の「Host: 169.254.226.30:64220」は、対応デバイス1のURLを表す。12行目の「<RecordDestinationID>hdd1</RecordDestinationID>」は、記録媒体としてHDD22を指定していることを表す。23行目乃至25行目の記述は、アップロードするファイルのフォーマット、ファイルサイズなどを表す。
図25は、GetRecordContainerIDレスポンスの例を示す図である。
5行目の「<ContainerID>VIDEO</ContainerID>」は、ContainerIDが「VIDEO」であることを表す。
記録媒体の選択は以上ようにして行われる。
・コンテンツのアップロード
次に、図26のフローチャートを参照して、図5のステップS4において行われるコンテンツのアップロードについて説明する。
ステップS31において、STB11は、ContainerIDを引数として指定したCreateObjectを行い、ステップS3において選択された記録媒体からimportURIを取得する。importURIは、HTTP Postによるコンテンツのpost先を表す。
ステップS32において、STB11は、importURIを引数として指定したHTTP Postによって、コンテンツをアップロードする。
ステップS33において、STB11は、コンテンツのアップロードが終了したか否かを判定する。
STB11は、コンテンツのアップロードが終了していないとステップS33において判定した場合、ステップS32に戻り、コンテンツのアップロードを繰り返す。
コンテンツのアップロードが終了したとステップS33において判定した場合、ステップS34において、STB11は、importURIを引数として指定したHTTP Postによって、chunkSize=0であることをデバイスに通知する。chunkSize=0は、コンテンツの全てのデータのアップロードが終了したことを表す。
コンテンツのアップロードが終了した場合、図5のステップS4に戻り、一連の処理の終了となる。
図27は、ステップS31において行われるCreateObjectの例を示す図である。
矢印A71で示すように、STB11からレコーダ12に対してCreateObjectアクションが送信される。CreateObjectアクションを受信したレコーダ12からは、矢印A72で示すようにimportURIを含むレスポンスが送信される。CreateObjectは、HTTP Postによりコンテンツをアップロードする場合のpost先(アップロード先)の指定の仕方を決定するための処理となる。
図28および図29は、CreateObjectアクションの例を示す図である。
図28および図29に示すような記述を含むCreateObjectアクションが、STB11からレコーダ12に対して送信される。
図28の4行目の「Host: 169.254.226.30:64220」は、アップロード先のデバイスであるレコーダ12のURLを表す。15行目の「<ContainerID>DLNA.ORG_AnyContainer</ContainerID>」は、ContainerID、すなわち、記録先の指定を表す。ContainerIDが「AnyContainer」であることは、記録先をデバイスに一任することを表す。
図29の11行目乃至20行目の記述が、アップロードの対象となるコンテンツに関する情報となる。
11行目の「<dc:title>................................................ #1... ...</dc:title>」は、コンテンツのタイトル名を表す。
12行目の「<arib:objectType>SPTV_CS</arib:objectType>」は、コンテンツのタイプを表す。
13行目の「<upnp:class>object.item.videoItem</upnp:class>」は、コンテンツのUPnP上での区分けを表す。
14行目の「<upnp:genre>...............</upnp:genre>」は、スポーツなどの、コンテンツのジャンルを表す。
15行目の「<upnp:channelName>.....................X(AT-X)</upnp:channelName>」は、コンテンツの放送が行われるチャンネルのチャンネル名を表す。
16行目の「<upnp:channelNr>729</upnp:channelNr>」は、コンテンツの放送が行われるチャンネルのチャンネル番号を表す。
17行目の「<dc:date>2009-10-20T13:59:21</dc:date>」は、コンテンツの放送が行われる日時を表す。
19行目および20行目の記述は、コンテンツの詳細を表す。
図30は、importURIを含むレスポンスの例を示す図である。
11行目乃至20行目の記述が、記録の仕方に関するレコーダ12からSTB11に対する通知となる。19行目の「“http://192.168.16.210:60151/UpObjID=UL_1”」は、記録場所としてのimportURIを表す。
CreateObjectアクションを受信したレコーダ12からは、このような記述を含むレスポンスが送信される。
このような各種のやりとりがSTB11とレコーダ12の間で行われた後、HTTP Postにより、コンテンツの実データであるAVデータのアップロードが開始される。
すなわち、コンテンツのアップロードを開始する前、STB11は、アップロードするコンテンツに関する情報であるプロパティ情報を、CreateObjectを行うことによってレコーダ12に通知する必要がある。図29を参照して説明したように、STB11が送信するCreateObjectアクションには、コンテンツのタイトル名、コンテンツのタイプなどの、アップロードするコンテンツに関する情報であるプロパティ情報が引数として含まれる。
また、STB11は、CreateObjectを行うためには、コンテンツとともに伝送されてきた各種の情報から、プロパティ情報として用いる情報を抽出し、CreateObjectアクションに含める情報として管理しておく必要がある。
<MMT放送を用いたネットワークシステム>
図31は、本技術の一実施形態に係るネットワークシステムの構成例を示す図である。
図31のネットワークシステムは、図4のネットワークシステムと同様に例えば家庭内に構築される。図31のネットワークシステムは、情報処理装置としてのSTB101と、外部の装置としてのレコーダ102がネットワークを介して接続されることによって構成される。
図31のネットワークシステムにも、上述したように、ネットワークにおける通信を制御するルータ、コンテンツのアップロード先のデバイスとなることが可能な他の外部の装置が設けられる。重複する説明については適宜省略する。
図31のネットワークシステムにおいて処理の対象となるコンテンツは、MMT放送によって放送された例えば4K/8Kコンテンツである。MMT放送は、コンテンツの伝送方式としてMMT(MPEG Media Transport)を用いた放送である。
MMTを用いてインターネットを介してサーバ111から送信されてきた4K/8Kコンテンツが図31のネットワークシステムにおいて処理されるようにしてもよい。
すなわち、MMTを用いて伝送されるコンテンツであれば、伝送路はどのようなものであってもよい。例えば、地上波、放送波、ケーブルテレビ網、通信網を伝送路として伝送されてきたMMTのコンテンツの処理が、図31のネットワークシステムにおいて行われる。
以下、主に、MMT放送によって伝送されたコンテンツの処理について説明するが、他の伝送路を介して伝送されてきたコンテンツの処理も同様にして行われる。
STB101は、MMT放送によって放送された4K/8Kコンテンツを受信する。STB101と、ネットワーク上の外部の装置との間では、上述したような各種のやりとりが所定のプロトコルに従って行われる。
各種のやりとりがSTB101と外部の装置との間で行われた後、Use case-1のネットワーク越しのムーブ(図1)、Use case-2のコンテンツの退避(図2)、および、Use case-3のストリーミング視聴(図3)が4K/8Kコンテンツを対象として行われる。
Use case-1のネットワーク越しのムーブは、例えば、STB101と、外部の装置としてのレコーダ102との間で行われる。STB101は、放送された4K/8Kコンテンツを受信し、ネットワークを介してレコーダ102にアップロードして、レコーダ102内蔵のHDDに記録させる。
Use case-2のコンテンツの退避は、例えば、外付けのHDDを有するSTB101と、外部の装置としてのレコーダ102との間で行われる。STB101は、外付けのHDDに一度記録させた4K/8Kコンテンツを、ネットワークを介してレコーダ102にアップロードし、レコーダ102に装填された光ディスクに記録させる。
Use case-3のストリーミング視聴は、例えば、外付けのHDDを有するSTB101と、外部の装置としての図示せぬ携帯端末との間で行われる。STB101は、外付けのHDDに一度記録させた4K/8Kコンテンツを、ネットワークを介して携帯端末にアップロードし、ストリーミングによって携帯端末上で視聴可能とする。
Use case-1,Use case-2,Use case-3のいずれの場合においても、4K/8Kコンテンツのアップロードを開始する前、STB101は、アップロードするコンテンツのプロパティ情報を、CreateObjectを行うことによって外部の装置に通知する必要がある。
また、STB101は、CreateObjectを行うためには、4K/8Kコンテンツとともに伝送された各種の情報から、プロパティ情報として用いる情報を抽出し、CreateObjectアクションに含める必要がある。
STB101は、プロパティ情報として用いる情報を、MMT放送によって伝送される制御情報から抽出し、CreateObjectを行う機能を有する。
図32は、MMT放送の制御情報であるMMT-SIの構造を示す図である。
MMTのパッケージの構成や放送サービスに関連する情報を示すMMT-SIは、図32に示すように、テーブルや記述子を格納するメッセージ、特定の情報を示す要素や属性を持つテーブル、および、詳細な情報を示す記述子の3階層の情報から構成される。
メッセージは、MMTPペイロードに格納され、MMTPパケットを用いて伝送される。メッセージがMMTPペイロードを構成する際のpayload_typeの値は0x02である。1つのメッセージが1つのMMTPペイロードに格納される。
STB101は、このようなMMT-SIを構成するメッセージ(制御メッセージ)、テーブル、および記述子のうちの少なくともいずれかの記述を参照し、プロパティ情報として用いる情報を抽出する。
また、STB101は、プロパティ情報の種類に応じて、適宜、TLV(Type Length Value)パケットのデータを参照し、プロパティ情報として用いる情報を抽出する。TLVパケットは、MMTPパケットの伝送に用いられるパケットである。
<プロパティ情報の例>
図33乃至図37は、プロパティ情報の例を示す図である。
例えば、図33乃至図37に示す25種類のプロパティ情報が、STB101においてMMT放送波(MMT放送の信号)から抽出され、CreateObjectに用いられる。
図33乃至図37において、左端の数字はプロパティ情報の番号を表す。説明の便宜上、適宜、各プロパティ情報を、割り当てられた番号を用いて説明する。例えば、「プロパティ情報P1」は、「1」の番号が割り当てられたプロパティ情報を表す。他の番号が割り当てられたプロパティ情報も同様である。
図33乃至図37においては、各番号が割り当てられたプロパティ情報毎に、プロパティ名、意味、MMT放送波の参照元が示されている。MMT放送波の参照元は、プロパティ情報として抽出するための参照元を表す。
・プロパティ情報P1
プロパティ情報P1は、プロパティ名を「arib:objectType」とするプロパティ情報である。
プロパティ情報P1は、objectの発祥を表す。プロパティ情報P1の参照元は、MMT-SIのテーブルであるMH-EITのoriginal_network_idとなる。
・プロパティ情報P2
プロパティ情報P2は、プロパティ名を「dc:title」とするプロパティ情報である。
プロパティ情報P2は、イベント名(番組名)を表す。プロパティ情報P2の参照元は、MH-EITのMH-短形式イベント記述子のevent_name_charとなる。
・プロパティ情報P3
プロパティ情報P3は、プロパティ名を「upnp:genre」とするプロパティ情報である。
プロパティ情報P3は、番組ジャンルを表す。プロパティ情報P3の参照元は、MH-EITのMH-コンテンツ記述子のcontent_nibble_level1、content_nibble_level2、およびuser_nibbleとなる。content_nibble_level1、content_nibble_level2、およびuser_nibbleの組み合わせにより番組ジャンルが表される。
・プロパティ情報P4
プロパティ情報P4は、プロパティ名を「upnp:chunnelName」とするプロパティ情報である。
プロパティ情報P4は、チャンネル名を表す。プロパティ情報P4の参照元は、MH-SDTのMH-サービス記述子の第2ループのchar(編成チャンネル名)となる。
・プロパティ情報P5
プロパティ情報P5は、プロパティ名を「upnp:chunnelNr」とするプロパティ情報である。
プロパティ情報P5は、チャンネル番号を表す。プロパティ情報P5の参照元は、TLV-NITのservice_idまたはMPTのMMT_package_idとなる。
・プロパティ情報P6
図34のプロパティ情報P6は、プロパティ名を「upnp:scheduledStartTime」とするプロパティ情報である。
プロパティ情報P6は、番組開始時刻を表す。プロパティ情報P6の参照元は、MH-EITのstart_timeとなる。
・プロパティ情報P7
プロパティ情報P7は、プロパティ名を「upnp:scheduledEndTime」とするプロパティ情報である。
プロパティ情報P7は、番組終了時刻を表す。プロパティ情報P7の参照元は、MH-EITのstart_timeとdurationとなる。MH-EITのstart_timeとdurationに基づく番組終了時刻の求め方については後述する。
・プロパティ情報P8
プロパティ情報P8は、プロパティ名を「dc:description」とするプロパティ情報である。
プロパティ情報P8は、番組詳細情報を表す。プロパティ情報P8の参照元は、MH-EITのMH-短形式イベント記述子内の番組詳細であるtext_charとなる。
・プロパティ情報P9
プロパティ情報P9は、プロパティ名を「arib:longDescription」とするプロパティ情報である。
プロパティ情報P9は、番組詳細情報を表す。プロパティ情報P9の参照元は、MH-EITのMH-拡張イベント記述子内のitemとそのテキストとなる。
・プロパティ情報P10
プロパティ情報P10は、プロパティ名を「res@resolution」とするプロパティ情報である。
プロパティ情報P10は、番組のビデオの解像度を表す。プロパティ情報P10の参照元は、MPTまたはMH-EITの映像コンポーネント記述子内のvideo_resolutionとなる。
・プロパティ情報P11
図35のプロパティ情報P11は、プロパティ名を「upnp:rating」とするプロパティ情報である。
プロパティ情報P11は、最低視聴可能年齢を表す。プロパティ情報P11の参照元は、MPTまたはMH-EITのMH-パレンタルレート記述子のratingとなる。
・プロパティ情報P12
プロパティ情報P12は、プロパティ名を「arib:videoComponentType」とするプロパティ情報である。
プロパティ情報P12は、ビデオの種別を表す。プロパティ情報P12の参照元は、MH-EITまたはMPTのMH-映像コンポーネント記述子のvideo_resolution,video_aspect_ratio,video_scan_flag、およびvideo_frame_rateから導き出されたcomponent_typeとなる。
・プロパティ情報P13
プロパティ情報P13は、プロパティ名を「arib:audioComponentType」とするプロパティ情報である。
プロパティ情報P13は、オーディオの種別を表す。プロパティ情報P13の参照元は、MH-EITまたはMPTのMH-音声コンポーネント記述子のcomponent_typeとなる。
・プロパティ情報P14
プロパティ情報P14は、プロパティ名を「arib:audioComponentType@qualityIndicator」とするプロパティ情報である。
プロパティ情報P14は、オーディオの音質モードを表す。プロパティ情報P14の参照元は、MH-EITまたはMPTのMH-音声コンポーネント記述子のquality_indicatorとなる。
・プロパティ情報P15
プロパティ情報P15は、プロパティ名を「arib:copyControlInfo」とするプロパティ情報である。
プロパティ情報P15は、番組のコピーコントロール情報を表す。プロパティ情報P15の参照元は、コンテント利用記述子とコンテンツコピー制御記述子となる。コンテント利用記述子のencryption_modeと、コンテンツコピー制御記述子のdigital_recording_control_data、アナログ出力可否、および、Copy_no_moreか否かを示すフラグをカンマで区切った記述が、プロパティ情報P15として用いられる。
・プロパティ情報P16
図36のプロパティ情報P16は、プロパティ名を「arib:dataProgramInfo」とするプロパティ情報である。
プロパティ情報P16は、データ放送が付属しているか否かを表す。プロパティ情報P16の参照元は、MPTのMH-データ符号化記述子またはMH-EITのマルチメディアサービス情報記述子となる。
・プロパティ情報P17
プロパティ情報P17は、プロパティ名を「arib:dataProgramInfo@sync」とするプロパティ情報である。
プロパティ情報P17は、データ放送と連動しているか否かを表す。プロパティ情報P17の参照元は、MH-EITのマルチメディアサービス情報記述子のassociated_contents_flagとなる。
・プロパティ情報P18
プロパティ情報P18は、プロパティ名を「arib:captionInfo」とするプロパティ情報である。
プロパティ情報P18は、字幕キャプションの運用を表す。プロパティ情報P18の参照元は、MPTのMH-データ符号化方式記述子のdata_component_idと、MH-EITのマルチメディアサービス情報記述子のdata_component_idとなる。
MPTのMH-データ符号化方式記述子のdata_component_idの値が0x20である場合、または、MH-EITのマルチメディアサービス情報記述子のdata_component_idの値が0x20である場合、1の値がプロパティ情報P18として設定される。それ以外の場合、0の値がプロパティ情報P18として設定される。
・プロパティ情報P19
プロパティ情報P19は、プロパティ名を「arib:multiESInfo」とするプロパティ情報である。
プロパティ情報P19は、ビデオあるいはオーディオが複数あるか否かを表す。プロパティ情報P19の参照元は、MH-EITの映像コンポーネント記述子と音声コンポーネント記述子となる。
MH-EITの映像コンポーネント記述子と音声コンポーネント記述子が複数ある場合、1の値がプロパティ情報P19として設定される。それ以外の場合、0の値がプロパティ情報P19として設定される。
・プロパティ情報P20
プロパティ情報P20は、プロパティ名を「sptv:caProgramInfo」とするプロパティ情報である。
プロパティ情報P20は、番組がスクランブルされているか否かを表す。プロパティ情報P20の参照元は、MH-EITのfree_CA_modeとなる。
・プロパティ情報P21
図37のプロパティ情報P21は、プロパティ名を「sptv:closedcaptionInfo」とするプロパティ情報である。
プロパティ情報P21は、字幕のあり/なしを表す。字幕ありの場合、1の値がプロパティ情報P21として設定される。プロパティ情報P21の参照元は、MH-EITのマルチメディアサービス情報記述子のdata_component_id、または、MPTのMH-データ符号化記述子のdata_component_idとなる。data_component_idの値が0x20である場合、字幕があることを表す。
・プロパティ情報P22
プロパティ情報P22は、プロパティ名を「sptv:nextTitle」とするプロパティ情報である。
プロパティ情報P22は、次の番組であるFollowing eventのイベント名を表す。プロパティ情報P22の参照元は、MH-EITのsection_numberと、MH-EITの中の短形式イベント記述子のevent_name_charとなる。MH-EITのsection_numberが1である場合、followingと判断され、当該MH-EITの中の短形式イベント記述子のevent_name_charがプロパティ情報P22として設定される。
・プロパティ情報P23
プロパティ情報P23は、プロパティ名を「sptv:nextScheduledStartTime」とするプロパティ情報である。
プロパティ情報P23は、Following eventの開始時刻を表す。プロパティ情報P23の参照元は、MH-EITのsection_number,start_timeとなる。MH-EITのsection_numberが1である場合、start_timeがプロパティ情報P23として設定される。
・プロパティ情報P24
プロパティ情報P24は、プロパティ名を「sptv:nextScheduledEndTime」とするプロパティ情報である。
プロパティ情報P24は、Following eventの終了時刻を表す。プロパティ情報P24の参照元は、MH-EITのsection_number,end_timeとなる。MH-EITのsection_numberが1である場合、end_timeがプロパティ情報P24として設定される。
・プロパティ情報P25
プロパティ情報P25は、プロパティ名を「sptv:nextEventDescription」とするプロパティ情報である。
プロパティ情報P25は、Following eventのイベント情報を表す。プロパティ情報P25の参照元は、MH-EITのsection_numberとなる。MH-EITのsection_numberが1である場合、短形式イベント記述子のイベント情報であるtext_charがプロパティ情報P25として設定される。
<プロパティ情報の参照の具体例>
各プロパティ情報の参照の具体例について説明する。上述したように、プロパティ情報の参照元としては、MMTPパケットにより伝送されるテーブルであるMH-EIT(MH-Event_Information_Table),MH-SDT(MH-Service Description Table),MPT(MMT Package Table)、TLVのSI(Service Information)であるNITがある。
・MH-EITを参照元とするプロパティ情報
図38は、MMTの伝送データの例を示す図である。
STB101が受信するMMTの伝送データは、MMTPパケットの並びから構成される。MMTPパケットのヘッダには、ペイロードに格納されるデータの種類を表すpacket_idが含まれる。
図38に示すように、Packet_idの値が0x8000である場合、MH-EITがペイロードに格納される。
図39は、MH-EITのシンタクスを示す図である。
主な記述について説明する。後述する他のシンタクスにおいても同様である。
枠で囲んで示すように、MH-EITには、original_network_id,start_time,duration,free_CA_mode,descriptor()が含まれる。descriptor()には各種の記述子が含まれる。
これらの記述のうちのoriginal_network_idは、プロパティ情報P1である「arib:objectType」の参照元である。STB101は、図40の矢印A101に示すように、original_network_idの値を抽出し、CreateObjectのときに用いるプロパティ情報P1としてSTB101内のメモリに記憶する。
start_timeは、プロパティ情報P6である「upnp:scheduledStartTime」の参照元である。STB101は、矢印A102に示すように、start_timeの値を抽出し、CreateObjectのときに用いるプロパティ情報P6としてSTB101内のメモリに記憶する。
start_timeとdurationは、プロパティ情報P7である「upnp:scheduledEndTime」の参照元である。STB101は、矢印A103-1,A103-2に示すように、start_timeとdurationのそれぞれの値を抽出する。STB101は、start_timeにより表される時刻にdurationにより表される期間を加算して求められた時刻を、CreateObjectのときに用いるプロパティ情報P7としてSTB101内のメモリに記憶する。
free_CA_modeは、プロパティ情報P20である「sptv:caProgramInfo」の参照元である。STB101は、矢印A104に示すように、free_CA_modeの値を抽出し、CreateObjectのときに用いるプロパティ情報P20としてSTB101内のメモリに記憶する。
descriptor()は、プロパティ情報P19である「arib:multiESInfo」の参照元である。descriptor()に、コンポーネント記述子か音声コンポーネント記述子が複数ある場合、STB101は、矢印A105に示すように、プロパティ情報P19である「arib:multiESInfo」の値として1を設定する。STB101は、1の値が設定されたプロパティ情報P19を、CreateObjectのときに用いる情報としてSTB101内のメモリに記憶する。なお、MPTの記述を参照してプロパティ情報P19の値を設定することも可能とされる。
MH-EITのsection_number(図39)の値が1である場合、start_timeは、プロパティ情報P23である「sptv:nextScheduledStartTime」の参照元である。STB101は、矢印A106に示すように、start_timeの値を抽出し、CreateObjectのときに用いるプロパティ情報P23としてSTB101内のメモリに記憶する。
また、MH-EITのsection_numberの値が1である場合、start_timeとdurationは、プロパティ情報P24である「sptv:nextScheduledEndTime」の参照元である。STB101は、矢印A107-1,A107-2に示すように、start_timeとdurationのそれぞれの値を抽出する。STB101は、start_timeにより表される時刻にdurationにより表される期間を加算して求められた時刻を、CreateObjectのときに用いるプロパティ情報P24としてSTB101内のメモリに記憶する。
図41は、MH-Short_Event_Descriptor()のシンタクスを示す図である。
MH-Short_Event_Descriptor()は、MH-EITのdescriptor()に記述される。
枠で囲んで示すように、MH-Short_Event_Descriptor()には、event_name_charとtext_charが含まれる。
これらの記述のうちのevent_name_charは、プロパティ情報P2である「dc:title」の参照元である。STB101は、矢印A111に示すように、event_name_charの値を抽出し、CreateObjectのときに用いるプロパティ情報P2としてSTB101内のメモリに記憶する。
text_charは、プロパティ情報P8である「dc:description」の参照元である。STB101は、矢印A112に示すように、text_charの値を抽出し、CreateObjectのときに用いるプロパティ情報P8としてSTB101内のメモリに記憶する。
MH-EITのsection_number(図39)の値が1である場合、event_name_charは、プロパティ情報P22である「sptv:nextTitle」の参照元である。STB101は、矢印113に示すように、event_name_charの値を抽出し、CreateObjectのときに用いるプロパティ情報P22としてSTB101内のメモリに記憶する。
また、MH-EITのsection_numberの値が1である場合、text_charは、プロパティ情報P25である「sptv:nextEventDescription」の参照元である。STB101は、矢印114に示すように、text_charの値を抽出し、CreateObjectのときに用いるプロパティ情報P25としてSTB101内のメモリに記憶する。
図42は、MH-Content_Descriptor()のシンタクスを示す図である。
MH-Content_Descriptor()は、MH-EITのdescriptor()に記述される。
枠で囲んで示すように、MH-Content_Descriptor()には、content_nibble_level_1,content_nibble_level_2,user_nibble(4ビット),user_nibble(16ビット)が含まれる。
これらの記述は、プロパティ情報P3である「upnp:genre」の参照元である。STB101は、矢印A121に示すように、content_nibble_level_1,content_nibble_level_2,user_nibble(4ビット),user_nibble(16ビット)の値をそれぞれ抽出する。STB101は、抽出した4つの値の組み合わせにより表される番組ジャンルの情報を、CreateObjectのときに用いるプロパティ情報P3としてSTB101内のメモリに記憶する。
図43は、MH-Extended_Event_Descriptor()のシンタクスを示す図である。
MH-Extended_Event_Descriptor()は、MH-EITのdescriptor()に記述される。
枠で囲んで示すように、MH-Extended_Event_Descriptor()には、length_of_items,item_description_length,item_description_char,item_length,item_charが含まれる。item_description_lengthによりデータ長が表されるitem_description_charは、番組詳細情報の項目を表す。item_lengthによりデータ長が表されるitem_charは、項目の内容を表す。
これらの記述は、プロパティ情報P9である「arib:longDescription」の参照元である。STB101は、矢印A131に示すように、length_of_items,item_description_length,item_description_char,item_length,item_charの値をそれぞれ抽出し、各itemに基づいて番組詳細情報を生成する。STB101は、生成した番組詳細情報を、CreateObjectのときに用いるプロパティ情報P9としてSTB101内のメモリに記憶する。
図44は、Video_Component_Descriptor()のシンタクスを示す図である。
Video_Component_Descriptor()は、MH-EITのdescriptor()に記述される。また、Video_Component_Descriptor()はMPTにも含まれる。MPTのVideo_Component_Descriptor()を参照することも可能とされる。
枠で囲んで示すように、Video_Component_Descriptor()には、video_resolution,video_aspect_ratio,video_frame_rate,video_transfer_characteristicsが含まれる。
これらの記述のうちのvideo_resolutionは、プロパティ情報P10である「res@resolution」の参照元である。STB101は、矢印A141に示すように、video_resolutionの値を抽出し、CreateObjectのときに用いるプロパティ情報P10としてSTB101内のメモリに記憶する。
video_resolution,video_aspect_ratio,video_frame_rate,video_transfer_characteristicsは、プロパティ情報P12である「arib:videoComponentType」の参照元である。STB101は、矢印A142乃至A145に示すように、video_resolution,video_aspect_ratio,video_frame_rate,video_transfer_characteristicsの値をそれぞれ抽出し、video_resolutionとvideo_aspect_ratioの値の組み合わせに基づいてcomponent_typeを設定する。STB101は、設定したcomponent_typeを、CreateObjectのときに用いるプロパティ情報P12としてSTB101内のメモリに記憶する。
なお、video_resolution,video_aspect_ratio,video_frame_rate,video_transfer_characteristicsの4種類の値の組み合わせに基づいてcomponent_typeが設定されるようにしてもよい。
図45は、Video_Component_Descriptor()に含まれる情報の値の意味を示す図である。
図45のA乃至Dは、それぞれ、video_resolution,video_aspect_ratio,video_frame_rate,video_transfer_characteristicsの値の意味を示している。
図45のAに示すように、例えばvideo_resolutionの値が6であることは、映像信号の垂直解像度が2160(4K)であることを表す。図45のBに示すように、例えばvideo_aspect_ratioの値が3であることは、映像信号アスペクト比が16:9であることを表す。
図45のCに示すように、例えばvideo_frame_rateの値が8であることは、映像フレームレートが60/1.001であることを表す。図45のDに示すように、例えばvideo_transfer_characteristicsの値が3であることは、VUIのtransfer_characteristics=14、すなわちBT.2020であることを表す。
STB101は、このような意味を有するvideo_resolutionの値を用いて、プロパティ情報P10を設定する。また、STB101は、このような意味を有する例えばvideo_resolutionとvideo_aspect_ratioの値を組み合わせて用いることによって、プロパティ情報P12を設定する。
図46は、MH-Parental_Rating_Descriptor()のシンタクスを示す図である。
MH-Parental_Rating_Descriptor()は、MH-EITのdescriptor()に記述される。また、MH-Parental_Rating_Descriptor()は、MPTとMH-SDTにも含まれる。MPTのMH-Parental_Rating_Descriptor()、またはMH-SDTのMH-Parental_Rating_Descriptor()を参照することも可能とされる。
枠を囲んで示すように、MH-Parental_Rating_Descriptor()には、ratingが含まれる。
ratingは、プロパティ情報P11である「upnp:rating」の参照元である。STB101は、矢印A151に示すように、ratingの値を抽出し、CreateObjectのときに用いるプロパティ情報P11としてSTB101内のメモリに記憶する。
図47は、MH-Audio_Component_Descriptor()のシンタクスを示す図である。
MH-Audio_Component_Descriptor()は、MH-EITのdescriptor()に記述される。また、MH-Audio_Component_Descriptor()はMPTにも含まれる。MPTのMH-Audio_Component_Descriptor()を参照することも可能とされる。
枠を囲んで示すように、MH-Audio_Component_Descriptor()には、component_type,quality_indicatorが含まれる。
component_typeは、プロパティ情報P13である「arib:audioComponentType」の参照元である。STB101は、矢印A161に示すように、component_typeの値を抽出し、CreateObjectのときに用いるプロパティ情報P13としてSTB101内のメモリに記憶する。
quality_indicatorは、プロパティ情報P14である「arib:audioComponentType@qualityIndicator」の参照元である。STB101は、矢印A162に示すように、quality_indicatorの値を抽出し、CreateObjectのときに用いるプロパティ情報P14としてSTB101内のメモリに記憶する。
図48は、component_typeの値の意味を示す図である。
component_typeを構成する8ビットのうちのビットb7はダイアログ制御に関する情報であり、ビットb6-b5は障がい者用音声に関する情報である。ビットb4-b0は音声モードに関する情報である。
STB101は、このような意味を有するcomponent_typeの値を用いて、プロパティ情報P13を設定する。
図49は、quality_indicatorの値の意味を示す図である。
例えば、quality_indicatorである音声表示の値が01であることは、音声品質名称がモード1であり、符号化音声品質基準がBSアナログ放送のBモードに相当する音声品質であることを表す。音声表示の値が10であることは、音声品質名称がモード2であり、符号化音声品質基準がモード1以外の音声品質でモード3に分類しないものを表す。音声表示の値が11であることは、音声品質名称がモード3であり、符号化音声品質基準がモード1,2に比べて限定的な音声品質であることを表す。
図50は、Content_Copy_Control_Descriptor()のシンタクスを示す図である。
Content_Copy_Control_Descriptor()は、MH-EITのdescriptor()に記述される。また、Content_Copy_Control_Descriptor()は、MPTとMH-SDTにも含まれる。MPTのContent_Copy_Control_Descriptor()、またはMH-SDTのContent_Copy_Control_Descriptor()を参照することも可能とされる。
枠で囲んで示すように、Content_Copy_Control_Descriptor()にはdigital_recording_control_dataが記述される。digital_recording_control_dataはコピーの可否を表す。
図51は、Content_Usage_Control_Descriptor()のシンタクスを示す図である。
Content_Usage_Control_Descriptor()は、MH-EITのdescriptor()に記述される。また、Content_Usage_Control_Descriptor()は、MPTとMH-SDTにも含まれる。MPTのContent_Usage_Control_Descriptor()、またはMH-SDTのContent_Usage_Control_Descriptor()を参照することも可能とされる。
枠で囲んで示すように、Content_Usage_Control_Descriptor()にはcopy_restriction_mode,encryption_modeが記述される。encryption_modeは、コピーのときに暗号化が必要であるか否かを表す。copy_restriction_modeは、コピーの数の制限を表す。
図52は、プロパティ情報P15の参照の例を示す図である。
STB101は、Content_Copy_Control_Descriptor()とContent_Usage_Control_Descriptor()の2つの記述子を参照元として、プロパティ情報P15である「arib:copyControlInfo」の値を設定する。
具体的には、STB101は、Content_Copy_Control_Descriptor()のdigital_recording_control_dataの値と、Content_Usage_Control_Descriptor()のcopy_restriction_mode,encryption_modeの値を抽出する。
STB101は、矢印A171,A172,A173の先に示すように、Content_Usage_Control_Descriptor()のencryption_modeの値、Content_Copy_Control_Descriptor()のdigital_recording_control_dataの値、APS_control_flagの値、および、Content_Usage_Control_Descriptor()のcopy_restriction_modeの値を、カンマで区切って順に並べることによって、CreateObjectのときに用いるプロパティ情報P15を生成し、STB101内のメモリに記憶する。
なお、アナログ出力可否を表すAPS_control_flagの値としては、MMT放送の規格で定められる値が設定される。例えば、アナログ出力が可である場合、APS_control_flagの値として0が設定され、アナログ出力が不可である場合、APS_control_flagの値として1が設定される。
このように、複数種類の情報を参照元とし、それぞれの参照元の情報を組み合わせて用いることによって、1種類のプロパティ情報を設定することも可能とされる。
図53は、Multimedia_Service_Info_Descriptor()のシンタクスを示す図である。
Multimedia_Service_Info_Descriptor()は、MH-EITのdescriptor()に記述される。
枠を囲んで示すように、Multimedia_Service_Info_Descriptor()には、data_component_id,associated_contents_flagが含まれる。
data_component_idは、プロパティ情報P16である「arib:dataProgramInfo」の参照元である。data_component_idが0x20または0x21の場合、STB101は、矢印A181に示すように、プロパティ情報P16である「arib:dataProgramInfo」の値として1を設定し、それ以外の場合、0を設定する。
また、data_component_idは、プロパティ情報P18である「arib:captionInfo」とプロパティ情報P21である「sptv:closedcaptionInfo」の参照元である。data_component_idが0x20の場合、STB101は、矢印A182に示すように、プロパティ情報P18である「arib:captionInfo」とプロパティ情報P21である「sptv:closedcaptionInfo」の値として1をそれぞれ設定する。
associated_contents_flagは、プロパティ情報P17である「arib:dataProgramInfo@sync」の参照元である。STB101は、図53の矢印A183に示すように、associated_contents_flagの値を抽出し、CreateObjectのときに用いるプロパティ情報P17としてSTB101内のメモリに記憶する。
・MH-SDTを参照元とするプロパティ情報
図54は、MMTの伝送データの例を示す図である。
図54に示すように、Packet_idの値が0x8004である場合、MH-SDTがペイロードに格納される。
図55は、MH-SDTのシンタクスを示す図である。
枠で囲んで示すように、MH-SDTには、descriptor()が含まれる。
図56は、MH-Service Descriptor()のシンタクスを示す図である。
MH-Service Descriptor()は、MH-SDTのdescriptor()に記述される。枠で囲んで示すように、MH-Service Descriptor()には、service_nameとしてのcharが含まれる。charは編成チャンネル名を表す。
charは、プロパティ情報P4である「upnp:chunnelName」の参照元である。STB101は、矢印A191に示すように、charの値を抽出し、CreateObjectのときに用いるプロパティ情報P4としてSTB101内のメモリに記憶する。
・TLVパケットを参照元とするプロパティ情報
図57は、TLVストリームの構成例を示す図である。
TLVストリームは、TLVパケットの並びから構成される。図57の下段に示すように、1つのTLVパケットはTLVヘッダとTLVデータから構成される。TLVデータとしてIPパケットが格納され、IPパケットに、上述したMMTPパケットが格納される。
図58は、TLVパケットのシンタクスを示す図である。
packet_typeは、TLVパケットに格納されるデータの種類を示す。lengthは、TLVパケットのデータの長さを示す。データの種類をpacket_typeにより示し、データの長さをlengthにより示すことで、任意の可変長データをTLVパケットに格納することが可能とされる。
枠で囲んで示すように、TLVパケットにはsignaling_packet()が含まれる。packet_typeの値が0xFEである場合、伝送制御信号であるTLV-SIがsignaling_packet()に記述される。
図59は、TLV-SIの1つであるTLV-NITのシンタクスを示す図である。
枠で囲んで示すように、TLV-NITにはdescriptor()が含まれる。descriptor()には各種の記述子が含まれる。
図60は、Service_List_Descriptor()のシンタクスを示す図である。
Service_List_Descriptor()は、TLV-NITのdescriptor()に記述される。Service_List_Descriptor()は、サービス識別とサービス形式種別によるサービスの一覧を提供する記述子である。
枠で囲んで示すように、Service_List_Descriptor()には、service_idが含まれる。
service_idは、プロパティ情報P5である「upnp:chunnelNr」の参照元である。STB101は、矢印A201に示すように、service_idの値を抽出し、CreateObjectのときに用いるプロパティ情報P5としてSTB101内のメモリに記憶する。
・メッセージを参照元とするプロパティ情報
図61は、MMTの伝送データの例を示す図である。
図61に示すように、Packet_idの値が0x0000である場合、PLTを格納したM2セクションメッセージがペイロードに格納される。
MMTの制御メッセージには、M2セクションメッセージの他に、例えば、Package Access(PA)メッセージ、CAメッセージ、M2短セクションメッセージ、データ伝送メッセージがある。例えばPAメッセージは、MMT-SIのエントリーポイントとなり、MMT-SIの各種のテーブルを伝送するために用いられる。
図62は、M2セクションメッセージに含まれるPLTのシンタクスを示す図である。
図62に示すように、PLTにはMMT_general_location_info()が含まれる。MMT_general_location_info()には、矢印の先に示すようにlocation_type,packet_idなどが含まれる。packet_idにより、MPTのPIDが指定される。MPTは、アセットのリストやアセットのネットワーク上の位置などの、パッケージを構成する情報を与えるテーブルである。
図63は、MPTのシンタクスを示す図である。
枠で囲んで示すように、MPTには、MPT_descriptors_byteが含まれる。
MPT_descriptors_byteは、プロパティ情報P4である「upnp:chunnelName」の参照元である。STB101は、矢印A211に示すように、MPT_descriptors_byteの値を抽出し、CreateObjectのときに用いるプロパティ情報P4としてSTB101内のメモリに記憶する。
図64は、MH-Data_Component_Descriptor()のシンタクスを示す図である。
MH-Data_Component_Descriptor()はMPTに含まれる記述子である。MPTにもdescriptor()が含まれる。
枠を囲んで示すように、MH-Data_Component_Descriptor()には、data_component_idが含まれる。
data_component_idは、プロパティ情報P16である「arib:dataProgramInfo」の参照元である。data_component_idが0x20または0x21の場合、STB101は、矢印A221に示すように、プロパティ情報P16である「arib:dataProgramInfo」の値として1を設定し、それ以外の場合、0を設定する。
また、data_component_idは、プロパティ情報P18である「arib:captionInfo」とプロパティ情報P21である「sptv:closedcaptionInfo」の参照元である。data_component_idが0x20の場合、STB101は、矢印A182に示すように、プロパティ情報P18である「arib:captionInfo」とプロパティ情報P21である「sptv:closedcaptionInfo」の値として1をそれぞれ設定する。
<STBの構成と動作>
・STBの構成
図65は、STB101のハードウェア構成例を示すブロック図である。
STB101は、コントローラ151、入力検出部152、受信部153、MMT信号処理部154、出力制御部155、および通信部156から構成される。
コントローラ151は、CPU、ROM、RAM、メモリなどにより構成される。コントローラ151は、所定のプログラムをCPUにより実行し、例えば入力検出部152から供給される信号により表されるユーザの操作に応じて、STB101の全体の動作を制御する。
入力検出部152は、リモートコントローラなどを用いて行われるユーザの操作を検出し、ユーザの操作の内容を表す信号をコントローラ151に出力する。例えば、アップロードの対象となるコンテンツの選択、アップロード先となるデバイスの選択、記録媒体の選択などが、ユーザにより行われる。
受信部153は、図示せぬアンテナからの放送波信号を受信し、復調処理、誤り訂正処理などの各種の処理を施す。受信部153は、各種の処理を施すことによって得られたTVLストリームをMMTのコンテンツとしてMMT信号処理部154に出力する。
また、受信部153は、コンテンツの伝送が通信の伝送路を介して行われる場合、通信部156を制御してMMTのコンテンツを受信し、所定の処理を施すことによって得られたTVLストリームをMMT信号処理部154に出力する。このように、受信部153は、MMTを用いて伝送されてきた4K/8Kコンテンツを取得する取得部として機能する。
MMT信号処理部154は、受信部153から供給されたTLVストリームに対して所定の処理を施し、MMTによって伝送された4K/8Kコンテンツを取得する。
例えば、MMT信号処理部154は、4K/8Kコンテンツを再生する場合、TLVストリームからビデオデータとオーディオデータを抽出し、デコードする。MMT信号処理部154は、デコードして得られたコンテンツの映像と音声のデータを出力制御部155に出力する。
また、MMT信号処理部154は、4K/8Kコンテンツをレコーダ102などの外部の装置にネットワークを介してアップロードする場合、4K/8Kコンテンツのデータを通信部156に出力する。
MMT信号処理部154は、MMTPパケットを用いて伝送されるメッセージ、テーブル、記述子などの各種の制御情報をTLVストリームから取得し、コントローラ151に出力する。
出力制御部155は、MMT信号処理部154から供給された映像と音声のデータを、STB101に接続されたTVに供給し、ディスプレイとスピーカからそれぞれ出力させる。
通信部156は、家庭内などに構築されたネットワークを介して、レコーダ102などの外部の装置と通信を行う。例えば、通信部156は、CreateObjectが終了した場合、外部の装置に対する4K/8Kコンテンツのアップロードを開始する。
図66は、コントローラ151の機能構成例を示すブロック図である。
図66に示す機能部のうちの少なくとも一部は、コントローラ151のCPUにより所定のプログラムが実行されることによって実現される。
コントローラ151においては、プロパティ情報抽出部161、プロパティ情報管理部162、デバイス選択制御部163、記録媒体選択制御部164、およびアップロード制御部165が実現される。アップロード制御部165には、CreateObject実行部171が含まれる。
プロパティ情報抽出部161は、MMT信号処理部154から供給された制御情報に含まれる情報のうち、上述した各参照元に記述される情報をCreateObjectに用いるプロパティ情報として抽出する。プロパティ情報抽出部161は、抽出したプロパティ情報をプロパティ情報管理部162に出力する。
プロパティ情報管理部162は、プロパティ情報抽出部161から供給されたプロパティ情報をメモリなどに記憶させて管理する。プロパティ情報管理部162は、CreateObjectの実行時、メモリに記憶させて管理しておいたプロパティ情報をアップロード制御部165に出力する。
デバイス選択制御部163は、通信部156を制御することによって、M-Searchなどを含むデバイスの選択処理(図6)を行い、アップロード先となるデバイスを選択する。選択されたデバイスに関する情報は記録媒体選択制御部164とアップロード制御部165に供給される。
記録媒体選択制御部164は、通信部156を制御することによって、GetRecordDestinations、GetRecordContainerIDなどを含む記録媒体の選択処理(図16)を行い、4K/8Kコンテンツの記録先となる記録媒体を選択する。選択された記録媒体に関する情報はアップロード制御部165に供給される。
アップロード制御部165は、通信部156を制御することによって、コンテンツのアップロード処理(図26)を行う。
CreateObject実行部171は、MMTの伝送データから抽出され、プロパティ情報管理部162により管理されているプロパティ情報を用いて、アップロード先のデバイスに対してCreateObjectを行う。すなわち、CreateObject実行部171は、プロパティ情報管理部162により管理されているプロパティ情報を引数として含むCreateObjectアクションを生成し、アップロード先のデバイスに送信する。CreateObject実行部171は、4K/8Kコンテンツのアップロードの前に、アップロード先のデバイスに対してプロパティ情報を送信することを制御する送信制御部として機能する。
CreateObject実行部171は、アップロード先のデバイスから送信され、通信部156において受信されたレスポンスに含まれるimportURIを取得する。CreateObject実行部171により取得されたimportURIに基づいて、4K/8Kコンテンツのアップロードが行われる。
・STBの動作
図67のフローチャートを参照して、以上のような構成を有するSTB101の動作について説明する。
図67に示す処理は、CreateObjectに用いるプロパティ情報をMMTの伝送データから抽出する処理が追加されている点を除いて、基本的に、図5を参照して説明した処理と同様の処理である。
すなわち、ステップS101において、STB101の入力検出部152は、アップロードの対象となるコンテンツの選択を受け付ける。入力検出部152により受け付けられた、アップロードの対象となるコンテンツの情報はコントローラ151に供給される。
ステップS102において、プロパティ情報抽出部161は、MMTの伝送データから、CreateObjectに用いるプロパティ情報を抽出する。プロパティ情報抽出部161は、抽出したプロパティ情報をプロパティ情報管理部162に出力して管理させる。
ステップS103において、デバイス選択制御部163はデバイス選択処理を行う。図6を参照して説明した処理と同様の処理が行われ、コンテンツのアップロード先となるデバイスが選択される。
ステップS104において、記録媒体選択制御部164は記録媒体選択処理を行う。図16を参照して説明した処理と同様の処理が行われ、コンテンツの記録先となる記録媒体が選択される。
ステップS105において、アップロード制御部165はコンテンツのアップロード処理を行う。プロパティ情報管理部162により管理されているプロパティ情報を用いたCreateObjectがアップロード制御部165のCreateObject実行部171により行われ、その後、コンテンツのアップロードが開始される。コンテンツのアップロードが終了したとき、図67の処理は終了となる。
以上の処理により、STB101は、MMTの伝送データからプロパティ情報を抽出し、抽出したプロパティ情報に基づいて、4K/8Kコンテンツのアップロード前のCreateObjectを行うことができる。
また、STB101は、CreateObjectの終了後、4K/8Kコンテンツをネットワークを介して外部の装置にアップロードすることができる。ネットワークを介したアップロードが可能であるから、図31のネットワークシステムにおいては、4K/8Kコンテンツを対象として、Use case-1のネットワーク越しのムーブ、Use case-2のコンテンツの退避、および、Use case-3のストリーミング視聴が可能となる。
<変形例>
4K/8Kコンテンツのアップロード元のデバイスがSTBである場合について説明したが、PC、TV、レコーダ(記録装置)、ゲーム機、スマートフォン、タブレット端末などの、MMTにより伝送されたコンテンツを受信可能な各種のデバイスから4K/8Kコンテンツをアップロードさせる場合にも適用可能である。
・コンピュータの構成例
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
図68は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
CPU(Central Processing Unit)1001、ROM(Read Only Memory)1002、RAM(Random Access Memory)1003は、バス1004により相互に接続されている。
バス1004には、さらに、入出力インタフェース1005が接続されている。入出力インタフェース1005には、キーボード、マウスなどよりなる入力部1006、ディスプレイ、スピーカなどよりなる出力部1007が接続される。また、入出力インタフェース1005には、ハードディスクや不揮発性のメモリなどよりなる記憶部1008、ネットワークインタフェースなどよりなる通信部1009、リムーバブルメディア1011を駆動するドライブ1010が接続される。
以上のように構成されるコンピュータでは、CPU1001が、例えば、記憶部1008に記憶されているプログラムを入出力インタフェース1005及びバス1004を介してRAM1003にロードして実行することにより、上述した一連の処理が行われる。
CPU1001が実行するプログラムは、例えばリムーバブルメディア1011に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部1008にインストールされる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
なお、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
・構成の組み合わせ例
本技術は、以下のような構成をとることもできる。
(1)
MMTにより伝送されたコンテンツを取得するコンテンツ取得部と、
ネットワークを経由した前記コンテンツの送信先となる外部の装置に対して前記コンテンツのプロパティ情報として送信する情報を、MMTの伝送データから抽出する抽出部と
を備える情報処理装置。
(2)
前記伝送データから抽出された情報を、前記コンテンツの前に、前記外部の装置に送信する送信制御部をさらに備える
前記(1)に記載の情報処理装置。
(3)
前記伝送データから抽出された情報をCreateObjectに用いる情報として管理する情報管理部をさらに備える
前記(1)または(2)に記載の情報処理装置。
(4)
前記送信制御部は、前記伝送データから抽出された情報を、CreateObjectアクションの引数として前記外部の装置に送信する
前記(3)に記載の情報処理装置。
(5)
前記送信制御部は、前記伝送データから抽出された複数種類の情報を組み合わせて得られた情報を1種類の前記プロパティ情報として前記外部の装置に送信する
前記(4)に記載の情報処理装置。
(6)
前記抽出部は、前記プロパティ情報として送信する情報を、前記伝送データを構成するMMTPパケットから抽出する
前記(1)に記載の情報処理装置。
(7)
前記抽出部は、MMTの制御メッセージを構成するパラメータ、前記制御メッセージに含まれるテーブルを構成するパラメータ、および、前記テーブルに含まれる記述子を構成するパラメータのうちの少なくともいずれかから、前記プロパティ情報として送信する複数種類の情報を抽出する
前記(6)に記載の情報処理装置。
(8)
前記抽出部は、前記プロパティ情報として送信する情報を、MMTPパケットの伝送に用いられるTLVパケットから抽出する
前記(1)に記載の情報処理装置。
(9)
前記抽出部は、TLVパケットを用いて伝送されるService Informationから抽出する
前記(8)に記載の情報処理装置。
(10)
情報処理装置が、
MMTにより伝送されたコンテンツを取得し、
ネットワークを経由した前記コンテンツの送信先となる外部の装置に対して前記コンテンツのプロパティ情報として送信する情報を、MMTPパケットから抽出する
情報処理方法。
(11)
コンピュータに、
MMTにより伝送されたコンテンツを取得し、
ネットワークを経由した前記コンテンツの送信先となる外部の装置に対して前記コンテンツのプロパティ情報として送信する情報を、MMTPパケットから抽出する
処理を実行させるためのプログラム。