以下、実施の形態について図面を参照して説明する。
(MPU(Media Processing Unit)タイムスタンプ記述子のmpu_sequence_numberの制限)
図1は、本実施形態に係る放送信号送受信装置のシステム全体の構成例を示した図である。本実施形態の放送信号送受信装置のシステムは、放送信号送信装置(放送局とも呼ぶ)100、放送信号受信装置(テレビジョン受信装置とも呼ぶ)140およびサービス事業者装置120を含む。
放送信号送信装置100は、放送番組サーバ101、第1のアプリケーション管理・配布部102、第1のアプリケーションサーバ103および第1の基本機能104を備える。
第1の基本機能104は、放送局100の基本的な機能であり、放送する番組の映像信号や音声信号等を符号化(エンコードとも言う)して多重化し、放送信号として送出する機能を持つ。
放送信号送信装置100が放送する番組を受信した放送信号受信装置140は、受信した映像信号を表示したり音声信号を出力したりするタイミング(提示時刻とも呼ぶ)を、伝送制御信号として送られてくるMPUタイムスタンプ記述子、MPU拡張タイムスタンプ記述子により制御する。
なお、MPUタイムスタンプ記述子およびMPU拡張タイムスタンプ記述子における特定MPU内のアクセスユニットに関するタイムスタンプ情報の総称は、MPUタイムスタンプと呼ばれる。MPUタイムスタンプの運用に関して、非特許文献3に以下の(1)〜(4)のように記載されている。
(1) 映像、音声のMPUタイムスタンプは、当該MPU復号時刻を基準として2700msec前か500msec前の間に少なくとも1回は送出すること。MPUタイムスタンプの取得からMPUの復号時刻までのタイムラグは、選局後の提示開始までの時間に影響する。また、映像、音声アセット構成の変更時に新たに出現するアセットの先頭MPUのMPUタイムスタンプの取得も考慮して、MPUタイムスタンプは、当該MPU復号時刻を基準として500msec前にできるだけ近い時刻に送出することが望ましい。
(2) MPUタイムスタンプの送出開始から当該MPU復号時刻を基準として500msec前までの間にMPTを複数回送出可能な場合は、MPU復号時刻までのタイムラグによる影響を軽減するために、当該MPU タイムスタンプを復号時刻の500msec前にできるだけ近づけて再送することを強く推奨する。MPUタイムスタンプの再送は、当該MPU復号時刻を基準として500msec前以降も当該MPU復号時刻直前まで継続することが望ましい。また、MPU復号時刻以降に当該MPU タイムスタンプを再送することを許容する。
(3) 映像、音声のMPUタイムスタンプを再送する場合は、同一MPUシーケンス番号に対するタイムスタンプで一度送出したものは変更しないこと。
(4) MPUタイムスタンプは、1 アセットあたり最大15個までのMPUを対象として、MPTのアセット記述子領域に配置するMPUタイムスタンプ記述子、MPU拡張タイムスタンプ記述子で指定して送出することができる。
また第1の基本機能104は、放送する番組に字幕サービスを付加することもできる。この字幕サービスは、非特許文献3に記載のARIB−TTML形式により符号化された字幕データを用いたものである。ARIB−TTMLとは、W3Rが策定したテキストの表示タイミング、レイアウト等を記述できるマークアップ言語であるTTMLを、放送利用のために機能拡張したマークアップ言語である。
また第1の基本機能104は、放送する番組に、放送波によりHTML等のアプリケーション機能を同時に提供するデータコンテンツサービスを付加することができる。この場合放送局100は、MPT(MMT Package Table)の中にアプリケーションサービス記述子を配置することで、放送する番組にアプリケーション機能が付加されていることを示すことができる。
放送番組サーバ101は、放送局100として放送する番組、番組タイトル、番組ID、番組概要、出演者名、放送日時、その他のデータ等を予め保存しておくエリアである。
第1のアプリケーション管理・配布部102は、第1のアプリケーションサーバ103に保存されている、放送番組にアプリケーション機能を付加するのに必要なデータの管理を行う。また第1のアプリケーション管理・配布部102は、管理しているアプリケーション機能を放送信号受信装置(テレビジョン受信装置とも呼ぶ)140への配布も行う。
第1のアプリケーションサーバ103は、放送番組にアプリケーション機能を付加するためのデータを予め保存するエリアである。
サービス事業者装置120は、放送局100と連携して、放送局100が放送する番組に、ネットワーク180を介してHTML等のアプリケーション機能を同時に提供するサービスを付加することができる。
サービス事業者装置120は、第2のアプリケーション管理・配布部121と第2のアプリケーションサーバ122を含む。
第2のアプリケーション管理・配布部121は、第2のアプリケーションサーバ122に保存されているコンテンツやアプリケーションの管理やテレビジョン受信装置140への配布を行う。
第2のアプリケーションサーバ122は、テレビジョン受信装置140に対して提供するコンテンツやアプリケーションを保存するエリアである。
サービス事業者装置120は、第1の指定情報を受信したテレビジョン受信装置140からの要求に対応して、第2のアプリケーションサーバ122に保存してあるアプリケーションやコンテンツを第2のアプリケーション管理・配布部121によりインターネット等のネットワーク180を経由して、テレビジョン受信装置140に送信する。
テレビジョン受信装置140は、デジタル放送の受信機能(第2の基本機能141)、通信制御部142、アプリケーション制御部(ファイル処理部とも呼ぶ)143を含む。またテレビジョン受信装置140は、ネットワーク180を経由してサービス事業者装置120からアプリケーションを取得して動作させたりすることができる。
第2の基本機能141は、テレビジョン受信装置としての基本的な機能であり、放送局100から送られてくる放送波を受信し、放送波に含まれる符号化された映像信号(映像ストリームとも呼ぶ)、符号化された音声信号(音声ストリームとも呼ぶ)、アプリケーションデータおよび伝送制御信号を分離し、映像信号および音声信号をデコードしたり、アプリケーションデータを受信したり、伝送制御信号を解析したりする機能を持つ。
また第2の基本機能141は、テレビジョン受信装置140に接続されている周辺機器、例えば表示器160、スピーカ161、テレビジョン受信装置140にバインドされているHDD(Hard Disk Drive)162、リムーバルメディア170、との接続やデータの送受信の管理も行う。
通信制御部142は、テレビジョン受信装置140がネットワーク180を介してサービス事業者装置120と通信を行う際のデータの送受信の制御を行う。
アプリケーション制御部143は、アプリケーション伝送方式により放送局100から送られてくるMH−AIT(Multimedia Hypermedia-Application Information Table)、データ伝送メッセージ等の制御情報の管理、制御を行う。またアプリケーション制御部143は、この後説明する図3のキャッシュデータ部309にアクセスし、キャッシュされたデータから、データコンテンツサービスを行うために必要なファイルの取得も行う。
表示器160は、スピーカ161を内蔵しており、第2の基本機能141においてデコードされた映像信号を表示領域に表示したり、音声信号をスピーカ161に出力したりする。なお、表示器160に内蔵されているスピーカ161は、USB等のI/Fにより接続した外部のスピーカであってもよい。
なお図1の例では、表示器160は、テレビジョン受信装置140と別体として記載しているが、テレビジョン受信装置140の1機能としてテレビジョン受信装置140と一体であってもよい。
図2は、図1の放送局100の第1の基本機能104の構成を概略的に示した図である。第1の基本機能104は、映像エンコーダ201、音声エンコーダ202、字幕エンコーダ203、アプリケーションデータ生成部204および伝送制御信号を生成する伝送制御信号生成部205を備える。
映像エンコーダ201は、これから放送する番組として放送番組サーバ101から読み出された番組Aの映像のエンコードを行う。なお映像エンコーダ201のコーデック種別は、MPEG−2、H.264(MPEG4 AVC、AVC:Advanced Video Coding)、H.265(HEVC:High Efficiency Video Coding)のいずれでもよいものとする。またコーデック種別は、これに限るものではない。
音声エンコーダ202は、これから放送する番組として放送番組サーバ101から読み出した番組Aの音声のエンコードを行う。
字幕エンコーダ203は、これから放送する番組として放送番組サーバ101から読み出した番組Aの字幕のエンコードを行う。
アプリケーションデータ生成部204は、これから放送する番組として放送番組サーバ101から読み出した番組AにHTML等のアプリケーション機能を同時に提供するサービスを付加する場合に、このアプリケーション機能を構成するアプリケーションデータを生成する。アプリケーションデータは、複数のファイルから構成されており、アプリケーションデータ生成部204は、放送信号によりこれらのファイルを送信するために、各々のファイルのディレクトリ構成を決定する。
伝送制御信号生成部205は、放送局100が放送する放送波に含まれる映像ストリーム、音声ストリーム、伝送制御信号等から構成される放送波の構成に関する制御情報と、放送する番組の番組名称や放送時間等を含む放送される番組に関する制御情報とを生成する。また、伝送制御信号生成部205は、アプリケーションデータ生成部204が生成したアプリケーションデータに関する制御情報も生成する。伝送制御信号生成部205が生成するアプリケーションデータの制御情報については、図8を用いて説明する。
スクランブラ206は、映像エンコーダ201の出力、音声エンコーダ202の出力、字幕エンコーダ203の出力およびアプリケーションデータ生成部204の出力をそれぞれ必要に応じてスクランブルする。
伝送制御信号生成部205の出力と、スクランブラ206で必要に応じてスクランブルされた映像、音声、字幕、アプリケーションデータは、多重化部207で多重化して、多重化ストリームとして送信機208に送出され、送信機208により所望のチャンネルの放送波としてアンテナから送信される。多重化部207が多重化する際の多重化方式は、例えばMMT(Mpeg Media Transport)の方式を用いるものとする。
図3は、テレビジョン受信装置140の構成を概略的に示した図である。テレビジョン受信装置140は、放送波を受信する機能である第2の基本機能141、通信制御部142、アプリケーション制御部143を含む。またテレビジョン受信装置140は、表示器160とも接続している。表示器160は、スピーカ161を内蔵している。
第2の基本機能141は、放送チューナ301、デマルチプレクサ302、デスクランブラ304、映像デコーダ306、音声デコーダ307、字幕デコーダ308、キャッシュデータ部309、伝送制御信号解析部310を含む。
放送チューナ301は、所望のチャンネルの放送波を選局し、この放送波で送られてきたストリーム(放送信号)を復調する。復調されたストリーム(放送信号)は、デマルチプレクサ302に入力される。デマルチプレクサ302は、入力された多重化されているストリームを映像ストリーム、音声ストリーム、字幕ストリーム、アプリケーションデータ、伝送制御信号に分離し、映像ストリーム、音声ストリーム、字幕ストリーム、アプリケーションデータはデスクランブラ304に入力され、伝送制御信号は伝送制御信号解析部310に入力される。
デスクランブラ304は、必要に応じてそれぞれのストリームをデスクランブルして、映像ストリームを映像デコーダ306に、音声ストリームを音声デコーダ307に、字幕ストリームを字幕デコーダ308に、アプリケーションデータをキャッシュデータ部309にそれぞれ入力する。
映像ストリームは映像デコーダ306でデコードされ、音声ストリームは音声デコーダ307でデコードされ、字幕ストリームは字幕デコーダ308でデコードされる。
映像デコーダ306または音声デコーダ307は、先に説明した提示時刻(PTSとも呼ぶ)の順に映像ストリームをデコードするが、このデコードに必要となるPTS(Presentation Time-Stamp)やDTS(Decoding Time-Stamp)等の情報を持つMPUタイムスタンプ記述子およびMPU拡張タイムスタンプ記述子に配置されているmpu_sequence_numberが昇順になっていない場合がある。
このMPUタイムスタンプ記述子およびMPU拡張タイムスタンプ記述子のmpu_sequence_numberが昇順になっていない場合、伝送制御信号解析部310は、受信したMPUタイムスタンプ記述子から抽出したmpu_sequence_numberを、例えば昇順に並べ替えずに受信した順にデコーダバッファ310−1に蓄え(記憶させ)てもよい(後述する図4A(B)に示す例の場合)。
映像デコーダ306あるいは音声デコーダ307は、昇順に並べ替えられていないmpu_sequence_numberを、昇順に参照することでPTSやDTSを算出し、この算出したPTSやDTSを用いて映像ストリームや音声ストリームをデコードしたり、デコードした映像ストリームを表示器160に出力したりスピーカ161に出力したりする。
またはMPUタイムスタンプ記述子およびMPU拡張タイムスタンプ記述子のmpu_sequence_numberが昇順になっていない場合、伝送制御信号解析部310は、受信したMPUタイムスタンプ記述子から抽出したmpu_sequence_numberを、例えば昇順に並べ替えてからデコーダバッファ310−1に蓄え(記憶させ)てもよい(後述する図4Bに示す例の場合)。
映像デコーダ306あるいは音声デコーダ307は、昇順に並べ替えられてデコーダバッファ310−1に蓄積されているmpu_sequence_numberを、蓄積されている順に参照することでPTSやDTSを算出し、この算出したPTSやDTSを用いて映像ストリームや音声ストリームをデコードしたり、デコードした映像ストリームを表示器160に出力したりスピーカ161に出力したりする。伝送制御信号解析部310が行う、MPUタイムスタンプ記述子のmpu_sequence_numberを昇順に並べ替える処理については、図4A、図4Bおよび図5を用いて説明する。
伝送制御信号解析部310は、伝送制御信号に含まれる各種制御情報の解析を行う。伝送制御信号解析部310は、解析した伝送制御信号のうち、アプリケーションデータに関する制御情報であるMH−AIT、データ伝送メッセージ等を、アプリケーション制御部143に送り、さらに解析される。
アプリケーション制御部143は、伝送制御信号解析部310より送られてきた、アプリケーションデータに関する制御情報であるMH−AIT、データ伝送メッセージ等の制御情報の管理、制御を行う。
またアプリケーション制御部143は、キャッシュデータ部309に保存されたキャッシュされたデータを用いて、ブラウザ311を制御することでデータ放送の画面表示制御を行う。また、ブラウザ311は、字幕デコーダ308の出力データにより字幕の画面重畳データを生成する。
デコードされた映像信号および字幕、データ放送の表示内容は、合成器326で合成され表示器160に出力される。
先に説明したように字幕の表示タイミングは、ARIB−TTML形式の字幕データ内に記述されている。ブラウザ311は、この字幕データ内に記述されている表示タイミングを解析することで、字幕を表示器160に表示するタイミングを制御する。字幕の表示タイミングの制御については、後述する。
また音声デコーダ307でデコードされた音声データは、表示器160に内蔵されているスピーカ161に出力される。
なお、映像デコーダ306のコーデック種別は、例えばH.265とするが、これに限定されるものではなく、MPEG−2、H.264のいずれでもよい。またコーデック種別は、これに限るものではない。
通信制御部142は、通信ネットワーク180とのI/FであるネットワークI/F341と、リモートコントローラ(リモコン)352とのI/FであるリモコンI/F342を持つ。
通信制御部142は、ネットワークI/F341を介してネットワーク180を経由してサービス事業者装置120と接続することができる。通信制御部142は、サービス事業者装置120が管理しているアプリケーションやコンテンツを、ネットワーク180を経由して取得することができる。この取得したアプリケーションやコンテンツは、通信制御部142からブラウザ311に送られ、表示等に使用される。
図4Aは、図3に示す伝送制御信号解析部310が、伝送制御信号としてMPTに配置されて送られてくるMPUタイムスタンプ記述子、MPU拡張タイムスタンプ記述子を解析して、mpu_sequence_numberを抽出する様子を示した図である。
非特許文献3の送出運用規則では、放送局100が送出する、MPUタイムスタンプ記述子、MPU拡張タイムスタンプ記述子に関して以下のように規定されている。
・該当するサービスにおいて対象とするアセットが映像または音声の場合には挿入必須
これに対して本実施形態に係る放送信号送受信装置は、新たにMPUタイムスタンプ記述子に関して次の制限に従う。
(制限1)mpu_sequence_numberおよびmpu_presentation_timeは、提示順に記述する。なお、両フィールドとも、通常の場合は昇順となるが、下記のそれぞれの場合(非通常の場合とも呼ぶ)は昇順とならないことがある。
・mpu_sequence_number:冗長切り替え時や映像フォーマット切り替え等で0リセットされる時
・mpu_presentation_time:うるう秒挿入時
また実施形態に係る放送信号送受信装置は、新たにMPU拡張タイムスタンプ記述子に関して次の制限に従う。
(制限2)mpu_sequence_numberは、提示順に記述する。mpu_sequence_numberは、通常は昇順となるが、冗長切り替え時や映像フォーマット切り替え等で0リセットされる場合には昇順にならないことがある。
本実施形態に係る放送信号受信装置140は、制限1および制限2に従ったMPUタイムスタンプ記述子およびMPU拡張タイムスタンプ記述子を受信すると、その受信したmpu_sequence_numberおよびmpu_sequence_numberが提示順でない場合には、提示順に並べ替えてからmpu_sequence_numberおよびmpu_sequence_numberを映像デコーダおよび音声デコーダに渡すようにする。
以下MPUタイムスタンプ記述子およびMPU拡張タイムスタンプ記述子のmpu_sequence_numberおよびmpu_sequence_numberの提示順が昇順に送られてくる場合と昇順に送られてこない場合の具体例をあげて説明する。
図4A(A)は、MPUタイムスタンプ記述子およびMPU拡張タイムスタンプ記述子を解析して抽出したmpu_sequence_numberが、昇順に並んでいる例である。
符号401は、MPT−Aに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberを表している。mpu_sequence_numberは、100から106まで連続して昇順に並んでいる。符号402は、MPT−Bに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberを表している。mpu_sequence_numberは、104から110まで連続して昇順に並んでいる。符号403は、MPT−Cに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberを表している。mpu_sequence_numberは、106から114まで連続して昇順に並んでいる。
このような順に並んでいるMPUタイムスタンプ記述子を受信した放送信号受信装置140の伝送制御信号解析部310は、MPUタイムスタンプ記述子のmpu_sequence_numberを、映像デコーダ306あるいは音声デコーダ307にmpu_sequence_numberを通知するためのデコーダバッファ310−1に、図4A(A)に示すように、符号411に示すmpu_sequence_number、符号412に示すmpu_sequence_number、符号413に示すmpu_sequence_numberの順に設定していく。すなわち伝送制御信号解析部310は、MPT−Aに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberである100から106(符号411に示すmpu_sequence_number)をデコーダバッファ310−1に蓄積する。
次に伝送制御信号解析部310は、MPT−Aの次に受信したMPT−Bに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberである104から110のうち、すでにデコーダバッファに蓄積してあるmpu_sequence_numberの104から106を除いた107から110(符号412に示すmpu_sequence_number)をデコーダバッファ310−1に、mpu_sequence_numberの100から106に続けて蓄積する。
更に伝送制御信号解析部310は、MPT−Bの次に受信したMPT−Cに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberである106から114のうち、すでにデコーダバッファに蓄積してあるmpu_sequence_numberの106から110を除いた111から114(符号413に示すmpu_sequence_number)をデコーダバッファ310−1に、mpu_sequence_numberの107から110に続けて蓄積する。
図4A(A)の場合、デコーダバッファ310−1にはmpu_sequence_numberが昇順に蓄積されているので、映像デコーダ306あるいは音声デコーダ307は、デコーダバッファ310−1に蓄積されている順にmpu_sequence_numberを参照することでPTSやDTSを算出し、算出したPTSやDTSを用いて映像ストリームや音声ストリームをデコードする。
図4A(B)は、MPUタイムスタンプ記述子およびMPU拡張タイムスタンプ記述子を解析して抽出したmpu_sequence_numberが、昇順に並んでいない例である。
符号451は、MPT−Aに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberを表している。mpu_sequence_numberは、100から106の連続して昇順に並んでいる。符号452は、MPT−Bに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberを表している。mpu_sequence_numberは、104から109の連続して降順に並んでいる。符号453は、MPT−Cに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberを表している。mpu_sequence_numberは、101から114の間において不連続かつランダムな順に並んでいる。
このような順に並んでいるMPUタイムスタンプ記述子を受信した放送信号受信装置140の伝送制御信号解析部310は、MPUタイムスタンプ記述子のmpu_sequence_numberを、映像デコーダ306あるいは音声デコーダ307にmpu_sequence_numberを通知するためのデコーダバッファ3010−1に、図4A(B)に示すように、符号461に示すmpu_sequence_number、符号462に示すmpu_sequence_number、符号463に示すmpu_sequence_numberの順に設定していく。すなわち伝送制御信号解析部310は、MPT−Aに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberである100から106(符号461に示すmpu_sequence_number)をデコーダバッファ310−1に設定する。
次に伝送制御信号解析部310は、MPT−Aの次に受信したMPT−Bに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberである109から103のうち、すでにデコーダバッファに設定してあるmpu_sequence_numberの106から103を除いた、初めて受信したmpu_sequence_numberである109から107を、受信したmpu_sequence_numberの順に、デコーダバッファ310−1に、mpu_sequence_numberの109から107を、mpu_sequence_numberの100から106に続けて蓄積する。
更に伝送制御信号解析部310は、MPT−Bの次に受信したMPT−Cに配置されて送られてきたMPUタイムスタンプ記述子のmpu_sequence_numberである101から114のうち、すでにデコーダバッファに設定してあるmpu_sequence_numberの101から109を除いた、初めて受信したmpu_sequence_numberである110から114を、受信したmpu_sequence_numberの順に、デコーダバッファ310−1に、mpu_sequence_numberの110、111、114を、mpu_sequence_numberの107に続けて蓄積する。
図4A(B)の場合、デコーダバッファ310−1にはmpu_sequence_numberが昇順に蓄積されていないので、映像デコーダ306あるいは音声デコーダ307は、昇順になるようにデコーダバッファ310−1に蓄えられているmpu_sequence_numberを参照することでPTSやDTSを算出し、参照したPTSやDTSを用いて映像ストリームや音声ストリームをデコードする。
図4Bは、MPUタイムスタンプ記述子およびMPU拡張タイムスタンプ記述子を解析して抽出したmpu_sequence_numberが、昇順に並んでいない例の変形例である。
図4Bは、図4A(B)と比較して伝送制御信号解析部310が符号452−1におけるmpu_sequence_numberを、デコーダバッファ310−1に蓄積する際に昇順に並べ替えて蓄積している点が異なる点である。つまり伝送制御信号解析部310は、MTP−Bに配置されて送られてきたmpu_sequence_numberから、初めて受信したmpu_sequence_numberである109から107を、デコーダバッファ310−1に蓄積する際に107から109と昇順に並べ替えて蓄積する。これによりデコーダバッファ310−1には、符号461、符号472−1、符号463−1、符号463−2に示すmpu_sequence_numberのように、mpu_sequence_numberが100から112まで昇順に蓄積されている。
この図4Bの場合、デコーダバッファ310−1にはmpu_sequence_numberが昇順に蓄積されているので、映像デコーダ306あるいは音声デコーダ307は、この蓄積されている順のままデコーダバッファ310−1を参照することでPTSやDTSを算出し、算出したPTSやDTSを用いて映像ストリームや音声ストリームをデコードする。
以上のように本実施形態の放送信号受信装置140は、映像ストリームや音声ストリームをデコードする際に、デコードに必要となるPTSやDTSを算出する必要があるが、このPTSやDTSを算出するのに必要なMPUタイムスタンプ記述子またはMPU拡張タイムスタンプ記述子のmpu_sequence_numberが、昇順に放送局100から送られてこない場合がある。この場合放送信号受信装置140の伝送制御信号解析部310は、受信したMPUタイムスタンプ記述子またはMPU拡張タイムスタンプ記述子のmpu_sequence_numberを、例えば昇順に並べ替えずに一旦デコーダバッファ310−1に蓄え(記憶させ)てもよい(図4A(B)に示す例の場合)。この場合映像デコーダ306あるいは音声デコーダ307は、昇順になるようにデコーダバッファ310−1に蓄えられているmpu_sequence_numberを参照することでPTSやDTSを算出し、参照したPTSやDTSを用いて映像ストリームや音声ストリームをデコードする。
またMPUタイムスタンプ記述子またはMPU拡張タイムスタンプ記述子のmpu_sequence_numberが昇順に放送局100から送られてこない場合、伝送制御信号解析部310は、受信したMPUタイムスタンプ記述子またはMPU拡張タイムスタンプ記述子のmpu_sequence_numberを、例えば昇順に並べ替えてからデコーダバッファ310−1に蓄え(記憶させ)てもよい(図4Bに示す例の場合)。この場合映像デコーダ306あるいは音声デコーダ307は、デコーダバッファ310−1に蓄えられている順にmpu_sequence_numberを参照することでPTSやDTSを算出し、参照したPTSやDTSを用いて映像ストリームや音声ストリームをデコードする。
この結果、MPUタイムスタンプ記述子あるいはMPU拡張タイムスタンプ記述子のmpu_sequence_numberが昇順になっていない場合でも、放送信号受信装置140は、問題なく映像ストリームや音声ストリームをデコードすることが出来る。
図5は、図4Aを用いて説明した放送信号受信装置140が、受信したMTPからMPUタイムスタンプ記述子および/またはMPU拡張タイムスタンプ記述子に含まれるmpu_sequence_numberのうち、初めて受信したmpu_sequence_numberだけを取り出して、受信した順に並べるため処理の例を示した処理フローである。
図3に示す伝送制御信号解析部310は、伝送制御信号としてMPTを受信するとこの中に含まれるMPUタイムスタンプ記述子からmpu_sequence_numberを取り出す(S501)。伝送制御信号解析部310は、この取り出したmpu_sequence_numberが、初めて受信したmpu_sequence_numberかどうかを確認する(S502)。
確認(S502)の結果、初めて受信したmpu_sequence_numberの場合(S502のYes)、伝送制御信号解析部310は、mpu_sequence_numberを受信した順に内部に持つデコーダバッファ310−1に保存(S503)する。伝送制御信号解析部310は、さらにMPUタイムスタンプ記述子に含まれるmpu_presentation_timeやMPU拡張タイムスタンプ記述子に含まれるdts_pts_offset等を用いて、mpu_sequence_numberに対応する各アクセスユニットのPTS(Presentation Time-Stamp)およびDTS(Decoding Time-Stamp)を算出してデコーダバッファ310−1に保存(S504)する。
伝送制御信号解析部310は、算出した各アクセスユニットのPTSおよびDTSを、適切なタイミングで映像デコーダ306や音声デコーダ307に送信(S505)して処理を終了する(S506)。伝送制御信号解析部310送られてきた各アクセスユニットのPSTおよびDTSを受信した映像デコーダ306や音声デコーダ307は、受信したDTSを用いて映像信号や音声信号のデコードをしたり、受信したPTSを用いてデコードした映像の表示や音声の出力を行ったりする。
先のS502の確認の結果、初めて受信したmpu_sequence_numberでない場合(S502のNo)、伝送制御信号解析部310は、受信したmpu_sequence_numberを内部に持つデコーダバッファ310−1に設定せずに破棄して処理を終了する(S506)。
なお、図4Bを用いて説明した放送信号受信装置140が、受信したMTPからMPUタイムスタンプ記述子に含まれるmpu_sequence_numberのうち、初めて受信したmpu_sequence_numberだけを取り出して昇順に並べ替えるための処理の処理フローは、S503において、mpu_sequence_numberを昇順に並べ替えてデコードバッファに保存するように変えればよい。
(ARIB−TTML形式により符号化された字幕データを扱う)
本実施形態に係る放送信号送受信装置は、既に説明したようにARIB−TTML形式により符号化された字幕サービスに対応することもできる。
ARIB−TTML形式は、最上位はtt 要素、その下にhead 要素及びbody 要素を配置できる。head 要素の下には、文書全体にわたるスタイル等を規定するstyling 要素や文書全体にわたるレイアウト等を規定するlayout 要素を配置できる。body 要素の直下には、div 要素やp 要素が配置される。div 要素やp 要素の下には、字幕や文字スーパーとして提示するテキストなどが記述できる。div 要素及びp 要素では、begin 属性等の時刻制御用の情報を記述し、指定した時間に字幕テキスト等を表示することができる。
これに対して本実施形態に係る放送信号送受信装置は、新たに字幕の時刻制御用の情報の記述に関して次の制限に従う。
(制限3)時刻情報を指定しない最上位のbody要素の開始時刻はreference_start_timeで指定される基準時刻とし、終了時刻は「未定」とする。
(制限4)body要素より下位のbegin属性が指定された要素の開始時刻は、上位要素の開始時刻にbegin属性で示される相対時刻を足し合わせた時刻とする。
(制限5)body要素より下位のend属性が指定された要素の終了時刻は、上位要素の開始時刻にend属性で示される相対時刻を足し合わせた時刻とする。body要素より下位のbegin属性が指定されない要素の開始時刻は、上位要素の開始時刻を継承する。
(制限6)body要素より下位のend属性が指定されない要素の終了時刻は、上位要素の終了時刻を継承する。
(制限7)各要素は、NTPに基づく時計において、開始時刻に達した時点で提示を開始し、終了時刻に達した時点で提示を終了する。
(制限8)各要素は、NTPに基づく時計において、既に開始時刻に達していた場合には、直ちに提示を開始する。
(制限9)各要素は、NTPに基づく時計において、既に終了時刻に達していた場合には、提示を行わない。
(制限10)各要素は、終了時刻が「未定」の場合は、次の字幕コンテンツを受信するまで提示を継続する。
(制限11)begin属性は、開始時刻が上位要素の終了時刻を越えるような値を記述してはならない。記述した場合の動作は受信機依存とする。
(制限12)end属性は、終了時刻が上位要素の時刻範囲を越えるような値を記述してはならない。記述した場合の動作は受信機依存とする。
本実施形態に係る放送信号受信装置140は、上述した制限3から制限12にもとづいて送られてくる字幕サービスの時刻制御用の情報に関する処理を行う。
図6Aは、放送信号受信装置140が制限3から制限12に従う字幕データを受信した場合の、時刻制御用の情報に関する処理の例の処理フローを示している。
図3に示す放送信号受信装置140の字幕デコーダ308は、字幕データを受信すると時刻情報解析処理(S600)を開始する。
字幕デコーダ308は、受信したARIB−TTML形式により符号化された字幕データを解析して、begin属性の開始時刻は、上位要素の開始時刻より前かどうかの判定をする(S601)。
判定(S601)の結果、前である場合(S601のYes)、字幕デコーダ308は解析対象のbegin属性の開始時刻を、begin属性の開始時刻が、上位要素の時刻範囲を越えない範囲に制限(例えば、begin属性の開始時刻を上位要素の開始時刻(begin属性の値)とする)して(S608)、S602へ進む。
判定(S601)の結果、前でない場合(S601のNo)、字幕デコーダ308は解析対象のbegin属性の開始時刻は、上位要素の終了時刻より後ろかどうかの判定をする(S602)。
判定(S602)の結果、後ろである場合(S602のYes)、字幕デコーダ308は解析対象のbegin属性を無視して破棄し(S607)、字幕の表示を行わずに処理を終了する(S606)。
判定(S602)の結果、後ろでない場合(S602のNo)、字幕デコーダ308は解析対象のend属性の終了時刻は、上位要素の開始時刻より前かどうかの判定をする(S603)。
判定(S603)の結果、前である場合(S603のYes)、字幕デコーダ308は解析対象のbegin属性を無視して破棄し(S607)、字幕の表示を行わずに処理を終了する(S606)。
判定(S603)の結果、前でない場合(S603のNo)、字幕デコーダ308は解析対象のend属性の終了時刻は、上位要素の終了時刻より後ろかどうかの判定をする(S604)。
判定(S604)の結果、後ろである場合(S604のYes)、字幕デコーダ308は解析対象のbegin属性を無視して破棄し(S607)、字幕の表示を行わずに処理を終了する(S606)。
判定(S604)の結果、後ろでない場合(S604のNo)、字幕デコーダ308は解析対象の字幕の表示処理(S605)を行い、時刻情報解析処理を終了する(S606)。
図6Bは、放送信号受信装置140が制限3から制限12に従う字幕データを受信した場合の、時刻制御用の情報に関する処理の例の処理フローを示している。
図3に示す放送信号受信装置140の字幕デコーダ308は、字幕データを受信すると時刻情報解析処理(S620)を開始する。
字幕デコーダ308は、受信したARIB−TTML形式により符号化された字幕データを解析して、begin属性の開始時刻は、上位要素の開始時刻より前かどうかの判定をする(S621)。
判定(S621)の結果、前である場合(S621のYes)、字幕デコーダ308は解析対象のbegin属性の開始時刻を、begin属性の開始時刻が、上位要素の時刻範囲を越えない範囲に制限(例えば、begin属性の開始時刻を上位要素の開始時刻(begin属性の値)とする)して(S628)、S622へ進む。
判定(S621)の結果、前でない場合(S621のNo)、字幕デコーダ308は解析対象のbegin属性の開始時刻は、上位要素の終了時刻より後ろかどうかの判定をする(S622)。
判定(S622)の結果、後ろである場合(S622のYes)、字幕デコーダ308は解析対象のbegin属性の開始時刻を無視して破棄し(S627)、字幕の表示を行わずに処理を終了する(S626)。
判定(S622)の結果、後ろでない場合(S622のNo)、字幕デコーダ308は解析対象のend属性の終了時刻は、上位要素の開始時刻より前かどうかの判定をする(S623)。
判定(S623)の結果、前である場合(S623のYes)、字幕デコーダ308は解析対象のend属性の終了時刻を無視して破棄し(S617)、字幕の表示を行わずに処理を終了する(S626)。
判定(S623)の結果、前でない場合(S623のNo)、字幕デコーダ308は解析対象のend属性の終了時刻は、上位要素の終了時刻より後ろかどうかの判定をする(S624)。
判定(S624)の結果、後ろである場合(S624のYes)、字幕デコーダ308は解析対象のend属性の終了時刻が、上位要素の時刻範囲を越えない範囲に制限(例えば、end属性の終了時刻を上位要素の終了時刻(end属性の値)とする)して(S629)、S625へ進む。
判定(S624)の結果、後ろでない場合(S624のNo)、字幕デコーダ308は解析対象の字幕の表示処理(S625)を行い、時刻情報解析処理を終了する(S626)。
このように本実施形態に係る放送信号受信装置140は、制限3から制限12に従って時刻制御用の情報を処理することができるため、字幕データを表示器160に異常な表示を行わないようにしたり、または開始時刻や終了時刻が上位要素の時刻範囲を越えない範囲に制限して表示してあげることが可能となる。
(データコンテンツサービスの休止状態において、データ伝送メッセージ、MH−AITおよびアプリケーションデータを伝送)
本実施形態に係る放送信号送受信装置は、既に説明したようにデータコンテンツサービスに対応することもできる。
非特許文献3には、データコンテンツサービス休止においては、MPTにアプリケーションサービス記述子を配置しない、という記載がある。
これに対して本実施形態に係る放送信号送受信装置は、新たにデータコンテンツサービス休止に関して、次の制限に従う。(制限13)データ伝送メッセージ、MH−AIT、およびアプリケーションデータを伝送するデータコンポーネントは伝送されることがある。
本実施形態に係る放送信号受信装置140は、データコンテンツサービス休止においては、制限13に従ったデータ伝送メッセージ、MH−AITおよびアプリケーションデータを伝送するデータコンポーネントを受信した場合、受信したデータを破棄する処理を行う。
図7は、放送信号受信装置140が、データコンテンツサービスの休止判定において、制限13に従ったデータ伝送メッセージ、MH−AITおよびアプリケーションデータを伝送するデータコンポーネントを受信した場合の処理の例を示した処理フローである。
伝送制御信号解析部310は、伝送制御信号を受信するとデータコンテンツサービス休止判定処理(S700)を開始する。伝送制御信号解析部310は、受信した伝送制御信号がMTPである場合(S701のYes)、伝送制御信号解析部310は、MPTにアプリケーションサービス記述子が存在するかどうかの判定を行う(S702)。
判定(S702)の結果、MPTにアプリケーションサービス記述子が配置されているときは(S702のYes)、伝送制御信号解析部310は、データコンテンツサービスが実行中である(休止状態でない)と判断し、データコンテンツサービス休止判定処理を終了する(S705)。
判定(S702)の結果、MPTにアプリケーションサービス記述子が配置されていないときは(S702がNo)、伝送制御信号解析部310は、データコンテンツサービスが終了したと判断する(S703)。
伝送制御信号解析部310は、以降データコンテンツサービスの休止状態中にデータコンテンツサービスに関係する伝送制御信号であるデータ伝送メッセージ、MH−AITやアプリケーションデータを受信しても破棄し(S704)、特にデータコンテンツサービスを表示することなく処理を終了する(S705)。
(データコンテンツサービスの起動やサービス中に、データコンテンツサービスとして提供するアプリケーションデータの取得)
図8は、データコンテンツサービスを行う場合の放送局の放送信号の送信の概要を示した図である。
映像コンポーネント801、音声コンポーネント802、字幕コンポーネント803からなる番組Bにデータコンテンツサービスを付加する場合、放送局100の伝送制御信号生成部205は、アプリケーションサービス記述子を配置したMPT810を生成し伝送制御信号として送信する。
さらに放送局100の伝送制御信号生成部205は、放送番組Bに付加したデータコンテンツサービスのアプリケーションのエントリーファイルを設定したMH−AIT820を生成し、送信する。
さらに伝送制御信号生成部205は、データコンテンツサービスを行うためのアプリケーションデータの送信に必要となる制御情報を生成し送信する。
このアプリケーションデータの送信に必要となる制御情報は、アプリケーションデータを構成するファイルのディレクトリ構成における、パスの情報を持つDDMT(Data Directory Management Table)821、アプリケーションデータが送られてくるMPUに関する情報を持つDAMT(Data Asset Management Table)822およびアプリケーションデータのPU(Presentation Unit)単位に関する情報を持つDCCT(Data Content Configuration Table)823を含む。
また放送局100のアプリケーションデータ生成部204は、伝送制御信号生成部205と連携して、アプリケーション管理・配布部102から読み出したアプリケーションデータを非同期型MPU830、831にカプセル化して送信する。
アプリケーションデータは、複数のファイルから構成されている。アプリケーションデータ生成部204は、放送信号によりアプリケーションデータを送信するために、各々のファイルのディレクトリ構成を決定する。アプリケーションデータを構成するファイルのディレクトリ構成におけるパス情報は、先に示したDDMT821によりテレビジョン受信装置140に送信される。アプリケーションデータの中には、さらに他のアプリケーションデータを参照する場合もある。この場合は、アプリケーションデータの中にさらに参照すべき他のアプリケーションデータのURL(Uniform Resource Locator)が記載される。
このようにデータコンテンツサービスにおいてファイルにアクセスするためのパス情報は、MH−AIT820に設定されているエントリーファイル情報やアプリケーションデータの中に設定されているURLに記載されて、テレビジョン受信装置140に送られるが、これらのファイルのディレクトリ構成におけるパス情報は、先に説明したようにDDMT821に設定されてテレビジョン受信装置140に送信される。
テレビジョン受信装置140は、受信したMH−AIT820によるデータ放送の起動、あるいは受信したアプリケーションデータからURLの内容を認識すると、DDMT821に設定されている情報を基づいて、必要なファイルを受信して、受信したファイルにアクセスしてデータコンテンツサービスを実行する。
MH−AIT820の中にエントリーファイルが設定されており、そのエントリーファイルに基づいてテレビジョン受信装置140がアクセスすべきアプリケーションデータは、放送信号で送られてくる以外に、通信制御部142を介してネットワーク180で接続されている、例えばサービス事業者装置120が管理しているアプリケーションデータ840であってもよい。この場合には、エントリーファイルの情報として、インターネット上のURLが指定される。
ここで、放送で伝送するアプリケーションデータを参照する場合のURLは、以下のフォーマットであることが非特許文献3で規定されている。<base_url><base_directory_path><directory_node_path><file_name><base_directory_path>:DDMTに記載されるベースディレクトリパス<directory_node_path>:DDMTに記載されるディレクトリノードパス<file_name>:DDMTに記載されているファイル名
ここで、<base_directory_path>と<directory_node_path>において、文字列の最後は“/”で終わることが規定されているが、文字列の途中に“/”を入れることは禁止されていない。このため、ファイルの置かれるディレクトリ階層は必ずしも2階層ではなく、より深いディレクトリ階層とすることが可能となっている。
そこで本実施形態の放送信号送信装置100は、アプリケーションデータを構成するファイルのディレクトリ構成におけるパスに、さらに次の制限を設ける。(制限14)base_directory_pathの任意の2つのパスにおいて、前方一致かつ一方のパスが他方のパスの部分を構成するような設定を禁止。(制限15)base_directory_pathが同一である場合、継続するdirectory_node_pathの任意の2つのパスにおいて、前方一致かつ一方のパスが他方のパスの部分を構成するような設定を禁止。
この制限は、例えばデータ伝送セッションごとの制限でもよい。データ伝送セッションとは、非特許文献3に記載されているように、データコンテンツサービスを構成するアプリケーションデータ構成、およびディレクトリ構成が同一の期間である。
図9Aは、放送信号送信装置100が、アプリケーションデータを送信する際に、上記制限14および制限15を踏まえてアプリケーションデータを構成しているファイルのディレクトリ構成を決定し、この決定したディレクトリ構成に基づいてDDMT821に値を設定する処理フローを示している。
アプリケーションデータ生成部204は、テレビジョン受信装置140に送信するアプリケーションデータをアプリケーション管理・配布部102から読み出す(S901)。アプリケーションデータは、複数のファイルから構成されており、アプリケーションデータ生成部204は、読み出したアプリケーションデータの複数のファイルを、放送信号により送信するためにディレクトリ構成を決定する(S902)。アプリケーションデータ生成部204は、アプリケーションデータを構成するディレクトリを決定する際に、制限14および制限15を踏まえてディレクトリ構成を決定し、file_nameのリストをアプリケーションデータの一部として送るためのindex_itemを生成する。
また伝送制御信号生成部205は、アプリケーションデータ生成部204がディレクトリ構成を決定すると(S902)、この決定したディレクトリ構成の情報をもとにDDMT421のbase_directory_path、directory_node_path、file_nameを設定し(S903)処理を終了する(S904)。ただし、DAMT822にてMPUノード記述子で参照されるディレクトリノードにおいてはfile_nameを設定しない。
また伝送制御信号生成部205は、データコンテンツサービスのアプリケーションのエントリーファイル情報を、MH−AIT820に設定する。この場合伝送制御信号生成部205は、DDMT821に設定したbase_directory_pathの内容を、MH−AIT820に含まれるMH−伝送プロトコル記述子のURL_baseに、またDDMT821に設定したdirectory_node_path、file_nameの内容を、MH−AIT820に含まれるMH−簡易アプリケーションロケーション記述子のinitial_pathに、それぞれ設定する。
図9Bは、放送信号受信装置140が、放送番組を受信した際に、データコンテンツサービスが付加されている場合の、データコンテンツサービス起動の処理フローを示している。
放送信号受信装置140の伝送制御信号解析部310は、先に説明したように伝送制御信号としてMPT810を受信すると、データコンテンツサービス起動処理を開始する(S910)。
伝送制御信号解析部310は、受信したMPT810にアプリケーションサービス記述子が配置されているか(S911)を確認する。
伝送制御信号解析部310は、確認した結果MPT810にアプリケーションサービス記述子が配置されていることを認識した場合(S912のYes)、受信している放送波の番組にデータコンテンツサービスが付加されていると判断する。
伝送制御信号解析部310は、MPT810にアプリケーションサービス記述子が配置されていることを確認すると、続いて伝送制御信号としてMH−AIT820が送られてくるのを待つ。
伝送制御信号解析部310は、MH−AIT820を受信(S913)すると、MH−AIT820のapplication_control_codeがAUTOSTARTと設定されている初期起動アプリケーションのエントリーファイル情報であるMH−伝送プロトコル記述子のURL_base およびMH−簡易アプリケーションロケーション記述子のinitial_path、を取り出し(S914)、アプリケーション制御部143に通知する。なお先に説明したように、MH−伝送プロトコル記述子のURL_baseには、DDMT821に設定されているbase_directory_pathが、またMH−簡易アプリケーションロケーション記述子のinitial_pathには、DDMT821に設定されているdirectory_node_path、file_nameが設定されている。
伝送制御信号解析部310は、初期起動アプリケーションが放送波で送られてきたかどうか確認し(S915)、放送波で送られてきた場合(S916のYes)はDDMT821、DAMT822が送られてくるのを待つ。
伝送制御信号解析部310は、DDMT821、DAMT822を受信(S917)すると、エントリーファイル情報に該当するものをDDMT821内で検索し、これに該当するMPUをDAMT822を参照して特定する。また、MPT810に含まれるMH−ストリーム識別記述子を参照してcomponent_tagに該当するアセットのロケーション情報を取り出して、MPU_sequence_numberと合わせてデマルチプレクサ302に設定して、アプリケーションデータが受信できるのを待つ。
伝送制御信号解析部310は、アプリケーションデータを受信(S918)すると、アプリケーション制御部143に通知する。
この通知を受けたアプリケーション制御部143は、エントリーファイルの情報をブラウザ311に通知して、データコンテンツサービスの起動を行う(S919)。
ブラウザ311は、キャッシュデータ部309から読み出したアプリケーションデータから、表示部160に表示する内容を生成し、この生成した内容を表示器160に表示して(S920)処理を終了する(S921)。
アプリケーション制御部143は、S919の処理においてエントリーファイル情報であるMH−伝送プロトコル記述子のURL_baseおよびMH−簡易アプリケーションロケーション記述子のinitial_pathに基づいてデータコンテンツサービスの起動を行う。
この際にアプリケーション制御部143は、MH−伝送プロトコル記述子のURL_baseからDDMT821に記載されているbase_directory_pathは一意に特定できるが、MH−簡易アプリケーションロケーション記述子のinitial_pathからDDMT821に記載されているdirectory_node_path、file_nameの情報とのマッチングは、DDMT821のdirectory_node_path、file_nameが先に説明した制限15にもとづいて設定されていると、効率的に行うことが可能である。
またアプリケーション制御部143は、キャッシュデータ部309から読み出したアプリケーションデータを解析した結果、さらに参照すべきURLを認識する場合もある。アプリケーション制御部143は、認識したURLの情報に基づいて、キャッシュデータ部309に一時保存されているアプリケーションデータにアクセスし、該当するファイルのデータコンテンツサービスを実行する。あるいはアプリケーション制御部143は、認識したURLの情報に基づいて、通信制御部142を介してネットワーク180で接続されている、例えばサービス事業者装置120が管理しているアプリケーションデータにアクセスしてもよい。ここで、URLで指定されたファイルを、放送信号中から受信して新たにキャッシュデータ部309に保存することもある。
なお、エントリーファイル情報に基づいて、キャッシュデータ部309に一時保存するアプリケーションデータを決定する場合、あるいはアプリケーションデータを解析した結果参照すべきURLの文字列の情報を認識して、キャッシュデータ部309に新たに一時保存するアプリケーションデータを決定する場合、アプリケーション制御部143は、エントリーファイル情報、あるいは認識したURLの文字列の情報と、DDMT821に記載されているbase_directory_path、directory_node_path、file_nameの情報とのマッチングを行い、さらにDAMT822との照合を行うことで、受信するMPUを特定する。DAMT822にてMPUノード記述子で参照されるディレクトリノードにおいては、DDMT821のbase_directory_path、directory_node_pathの情報とのマッチングを行いDAMT822との照合を行うことで、受信するMPUを特定する。
このマッチング作業は、DDMT821のbase_directory_path、directory_node_pathが、先に説明した制限14および制限15に基づいて設定されていると、効率的に行うことが可能である。
図10は、あるセッションにおいてDDMT1(1001)とDDMT2(1002)との2つのDDMT821が送信された場合の、base_directory_path、directory_node_pathが、制限14および制限15に基づいて設定されている例を示している。base_directory_pathは、DDMT1(1001)およびDDMT2(1002)において、制限14を満たしている。またDDMT1(1001)において、directory_node_pathは制限15を満たしている。
図11は、これに対してDDMT821のbase_directory_path、directory_node_pathが、制限14および制限15にもとづいて設定されていない場合で、いずれのディレクトリノードもDAMT822にてMPUノード記述子で参照される場合にURL=http://localhost/d1/d2/d3/f1で表されるファイルを新たにキャッシュする場合にMPUの特定に困る例を示している。base_directory_pathは、DDMT1(1101)およびDDMT2(1102)において、制限14を満たしていない。またDDMT1(1101)において、directory_node_pathは制限15を満たしてない。
アプリケーション制御部143は、base_directory_pathとdirectory_node_pathおよびfile_nameの境界が分からないため、図7に示すDDMT821に設定されているbase_directory_path、directory_node_pathの組み合わせのどれに対応するノードをDAMT822と照合して受信すればよいかが、DDMT821の情報を参照しただけでは判断をすることができない。
このためアプリケーション制御部143は、さらにDAMT822を参照して、いずれかのnode_tagに対応するMPUを取得し、この中のindex_itemを確認して、期待値のファイル名が含まれていた場合に初めてそのMPUを受信してファイルをキャッシュできると判断することが可能となる。index_itemに期待値のファイル名が含まれていない場合には、他のノードのMPUの受信を試みることになる。
アプリケーション制御部143が、エントリーファイル情報の文字列、あるいは参照すべきURLの文字列と一致するDDMT821に設定されているディレクトリ構成におけるパスを検索する場合、ディレクトリの階層の数が大きく(多く)なるにつれて、検索すべきDDMT821の情報の組み合わせ数も多くなることが考えられ、正しいディレクトリノードで所望のファイルを取得するまでに時間を要したり、マッチする可能性あるDDMT821に設定されているディレクトリノードに対応するMPUを順次取得する処理に失敗して、所望のファイルを取得できなかったりする可能性がある。
これに対して、本実施形態の放送信号受信装置140は、図10に示すようにDDMT821に設定されている情報が制限14、制限15に基づいて設定されているため、DDMT421の情報を参照するだけで、エントリーファイル情報、あるいは参照すべきURLの文字列がDDMT822のどのディレクトリノードにマッチするかを一意に判断することが可能である。
このように本実施形態の放送信号受信装置140は、DDMT821に設定されるbase_directory_path、directory_node_pathの情報が、制限14および制限15に基づいて設定されているため、DDMT821の情報を参照するだけで、データコンテンツサービスの所望のファイルを含むディレクトリノードを特定することが可能となり、所望のファイルの取得を効率的に行うことが可能となる。
上述した制限14および/または制限15を備えた本実施形態の放送信号送受信装置は、以下の特徴も備え得るものである。
放送番組と前記放送番組に付加されたアプリケーション機能を実現するアプリケーションデータとを放送信号により放送する送信装置と、受信した前記放送信号に含まれる前記放送番組と前記アプリケーションデータとを表示器に表示する受信装置とから構成される放送信号送受信装置において、
前記送信装置は、
前記アプリケーションデータのファイルを生成するアプリケーションデータ生成部と、前記アプリケーションデータ生成部が生成した前記ファイルを前記放送信号により送信する際の制御情報を生成する制御信号生成部と、
前記放送番組を構成する映像データと音声データ、前記アプリケーションデータ生成部が生成する前記アプリケーションデータおよび前記制御信号生成部が生成する前記制御情報とを多重化して多重化ストリームを生成する多重化部と、
前記多重化ストリームを送信する送信部と、
を有し、
前記アプリケーションデータ生成部は、前記ファイルを生成する際に、複数ファイルを生成する場合の前記複数ファイルを配置するディレクトリ構成におけるパスに関して、任意の2つのbase_directory_pathが、前方一致かつ一方のパスが他方のパスの部分を構成するような設定を禁止するようにパスを決定し、前記base_directory_pathが同一である任意の2つのdirectory_node_pathが、前方一致かつ一方のパスが他方のパスの部分を構成するような設定を禁止するようにパスを決定する手段を有し、
前記制御信号生成部は、決定した前記base_directory_pathおよび前記directory_node_pathを、前記制御情報に配置する手段を有し、
前記受信装置は、
受信した前記多重化ストリームから前記映像データ、前記音声データ、前記アプリケーションデータおよび前記制御情報に分離する分離部と、
前記分離部により分離された前記制御情報から抽出した前記base_directory_pathおよび前記directory_node_pathに基づき、前記アプリケーションデータの前記ファイルを得るファイル処理部と
を有する
放送信号送受信装置である。
放送番組と前記放送番組に付加されたアプリケーション機能を実現するアプリケーションデータとを放送信号により放送する送信装置と、受信した前記放送信号に含まれる前記放送番組と前記アプリケーションデータとを表示器に表示する受信装置で実現される放送信号送受信方法において、
前記送信装置では、
前記アプリケーションデータのファイルを生成し、生成した前記ファイルを前記放送信号により送信する際の制御情報を生成し、
前記ファイルを生成する際に、複数ファイルを生成する場合の前記複数ファイルを配置するディレクトリ構成におけるパスに関して、任意の2つのbase_directory_pathが、前方一致かつ一方のパスが他方のパスの部分を構成するような設定を禁止するようにパスを決定し、前記base_directory_pathが同一である任意の2つのdirectory_node_pathが、前方一致かつ一方のパスが他方のパスの部分を構成するような設定を禁止するようにパスを決定し、
前記決定した前記base_directory_pathおよび前記directory_node_pathを、前記制御情報に配置し、
前記放送番組を構成する映像データと音声データ、生成した前記アプリケーションデータおよび生成した前記制御情報とを送信し、
前記受信装置では、
前記映像データと音声データ、前記アプリケーションデータ、および前記制御情報とを受信し、この受信した前記制御情報から抽出した前記base_directory_pathおよび前記directory_node_pathに基づき、前記アプリケーションデータの前記ファイルを得る、
放送信号送受信方法である。
放送番組と前記放送番組に付加されたアプリケーション機能を実現するアプリケーションデータとを放送信号により放送する送信装置と、受信した前記放送信号に含まれる前記放送番組と前記アプリケーションデータとを表示器に表示する受信装置とから構成される放送信号送受信装置において、
前記送信装置は、
前記アプリケーションデータのファイルを生成するアプリケーションデータ生成部と、前記アプリケーションデータ生成部が生成した前記ファイルを前記放送信号により送信する際の制御情報を生成する制御信号生成部と、
前記放送番組を構成する映像データと音声データ、前記アプリケーションデータ生成部が生成する前記アプリケーションデータおよび前記制御信号生成部が生成する前記制御情報とを多重化して多重化ストリームを生成する多重化部と、
前記多重化ストリームを送信する送信部と、
を有し、
前記アプリケーションデータ生成部は、生成する前記ファイルのうち前記アプリケーション機能を起動するためのエントリーファイルを生成する際に、複数ファイルを生成する場合の前記複数ファイルを配置するディレクトリ構成におけるパスに関して、base_directory_pathが同一である任意の2つのdirectory_node_pathが、前方一致かつ一方のパスが他方のパスの部分を構成するような設定を禁止するようにパスを決定する手段を有し、
前記制御信号生成部は、決定した前記base_directory_pathおよび前記directory_node_pathを、前記制御情報に配置する手段を有し、
前記受信装置は、
受信した前記多重化ストリームから前記映像データ、前記音声データ、前記アプリケーションデータおよび前記制御情報に分離する分離部と、
前記分離部により分離された前記制御情報から抽出した前記base_directory_pathおよび前記directory_node_pathに基づき、前記アプリケーションデータの前記ファイルを得るファイル処理部と
を有する
放送信号送受信装置である。
放送番組と前記放送番組に付加されたアプリケーション機能を実現するアプリケーションデータとを放送信号により放送する送信装置と、受信した前記放送信号に含まれる前記放送番組と前記アプリケーションデータとを表示器に表示する受信装置で実現される放送信号送受信方法において、
前記送信装置では、
前記アプリケーションデータのファイルを生成し、生成した前記ファイルを前記放送信号により送信する際の制御情報を生成し、
生成する前記ファイルのうち前記アプリケーション機能を起動するためのエントリーファイルを生成する際に、複数ファイルを生成する場合の前記複数ファイルを配置するディレクトリ構成におけるパスに関して、base_directory_pathが同一である任意の2つのdirectory_node_pathが、前方一致かつ一方のパスが他方のパスの部分を構成するような設定を禁止するようにパスを決定し、
前記決定した前記base_directory_pathおよび前記directory_node_pathを、前記制御情報に配置し、
前記放送番組を構成する映像データと音声データ、生成した前記アプリケーションデータおよび生成した前記制御情報とを送信し、
前記受信装置では、
前記映像データと音声データ、前記アプリケーションデータ、および前記制御情報とを受信し、この受信した前記制御情報から抽出した前記base_directory_pathおよび前記directory_node_pathに基づき、前記アプリケーションデータの前記ファイルを得る、
放送信号送受信方法である。
本発明のいくつかの実施形態を説明したが、これらの実施形態は例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。さらにまた、請求項の各構成要素において、構成要素を分割して表現した場合、或いは複数を合わせて表現した場合、或いはこれらを組み合わせて表現した場合であっても本発明の範疇である。また、複数の実施形態を組み合わせてもよく、この組み合わせで構成される実施例も発明の範疇である。
また、図面は、説明をより明確にするため、実際の態様に比べて、模式的に表される場合があるが、あくまで一例であって、本発明の解釈を限定するものではない。また、本明細書と各図において、既出の図に関して前述したものと同一又は類似した機能を発揮する構成要素には同一の参照符号を付し、重複する詳細な説明を適宜省略することがある。また請求項を制御ロジックとして表現した場合、コンピュータを実行させるインストラクションを含むプログラムとして表現した場合、及び前記インストラクションを記載したコンピュータ読み取り可能な記録媒体として表現した場合でも本発明の装置を適用したものである。また、使用している名称や用語についても限定されるものではなく、他の表現であっても実質的に同一内容、同趣旨であれば、本発明に含まれるものである。